SBS plates collisions: As described above, GLAS is designed so that a node's status is set to 0 (available) when all of its Basic Methods (BMs) have been completed. When the implementation of GLAS consists of robotic arms that move plates around, the final physical position of the plate is directly correlated to the node status. This is not necessarily the case with the OmniFire or other nodes that have BMs that are not related to plate movement (e.g., chemical analyzers). The problem is that if the physical state of a plate is not properly defined, there is a risk of collision when two different tasks call the same node. To overcome this, the status of the plate's physical position must be systematically updated as the plates leave the node, not just when the BM is completed. This can be done by creating a new class that inherits the GLAS class "BaseNode" and overrides the execute() method so that the code is the same minus the state updates. Any subsequent node implementation can then inherit this new class. Their state updates can then be managed by the node that actually moves the plates, in this case the Scara Brooks Precise Flex 3400. A code snippet demonstrating how to create a custom node class is provided in Support Information S3.