code: def throw_to(self, target, *a):
          self.ready.append((getcurrent(), ()))
          
          return target.throw(*a)
docs: if len(a) == 1 and isinstance(a[0], preserve_exception):
              return target.throw(a[0].typ, a[0].val, a[0].tb)