code: public static List<CDKRMap> getIsomorphAtomsMap(IAtomContainer sourceGraph, IAtomContainer targetGraph,
              boolean shouldMatchBonds) throws CDKException {
          if (sourceGraph instanceof IQueryAtomContainer) {
              throw new CDKException("The first IAtomContainer must not be an IQueryAtomContainer");
          }
  
          List<CDKRMap> list = checkSingleAtomCases(sourceGraph, targetGraph);
          if (list == null) {
              return makeAtomsMapOfBondsMap(CDKMCS.getIsomorphMap(sourceGraph, targetGraph, shouldMatchBonds),
                      sourceGraph, targetGraph);
          } else if (list.isEmpty()) {
              return null;
          } else {
              return list;
          }
      }
docs: Returns the first isomorph 'atom mapping' found for targetGraph in sourceGraph.
  
  @param  sourceGraph  first molecule. Must not be an IQueryAtomContainer.
  @param  targetGraph  second molecule. May be an IQueryAtomContainer.
  @param shouldMatchBonds
  @return     the first isomorph atom mapping found projected on sourceGraph.
  This is atom List of CDKRMap objects containing Ids of matching atoms.
  @throws org.openscience.cdk.exception.CDKException if the first molecules is not an instance of
  {@link org.openscience.cdk.isomorphism.matchers.IQueryAtomContainer}