code: def lookup(self, key):
          values = self.filter(lambda kv: kv[0] == key).values()
          if self.partitioner is not None:
              return self.ctx.runJob(values, lambda x: x, [self.partitioner(key)])
          return values.collect()