code: def decode(self, hashid):
          
          if not hashid or not _is_str(hashid):
              return ()
          try:
              numbers = tuple(_decode(hashid, self._salt, self._alphabet,
                                      self._separators, self._guards))
  
              return numbers if hashid == self.encode(*numbers) else ()
          except ValueError:
              return ()
docs: Restore a tuple of numbers from the passed `hashid`.
  
          :param hashid The hashid to decode
  
          >>> hashids = Hashids('arbitrary salt', 16, 'abcdefghijkl0123456')
          >>> hashids.decode('1d6216i30h53elk3')
          (1, 23, 456)