Mol objects include common functions for molecules, including access to atoms and bonds. A user can iterate over the atoms and bonds in the molecule or extract them based on a provided index. A bond can be identified by providing two atoms; if the atoms are not connected then None is returned instead. A Mol can be created from a SMILES string and can create a SMILES. Mol includes substructure searches in order to find atoms matching a provided SMIRKS pattern.