package LootPrereqs
using RTDB, Prereqs, Condition

BasePlayerLevelPrereq : StatPrereq
{
	statType = "Level";
	valueToCheck = 0;
	comparisonType = "GreaterOrEqual";
}

MaxPlayerLevelPrereq : BasePlayerLevelPrereq
{
	[ EP1 ]
	valueToCheck = 60;
}

BelowMaxPlayerLevelPrereq : BasePlayerLevelPrereq
{
	[ EP1 ]
	valueToCheck = 60;
	comparisonType = "Less";
}

EP1Standalone_Started_Prereq : FactValuePrereq
{
	fact = "ep1_standalone";
	value = 1;
	comparisonType = "GreaterOrEqual";
}

BaseGame_Started_Prereq : EP1Standalone_Started_Prereq
{
	comparisonType = "Less";
}

EP1Standalone_StartingLevel_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 15;
}

PlayerLevelTrashTierPrereq : BasePlayerLevelPrereq
{
	valueToCheck = 9;
	comparisonType = "Less";
}

PlayerLevelWeakTierPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 9;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelNormalTierPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelRareTierPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 25;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelEliteTierPrereq : BasePlayerLevelPrereq
{
	valueToCheck = 33;
	comparisonType = "GreaterOrEqual";
}

PlayerLevelCommonWeaponModsPrereq : BasePlayerLevelPrereq
{
	valueToCheck = 17;
	comparisonType = "Less";
}

PlayerLevelUncommonWeaponModsPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelRareWeaponModsPrereq : BasePlayerLevelPrereq
{
	valueToCheck = 33;
	comparisonType = "GreaterOrEqual";
}

PlayerLevelEpicWeaponModsPrereq_SprinkleAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 41;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 50;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelLegendaryWeaponModsPrereq_SprinkleAtVendor : BasePlayerLevelPrereq
{
	valueToCheck = 50;
	comparisonType = "GreaterOrEqual";
}

PlayerLevel_Tier_1_Start_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 0;
	comparisonType = "GreaterOrEqual";
}

PlayerLevel_Tier_2_Start_Prereq : PlayerLevel_Tier_1_Start_Prereq
{
	valueToCheck = 9;
}

PlayerLevel_Tier_3_Start_Prereq : PlayerLevel_Tier_1_Start_Prereq
{
	valueToCheck = 17;
}

PlayerLevel_Tier_4_Start_Prereq : PlayerLevel_Tier_1_Start_Prereq
{
	valueToCheck = 25;
}

PlayerLevel_Tier_5_Start_Prereq : PlayerLevel_Tier_1_Start_Prereq
{
	valueToCheck = 33;
}

PlayerLevel_Tier_5_Plus_Start_Prereq : PlayerLevel_Tier_1_Start_Prereq
{
	valueToCheck = 41;
}

PlayerLevel_Tier_1_Exclusion_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 9;
	comparisonType = "Less";
}

PlayerLevel_Tier_1_to_2_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 9;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_2_to_3_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_3_to_4_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 25;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_4_to_5_Exclusion_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 33;
	comparisonType = "GreaterOrEqual";
}

PlayerLevel_Tier_1_to_3_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 0;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_1_to_4_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 0;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_2_to_4_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 9;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_1_to_2_AttachmentsInLoot_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 17;
	comparisonType = "Less";
}

PlayerLevel_Tier_1_to_3_AttachmentsInLoot_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_1_to_4_AttachmentsInLoot_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 25;
	comparisonType = "GreaterOrEqual";
}

PlayerLevelAndPlusTiers_Tier_1_Exclusion_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 6;
	comparisonType = "Less";
}

PlayerLevelAndPlusTiers_Tier1PLUS_to_2_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 6;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 9;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier2_to_Tier2PLUS_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 9;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 14;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier2PLUS_to_3_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 14;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier3_to_Tier3PLUS_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 22;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier3PLUS_to_Tier4_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 22;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier4_to_Tier4PLUS_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 25;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 30;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier4PLUS_to_Tier5_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 30;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier5_to_Tier5PLUS_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 33;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 41;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier5PLUS_to_Tier5PLUSPLUS_Exclusion_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 41;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 51;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndPlusTiers_Tier5PLUS_to_MaxLevel_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 41;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevelAndTier5PLUSPLUS_Exclusion_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 51;
	comparisonType = "GreaterOrEqual";
}

CyberpsychoWeaponInLootPrereq_early : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 1;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CyberpsychoWeaponInLootPrereq_mid : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CyberpsychoWeaponInLootPrereq_late : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 25;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CyberpsychoWeaponInLootPrereq_end : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 33;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 60;
			comparisonType = "LessOrEqual";
		} : BasePlayerLevelPrereq
	];
}

CraftedIconicWeaponRecipePrereq_Common : BasePlayerLevelPrereq
{
	valueToCheck = 9;
	comparisonType = "Less";
}

CraftedIconicWeaponRecipePrereq_Uncommon : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 9;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CraftedIconicWeaponRecipePrereq_Rare : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 25;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CraftedIconicWeaponRecipePrereq_Epic : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 25;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

CraftedIconicWeaponRecipePrereq_Legendary : BasePlayerLevelPrereq
{
	valueToCheck = 33;
	comparisonType = "GreaterOrEqual";
}

WeaponTier1InjectPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq, 
		{
			allowedTags = 
			[
				"Replacer"
			];
			invert = true;
		} : GameplayTagsPrereq
	];
}

WeaponTier2InjectPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 33;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq, 
		{
			allowedTags = 
			[
				"Replacer"
			];
			invert = true;
		} : GameplayTagsPrereq
	];
}

WeaponTier3InjectPrereq : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 33;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			allowedTags = 
			[
				"Replacer"
			];
			invert = true;
		} : GameplayTagsPrereq
	];
}

UncommonQuickhackRecipesPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		{
			nestedPrereqs = 
			[
				{
					valueToCheck = 6;
					comparisonType = "Greater";
				} : BasePlayerLevelPrereq, 
				{
					valueToCheck = 14;
					comparisonType = "LessOrEqual";
				} : BasePlayerLevelPrereq
			];
		} : ANDPrereq, 
		{
			minimumQuality = 2;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

RareQuickhackRecipesPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		{
			nestedPrereqs = 
			[
				{
					valueToCheck = 14;
					comparisonType = "Greater";
				} : BasePlayerLevelPrereq, 
				{
					valueToCheck = 22;
					comparisonType = "LessOrEqual";
				} : BasePlayerLevelPrereq
			];
		} : ANDPrereq, 
		{
			minimumQuality = 4;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

EpicQuickhackRecipesPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		{
			nestedPrereqs = 
			[
				{
					valueToCheck = 22;
					comparisonType = "Greater";
				} : BasePlayerLevelPrereq, 
				{
					valueToCheck = 30;
					comparisonType = "LessOrEqual";
				} : BasePlayerLevelPrereq
			];
		} : ANDPrereq, 
		{
			minimumQuality = 6;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

LegendaryQuickhackRecipesPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		{
			nestedPrereqs = 
			[
				{
					valueToCheck = 30;
					comparisonType = "Greater";
				} : BasePlayerLevelPrereq, 
				{
					valueToCheck = 50;
					comparisonType = "LessOrEqual";
				} : BasePlayerLevelPrereq
			];
		} : ANDPrereq, 
		{
			minimumQuality = 8;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

LegendaryPlusPlusQuickhackRecipesPlayerPrereq : StatPrereq
{
	statType = "Level";
	valueToCheck = 51;
	comparisonType = "GreaterOrEqual";
}

UncommonQuickhackPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_1_to_2_Exclusion_Prereq", {
			minimumQuality = 2;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

RareQuickhackPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_2_to_3_Exclusion_Prereq", {
			minimumQuality = 4;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

EpicQuickhackPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_3_to_4_Exclusion_Prereq", {
			minimumQuality = 6;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

LegendaryQuickhackPlayerPrereq : ORPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_4_to_5_Exclusion_Prereq", {
			minimumQuality = 8;
		} : RarityOfEquippedCyberdeckPrereq
	];
}

RareMaterialOnUncommonTierPrereq_Part1 : BasePlayerLevelPrereq
{
	valueToCheck = 9;
}

RareMaterialOnUncommonTierPrereq_Part2 : BasePlayerLevelPrereq
{
	valueToCheck = 13;
}

EpicMaterialOnRareTierPrereq_Part1 : BasePlayerLevelPrereq
{
	valueToCheck = 17;
}

EpicMaterialOnRareTierPrereq_Part2 : BasePlayerLevelPrereq
{
	valueToCheck = 21;
}

LegendaryMaterialOnEpicTierPrereq_Part1 : BasePlayerLevelPrereq
{
	valueToCheck = 25;
}

LegendaryMaterialOnEpicTierPrereq_Part2 : BasePlayerLevelPrereq
{
	valueToCheck = 29;
}

CyberwareCapacityShard_Tier2_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 2;
}

CyberwareCapacityShard_Tier3_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 9;
}

CyberwareCapacityShard_Tier4_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 17;
}

CyberwareCapacityShard_Tier5_Prereq : BasePlayerLevelPrereq
{
	valueToCheck = 25;
}

With_Tech_Central_Perk_2_3_Prereq : PlayerIsNewPerkBoughtPrereq
{
	perkType = "Tech_Central_Perk_2_3";
	level = 1;
}

No_Tech_Central_Perk_2_3_Prereq : With_Tech_Central_Perk_2_3_Prereq
{
	invert = true;
}

PlayerLevel_Tier_1_Start_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_1_Start_Prereq"
	];
}

PlayerLevel_Tier_2_Start_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_2_Start_Prereq"
	];
}

PlayerLevel_Tier_3_Start_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_3_Start_Prereq"
	];
}

PlayerLevel_Tier_4_Start_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_4_Start_Prereq"
	];
}

PlayerLevel_Tier_5_Start_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_5_Start_Prereq"
	];
}

PlayerLevel_Tier_1_Start_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_1_Start_Prereq"
	];
}

PlayerLevel_Tier_2_Start_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_2_Start_Prereq"
	];
}

PlayerLevel_Tier_3_Start_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_3_Start_Prereq"
	];
}

PlayerLevel_Tier_4_Start_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_4_Start_Prereq"
	];
}

PlayerLevel_Tier_5_Start_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq", "LootPrereqs.PlayerLevel_Tier_5_Start_Prereq"
	];
}

PlayerLevel_Tier_1_Exclusion_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_1_Exclusion_Prereq", "LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_1_to_2_Exclusion_No_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_1_to_2_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_2_to_3_Exclusion_No_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_2_to_3_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_3_to_4_Exclusion_No_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_3_to_4_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_4_to_5_Exclusion_No_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_4_to_5_Exclusion_Prereq", "LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_1_Exclusion_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_1_Exclusion_Prereq", "LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_1_to_2_Exclusion_With_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_1_to_2_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_2_to_3_Exclusion_With_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_2_to_3_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_3_to_4_Exclusion_With_Tech_Central_Perk_2_3_Prereq : PlayerLevel_Tier_3_to_4_Exclusion_Prereq
{
	nestedPrereqs += 
	[
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_4_to_5_Exclusion_With_Tech_Central_Perk_2_3_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_4_to_5_Exclusion_Prereq", "LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

NextTierUncommonWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 6;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 11;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierUncommonPlusWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 11;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 14;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierRareWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 14;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 19;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierRarePlusWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 19;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 22;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierEpicWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 22;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 27;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierEpicPlusWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 27;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 30;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierLegendaryWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 30;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 38;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierLegendaryPlusWeaponAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 38;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq
	];
}

PlayerLevel_Tier_1_to_3_Prereq_WithPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 25;
			comparisonType = "Less";
		} : StatPrereq, 
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_1_to_3_Prereq_WithoutPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 25;
			comparisonType = "Less";
		} : StatPrereq, 
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_2_to_4_Prereq_WithPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_2_Start_Prereq", {
			statType = "Level";
			valueToCheck = 33;
			comparisonType = "Less";
		} : StatPrereq, 
		"LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_2_to_4_Prereq_WithoutPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_2_Start_Prereq", {
			statType = "Level";
			valueToCheck = 33;
			comparisonType = "Less";
		} : StatPrereq, 
		"LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_3_to_5_Prereq_WithPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_3_Start_Prereq", "LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_3_to_5_Prereq_WithoutPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_3_Start_Prereq", "LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_4_to_5_Prereq_WithPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_4_Start_Prereq", "LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_4_to_5_Prereq_WithoutPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_4_Start_Prereq", "LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_5_Prereq_WithPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_5_Start_Prereq", "LootPrereqs.With_Tech_Central_Perk_2_3_Prereq"
	];
}

PlayerLevel_Tier_5_Prereq_WithoutPerk : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.PlayerLevel_Tier_5_Start_Prereq", "LootPrereqs.No_Tech_Central_Perk_2_3_Prereq"
	];
}

NextTierUncommonCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 7;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 14;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierUncommonPlusCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 14;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 17;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierRareCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 24;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierRarePlusCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 24;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 27;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierEpicCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 27;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 34;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierEpicPlusCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 34;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq, 
		{
			valueToCheck = 37;
			comparisonType = "Less";
		} : BasePlayerLevelPrereq
	];
}

NextTierLegendaryCyberwareAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			valueToCheck = 37;
			comparisonType = "GreaterOrEqual";
		} : BasePlayerLevelPrereq
	];
}

CommonCWLevelAvailabilityAtVendor : StatPrereq
{
	statType = "Level";
	valueToCheck = 10;
	comparisonType = "Less";
}

UncommonCWLevelAvailabilityAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 10;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 20;
			comparisonType = "Less";
		} : StatPrereq
	];
}

RareCWLevelAvailabilityAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 20;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 30;
			comparisonType = "Less";
		} : StatPrereq
	];
}

EpicCWLevelAvailabilityAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 30;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 40;
			comparisonType = "Less";
		} : StatPrereq
	];
}

LegendaryCWLevelAvailabilityAtVendor : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 40;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 60;
			comparisonType = "LessOrEqual";
		} : StatPrereq
	];
}

CommonCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 7;
	comparisonType = "Less";
}

CommonPlusCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 7;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 10;
			comparisonType = "Less";
		} : StatPrereq
	];
}

Minimum_UncommonCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 17;
	comparisonType = "Less";
}

UncommonCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 10;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 17;
			comparisonType = "Less";
		} : StatPrereq
	];
}

UncommonPlusCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 17;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 20;
			comparisonType = "Less";
		} : StatPrereq
	];
}

Minimum_RareCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 27;
	comparisonType = "Less";
}

RareCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 20;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 27;
			comparisonType = "Less";
		} : StatPrereq
	];
}

RarePlusCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 27;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 30;
			comparisonType = "Less";
		} : StatPrereq
	];
}

Minimum_EpicCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 37;
	comparisonType = "Less";
}

EpicCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 30;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 37;
			comparisonType = "Less";
		} : StatPrereq
	];
}

EpicPlusCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 37;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 40;
			comparisonType = "Less";
		} : StatPrereq
	];
}

Maximum_EpicPlusCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 37;
	comparisonType = "GreaterOrEqual";
}

Minimum_LegendaryCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 47;
	comparisonType = "Less";
}

LegendaryCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 40;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 47;
			comparisonType = "Less";
		} : StatPrereq
	];
}

LegendaryPlusCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 47;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq
	];
}

Recipe_RareCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 30;
	comparisonType = "Less";
}

Recipe_EpicCWLevelAvailabilityInLoot : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			statType = "Level";
			valueToCheck = 30;
			comparisonType = "GreaterOrEqual";
		} : StatPrereq, 
		{
			statType = "Level";
			valueToCheck = 40;
			comparisonType = "Less";
		} : StatPrereq
	];
}

Recipe_LegendaryCWLevelAvailabilityInLoot : StatPrereq
{
	statType = "Level";
	valueToCheck = 40;
	comparisonType = "GreaterOrEqual";
}

AirDropCWFactPrereq : FactValuePrereq
{
	fact = "";
	value = 0;
	comparisonType = "LessOrEqual";
}

AirDropAmazonIconicFactPrereq : FactValuePrereq
{
	fact = "";
	value = 1;
	comparisonType = "GreaterOrEqual";
}

TreasureChest_IconicOS_CW_Prereq : ANDPrereq
{
	nestedPrereqs = 
	[
		"LootPrereqs.Maximum_EpicPlusCWLevelAvailabilityInLoot", {
			fact = "iconic_os_cw_looted_from_treasure_chest";
			value = 0;
			comparisonType = "LessOrEqual";
		} : FactValuePrereq
	];
}

AllIconic_OS_CW_Purchased : ANDPrereq
{
	nestedPrereqs = 
	[
		{
			fact = "apogee_sandevistan_owned";
			value = 1;
			comparisonType = "GreaterOrEqual";
		} : FactValuePrereq, 
		{
			fact = "falcon_sandevistan_owned";
			value = 1;
			comparisonType = "GreaterOrEqual";
		} : FactValuePrereq, 
		{
			fact = "militech_berserk_owned";
			value = 1;
			comparisonType = "GreaterOrEqual";
		} : FactValuePrereq, 
		{
			fact = "netdriver_cyberdeck_owned";
			value = 1;
			comparisonType = "GreaterOrEqual";
		} : FactValuePrereq, 
		{
			fact = "all_iconic_os_cw_purchased";
			value = 0;
			comparisonType = "LessOrEqual";
		} : FactValuePrereq
	];
}

