#	Example:
# 
#	example_trigger = {
#		tag = GER
#		is_ai = no
#	}
#
#
#	In a script file:
#
#	trigger = {
#		exampel_trigger = yes
#	}
# 

SOV_propaganda_poster_slot_available = {
	custom_trigger_tooltip = {
		tooltip = SOV_propaganda_poster_slot_available_tt
		OR = {
			check_variable = { SOV_poster_left_icon_frame = SOV_propaganda_empty_slot_index }
			check_variable = { SOV_poster_center_icon_frame = SOV_propaganda_empty_slot_index }
			check_variable = { SOV_poster_right_icon_frame = SOV_propaganda_empty_slot_index }
		}
	}
}

SOV_paranoia_is_low_level = {
	custom_trigger_tooltip = {
		tooltip = SOV_paranoia_is_low_level_tt
		check_variable = { SOV_paranoia = SOV_paranoia_lower_threshold compare = less_than }
	}
}

SOV_paranoia_is_medium_level = {
	custom_trigger_tooltip = {
		tooltip = SOV_paranoia_is_medium_level_tt
		AND = {
			check_variable = { SOV_paranoia = SOV_paranoia_lower_threshold compare = greater_than_or_equals }
			check_variable = { SOV_paranoia = SOV_paranoia_higher_threshold compare = less_than }
		}
	}
}

SOV_paranoia_is_high_level = {
	custom_trigger_tooltip = {
		tooltip = SOV_paranoia_is_high_level_tt
		check_variable = { SOV_paranoia = SOV_paranoia_higher_threshold compare = greater_than_or_equals }
	}
}

SOV_character_can_be_purged = {
	NOT = { has_character_flag = SOV_safe_from_purge_flag }
	NOT = { has_character_flag = SOV_exiled_flag }
	NOT = { has_character_flag = SOV_character_purged_flag }
}

SOV_unit_leader_can_be_purged = { #Unused for now
	NOT = { has_character_flag = SOV_safe_from_purge_flag }
	NOT = { has_trait = trait_SOV_stalinist }
}

SOV_third_five_year_plan_available = {
	custom_trigger_tooltip = {
		tooltip = SOV_third_five_year_plan_available_tt
		NOT = { has_country_flag = SOV_third_five_year_plan_locked_flag }
	}
}

SOV_fourth_five_year_plan_available = {
	custom_trigger_tooltip = {
		tooltip = SOV_fourth_five_year_plan_available_tt
		has_country_flag = SOV_fourth_five_year_plan_available_flag
	}
}

SOV_propaganda_victory_at_hand_available = { #Basically Great Patriotic War is ongoing
	custom_trigger_tooltip = {
		tooltip = SOV_propaganda_victory_at_hand_available_tt
		has_country_flag = SOV_third_five_year_plan_locked_flag
		NOT = { has_country_flag = SOV_fourth_five_year_plan_available_flag }
	}
}

SOV_is_valid_subject = {
	OR = {
		is_subject = no
		is_subject_of = ROOT
	}
}

SOV_is_free_chinese_tag = {
	custom_trigger_tooltip = {
		tooltip = SOV_is_free_chinese_tag_tt
		OR = {
			original_tag = CHI
			original_tag = PRC
			original_tag = SIK
			original_tag = XSM
			original_tag = YUN
			original_tag = GXC
			original_tag = SHX
			original_tag = MEN
			original_tag = MAN
			original_tag = KHM
			original_tag = NXM
			original_tag = GSM
			original_tag = XIC
			original_tag = SND
			original_tag = GDC
			original_tag = SIC
			original_tag = HBC
		}
		is_subject = no
	}
}

SOV_is_chinese_tag = {
	OR = {
		original_tag = CHI
		original_tag = PRC
		original_tag = SIK
		original_tag = XSM
		original_tag = YUN
		original_tag = GXC
		original_tag = SHX
		original_tag = MEN
		original_tag = MAN
		original_tag = KHM
		original_tag = NXM
		original_tag = GSM
		original_tag = XIC
		original_tag = SND
		original_tag = GDC
		original_tag = SIC
		original_tag = HBC
	}
}

SOV_is_soviet_republic_tag_strict = {
	OR = {
		tag = BLR
		tag = UKR
		tag = KAZ
		tag = GEO
		tag = ARM
		tag = AZR
		tag = UZB
		tag = TMS
		tag = KYR
		tag = TAJ
		tag = TAN

		tag = DON # Don Republic
		tag = KUB # Kuban Republic
		tag = BUK # Bukharan Republic
		tag = ALT # Altay
		tag = KAL # Kalmykia
		tag = KAR # Karelia
		tag = CRI # Crimea
		tag = TAT # Tatarstan
		tag = CIN # Chechnya Ingushetia
		tag = DAG # Dagestan
		tag = BYA # Buryatia
		tag = CKK # Chukotka
		tag = FER # Fareastern Republic
		tag = YAK # Yakutia
		tag = VLA # Vladivostok
		tag = KKP # Karakalpakstan
		tag = YAM # Yamalia
		tag = TAY # Taymyria
		tag = OVO # Ostyak Vogulia
		tag = NEN # Nenetsia
		tag = KOM # Komi
		tag = ABK # Abkhazia
		tag = KBK # Kabardino Balkaria
		tag = NOA # North Ossetia
		tag = VGE # Volga Germany
		tag = BSK # Bashkortostan
		tag = KHI # Khiva
		tag = UDM # Udmurtia
		tag = CHU # Chuvashia
		tag = MEL # Mariel
	}
}

SOV_is_soviet_republic_tag_lax = {
	OR = {
		tag = BLR
		tag = UKR
		tag = KAZ
		tag = GEO
		tag = ARM
		tag = AZR
		tag = UZB
		tag = TMS
		tag = KYR
		tag = TAJ
		tag = TAN

		tag = DON # Don Republic
		tag = KUB # Kuban Republic
		tag = BUK # Bukharan Republic
		tag = ALT # Altay
		tag = KAL # Kalmykia
		tag = KAR # Karelia
		tag = CRI # Crimea
		tag = TAT # Tatarstan
		tag = CIN # Chechnya Ingushetia
		tag = DAG # Dagestan
		tag = BYA # Buryatia
		tag = CKK # Chukotka
		tag = FER # Fareastern Republic
		tag = YAK # Yakutia
		tag = VLA # Vladivostok
		tag = KKP # Karakalpakstan
		tag = YAM # Yamalia
		tag = TAY # Taymyria
		tag = OVO # Ostyak Vogulia
		tag = NEN # Nenetsia
		tag = KOM # Komi
		tag = ABK # Abkhazia
		tag = KBK # Kabardino Balkaria
		tag = NOA # North Ossetia
		tag = VGE # Volga Germany
		tag = BSK # Bashkortostan
		tag = KHI # Khiva
		tag = UDM # Udmurtia
		tag = CHU # Chuvashia
		tag = MEL # Mariel		

		tag = EST
		tag = LAT
		tag = LIT
		tag = POL
		tag = FIN
		tag = MON
	}
}

SOV_is_valid_academy_of_sciences_target = {
	OR = {
		AND = {
			SOV_is_soviet_republic_tag_strict = yes
			has_government = communism
			is_in_faction_with = ROOT
		}
		AND = {
			SOV_is_soviet_republic_tag_lax = yes
			has_government = communism
			is_subject_of = ROOT
		}
	}
}

SOV_has_already_built_national_academy_of_sciences = {
	OR = {
		AND = {
			FROM = { tag = BLR }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_BLR_flag }
		}
		AND = {
			FROM = { tag = UKR }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_UKR_flag }
		}
		AND = {
			FROM = { tag = KAZ }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_KAZ_flag }
		}
		AND = {
			FROM = { tag = GEO }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_GEO_flag }
		}
		AND = {
			FROM = { tag = ARM }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_ARM_flag }
		}
		AND = {
			FROM = { tag = AZR }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_AZR_flag }
		}
		AND = {
			FROM = { tag = UZB }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_UZB_flag }
		}
		AND = {
			FROM = { tag = TMS }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_TMS_flag }
		}
		AND = {
			FROM = { tag = KYR }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_KYR_flag }
		}
		AND = {
			FROM = { tag = TAJ }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_TAJ_flag }
		}
		AND = {
			FROM = { tag = TAN }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_TAN_flag }
		}
		AND = {
			FROM = { tag = DON }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_DON_flag }
		}
		AND = {
			FROM = { tag = KUB }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_KUB_flag }
		}
		AND = {
			FROM = { tag = EST }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_EST_flag }
		}
		AND = {
			FROM = { tag = LAT }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_LAT_flag }
		}
		AND = {
			FROM = { tag = LIT }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_LIT_flag }
		}
		AND = {
			FROM = { tag = POL }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_POL_flag }
		}
		AND = {
			FROM = { tag = FIN }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_FIN_flag }
		}
		AND = {
			FROM = { tag = MON }
			ROOT = { has_country_flag = SOV_national_academy_of_sciences_built_MON_flag }
		}
	}
}


#####################
### TANK DESIGNER ###
#####################

SOV_has_active_tank_designer_any = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_tank_designer_any_tt
		OR = {
			SOV_has_active_tank_designer_morozov = yes
			SOV_has_active_tank_designer_astrov = yes
			SOV_has_active_tank_designer_okmo = yes
			SOV_has_active_tank_designer_mytishchy = yes
			SOV_has_active_tank_designer_kirov = yes
		}
	}
}

SOV_has_active_tank_designer_morozov = {
	OR = {
		has_idea = SOV_morozov_design_bureau
		has_idea = SOV_morozov_design_bureau_1
		has_idea = SOV_morozov_design_bureau_2
		has_idea = SOV_morozov_design_bureau_3
		has_idea = SOV_morozov_design_bureau_1_2
		has_idea = SOV_morozov_design_bureau_1_3
		has_idea = SOV_morozov_design_bureau_2_3
		has_idea = SOV_morozov_design_bureau_final
	}
}

SOV_has_active_tank_designer_astrov = {
	OR = {
		has_idea = SOV_astrov_design_bureau
		has_idea = SOV_astrov_design_bureau_1
		has_idea = SOV_astrov_design_bureau_2
		has_idea = SOV_astrov_design_bureau_3
		has_idea = SOV_astrov_design_bureau_1_2
		has_idea = SOV_astrov_design_bureau_1_3
		has_idea = SOV_astrov_design_bureau_2_3
		has_idea = SOV_astrov_design_bureau_final
	}
}

SOV_has_active_tank_designer_okmo = {
	OR = {
		has_idea = SOV_okmo
		has_idea = SOV_okmo_1
		has_idea = SOV_okmo_2
		has_idea = SOV_okmo_3
		has_idea = SOV_okmo_1_2
		has_idea = SOV_okmo_1_3
		has_idea = SOV_okmo_2_3
		has_idea = SOV_okmo_final
	}
}

SOV_has_active_tank_designer_mytishchy = {
	OR = {
		has_idea = SOV_mytishchy_machine_building_plant
		has_idea = SOV_mytishchy_machine_building_plant_1
		has_idea = SOV_mytishchy_machine_building_plant_2
		has_idea = SOV_mytishchy_machine_building_plant_3
		has_idea = SOV_mytishchy_machine_building_plant_1_2
		has_idea = SOV_mytishchy_machine_building_plant_1_3
		has_idea = SOV_mytishchy_machine_building_plant_2_3
		has_idea = SOV_mytishchy_machine_building_plant_final
	}
}

SOV_has_active_tank_designer_kirov = {
	OR = {
		has_idea = SOV_kirov
		has_idea = SOV_kirov_1
		has_idea = SOV_kirov_2
		has_idea = SOV_kirov_3
		has_idea = SOV_kirov_1_2
		has_idea = SOV_kirov_1_3
		has_idea = SOV_kirov_2_3
		has_idea = SOV_kirov_final
	}
}

SOV_has_tank_merged_1 = {
	OR = {
		has_country_flag = SOV_merge_tank_morozov_1_flag
		has_country_flag = SOV_merge_tank_astrov_1_flag
		has_country_flag = SOV_merge_tank_okmo_1_flag
		has_country_flag = SOV_merge_tank_mytishchy_1_flag
		has_country_flag = SOV_merge_tank_kirov_1_flag
	}
}

SOV_has_tank_merged_2 = {
	OR = {
		has_country_flag = SOV_merge_tank_morozov_2_flag
		has_country_flag = SOV_merge_tank_astrov_2_flag
		has_country_flag = SOV_merge_tank_okmo_2_flag
		has_country_flag = SOV_merge_tank_mytishchy_2_flag
		has_country_flag = SOV_merge_tank_kirov_2_flag
	}
}

SOV_has_tank_merged_3 = {
	OR = {
		has_country_flag = SOV_merge_tank_morozov_3_flag
		has_country_flag = SOV_merge_tank_astrov_3_flag
		has_country_flag = SOV_merge_tank_okmo_3_flag
		has_country_flag = SOV_merge_tank_mytishchy_3_flag
		has_country_flag = SOV_merge_tank_kirov_3_flag
	}
}


#####################
### SHIP DESIGNER ###
#####################

SOV_has_active_ship_designer_any_baltic = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_ship_designer_any_baltic_tt
		OR = {
			SOV_has_active_ship_designer_nevskoye = yes
			SOV_has_active_ship_designer_rubin = yes
		}
	}
}

SOV_has_active_ship_designer_any_black_sea = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_ship_designer_any_black_sea_tt
		OR = {
			SOV_has_active_ship_designer_black_sea_shipyard = yes
			SOV_has_active_ship_designer_sevastopol_marine_plant = yes
		}
	}
}

SOV_has_active_ship_designer_nevskoye = {
	OR = {
		has_idea = SOV_nevskoye_design_bureau
		has_idea = SOV_nevskoye_design_bureau_1
		has_idea = SOV_nevskoye_design_bureau_2
		has_idea = SOV_nevskoye_design_bureau_3
		has_idea = SOV_nevskoye_design_bureau_4
		has_idea = SOV_nevskoye_design_bureau_1_2
		has_idea = SOV_nevskoye_design_bureau_1_3
		has_idea = SOV_nevskoye_design_bureau_1_4
		has_idea = SOV_nevskoye_design_bureau_2_4
		has_idea = SOV_nevskoye_design_bureau_3_4
		has_idea = SOV_nevskoye_design_bureau_final_2
		has_idea = SOV_nevskoye_design_bureau_final_3
	}
}

SOV_has_active_ship_designer_rubin = {
	OR = {
		has_idea = SOV_rubin_design_bureau
		has_idea = SOV_rubin_design_bureau_1
		has_idea = SOV_rubin_design_bureau_2
		has_idea = SOV_rubin_design_bureau_3
		has_idea = SOV_rubin_design_bureau_4
		has_idea = SOV_rubin_design_bureau_1_2
		has_idea = SOV_rubin_design_bureau_1_3
		has_idea = SOV_rubin_design_bureau_1_4
		has_idea = SOV_rubin_design_bureau_2_4
		has_idea = SOV_rubin_design_bureau_3_4
		has_idea = SOV_rubin_design_bureau_final_2
		has_idea = SOV_rubin_design_bureau_final_3
	}
}

SOV_has_active_ship_designer_black_sea_shipyard = {
	OR = {
		has_idea = SOV_black_sea_shipyard
		has_idea = SOV_black_sea_shipyard_1
		has_idea = SOV_black_sea_shipyard_2
		has_idea = SOV_black_sea_shipyard_3
		has_idea = SOV_black_sea_shipyard_4
		has_idea = SOV_black_sea_shipyard_1_2
		has_idea = SOV_black_sea_shipyard_1_3
		has_idea = SOV_black_sea_shipyard_1_4
		has_idea = SOV_black_sea_shipyard_2_4
		has_idea = SOV_black_sea_shipyard_3_4
		has_idea = SOV_black_sea_shipyard_final_2
		has_idea = SOV_black_sea_shipyard_final_3
	}
}

SOV_has_active_ship_designer_sevastopol_marine_plant = {
	OR = {
		has_idea = SOV_sevastopol_marine_plant
		has_idea = SOV_sevastopol_marine_plant_1
		has_idea = SOV_sevastopol_marine_plant_2
		has_idea = SOV_sevastopol_marine_plant_3
		has_idea = SOV_sevastopol_marine_plant_4
		has_idea = SOV_sevastopol_marine_plant_1_2
		has_idea = SOV_sevastopol_marine_plant_1_3
		has_idea = SOV_sevastopol_marine_plant_1_4
		has_idea = SOV_sevastopol_marine_plant_2_4
		has_idea = SOV_sevastopol_marine_plant_3_4
		has_idea = SOV_sevastopol_marine_plant_final_2
		has_idea = SOV_sevastopol_marine_plant_final_3
	}
}

SOV_has_ship_merged_1_baltic = {
	OR = {
		has_country_flag = SOV_merge_ship_nevskoye_design_bureau_1_flag
		has_country_flag = SOV_merge_ship_rubin_design_bureau_1_flag
	}
}

SOV_has_ship_merged_2_baltic = {
	OR = {
		has_country_flag = SOV_merge_ship_nevskoye_design_bureau_2_flag
		has_country_flag = SOV_merge_ship_rubin_design_bureau_2_flag
	}
}

SOV_has_ship_merged_3_baltic = {
	OR = {
		has_country_flag = SOV_merge_ship_nevskoye_design_bureau_3_flag
		has_country_flag = SOV_merge_ship_rubin_design_bureau_3_flag
	}
}

SOV_has_ship_merged_4_baltic = {
	OR = {
		has_country_flag = SOV_merge_ship_nevskoye_design_bureau_4_flag
		has_country_flag = SOV_merge_ship_rubin_design_bureau_4_flag
	}
}

SOV_has_ship_merged_1_black_sea = {
	OR = {
		has_country_flag = SOV_merge_ship_black_sea_shipyard_1_flag
		has_country_flag = SOV_merge_ship_sevastopol_marine_plant_1_flag
	}
}

SOV_has_ship_merged_2_black_sea = {
	OR = {
		has_country_flag = SOV_merge_ship_black_sea_shipyard_2_flag
		has_country_flag = SOV_merge_ship_sevastopol_marine_plant_2_flag
	}
}

SOV_has_ship_merged_3_black_sea = {
	OR = {
		has_country_flag = SOV_merge_ship_black_sea_shipyard_3_flag
		has_country_flag = SOV_merge_ship_sevastopol_marine_plant_3_flag
	}
}

SOV_has_ship_merged_4_black_sea = {
	OR = {
		has_country_flag = SOV_merge_ship_black_sea_shipyard_4_flag
		has_country_flag = SOV_merge_ship_sevastopol_marine_plant_4_flag
	}
}


#########################
### AIRCRAFT DESIGNER ###
#########################

SOV_has_active_aircraft_designer_any = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_aircraft_designer_any_tt
		OR = {
			SOV_has_active_aircraft_designer_mig = yes
			SOV_has_active_aircraft_designer_ilyushin = yes
			SOV_has_active_aircraft_designer_tupolev = yes
			SOV_has_active_aircraft_designer_yakovlev = yes
		}
	}
}

SOV_has_active_aircraft_designer_mig = {
	OR = {
		has_idea = SOV_mig_design_bureau
		has_idea = SOV_mig_design_bureau_1
		has_idea = SOV_mig_design_bureau_2
		has_idea = SOV_mig_design_bureau_3
		has_idea = SOV_mig_design_bureau_1_2
		has_idea = SOV_mig_design_bureau_1_3
		has_idea = SOV_mig_design_bureau_2_3
		has_idea = SOV_mig_design_bureau_final
	}
}

SOV_has_active_aircraft_designer_ilyushin = {
	OR = {
		has_idea = SOV_ilyushin_design_bureau
		has_idea = SOV_ilyushin_design_bureau_1
		has_idea = SOV_ilyushin_design_bureau_2
		has_idea = SOV_ilyushin_design_bureau_3
		has_idea = SOV_ilyushin_design_bureau_1_2
		has_idea = SOV_ilyushin_design_bureau_1_3
		has_idea = SOV_ilyushin_design_bureau_2_3
		has_idea = SOV_ilyushin_design_bureau_final
	}
}

SOV_has_active_aircraft_designer_tupolev = {
	OR = {
		has_idea = SOV_tupolev_design_bureau
		has_idea = SOV_tupolev_design_bureau_1
		has_idea = SOV_tupolev_design_bureau_2
		has_idea = SOV_tupolev_design_bureau_3
		has_idea = SOV_tupolev_design_bureau_1_2
		has_idea = SOV_tupolev_design_bureau_1_3
		has_idea = SOV_tupolev_design_bureau_2_3
		has_idea = SOV_tupolev_design_bureau_final
	}
}

SOV_has_active_aircraft_designer_yakovlev = {
	OR = {
		has_idea = SOV_yakovlev_design_bureau
		has_idea = SOV_yakovlev_design_bureau_1
		has_idea = SOV_yakovlev_design_bureau_2
		has_idea = SOV_yakovlev_design_bureau_3
		has_idea = SOV_yakovlev_design_bureau_1_2
		has_idea = SOV_yakovlev_design_bureau_1_3
		has_idea = SOV_yakovlev_design_bureau_2_3
		has_idea = SOV_yakovlev_design_bureau_final
	}
}

SOV_has_aircraft_merged_1 = {
	OR = {
		has_country_flag = SOV_merge_aircraft_mig_1_flag
		has_country_flag = SOV_merge_aircraft_ilyushin_1_flag
		has_country_flag = SOV_merge_aircraft_tupolev_1_flag
		has_country_flag = SOV_merge_aircraft_yakovlev_1_flag
	}
}

SOV_has_aircraft_merged_2 = {
	OR = {
		has_country_flag = SOV_merge_aircraft_mig_2_flag
		has_country_flag = SOV_merge_aircraft_ilyushin_2_flag
		has_country_flag = SOV_merge_aircraft_tupolev_2_flag
		has_country_flag = SOV_merge_aircraft_yakovlev_2_flag
	}
}

SOV_has_aircraft_merged_3 = {
	OR = {
		has_country_flag = SOV_merge_aircraft_mig_3_flag
		has_country_flag = SOV_merge_aircraft_ilyushin_3_flag
		has_country_flag = SOV_merge_aircraft_tupolev_3_flag
		has_country_flag = SOV_merge_aircraft_yakovlev_3_flag
	}
}


#########################
### MATERIEL DESIGNER ###
#########################

SOV_has_active_materiel_designer_any = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_materiel_designer_any_tt
		OR = {
			SOV_has_active_materiel_designer_grabin = yes
			SOV_has_active_materiel_designer_tula = yes
			SOV_has_active_materiel_designer_gaz = yes
		}
	}
}

SOV_has_active_materiel_designer_grabin = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_materiel_designer_grabin_tt
		OR = {
			has_idea = SOV_grabin_design_bureau
			has_idea = SOV_grabin_design_bureau_1
			has_idea = SOV_grabin_design_bureau_2
			has_idea = SOV_grabin_design_bureau_3
			has_idea = SOV_grabin_design_bureau_1_2
			has_idea = SOV_grabin_design_bureau_1_3
			has_idea = SOV_grabin_design_bureau_2_3
			has_idea = SOV_grabin_design_bureau_final
		}
	}
}

SOV_has_active_materiel_designer_tula = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_materiel_designer_tula_tt
		OR = {
			has_idea = SOV_tula_arms_plant
			has_idea = SOV_tula_arms_plant_1
			has_idea = SOV_tula_arms_plant_2
			has_idea = SOV_tula_arms_plant_3
			has_idea = SOV_tula_arms_plant_1_2
			has_idea = SOV_tula_arms_plant_1_3
			has_idea = SOV_tula_arms_plant_2_3
			has_idea = SOV_tula_arms_plant_final
		}
	}
}

SOV_has_active_materiel_designer_gaz = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_active_materiel_designer_gaz_tt
		OR = {
			has_idea = SOV_gaz
			has_idea = SOV_gaz_1
			has_idea = SOV_gaz_2
			has_idea = SOV_gaz_3
			has_idea = SOV_gaz_1_2
			has_idea = SOV_gaz_1_3
			has_idea = SOV_gaz_2_3
			has_idea = SOV_gaz_final
		}
	}
}

SOV_has_materiel_merged_1_artillery = {
	has_country_flag = SOV_merge_materiel_grabin_1_flag
}

SOV_has_materiel_merged_1_infantry = {
	has_country_flag = SOV_merge_materiel_tula_1_flag
}

SOV_has_materiel_merged_1_motorized = {
	has_country_flag = SOV_merge_materiel_gaz_1_flag
}

SOV_has_materiel_merged_2 = {
	OR = {
		has_country_flag = SOV_merge_materiel_grabin_2_flag
		has_country_flag = SOV_merge_materiel_tula_2_flag
		has_country_flag = SOV_merge_materiel_gaz_2_flag
	}
}

SOV_has_materiel_merged_3 = {
	OR = {
		has_country_flag = SOV_merge_materiel_grabin_3_flag
		has_country_flag = SOV_merge_materiel_tula_3_flag
		has_country_flag = SOV_merge_materiel_gaz_3_flag
	}
}

SOV_is_valid_collective_security_target = {
	has_capitulated = no
	NOT = { has_government = fascism }
	NOT = { has_war_with = ROOT }
}

SOV_is_military_offensive_main_objective = {
	OR = {
		#HISTORICAL NAME
		state = 246 #RZHEV - Operation Mars
		state = 218 #ROSTOV - Operation Saturn
		state = 217 #STALINGRAD - Operation Uranus
		state = 220 #KURSK - Operation Kutuzov
		state = 206 #MINSK - Operation Bagration
		state = 763 #KÖNIGSBERG - Operation Samland
		state = 75 #BRNO (MORAVIA) - Operation Bratislava-Brno
		state = 88 #KRAKOW - Operation Vistula-Oder

		#CUSTOM BUT GENERIC NAME
		state = 10 #WARSAW (WARSZAWA)
		state = 812 #TALLIN (HAUNAS)
		state = 808 #RIGA
		state = 43 #BUDAPEST (NORTHERN HUNGARY)
		state = 46 #BUCHAREST (MUNTENIA)
		state = 44 #TIRANA
		state = 9 #PRAGUE (BOHEMIA)
		state = 2 #ROME (LATIUM)
		state = 3 #BERNE (SWITZERLAND)
		state = 64 #BERLIN (BRANDENBURG)
		state = 55 #FRANKFURT (HESSEN)
		state = 58 #HAMBURG (SCHLESWIG-HOLSTEIN)
		state = 111 #HELSINKI (UUSIMAA)
		state = 141 #STOCKHOLM (SVEALAND)
		state = 110 #OSLO (OSTLANDET)
		state = 37 #COPENHAGEN (SJAELLAND)
		state = 7 #AMSTERDAM (HOLLAND)
		state = 16 #PARIS (ILE DE FRANCE)
		state = 126 #LONDON (GREATER LONDON AREA)
		state = 113 #DUBLIN (LEINSTER)
		
		#GENERIC NAME
		state = 219 #MOSCOW
		state = 195 #LENINGRAD
		state = 784 #VILNIUS
		state = 48 #SOFIA
		state = 107 #SERBIA
		state = 47 #ATHENS
		state = 797 #ISTANBUL
		state = 49 #ANKARA
		state = 4 #VIENA
		state = 41 #MADRID
		state = 112 #LISBON

	}
}

SOV_is_industrial_relocation_destiny_state = {
	OR = {
		state = 573 #Zlatoust
		state = 653 #Sverdlovsk
		state = 651 #Ufa
		state = 572 #Chelyabinsk
		state = 582 #Magnitogorsk
		state = 398 #Perm
		state = 652 #Orenburg
	}
}

SOV_is_industrial_relocation_destiny_fallback_state = {
	OR = {
		#Central Asia + KAZAKHSTAN
		state = 405 #Tashkent
		state = 586 #Alma-Ata
		state = 830 #Bukhara
		#Volga Region
		state = 249 #Kazan
		state = 251 #Kuybyshev
		state = 400 #Kirov
		#Western/Eastern Siberia
		state = 587 #Kostanay
		state = 571 #Omsk
		state = 570 #Novosibirsk
		state = 569 #Kemerovo
		state = 568 #Krasnoyarsk
		state = 40 #Altai Krai
	}
}

SOV_is_threated_by_japan = {
	NOT = { is_in_faction_with = ROOT }
	OR = {
		tag = JAP
		is_in_faction_with = JAP
		is_subject_of = JAP
	}
}

SOV_paranoia_is_finishing_purge_focus = {
	OR = {
		AND = {
			NOT = { has_completed_focus = SOV_the_zinovyevite_terrorist_center }
			focus_progress = {
				focus = SOV_the_zinovyevite_terrorist_center
				progress > 0.5
			}
		}
		AND = {
			NOT = { has_completed_focus = SOV_the_anti_soviet_trotskyist_center }
			focus_progress = {
				focus = SOV_the_anti_soviet_trotskyist_center
				progress > 0.5
			}
		}
		AND = {
			NOT = { has_completed_focus = SOV_the_military_conspiracy }
			focus_progress = {
				focus = SOV_the_military_conspiracy
				progress > 0.5
			}
		}
		AND = {
			NOT = { has_completed_focus = SOV_the_bloc_of_rights_and_trotskyites }
			focus_progress = {
				focus = SOV_the_bloc_of_rights_and_trotskyites
				progress > 0.5
			}
		}
	}
}

SOV_is_going_historical_stalinist = { # Add/Change stuff here instead of doing it in 2243987238472854294 places, tack så mycket
	has_completed_focus = SOV_the_centre	
}

SOV_target_capital_is_on_unlocked_continent_fifth_columnists = {
	OR = {
		AND = {
			has_completed_focus = SOV_the_permanent_revolution
			FROM = {
				capital_scope = {
					is_on_continent = europe
				}
			}
		}
		AND = {
			has_completed_focus = SOV_the_onslaught_on_colonialism
			FROM = {
				capital_scope = {
					is_on_continent = africa
				}
			}
		}
		AND = {
			has_completed_focus = SOV_carry_revolution_east
				FROM = {
				capital_scope = {
					OR = {
						is_on_continent = asia
						is_on_continent = middle_east
					}
				}
			}
		}
		AND = {
			has_completed_focus = SOV_the_end_of_the_imperialist_era
			FROM = {
				capital_scope = {
					OR = {
						is_on_continent = north_america
						is_on_continent = south_america
						is_on_continent = australia
					}
				}
			}
		}
	}
}

SOV_target_capital_is_on_unlocked_continent_uprisings = {
	OR = {
		AND = {
			has_completed_focus = SOV_a_global_class_struggle
			FROM = {
				capital_scope = {
					is_on_continent = europe
				}
			}
		}
		AND = {
			has_completed_focus = SOV_the_onslaught_on_colonialism
			FROM = {
				capital_scope = {
					is_on_continent = africa
				}
			}
		}
		AND = {
			has_completed_focus = SOV_carry_revolution_east
			FROM = {
				capital_scope = {
					OR = {
						is_on_continent = asia
						is_on_continent = middle_east
					}
				}
			}
		}
		AND = {
			has_completed_focus = SOV_the_end_of_the_imperialist_era
			FROM = {
				capital_scope = {
					OR = {
						is_on_continent = north_america
						is_on_continent = south_america
						is_on_continent = oceania
					}
				}
			}
		}
	}
}

SOV_basic_pressure_government_triggers = { #Used in foreign politics targeted decs - Expected Scope: ROOT = SOV // FROM = Target
	country_exists = FROM
	NOT = { has_war_with = FROM }
	NOT = { FROM = { is_subject_of = ROOT } }
	OR = {
		NOT = { is_in_faction_with = FROM }
		NOT = { has_government = FROM }
	}
}

SOV_basic_promote_rallies_triggers = { #Used in foreign politics targeted decs - Expected Scope: ROOT = SOV // FROM = Target
	country_exists = FROM
	NOT = { has_war_with = FROM }
	NOT = { FROM = { is_subject_of = ROOT } }
	NOT = { has_government = FROM }
}

SOV_basic_ultimatum_triggers = { #Used in foreign politics targeted decs - Expected Scope: ROOT = SOV // FROM = Target
	country_exists = FROM
	FROM = {
		has_capitulated = no
		is_subject = no
		NOT = { has_war_with = ROOT }
		NOT = { is_in_faction_with = ROOT } #CAN'T SEND ULTIMATUMS TO ALLIES OR SUBJECTS
		#OR = { #Can send Ultimatum to non-allies or puppets (but not to faction allies)
		#	NOT = { is_in_faction_with = ROOT }
		#	is_Subject_of = ROOT
		#}
		NOT = { has_country_flag = SOV_ultimatum_sent_flag }
	}
}

SOV_basic_fight_alongside_comrades_triggers = { #Used in foreign politics targeted decs - Expected Scope: ROOT = SOV // FROM = Target
	country_exists = FROM
	FROM = {
		has_civil_war = yes
		has_government = ROOT
		NOT = { has_war_with = ROOT }
	}
	NOT = { #Don't show up once ROOT is already at war with this country
		any_other_country = {
			original_tag = FROM
			has_war_with = FROM
			has_war_with = ROOT
		}
	}
}

# Can I join the Comintern, plz? 
SOV_comintern_joinable = {
	SOU = { 
		hidden_trigger = { 
			exists = yes
			has_capitulated = no
		}
		has_government = communism 
		is_faction_leader = yes 
		has_civil_war = no	
		NOT = { has_war_with = ROOT }	
	}
}
ANY_comintern_joinable = {
	any_other_country = { 
		hidden_trigger = { 
			exists = yes
			has_capitulated = no
		}
		has_government = communism 
		is_faction_leader = yes 
		has_civil_war = no	
		NOT = { has_war_with = ROOT }	
	}
}

##########################################################################

 ##  ##  #   # ### ### ###      ##  ### #   # ### #       #   #  ##  ###      
#   #  # #   #  #  #    #      #  #  #  #   #  #  #       #   # #  # #  #     
 #  #  #  # #   #  ##   #      #     #   # #   #  #       # # # #### ###      
  # #  #  # #   #  #    #      #  #  #   # #   #  #       # # # #  # #  #     
##   ##    #   ### ###  #       ##  ###   #   ### ###      # #  #  # #  # 

##########################################################################

SOV_soviet_civil_war_not_started = {
	custom_trigger_tooltip = { 
		tooltip = SOV_soviet_civil_war_not_started_tt
		NOT = { has_global_flag = SOV_soviet_civil_war } #Communist Civil War has started / is in progress 
		NOT = { has_global_flag = SOV_soviet_civil_war_over } #Communist civil war has been completed
		NOT = { has_country_flag = SOV_civil_war_triggered_flag } # Extra safety to ensure the war event hasn't been triggered (so war is "starting but but "started")
	}
}

SOV_has_selected_hq = {
	custom_trigger_tooltip = { 
		tooltip = SOV_has_selected_hq_tt
		has_variable = SOV_civil_war_start_state
	}
}

SOV_display_civil_war_start_state = {
	NOT = { has_global_flag = SOV_soviet_civil_war }
	NOT = { has_variable = SOV_civil_war_start_state } 
	# There can be only one
	OR = {
		FROM = { has_state_flag = SOV_hq_state_selected } # this is the selected state
		NOT = { has_country_flag = SOV_hq_state_selected_country_flag } # no state selected yet
	}
}


SOV_is_opposition_state = {
	custom_trigger_tooltip = {
		tooltip = SOV_is_opposition_state_tt
		OR = {
			AND = {
				has_state_flag = SOV_left_opposition_state
				SOV = { SOV_is_left_opposition = yes }
			}
			AND = {
				has_state_flag = SOV_right_opposition_state
				SOV = { SOV_is_right_opposition = yes }
			}
			AND = {
				has_state_flag = SOV_exiles_state
				SOV = { SOV_is_exiles = yes }
			}
		}
	}
}

SOV_is_display_state = {
	is_owned_by = SOV
	IF = {
		limit = { ROOT = { SOV_is_left_opposition = yes } }
		OR = {
			any_neighbor_state = { has_state_flag = SOV_left_opposition_state } # You can influence if you control a neighbor state
			has_state_flag = SOV_left_opposition_state # To ensure that the first state is shown before selecting another one 
			has_state_flag = SOV_stalinist_state # Show states that have had a crackdown as well 
		}
	}
	ELSE_IF = {
		limit = { ROOT = { SOV_is_right_opposition = yes } }
		OR = {
			any_neighbor_state = { has_state_flag = SOV_right_opposition_state }  # You can influence if you control a neighbor state
			has_state_flag = SOV_right_opposition_state # To ensure that the first state is shown before selecting another one 
			has_state_flag = SOV_stalinist_state # Show states that have had a crackdown as well 
		}
	}
	ELSE_IF = {
		limit = { ROOT = { SOV_is_exiles = yes } }
		OR = {
			any_neighbor_state = { has_state_flag = SOV_exiles_state }  # You can influence if you control a neighbor state
			has_state_flag = SOV_exiles_state # To ensure that the first state is shown before selecting another one 
			has_state_flag = SOV_stalinist_state # Show states that have had a crackdown as well 
		}
	}
}

SOV_is_unaligned_state = {
	custom_trigger_tooltip = {
		tooltip = SOV_is_unaligned_state_tt
		NOT = {	has_state_flag = SOV_left_opposition_state }
		NOT = { has_state_flag = SOV_right_opposition_state } 
		NOT = { has_state_flag = SOV_stalinist_state } 
		NOT = { has_state_flag = SOV_exiles_state } 

		NOT = { has_state_flag = SOV_is_aligning_left }
		NOT = { has_state_flag = SOV_is_aligning_right }
		NOT = { has_state_flag = SOV_is_aligning_exiles }
	}
}

SOV_is_left_opposition = {
	#custom_trigger_tooltip = {
		#tooltip = SOV_is_left_opposition_tt
		SOV = { has_completed_focus = SOV_the_left_opposition }
	#}
}

SOV_advisor_is_aligned_left = {
	SOV_is_left_opposition = yes 
	has_completed_focus = SOV_gain_support_from_party_members
	tag = SOV
}
SOV_advisor_is_aligned_right = {
	SOV_is_right_opposition = yes 
	has_completed_focus = SOV_gain_support_from_party_members
	tag = SOV
}
SOV_advisor_is_aligned_centre = {
	original_tag = SOV
	NOT = { tag = SOV }
	any_country = {
		original_tag = SOV 
		NOT = { has_completed_focus = SOV_gain_support_from_party_members } 
	}
}

SOV_is_right_opposition = {
	#custom_trigger_tooltip = {
		#tooltip = SOV_is_right_opposition_tt
		SOV = { has_completed_focus = SOV_the_right_opposition }
	#}
}

SOV_is_exiles = {
	#custom_trigger_tooltip = {
		#tooltip = SOV_is_exiles_tt
		SOV = { has_completed_focus = SOV_beaten_but_not_defeated }
	#}
}

SOV_is_opposition = {
	custom_trigger_tooltip = {
		tooltip = SOV_is_opposition_tt
		OR = {
			SOV_is_left_opposition = yes 
			SOV_is_right_opposition = yes 
			SOV_is_exiles = yes 
		}
	}
}

SOV_has_crackdown = {
	custom_trigger_tooltip = {
		tooltip = SOV_has_crackdown_tt
		OR = {
			has_active_mission = SOV_steppe_crackdown_timer
			has_active_mission = SOV_northern_crackdown_timer
			has_active_mission = SOV_siberian_crackdown_timer
			has_active_mission = SOV_urals_crackdown_timer
		}
	}
}

SOV_is_major_not_original_sov = {
	is_major = yes
	hidden_trigger = {
		NOT = { original_tag = SOV }
	}
}

SOV_is_stalinist = {
	has_completed_focus = SOV_the_centre
}

SOV_we_want_to_send_ultimatums = {
	OR = {
		has_completed_focus = SOV_claims_in_baltic
		focus_progress = {
			focus = SOV_claims_in_baltic
			progress > 0.01
		}
	}
	any_other_country = {
		OR = {
			original_tag = LIT
			original_tag = LAT
			original_tag = EST
		}
		NOT = { has_country_flag = SOV_ultimatum_sent_flag }
	}
}
