[
    {
        "region_name": "Gerudo Training Grounds Lobby",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ Lobby Left Chest": "True",
            "Gerudo Training Grounds MQ Lobby Right Chest": "True",
            "Gerudo Training Grounds MQ Hidden Ceiling Chest": "logic_lens_gtg_mq or can_use(Lens_of_Truth)",
            "Gerudo Training Grounds MQ Maze Path First Chest": "True",
            "Gerudo Training Grounds MQ Maze Path Second Chest": "True",
            "Gerudo Training Grounds MQ Maze Path Third Chest": "(Small_Key_Gerudo_Training_Grounds, 1)"
        },
        "exits": {
            "Gerudo Fortress": "True",
            "Gerudo Training Grounds Left Side": "here(has_fire_source)",
            "Gerudo Training Grounds Right Side": "here(can_use(Bow) or can_use(Slingshot))"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Right Side",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ Dinolfos Chest": "is_adult",
            "Wall Fairy": "has_bottle and can_use(Bow)" #in the Dinalfos room shoot the Gerudo symbol above the door to the lava room.
        },
        "exits": {
            # Still requires has_fire_source in the room
            "Gerudo Training Grounds Underwater": "
                (Bow or can_use(Longshot)) and can_use(Hover_Boots)"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Underwater",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ Underwater Silver Rupee Chest": "
                has_fire_source and can_use(Iron_Boots) and
                (logic_fewer_tunic_requirements or can_use(Zora_Tunic)) and can_take_damage"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Left Side",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ First Iron Knuckle Chest": "is_adult or Kokiri_Sword or has_explosives"
        },
        "exits": {
            "Gerudo Training Grounds Stalfos Room": "
                can_use(Longshot) or logic_gtg_mq_without_hookshot or
                (logic_gtg_mq_with_hookshot and can_use(Hookshot))"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Stalfos Room",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            # Very difficult to fight the Stalfos and Stulltulas under the time limit as child.
            "Gerudo Training Grounds MQ Before Heavy Block Chest": "is_adult",
            "Gerudo Training Grounds MQ Heavy Block Chest": "can_use(Silver_Gauntlets)",
            "Blue Fire": "has_bottle"
        },
        "exits": {
            "Gerudo Training Grounds Back Areas": "
                is_adult and (logic_lens_gtg_mq or can_use(Lens_of_Truth)) and Blue_Fire and
                (can_play(Song_of_Time) or (logic_gtg_fake_wall and can_use(Hover_Boots)))"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Back Areas",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ Eye Statue Chest": "Bow",
            "Gerudo Training Grounds MQ Second Iron Knuckle Chest": "True",
            "Gerudo Training Grounds MQ Flame Circle Chest": "can_use(Hookshot) or Bow or has_explosives"
        },
        "exits": {
            "Gerudo Training Grounds Central Maze Right": "Megaton_Hammer",
            "Gerudo Training Grounds Right Side": "can_use(Longshot)"
        }
    },
    {
        "region_name": "Gerudo Training Grounds Central Maze Right",
        "dungeon": "Gerudo Training Grounds",
        "locations": {
            "Gerudo Training Grounds MQ Maze Right Central Chest": "True",
            "Gerudo Training Grounds MQ Maze Right Side Chest": "True",
            # The switch that opens the door to the Ice Arrows chest can be hit with a precise jumpslash.
            "Gerudo Training Grounds MQ Ice Arrows Chest": "
                (Small_Key_Gerudo_Training_Grounds, 3)"
        },
        "exits": {
            # guarantees fire with torch
            "Gerudo Training Grounds Underwater": "
                can_use(Longshot) or (can_use(Hookshot) and Bow)",
            "Gerudo Training Grounds Right Side": "can_use(Hookshot)"
        }
    }
]
