Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: National Focus
Tree: bra_focus
Component: BRA_international_volunteers
Constructs: prerequisite, add_ideas, has_government, completion_reward, is_subject, set_rule
Source: game
File: common/national_focus/r56_brazil.txt

Code:
focus = {
	id = BRA_international_volunteers
	icon = GFX_goal_generic_into_fire
	prerequisite = {
		focus = bra_foro_de_sao_paulo_focus bra_strike_dem_focus
	}
	available = {
		is_subject = no
		OR = {
			has_government = communism fascism
		}
	}
	relative_position_id = bra_foro_de_sao_paulo_focus
	x = 2
	y = 1
	cost = 5
	completion_reward = {
		set_rule = {
			can_send_volunteers = yes
		}
		add_ideas = {
			bra_volunteer_idea
		}
	}
}
### Entity: Scripted Effect
Component: replace_civ_with_arms_factories
Constructs: limit, random_owned_controlled_state, is_fully_controlled_by, remove_building, add_building_construction
Source: game
File: common/scripted_effects/00_scripted_effects.txt

Code:
replace_civ_with_arms_factories = {
	random_owned_controlled_state = {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex = > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	} {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex = > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	} {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex = > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	} {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex = > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	} {
		limit = {
			is_fully_controlled_by = ROOT
			industrial_complex = > 0
		}
		remove_building = {
			type = industrial_complex
			level = 1
		}
		add_building_construction = {
			type = arms_factory
			level = 1
			instant_build = yes
		}
	}
}
### Entity: Character
Component: ITA_annibale_bergonzoli
Constructs: has_completed_focus, has_government
Source: game
File: common/characters/ITA.txt

Code:
ITA_annibale_bergonzoli = {
	name = ITA_annibale_bergonzoli
	portraits = {
		army = {
			small = GFX_portrait_ITA_annibale_bergonzoli_small
			large = GFX_portrait_ITA_annibale_bergonzoli
		}
	}
	corps_commander = {
		traits = {
			old_guard infantry_officer commando
		}
		skill = 2
		attack_skill = 2
		defense_skill = 2
		planning_skill = 1
		logistics_skill = 2
		legacy_id = 0
		visible = {
			has_completed_focus = ITA_army_leaders
			NOT = {
				has_government = communism
			}
		}
	}
}
### Entity: Trigger Reference
Construct: custom_trigger_tooltip
Source: vanilla_docs
File: documentation/triggers_documentation.md

Doc:
## custom_trigger_tooltip

* Supported Scopes: any
* Supported Targets: none

Alias for [custom_override_tooltip](#custom_override_tooltip) trigger (see that trigger for more info). Kept for backward compatibility.
Prefer [custom_override_tooltip](#custom_override_tooltip) instead.
### Entity: Idea
Component: KMT_nanjing_decade_4
Constructs: has_completed_focus, research_speed_factor, stability_factor, production_speed_buildings_factor, removal_cost, has_idea, democratic_drift
Source: game
File: common/ideas/r56_china.txt

Code:
KMT_nanjing_decade_4 = {
	name = KMT_nanjing_decade
	removal_cost = -1
	picture = generic_mild_economic_recovery
	allowed = {
		always = no
	}
	available = {
		AND = {
			controls_state = 1114
			OR = {
				has_idea = civilian_economy low_economic_mobilisation
				AND = {
					has_idea = partial_economic_mobilisation
					has_completed_focus = KMT_finalize_war_preparations
				}
			}
			surrender_progress = < 0.1
		}
	}
	allowed_civil_war = {
		always = yes
	}
	modifier = {
		production_speed_buildings_factor = 0.1
		stability_factor = 0.1
		democratic_drift = 0.03
		research_speed_factor = 0.05
	}
}
### Entity: Country History
Country: JER
Component: JER_politics
Constructs: set_politics, set_popularities
Source: game
File: history/countries/JER - Jersey & Guernsey.txt

Code:
# Politics & Parties for JER
set_politics = {
	ruling_party = democratic
	last_election = 1936.1.1
	election_frequency = 48
	elections_allowed = yes
}
set_popularities = {
	democratic = 93
	fascism = 3
	communism = 4
}
### Entity: Event
Component: ARG_political_events.43
Constructs: is_triggered_only, ai_chance, add_opinion_modifier
Source: game
File: events/TOA_Argentina.txt

Code:
country_event = {
	id = ARG_political_events.43
	title = ARG_political_events.43.t
	desc = ARG_political_events.43.desc
	picture = GFX_report_event_generic_handshake
	is_triggered_only = yes
	option = {
		name = ARG_political_events.43.a
		ai_chance = {
			base = 10
		}
		add_opinion_modifier = {
			target = SOU
			modifier = medium_increase
		}
	}
}
### Entity: National Focus
Tree: aus_focus
Component: AUS_strengthen_the_cabinet
Constructs: prerequisite, completion_reward, add_to_variable
Source: game
File: common/national_focus/austria.txt

Code:
focus = {
	id = AUS_strengthen_the_cabinet
	icon = GFX_goal_support_democracy
	prerequisite = {
		focus = AUS_outlaw_the_radicals AUS_stabilize_the_political_climate
	}
	mutually_exclusive = {

	}
	x = -1
	y = 1
	relative_position_id = AUS_outlaw_the_radicals
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
	cost = 10
	ai_will_do = {
		factor = 10
	}
	available = {
		democratic = > 0.5
	}
	bypass = {

	}
	available_if_capitulated = no
	completion_reward = {
		custom_effect_tooltip = AUS_farr_intro_tt
		add_to_variable = {
			AUS_farr_political_advisor_cost_factor = -0.15
			tooltip = political_advisor_cost_factor_tt
		} {
			AUS_farr_political_power_factor = 0.1
			tooltip = political_power_factor_tt
		}
	}
}
### Entity: Shared Focus
Tree: gen_focus
Component: GEN_invite_american_investors
Constructs: shared_focus, prerequisite, limit, has_government, has_war_with, add_opinion_modifier, completion_reward, has_capitulated
Source: game
File: common/national_focus/r56_gen_shared.txt

Code:
shared_focus = {
	id = GEN_invite_american_investors
	icon = GFX_goal_generic_befriend_united_states
	prerequisite = {
		focus = GEN_expand_military_capacity
	}
	x = -2
	y = 1
	relative_position_id = GEN_expand_military_capacity
	mutually_exclusive = {
		focus = GEN_invite_german_investors
	} {
		focus = GEN_invite_soviet_planners
	}
	cost = 5
	available_if_capitulated = yes
	ai_will_do = {
		factor = 2
		modifier = {
			factor = 6
			has_government = democratic
		}
	}
	available = {
		num_of_controlled_states = > 0
		any_other_country = {
			original_tag = USA
			has_capitulated = no
			if = {
				limit = {
					ROOT = {
						is_ai = no
					}
				}
				has_opinion = {
					target = ROOT
					value = > 49
				}
			}
			OR = {
				has_government = ROOT
				AND = {
					NOT = {
						has_government = communism
					}
					ROOT = {
						has_government = neutrality
					}
				}
			}
			NOT = {
				has_war_with = ROOT
			}
		}
	}
	completion_reward = {
		add_offsite_building = {
			type = industrial_complex
			level = 1
		}
		add_tech_bonus = {
			name = industrial_bonus
			bonus = 1
			uses = 1
			category = industry
		}
		if = {
			limit = {
				USA = {
					exists = yes
					has_capitulated = no
					if = {
						limit = {
							ROOT = {
								is_ai = no
							}
						}
						has_opinion = {
							target = ROOT
							value = > 0
						}
					}
					OR = {
						has_government = ROOT
						AND = {
							NOT = {
								has_government = communism
							}
							ROOT = {
								has_government = neutrality
							}
						}
					}
					NOT = {
						has_war_with = ROOT
					}
				}
			}
			add_opinion_modifier = {
				target = USA
				modifier = gen_invited_american
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH
	}
}
### Entity: AI Strategy
Component: GER_increase_submarine_ratio
Constructs: has_completed_focus, has_war_with, is_historical_focus_on
Source: game
File: common/ai_strategy/GER.txt

Code:
GER_increase_submarine_ratio = {
	allowed = {
		original_tag = GER
	}
	enable = {
		OR = {
			AND = {
				NOT = {
					has_completed_focus = GER_plan_z
				}
				has_completed_focus = GER_trade_interdiction
			} {
				is_historical_focus_on = yes
				date = > 1938.1.1
			}
			has_war_with = ENG USA
		}
	}
	abort = {
		has_completed_focus = GER_plan_z
	}
	ai_strategy = {
		type = unit_ratio
		id = submarine
		value = 300
	}
}
### Entity: Scripted Effect
Component: LUX_chamberofdeputies_add_support_KPL_100
Constructs: limit, has_country_flag, set_temp_variable, check_variable, add_to_variable, add_to_temp_variable, set_country_flag, clr_country_flag
Source: game
File: common/scripted_effects/r56_LUX_scripted_effects.txt

Code:
LUX_chamberofdeputies_add_support_KPL_100 = {
	set_temp_variable = {
		support_to_remove = 10.0
	}
	if = {
		limit = {
			check_variable = {
				LUX.KPL_support = < 90
			}
		}
		add_to_variable = {
			LUX.KPL_support = support_to_remove
		}
		if = {
			limit = {
				check_variable = {
					LUX.PD_support = > 9.999
				}
			}
			add_to_temp_variable = {
				support_counter = 1
			}
			set_country_flag = remove_PD_support
			if = {
				limit = {
					check_variable = {
						LUX.LSAP_support = > 4.999
					}
				}
				add_to_temp_variable = {
					support_counter = 1
				}
				set_country_flag = remove_LSAP_support
				if = {
					limit = {
						check_variable = {
							LUX.PRL_support = > 3.332
						}
					}
					add_to_temp_variable = {
						support_counter = 1
					}
					set_country_flag = remove_PRL_support
				}
			}
			else_if = {
				limit = {
					check_variable = {
						LUX.PRL_support = > 4.999
					}
				}
				add_to_temp_variable = {
					support_counter = 1
				}
				set_country_flag = remove_PRL_support
			}
		} {
			limit = {
				has_country_flag = remove_PD_support
			}
			subtract_from_variable = {
				LUX.PD_support = support_to_remove
			}
			clr_country_flag = remove_PD_support
		} {
			limit = {
				has_country_flag = remove_LSAP_support
			}
			subtract_from_variable = {
				LUX.LSAP_support = support_to_remove
			}
			clr_country_flag = remove_LSAP_support
		} {
			limit = {
				has_country_flag = remove_PRL_support
			}
			subtract_from_variable = {
				LUX.PRL_support = support_to_remove
			}
			clr_country_flag = remove_PRL_support
		}
		else_if = {
			limit = {
				check_variable = {
					LUX.LSAP_support = > 9.999
				}
			}
			add_to_temp_variable = {
				support_counter = 1
			}
			set_country_flag = remove_LSAP_support
			if = {
				limit = {
					check_variable = {
						LUX.PRL_support = > 4.99
					}
				}
				add_to_temp_variable = {
					support_counter = 1
				}
				set_country_flag = remove_PRL_support
			}
		}
		else = {
			add_to_temp_variable = {
				support_counter = 1
			}
			set_country_flag = remove_PRL_support
		}
		divide_temp_variable = {
			support_to_remove = support_counter
		}
	}
	else = {
		set_variable = {
			LUX.PD_support = 0
		} {
			LUX.PRL_support = 0
		} {
			LUX.LSAP_support = 0
		} {
			LUX.KPL_support = 100
		}
	}
	set_variable = {
		LUX.PD_support_loc = LUX.PD_support
	} {
		LUX.PRL_support
# ... (truncated)
### Entity: Technology
Component: basic_dp_light_battery
Constructs: research_cost, enable_equipment_modules
Source: game
File: common/technologies/MTG_naval_Support.txt

Code:
technology = {
	research_cost = 1
	start_year = 1939
	enable_equipment_modules = {
		dp_light_battery_2 dp_ship_secondaries_2 dp_light_battery_1 dp_ship_secondaries_1
	}
	path = {
		leads_to_tech = improved_dp_light_battery
		research_cost_coeff = 1
	}
	on_research_complete = {
		custom_effect_tooltip = secondary_battery_advice_tt
	}
	folder = {
		name = mtgnavalsupportfolder
		position = {
			x = 0
			y = 11
		}
	}
	ai_will_do = {
		factor = 2
		modifier = {
			OR = {
				tag = ENG USA JAP
			}
			factor = 20
		}
	}
	categories = {
		naval_artillery naval_equipment ship_modules_tech mio_cat_tech_all_capital_ship_and_modules mio_cat_tech_all_screen_ship_and_modules mio_cat_tech_all_carrier_and_modules mio_cat_tech_all_cruiser_and_modules mio_cat_tech_all_destroyer_and_modules
	}
	special_project_specialization = {
		specialization_naval
	}
}
### Entity: Character
Component: COL_mauricio_soto_gomez
Source: game
File: common/characters/COL.txt

Code:
COL_mauricio_soto_gomez = {
	advisor = {
		cost = 100
		slot = theorist
		idea_token = COL_mauricio_soto_gomez
		ledger = navy
		allowed = {
			original_tag = COL
		}
		traits = {
			naval_theorist
		}
	}
	name = Mauricio Soto Gomez
	portraits = {
		army = {
			small = GFX_idea_generic_navy_south_america_1
		}
	}
}
### Entity: Event
Component: tfv_south_africa.68
Constructs: is_triggered_only, ai_chance, limit, set_politics, add_popularity, add_to_faction
Source: game
File: events/TFV_South_Africa.txt

Code:
country_event = {
	id = tfv_south_africa.68
	title = tfv_south_africa.68.t
	desc = tfv_south_africa.68.d
	picture = GFX_report_event_african_soldiers
	is_triggered_only = yes
	option = {
		name = tfv_south_africa.64.a
		ai_chance = {
			base = 100
		}
		MLW = {
			if = {
				limit = {
					SAF = {
						controls_state = 770
					}
				}
				transfer_state = 770
			}
		}
		SAF = {
			puppet = MLW
		}
	} {
		name = tfv_south_africa.64.b
		ai_chance = {
			base = 0
		}
		MLW = {
			if = {
				limit = {
					SAF = {
						controls_state = 770
					}
				}
				transfer_state = 770
			}
			hidden_effect = {
				set_politics = {
					ruling_party = communism
					elections_allowed = no
				}
				add_popularity = {
					ideology = communism
					popularity = 0.75
				}
			}
		}
		SAF = {
			add_to_faction = MLW
		}
	}
}
### Entity: AI Strategy
Component: EAI_PROD_ARMY_SF_armor_army_production_strategy
Constructs: has_country_flag
Source: game
File: common/ai_strategy/EAI_PRODUCTION_division_strategies.txt

Code:
EAI_PROD_ARMY_SF_armor_army_production_strategy = {
	enable = {
		has_country_flag = EAI_SF_armor_army_production_strategy
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = role_ratio
		id = armor
		value = 35
	}
}
### Entity: Scripted Effect
Component: EAI_PC_railway
Constructs: limit, has_country_flag, check_variable, set_variable, set_temp_variable, set_country_flag, add_to_temp_array, add_to_temp_variable
Source: game
File: common/scripted_effects/EAI_CONSTRUCTION_PRIORITY_strategies_misc.txt

Code:
EAI_PC_railway = {
	if = {
		limit = {
			check_variable = {
				EAI_PC_railway_INTERVAL = 0
			}
		}
		set_variable = {
			EAI_PC_railway_INTERVAL = @EAI_PC_railway_INTERVAL
		}
		set_temp_variable = {
			_project_building_type = global.EAI_PC_RAIL
		} {
			_project_build_for_ally = 1
		} {
			_project_type_id = @EAI_PC_railway_TYPE_ID
		} {
			_project_priority = @EAI_PC_railway_PRIO
		} {
			_project_queue_num = 3
		} {
			_project_queue_max = 3
		}
		EAI_PC_railway_STRATEGIES = yes
		if = {
			limit = {
				check_variable = {
					EAI_PC_railway_STRATEGIES = 1
				}
			}
			if = {
				limit = {
					ROOT = {
						has_country_flag = EAI_construction_logging
					}
				}
				log = [GetYear] [GetMonth] | AI | [Root.GetName] | CONSTRUCTION: EAI_PC_railway
			} {
				limit = {
					EAI_PC_get_total_queued_num = yes
					check_variable = {
						queued_type_num_ = > 0
					}
				}
				set_country_flag = {
					flag = EAI_PC_override_max_factories_factor
					value = 1
					days = 30
				}
				set_variable = {
					EAI_PC_override_max_factories_factor = 0.5
				}
			}
			EAI_PC_save_project_inputs = yes
			for_each_loop = {
				array = railway_end_provinces_
				index = railway_i
				value = railway_v
				break = railway_b
				set_temp_variable = {
					_pathfind_prov_start = railway_start_provinces_^railway_i
				} {
					_pathfind_prov_end = railway_end_provinces_^railway_i
				} {
					_pathfind_prov_type = 1
				}
				EAI_PATHFIND_PROV_get_path = yes
				if = {
					limit = {
						check_variable = {
							pathfind_prov_success_ = 1
						}
					}
					for_each_loop = {
						array = pathfind_prov_path_
						index = path_i
						value = path_v
						break = path_b
						add_to_temp_array = {
							_valid_provinces = path_v
						}
						set_temp_variable = {
							next_i = path_i
						}
						add_to_temp_variable = {
							next_i = 1
						}
						if = {
							limit = {
								check_variable = {
									next_i = < pathfind_prov_path_^num
								}
							}
							EAI_PC_get_project_inputs_provincial = yes
							set_temp_variable = {
								_project_province_id = path_v
							} {
								_project_connect_id = pathfind_prov_path_^next_i
							} {
								_project_target_level = railway_target_levels_^railway_i
							} {
								_project_priority = railway_priorities_^railway_i
							} {
								_designated_railway_network_^path_v = 1
							} 
# ... (truncated)
### Entity: National Focus
Tree: den_focus
Component: DEN_Propaganda_Campaigns
Constructs: has_completed_focus, prerequisite, completion_reward, add_political_power, unlock_decision_tooltip
Source: game
File: common/national_focus/r56_denmark.txt

Code:
focus = {
	id = DEN_Propaganda_Campaigns
	icon = GFX_goal_generic_cinema
	cost = 5
	ai_will_do = {
		factor = 1
	}
	available = {
		den_cancel_intro_trigger = yes
	}
	cancel = {
		has_completed_focus = DEN_King_Christian_Coup
	}
	prerequisite = {
		focus = DEN_Unify_the_Socialist_Movement
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
	x = -2
	y = 2
	relative_position_id = DEN_An_Appeal_to_the_Proletariat
	completion_reward = {
		add_political_power = 85
		unlock_decision_tooltip = den_propaganda_efforts
	}
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_defense_of_leningrad_old
Constructs: division_template, prerequisite, completion_reward, is_controlled_by, is_owned_and_controlled_by, create_unit, force_equipment_variants, add_building_construction
Source: game
File: common/national_focus/soviet_old.txt

Code:
focus = {
	id = SOV_defense_of_leningrad_old
	text = SOV_defense_of_leningrad
	icon = GFX_focus_generic_coastal_fort
	prerequisite = {
		focus = SOV_defense_of_moscow
	}
	available = {
		195 = {
			is_controlled_by = ROOT
			OR = {
				SOV = {
					surrender_progress = > 0.15
				}
				any_neighbor_state = {
					NOT = {
						is_controlled_by = ROOT
					}
				}
			}
		}
	}
	bypass = {
		NOT = {
			195 = {
				is_owned_and_controlled_by = ROOT
			}
		}
	}
	x = 1
	y = 1
	relative_position_id = SOV_defense_of_moscow
	cost = 5
	ai_will_do = {
		factor = 3
		modifier = {
			195 = {
				any_neighbor_state = {
					NOT = {
						is_controlled_by = ROOT
					}
				}
			}
			factor = 4
		}
	}
	completion_reward = {
		army_experience = 10
		195 = {
			custom_effect_tooltip = SOV_defense_of_leningrad_forts SOV_defense_divisions
			hidden_effect = {
				create_unit = {
					division = name = "1ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oborony" start_experience_factor = 0.1 start_equipment_factor = 0.75 force_equipment_variants = { infantry_equipment_1 = { owner = SOV } }
					owner = SOV
				} {
					division = name = "2ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oborony" start_experience_factor = 0.1 start_equipment_factor = 0.75 force_equipment_variants = { infantry_equipment_1 = { owner = SOV } }
					owner = SOV
				} {
					division = name = "3ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oborony" start_experience_factor = 0.1 start_equipment_factor = 0.75 force_equipment_variants = { infantry_equipment_1 = { owner = SOV } }
					owner = SOV
				} {
					division = name = "4ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oborony" start_experience_factor = 0.1 start_equipment_factor = 0.75 force_equipment_variants = { infantry_equipment_1 = { owner = SOV } }
					owner = SOV
				} {
					division = name = "5ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oborony" start_experience_factor = 0.1 start_equipment_factor = 0.75 force_equipment_variants = { infantry_equipment_1 = { owner = SOV } }
					owner = SOV
				} {
					division = name = "6ya Vspomogatel'nyye sily oborony Leningradskaya" division_template = "Vspomogatel'nyye Sily Oboron
# ... (truncated)
### Entity: Scripted Trigger
Component: GER_is_RKG_state
Source: game
File: common/scripted_triggers/GER_scripted_triggers.txt

Code:
GER_is_RKG_state = {
	OR = {
		state = 110 142 143 144 920 921 922 923 924 925
	}
}
### Entity: National Focus
Tree: gre_focus
Component: GRE_the_greek_industrial_revolution
Constructs: prerequisite, limit, completion_reward, add_research_slot, random_owned_controlled_state, is_core_of, add_extra_state_shared_building_slots, add_building_construction
Source: game
File: common/national_focus/greece.txt

Code:
focus = {
	id = GRE_the_greek_industrial_revolution
	icon = GFX_goal_generic_soviet_construction
	prerequisite = {
		focus = GRE_nationalized_banks
	}
	x = 0
	y = 1
	relative_position_id = GRE_nationalized_banks
	cost = 10
	ai_will_do = {
		base = 1
	}
	bypass = {
		custom_trigger_tooltip = {
			tooltip = GRE_industry_bypass_tt
			AND = {
				all_owned_state = {
					free_building_slots = {
						building = arms_factory
						size = < 1
						include_locked = yes
					}
				} {
					free_building_slots = {
						building = industrial_complex
						size = < 1
						include_locked = yes
					}
				}
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_RESEARCH
	}
	completion_reward = {
		add_research_slot = 1
		random_owned_controlled_state = {
			limit = {
				free_building_slots = {
					building = industrial_complex
					size = > 1
					include_locked = yes
				}
				is_core_of = ROOT
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = industrial_complex
				level = 2
				instant_build = yes
			}
		} {
			limit = {
				free_building_slots = {
					building = arms_factory
					size = > 1
					include_locked = yes
				}
			}
			add_extra_state_shared_building_slots = 2
			add_building_construction = {
				type = arms_factory
				level = 2
				instant_build = yes
			}
		}
	}
}
### Entity: Scripted Trigger
Component: has_any_PRC_infiltration_flag
Constructs: is_potentially_communist_china, has_state_flag
Source: game
File: common/scripted_triggers/PRC_scripted_triggers.txt

Code:
has_any_PRC_infiltration_flag = {
	any_country = {
		is_potentially_communist_china = yes
		PREV = {
			has_state_flag = PRC_infiltration_@PREV
		}
	}
}
### Entity: Character
Component: FRI_raoul_salan
Source: game
File: common/characters/FRI.txt

Code:
FRI_raoul_salan = {
	name = Raoul Salan
	portraits = {
		army = {
			large = gfx/leaders/FRI/Portrait_Indochina_Raoul_Salan2.dds
			small = gfx/interface/ideas/FRI/idea_minister_indochina_raoul_salan.dds
		}
	}
	advisor = {
		slot = army_chief
		idea_token = FRI_raoul_salan
		allowed = {
			original_tag = FRI
		}
		cost = 100
		traits = {
			army_chief_defensive_2
		}
		ai_will_do = {
			factor = 1
		}
	} {
		slot = theorist
		idea_token = FRI_raoul_salan_theorist
		ledger = army
		allowed = {
			original_tag = FRI
		}
		traits = {
			military_theorist
		}
	}
	corps_commander = {
		traits = {
			old_guard trickster
		}
		skill = 3
		attack_skill = 2
		defense_skill = 3
		planning_skill = 3
		logistics_skill = 2
		legacy_id = 0
	}
}
### Entity: Character
Component: minister_of_the_interior_abate
Source: game
File: common/country_leader/00_traits.txt

Code:
minister_of_the_interior_abate = {
	random = no
	sprite = 13
	trade_opinion_factor = 0.1
	production_lack_of_resource_penalty_factor = -0.2
	industry_repair_factor = 0.1
	supply_node_range = 0.1
}