The reactant and product subgraphs are determined by first identifying the atoms with a change in adjacency (i.e., which atoms are bonded to a position) based on the atom-mapped differences between the reactant and product graphs. After identifying the reactive atoms, the subgraphs associated with the model reaction are generated by retaining all atoms and bonds within d g of these this with common heuristic templates is not straightforward, because often these are in terms of functional groups and so the subgraph about reacting atoms may be inconsistently truncated.