code: def get_resource_id(prefix, *data):
      parts = flatten(data)
      for part in parts:
          if type(part) not in (str, int, float):
              raise ValueError('Supported data types: int, float, list, tuple, str. Got: {}'.format(type(part)))
      return '{}-{}'.format(
          prefix,
          get_hash('-'.join(sorted(map(str, parts))))[-16:]
      )