Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Military Industrial Organization
Component: generic_high_agility_fighter_aircraft_organization
Constructs: equipment_bonus, production_bonus, maximum_speed
Source: game
File: common/military_industrial_organization/organizations/00_generic_organization.txt

Code:
generic_high_agility_fighter_aircraft_organization = {
	icon = GFX_idea_generic_air_manufacturer_1
	allowed = {
		always = no
	}
	equipment_type = {
		mio_cat_eq_only_light_fighter
	}
	research_categories = {
		mio_cat_all_light_fighter_and_modules
	}
	tree_header_text = {
		text = mio_header_production
		x = 1
	} {
		text = mio_header_engines
		x = 3
	} {
		text = mio_header_wings
		x = 5
	} {
		text = mio_header_weapons
		x = 7
	}
	initial_trait = {
		name = generic_mio_initial_trait_high_agility_fighters_designer
		equipment_bonus = {
			air_agility = 0.1
			air_range = -0.1
		}
	}
	trait = {
		token = generic_mio_trait_fabric_skin
		name = generic_mio_trait_fabric_skin
		icon = GFX_generic_mio_department_icon_plane_general_production
		position = {
			x = 0
			y = 0
		}
		mutually_exclusive = {
			generic_mio_trait_metal_skin
		}
		production_bonus = {
			production_resource_penalty_factor = -0.05
			production_capacity_factor = 0.05
		}
		equipment_bonus = {
			air_agility = 0.05
		}
	} {
		token = generic_mio_trait_metal_skin
		name = generic_mio_trait_metal_skin
		icon = GFX_generic_mio_trait_icon_defense
		position = {
			x = 2
			y = 0
		}
		relative_position_id = generic_mio_trait_fabric_skin
		mutually_exclusive = {
			generic_mio_trait_fabric_skin
		}
		equipment_bonus = {
			air_defence = 0.1
			maximum_speed = 0.05
		}
	} {
		token = generic_mio_trait_bigger_engines
		name = generic_mio_trait_bigger_engines
		icon = GFX_generic_mio_trait_icon_maximum_speed
		position = {
			x = 3
			y = 0
		}
		relative_position_id = generic_mio_trait_fabric_skin
		equipment_bonus = {
			maximum_speed = 0.05
		}
	} {
		token = generic_mio_trait_high_octane_fuels
		name = generic_mio_trait_high_octane_fuels
		icon = GFX_generic_mio_trait_icon_maximum_speed
		position = {
			x = 1
			y = 2
		}
		relative_position_id = generic_mio_trait_bigger_engines
		all_parents = {
			generic_mio_trait_bigger_engines
		}
		equipment_bonus = {
			maximum_speed = 0.15
			fuel_consumption_factor = 0.1
		}
	} {
		token = generic_mio_trait_fuel_injection_engines
		name = generic_mio_trait_fuel_injection_engines
		icon = GFX_generic_mio_trait_icon_air_agility
		position = {
			x = 0
			y = 3
		}
		relative_position_id = generic_mio_trait_bigger_engines
		all_parents = {
			generic_mio_trait_bigger_engines
		}
		equipment_bonus = {
			maximum_speed = 0.05
			air_agility = 0.05
		}
	}
# ... (truncated)
### Entity: Character
Component: EGY_mustafa_al_nahhas
Source: game
File: common/characters/EGY.txt

Code:
EGY_mustafa_al_nahhas = {
	name = Mustafa El-Nahhas
	portraits = {
		civilian = {
			large = gfx/leaders/EGY/r56_portrait_EGY_Mustafa_el_Nahhas.dds
		}
	}
	country_leader = {
		ideology = liberalism
		expire = 1965.1.1
		traits = {
			liberal_grandee r56_trait_opposed_to_fascism
		}
		id = -1
	}
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_the_road_of_life
Constructs: prerequisite, completion_reward, is_controlled_by, is_owned_by, is_fully_controlled_by, add_timed_idea
Source: game
File: common/national_focus/soviet.txt

Code:
focus = {
	id = SOV_the_road_of_life
	icon = GFX_focus_SOV_the_road_of_life
	prerequisite = {
		focus = SOV_leningrad_polytechnical_institute
	} {
		focus = SOV_move_industry_to_the_urals
	}
	x = 1
	y = 1
	relative_position_id = SOV_leningrad_polytechnical_institute
	cost = 5
	available = {
		OR = {
			195 = {
				is_controlled_by = ROOT
				any_neighbor_state = {
					is_owned_by = ROOT
					NOT = {
						is_fully_controlled_by = ROOT
					}
				}
			}
			219 = {
				is_controlled_by = ROOT
				any_neighbor_state = {
					is_owned_by = ROOT
					NOT = {
						is_fully_controlled_by = ROOT
					}
				}
			}
			217 = {
				is_controlled_by = ROOT
				any_neighbor_state = {
					is_owned_by = ROOT
					NOT = {
						is_fully_controlled_by = ROOT
					}
				}
			}
			137 = {
				is_controlled_by = ROOT
				any_neighbor_state = {
					is_owned_by = ROOT
					NOT = {
						is_fully_controlled_by = ROOT
					}
				}
			}
			202 = {
				is_controlled_by = ROOT
				any_neighbor_state = {
					is_owned_by = ROOT
					NOT = {
						is_fully_controlled_by = ROOT
					}
				}
			}
		}
	}
	search_filters = {

	}
	completion_reward = {
		add_timed_idea = {
			idea = SOV_the_road_of_life_ns
			days = 730
		}
	}
}
### Entity: National Focus
Tree: swi_focus
Component: SWI_reorganise_af
Constructs: completion_reward, add_doctrine_cost_reduction
Source: game
File: common/national_focus/r56_switzerland.txt

Code:
focus = {
	id = SWI_reorganise_af
	icon = GFX_goal_generic_build_airforce
	cost = 10
	ai_will_do = {
		factor = 3
	}
	x = 51
	y = 0
	completion_reward = {
		air_experience = 15
		add_doctrine_cost_reduction = {
			name = SWI_reorganise_af
			cost_reduction = 0.5
			uses = 1
			category = air_doctrine
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}
### Entity: Character
Component: TUR_mustafa_muglali
Source: game
File: common/characters/TUR.txt

Code:
TUR_mustafa_muglali = {
	name = TUR_mustafa_muglali
	portraits = {
		army = {
			large = GFX_portrait_tur_mustafa_mugali
			small = GFX_portrait_TUR_mustafa_muglali_small
		}
	}
	corps_commander = {
		traits = {
			harsh_leader
		}
		skill = 2
		attack_skill = 3
		defense_skill = 2
		planning_skill = 1
		logistics_skill = 1
		legacy_id = -1
	}
}
### Entity: National Focus
Tree: den_focus
Component: DEN_Fuel_Nationalism
Constructs: has_completed_focus, prerequisite, limit, add_ideas, has_country_flag, completion_reward, add_popularity
Source: game
File: common/national_focus/r56_denmark.txt

Code:
focus = {
	id = DEN_Fuel_Nationalism
	icon = GFX_goal_morale_bonus
	cost = 10
	cancel = {
		has_completed_focus = DEN_King_Christian_Coup
	}
	ai_will_do = {
		factor = 1
	}
	available = {
		den_cancel_intro_trigger = yes
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL FOCUS_FILTER_WAR_SUPPORT
	}
	prerequisite = {
		focus = DEN_Initiate_Economic_Reforms DEN_Galvanise_the_German_Minority
	}
	x = 1
	y = 1
	relative_position_id = DEN_Initiate_Economic_Reforms
	completion_reward = {
		if = {
			limit = {
				has_completed_focus = DEN_Galvanise_the_German_Minority
			}
			add_popularity = {
				ideology = fascism
				popularity = 0.05
			}
			if = {
				limit = {
					has_country_flag = socialdemokratiet_dominating
				}
				add_popularity = {
					ideology = neutrality
					popularity = 0.03
				}
			}
			else = {
				add_popularity = {
					ideology = democratic
					popularity = 0.03
				}
			}
		} {
			limit = {
				has_completed_focus = DEN_Initiate_Economic_Reforms
			}
			den_remove_social_democrat_ideas = yes
		}
		else = {
			add_popularity = {
				ideology = fascism
				popularity = 0.03
			}
			if = {
				limit = {
					has_country_flag = socialdemokratiet_dominating
				}
				add_popularity = {
					ideology = neutrality
					popularity = 0.05
				}
			}
			else = {
				add_popularity = {
					ideology = democratic
					popularity = 0.05
				}
			}
		}
		add_ideas = DEN_fueled_nationalism
		custom_effect_tooltip = DEN_conservative_policies_0_desc
	}
}
### Entity: Special Project
Component: sp_naval_modern_carrier
Constructs: limit, fire_only_once, has_dlc, has_tech, breakthrough_cost, resource_cost, add_design_template_bonus, cost_factor
Source: game
File: common/special_projects/projects/naval_projects.txt

Code:
sp_naval_modern_carrier = {
	specialization = specialization_naval
	project_tags = sp_tag_surface_ship
	ai_will_do = {
		base = 1
	}
	allowed = {
		has_dlc = Gotterdammerung
	}
	available = {
		FROM = {
			if = {
				limit = {
					has_dlc = Man the Guns
				}
				has_tech = advanced_ship_hull_carrier
			}
			else = {
				has_tech = advanced_carrier
			}
		}
	}
	breakthrough_cost = {
		specialization_naval = 2
	}
	resource_cost = {
		resources = {
			steel = 24
			chromium = 16
		}
	}
	complexity = sp_complexity.large
	prototype_time = sp_time.prototype.long
	project_output = {
		country_effects = {
			if = {
				limit = {
					has_dlc = Man the Guns
				}
				add_design_template_bonus = {
					name = sp_naval_modern_carrier_free_design
					uses = 1
					cost_factor = 1
					equipment = ship_hull_carrier_modern
				}
			}
		}
		enable_equipments = {
			limit = {
				has_dlc = Man the Guns
			}
			 = ship_hull_carrier_modern
		} {
			limit = {
				not = {
					has_dlc = Man the Guns
				}
			}
			 = modern_carrier
		}
		enable_equipment_modules = {

		}
		enable_subunits = {

		}
	}
	generic_prototype_rewards = {
		sp_naval_generic_reward_scientist_xp_1 sp_naval_generic_reward_scientist_xp_2 sp_naval_generic_reward_scientist_xp_3 sp_naval_generic_reward_navy_xp_1 sp_naval_generic_reward_navy_xp_2 sp_naval_generic_reward_navy_xp_3 sp_naval_generic_reward_major_progress_1 sp_naval_generic_reward_major_progress_2 sp_naval_generic_reward_major_progress_3 sp_naval_generic_reward_test_failure_1 sp_naval_generic_reward_test_failure_2 sp_naval_generic_reward_test_failure_3 sp_naval_generic_reward_armor_tech_1 sp_naval_generic_reward_armor_tech_2 sp_naval_generic_reward_armor_tech_3
	}
	unique_prototype_rewards = {
		sp_naval_modern_carrier_unique_reward_a = {
			fire_only_once = yes
			threshold = {
				min = 10
				max = 50
			}
			weight = {
				base = 100
			}
			option = {
				token = sp_naval_modern_carrier_preference_a_a
				iteration_output = {
					country_effects = {
						if = {
							limit = {
								has_dlc = Man the Guns
							}
							add_equipment_bonus = {
								name = sp_modern_carrier_eq_bonus_detection
								bonus = {
									ship_hull_carrier_modern = {
										surface_detection = 0.2
										sub_detection = 0.2
									}
								}
							}
						}
						else = {
							add_equipment_bonus = {
								name = sp_modern_carrier_eq_bonu
# ... (truncated)
### Entity: Event
Component: cityfall.61
Constructs: is_triggered_only, set_global_flag
Source: game
File: events/CFM_city_events.txt

Code:
news_event = {
	id = cityfall.61
	title = cityfall.61.t
	desc = cityfall.61.d
	picture = GFX_news_event_067
	major = yes
	is_triggered_only = yes
	immediate = {
		set_global_flag = fall_of_stockholm_den
	}
	option = {
		name = cityfall.61.a
		trigger = {
			NOT = {
				TAG = DEN SWE
			}
		}
	} {
		name = cityfall.61.b
		trigger = {
			TAG = DEN
		}
	} {
		name = cityfall.61.c
		trigger = {
			TAG = SWE
		}
	}
}
### Entity: National Focus
Tree: sov_focus
Component: SOV_mine_warfare
Constructs: prerequisite, limit, add_ideas, completion_reward, has_dlc, add_tech_bonus, add_doctrine_cost_reduction
Source: game
File: common/national_focus/soviet.txt

Code:
focus = {
	id = SOV_mine_warfare
	icon = GFX_focus_generic_mine_warfare
	prerequisite = {
		focus = SOV_surface_warfare SOV_submarine_warfare
	}
	x = -1
	y = 1
	relative_position_id = SOV_submarine_warfare
	cost = 10
	available = {

	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
	completion_reward = {
		if = {
			limit = {
				has_dlc = Man the Guns
			}
			add_ideas = SOV_mine_warfare_ns
			custom_effect_tooltip = generic_skip_one_line_tt
			add_tech_bonus = {
				name = SOV_mine_warfare
				bonus = 1.0
				uses = 2
				category = naval_mines
			}
		}
		else = {
			add_tech_bonus = {
				name = SOV_mine_warfare
				bonus = 0.5
				uses = 1
				category = ss_tech dd_tech
			}
			custom_effect_tooltip = generic_skip_one_line_tt
			add_doctrine_cost_reduction = {
				name = SOV_mine_warfare
				cost_reduction = 0.75
				uses = 1
				category = naval_doctrine
			}
		}
	}
}
### Entity: AI Strategy
Component: ITA_light_tank_artillery
Constructs: has_war, has_tech
Source: game
File: common/ai_equipment/ITA_tank.txt

Code:
ITA_light_tank_artillery = {
	category = land
	blocked_for = {

	}
	available_for = {
		ITA
	}
	roles = {
		land_light_tank_artillery
	}
	priority = {
		factor = 500
	}
	light_tank_artillery_1 = {
		priority = {
			factor = 100
		}
		enable = {
			has_tech = interwar_artillery
		}
		history = yes
		target_variant = {
			match_value = 1000
			type = light_tank_artillery_chassis_1
			modules = {
				main_armament_slot = tank_close_support_gun
				turret_type_slot = tank_light_fixed_superstructure_turret
				suspension_type_slot = tank_bogie_suspension
				armor_type_slot = tank_riveted_armor
				engine_type_slot = tank_diesel_engine
				special_type_slot_1 = empty
				special_type_slot_2 = empty
				special_type_slot_3 = empty
				special_type_slot_4 = empty
			}
			upgrades = {
				tank_nsb_engine_upgrade = 3
				tank_nsb_armor_upgrade = {
					base = 1
					modifier = {
						add = 1
						has_war = yes
					}
				}
			}
		}
		allowed_modules = {
			tank_close_support_gun tank_light_fixed_superstructure_turret tank_bogie_suspension tank_riveted_armor tank_diesel_engine
		}
	}
	light_tank_artillery_2 = {
		priority = {
			factor = 200
		}
		enable = {
			has_tech = interwar_artillery
		}
		history = yes
		target_variant = {
			match_value = 1500
			type = light_tank_artillery_chassis_2
			modules = {
				main_armament_slot = tank_medium_howitzer
				turret_type_slot = tank_light_fixed_superstructure_turret
				suspension_type_slot = tank_bogie_suspension
				armor_type_slot = tank_riveted_armor
				engine_type_slot = tank_gasoline_engine
				special_type_slot_1 = empty
				special_type_slot_2 = empty
				special_type_slot_3 = empty
				special_type_slot_4 = empty
			}
			upgrades = {
				tank_nsb_engine_upgrade = 4
				tank_nsb_armor_upgrade = {
					base = 2
					modifier = {
						add = 1
						has_war = yes
					}
				}
			}
		}
		allowed_modules = {
			tank_medium_howitzer tank_light_fixed_superstructure_turret tank_bogie_suspension tank_riveted_armor tank_gasoline_engine
		}
	}
	light_tank_artillery_3 = {
		priority = {
			factor = 200
		}
		enable = {
			has_tech = artillery1
		}
		history = yes
		target_variant = {
			match_value = 2000
			type = light_tank_artillery_chassis_3
			modules = {
				main_armament_slot = tank_medium_howitzer_2
				turret_type_slot = tank_light_fixed_superstructure_turret
				suspension_type_slot = tank_bogie_suspension
				
# ... (truncated)
### Entity: Character
Component: SZK_vacile_luca
Source: game
File: common/characters/SZK.txt

Code:
SZK_vacile_luca = {
	name = SZK_vacile_luca
	portraits = {
		civilian = {
			large = gfx/leaders/Europe/Portrait_europe_generic_7.dds
		}
	}
	country_leader = {
		ideology = stalinism
		expire = 1953.3.1
		id = -1
		traits = {
			veteran_communist
		}
	}
}
### Entity: Decision
Component: SIA_appeal_for_support_cat
Constructs: has_completed_focus, add_equipment_to_stockpile, add_war_support, has_country_flag, add_stability, fire_only_once, complete_effect, remove_effect
Source: game
File: common/decisions/SIA.txt

Code:
SIA_appeal_for_support_cat = {
	SIA_seek_support_from_constitutional_monarchists = {
		visible = {
			NOT = {
				has_country_flag = SIA_support_from_constitutional_monarchists
			}
		}
		available = {

		}
		cost = 0
		icon = GFX_decision_generic_political_discourse
		days_remove = 14
		complete_effect = {

		}
		remove_effect = {
			add_popularity = {
				ideology = neutrality
				popularity = 0.05
			}
			set_country_flag = SIA_support_from_constitutional_monarchists
			custom_effect_tooltip = SIA_seek_support_from_constitutional_monarchists_tt
			add_to_variable = {
				additional_support_monarchist_cw = 0.05
			}
		}
		ai_will_do = {
			base = 0
			modifier = {
				has_country_flag = SIA_ai_going_constitutional
				add = 1
			}
		}
	}
	SIA_seek_support_from_absolutists_monarchists = {
		visible = {
			NOT = {
				has_country_flag = SIA_support_from_absolutist_monarchists
			}
		}
		available = {

		}
		cost = 0
		icon = GFX_decision_generic_political_discourse
		days_remove = 14
		complete_effect = {

		}
		remove_effect = {
			add_popularity = {
				ideology = neutrality
				popularity = 0.05
			}
			set_country_flag = SIA_support_from_absolutist_monarchists
			custom_effect_tooltip = SIA_seek_support_from_absolutists_monarchists_tt
			add_to_variable = {
				additional_support_monarchist_cw = 0.05
			}
		}
		ai_will_do = {
			base = 1
			modifier = {
				has_country_flag = SIA_ai_going_constitutional
				factor = 0
			}
		}
	}
	SIA_appeal_to_industrialists = {
		visible = {
			NOT = {
				has_country_flag = SIA_appeal_to_industrialists_flag
			}
		}
		available = {

		}
		cost = 0
		icon = GFX_decision_category_gre_investment_decisions
		days_remove = 14
		complete_effect = {

		}
		remove_effect = {
			add_popularity = {
				ideology = neutrality
				popularity = 0.05
			}
			set_country_flag = SIA_appeal_to_industrialists_flag
			custom_effect_tooltip = SIA_appeal_to_industrialists_tt
			effect_tooltip = {
				add_equipment_to_stockpile = {
					type = artillery_equipment_1
					amount = 150
					producer = SIA
				} {
					type = infantry_equipment_0
					amount = 1700
					producer = SIA
				} {
					type = support_equipment
					amount = 150
					producer = SIA
				}
			}
			add_to_variable = {
				additional_support_monarchist_cw = 0.05
			}
		}
		ai_will_do = {
			base = 1
		}
	}
	SIA_appeal_to_rural_people = {
		visible = {
			NOT = {
				has_
# ... (truncated)
### Entity: Idea
Component: GER_communist_refugees
Constructs: has_government, removal_cost, communism_drift
Source: game
File: common/ideas/GER.txt

Code:
GER_communist_refugees = {
	allowed = {
		always = no
	}
	allowed_civil_war = {
		has_government = communism
	}
	removal_cost = -1
	picture = generic_communism_drift_bonus
	modifier = {
		communism_drift = 0.12
		weekly_manpower = 50
	}
}
### Entity: Scripted Effect
Component: MON_mongol_bank_funds_decrease
Constructs: limit, has_idea, swap_ideas, remove_idea, add_idea
Source: game
File: common/scripted_effects/r56_MON_scripted_effects.txt

Code:
MON_mongol_bank_funds_decrease = {
	custom_effect_tooltip = MON_decreases_funds_of_the_mongolbank_tt
	if = {
		limit = {
			has_idea = Mongolbank_very_high_funds
		}
		swap_ideas = {
			remove_idea = Mongolbank_very_high_funds
			add_idea = Mongolbank_high_funds
		}
	}
	else_if = {
		limit = {
			has_idea = Mongolbank_high_funds
		}
		swap_ideas = {
			remove_idea = Mongolbank_high_funds
			add_idea = Mongolbank_moderate_funds
		}
	} {
		limit = {
			has_idea = Mongolbank_moderate_funds
		}
		swap_ideas = {
			remove_idea = Mongolbank_moderate_funds
			add_idea = Mongolbank_low_funds
		}
	} {
		limit = {
			has_idea = Mongolbank_low_funds
		}
		swap_ideas = {
			remove_idea = Mongolbank_low_funds
			add_idea = Mongolbank_bankrupt
		}
	}
}
### Entity: Unit Template
Component: CSA_CAV_01
Source: game
File: common/units/names_divisions/CSA_names_divisions.txt

Code:
CSA_CAV_01 = {
	name = Cavalry Division
	for_countries = {
		CSA
	}
	can_use = {
		always = yes
	}
	division_types = {
		cavalry
	}
	fallback_name = %d Cavalry Division
	ordered = {
		1 = {
			%dst Cavalry 'The 1st Team' Div.
		}
		2 = {
			%dnd Cavalry 'South Carolina Mounted' Division
		}
		3 = {
			%drd Cavalry 'Partisan Rangers' Division
		}
		4 = {
			%dth Cavalry 'Dearing' Division
		}
		5 = {
			%dth Cavalry 'Wade' Division
		}
		6 = {
			%dth Cavalry 'Armistead' Division
		}
		7 = {
			%dth Cavalry 'Spence' Division
		}
		8 = {
			%dth Cavalry 'Independent Rangers' Division
		}
		9 = {
			%dth Cavalry 'Murchison' Division
		}
		10 = {
			%dth Cavalry 'Warren' Division
		}
		11 = {
			%dth Cavalry 'Mosby' Division
		}
		12 = {
			%dth Cavalry 'Morgan' Division
		}
	}
}
### Entity: National Focus
Tree: fra_focus
Component: FRA_aggressive_focus
Constructs: prerequisite, completion_reward
Source: game
File: common/national_focus/france.txt

Code:
focus = {
	id = FRA_aggressive_focus
	icon = GFX_goal_generic_major_war
	mutually_exclusive = {
		focus = FRA_defensive_focus
	}
	x = 2
	y = 1
	cost = 10
	relative_position_id = FRA_begin_rearmament
	available_if_capitulated = yes
	prerequisite = {
		focus = FRA_begin_rearmament
	}
	ai_will_do = {
		factor = 0.2
	}
	completion_reward = {
		army_experience = 25
		custom_effect_tooltip = available_chief_of_army
		show_ideas_tooltip = maurice_gamelin
	}
}
### Entity: AI Strategy
Component: EAI_MILITARY_NAVAL_block_invasion_target_B0C
Constructs: check_variable
Source: game
File: common/ai_strategy/EAI_MILITARY_naval_strategies.txt

Code:
EAI_MILITARY_NAVAL_block_invasion_target_B0C = {
	enable = {
		NOT = {
			check_variable = {
				EAI_INVASION_block_target^12 = 0
			}
		}
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = invade
		id = B0C
		value = -2000
	}
}
### Entity: Shared Focus
Tree: chi_focus
Component: CHI_modern_logistics
Constructs: shared_focus, prerequisite, add_ideas, completion_reward, cancel_if_invalid, every_army_leader, add_logistics, add_tech_bonus
Source: game
File: common/national_focus/china_shared.txt

Code:
shared_focus = {
	id = CHI_modern_logistics
	icon = GFX_goal_generic_army_motorized
	prerequisite = {
		focus = CHI_french_drill CHI_ledo_road
	}
	x = 1
	y = 1
	relative_position_id = CHI_french_drill
	cost = 10
	ai_will_do = {
		factor = 1
		modifier = {
			factor = 4
			tag = CHI
		}
	}
	available = {
		OR = {
			FRA_will_support = yes
			ENG_will_support = yes
		}
	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	completion_reward = {
		every_army_leader = {
			add_logistics = 1
		}
		add_ideas = CHI_modern_logistics
		add_tech_bonus = {
			name = CHI_modern_logistics
			bonus = 1.0
			uses = 1
			technology = tech_field_hospital tech_field_hospital2 tech_field_hospital3 tech_field_hospital4 tech_logistics_company tech_logistics_company2 tech_logistics_company3 tech_logistics_company4
		}
	}
}
### Entity: National Focus
Tree: pru_focus
Component: PRU_secure_the_central_america
Constructs: prerequisite, limit, completion_reward, is_subject, is_core_of, every_state, is_claimed_by, add_claim_by
Source: game
File: common/national_focus/peru.txt

Code:
focus = {
	id = PRU_secure_the_central_america
	icon = GFX_goal_MEX_march_southwards
	prerequisite = {
		focus = PRU_hispanic_union PRU_legacy_of_guayaquil_treaty
	}
	x = -1
	y = 1
	relative_position_id = PRU_hispanic_union
	mutually_exclusive = {
		focus = PRU_Support_the_banana_industry
	}
	cost = 10
	available = {
		is_subject = no
		1051 = {
			is_controlled_by_ROOT_or_ally = yes
		}
		any_state = {
			OR = {
				is_core_of = PAN COS NIC HON GUA
			}
			custom_trigger_tooltip = {
				tooltip = ROOT_is_not_controlled_by_root_or_ally_tt
				NOT = {
					is_controlled_by_ROOT_or_ally = yes
				}
			}
		}
	}
	ai_will_do = {
		factor = 10
	}
	bypass = {
		all_state = {
			OR = {
				NOT = {
					is_core_of = PAN COS NIC HON GUA
				}
				is_controlled_by_ROOT_or_ally = yes
			}
		}
	}
	will_lead_to_war_with = HON
	completion_reward = {
		every_state = {
			limit = {
				OR = {
					is_core_of = PAN COS NIC HON GUA
				}
				NOT = {
					is_claimed_by = ROOT
					is_core_of = ROOT
				}
			}
			add_claim_by = ROOT
		}
		every_other_country = {
			limit = {
				NOT = {
					is_ally_with = ROOT
				}
				any_controlled_state = {
					OR = {
						is_core_of = PAN COS NIC HON GUA
					}
				}
			}
			ROOT = {
				create_wargoal = {
					target = PREV
					type = annex_everything
					expire = 0
				}
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_ANNEXATION
	}
}
### Entity: Idea
Component: JAP_sent_us_their_technicians_infantry
Constructs: removal_cost, research_bonus
Source: game
File: common/ideas/r56_japan.txt

Code:
JAP_sent_us_their_technicians_infantry = {
	picture = generic_research_bonus
	allowed = {
		always = yes
	}
	allowed_civil_war = {
		always = yes
	}
	removal_cost = -1
	modifier = {

	}
	research_bonus = {
		infantry_weapons = 0.05
		support_tech = 0.05
		artillery = 0.05
		industry = 0.05
	}
}