code: def n_atom(self, node):
          
          length = len(node)
          if length == 1:
              self.preorder(node[0])
              node.value = node[0].value
              self.prune()
          elif length == 3:
              self.preorder(node[1])
              node.value = node[1].value
              self.prune()
          else:
              assert False, "Expecting atom to have length 1 or 3"
docs: atom ::= NUMBER | '(' expr ')'