code: def load(source, **kwargs) -> JsonObj:
      
      if isinstance(source, str):
          if '://' in source:
              req = Request(source)
              req.add_header("Accept", "application/json, text/json;q=0.9")
              with urlopen(req) as response:
                  jsons = response.read()
          else:
              with open(source) as f:
                  jsons = f.read()
      elif hasattr(source, "read"):
          jsons = source.read()
      else:
          raise TypeError("Unexpected type {} for source {}".format(type(source), source))
  
      return loads(jsons, **kwargs)
docs: Deserialize a JSON source.
  
      :param source: a URI, File name or a .read()-supporting file-like object containing a JSON document
      :param kwargs: arguments. see: json.load for details
      :return: JsonObj representing fp