#pragma once
#include "helpers.hpp"

// Used for CFG::SecureInfoGetRegion
enum class Regions : u32 {
	Japan = 0,
	USA = 1,
	Europe = 2,
	Australia = 3,
	China = 4,
	Korea = 5,
	Taiwan = 6,
};

// Used for the language field in the NAND user data
enum class LanguageCodes : u32 {
	JP = 0,
	EN = 1,
	FR = 2,
	DE = 3,
	IT = 4,
	ES = 5,
	ZH = 6,
	KO = 7,
	NL = 8,
	PT = 9,
	RU = 10,
	TW = 11,

	Japanese = JP,
	English = EN,
	French = FR,
	German = DE,
	Italian = IT,
	Spanish = ES,
	Chinese = ZH,
	Korean = KO,
	Dutch = NL,
	Portuguese = PT,
	Russian = RU,
	Taiwanese = TW
};

enum class CountryCodes : u32 {
	JP = 1,
	AI = 8,
	AG = 9,
	AR = 10,
	AW = 11,
	BS = 12,
	BB = 13,
	BZ = 14,
	BO = 15,
	BR = 16,
	VG = 17,
	CA = 18,
	KY = 19,
	CL = 20,
	CO = 21,
	CR = 22,
	DM = 23,
	DO = 24,
	EC = 25,
	SV = 26,
	GF = 27,
	GD = 28,
	GP = 29,
	GT = 30,
	GY = 31,
	HT = 32,
	HN = 33,
	JM = 34,
	MQ = 35,
	MX = 36,
	MS = 37,
	AN = 38,
	NI = 39,
	PA = 40,
	PY = 41,
	PE = 42,
	KN = 43,
	LC = 44,
	VC = 45,
	SR = 46,
	TT = 47,
	TC = 48,
	US = 49,
	UY = 50,
	VI = 51,
	VE = 52,
	AL = 64,
	AU = 65,
	AT = 66,
	BE = 67,
	BA = 68,
	BW = 69,
	BG = 70,
	HR = 71,
	CY = 72,
	CZ = 73,
	DK = 74,
	EE = 75,
	FI = 76,
	FR = 77,
	DE = 78,
	GR = 79,
	HU = 80,
	IS = 81,
	IE = 82,
	IT = 83,
	LV = 84,
	LS = 85,
	LI = 86,
	LT = 87,
	LU = 88,
	MK = 89,
	MT = 90,
	ME = 91,
	MZ = 92,
	NA = 93,
	NL = 94,
	NZ = 95,
	NO = 96,
	PL = 97,
	PT = 98,
	RO = 99,
	RU = 100,
	RS = 101,
	SK = 102,
	SI = 103,
	ZA = 104,
	ES = 105,
	SZ = 106,
	SE = 107,
	CH = 108,
	TR = 109,
	GB = 110,
	ZM = 111,
	ZW = 112,
	AZ = 113,
	MR = 114,
	ML = 115,
	NE = 116,
	TD = 117,
	SD = 118,
	ER = 119,
	DJ = 120,
	SO = 121,
	AD = 122,
	GI = 123,
	GG = 124,
	IM = 125,
	JE = 126,
	MC = 127,
	TW = 128,
	KR = 136,
	HK = 144,
	MO = 145,
	ID = 152,
	SG = 153,
	TH = 154,
	PH = 155,
	MY = 156,
	CN = 160,
	AE = 168,
	IND = 169,  // We can't use the 2-letter country code for India because the Windows SDK does #define IN...
	EG = 170,
	OM = 171,
	QA = 172,
	KW = 173,
	SA = 174,
	SY = 175,
	BH = 176,
	JO = 177,
	SM = 184,
	VA = 185,
	BM = 186,
};