code: def calculate_token(self, text, seed=None):
          
  
          if seed is None:
              seed = self._get_token_key()
  
          [first_seed, second_seed] = seed.split(".")
  
          try:
              d = bytearray(text.encode('UTF-8'))
          except UnicodeDecodeError:
              # This will probably only occur when d is actually a str containing UTF-8 chars, which means we don't need
              # to encode.
              d = bytearray(text)
  
          a = int(first_seed)
          for value in d:
              a += value
              a = self._work_token(a, self.SALT_1)
          a = self._work_token(a, self.SALT_2)
          a ^= int(second_seed)
          if 0 > a:
              a = (a & 2147483647) + 2147483648
          a %= 1E6
          a = int(a)
          return str(a) + "." + str(a ^ int(first_seed))
docs: Calculate the request token (`tk`) of a string
          :param text: str The text to calculate a token for
          :param seed: str The seed to use. By default this is the number of hours since epoch