Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Name List
Component: MEK
Source: game
File: common/names/00_names.txt

Code:
MEK = {
	male = {
		names = {
			Maximilian Felix Erich Gerhard Gunther Otto Walter Wilhelm Heinz Hermann Heinrich Theodor Hans Anton Joachim Max Emil Peter Fritz Otto Adolf Tobias Staffan Marco Karl
		}
	}
	female = {
		names = {
			Jessica Emma Hanna Sofia Marie
		}
	}
	surnames = {
		Muller Schmidt Schneider Fischer Meyer Weber Schulz Wagner Hartmann Rall Barkhorn Becker Hoffmann Graf Erhler Hafner Lipfert Brendel Stotz Kirschner Lang Sturm Beisswenger Duttmann Wilbs Berglen Behrmann
	}
	callsigns = {
		Bubi Assi The Black Devil The Blond Knight Of Mecklenburg Dolfo Fighter of Libau Petit Rouge Pritzl The Red Baron The Red Battle-flyer The Red Knight Reeste
	}
}
### Entity: Unit Template
Component: EST_MOT_01
Source: game
File: common/units/names_divisions/EST_names_divisions.txt

Code:
EST_MOT_01 = {
	name = Motorized Division
	for_countries = {
		EST
	}
	can_use = {
		always = yes
	}
	division_types = {
		motorized
	}
	link_numbering_with = {
		EST_INF_01
	}
	fallback_name = %s Motoriseeritud diviisi
	ordered = {
		1 = {
			%s Motoriseeritud diviisi
		}
		2 = {
			%s Motoriseeritud diviisi
		}
		3 = {
			%s Motoriseeritud diviisi
		}
		4 = {
			%s Motoriseeritud diviisi
		}
		5 = {
			%s Motoriseeritud diviisi
		}
		6 = {
			%s Motoriseeritud diviisi
		}
		7 = {
			%s Motoriseeritud diviisi
		}
		8 = {
			%s Motoriseeritud diviisi
		}
		9 = {
			%s Motoriseeritud diviisi
		}
		10 = {
			%s Motoriseeritud diviisi
		}
	}
}
### Entity: Idea
Component: VEN_oil_11
Constructs: has_idea, cancel_if_invalid
Source: game
File: common/ideas/r56_venezuela.txt

Code:
VEN_oil_11 = {
	picture = VEN_oil
	visible = {
		original_tag = VEN
		NOT = {
			OR = {
				has_idea = VEN_oil VEN_oil_2 VEN_oil_3 VEN_oil_4 VEN_oil_5 VEN_oil_6 VEN_oil_7 VEN_oil_8 VEN_oil_9 VEN_oil_10
			}
		}
	}
	allowed_to_remove = {
		always = no
	}
	modifier = {
		consumer_goods_expected_value = 0.15
		local_resources_factor = 0.15
		production_oil_factor = 0.1
		min_export = 0.2
		trade_opinion_factor = 0.3
	}
	cancel_if_invalid = no
}
### Entity: Unit Template
Component: JAP_ARM_01
Source: game
File: common/units/names_divisions/JAP_names_divisions.txt

Code:
JAP_ARM_01 = {
	name = Armored Division
	for_countries = {
		JAP
	}
	can_use = {
		always = yes
	}
	division_types = {
		light_armor medium_armor heavy_armor modern_armor
	}
	fallback_name = Sensha Dai-%d Shidan
	ordered = {
		1 = {
			Sensha Dai-%d 'Taku' Shidan
		}
		2 = {
			Sensha Dai-%d 'Geki' Shidan
		}
		3 = {
			Sensha Dai-%d 'Taki' Shidan
		}
		4 = {
			Sensha Dai-%d 'Hagane' Shidan
		}
		5 = {
			Sensha Dai-%d Shidan
		}
		6 = {
			Sensha Dai-%d Shidan
		}
		7 = {
			Sensha Dai-%d Shidan
		}
		8 = {
			Sensha Dai-%d Shidan
		}
		9 = {
			Sensha Dai-%d Shidan
		}
		10 = {
			Sensha Dai-%d Shidan
		}
		11 = {
			Sensha Dai-%d Shidan
		}
		12 = {
			Sensha Dai-%d Shidan
		}
		13 = {
			Sensha Dai-%d Shidan
		}
		14 = {
			Sensha Dai-%d Shidan
		}
		15 = {
			Sensha Dai-%d Shidan
		}
		16 = {
			Sensha Dai-%d Shidan
		}
		17 = {
			Sensha Dai-%d Shidan
		}
		18 = {
			Sensha Dai-%d Shidan
		}
		19 = {
			Sensha Dai-%d Shidan
		}
		20 = {
			Sensha Dai-%d Shidan
		}
		21 = {
			Sensha Dai-%d Shidan
		}
		22 = {
			Sensha Dai-%d Shidan
		}
		23 = {
			Sensha Dai-%d Shidan
		}
		24 = {
			Sensha Dai-%d Shidan
		}
		25 = {
			Sensha Dai-%d Shidan
		}
		26 = {
			Sensha Dai-%d Shidan
		}
		27 = {
			Sensha Dai-%d Shidan
		}
		28 = {
			Sensha Dai-%d Shidan
		}
		29 = {
			Sensha Dai-%d Shidan
		}
		30 = {
			Sensha Dai-%d Shidan
		}
	}
}
### Entity: Character
Component: FIN_karl_oesch
Constructs: has_government
Source: game
File: common/characters/FIN.txt

Code:
FIN_karl_oesch = {
	name = FIN_karl_oesch
	portraits = {
		army = {
			large = GFX_portrait_FIN_karl_lennart_oesch
			small = GFX_portrait_FIN_karl_oesch_small
		}
	}
	corps_commander = {
		traits = {
			jaeger inflexible_strategist career_officer organizer
		}
		skill = 3
		attack_skill = 2
		defense_skill = 3
		planning_skill = 3
		logistics_skill = 2
		legacy_id = -1
		visible = {
			NOT = {
				has_government = communism
			}
		}
	}
	advisor = {
		slot = high_command
		idea_token = FIN_karl_oesch
		ledger = army
		allowed = {
			original_tag = FIN
		}
		available = {
			NOT = {
				has_government = communism
			}
		}
		traits = {
			army_regrouping_3
		}
		cost = 200
		ai_will_do = {
			base = 1.0
		}
	}
}
### Entity: National Focus
Tree: arg_focus
Component: ARG_banco_central_de_la_republica_argentina
Constructs: has_completed_focus, completion_reward, has_game_rule
Source: game
File: common/national_focus/argentina.txt

Code:
focus = {
	id = ARG_banco_central_de_la_republica_argentina
	icon = GFX_focus_ARG_banco_central_de_la_republica_argentina
	x = 34
	y = 0
	cost = 10
	available = {

	}
	offset = {
		x = -22
		y = 0
		trigger = {
			has_game_rule = {
				rule = obsolete_focus_branches_visibility
				option = HIDE
			}
			has_completed_focus = ARG_the_clean_election
		}
	} {
		x = -34
		y = 0
		trigger = {
			has_game_rule = {
				rule = obsolete_focus_branches_visibility
				option = HIDE
			}
			has_completed_focus = ARG_a_call_to_reform
		}
	}
	ai_will_do = {
		factor = 15
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	completion_reward = {
		custom_effect_tooltip = available_industrial_concern
		show_ideas_tooltip = ARG_banco_central_de_la_republica_argentina_idea
	}
}
### Entity: Modding Documentation
Construct: faction_initiative
Source: vanilla_docs
File: documentation/console_commands_documentation.md

Doc:
## faction_initiative
* Aliases: fi
* Arguments: amount, countrytag

Adds faction initiative to the country, on default it takes the player country if no tag is provided
### Entity: Name List
Component: SEP
Source: game
File: common/names/tymodern_names.txt

Code:
SEP = {
	male = {
		names = {
			Adamantios Alexandros Anastasios Andreas Antonios Aristidis Athanasios Augustinos Benizelos Charalambos Charilaos Dimitrios Diomidis Eleftherios Emmanouil Epameinontas Evripidis Gennaios Georgios Ilias Ionnis Kitsos Konstantinos Kyriakos Kyriakoulis Leonidas Makarios Markos Mikhael Militiadis Nikolaos Odysseas Othon Panagiotis Pavlos Petros Sofoklis Sotiris Spyridion Spyros Staikos Stefanos Stylianos Themistoklis Theodoros Tharyvoulos Tzannis Vasos Viktor Zinovios
		}
	}
	female = {
		names = {
			Alexandra Adriane Adriana Agathe Agatha Agne Agnes Aikaterine Alexeia Anastasia Anastasia Anna Anthe Anthousa Antipatra Antonia Apollonia Athanasia Barbara Basillike Chrysogone Damiane Demetra Dionysia Dorothea Dorothy Aigidia Eirene Irene Elaiodora Epiphania Eudokia Eudocia Eudoxia Eugenia Eulalia Eunike Euphemia Euphrasia Euphrosyne Euphrosyne Eupraxia Eusebia Eustathia Evanthia Gabrielia Garyphallia Georgia Gregoria Helene Helen Ioanna Joan Ioulia Julia Iouliana Juliana Ioustina Justina Kale Konstantia Constantia Konstantine Constantina Kyra Kyriake Hypatia Zoe
		}
	}
	surnames = {
		Altanis Charalambis Christakis-Zografos Danglis Dousmanis Foumis Gonatas Hatzianestis Kallergis Kanaris Katsimiros Kolokotronis Kondylis Kountouriotis Kriezis Makriyannis Manos Mavrocordatos Mavrovouniotis Metaxas Mouskos Nider Othonaios Palaskas Pangalos Papadiamantopoulos Papadopoulos Papagos Papoulas Parakevopouolos Plapoutas Plastiras Sapountzakis Sarafis Smolenskis Sofoulis Soutsos Spyromilios Staikopoulos Stanotas Trikoupis Tsakalotos Tsolakoglou Tzavelas Vassos Venizelos Voulgaris Zaimis Zymvrakakis
	}
	callsigns = {
		Zeus Hera Poseidon Ares Athena Aphrodite Hermes Hades Apollo
	}
}
### Entity: Idea
Component: idea_RAJ_long_range_sea_operations
Constructs: removal_cost
Source: game
File: common/ideas/british_raj_goe.txt

Code:
idea_RAJ_long_range_sea_operations = {
	picture = generic_coastal_defense_ships2
	allowed = {
		original_tag = RAJ
	}
	allowed_civil_war = {
		always = yes
	}
	removal_cost = -1
	modifier = {
		navy_max_range_factor = 0.15
		naval_detection = 0.1
		navy_submarine_detection_factor = 0.1
		navy_screen_defence_factor = 0.1
	}
}
### Entity: Technology
Component: jet_strategic_bomber1
Constructs: is_special_project_completed, enable_equipments, research_cost, is_special_project_tech, has_deployed_air_force_size
Source: game
File: common/technologies/air_techs.txt

Code:
technology = {
	allow = {
		ROOT = {
			is_special_project_completed = sp:sp_air_axial_jet_engine
		}
	}
	enable_equipments = {
		jet_strat_bomber_equipment_1
	}
	research_cost = 2
	start_year = 1950
	folder = {
		name = air_techs_folder
		position = {
			x = 0
			y = 14
		}
	}
	categories = {
		heavy_air jet_technology cat_strategic_bomber mio_cat_all_heavy_aircraft_and_modules
	}
	special_project_specialization = {
		specialization_air
	}
	is_special_project_tech = yes
	ai_will_do = {
		factor = 1
		modifier = {
			has_deployed_air_force_size = {
				size = > 500
				type = strategic_bomber
			}
			factor = 4.5
		}
	}
}
### Entity: Character
Component: XSM_ma_baolin
Constructs: has_dlc
Source: game
File: common/characters/XSM.txt

Code:
XSM_ma_baolin = {
	instance = {
		allowed = {
			has_dlc = No Compromise, No Surrender
		}
		portraits = {
			army = {
				large = GFX_kr_portrait_asia_generic_land_3
				small = GFX_kr_portrait_asia_generic_land_3_small
			}
		}
		name = XSM_ma_baolin
		advisor = {
			slot = high_command
			idea_token = XSM_ma_baolin
			allowed = {
				original_tag = NXM
			}
			traits = {
				army_regrouping_1
			}
			cost = 100
			ai_will_do = {
				factor = 1.0
			}
		}
		corps_commander = {
			traits = {
				cavalry_officer XSM_dubious_loyalty
			}
			skill = 1
			attack_skill = 1
			defense_skill = 1
			planning_skill = 1
			logistics_skill = 1
			legacy_id = -1
		}
	}
}
### Entity: Idea
Component: MAN_hoankyoku_idea
Constructs: removal_cost
Source: game
File: common/ideas/manchukou.txt

Code:
MAN_hoankyoku_idea = {
	allowed = {
		always = no
	}
	removal_cost = -1
	picture = generic_intel_bonus
	modifier = {
		operative_slot = 1
	}
}
### Entity: Character
Component: fighter_producer_offense_0
Constructs: equipment_bonus
Source: game
File: common/country_leader/r56_companies_traits.txt

Code:
fighter_producer_offense_0 = {
	random = no
	equipment_bonus = {
		small_plane_airframe = {
			air_attack = 0.05
			air_agility = 0.05
		}
		cv_small_plane_airframe = {
			air_attack = 0.05
			air_agility = 0.05
		}
		medium_plane_fighter_airframe = {
			air_attack = 0.05
			air_agility = 0.05
		}
	}
	ai_will_do = {
		factor = 1
	}
}
### Entity: Event
Component: SEA_china_democratic.17
Constructs: is_triggered_only, ai_chance, has_completed_focus, has_government, has_war_with, random_hours, create_wargoal, annex_everything
Source: game
File: events/SEA_Nat_China.txt

Code:
country_event = {
	id = SEA_china_democratic.17
	title = SEA_china_democratic.17.t
	desc = SEA_china_democratic.17.desc
	picture = GFX_report_event_chinese_soldiers_running
	is_triggered_only = yes
	option = {
		name = SEA_china_democratic.17.a
		ai_chance = {
			base = 1
			modifier = {
				has_completed_focus = CHI_opposition
				add = 2
			} {
				has_completed_focus = CHI_proclaim_rival_government
				add = 4
			} {
				has_completed_focus = CHI_cooperation_with_the_communists
				add = 1
			} {
				has_completed_focus = CHI_join_the_chinese_soviet
				add = 2.5
			}
		}
		FROM = {
			country_event = {
				id = SEA_china_democratic.19
				hours = 2
				random_hours = 5
			}
		}
		effect_tooltip = {
			FROM = {
				create_wargoal = {
					type = annex_everything
					target = ROOT
					expire = 0
				}
			}
		}
	} {
		name = SEA_china_democratic.17.b
		ai_chance = {
			base = 5
			modifier = {
				OR = {
					has_war_with = FROM
					is_subject = yes
				}
				factor = 0
			} {
				has_completed_focus = CHI_cooperation_with_the_nationalists
				add = 2
			} {
				has_completed_focus = CHI_join_the_republican_government
				add = 2
			} {
				has_government = FROM
				add = 5
			} {
				has_opinion = {
					target = FROM
					value = > 49
				}
				add = 0.5
			} {
				check_variable = {
					FROM.warlord_subjects^num = < 1
				}
				add = 2.5
			} {
				check_variable = {
					FROM.warlord_subjects^num = < 2
				}
				add = 1.5
			} {
				check_variable = {
					FROM.warlord_subjects^num = < 3
				}
				add = 1
			} {
				check_variable = {
					FROM.warlord_subjects^num = < 4
				}
				add = 0.25
			} {
				check_variable = {
					FROM.warlord_subjects^num = > 4
				}
				factor = 0.85
			}
		}
		effect_tooltip = {
			FROM = {
				set_autonomy = {
					target = PREV
					autonomy_state = autonomy_sea_warlord_subject
					freedom_level = 0.8
					end_wars = no
					end_civil_wars = no
				}
			}
		}
		FROM = {
			add_to_array = {
				warlord_subjects = PREV
			}
			country_event = {
				id = SEA_china_democratic.18
				hours = 2
				random_hours = 5
			}
		}
		custom_effect_tooltip = SEA_china_democratic.17.tt
	}
}
### Entity: AI Strategy
Component: EAI_SOV_focus_on_convoys
Constructs: has_war
Source: game
File: common/ai_strategy/SOV_EAI.txt

Code:
EAI_SOV_focus_on_convoys = {
	allowed = {
		tag = SOV
	}
	enable = {
		has_war = no
		stockpile_ratio = {
			archetype = convoy
			ratio = < 400
		}
	}
	abort = {
		NOT = {
			stockpile_ratio = {
				archetype = convoy
				ratio = < 450
			}
		}
	}
	ai_strategy = {
		type = equipment_production_factor
		id = capital_ship
		value = -200
	} {
		type = equipment_production_factor
		id = convoy
		value = 200
	}
}
### Entity: Character
Component: GER_mayor_of_leipzig
Constructs: stability_factor
Source: game
File: common/country_leader/r56_traits.txt

Code:
GER_mayor_of_leipzig = {
	sprite = 13
	random = no
	stability_factor = 0.025
	political_power_factor = 0.075
	consumer_goods_expected_value = -0.02
}
### Entity: Idea
Component: EAI_DD_4/small_plane_suicide_airframe_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_4/small_plane_suicide_airframe_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		small_plane_suicide_airframe = {
			build_cost_ic = -0.04
			instant = yes
		}
	}
}
### Entity: Unit Template
Component: GEO_INF_01
Source: game
File: common/units/names_divisions/GEO_names_divisions.txt

Code:
GEO_INF_01 = {
	name = Infantry Divisions
	for_countries = {
		GEO
	}
	can_use = {
		always = yes
	}
	division_types = {
		infantry
	}
	fallback_name = %dya Gruziyanska Strelkovaya Div.
	ordered = {
		1 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		2 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		3 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		4 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		5 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		6 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		7 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		8 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		9 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		10 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		11 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		12 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		13 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		14 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		15 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		16 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		17 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		18 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		19 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		20 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		21 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		22 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		23 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		24 = {
			%dya Gruziyanska Strelkovaya Div.
		}
		25 = {
			%dya Gruziyanska Strelkovaya Div.
		}
	}
}
### Entity: Scripted Effect
Component: EAI_PRODUCTION_CAS_aircraft_production_strategies
Constructs: limit, has_country_flag, has_deployed_air_force_size, set_country_flag, clr_country_flag
Source: game
File: common/scripted_effects/EAI_PRODUCTION_strategy_effects.txt

Code:
EAI_PRODUCTION_CAS_aircraft_production_strategies = {
	if = {
		limit = {
			EAI_CAS_aircraft_production = yes
		}
		if = {
			limit = {
				has_deployed_air_force_size = {
					size = < 10000
					type = cas
				}
			}
			if = {
				limit = {
					NOT = {
						has_country_flag = EAI_CAS_aircraft_production_strategy
					}
				}
				set_country_flag = EAI_CAS_aircraft_production_strategy
			}
		}
		else_if = {
			limit = {
				has_deployed_air_force_size = {
					size = > 15000
					type = cas
				}
			}
			if = {
				limit = {
					has_country_flag = EAI_CAS_aircraft_production_strategy
				}
				clr_country_flag = EAI_CAS_aircraft_production_strategy
			}
		}
	}
	else_if = {
		limit = {
			has_country_flag = EAI_CAS_aircraft_production_strategy
		}
		clr_country_flag = EAI_CAS_aircraft_production_strategy
	}
}
### Entity: National Focus
Tree: est_focus
Component: EST_sieze_swedish_assets
Constructs: prerequisite, has_government, completion_reward, is_subject, is_subject_of, cancel_if_invalid, create_wargoal, annex_everything
Source: game
File: common/national_focus/estonia.txt

Code:
focus = {
	id = EST_sieze_swedish_assets
	icon = GFX_focus_generic_attack_sweden
	prerequisite = {
		focus = EST_finno_estonian_supremacy_league
	}
	x = -1
	y = 1
	relative_position_id = EST_finno_estonian_supremacy_league
	will_lead_to_war_with = SWE
	cost = 10
	ai_will_do = {
		factor = 1
	}
	available = {
		has_government = fascism
		is_subject = no
	}
	bypass = {
		SWE = {
			OR = {
				exists = no
				is_subject_of = EST
			}
		}
	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	search_filters = {
		FOCUS_FILTER_POLITICAL FOCUS_FILTER_ANNEXATION
	}
	completion_reward = {
		create_wargoal = {
			type = annex_everything
			target = SWE
		}
	}
}
### Entity: AI Strategy
Component: EAI_BUILDING_construction_CIC_56
Constructs: has_country_flag
Source: game
File: common/ai_strategy/EAI_BUILDING_construction_strategies.txt

Code:
EAI_BUILDING_construction_CIC_56 = {
	enable = {
		has_country_flag = {
			flag = EAI_BUILDING_build_num_CIC
			value = 56
		}
	}
	abort_when_not_enabled = yes
	ai_strategy = {
		type = building_target
		id = industrial_complex
		value = 56
	}
}
### Entity: Scripted Effect
Component: FIN_pact_for_continuation_war_start
Constructs: limit, give_military_access, has_non_aggression_pact_with, has_guaranteed, give_guarantee
Source: game
File: common/scripted_effects/FIN_scripted_effects.txt

Code:
FIN_pact_for_continuation_war_start = {
	FIN = {
		if = {
			limit = {
				NOT = {
					gives_military_access_to = GER
				}
			}
			give_military_access = GER
		} {
			limit = {
				NOT = {
					has_non_aggression_pact_with = GER
				}
			}
			diplomatic_relation = {
				country = GER
				relation = non_aggression_pact
				active = yes
			}
		}
		diplomatic_relation = {
			country = GER
			relation = docking_rights
			active = yes
		}
	}
	if = {
		limit = {
			GER = {
				NOT = {
					has_guaranteed = FIN
				}
			}
		}
		GER = {
			give_guarantee = FIN
		}
	}
}
### Entity: National Focus
Tree: fin_focus
Component: FIN_enhance_southern_infrastructure
Constructs: has_completed_focus, limit, completion_reward, has_dlc, has_game_rule, has_full_control_of_state, add_extra_state_shared_building_slots, add_building_construction
Source: game
File: common/national_focus/finland.txt

Code:
focus = {
	id = FIN_enhance_southern_infrastructure
	icon = GFX_goal_generic_construct_infrastructure
	x = 13
	y = 0
	relative_position_id = FIN_right_wing_policies
	offset = {
		x = -14
		y = 0
		trigger = {
			OR = {
				NOT = {
					has_dlc = Arms Against Tyranny
				}
				AND = {
					has_game_rule = {
						rule = obsolete_focus_branches_visibility
						option = HIDE
					}
					has_completed_focus = FIN_finnish_neutrality
				}
			}
		}
	} {
		x = -27
		y = 0
		trigger = {
			has_game_rule = {
				rule = obsolete_focus_branches_visibility
				option = HIDE
			}
			has_completed_focus = FIN_suomalainen_sosialismi
		}
	}
	cost = 10
	available = {
		has_full_control_of_state = 111 926
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY
	}
	completion_reward = {
		111 = {
			add_extra_state_shared_building_slots = 1
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		}
		926 = {
			add_extra_state_shared_building_slots = 1
			add_building_construction = {
				type = infrastructure
				level = 1
				instant_build = yes
			}
		}
		build_railway = {
			path = {
				3083 9194 11211 6108 11105
			}
		}
		if = {
			limit = {
				has_full_control_of_state = 927
			}
			927 = {
				add_extra_state_shared_building_slots = 1
				add_building_construction = {
					type = infrastructure
					level = 1
					instant_build = yes
				} {
					type = supply_node
					level = 1
					province = 3137
					instant_build = yes
				}
			}
			build_railway = {
				path = {
					11105 9129 11172 3025 3137 9167
				}
			}
		} {
			limit = {
				has_full_control_of_state = 928
			}
			928 = {
				add_extra_state_shared_building_slots = 1
				add_building_construction = {
					type = infrastructure
					level = 1
					instant_build = yes
				} {
					type = supply_node
					level = 1
					province = 3061
					instant_build = yes
				}
			}
			if = {
				limit = {
					has_full_control_of_state = 930 927
				}
				build_railway = {
					path = {
						11105 9129 6144 9167 67 9073 9183 3061
					}
				} {
					path = {
						11105 6009 204 3161 3061
					}
				}
			} {
				limit = {
					controls_province = 9206
				}
				build_railway = {
					path = {
						9183 11056 6082 9206
					}
				}
			}
			else = {
				build_railway = {
					path = {
						11105 9129 6144 6009 204 9183 3061
					}
				}
			}
		} {
			limit = {
				has_full_cont
# ... (truncated)
### Entity: Scripted Effect
Component: EAI_LAW_upgrade
Constructs: limit, has_country_flag
Source: game
File: common/scripted_effects/EAI_COUNTRY_law_effects.txt

Code:
EAI_LAW_upgrade = {
	EAI_LAW_upgrade_economy_law = yes
	if = {
		limit = {
			EAI_LAW_upgrade_special_prio = yes
		}
		EAI_LAW_upgrade_conscription_law = yes
		if = {
			limit = {
				NOT = {
					has_country_flag = EAI_trade_law_recently_changed
				}
			}
			EAI_LAW_upgrade_trade_law = yes
		}
	}
}
### Entity: Idea
Component: EAI_HARD/light_tank_artillery_chassis_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_HARD/light_tank_artillery_chassis_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		light_tank_artillery_chassis = {
			build_cost_ic = -0.15
			instant = yes
		}
	}
}
### Entity: Character
Component: HAI_raymond_gassner
Source: game
File: common/characters/HAI.txt

Code:
HAI_raymond_gassner = {
	advisor = {
		slot = navy_chief
		idea_token = HAI_raymond_gassner
		allowed = {
			original_tag = HAI
		}
		traits = {
			navy_chief_commerce_raiding_2
		}
		cost = 100
		ai_will_do = {
			factor = 1.0
		}
	}
	name = Raymond Gassner
	portraits = {
		army = {
			small = GFX_idea_generic_navy_african_2
		}
	}
}
### Entity: Event
Component: kmt.148
Constructs: is_triggered_only, ai_chance, add_opinion_modifier, create_wargoal, take_state_focus
Source: game
File: events/r56_KMT_events.txt

Code:
country_event = {
	id = kmt.148
	title = kmt.148.t
	desc = kmt.148.d
	picture = GFX_report_event_japan_europe_pact
	is_triggered_only = yes
	option = {
		ai_chance = {
			base = 80
		}
		name = kmt.148.a
		event_target:TAG_trying_to_get_the_port = {
			transfer_state = 326
			add_opinion_modifier = {
				target = ROOT
				modifier = hk_returned_tp
			}
			country_event = {
				id = kmt.151
			}
		}
		diplomatic_relation = {
			country = event_target:TAG_trying_to_get_the_port
			relation = non_aggression_pact
		}
		add_opinion_modifier = {
			target = event_target:TAG_trying_to_get_the_port
			modifier = hk_returned_tp
		}
	} {
		ai_chance = {
			base = 20
		}
		name = kmt.148.b
		event_target:TAG_trying_to_get_the_port = {
			add_opinion_modifier = {
				target = ROOT
				modifier = hk_kept_tp
			}
			country_event = {
				id = kmt.152
			}
		}
		effect_tooltip = {
			event_target:TAG_trying_to_get_the_port = {
				create_wargoal = {
					target = ROOT
					type = take_state_focus
					expire = 0
				}
			}
		}
	}
}