code: def decode_payload(cls, request):
      
      # TODO(user): Pass mr_id into headers. Otherwise when payload decoding
      # failed, we can't abort a mr.
      if request.headers.get(cls.PAYLOAD_VERSION_HEADER) != cls.PAYLOAD_VERSION:
        raise DeprecationWarning(
            "Task is generated by an older incompatible version of mapreduce. "
            "Please kill this job manually")
      return cls._decode_payload(request.body)
docs: Decode task payload.
  
      HugeTask controls its own payload entirely including urlencoding.
      It doesn't depend on any particular web framework.
  
      Args:
        request: a webapp Request instance.
  
      Returns:
        A dict of str to str. The same as the params argument to __init__.
  
      Raises:
        DeprecationWarning: When task payload constructed from an older
          incompatible version of mapreduce.