def METHOD_NAME(io, timezone=None):
    data = load_sheet(io)
    result = {"version": dt.datetime.now().isoformat()}
    result["rooms"] = transform_data(
        data,
        "Rooms",
        field_mapping={"id": "ID", "name": "Name"},
        mandatory_fields=["ID", "Name"],
    )
    result["tracks"] = transform_data(
        data,
        "Tracks",
        field_mapping={"id": "ID", "name": "Name", "color": "Colour"},
        mandatory_fields=["ID", "Name"],
    )
    result["speakers"] = transform_data(
        data,
        "Speakers",
        field_mapping={
            "code": "ID",
            "name": "Name",
            "avatar": "Avatar",
            "biography": "Biography",
        },
        mandatory_fields=["ID", "Name"],
        methods={"code": str},
    )
    to_event_iso = partial(to_iso, timezone=timezone)
    result["talks"] = transform_data(
        data,
        "Talks",
        field_mapping={
            "code": "ID",
            "title": "Title",
            "abstract": "Abstract",
            "speakers": "Speaker IDs",
            "track": "Track ID",
            "room": "Room ID",
            "start": "Start",
            "end": "End",
            "url": "URL",
        },
        mandatory_fields=["Title", "Start", "End", "Room ID"],
        methods={"start": to_event_iso, "end": to_event_iso, "speakers": to_list},
    )
    validate_data(result)
    return json.dumps(result, indent=4)