BESMARTS operations require that the mapping function T is a bijection on G and H, meaning every node and edge in G maps uniquely to some node and edge in H, respectively. However, it can be a commonplace occurrence that the two chemical environments contain a different number of atoms. To overcome this, we utilize the fact that SMARTS patterns can be subgraphs of an unknown molecular graph. For example, [#6X4] is topologically a graph with only one node and no edges, but the SMARTS information indicates the pattern must match to a molecule with at least 5 atoms and 4 bonds. Additionally, SMARTS do not necessarily represent valid molecular substructures, and so their interpretation can be ambiguous. Therefore, when mapping two graphs, it is feasible to modify the graphs as needed and depending on the desired outcome. Here we define three mapping functions T, T † , and T ‡ that differ in how the input graphs are potentially modified. The result of each of these is always a bijection between two graphs. The three functions are