@Test
public void testCountableMACCSBinary2() throws Exception {

    SmilesParser parser = new SmilesParser(SilentChemObjectBuilder.getInstance());
    IFingerprinter printer = new SubstructureFingerprinter(StandardSubstructureSets.getCountableMACCSSMARTS());
    IAtomContainer mol;
    BitSet bs;
    // Test molecule 1
    mol = parser.parseSmiles("C([S](O)(=O)=O)C1=C(C=CC=C1)CCCC[N+](=O)[O-]");
    AtomContainerManipulator.percieveAtomTypesAndConfigureAtoms(mol);
    Aromaticity.cdkLegacy().apply(mol);
    bs = printer.getBitFingerprint(mol).asBitSet();
    Assert.assertTrue(bs.get(46));
    Assert.assertTrue(bs.get(27));
    Assert.assertTrue(bs.get(59));
    Assert.assertTrue(bs.get(49));
    Assert.assertTrue(bs.get(111));
    Assert.assertTrue(bs.get(129));
    Assert.assertTrue(bs.get(115));
    Assert.assertTrue(bs.get(120));
    Assert.assertTrue(bs.get(41));
    Assert.assertFalse(bs.get(93));
    Assert.assertFalse(bs.get(91));
    Assert.assertFalse(bs.get(24));
    // Test molecule 2: Diatrizoic acid
    mol = parser.parseSmiles("CC(=O)NC1=C(C(=C(C(=C1I)C(=O)O)I)NC(=O)C)I");
    AtomContainerManipulator.percieveAtomTypesAndConfigureAtoms(mol);
    Aromaticity.cdkLegacy().apply(mol);
    bs = printer.getBitFingerprint(mol).asBitSet();
    Assert.assertTrue(bs.get(15));
    Assert.assertTrue(bs.get(135));
    Assert.assertTrue(bs.get(139));
    Assert.assertTrue(bs.get(93));
    Assert.assertTrue(bs.get(73));
    Assert.assertFalse(bs.get(91));
}