### Question:
CDKMCS { public static List<CDKRMap> getSubgraphMap(IAtomContainer g1, IAtomContainer g2, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType) throws CDKException { List<CDKRMap> result = null; List<List<CDKRMap>> rMapsList = search(g1, g2, new BitSet(), getBitSet(g2), false, false, shouldMatchBonds, shouldMatchRings, matchAtomType); if (!rMapsList.isEmpty()) { result = rMapsList.get(0); } return result; }  static boolean isIsomorph(IAtomContainer g1, IAtomContainer g2, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<List<CDKRMap>> getIsomorphMaps(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<List<CDKRMap>> getSubgraphMaps(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<CDKRMap> getSubgraphMap(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<List<CDKRMap>> getSubgraphAtomsMaps(IAtomContainer g1,
            IAtomContainer g2, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static boolean isSubgraph(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<IAtomContainer> getOverlaps(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static BitSet getBitSet(IAtomContainer ac); static CDKRGraph buildRGraph(IAtomContainer g1, IAtomContainer g2,
            boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType); static List<List<CDKRMap>> search(IAtomContainer g1, IAtomContainer g2, BitSet c1,
            BitSet c2, boolean findAllStructure, boolean findAllMap,
            boolean shouldMatchBonds, boolean shouldMatchRings,
            boolean matchAtomType); static boolean isTimeout();  }### Answer:
@Test public void testGetSubgraphMap_IAtomContainer_IAtomContainer() throws Exception { String molfile = "C1CCC2CCCCC2C1"; String queryfile = "C1CCC2CCCCC2C1"; IAtomContainer mol; IAtomContainer temp; QueryAtomContainer query1 = null; QueryAtomContainer query2 = null; mol = new SmilesParser(DefaultChemObjectBuilder.getInstance()).parseSmiles(molfile); temp = new SmilesParser(DefaultChemObjectBuilder.getInstance()).parseSmiles(queryfile); query1 = QueryAtomContainerCreator.createBasicQueryContainer(temp); SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance()); IAtomContainer atomContainer = sp.parseSmiles("C1CCCCC1"); query2 = QueryAtomContainerCreator.createBasicQueryContainer(atomContainer); List<CDKRMap> list = CDKMCS.getSubgraphMap(mol, query1, true, true, false); Assert.assertEquals(11, list.size()); list = CDKMCS.getSubgraphMap(mol, query2, true, true, false); Assert.assertEquals(6, list.size()); }