code: def shift(self, next_state, token_type, value, lineno, column):
          
          dfa, state, node = self.stack[-1]
          new_node = Node(token_type, value, None, lineno, column)
          node.children.append(new_node)
          self.stack[-1] = (dfa, next_state, node)
docs: Shift a non-terminal and prepare for the next state.