<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def load_gltf(file_obj=None, resolver=None, **mesh_kwargs):
 """ Load a GLTF file, which consists of a directory structure with multiple files. Parameters file_obj : None or file-like Object containing header JSON, or None resolver : trimesh.visual.Resolver Object which can be used to load other files by name **mesh_kwargs : dict Passed to mesh constructor Returns kwargs : dict Arguments to create scene """

    try:
        # see if we've been passed the GLTF header file
        tree = json.load(file_obj)
    except BaseException:
        # otherwise header should be in 'model.gltf'
        data = resolver['model.gltf']
        # old versions of python/json need strings
        try:
            tree = json.loads(data)
        except BaseException:
            tree = json.loads(data.decode('utf-8'))

    # use the resolver to get data from file names
    buffers = [resolver[b['uri']] for b in tree['buffers']]

    # turn the layout header and data into kwargs
    # that can be used to instantiate a trimesh.Scene object
    kwargs = _read_buffers(header=tree,
                           buffers=buffers,
                           mesh_kwargs=mesh_kwargs)
    return kwargs