code: def Find(self, node_type, item_type):
          '''
          method for finding specific types of notation from nodes.
          will currently return the first one it encounters because this method's only really intended
          for some types of notation for which the exact value doesn't really
          matter.
          :param node_type: the type of node to look under
          :param item_type: the type of item (notation) being searched for
          :return: first item_type object encountered
          '''
          if node_type == OtherNodes.DirectionNode:
              child = self.GetChild(len(self.children) - 1)
              while child is not None and not isinstance(
                      child.GetItem(),
                      item_type):
                  if child.GetItem().__class__.__name__ == item_type.__name__:
                      return True
                  child = child.GetChild(0)
          if node_type == OtherNodes.ExpressionNode:
              child = self.GetChild(len(self.children) - 2)
              while child is not None and not isinstance(
                      child.GetItem(),
                      item_type):
                  if child.GetItem().__class__.__name__ == item_type.__name__:
                      return True
                  child = child.GetChild(0)