code: def get_vars(self):
          
          if self.parent is None:
              vars = {}
              vars.update(self.variables)
              return vars
          vars = self.parent.get_vars()
          vars.update(self.variables)
          return vars
docs: Returns a complete dict of all variables that are defined in this
          scope, including the variables of the parent.