#ifndef _WORLD_AREA_MAC_MAC_H_
#define _WORLD_AREA_MAC_MAC_H_

enum {
    AB_MAC_Unused_0     = AreaByte(0),
    AB_MAC_Unused_1     = AreaByte(1),
    AB_MAC_Unused_2     = AreaByte(2),
    AB_MAC_Unused_3     = AreaByte(3),
    AB_MAC_Unused_4     = AreaByte(4),
    AB_MAC_Unused_5     = AreaByte(5),
    AB_MAC_Unused_6     = AreaByte(6),
    AB_MAC_Unused_7     = AreaByte(7),
    AB_MAC_Unused_8     = AreaByte(8),
    AB_MAC_Unused_9     = AreaByte(9),
    AB_MAC_Unused_A     = AreaByte(10),
    AB_MAC_Unused_B     = AreaByte(11),
    AB_MAC_Unused_C     = AreaByte(12),
    AB_MAC_Unused_D     = AreaByte(13),
    AB_MAC_Unused_E     = AreaByte(14),
    AB_MAC_Unused_F     = AreaByte(15),
};

enum {
    AF_MAC_01           = AreaFlag(1),
    AF_ExitingToybox    = AreaFlag(2),
    AF_MAC_0D           = AreaFlag(13),
    AF_MAC_0E           = AreaFlag(14),
    AF_MAC_0F           = AreaFlag(15),
    AF_MAC_10           = AreaFlag(16),
    AF_MAC_11           = AreaFlag(17),
    AF_MAC_12           = AreaFlag(18),
    AF_MAC_13           = AreaFlag(19),
    AF_MAC_14           = AreaFlag(20),
    AF_MAC_15           = AreaFlag(21),
    AF_MAC_16           = AreaFlag(22),
    AF_MAC_17           = AreaFlag(23),
    AF_MAC_18           = AreaFlag(24),
    AF_MAC_19           = AreaFlag(25),
    AF_MAC_1A           = AreaFlag(26),
    AF_MAC_1B           = AreaFlag(27),
    AF_MAC_1C           = AreaFlag(28),
    AF_MAC_1D           = AreaFlag(29),
    AF_MAC_1E           = AreaFlag(30),
    AF_MAC_20           = AreaFlag(32),
    AF_MAC_21           = AreaFlag(33),
    AF_MAC_22           = AreaFlag(34),
    AF_MAC_23           = AreaFlag(35),
    AF_MAC_24           = AreaFlag(36),
    AF_MAC_25           = AreaFlag(37),
    AF_MAC_2D           = AreaFlag(45),
    AF_MAC_2E           = AreaFlag(46),
    AF_MAC_30           = AreaFlag(48),
    AF_MAC_31           = AreaFlag(49),
    AF_MAC_32           = AreaFlag(50),
    AF_MAC_38           = AreaFlag(56),
    AF_MAC_3D           = AreaFlag(61),
    AF_MAC_3E           = AreaFlag(62),
    AF_MAC_3F           = AreaFlag(63),

    AF_MAC_40           = AreaFlag(64),
    AF_MAC_41           = AreaFlag(65),
    AF_MAC_43           = AreaFlag(67),
    AF_MAC_44           = AreaFlag(68),

    AF_MAC_45           = AreaFlag(0x45),
    AF_MAC_46           = AreaFlag(0x46),
    AF_MAC_47           = AreaFlag(0x47),
    AF_MAC_48           = AreaFlag(0x48),
    AF_MAC_49           = AreaFlag(0x49),
    AF_MAC_4A           = AreaFlag(0x4A),
    AF_MAC_4B           = AreaFlag(0x4B),
    AF_MAC_4C           = AreaFlag(0x4C),
    AF_MAC_4D           = AreaFlag(0x4D),
    AF_MAC_4E           = AreaFlag(0x4E),
    AF_MAC_4F           = AreaFlag(0x4F),
    AF_MAC_50           = AreaFlag(0x50),
    AF_MAC_51           = AreaFlag(0x51),
    AF_MAC_52           = AreaFlag(0x52),
    AF_MAC_53           = AreaFlag(0x53),
    AF_MAC_54           = AreaFlag(0x54),
    AF_MAC_55           = AreaFlag(0x55),
    AF_MAC_56           = AreaFlag(0x56),
    AF_MAC_57           = AreaFlag(0x57),
    AF_MAC_58           = AreaFlag(0x58),
    AF_MAC_59           = AreaFlag(0x59),
    AF_MAC_5A           = AreaFlag(0x5A),
    AF_MAC_5B           = AreaFlag(0x5B),
    AF_MAC_5C           = AreaFlag(0x5C),
    AF_MAC_5D           = AreaFlag(0x5D),
    AF_MAC_5E           = AreaFlag(0x5E),
    AF_MAC_5F           = AreaFlag(0x5F),
    AF_MAC_60           = AreaFlag(0x60),
    AF_MAC_61           = AreaFlag(0x61),
    AF_MAC_62           = AreaFlag(0x62),
    AF_MAC_63           = AreaFlag(0x63),
    AF_MAC_64           = AreaFlag(0x64),
    AF_MAC_65           = AreaFlag(0x65),
    AF_MAC_66           = AreaFlag(0x66),
    AF_MAC_67           = AreaFlag(0x67),
    AF_MAC_68           = AreaFlag(0x68),

    AF_MAC_77           = AreaFlag(0x77),
    AF_MAC_78           = AreaFlag(0x78),
    AF_MAC_79           = AreaFlag(0x79),
    AF_MAC_7A           = AreaFlag(0x7A),
    AF_MAC_7B           = AreaFlag(0x7B),
    AF_MAC_7C           = AreaFlag(0x7C),
    AF_MAC_7D           = AreaFlag(0x7D),
    AF_MAC_7E           = AreaFlag(0x7E),
    AF_MAC_7F           = AreaFlag(0x7F),
    AF_MAC_80           = AreaFlag(0x80),
    AF_MAC_81           = AreaFlag(0x81),
    AF_MAC_82           = AreaFlag(0x82),
    AF_MAC_83           = AreaFlag(0x83),
    AF_MAC_84           = AreaFlag(0x84),
    AF_MAC_85           = AreaFlag(0x85),
    AF_MAC_86           = AreaFlag(0x86),
    AF_MAC_87           = AreaFlag(0x87),
    AF_MAC_88           = AreaFlag(0x88),
    AF_MAC_89           = AreaFlag(0x89),
    AF_MAC_8A           = AreaFlag(0x8A),
    AF_MAC_8B           = AreaFlag(0x8B),
    AF_MAC_8C           = AreaFlag(0x8C),
    AF_MAC_8D           = AreaFlag(0x8D),
    AF_MAC_8E           = AreaFlag(0x8E),
    AF_MAC_8F           = AreaFlag(0x8F),
    AF_MAC_90           = AreaFlag(0x90),
    AF_MAC_91           = AreaFlag(0x91),
    AF_MAC_92           = AreaFlag(0x92),
    AF_MAC_93           = AreaFlag(0x93),
    AF_MAC_94           = AreaFlag(0x94),
    AF_MAC_95           = AreaFlag(0x95),
    AF_MAC_96           = AreaFlag(0x96),
    AF_MAC_97           = AreaFlag(0x97),
    AF_MAC_98           = AreaFlag(0x98),
    AF_MAC_99           = AreaFlag(0x99),
    AF_MAC_9A           = AreaFlag(0x9A),
};

extern MapSettings machi_settings;
extern MapSettings mac_00_settings;
extern MapSettings mac_01_settings;
extern MapSettings mac_02_settings;
extern MapSettings mac_03_settings;
extern MapSettings mac_04_settings;
extern MapSettings mac_05_settings;
extern MapSettings mac_06_settings;

s32 mac_04_map_init(void);

#endif
