local _ = {}
local E = bit.bnot
local E, A, E = bit.band, bit.bor, bit.bxor
function _.Enum(T)
	if type(T) ~= "table" then
		return
	end
	local E = {}
	for T, _ in pairs(T) do
		E[_] = T - 1
	end
	return E
end
_.SMALL_DIAMOND_GMP = 1e4
_.LARGE_DIAMOND_GMP = 1e5
_.MAX_32BIT_UINT = 4294967295
_.EXCEPTION_QUEUE_MAX = 255
_.PICKABLE_MAX = 16
_.PLACED_MAX = 8
-- changed after dual wielding revolvers patch
-- mission 13 PITCH DARK goes over some graphics limit and refuses to render client for host (and not the other way around)
-- this number is arbitrary and it works
_.DEFAULT_EQUIP_MISSION_BLOCK_GROUP_SIZE = 1777721
_.MISSION_COUNT_MAX = 64
_.DEFAULT_SOLDIER_STATE_COUNT = 160
_.DEFAULT_SOLDIER_OPTION_VARS_COUNT = 160
_.DEFAULT_PASSAGE_INFO_COUNT = 64
_.DEFAULT_PASSAGE_FLAG_COUNT = _.DEFAULT_PASSAGE_INFO_COUNT * 5
_.DEFAULT_NOTICE_INFO_COUNT = 24
_.DEFAULT_HOSTAGE_STATE_COUNT = 32
_.ENEMY_FOVA_UNIQUE_SETTING_COUNT = 16
_.DEFAULT_ENEMY_HELI_STATE_COUNT = 1
_.MAX_HOLD_RECOVERED_STATE_COUNT = 32
_.MAX_HOLD_VEHICLE_BROKEN_STATE_COUNT = 32
_.MAX_ANIMAL_RECOVERED_HISTORY_SIZE = 50
_.MAX_SECURITY_CAMERA_COUNT = 64
_.MAX_UAV_COUNT = 16
_.SEARCH_TARGET_COUNT = 8
_.CHECK_POINT_MAX = 64
_.QUEST_MAX = 250
_.QUEST_FACE_MAX = 32
_.QUEST_ENEMY_MAX = 8
_.REVENGE_MINE_BASE_MAX = 20
_.MISSION_CLEAR_HISTORY_LIMIT = 36
_.MAX_MISSION_TASK_COUNT = 8
_.MAX_TAKING_OVER_HOSTAGE_COUNT = 4
_.MAX_MB_DEMO_PLAYFLAG_MAX = 4
_.INIT_HELI_ROUTE = 0
_.PLAYSTYLE_SAVE_INDEX_MAX = 20
_.PLAYSTYLE_HISTORY_MAX = 2
_.MAX_TIPS_GUIDE_SHOWN_ONCE = 256
_.MAX_CONTROL_GUIDE_SHOWN_ONCE = 128
_.MESSAGE_GENERATION =
	{ [Fox.StrCode32("GameObject")] = { [Fox.StrCode32("Fulton")] = 0, [Fox.StrCode32("VehicleBroken")] = 0 } }
_.DEFAULT_MESSAGE_GENERATION = 1
_.ELAPSED_MISSION_COUNT_MAX = 14
_.ELAPSED_MISSION_COUNT = { INIT = -127, DONE_EVENT = -1, NOW_OCCURRING = 0 }
_.ELAPSED_QUEST_COUNT = { INIT = -127, DONE_EVENT = -1, NOW_OCCURRING = 0 }
_.MISSION_START_RECOVER_DEMO_TYPE = { NONE = 0, VEHICLE = 1, WALKER_GEAR = 2 }
_.REWARD_MAX = { MISSION = 16, MB_MANAGEMENT = 64, QUEST = 8 }
_.REWARD_PARAM = { TYPE = 0, ARG1 = 1, ARG2 = 2, MAX = 3 }
_.TRAP_TYPE = _.Enum({ "NORMAL", "TRIGGER" })
_.TRAP_STATE = _.Enum({ "ENABLE", "DISABLE" })
_.HOSTAGE_GM_TYPE = _.Enum({
	TppGameObject.GAME_OBJECT_TYPE_HOSTAGE2,
	TppGameObject.GAME_OBJECT_TYPE_HOSTAGE_UNIQUE,
	TppGameObject.GAME_OBJECT_TYPE_HOSTAGE_UNIQUE2,
})
_.FULTONABLE_GIMMICK_TYPE = _.Enum({
	TppGameObject.GAME_OBJECT_TYPE_GATLINGGUN,
	TppGameObject.GAME_OBJECT_TYPE_MORTAR,
	TppGameObject.GAME_OBJECT_TYPE_MACHINEGUN,
})
_.QUEST_MINE_TYPE_LIST = { TppEquip.EQP_SWP_DMine, TppEquip.EQP_SWP_DMine_G01, TppEquip.EQP_SWP_DMine_G02 }
_.BUDDY_GM_TYPE_TO_BUDDY_TYPE = {
	[TppGameObject.GAME_OBJECT_TYPE_HORSE2] = BuddyType.HORSE,
	[TppGameObject.GAME_OBJECT_TYPE_BUDDYQUIET2] = BuddyType.QUIET,
	[TppGameObject.GAME_OBJECT_TYPE_BOSSQUIET2] = BuddyType.QUIET,
	[TppGameObject.GAME_OBJECT_TYPE_BUDDYDOG2] = BuddyType.DOG,
	[TppGameObject.GAME_OBJECT_TYPE_BUDDYPUPPY] = BuddyType.DOG,
}
_.ANIMAL_GAMEOBJECT_TYPE = _.Enum({
	TppGameObject.GAME_OBJECT_TYPE_GOAT,
	TppGameObject.GAME_OBJECT_TYPE_NUBIAN,
	TppGameObject.GAME_OBJECT_TYPE_CRITTER_BIRD,
	TppGameObject.GAME_OBJECT_TYPE_STORK,
	TppGameObject.GAME_OBJECT_TYPE_EAGLE,
	TppGameObject.GAME_OBJECT_TYPE_RAT,
	TppGameObject.GAME_OBJECT_TYPE_ZEBRA,
	TppGameObject.GAME_OBJECT_TYPE_WOLF,
	TppGameObject.GAME_OBJECT_TYPE_JACKAL,
	TppGameObject.GAME_OBJECT_TYPE_BEAR,
})
_.MISSION_CLEAR_STATE_LIST = {
	"INIT",
	"NOT_CLEARED_YET",
	"ESTABLISHED_CLEAR",
	"MISSION_GAME_END",
	"SHOW_CREDIT_END",
	"BLACK_TELEPHOHE_END",
	"REWARD_END",
	"MISSION_FINALIZED",
}
_.MISSION_CLEAR_STATE = _.Enum(_.MISSION_CLEAR_STATE_LIST)
_.ERROR_ID = {
	CONFIRM_AUTO_SAVE = 1e3,
	MAKE_NEW_SAVE_DATA = 1100,
	SAVE_FAILED_NOT_ENOUGH_STORAGE_CAPACITY = 1101,
	SAVE_FAILED_UNKNOWN_REASON = 1102,
	SAVE_FAILED_CANNOT_FIND_STORAGE = 1103,
	LOADING_SAVE_DATA = 1200,
	LOAD_RESULT_OWNER_ERROR = 1202,
	LOAD_RESULT_BACKUP_ERROR = 1203,
	LOAD_RESULT_FILE_CORRUPT_ERROR = 1204,
	LOAD_RESULT_VERSION_ERROR = 1205,
	LOAD_RESULT_CONFIG_FILE_CORRUPT_ERROR = 1207,
	NOT_SELECT_STORAGE = 1300,
	CHECKING_STORAGE_FREE_SPACE_SIZE = 1301,
	CANNOT_FIND_STORAGE_IN_GAME = 1302,
	START_NOT_SIGN_IN = 2001,
	SIGNIN_USER_CHANGED = 2100,
	DISCONNECT_FROM_PSN = 2200,
	DISCONNECT_FROM_KONAMI = 3207,
	DISCONNECT_FROM_NETWORK = 3300,
	SESSION_DISCONNECT_FROM_HOST = 4180,
	GET_MGO_INVITATION = 5e3,
	NOW_INSTALLATION_CHECKING = 7e3,
	INSERT_INSTALL_DISK_WHEN_NOT_INSTALLED = 7060,
	CANNOT_FIND_HDD = 7002,
	NOW_INSTALLING = 7003,
	INSTALL_CANCEL = 7004,
	INSTALL_FAILED_NOT_ENOUGH_STORAGE_CAPACITY = 7005,
	INSTALL_FAILED_UNKNOWN_REASON = 7006,
	INSERT_GAME_DISK_WHEN_INSTALL_END = 7051,
	INSERT_GAME_DISK_WHEN_ALREADY_INSTALLED = 7052,
	TROPHY_INSTALLING = 7101,
	TROPHY_INSTALL_FAILED = 7102,
	DLC_DOWNLOAD_ERROR = 8001,
}
_.UI_STATUS_TYPE_ALL = {
	CallMenu = "INVALID",
	PauseMenu = "INVALID",
	EquipHud = "INVALID",
	EquipPanel = "INVALID",
	CqcIcon = "INVALID",
	ActionIcon = "INVALID",
	AnnounceLog = "SUSPEND_LOG",
	BaseName = "INVALID",
	Damage = "INVALID",
	Notice = "INVALID",
	HeadMarker = "INVALID",
	WorldMarker = "INVALID",
	HudText = "INVALID",
	GmpInfo = "INVALID",
	AtTime = "INVALID",
	InfoTypingText = "INVALID",
}
_.GAME_STATUS_TYPE_ALL = {
	S_DISABLE_PLAYER_PAD = true,
	S_DISABLE_NPC = true,
	S_DISABLE_TARGET = true,
	S_DISABLE_NPC_NOTICE = true,
	S_DISABLE_PLAYER_DAMAGE = true,
	S_DISABLE_THROWING = true,
	S_DISABLE_PLACEMENT = true,
}
_.SAVE_FILE_LOAD_RESULT =
	_.Enum({ "NOT_EXIST_FILE", "OK", "OK_LOAD_BACKUP", "DIFFER_FROM_CURRENT_VERSION", "ERROR_LOAD_FAILED" })
_.SAVE_FILE_LOAD_RESULT.INIT = -1
_.SAVE_SLOT = {
	GLOBAL = 0,
	CHECK_POINT = 1,
	RETRY = 2,
	MB_MANAGEMENT = 3,
	QUEST = 4,
	MISSION_START = 5,
	CHECK_POINT_RESTARTABLE = 6,
	CONFIG = 7,
	SAVING = 8,
	CONFIG_SAVE = 9,
	PERSONAL = 10,
	PERSONAL_SAVE = 11,
	MGO = 12,
	MGO_SAVE = 13,
}
_.PROGRAM_SAVE_FILE_VERSION_OFFSET = 65535
_.GAME_SAVE_FILE_NAME = "DYNAMITE_GAME_DATA"
_.GAME_SAVE_FILE_NAME_TMP = "DYNAMITE_GAME_DATA_TMP"
_.MGO_MAIN_SAVE_FILE_NAME = "MGO_MAIN_DATA"
_.CONFIG_SAVE_FILE_NAME = "DYNAMITE_CONFIG_DATA"
_.MGO_SAVE_FILE_NAME = "MGO_GAME_DATA"
_.PERSONAL_DATA_SAVE_FILE_NAME = "DYNAMITE_PERSONAL_DATA"
_.CATEGORY_MISSION_RESTARTABLE = 2
_.SAVE_FILE_INFO = {
	[TppScriptVars.CATEGORY_GAME_GLOBAL] = { version = 107, slot = _.SAVE_SLOT.GLOBAL },
	[TppScriptVars.CATEGORY_MISSION] = { version = 115, slot = _.SAVE_SLOT.CHECK_POINT },
	[TppScriptVars.CATEGORY_RETRY] = { version = 105, slot = _.SAVE_SLOT.RETRY },
	[TppScriptVars.CATEGORY_MB_MANAGEMENT] = { version = 112, slot = _.SAVE_SLOT.MB_MANAGEMENT },
	[TppScriptVars.CATEGORY_QUEST] = { version = 104, slot = _.SAVE_SLOT.QUEST },
	[TppScriptVars.CATEGORY_CONFIG] = { version = 103, slot = _.SAVE_SLOT.CONFIG },
	[_.CATEGORY_MISSION_RESTARTABLE] = {
		version = 100,
		slot = _.SAVE_SLOT.CHECK_POINT_RESTARTABLE,
		missionStartSlot = _.SAVE_SLOT.MISSION_START,
	},
	[TppScriptVars.CATEGORY_PERSONAL] = { version = 100, slot = _.SAVE_SLOT.PERSONAL },
}
if TppSystemUtility.GetCurrentGameMode() == "MGO" then
	_.SAVE_FILE_INFO[TppScriptVars.CATEGORY_MGO] = { version = 102, slot = _.SAVE_SLOT.MGO }
end
_.PROGRAM_SAVE_FILE_VERSION = TppScriptVars.GetProgramVersionTable()
_.VARS_GROUP_GAME_DATA_ON_START_MISSION = A(TppScriptVars.GROUP_BIT_GVARS, TppScriptVars.GROUP_BIT_VARS)
_.MISSION_LOAD_TYPE = _.Enum({ "MISSION_FINALIZE", "MISSION_ABORT", "MISSION_RESTART", "CONTINUE_FROM_CHECK_POINT" })
_.LOCATION_ID = {
	INIT = 1,
	AFGH = 10,
	MAFR = 20,
	CYPR = 30,
	GNTN = 40,
	OMBS = 45,
	MTBS = 50,
	MBQF = 55,
	HLSP = 60,
	FLYK = 70,
	afgh = 10,
	mafr = 20,
	cypr = 30,
	gntn = 40,
	ombs = 45,
	mtbs = 50,
	mbqf = 55,
	hlsp = 60,
	flyk = 70,
	SAND_AFGH = 91,
	SAND_MAFR = 92,
	SAND_MTBS = 95,
	sand_afgh = 91,
	sand_mafr = 92,
	sand_mtbs = 95,
}
_.LOCATION_CHUNK_INDEX_TABLE = {
	[_.LOCATION_ID.AFGH] = Chunk.INDEX_AFGH,
	[_.LOCATION_ID.MAFR] = Chunk.INDEX_MAFR,
	[_.LOCATION_ID.CYPR] = Chunk.INDEX_CYPR,
	[_.LOCATION_ID.MTBS] = Chunk.INDEX_MTBS,
	[_.LOCATION_ID.MBQF] = Chunk.INDEX_MTBS,
}
_.WEATHER = { SUNNY = 0, CLOUDY = 1, RAINY = 2, SANDSTORM = 3, FOGGY = 4, POURING = 5 }
_.MISSION_LIST = {
	"10010",
	"10020",
	"10030",
	"10036",
	"10043",
	"10033",
	"10040",
	"10041",
	"10044",
	"10052",
	"10054",
	"10050",
	"10070",
	"10080",
	"10086",
	"10082",
	"10090",
	"10195",
	"10091",
	"10100",
	"10110",
	"10121",
	"10115",
	"10120",
	"10085",
	"10200",
	"10211",
	"10081",
	"10130",
	"10140",
	"10150",
	"10151",
	"10045",
	"10156",
	"10093",
	"10171",
	"10240",
	"10260",
	"10280",
	"10230",
	"11043",
	"11041",
	"11054",
	"11085",
	"11082",
	"11090",
	"11036",
	"11033",
	"11050",
	"11091",
	"11195",
	"11211",
	"11140",
	"11200",
	"11080",
	"11171",
	"11121",
	"11115",
	"11130",
	"11044",
	"11052",
	"11151",
	nil,
}
_.MISSION_ENUM = _.Enum(_.MISSION_LIST)
if Mission.RegisterMissionCodeList then
	Mission.RegisterMissionCodeList({ codeList = _.MISSION_LIST })
end
_.HARD_MISSION_LIST = {
	"11043",
	"11041",
	"11054",
	"11085",
	"11082",
	"11090",
	"11036",
	"11033",
	"11050",
	"11091",
	"11195",
	"11211",
	"11140",
	"11200",
	"11080",
	"11171",
	"11121",
	"11115",
	"11130",
	"11044",
	"11052",
	"11151",
}
_.HARD_MISSION_ENUM = _.Enum(_.HARD_MISSION_LIST)
_.MISSING_NUMBER_MISSION_LIST =
	{ "11041", "11085", "11036", "11091", "11195", "11211", "11200", "11171", "11115", "11052", "10230" }
_.MISSING_NUMBER_MISSION_ENUM = _.Enum(_.MISSING_NUMBER_MISSION_LIST)
_.SYS_MISSION_ID = {
	INIT = 1,
	TITLE = 5,
	AFGH_FREE = 30010,
	MAFR_FREE = 30020,
	MTBS_FREE = 30050,
	MTBS_ZOO = 30150,
	MTBS_WARD = 30250,
	AFGH_HELI = 40010,
	MAFR_HELI = 40020,
	MTBS_HELI = 40050,
	HELI_SPACE = 40060,
	FOB = 50050,
	SELECT = 6e4,
}
_.NO_ORDER_BOX_MISSION_LIST = {
	"10010",
	"10020",
	"10030",
	"10050",
	"11050",
	"10070",
	"10080",
	"11080",
	"10115",
	"11115",
	"10140",
	"11140",
	"10150",
	"10151",
	"11151",
	"10240",
	"10260",
	"10280",
}
_.NO_ORDER_BOX_MISSION_ENUM = _.Enum(_.NO_ORDER_BOX_MISSION_LIST)
_.NO_ORDER_FIX_HELICOPTER_ROUTE = { [10240] = "rt_drp_mbqf_N", [10260] = "drp_s10260" }
_.NO_HELICOPTER_ROUTE_MISSION_LIST = {
	"10010",
	"10020",
	"10030",
	"10050",
	"11050",
	"10070",
	"10080",
	"11080",
	"10140",
	"11140",
	"10150",
	"10151",
	"11151",
	"10240",
	"10280",
}
_.NO_HELICOPTER_ROUTE_ENUM = _.Enum(_.NO_HELICOPTER_ROUTE_MISSION_LIST)
_.NO_HELICOPTER_MISSION_START_POSITION = {
	[10010] = { -39.127, 106.175, -1719.5 },
	[10050] = { -1820.706, 348.982, -146.444 },
	[11050] = { -1820.706, 348.982, -146.444 },
	[10070] = { -647.4362, 541.0834, -1637.894 },
	[10080] = { -458, -20, 1316 },
	[11080] = { -458, -20, 1316 },
	[10140] = { 1118.691, -10.92584, 656.2424 },
	[11140] = { 1118.691, -10.92584, 656.2424 },
	[10150] = { -1626, 359.51, -416 },
	[10151] = { -750, 532, -1676 },
	[11151] = { -750, 532, -1676 },
	[10240] = { -162.75, 1.092, -2097.899 },
	[10280] = { -39.127, 106.175, -1719.5 },
}
_.EMERGENCY_MISSION_LIST = { 10115, 50050 }
_.EMERGENCY_MISSION_ENUM = _.Enum(_.EMERGENCY_MISSION_LIST)
_.LOCATION_HAVE_MISSION_LIST = {
	INIT = { 5 },
	AFGH = {
		10020,
		10033,
		10034,
		10036,
		10040,
		10041,
		10043,
		10044,
		10045,
		10050,
		10052,
		10054,
		10060,
		10070,
		10150,
		10151,
		10153,
		10156,
		10164,
		10199,
		10260,
		30010,
		40010,
		65020,
		11036,
		11043,
		11041,
		11033,
		11050,
		11054,
		11044,
		11052,
		11151,
	},
	MAFR = {
		10080,
		10081,
		10082,
		10085,
		10086,
		10090,
		10091,
		10093,
		10100,
		10110,
		10120,
		10121,
		10130,
		10140,
		10154,
		10160,
		10162,
		10171,
		10200,
		10195,
		10211,
		30020,
		40020,
		65060,
		11085,
		11082,
		11090,
		11091,
		11195,
		11211,
		11140,
		11200,
		11080,
		11171,
		11121,
		11130,
	},
	CYPR = { 10010, 10280 },
	MTBS = { 10030, 10115, 11115, 10240, 30050, 30150, 30250, 40050, 50050, 65030 },
	OMBS = {},
	HLSP = { 40060 },
	FLYK = { 10230 },
}
_.OFFLINE_MOHTER_BASE_LAYOUT_CODE = 0
_.STORY_MISSION_LAYOUT_CODE = {
	[10030] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[10115] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[11115] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[10240] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[30050] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[30051] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
	[30150] = 500,
	[30250] = _.OFFLINE_MOHTER_BASE_LAYOUT_CODE,
}
_.INVALID_LAYOUT_CODE = 65535
_.STORY_MISSION_CLUSTER_ID =
	{ [10030] = 0, [10115] = 2, [11115] = 2, [10240] = 7, [30050] = 0, [30150] = 0, [30250] = 7 }
_.INVALID_CLUSTER_ID = 255
_.STORY_SEQUENCE_LIST = {
	"STORY_START",
	"CLEARD_ESCAPE_THE_HOSPITAL",
	"CLEARD_RECUE_MILLER",
	"CLEARD_TO_MATHER_BASE",
	"CLEARD_FLAG_MISSIONS_AFTER_TO_MATHER_BASE",
	"CLEARD_FIND_THE_SECRET_WEAPON",
	"CLEARD_FLAG_MISSIONS_AFTER_FIND_THE_SECRET_WEAPON",
	"CLEARD_RESCUE_HUEY",
	"CLEARD_DESTROY_THE_FLOW_STATION",
	"CLEARD_LINGUA_FRANKA",
	"CLEARD_FLAG_MISSIONS_AFTER_DESTROY_THE_FLOW_STATION",
	"CLEARD_TAKE_OUT_THE_CONVOY",
	"CLEARD_RESCUE_INTEL_AGENTS",
	"CLEARD_ELIMINATE_THE_POWS",
	"CLEARD_DEATH_FACTORY",
	"CLEARD_CAPTURE_THE_WEAPON_DEALER",
	"CLEARD_WHITE_MAMBA",
	"CLEARD_FLAG_MISSIONS_AFTER_WHITE_MAMBA",
	"CLEARD_ELIMINATE_THE_COMMANDER",
	"CLEARD_RESCUE_THE_BETRAYER",
	"CLEARD_CODE_TALKER",
	"CLEARD_METALLIC_ARCHAEA",
	"CLEARD_SKULLFACE",
	"CLEARD_OKB_ZERO",
	"CLEARD_RETRIEVE_VOLGIN",
	"CLEARD_RETRIEVE_CHILD_DESERTER",
	"CLEARD_FLAG_MISSIONS_BEFORE_ENDRESS_PROXY_WAR",
	"CLEARD_ENDRESS_PROXY_WAR",
	"CLEARD_FLAG_MISSIONS_BEFORE_MURDER_INFECTORS",
	"CLEARD_MURDER_INFECTORS",
	"CLEARD_AFTER_MURDER_INFECTORS_ONE_MISSION",
	"CLEARD_AFTER_MURDER_INFECTORS_TWO_MISSIONS",
	"CLEARD_THE_TRUTH",
	"STORY_FINISH",
	nil,
}
_.STORY_SEQUENCE = _.Enum(_.STORY_SEQUENCE_LIST)
_.MISSION_COMMON_PACK = {
	AFGH_SCRIPT = "/Assets/tpp/pack/location/afgh/pack_common/afgh_script.fpk",
	MAFR_SCRIPT = "/Assets/tpp/pack/location/mafr/pack_common/mafr_script.fpk",
	CYPR_SCRIPT = "/Assets/tpp/pack/location/cypr/pack_common/cypr_script.fpk",
	MTBS_SCRIPT = "/Assets/tpp/pack/location/mtbs/pack_common/mtbs_script.fpk",
	AFGH_MISSION_AREA = "/Assets/tpp/pack/mission2/common/mis_com_afgh.fpk",
	MAFR_MISSION_AREA = "/Assets/tpp/pack/mission2/common/mis_com_mafr.fpk",
	MTBS_MISSION_AREA = "/Assets/tpp/pack/mission2/common/mis_com_mtbs.fpk",
	AFGH_HOSTAGE = "/Assets/tpp/pack/mission2/common/mis_com_afgh_hostage.fpk",
	MAFR_HOSTAGE = "/Assets/tpp/pack/mission2/common/mis_com_mafr_hostage.fpk",
	MAFR_HOSTAGE_WOMAN = "/Assets/tpp/pack/mission2/common/mis_com_mafr_hostage_woman.fpk",
	HELICOPTER = "/Assets/tpp/pack/mission2/common/mis_com_helicopter.fpk",
	ENEMY_HELI = "/Assets/tpp/pack/mission2/common/mis_com_enemy_heli.fpk",
	ORDER_BOX = "/Assets/tpp/pack/mission2/common/mis_com_order_box.fpk",
	CODETALKER = "/Assets/tpp/pack/mission2/common/mis_com_codetalker.fpk",
	HUEY = "/Assets/tpp/pack/mission2/common/mis_com_huey.fpk",
	LIQUID = "/Assets/tpp/pack/mission2/common/mis_com_liquid.fpk",
	MANTIS = "/Assets/tpp/pack/mission2/common/mis_com_mantis.fpk",
	MILLER = "/Assets/tpp/pack/mission2/common/mis_com_miller.fpk",
	OCELOT = "/Assets/tpp/pack/mission2/common/mis_com_ocelot.fpk",
	QUIET = "/Assets/tpp/pack/mission2/common/mis_com_quiet.fpk",
	SAHELAN = "/Assets/tpp/pack/mission2/common/mis_com_sahelan.fpk",
	SKULLFACE = "/Assets/tpp/pack/mission2/common/mis_com_skullface.fpk",
	PF_SOLIDER = "/Assets/tpp/pack/mission2/common/mis_com_pf_solider.fpk",
	SOVIET_SOLIDER = "/Assets/tpp/pack/mission2/common/mis_com_soviet_solider.fpk",
	DD_SOLDIER_WAIT = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_wait.fpk",
	VOLGIN = "/Assets/tpp/pack/mission2/common/mis_com_volgin.fpk",
	WALKERGEAR = "/Assets/tpp/pack/mission2/common/mis_com_walkergear.fpk",
	CHILD_SOLDIER = "/Assets/tpp/pack/mission2/common/mis_com_child_soldier.fpk",
	XOF_SOLDIER = "/Assets/tpp/pack/mission2/common/mis_com_xof_soldier.fpk",
	DD_SOLDIER_ATTACKER = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_attack.fpk",
	DD_SOLDIER_SNEAKING = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_sneak.fpk",
	DD_SOLDIER_BTRDRS = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_btdrs.fpk",
	DD_SOLDIER_ARMOR = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_armor.fpk",
	FOB_HOSTAGE = "/Assets/tpp/pack/mission2/common/mis_com_fob_hostage.fpk",
	DD_SOLDIER_SWIM_SUIT = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_swim_suit.fpk",
	DD_SOLDIER_SWIM_SUIT2 = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_swim_suit2.fpk",
	DD_SOLDIER_SWIM_SUIT3 = "/Assets/tpp/pack/mission2/common/mis_com_dd_soldier_swim_suit3.fpk",
	AFGH_DECOY = "/Assets/tpp/pack/collectible/decoy/decoy_svs.fpk",
	MAFR_DECOY = "/Assets/tpp/pack/collectible/decoy/decoy_pf.fpk",
	MTBS_DECOY = "/Assets/tpp/pack/collectible/decoy/decoy_fob.fpk",
	BEAR = "/Assets/tpp/pack/mission2/common/mis_com_bear.fpk",
	RAVEN = "/Assets/tpp/pack/mission2/common/mis_com_raven.fpk",
	RAT = "/Assets/tpp/pack/mission2/common/mis_com_rat.fpk",
	LYCAON = "/Assets/tpp/pack/mission2/common/mis_com_lycaon.fpk",
	JACKAL = "/Assets/tpp/pack/mission2/common/mis_com_jackal.fpk",
	EAST_LV = "/Assets/tpp/pack/mission2/common/veh_mc_east_lv.fpk",
	EAST_TANK = "/Assets/tpp/pack/mission2/common/veh_mc_east_tnk.fpk",
	EAST_TRUCK = "/Assets/tpp/pack/mission2/common/veh_mc_east_trc.fpk",
	EAST_TRUCK_AMMUNITION = "/Assets/tpp/pack/mission2/common/veh_mc_east_trc_crg_ammunition.fpk",
	EAST_TRUCK_DRUM = "/Assets/tpp/pack/mission2/common/veh_mc_east_trc_crg_drum.fpk",
	EAST_TRUCK_GENERATOR = "/Assets/tpp/pack/mission2/common/veh_mc_east_trc_crg_generator.fpk",
	EAST_TRUCK_MATERIAL = "/Assets/tpp/pack/mission2/common/veh_mc_east_trc_crg_material.fpk",
	EAST_WAV = "/Assets/tpp/pack/mission2/common/veh_mc_east_wav.fpk",
	EAST_WAV_ROCKET = "/Assets/tpp/pack/mission2/common/veh_mc_east_wav_rocket.fpk",
	WEST_LV = "/Assets/tpp/pack/mission2/common/veh_mc_west_lv.fpk",
	WEST_TANK = "/Assets/tpp/pack/mission2/common/veh_mc_west_tnk.fpk",
	WEST_TRUCK = "/Assets/tpp/pack/mission2/common/veh_mc_west_trc.fpk",
	WEST_TRUCK_CISTERN = "/Assets/tpp/pack/mission2/common/veh_mc_west_trc_crg_cistern.fpk",
	WEST_TRUCK_CONTAINER = "/Assets/tpp/pack/mission2/common/veh_mc_west_trc_crg_container.fpk",
	WEST_TRUCK_ITEMBOX = "/Assets/tpp/pack/mission2/common/veh_mc_west_trc_crg_itembox.fpk",
	WEST_TRUCK_HOOD = "/Assets/tpp/pack/mission2/common/veh_mc_west_trc_hood.fpk",
	WEST_WAV = "/Assets/tpp/pack/mission2/common/veh_mc_west_wav.fpk",
	WEST_WAV_CANNON = "/Assets/tpp/pack/mission2/common/veh_mc_west_wav_trt_cannon.fpk",
	WEST_WAV_MACHINE_GUN = "/Assets/tpp/pack/mission2/common/veh_mc_west_wav_trt_machinegun.fpk",
	AMBULANCE = "/Assets/tpp/pack/mission2/common/veh_mc_ambulance.fpk",
	AVATAR_EDIT = "/Assets/tpp/pack/mission2/common/mis_com_avatar_edit.fpk",
	AVATAR_ASSET_LIST = {
		"/Assets/tpp/pack/player/avatar/deform/avm_dfrm_men_mtar.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type0_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type1_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type2_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type3_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type4_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type5_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type6_v00.fpk",
		"/Assets/tpp/pack/player/avatar/face/plfova_avm0_type7_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type0_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type1_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type2_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type3_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type4_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type5_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type6_v00.fpk",
		"/Assets/tpp/pack/player/avatar/deform/pldfrm_avm0_type7_v00.fpk",
		"/Assets/tpp/pack/player/avatar/hair/plfova_avm_hair_a0_v00.fpk",
		"/Assets/tpp/pack/player/avatar/hair/plfova_avm_hair_b0_v00.fpk",
		"/Assets/tpp/pack/player/avatar/hair/plfova_avm_hair_c0_v00.fpk",
		"/Assets/tpp/pack/player/parts/plparts_avatar_man.fpk",
		"/Assets/tpp/pack/player/avatar/body/plfova_avm0_main0_skin0_c00.fpk",
		"/Assets/tpp/pack/player/avatar/body/plfova_avm0_main0_skin0_c01.fpk",
		"/Assets/tpp/pack/player/avatar/body/plfova_avm0_main0_skin0_c02.fpk",
		"/Assets/tpp/pack/player/avatar/body/plfova_avm0_main0_skin0_c03.fpk",
		"/Assets/tpp/pack/player/avatar/body/plfova_avm0_main0_skin0_c04.fpk",
		"/Assets/tpp/pack/ui/ui_avatar_edit_men.fpk",
	},
}
_.SOLIDER2_COMMON_PACK = {
	default = "/Assets/tpp/pack/soldier/common/Soldier2Common.fpk",
	s10150_special = "/Assets/tpp/pack/mission2/story/s10150/s10150_special_npc.fpk",
	s10151_special = "/Assets/tpp/pack/mission2/story/s10151/s10151_special_npc.fpk",
	s10151_ending = "/Assets/tpp/pack/mission2/story/s10151/s10151_ending_npc.fpk",
}
for T, E in pairs(_.SOLIDER2_COMMON_PACK) do
	_.SOLIDER2_COMMON_PACK[Fox.StrCode32(T)] = E
end
_.DEFAULT_SOLIDER2_COMMON_PACKAGE = Fox.StrCode32("default")
_.SOLIDER2_COMMON_PACK_PREREQUISITES =
	{ s10150_special = { "mission_block" }, s10151_special = { "mission_block" }, s10151_ending = { "mission_block" } }
_.AFR_ARMOR = { TYPE_CFA = 1, TYPE_ZRS = 2, TYPE_RC = 3 }
_.QUEST_DEFINE = {
	"waterway_q99010",
	"waterway_q99012",
	"sovietBase_q99020",
	"sovietBase_q99030",
	"tent_q99040",
	"cliffTown_q99080",
	"field_q30010",
	"outland_q40010",
	"sovietBase_q99070",
	"outland_q99071",
	"tent_q99072",
	"tent_q20910",
	"fort_q20911",
	"sovietBase_q20912",
	"outland_q20913",
	"lab_q20914",
	"waterway_q39010",
	"pfCamp_q39012",
	"lab_q39011",
	"ruins_q19010",
	"outland_q19011",
	"hill_q19012",
	"commFacility_q19013",
	"sovietBase_q60110",
	"sovietBase_q60111",
	"citadel_q60112",
	"outland_q60113",
	"pfCamp_q60114",
	"tent_q10010",
	"field_q10020",
	"ruins_q10030",
	"waterway_q10040",
	"cliffTown_q10050",
	"commFacility_q10060",
	"sovietBase_q10070",
	"fort_q10080",
	"citadel_q10090",
	"outland_q10100",
	"pfCamp_q10200",
	"savannah_q10300",
	"hill_q10400",
	"banana_q10500",
	"diamond_q10600",
	"lab_q10700",
	"tent_q11010",
	"tent_q11020",
	"waterway_q11030",
	"cliffTown_q11040",
	"cliffTown_q11050",
	"fort_q11060",
	"fort_q11070",
	"commFacility_q11080",
	"outland_q11090",
	"outland_q11100",
	"pfCamp_q11200",
	"savannah_q11300",
	"savannah_q11400",
	"hill_q11500",
	"banana_q11600",
	"banana_q11700",
	"tent_q71010",
	"field_q71020",
	"tent_q71030",
	"waterway_q71040",
	"cliffTown_q71050",
	"cliffTown_q71060",
	"sovietBase_q71070",
	"fort_q71080",
	"field_q71090",
	"outland_q71200",
	"savannah_q71300",
	"banana_q71400",
	"diamond_q71500",
	"lab_q71600",
	"lab_q71700",
	"commFacility_q80060",
	"field_q80020",
	"outland_q80100",
	"pfCamp_q80200",
	"diamond_q80600",
	"hill_q80400",
	"tent_q80010",
	"lab_q80700",
	"fort_q80080",
	"waterway_q80040",
	"ruins_q60010",
	"tent_q60011",
	"cliffTown_q60012",
	"fort_q60013",
	"sovietBase_q60014",
	"pfCamp_q60020",
	"hill_q60021",
	"lab_q60022",
	"banana_q60023",
	"outland_q60024",
	"quest_q20015",
	"quest_q20025",
	"quest_q20035",
	"quest_q20045",
	"quest_q20055",
	"quest_q20065",
	"quest_q20075",
	"quest_q20085",
	"quest_q20095",
	"quest_q20105",
	"quest_q20205",
	"quest_q20305",
	"quest_q20405",
	"quest_q20505",
	"quest_q20605",
	"quest_q20705",
	"quest_q20805",
	"quest_q20905",
	"quest_q21005",
	"quest_q22005",
	"quest_q52010",
	"quest_q52020",
	"quest_q52030",
	"quest_q52040",
	"quest_q52050",
	"quest_q52060",
	"quest_q52070",
	"quest_q52015",
	"quest_q52025",
	"quest_q52035",
	"quest_q52045",
	"quest_q52055",
	"quest_q52065",
	"quest_q52075",
	"Mtbs_SmokingSoldierCommand",
	"Mtbs_SmokingSoldierCombat",
	"Mtbs_child_dog",
	"mtbs_wait_quiet",
	"mtbs_q99050",
	"mtbs_q99011",
	"mtbs_q99060",
	"mtbs_q101210",
	"mtbs_q101220",
	"Mtbs_ddog_walking",
	"ruins_q60115",
	"quest_q52080",
	"quest_q52090",
	"quest_q52100",
	"quest_q52110",
	"quest_q52120",
	"quest_q52130",
	"quest_q52140",
	"quest_q52085",
	"quest_q52095",
	"quest_q52105",
	"quest_q52115",
	"quest_q52125",
	"quest_q52135",
	"quest_q52145",
	"quest_q23005",
	"quest_q24005",
	"quest_q25005",
	"quest_q26005",
	"quest_q27005",
	"mtbs_q42010",
	"mtbs_q42020",
	"mtbs_q42030",
	"mtbs_q42040",
	"mtbs_q42050",
	"mtbs_q42060",
	"mtbs_q42070",
	"mtbs_return_quiet",
}
_.QUEST_RANDOM_FACE_DEFINE = {
	"quest_q20015",
	"quest_q20025",
	"quest_q20035",
	"quest_q20045",
	"quest_q20055",
	"quest_q20065",
	"quest_q20075",
	"quest_q20085",
	"quest_q20095",
	"quest_q20105",
	"quest_q20205",
	"quest_q20305",
	"quest_q20405",
	"quest_q20505",
	"quest_q20605",
	"quest_q20705",
	"quest_q20805",
	"quest_q20905",
	"quest_q21005",
	"quest_q22005",
	"quest_q23005",
	"quest_q24005",
	"quest_q25005",
	"quest_q26005",
	"quest_q27005",
}
_.QUEST_HELI_DEFINE = {
	"outland_q20913",
	"quest_q52015",
	"quest_q52045",
	"quest_q52055",
	"quest_q52050",
	"quest_q52060",
	"quest_q52065",
	"quest_q52070",
	"quest_q52075",
	"quest_q52085",
	"quest_q52095",
	"quest_q52105",
	"quest_q52115",
	"quest_q52125",
	"quest_q52135",
	"quest_q52140",
	"quest_q52145",
	"quest_q52100",
	"quest_q52130",
	"quest_q52110",
	"quest_q52120",
	"quest_q20405",
	"quest_q20705",
	"quest_q27005",
}
_.REMOVAL_TROPHY_QUEST = _.Enum({
	"ruins_q60010",
	"tent_q60011",
	"cliffTown_q60012",
	"fort_q60013",
	"sovietBase_q60014",
	"pfCamp_q60020",
	"hill_q60021",
	"lab_q60022",
	"banana_q60023",
	"outland_q60024",
})
_.QUEST_TYPE = {
	STORY = 1,
	RECOVERED = 2,
	ELIMINATE = 3,
	ANIMAL_RECOVERED = 4,
	DEVELOP_RECOVERED = 5,
	GIMMICK_RECOVERED = 6,
	MSF_RECOVERED = 7,
	SHOOTING_PRACTIVE = 8,
}
_.QUEST_CLEAR_TYPE = { NONE = 1, CLEAR = 2, FAILURE = 3, UPDATE = 4, SHOOTING_CLEAR = 5, SHOOTING_RETRY = 6 }
_.QUEST_RACE_TYPE = { CAUCASIAN = 0, BROWN = 1, BLACK = 2, ASIA = 3 }
_.QUEST_GENDER_TYPE = { MAN = 0, WOMAN = 1 }
if #_.QUEST_DEFINE > _.QUEST_MAX then
end
_.QUEST_INDEX = _.Enum(_.QUEST_DEFINE)
if #_.QUEST_RANDOM_FACE_DEFINE > _.QUEST_FACE_MAX then
end
_.QUEST_RANDOM_FACE_INDEX = _.Enum(_.QUEST_RANDOM_FACE_DEFINE)
_.QUEST_RANK_LIST = { "S", "A", "B", "C", "D", "E", "F", "G", "H", "I" }
_.QUEST_RANK = Tpp.Enum(_.QUEST_RANK_LIST)
_.QUEST_BONUS_GMP = {
	[_.QUEST_RANK.S] = 3e5,
	[_.QUEST_RANK.A] = 2e5,
	[_.QUEST_RANK.B] = 18e4,
	[_.QUEST_RANK.C] = 14e4,
	[_.QUEST_RANK.D] = 12e4,
	[_.QUEST_RANK.E] = 1e5,
	[_.QUEST_RANK.F] = 9e4,
	[_.QUEST_RANK.G] = 8e4,
	[_.QUEST_RANK.H] = 6e4,
	[_.QUEST_RANK.I] = 3e4,
}
_.QUEST_RANK_TABLE = {
	[_.QUEST_INDEX.waterway_q99012] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.sovietBase_q99020] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.sovietBase_q99030] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.tent_q99040] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.cliffTown_q99080] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.field_q30010] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.outland_q40010] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.sovietBase_q99070] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.outland_q99071] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.tent_q99072] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.tent_q20910] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.fort_q20911] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.sovietBase_q20912] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.outland_q20913] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.lab_q20914] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.waterway_q39010] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.pfCamp_q39012] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.lab_q39011] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.ruins_q19010] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.outland_q19011] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.hill_q19012] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.commFacility_q19013] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.sovietBase_q60110] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.sovietBase_q60111] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.citadel_q60112] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.outland_q60113] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.pfCamp_q60114] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.ruins_q60115] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.tent_q10010] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.field_q10020] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.ruins_q10030] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.waterway_q10040] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.cliffTown_q10050] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.commFacility_q10060] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.sovietBase_q10070] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.fort_q10080] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.citadel_q10090] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.outland_q10100] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.pfCamp_q10200] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.savannah_q10300] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.hill_q10400] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.banana_q10500] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.diamond_q10600] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.lab_q10700] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.tent_q11010] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.tent_q11020] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.waterway_q11030] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.cliffTown_q11040] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.cliffTown_q11050] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.fort_q11060] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.fort_q11070] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.commFacility_q11080] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.outland_q11090] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.outland_q11100] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.pfCamp_q11200] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.savannah_q11300] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.savannah_q11400] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.hill_q11500] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.banana_q11600] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.banana_q11700] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.tent_q71010] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.field_q71020] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.tent_q71030] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.waterway_q71040] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.cliffTown_q71050] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.cliffTown_q71060] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.sovietBase_q71070] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.fort_q71080] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.field_q71090] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.outland_q71200] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.savannah_q71300] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.banana_q71400] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.diamond_q71500] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.lab_q71600] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.lab_q71700] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.commFacility_q80060] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.field_q80020] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.outland_q80100] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.pfCamp_q80200] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.diamond_q80600] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.hill_q80400] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.tent_q80010] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.lab_q80700] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.fort_q80080] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.waterway_q80040] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.ruins_q60010] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.tent_q60011] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.cliffTown_q60012] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.fort_q60013] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.sovietBase_q60014] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.pfCamp_q60020] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.hill_q60021] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.lab_q60022] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.banana_q60023] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.outland_q60024] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q20015] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.quest_q20025] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.quest_q20035] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q20045] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q20055] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.quest_q20065] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.quest_q20075] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.quest_q20085] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q20095] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q20105] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q20205] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q20305] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q20405] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q20505] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q20605] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q20705] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.quest_q20805] = _.QUEST_RANK.H,
	[_.QUEST_INDEX.quest_q20905] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q21005] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q22005] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.quest_q23005] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q24005] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q25005] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q26005] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q27005] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q52010] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q52020] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q52030] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q52040] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.quest_q52050] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.quest_q52060] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.quest_q52070] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q52080] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52090] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52100] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52110] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52120] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52130] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52140] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52015] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q52025] = _.QUEST_RANK.E,
	[_.QUEST_INDEX.quest_q52035] = _.QUEST_RANK.G,
	[_.QUEST_INDEX.quest_q52045] = _.QUEST_RANK.F,
	[_.QUEST_INDEX.quest_q52055] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.quest_q52065] = _.QUEST_RANK.B,
	[_.QUEST_INDEX.quest_q52075] = _.QUEST_RANK.C,
	[_.QUEST_INDEX.quest_q52085] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52095] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52105] = _.QUEST_RANK.A,
	[_.QUEST_INDEX.quest_q52115] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52125] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52135] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.quest_q52145] = _.QUEST_RANK.S,
	[_.QUEST_INDEX.mtbs_q99011] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q99050] = _.QUEST_RANK.D,
	[_.QUEST_INDEX.mtbs_q42010] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42020] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42030] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42040] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42050] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42060] = _.QUEST_RANK.I,
	[_.QUEST_INDEX.mtbs_q42070] = _.QUEST_RANK.I,
}
_.QUEST_BODY_ID_LIST = {
	AFGH_ARMOR = 49,
	MAFR_ARMOR = 109,
	Q20910 = 207,
	Q20911 = 208,
	Q20912 = 209,
	Q20913 = 205,
	Q20914 = 206,
	Q19010 = 259,
	Q19011 = 255,
	Q19012 = 111,
	Q19013 = 110,
	Q99070 = 110,
	Q99071 = 264,
	Q99072 = 110,
	MSF_01 = 280,
	MSF_02 = 281,
	MSF_03 = 292,
	MSF_04 = 293,
	MSF_05 = 294,
	MSF_06 = 295,
	MSF_07 = 286,
	MSF_08 = 297,
	MSF_09 = 288,
	MSF_10 = 289,
	Q99080_01 = 373,
	Q99080_02 = 374,
	MAFR_ARMOR_ZRS = TppEnemyBodyId.pfa0_v00_a,
	MAFR_ARMOR_CFA = TppEnemyBodyId.pfa0_v00_b,
	MAFR_ARMOR_RC = TppEnemyBodyId.pfa0_v00_c,
	AFGH_HOSTAGE_MALE = TppEnemyBodyId.prs2_main0_v00,
	MAFR_HOSTAGE_MALE = TppEnemyBodyId.prs5_main0_v00,
	AFGH_HOSTAGE_FEMALE = TppEnemyBodyId.prs3_main0_v00,
	MAFR_HOSTAGE_FEMALE = TppEnemyBodyId.prs6_main0_v00,
}
_.QUEST_FACE_ID_LIST = {
	Q19010 = 601,
	Q19011 = 609,
	Q19012 = 648,
	Q19013 = 647,
	Q99070 = 640,
	Q99071 = 641,
	Q99072 = 646,
	TAN = 621,
	DEFAULT_MAN = 0,
	DEFAULT_WOMAN = 500,
	AFGH_BALACLAVA = TppEnemyFaceId.svs_balaclava,
	MAFR_BALACLAVA = TppEnemyFaceId.pfs_balaclava,
}
_.MISSION_CLEAR_RANK_LIST = { "S", "A", "B", "C", "D", "E" }
_.MISSION_CLEAR_RANK = Tpp.Enum(_.MISSION_CLEAR_RANK_LIST)
_.MISSION_CLEAR_RANK.NOT_DEFINED = 0
_.INITIAL_PLAYER_STATE = { MIN = 0, ON_FOOT = 1, RIDEON_HELICOPTER = 2, MAX = 3 }
_.MB_FREEPLAY_DEMO_PRIORITY_LIST = {
	"GoToMotherBaseAfterQuietBattle",
	"ArrivedMotherBaseAfterQuietBattle",
	"ArrivedMotherBaseFromDeathFactory",
	"ArrivedMotherBaseLiquid",
	"QuietReceivesPersecution",
	"TheGreatEscapeLiquid",
	"ParasiticWormCarrierKill",
	"AnableDevBattleGear",
	"DevelopedBattleGear1",
	"QuietHasFriendshipWithChild",
	"QuietOnHeliInRain",
	"InterrogateQuiet",
	"DecisionHuey",
	"EntrustDdog",
	"DdogComeToGet",
	"DdogGoWithMe",
	"HappyBirthDayWithQuiet",
	"HappyBirthDay",
	"AttackedFromOtherPlayer_KnowWhereFrom",
	"AttackedFromOtherPlayer_UnknowWhereFrom",
	"QuietWishGoMission",
	"NuclearEliminationCeremony",
	"ForKeepNuclearElimination",
	"SacrificeOfNuclearElimination",
	"MoraleOfMBIsLow",
	"EliLookSnake",
	"LiquidAndChildSoldier",
	"OcelotIsPupilOfSnake",
	"CodeTalkerSunBath",
	"LongTimeNoSee_DdogSuperHighLikability",
	"LongTimeNoSee_DdogHighLikability",
	"LongTimeNoSee_DdogLowLikability",
	"LongTimeNoSee_DdogPup",
	"LongTimeNoSee_DDSoldier",
	"SnakeHasBadSmell_000",
	"SnakeHasBadSmell_001",
	"SnakeHasBadSmell_WithoutQuiet",
	"PazPhantomPain1",
	"PazPhantomPain2",
	"PazPhantomPain4",
	"PazPhantomPain4_jp",
	"DetailsNuclearDevelop",
	"EndingSacrificeOfNuclear",
	"DevelopedBattleGear2",
	"DevelopedBattleGear4",
	"DevelopedBattleGear5",
	"ArrivedMotherBaseChildren",
}
_.MB_FREEPLAY_DEMO_ENUM = _.Enum(_.MB_FREEPLAY_DEMO_PRIORITY_LIST)
_.FORCE_MB_RETURN_RADIO_LIST = {
	"OpenDecisionHuey",
	"EliImprisonment",
	"PermitParasiticWormCarrierKill",
	"InterrogateQuietRadio",
	"QuietHasFriendshipWithChildRadio",
	"AnableDevBattleGearRadio",
	"ParasiticWormCarrierQuarantine",
	"CompliteDevelopBattleGearRadio",
	"DevelopedBattleGear_1Radio",
	"EliLookSnakeRadio",
	"EntrustDdogRadio",
	"DdogComeToGetRadio",
	"DdogGoWithMeRadio",
	"HappyBirthDayRadio",
	"AttackedFromOtherPlayerRadio",
	"NuclearEliminationCeremonyRadio",
	"MoraleOfMBIsLowRadio",
	"GeneralPurposeRadio",
	"QuietReceivesPersecutionRadio",
}
_.FORCE_MB_RETURN_RADIO_ENUM = _.Enum(_.FORCE_MB_RETURN_RADIO_LIST)
_.S10100_BOY_LIST = { "Collect_Injury", "Collect_YellowHood", "Collect_Aflo", "Collect_ShortAflo", "Collect_BlackCoat" }
_.S10100_BOY_ENUM = _.Enum(_.S10100_BOY_LIST)
_.MB_FREEPLAY_DEMO_REQUESTFLAG_LIST = { "PlayAfterQuietBattle", "PlayAfterDethFactory", "PlayAfterWhiteMamba" }
_.MB_FREEPLAY_DEMO_REQUESTFLAG_DEFINE = _.Enum(_.MB_FREEPLAY_DEMO_REQUESTFLAG_LIST)
_.MB_FREEPLAY_LARGEDEMO = {
	"GoToMotherBaseAfterQuietBattle",
	"NuclearEliminationCeremony",
	"DecisionHuey",
	"InterrogateQuiet",
	"TheGreatEscapeLiquid",
}
_.MB_FREEPLAY_RIDEONHELI_DEMO = { "DdogGoWithMe", "QuietWishGoMission" }
_.MB_FREEPLAY_RIDEONHELI_DEMO_DEFINE = _.Enum(_.MB_FREEPLAY_RIDEONHELI_DEMO)
_.GAME_OVER_TYPE = {
	PLAYER_DEAD = 1,
	PLAYER_FALL_DEAD = 2,
	HELICOPTER_DESTROYED = 3,
	TARGET_DEAD = 4,
	OUTSIDE_OF_MISSION_AREA = 5,
	FOB_TIME_OVER = 6,
	TARGET_ESCAPE = 7,
	TARGET_ESCAPE_BY_HELI = 8,
	PLAYER_KILL_CHILD_SOLDIER = 9,
	FOB_FULTONED = 10,
	ON_DISCOVERY = 11,
	FOB_ABORT = 12,
	FOB_ESCAPE = 13,
	ABORT = 254,
	GAME_OVER_DEMO_MASK = 255,
	MAX = 256,
	S10020_TARGET_TIMEOVERDEAD = 30,
	S10040_ARRIVAL_HONEY_BEE = 31,
	S10054_TIME_UP = 32,
	S10090_TARGET_ESCAPE = 33,
	S10090_TARGET_DEAD = 34,
	S10090_TARGET_FULTON_FAILED = 35,
	S10010_ISHMAEL_DEAD = 36,
	S10240_STAFF_DEAD = 37,
}
_.GAME_OVER_RADIO = {
	PLAYER_DEAD = 1,
	OUT_OF_MISSION_AREA = 2,
	OUT_OF_MISSION_AREA_HELI = 3,
	HELICOPTER_DESTROYED = 4,
	PLAYER_DESTROY_HELI = 5,
	RIDING_HELI_DESTROYED = 6,
	TARGET_DEAD = 7,
	PLAYER_KILL_TARGET = 8,
	PLAYER_KILL_TARGET_WOMAN = 9,
	PLAYER_KILL_CHILD_SOLDIER = 10,
	PLAYER_KILL_DD = 11,
	OTHERS = 255,
	S10020_PLAYER_DEAD = 30,
	S10020_TARGET_DEAD = 31,
	S10020_TARGET_KILL = 32,
	S10020_TARGET_TIMEOVERDEAD = 33,
	S10020_OUT_OF_MISSION_AREA = 34,
	S10020_PLAYER_DESTROY_HELI = 35,
	S10020_RIDING_HELI_DESTROYED = 36,
	S10030_PLAYER_DEAD = 37,
	S10030_TARGET_DEAD = 38,
	S10040_ARRIVAL_HONEY_BEE = 39,
	S10195_TARGET_ESCAPE = 40,
	S10195_TARGET_ESCAPE_UNREAL = 41,
	S10054_TIME_UP = 42,
	S10090_TARGET_DEAD = 43,
	S10090_TARGET_DEAD_MARKING_OFF = 44,
	S10090_TARGET_DEAD_MARKING_ON = 45,
	S10090_TARGET_FULTON_FAILED_MARKING_OFF = 46,
	S10090_TARGET_FULTON_FAILED_MARKING_ON = 47,
	S10010_ISHMAEL_DEAD = 48,
	S10156_FILMCASE_DESTROYED = 49,
	S10120_CHILD_DEAD = 50,
	S10120_TARGET_DEAD = 51,
	S10260_QUIET_DEAD = 52,
	S10240_STAFF_DEAD = 53,
	MAX = 256,
}
_.GAME_OVER_TARGET_DEAD_DEMO_TIME = 6
_.GAME_OVER_S10020_TARGET_TIMEOVERDEAD_DEMO_TIME = 25
_.GAME_OVER_S10030_SHOT_OCELOT_BY_TULLET_TIME = 1
_.GAME_OVER_S10090_TARGET_DEAD_TIME = 4
_.GAME_OVER_S10090_TARGET_FULTON_FAILED_TIME = 4
_.FOB_DEFENCE_GAME_OVER_TYPE = { INIT = 0, PLAYER_DEAD = 1, HOST_ENTER_GOAL = 2 }
_.COMMON_RADIO = {
	ENEMY_RECOVERED = 1,
	HOSTAGE_RECOVERED = 2,
	HOSTAGE_DEAD = 3,
	HOSTAGE_DAMAGED_FROM_PC = 4,
	PHASE_DOWN_OUTSIDE_HOTZONE = 5,
	OUTSIDE_MISSION_AREA = 6,
	OUTSIDE_HOTZONE_ALERT = 7,
	OUTSIDE_HOTZONE = 8,
	RETURN_HOTZONE = 9,
	ABORT_BY_HELI = 10,
	RECOMMEND_CURE = 11,
	SUPPRESSOR_BROKEN = 12,
	CALL_HELI_FIRST_TIME = 13,
	CALL_HELI_FIRST_TIME_HOT_ZONE = 14,
	CALL_HELI_SECOND_TIME = 15,
	RESULT_RANK_S = 16,
	RESULT_RANK_A = 17,
	RESULT_RANK_B = 18,
	RESULT_RANK_C = 19,
	RESULT_RANK_D = 20,
	RESULT_RANK_E = 21,
	RECOVERED_RUSSIAN_INTERPRETER = 22,
	CALL_SUPPROT_BUDDY = 23,
	TARGET_MARKED = 24,
	SEARCH_TARGET_ENABLED = 25,
	RESULT_RANK_NOT_DEFINED = 26,
	TARGET_RECOVERED = 27,
	TARGET_ELIMINATED = 28,
	CANNOT_GET_INTEL_ON_ALERT = 29,
	CALL_BUDDY_QUIET_WHILE_FORCE_HOSPITALIZE = 30,
	OUTSIDE_HOTZONE_CHANGE_SNEAK = 31,
	UNLOCK_LANDING_ZONE = 32,
	DISCOVERED_BY_SNIPER = 33,
	DISCOVERED_BY_ENEMY_HELI = 34,
	PLAYER_NEAR_ENEMY_HELI = 35,
	HELI_LOST_CONTROL_END = 36,
	HELI_LOST_CONTROL_END_ENEMY_ATTACK = 37,
	HELI_DAMAGE_FROM_PLAYER = 38,
	DISABLE_TRANSLATE_RUSSIAN = 39,
	DISABLE_TRANSLATE_AFRIKANS = 40,
}
_.MISSION_CLEAR_TYPE = {
	ON_FOOT = 1,
	RIDE_ON_HELICOPTER = 2,
	RIDE_ON_VEHILCE = 3,
	FOB_GOAL = 4,
	FOB_ESCAPE = 5,
	FREE_PLAY_ORDER_BOX_DEMO = 6,
	FROM_HELISPACE = 7,
	QUEST_BOSS_QUIET_BATTLE_END = 8,
	QUEST_LOST_QUIET_END = 9,
	QUEST_INTRO_RESCUE_EMERICH_END = 10,
	CYPRUS_GOAL = 11,
	RIDE_ON_FULTON_CONTAINER = 12,
	FREE_PLAY_NO_ORDER_BOX = 13,
	FORCE_GO_TO_MB_ON_SIDE_OPS_CLEAR = 14,
	HELI_TAX_MB_FREE_CLEAR = 15,
	FOB_DO_CRIME = 16,
}
_.ELAPSED_MISSION_EVENT_LIST = {
	"D_DOG_COME_TO_GET",
	"D_DOG_GO_WITH_ME",
	"QUIET_WITH_GO_MISSION",
	"QUIET_VISIT_MISSION",
	"DECISION_HUEY",
	"THE_GREAT_ESCAPE_LIQUID",
	"FAILED_RETAKE_THE_PLATFORM",
	"CAN_REUNION_QUIET",
	"RADIATION_LEAK_MATHER_BASE",
	"MOVE_SAHELANTHROPUS",
	"BATTLEGEAR_HANGER_LEVELUP",
	"AFTER_THE_GREAT_ESCAPE_LIQUID",
	"STORY_SEQUENCE",
}
if #_.ELAPSED_MISSION_EVENT_LIST > _.ELAPSED_MISSION_COUNT_MAX then
end
_.ELAPSED_MISSION_EVENT = _.Enum(_.ELAPSED_MISSION_EVENT_LIST)
_.INIT_ELAPSED_MISSION_COUNT = {
	D_DOG_COME_TO_GET = 2,
	D_DOG_GO_WITH_ME = 6,
	QUIET_WITH_GO_MISSION = 3,
	QUIET_VISIT_MISSION = 1,
	DECISION_HUEY = 1,
	THE_GREAT_ESCAPE_LIQUID = 1,
	FAILED_RETAKE_THE_PLATFORM = 3,
	CAN_REUNION_QUIET = 11,
	POD_IN_CORPSE_01 = 1,
	RADIATION_LEAK_MATHER_BASE = 2,
	MOVE_SAHELANTHROPUS = 1,
	BATTLEGEAR_HANGER_LEVELUP = 2,
	AFTER_THE_GREAT_ESCAPE_LIQUID = 1,
	STORY_SEQUENCE = 2,
}
_.QUIET_REUNION_MISSION_COUNT = 6
_.WEAPONSLOT = {
	MIN = 0,
	PRIMARY_HIP = 0,
	PRIMARY_BACK = 1,
	SECONDARY = 2,
	SUPPORT_0 = 3,
	SUPPORT_1 = 4,
	SUPPORT_2 = 5,
	SUPPORT_3 = 6,
	SUPPORT_4 = 7,
	SUPPORT_5 = 8,
	SUPPORT_6 = 9,
	SUPPORT_7 = 10,
	MAX = 11,
	GUN_WEAPON_MAX = 4,
}
_.HONEY_BEE_EQUIP_ID = TppEquip.EQP_WP_HoneyBee
_.INIT_MAG = {
	ASSAULT_DEFAULT = 8,
	MACHINEGUN_DEFAULT = 3,
	SHOTGUN_DEFAULT = 10,
	SNIPER_DEFAULT = 10,
	MISSILE_DEFAULT = 4,
	HANDGAN_DEFAULT = 10,
	SUBMACHINEGUN_DEFAULT = 10,
}
_.SCRIPT_BLOCK_STATE = {
	MIN = 0,
	EMPTY = 1,
	ALLOCATED = 1,
	INITIALIZED = 2,
	ACTIVATE_REQUESTED = 3,
	WAITING_ACTIVATE = 4,
	ACTIVATED = 5,
	MAX = 6,
}
_.HOSTAGE_UNLOCK_START = 0
_.HOSTAGE_UNLOCK_FINISH = 1
_.STOCK_DIRECTION_RIGHT = 0
_.STOCK_DIRECTION_LEFT = 1
_.TIPS = {
	TIPS = 1,
	R3_ZOOM = 2,
	COVER = 3,
	COVER_SHOOT = 4,
	QUICK_DIVE = 5,
	REFLEX_MODE = 6,
	WEAPON_RANGE = 7,
	RETICLE_COLOR = 8,
	RELOAD = 9,
	STOCK_CHANGE = 10,
	INJURY = 11,
	AUTO_AIM = 12,
	VIEWPOINT_WEAPON = 13,
	TAKE_DOWN = 14,
	BASIC = 15,
	SPOTTED = 16,
	INFILTRATING = 17,
	BINO_MARKING = 18,
	PUT_MARKER = 19,
	RADIO_ESPIONAGE = 20,
	LOG = 21,
	COMOF_STANCE = 22,
	STEALTH_MODE = 23,
	TRASH = 24,
	TOILET = 25,
	HORSE_HIDEACTION = 26,
	ACTION_MAKENOISE = 27,
	CALL_MENU = 28,
	TRANQUILIZER = 29,
	PICKUP_WEAPON = 30,
	AMMO = 31,
	CARRY_WEAPON_LIMIT = 32,
	HOLD_UP = 33,
	SUPPRESSOR = 34,
	THROW_EQUIP = 35,
	NVG = 36,
	BINOCULARS = 37,
	AUDIO_CUE = 38,
	MARKING = 39,
	NIGHT = 40,
	COMBAT_ALERT = 41,
	ELUDE = 42,
	QUICK_CHANGE = 43,
	CQC = 44,
	CQC_THROW = 45,
	CQC_ATTACK = 46,
	CQC_HOLD_UP = 47,
	CQC_COMB = 48,
	CQC_HOLD = 49,
	CQC_INTERROGATION = 50,
	CQC_CHOKE = 51,
	CQC_KILL = 52,
	HOLD_UP_INTERROGATION = 53,
	GET_DOWN = 54,
	INTERPRETER = 55,
	FREE_RUN = 56,
	DAY_NIGHT_SHIFT = 57,
	COMOF_NIGHT = 58,
	COMOF_INGRASS = 59,
	SAND_STORM = 60,
	COMOF_VEHICLE = 61,
	TRACK_HIDE = 62,
	ROLLING = 63,
	CRACK_CLIMB = 64,
	BULLET_PENETRATE = 65,
	NON_LETHAL_BULLET = 66,
	BULLET_REFILL = 67,
	SUPPLY_WEAPON = 68,
	SUPPORT_HELI = 69,
	ACC = 70,
	TACTICAL_BUDDY = 71,
	BUDDY_COMMAND = 72,
	BUDDY_HORSE = 73,
	ANIMALS = 74,
	SAVE_ANIMAL = 75,
	PLANT = 76,
	DIAMOND = 77,
	MATERIAL = 78,
	COMMUNICATOR = 79,
	ELECTRICITY = 80,
	RADAR = 81,
	SEARCH_LIGHT = 82,
	GUN_LIGHT = 83,
	SNIPER_RIFLE = 84,
	FLARE_GRENADE = 85,
	ITEM = 86,
	CARDBOARD_BOX = 87,
	PHANTOM_CIGAR_TOILET = 88,
	MICROPHONE = 89,
	MB_DEVICE = 90,
	FULLTON_DEVICE = 91,
	SHOWER_ROOM = 92,
	MB_CLASS_FUNCTION = 93,
	FULTON_CLASS_FUNCTION_STOP = 94,
	GMP = 95,
	LOSS_GMP = 96,
	RANK = 97,
	MORALE = 98,
	EMBLEM = 99,
	RECO_TRANQUILIZER = 100,
	FREE = 101,
	SKILL = 102,
	WOOD_BOX = 103,
	RED_DRUMS = 104,
	FOG = 105,
	MAP_SHORTCUT = 106,
	FULLTON_RECOVERY = 107,
	FULTON_MACHINEGUN = 108,
	DEV_DOCUMENT = 109,
	BOX_MOVE = 110,
	SUPPORT_ATTACK = 111,
	HEROISM = 112,
	CODENAMES = 113,
	DEVELOPMENT = 114,
	TANK = 115,
	GUNSHIP = 116,
	BUDDY_DOG = 117,
	DECOY = 118,
	MINE = 119,
	ACTIVE_SONAR = 120,
	BUDDY_WALKER = 121,
	FULTON_COMMON_VEHICLE = 122,
	FULTON_CONTAINER = 123,
	RAIN = 124,
	UNDER_BARREL = 125,
	BUDDY_QUIET = 126,
	SLEEP_GUS = 127,
	TROUBLE = 128,
	FOB_WORM_HOLE = 129,
	INJURY_2 = 130,
	BULLET_PENETRATE_FAIL = 131,
	ANIMAL_CAGE = 132,
	FULTON_MORTAR = 133,
	FULTON_ANTI_AIRCRAFT = 134,
	PHANTOM_CIGAR_TRASH = 135,
	FOB_ABILITY = 136,
	WORM_HOLE = 137,
	FOB_SHIELD = 138,
	ESP_POINT = 139,
	STAFF_RANK_BONUS = 140,
	FOB_GOAL = 141,
	FOB_GOAL_BONUS = 142,
	DIRECT_CONTRACTS = 143,
	REVENGE_WORM_HOLE = 144,
	NUCLEAR_WEAPON = 145,
	FOB_HERO = 146,
	EQUIPPED_GUARDS = 147,
	PF_RATING = 148,
	PF_POINT = 149,
	FOB_SUPPORT = 150,
	FOB_RESCUE_STAFF = 151,
	EMERGENCES = 152,
	FOB_CONSTRUCT = 153,
	ONLINE_DISPATCH_MISSION = 154,
}
_.TIPS_REDUNDANT_REF = {
	[_.TIPS.INJURY_2] = _.TIPS.INJURY,
	[_.TIPS.BULLET_PENETRATE_FAIL] = _.TIPS.BULLET_PENETRATE,
	[_.TIPS.ANIMAL_CAGE] = _.TIPS.SAVE_ANIMAL,
	[_.TIPS.FULTON_MORTAR] = _.TIPS.FULTON_MACHINEGUN,
	[_.TIPS.FULTON_ANTI_AIRCRAFT] = _.TIPS.FULTON_MACHINEGUN,
	[_.TIPS.PHANTOM_CIGAR_TRASH] = _.TIPS.PHANTOM_CIGAR_TOILET,
}
_.CONTINUE_TIPS_TABLE = {
	[_.STORY_SEQUENCE.STORY_START] = { "BASIC", "SPOTTED" },
	[_.STORY_SEQUENCE.CLEARD_ESCAPE_THE_HOSPITAL] = { "AUDIO_CUE", "MARKING", "NIGHT", "COMBAT_ALERT" },
	[_.STORY_SEQUENCE.CLEARD_TO_MATHER_BASE] = { "TRANQUILIZER" },
	[_.STORY_SEQUENCE.CLEARD_FIND_THE_SECRET_WEAPON] = { "DEVELOPMENT", "GUNSHIP", "TANK" },
}
_.CONTROL_GUIDE = {
	MB_DEVICE = 1,
	BINO = 2,
	BINO_ZOOM = 3,
	OPTIONALRADIO = 4,
	CUSTUMMARKER = 5,
	ADVICE = 6,
	HORSE_CALL = 7,
	HORSE_HIDE = 8,
	HORSE_HIDE_CHANGE = 9,
	HORSE_RUN = 10,
	HORSE_RIDEON = 11,
	HORSE_GETOFF = 12,
	GET_INTEL = 13,
	ATTACK = 14,
	RELOAD = 15,
	CURE = 16,
	JUMP = 17,
	STANCE = 18,
	LOOK_IN = 19,
	ELUDE_UP = 20,
	ELUDE_DOWN = 21,
	CLIMEB_UP = 22,
	ROLLING = 23,
	COVER_ATTACK = 24,
	SHOULDER = 25,
	SHOULDER_THROW = 26,
	HULTON = 27,
	PIPE_UP = 28,
	FREECLIMD = 29,
	GARBAGEBOX_HIDE = 30,
	CQC = 31,
	CQC_PUNCH = 32,
	CQC_THROW = 33,
	RESTRAINT2 = 34,
	NONE = 35,
	INTERROGATION = 36,
	SWOON = 37,
	KILL = 38,
	C4_SET = 39,
	C4_EXPLODING = 40,
	ACCELARATER = 41,
	BRAKE = 42,
	HELI_RIDEON = 43,
	HELI_GETOFF = 44,
	CQC_COMBO = 45,
	EQUIPMENT_WP = 46,
	CAMERA_MOVE = 47,
	CAMERA_ZOOM = 48,
	CAMERA_CHANGE = 49,
	PLAY_MOVE = 50,
	PLAY_COVER = 51,
	PLAY_DASH = 52,
	PLAY_EVADE = 53,
	ORDER_CHILD = 54,
	MACHINEGUN = 55,
	MORTAR = 56,
	ANTI_AIRCRAFT = 57,
	SEARCH_LIGHT = 58,
	UNDER_BARREL = 59,
	MOVE_IN_HELI = 60,
	BOOSTER_SCOPE = 61,
	DRIVE_COMMON_VEHICLE = 62,
	DRIVE_WALKER_GEAR = 63,
	RIDE_HORSE = 64,
	SNIPER_RIFLE = 65,
	SHIELD = 66,
	STANCE_SQUAT = 67,
	STANCE_CRAWL = 68,
	STEP_FENCE = 69,
	ATTACK_VEHICLE_SHOOT = 70,
	ATTACK_VEHICLE_CAMERA = 71,
	VEHICLE_LIGHT = 72,
}
_.PAUSE_CONTROL_GUIDE = {
	[_.CONTROL_GUIDE.DRIVE_COMMON_VEHICLE] = "vehicle",
	[_.CONTROL_GUIDE.DRIVE_WALKER_GEAR] = "walker-gear",
	[_.CONTROL_GUIDE.RIDE_HORSE] = "horse",
}
_.CONTROL_GUIDE_LANG_ID_LIST = {
	"tutorial_mb_device",
	"tutorial_bino",
	"tutorial_bino_zoom",
	"tutorial_optionalradio",
	"tutorial_set_marker",
	"tutorial_advice",
	"tutorial_horse_call",
	"tutorial_horse_hide",
	"tutorial_horse_hide_change",
	"tutorial_horse_run",
	"tutorial_horse_rideon",
	"tutorial_horse_getoff",
	"tutorial_get_intel",
	"tutorial_attack",
	"tutorial_reload",
	"tutorial_cure",
	"tutorial_jump",
	"tutorial_stance",
	"tutorial_look_in",
	"tutorial_elude_up",
	"tutorial_elude_down",
	"tutorial_climeb_up",
	"tutorial_rolling",
	"tutorial_cover_attack",
	"tutorial_shoulder",
	"tutorial_shoulder_throw",
	"tutorial_hulton",
	"tutorial_pipe",
	"tutorial_cliff",
	"tutorial_garbagebox_hide",
	"tutorial_cqc",
	"tutorial_cqc_punch",
	"tutorial_cqc_throw",
	"tutorial_restraint2",
	"",
	"tutorial_interrogation",
	"tutorial_swoon",
	"tutorial_kill",
	"tutorial_C4_set",
	"tutorial_C4_exploding",
	"tutorial_accelarater",
	"tutorial_brake",
	"tutorial_heli_rideon",
	"tutorial_heli_getoff",
	"tutorial_cqc_combo",
	"tutorial_equipment_wp",
	"tutorial_camera_move",
	"tutorial_camera_zoom",
	"tutorial_camera_change",
	"tutorial_play_move",
	"tutorial_play_cover",
	"tutorial_play_dash",
	"tutorial_play_evade",
	"tutorial_order_child",
	"tutorial_attack_machinegun",
	"tutorial_attack_mortar",
	"tutorial_attack_anti_aircraft",
	"tutorial_searchlight_onoff",
	"tutorial_change_barrel",
	"tutorial_play_move",
	"tutorial_bino_zoom",
	"tutorial_show_controller",
	"tutorial_show_controller",
	"tutorial_show_controller",
	"tutorial_change_camera",
	"tutorial_shield2",
	"tutorial_stance3",
	"tutorial_stance2",
	"tutorial_fence_jump",
	"tutorial_v_attack",
	"tutorial_v_fps_tps",
	"tutorial_searchlight_onoff",
}
_.GMP_COST_TYPE = {
	FULTON = 1,
	SUPPORT_SUPPLY = 2,
	SUPPORT_ATTACK = 3,
	CALL_HELLI = 4,
	BUDDY = 5,
	CLEAR_SIDE_OPS = 6,
	DESTROY_SUPPORT_HELI = 7,
}
_.CLUSTER_NAME = { "Command", "Combat", "Develop", "Support", "Medical", "Spy", "BaseDev" }
_.CLUSTER_DEFINE = _.Enum(_.CLUSTER_NAME)
_.PLNT_NAME = { "Special", "Common1", "Common2", "Common3" }
_.PLNT_DEFINE = _.Enum(_.PLNT_NAME)
_.SECURITY_SETTING = {
	numInSpecialPlatform = {
		soldier = { 4, 8, 12, 4, 8, 12, 4, 8, 12, 4, 8, 12, 4, 8, 12, 4, 8, 12, 4, 8, 12 },
		camera = { 1, 1, 1, 1, 1, 2, 1, 2, 3, 2, 3, 4, 2, 3, 5, 3, 4, 6, 3, 5, 8 },
		decoy = { 1, 1, 1, 1, 1, 2, 2, 3, 4, 2, 4, 6, 3, 5, 8, 3, 6, 10, 4, 8, 12 },
		mine = { 1, 1, 1, 1, 1, 2, 2, 3, 4, 2, 4, 6, 3, 5, 8, 3, 6, 10, 4, 8, 12 },
		uav = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 3, 2, 3, 4 },
		ir_sensor = { 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 3, 2, 3, 4, 3, 4, 5 },
		alarm = { 1, 1, 1, 1, 1, 2, 1, 2, 3, 1, 2, 4, 2, 2, 4, 2, 3, 4, 2, 3, 4 },
	},
	numInCommonPlatform = {
		soldier = { 2, 4, 8, 2, 4, 8, 2, 4, 8, 2, 4, 8, 2, 4, 8, 2, 4, 8, 2, 4, 8 },
		camera = { 1, 1, 1, 1, 1, 2, 1, 2, 3, 2, 3, 4, 2, 4, 5, 3, 4, 6, 3, 5, 7 },
		decoy = { 1, 1, 1, 1, 1, 2, 1, 2, 4, 2, 3, 6, 2, 4, 7, 3, 5, 8, 3, 6, 9 },
		mine = { 1, 1, 1, 1, 1, 2, 1, 2, 4, 2, 3, 6, 2, 4, 7, 3, 5, 8, 3, 6, 9 },
		uav = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 2 },
		ir_sensor = { 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 2, 1, 2, 3, 2, 3, 4, 3, 4, 5 },
		alarm = { 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 4, 2, 4, 6, 3, 5, 8, 4, 7, 10 },
	},
	numInCommandPlatform = { alarm = { 1, 1, 1, 1, 1, 2, 1, 2, 3, 2, 3, 4, 2, 3, 5, 2, 4, 6, 3, 5, 6 } },
	numInBaseDevPlatform = { alarm = { 1, 1, 1, 1, 1, 2, 2, 4, 6, 3, 6, 10, 4, 9, 14, 6, 12, 18, 7, 14, 22 } },
}
_.FOB_EVENT_ID_LIST = { ARMOR = { 3 }, HOSTAGE = { 3 }, ZOMBIE = { 5 }, PARASITE_METAL = { 5 } }
_.STATION_LIST = {
	afgh = {
		"bridge",
		"enemyBase",
		"field",
		"fort",
		"tent",
		"cliffTown",
		"commFacility",
		"powerPlant",
		"remmnants",
		"slopedTown",
		"sovietBase",
		"village",
	},
	mafr = { "banana", "diamond", "lab", "flowStation", "hill", "outland", "pfCamp", "savannah", "swamp" },
	mtbs = { "Command", "Combat", "Develop", "Support", "Medical", "Spy", "BaseDev" },
}
_.STAFF_TYPE_ID = { NORMAL = 1, COMBAT = 2, DEVELOP = 3, BASE_DEV = 4, SUPPORT = 5, SPY = 6, MEDICAL = 7 }
_.UNIQUE_STAFF_TYPE_ID = {
	SNEAK = 248,
	OCELOT = 249,
	MILLER = 250,
	QUIET = 251,
	HUEY = 252,
	CODETALKER = 253,
	INITIAL_STAFF_01 = 0,
	INITIAL_STAFF_02 = 1,
	INITIAL_STAFF_03 = 2,
	FULTON_LESSON_STAFF_01 = 3,
	FULTON_LESSON_STAFF_02 = 4,
	FULTON_LESSON_STAFF_03 = 5,
	FULTON_LESSON_STAFF_04 = 6,
	FULTON_LESSON_STAFF_05 = 7,
	FULTON_LESSON_STAFF_06 = 8,
	FULTON_LESSON_STAFF_07 = 9,
	FULTON_LESSON_STAFF_08 = 10,
	FULTON_LESSON_STAFF_09 = 33,
	FULTON_LESSON_STAFF_10 = 34,
	FULTON_LESSON_STAFF_11 = 35,
	FULTON_LESSON_STAFF_12 = 36,
	FULTON_LESSON_STAFF_13 = 45,
	FULTON_LESSON_STAFF_14 = 46,
	S10080_GUN_SMITH = 11,
	S10080_ENGINEER = 12,
	S10054_HOSTAGE_01 = 58,
	S10054_HOSTAGE_02 = 93,
	S10054_HOSTAGE_03 = 94,
	S10054_HOSTAGE_04 = 95,
	S10054_HOSTAGE_05 = 96,
	S10054_HOSTAGE_06 = 97,
	S10043_INTERPRETER = 14,
	S10086_INTERPRETER = 15,
	S10036_COMMANDER = 16,
	S10040_DEAF_HOSTAGE = 17,
	S10052_MALAK = 18,
	S10052_DRIVER = 19,
	S10085_FEMALE_HOSTAGE = 20,
	S10120_OUTLAND_HOSTAGE = 102,
	S10121_PF_OPERATOR = 21,
	S10121_WEAPON_DEALER = 22,
	S10200_TARGET_HOSTAGE = 23,
	S10200_BONUS_HOSTAGE = 24,
	S10200_CHILD_COMMANDER = 25,
	S10100_BANANA_TARGET = 26,
	S10171_BONUS_SOLIDER = 27,
	S10085_HOSTAGE = 28,
	S10041_FIELD_COMMANDER = 29,
	S10041_VILLAGE_COMMANDER = 30,
	S10041_ENEMY_BASE_COMMANDER = 31,
	S10041_FIELD_DRIVER = 47,
	S10041_FIELD_BODYGUARD = 48,
	S10041_ENEMY_BASE_DRIVER = 49,
	S10041_ENEMY_BASE_BODYGUARD = 50,
	S10044_CLIFFTOWN_VIP = 62,
	S10044_CLIFFTOWN_HOSTAGE = 92,
	S10033_TARGET_HOSTAGE = 32,
	S10211_TRAFFICKER = 37,
	S10211_BODYGUARD_01 = 51,
	S10211_BODYGUARD_02 = 52,
	S10211_BODYGUARD_03 = 53,
	S10211_BODYGUARD_04 = 54,
	S10211_BODYGUARD_05 = 55,
	S10045_TARGET_HOSTAGE = 38,
	S10045_EXECUTIONER = 39,
	S10115_MOSQUITO = 40,
	S10195_TARGET = 41,
	S10195_TRACER = 42,
	S10195_HOSTAGE = 43,
	S10020_ENEMY_BASE_COMMANDER = 56,
	S10020_DRIVER = 57,
	S10086_HOSTAGE_A = 44,
	S10086_HOSTAGE_B = 63,
	S10086_HOSTAGE_C = 64,
	S10086_HOSTAGE_D = 65,
	S10091_EXECUTEUNIT_A = 66,
	S10091_EXECUTEUNIT_B = 67,
	S10091_SWAMPNEAR_HOSTAGE = 100,
	S10091_TRUCK_DRIVER = 101,
	S10156_HOSTAGE = 109,
	S10043_HOSTAGE_A = 87,
	S10043_HOSTAGE_B = 88,
	S10082_HOSTAGE_A = 98,
	S10082_HOSTAGE_B = 99,
	S10045_HOSTAGE_A = 107,
	S10045_HOSTAGE_B = 108,
	S10045_HOSTAGE_TARGET = 38,
	S10045_EXECUTION = 39,
	S10033_HOSTAGE = 89,
	S10093_ZRS_CAPTAIN = 68,
	S10041_HOSTAGE_A = 90,
	S10041_HOSTAGE_B = 91,
	S10211_HOSTAGE_A = 103,
	S10211_HOSTAGE_B = 104,
	S10211_HOSTAGE_C = 105,
	S10211_HOSTAGE_D = 106,
	QUEST_MSF_01 = 69,
	QUEST_MSF_02 = 70,
	QUEST_MSF_03 = 71,
	QUEST_MSF_04 = 72,
	QUEST_MSF_05 = 73,
	QUEST_MSF_06 = 74,
	QUEST_MSF_07 = 75,
	QUEST_MSF_08 = 76,
	QUEST_MSF_09 = 77,
	QUEST_MSF_10 = 78,
	QUEST_PASHTO = 80,
	QUEST_KIKONGO = 81,
	QUEST_MASTERGUNSMITH = 79,
	QUEST_GUNSMITH_02 = 13,
	QUEST_KANTOKU = 110,
	QUEST_TAN = 111,
	QUEST_HOSTAGE_R_01 = 166,
	QUEST_HOSTAGE_R_02 = 156,
	QUEST_HOSTAGE_SR_01 = 177,
	QUEST_HOSTAGE_SR_02 = 179,
	QUEST_AFRLKAANS = 184,
	RESCUE_SP_HOSTAGE = 224,
	RESCUE_HOSTAGE_E20010_001 = 219,
	RESCUE_HOSTAGE_E20010_002 = 220,
	RESCUE_HOSTAGE_E20010_003 = 221,
	RESCUE_HOSTAGE_E20010_004 = 222,
	RESCUE_HOSTAGE_E20050_000 = 234,
	RESCUE_HOSTAGE_E20050_001 = 235,
	RESCUE_HOSTAGE_E20050_002 = 236,
	RESCUE_HOSTAGE_E20050_003 = 237,
	RESCUE_HOSTAGE_E20020_000 = 225,
	RESCUE_HOSTAGE_E20020_001 = 226,
	RESCUE_HOSTAGE_E20030_000 = 229,
	RESCUE_HOSTAGE_E20030_001 = 230,
	RESCUE_HOSTAGE_E20030_002 = 231,
	RESCUE_ENEMY_US_MISSION_TARGET_CENTER000 = 227,
	RESCUE_ENEMY_US_MISSION_TARGET_SQUAD000 = 228,
	RESCUE_E20030_BETRAYER = 232,
	RESCUE_E20030_MASTERMIND = 233,
	RESCUE_FRIENDMAN = 110,
	RESCUE_GENOME_SOILDER_SAVE = 238,
	S10040_ENEMY_01 = 59,
	S10040_ENEMY_02 = 60,
	S10040_ENEMY_03 = 61,
	STAFF_STAFF2_MSF_01 = 241,
	STAFF_STAFF2_MSF_02 = 242,
	STAFF_STAFF1_FOX_01 = 239,
	STAFF_STAFF1_FOX_02 = 240,
	STAFF_STAFF3_DD_01 = 243,
	STAFF_STAFF3_DD_02 = 244,
	STAFF_STAFF4_FOX_HOUND_01 = 245,
	STAFF_STAFF4_FOX_HOUND_02 = 246,
}
_.IGNORE_EXIST_STAFF_CHECK = {
	[_.UNIQUE_STAFF_TYPE_ID.SNEAK] = true,
	[_.UNIQUE_STAFF_TYPE_ID.OCELOT] = true,
	[_.UNIQUE_STAFF_TYPE_ID.MILLER] = true,
	[_.UNIQUE_STAFF_TYPE_ID.QUIET] = true,
	[_.UNIQUE_STAFF_TYPE_ID.HUEY] = true,
	[_.UNIQUE_STAFF_TYPE_ID.CODETALKER] = true,
	[_.UNIQUE_STAFF_TYPE_ID.INITIAL_STAFF_01] = true,
	[_.UNIQUE_STAFF_TYPE_ID.INITIAL_STAFF_02] = true,
	[_.UNIQUE_STAFF_TYPE_ID.INITIAL_STAFF_03] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_01] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_02] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_03] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_04] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_05] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_06] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_07] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_08] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_09] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_10] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_11] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_12] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_13] = true,
	[_.UNIQUE_STAFF_TYPE_ID.FULTON_LESSON_STAFF_14] = true,
	[_.UNIQUE_STAFF_TYPE_ID.S10040_DEAF_HOSTAGE] = true,
}
_.CYPR_PLAYER_INITIAL_WEAPON_TABLE = {
	{ secondary = "EQP_None" },
	{ primaryHip = "EQP_None" },
	{ primaryBack = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
	{ support = "EQP_None" },
}
_.CYPR_PLAYER_INITIAL_ITEM_TABLE =
	{ "EQP_None", "EQP_None", "EQP_None", "EQP_None", "EQP_None", "EQP_None", "EQP_None" }
_.RANKING_MAX = 21
_.RANKING_ENUM = Tpp.Enum({
	"TotalTacticalTakeDownCount",
	"XPersonMarkingTime",
	"FirstHeadShotTime",
	"FirstHeadShotTimeTranq",
	"FirstCommandPostAnnihilateTime",
	"CboxGlidingDistance",
	"MechaNeutralizeCount",
	"LongestBirdShotDistance",
	"XPersonPerfectStealthCQCNeutralizeTime",
	"XRocketArmNeutralizeTime",
	"FobSneakingGoalCount",
	"FobDefenceSucceedCount",
	"NuclearDisposeCount",
	"mtbs_q42010",
	"mtbs_q42020",
	"mtbs_q42030",
	"mtbs_q42040",
	"mtbs_q42050",
	"mtbs_q42060",
	"mtbs_q42070",
})
_.DEFAULT_DROP_ROUTE = {
	[10033] = "lz_drp_enemyBase_S0000|rt_drp_enemyBase_S_0000",
	[10036] = "lz_drp_field_N0000|rt_drp_field_N_0000",
	[10040] = "lz_drp_slopedTownEast_E0000|rt_drp_slopedTownEast_E_0000",
	[10041] = "lz_drp_ruinsNorth_S0000|rt_drp_ruinsNorth_S_0000",
	[10043] = "lz_drp_ruinsNorth_S0000|rt_drp_ruinsNorth_S_0000",
	[10044] = "lz_drp_cliffTown_S0000|rt_drp_cliffTown_S_0000",
	[10052] = "lz_drp_remnants_S0000|rt_drp_remnants_S_0000",
	[10054] = "lz_drp_enemyBase_S0000|rt_drp_enemyBase_S_0000",
	[10081] = "lz_drp_diamondSouth_W0000|rt_drp_diamondSouth_W_0000",
	[10085] = "lz_drp_hillNorth_W0000|rt_drp_hillNorth_W_0000",
	[10086] = "lz_drp_swamp_S0000|rt_drp_swamp_S_0000",
	[10090] = "lz_drp_pfCampNorth_S0000|rt_drp_pfCampNorth_S_0000",
	[10091] = "lz_drp_flowStation_E0000|lz_drp_flowStation_E_0000",
	[10100] = "lz_drp_savannahWest_N0000|lz_drp_savannahWest_N_0000",
	[10110] = "lz_drp_hillWest_S0000|lz_drp_hillWest_S_0000",
	[10120] = "lz_drp_outland_N0000|rt_drp_outland_N_0000",
	[10121] = "lz_drp_pfCamp_N0000|rt_drp_pfcamp_N_0000",
	[10156] = "lz_drp_ruins_S0000|rt_drp_ruins_S_0000",
	[10171] = "lz_drp_savannahEast_S0000|lz_drp_savannahEast_S_0000",
	[10195] = "lz_drp_savannahEast_S0000|lz_drp_savannahEast_S_0000",
	[10200] = "lz_drp_hillNorth_N0000|rt_drp_hillNorth_N_0000",
	[10211] = "lz_drp_savannahEast_N0000|rt_drp_savannahEast_N_0000",
	[10130] = "rts_drp_lab_S_0000",
	[10045] = "lz_drp_field_N0000|rt_drp_field_N_0000",
	[10082] = "lz_drp_pfCampNorth_S0000|rt_drp_pfCampNorth_S_0000",
	[10093] = "lz_drp_lab_W0000|rt_drp_lab_W_0000",
}
_.DIRECTION_ZOOM_IN_CAMERA_ZOOM_INTERP_TIME = 1
_.DIRECTION_ZOOM_IN_CAMERA_ROTATION_INTERP_TIME = 1
_.ENEMY_HELI_COLORING_TYPE = { DEFAULT = 0, BLACK = 1, RED = 2 }
return _
