code: def get(self, name, defval=None):
          '''
          Retrieve a value from the closest scope frame.
          '''
          for frame in reversed(self.frames):
              valu = frame.get(name, s_common.novalu)
              if valu != s_common.novalu:
                  return valu
  
          task = self.ctors.get(name)
          if task is not None:
              func, args, kwargs = task
              item = func(*args, **kwargs)
              self.frames[-1][name] = item
              return item
  
          return defvaf get(self, name, defval=None):
          '''
          Retrieve a value from the closest scope frame.
          '''
          for frame in reversed(self.frames):
              valu = frame.get(name, s_common.novalu)
              if valu != s_common.novalu:
                  return valu
  
          task = self.ctors.get(name)
          if task is not None:
              func, args, kwargs = task
              item = func(*args, **kwargs)
              self.frames[-1][name] = item
              return item
  
          return defval
docs: Retrieve a value from the closest scope frame.