Losa10/PreTrain-HOI4-Modding-Assistant huggingface dataset:
### Entity: Order of Battle
Component: Frente Única de Maracaju
Constructs: division_template
Source: game
File: history/units/BRA_cohen.txt

Code:
division = {
	name = Frente Única de Maracaju
	location = 10980
	division_template = Divisão de Cavalaria 3
	start_experience_factor = 0.5
	start_equipment_factor = 1
}
### Entity: Idea
Component: PRC_maoism
Constructs: removal_cost, equipment_bonus, build_cost_ic
Source: game
File: common/ideas/comchina.txt

Code:
PRC_maoism = {
	picture = generic_infantry_bonus
	allowed = {
		original_tag = PRC
	}
	removal_cost = -1
	equipment_bonus = {
		infantry_equipment = {
			build_cost_ic = -0.1
			instant = yes
		}
	}
}
### Entity: National Focus
Tree: bul_focus
Component: BUL_guardians_of_the_balkans
Constructs: prerequisite, limit, add_ideas, remove_ideas, completion_reward, is_subject, every_other_country, is_in_faction_with
Source: game
File: common/national_focus/bulgaria.txt

Code:
focus = {
	id = BUL_guardians_of_the_balkans
	prerequisite = {
		focus = BUL_nationalist_propaganda
	}
	icon = GFX_focus_BUL_guardians_of_the_balkans
	relative_position_id = BUL_nationalist_propaganda
	x = 0
	y = 1
	cost = 10
	available = {
		is_subject = no
	}
	completion_reward = {
		hidden_effect = {
			every_other_country = {
				limit = {
					any_controlled_state = {
						BUL_is_balkan_state = yes
					}
					NOT = {
						is_in_faction_with = ROOT
					} {
						is_guaranteed_by = ROOT
					} {
						has_non_aggression_pact_with = ROOT
					}
				}
				ROOT = {
					create_wargoal = {
						type = puppet_wargoal_focus
						target = PREV
					}
				}
			}
		}
		custom_effect_tooltip = BUL_guardians_of_the_balkans_wargoal_tt
		every_other_country = {
			limit = {
				any_controlled_state = {
					BUL_is_balkan_state = yes
				}
				NOT = {
					is_in_faction_with = ROOT
				} {
					is_guaranteed_by = ROOT
				} {
					has_non_aggression_pact_with = ROOT
				}
			}
		}
		if = {
			limit = {
				has_idea = BUL_the_fate_of_the_balkans
			}
			remove_ideas = BUL_the_fate_of_the_balkans
		} {
			limit = {
				num_subjects = > 0
				any_country = {
					is_subject_of = ROOT
					BUL_is_balkan_nation = yes
				}
			}
			every_other_country = {
				limit = {
					is_subject_of = ROOT
					BUL_is_balkan_nation = yes
				}
				add_ideas = BUL_defender_of_the_balkans
			}
		}
		else = {
			custom_effect_tooltip = BUL_guardians_of_the_balkans_remove_ns_tt
		} {
			custom_effect_tooltip = BUL_guardians_of_the_balkans_subject_ns_tt
			effect_tooltip = {
				add_ideas = BUL_defender_of_the_balkans
			}
		}
		add_ideas = BUL_guardians_of_the_balkans
	}
}
### Entity: Idea
Component: EAI_DD_12/super_heavy_tank_chassis_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_12/super_heavy_tank_chassis_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		super_heavy_tank_chassis = {
			build_cost_ic = -0.3
			instant = yes
		}
	}
}
### Entity: National Focus
Tree: bhu_focus
Component: BHU_fledgeling_industry
Constructs: prerequisite, limit, completion_reward, random_owned_controlled_state, is_in_home_area, add_extra_state_shared_building_slots, add_building_construction
Source: game
File: common/national_focus/bhutan.txt

Code:
focus = {
	id = BHU_fledgeling_industry
	icon = GFX_focus_generic_industry_2
	prerequisite = {
		focus = BHU_reform_the_taxation_system
	} {
		focus = BHU_utilize_our_forests
	}
	relative_position_id = BHU_reform_the_taxation_system
	x = -1
	y = 1
	cost = 8
	ai_will_do = {
		factor = 4
	}
	completion_reward = {
		random_owned_controlled_state = {
			limit = {
				free_building_slots = {
					building = industrial_complex
					size = > 0
					include_locked = yes
				}
				OR = {
					is_in_home_area = yes
					NOT = {
						owner = {
							any_owned_state = {
								free_building_slots = {
									building = industrial_complex
									size = > 0
									include_locked = yes
								}
								is_in_home_area = yes
							}
						}
					}
				}
			}
			add_extra_state_shared_building_slots = 1
			add_building_construction = {
				type = industrial_complex
				level = 1
				instant_build = yes
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_HISTORICAL
	}
}
### Entity: National Focus
Tree: ger_focus
Component: GER_establish_volkskommissariats
Constructs: prerequisite, completion_reward, add_political_power, is_subject
Source: game
File: common/national_focus/germany.txt

Code:
focus = {
	id = GER_establish_volkskommissariats
	icon = GFX_focus_GER_establish_volkskommissariats
	prerequisite = {
		focus = GER_protect_the_revolution
	}
	x = 0
	y = 1
	relative_position_id = GER_protect_the_revolution
	cost = 5
	available = {
		is_subject = no
		num_subjects = > 0
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
	completion_reward = {
		add_political_power = 100
		custom_effect_tooltip = GER_establish_volkskommissariats_tt
	}
}
### Entity: AI Strategy
Component: EAI_PROD_EQUIP_FACTOR_medium_tank_chassis_FOCUS
Constructs: is_major, has_equipment
Source: game
File: common/ai_strategy/EAI_PRODUCTION_equipment_strategies.txt

Code:
EAI_PROD_EQUIP_FACTOR_medium_tank_chassis_FOCUS = {
	enable = {
		has_equipment = {
			medium_tank_chassis = < 1000
		}
		is_major = yes
		EAI_armor_tech_focus = yes
		EAI_MARM_equipment_production = yes
	}
	abort = {
		NOT = {
			AND = {
				has_equipment = {
					medium_tank_chassis = < 2000
				}
				is_major = yes
				EAI_armor_tech_focus = yes
				EAI_MARM_equipment_production = yes
			}
		}
	}
	ai_strategy = {
		type = equipment_variant_production_factor
		id = medium_tank_chassis
		value = 100
	} {
		type = equipment_production_surplus_management
		id = medium_tank_chassis
		value = 5
	}
}
### Entity: Modifier Reference
Construct: convoy_escort_efficiency
Source: vanilla_docs
File: documentation/modifiers_documentation.md

Doc:
## convoy_escort_efficiency

* Number with 1 decimal places
* **Categories**: naval, unit_leader, defensive
### Entity: Unit Template
Component: HUN_CA_IMPERIAL
Constructs: has_cosmetic_tag
Source: game
File: common/units/names_ships/HUN_ship_names.txt

Code:
HUN_CA_IMPERIAL = {
	name = NAME_THEME_IMPERIAL_CA
	for_countries = {
		AUS CZE CRO HUN
	}
	can_use = {
		has_cosmetic_tag = HUN_EMPIRE
	}
	type = ship
	ship_types = {
		ship_hull_cruiser heavy_cruiser
	}
	prefix = SMS 
	fallback_name = Nehézcirkálo %d
	unique = {
		Sankt Georg Helgoland Saida Admiral Spaun Szigetvár Aspern Zenta Leopard Panther Kaiserin Königin Löwe Tiger Kronprinz Kronprinzessin Kaiser Max
	}
}
### Entity: Scripted Trigger
Component: chi_is_soviet_warlord
Constructs: has_completed_focus, has_government, is_subject_of, is_in_faction_with, is_faction_leader, is_in_faction, has_country_leader
Source: game
File: common/scripted_triggers/r56_chinese_gui_scripted_triggers.txt

Code:
chi_is_soviet_warlord = {
	custom_trigger_tooltip = {
		tooltip = Is Soviet-Aligned
		CONTROLLER = {
			OR = {
				tag = SOV
				is_subject_of = SOV
				is_in_faction_with = SOV
				has_completed_focus = CHI_request_official_recognition
				AND = {
					tag = SIK
					has_government = communism
					NOT = {
						is_in_faction_with = CHI JAP
					}
					OR = {
						AND = {
							is_in_faction_with = PRC
							PRC = {
								is_faction_leader = yes
							}
						}
						is_in_faction_with = SOV
						is_in_faction = no
					}
					has_country_leader = {
						character = SIK_sheng_shicai
						ruling_only = yes
					}
				} {
					tag = MEN
					OR = {
						is_in_faction_with = SOV
						is_subject_of = SOV
						AND = {
							has_government = communism
							OR = {
								has_completed_focus = MEN_reach_out_to_the_soviets MEN_join_the_comintern
							}
							NOT = {
								has_completed_focus = MEN_favour_the_cooperationists MEN_loyalty_to_the_maoists
							}
						}
					}
				}
			}
		}
	}
}
### Entity: National Focus
Tree: lux_focus
Component: LUX_request_german_funding
Constructs: prerequisite, completion_reward, add_timed_idea, unlock_decision_tooltip, add_power_balance_value
Source: game
File: common/national_focus/r56_luxembourg.txt

Code:
focus = {
	id = LUX_request_german_funding
	icon = GFX_focus_chi_mission_to_germany
	cost = 5
	x = 1
	y = 1
	relative_position_id = LUX_found_lnp
	prerequisite = {
		focus = LUX_found_lnp
	}
	completion_reward = {
		add_timed_idea = {
			idea = r56_LUX_german_funding
			days = 365
		}
		custom_effect_tooltip = generic_skip_one_line_tt generic_skip_one_line_tt
		unlock_decision_tooltip = LUX_fascist_balance_additional_funding
		add_power_balance_value = {
			id = LUX_fascist_balance
			value = 0.1
		}
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL FOCUS_FILTER_INDUSTRY
	}
}
### Entity: Effect Reference
Construct: modify_character_flag
Source: vanilla_docs
File: documentation/effects_documentation.md

Doc:
## modify_character_flag

* Supported Scopes: CHARACTER
* Supported Targets: none

```
modify character flag. Only modifies if flag already exists.
Example: _modify_character_flag_ = { flag = <name> value = <number> }
```
### Entity: Event
Component: GER_operation_panzerfaust_events.04
Constructs: is_triggered_only, ai_chance, remove_from_faction, declare_war_on, puppet_wargoal_focus, random_list
Source: game
File: events/WUW_Germany.txt

Code:
country_event = {
	id = GER_operation_panzerfaust_events.04
	title = GER_operation_panzerfaust_events.04.t
	desc = GER_operation_panzerfaust_events.04.desc
	picture = GFX_report_event_generic_read_write
	is_triggered_only = yes
	option = {
		name = GER_operation_panzerfaust_events.04.a
		ai_chance = {
			base = 0
		}
		remove_from_faction = FROM
		declare_war_on = {
			target = FROM
			type = puppet_wargoal_focus
		}
		FROM = {
			country_event = {
				id = GER_operation_panzerfaust_events.05
				hours = 1
			}
		}
	} {
		name = GER_operation_panzerfaust_events.04.b
		ai_chance = {
			base = 100
		}
		FROM = {
			country_event = {
				id = GER_operation_panzerfaust_events.06
				hours = 12
			}
		}
	} {
		name = GER_operation_panzerfaust_events.04.c
		ai_chance = {
			base = 0
		}
		random_list = {
			50 = {
				country_event = {
					id = GER_operation_panzerfaust_events.07
					days = 6
				}
			} {
				country_event = {
					id = GER_operation_panzerfaust_events.08
					days = 6
				}
			}
		}
	}
}
### Entity: Event
Component: r56_afghanistan.84
Constructs: is_triggered_only, limit, has_government, has_war_with, is_major, add_opinion_modifier, fire_only_once, has_idea
Source: game
File: events/r56_afghanistan.txt

Code:
country_event = {
	id = r56_afghanistan.84
	title = r56_afghanistan.84.t
	desc = r56_afghanistan.84.d
	picture = GFX_report_event_AFG_subbhas_chandra_bose_escape_report
	fire_only_once = yes
	is_triggered_only = yes
	trigger = {
		RAJ = {
			NOT = {
				has_government = communism fascism
			} {
				has_idea = RAJ_subhas_chanda_bose
				has_country_leader = {
					character = RAJ_subhas_chanda_bose
					ruling_only = yes
				}
			}
		}
	}
	option = {
		name = r56_afghanistan.84.a
		RAJ = {
			add_opinion_modifier = {
				target = THIS
				modifier = AFG_RAJ_sent_bose
			}
			add_ai_strategy = {
				type = befriend
				id = AFG
				value = 25
			} {
				type = declare_war
				id = AFG
				value = -25
			}
			hidden_effect = {
				country_event = {
					id = r56_afghanistan.85
					days = 2
					random_hours = 12
				}
			}
		}
	} {
		name = r56_afghanistan.84.b
		hidden_effect = {
			every_other_country = {
				limit = {
					is_major = yes
					has_capitulated = no
					OR = {
						original_tag = GER JAP CHI ITA SOV FRA USA
					}
					has_war_with = RAJ
					NOT = {
						has_government = democratic
					}
				}
				country_event = {
					id = r56_afghanistan.83
					days = 30
					random_days = 14
				}
			}
		}
	}
}
### Entity: National Focus
Tree: swi_focus
Component: SWI_air_inno
Constructs: prerequisite, limit, completion_reward, is_in_faction_with, add_tech_bonus, add_doctrine_cost_reduction
Source: game
File: common/national_focus/r56_switzerland.txt

Code:
focus = {
	id = SWI_air_inno
	icon = GFX_goal_generic_air_fighter2
	cost = 10
	ai_will_do = {
		factor = 3
	}
	prerequisite = {
		focus = SWI_italian_tech SWI_ger_tech
	}
	available = {
		OR = {
			is_in_faction_with = GER ITA
		}
	}
	available_if_capitulated = yes
	x = 18
	y = 6
	completion_reward = {
		if = {
			limit = {
				is_in_faction_with = GER
			}
			add_tech_bonus = {
				name = SWI_air_inno
				bonus = 1
				ahead_reduction = -0.75
				uses = 2
				category = air_equipment
			}
		} {
			limit = {
				is_in_faction_with = ITA
			}
			add_doctrine_cost_reduction = {
				name = SWI_air_inno
				cost_reduction = 0.5
				uses = 3
				category = air_doctrine
			}
		}
	}
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
}
### Entity: Idea
Component: EAI_DD_19/light_tank_aa_chassis_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_19/light_tank_aa_chassis_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		light_tank_aa_chassis = {
			build_cost_ic = -0.475
			instant = yes
		}
	}
}
### Entity: National Focus
Tree: que_focus
Component: QUE_the_union_nationale_wins
Constructs: prerequisite, has_government, completion_reward, is_subject, set_party_name, set_politics, swap_ideas, add_idea
Source: game
File: common/national_focus/quebec.txt

Code:
focus = {
	id = QUE_the_union_nationale_wins
	icon = GFX_goal_generic_political
	prerequisite = {
		focus = QUE_trust_in_democracy
	}
	relative_position_id = QUE_trust_in_democracy
	x = 2
	y = 1
	cost = 5
	mutually_exclusive = {
		focus = QUE_liberal_in_charge
	}
	available = {
		has_government = democratic
		OR = {
			is_subject = no
			OVERLORD = {
				OR = {
					has_government = democratic neutrality
				}
			}
		}
	}
	available_if_capitulated = yes
	ai_will_do = {
		factor = 8
	}
	completion_reward = {
		promote_character = {
			character = QUE_maurice_duplessis
			ideology = conservatism
		}
		set_party_name = {
			ideology = democratic
			long_name = QUE_democratic_party_alternate_long
			name = QUE_democratic_party_alternate
		}
		set_politics = {
			ruling_party = democratic
			elections_allowed = yes
			last_election = 1935.12.17
			election_frequency = 48
		}
		swap_ideas = {
			add_idea = QUE_liberal_legacy_3
			remove_idea = QUE_liberal_legacy
		}
		custom_effect_tooltip = QUE_party2
	}
	search_filters = {
		FOCUS_FILTER_POLITICAL
	}
}
### Entity: Event
Component: bftb_greece.11
Constructs: has_country_flag, fire_only_once, set_country_flag, clr_country_flag
Source: game
File: events/BFTB_Greece.txt

Code:
country_event = {
	id = bftb_greece.11
	title = bftb_greece.11.t
	desc = bftb_greece.11.desc
	picture = GFX_report_event_gre_athens
	fire_only_once = yes
	trigger = {
		original_tag = GRE
		has_country_flag = GRE_italy_attending_convention
		NOT = {
			has_country_flag = GRE_britain_attending_convention
		} {
			has_country_flag = GRE_france_attending_convention
		}
	}
	mean_time_to_happen = {
		days = 7
	}
	option = {
		name = bftb_greece.11.a
		hidden_effect = {
			set_country_flag = GRE_megali_convention_a_failure
			clr_country_flag = GRE_italy_attending_convention
			ITA = {
				clr_country_flag = GRE_italy_attending_convention
			}
		}
	}
}
### Entity: Scripted Trigger
Component: EAI_land_doctrine_right_path
Constructs: check_variable, has_global_flag, has_variable
Source: game
File: common/scripted_triggers/EAI_MILITARY_FOCUS_land_triggers.txt

Code:
EAI_land_doctrine_right_path = {
	OR = {
		check_variable = {
			EAI_FOCUS/LAND/land_doctrine_path = global.EAI_RIGHT_PATH
		} {
			EAI_FOCUS/LAND/land_doctrine_path_OVERRIDE = global.EAI_RIGHT_PATH
		}
		AND = {
			OR = {
				EAI_Land_Doctrine_Right_Path_Focus_PRESET = yes
				has_global_flag = EAI_random_focuses
			}
			NOT = {
				has_variable = EAI_FOCUS/LAND/land_doctrine_path EAI_FOCUS/LAND/land_doctrine_path_OVERRIDE
			}
		}
	}
}
### Entity: National Focus
Tree: bra_focus
Component: BRA_R56_national_petroleum_council
Constructs: prerequisite, completion_reward, has_tech, add_resource
Source: game
File: common/national_focus/r56_brazil.txt

Code:
focus = {
	id = BRA_R56_national_petroleum_council
	icon = GFX_goal_generic_oil_refinery
	prerequisite = {
		focus = BRA_R56_lobato
	}
	relative_position_id = BRA_R56_lobato
	x = 0
	y = 1
	cost = 5
	available = {
		has_tech = excavation2
		controls_state = 499
	}
	completion_reward = {
		add_resource = {
			type = oil
			amount = 6
			state = 499
		}
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_OIL
	}
}
### Entity: Order of Battle
Component: Royal Tank Regiment
Constructs: division_template, force_equipment_variants
Source: game
File: history/units/ENG_1936_nsb.txt

Code:
division = {
	name = Royal Tank Regiment
	location = 9239
	division_template = Tank Brigade
	start_experience_factor = 0.3
	force_equipment_variants = {
		light_tank_chassis_1 = {
			owner = ENG
			version_name = Light Tank Mk. IV
		}
	}
}
### Entity: Scripted Trigger
Component: DEN_improved_designer
Source: game
File: common/scripted_triggers/DEN_scripted_triggers.txt

Code:
DEN_improved_designer = {
	custom_trigger_tooltip = {
		tooltip = DEN_improved_designer_tt
		hidden_trigger = {
			always = yes
		}
	}
}
### Entity: Joint Focus
Component: CONGO_expanded_rubber_plantations
Constructs: prerequisite, limit, joint_focus, has_war_with, completion_reward, is_subject_of, is_ally_with, has_global_flag
Source: game
File: common/national_focus/congo_shared.txt

Code:
joint_focus = {
	id = CONGO_expanded_rubber_plantations
	dynamic = yes
	icon = GFX_focus_generic_rubber
	prerequisite = {
		focus = CONGO_rubber_plantations
	}
	relative_position_id = CONGO_jungle_industry
	x = 0
	y = 2
	cost = 10
	text_icon = CONGO_BEL_COG_focus_style
	joint_trigger = {
		CONGO_is_a_congo_viable_nation = yes
	}
	search_filters = {
		FOCUS_FILTER_INDUSTRY FOCUS_FILTER_HISTORICAL FOCUS_FILTER_TFV_AUTONOMY
	}
	available = {
		OR = {
			AND = {
				original_tag = BEL
				BEL = {
					any_subject_country = {
						original_tag = COG
					}
				}
			} {
				original_tag = COG
				COG = {
					is_subject_of = BEL
				}
			}
		}
		custom_trigger_tooltip = {
			tooltip = CONGO_jungle_industry_available_tt
			OR = {
				538 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				718 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				890 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				888 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				889 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				295 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				772 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				539 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				773 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
				297 = {
					state_is_fully_controlled_by_ROOT_or_subject = yes
				}
			}
		} {
			tooltip = CONGO_expanded_rubber_plantations_available_tt
			any_country = {
				has_war_with = ROOT
				AND = {
					OR = {
						controls_state = 671
						any_country = {
							OR = {
								is_subject_of = PREV
								is_ally_with = PREV
							}
							controls_state = 671
						}
					} {
						controls_state = 286
						any_country = {
							OR = {
								is_subject_of = PREV
								is_ally_with = PREV
							}
							controls_state = 286
						}
					} {
						controls_state = 670
						any_country = {
							OR = {
								is_subject_of = PREV
								is_ally_with = PREV
							}
							controls_state = 670
						}
					} {
						controls_state = 741
						any_country = {
							OR = {
								is_subject_of = PREV
								is_ally_with = PREV
							}
							controls_state = 741
						}
					} {
						controls_state = 1017
						any_country = {
							OR = {
								is_subject_of = PREV
# ... (truncated)
### Entity: Idea
Component: EAI_DD_7/anti_air_equipment_bonus
Constructs: equipment_bonus, build_cost_ic
Source: game
File: common/ideas/EAI_difficulty_ideas.txt

Code:
EAI_DD_7/anti_air_equipment_bonus = {
	allowed = {
		always = no
	}
	equipment_bonus = {
		anti_air_equipment = {
			build_cost_ic = -0.175
			instant = yes
		}
	}
}
### Entity: Scripted Effect
Component: EAI_RELATIONS_enabled
Constructs: limit, set_temp_variable
Source: game
File: common/scripted_effects/EAI_COUNTRY_improve_relations.txt

Code:
EAI_RELATIONS_enabled = {
	set_temp_variable = {
		EAI_RELATIONS_enabled = 0
	}
	if = {
		limit = {
			set_temp_variable = {
				_check_pp = 15
			}
			EAI_PP_has_check_pp = yes
		}
		set_temp_variable = {
			EAI_RELATIONS_enabled = 1
		}
	}
}
### Entity: National Focus
Tree: swe_focus
Component: SWE_the_barrel
Constructs: prerequisite, completion_reward, cancel_if_invalid, add_breakthrough_progress, add_tech_bonus
Source: game
File: common/national_focus/sweden.txt

Code:
focus = {
	id = SWE_the_barrel
	icon = GFX_focus_SWE_the_barrel
	x = -1
	y = 1
	cost = 10
	prerequisite = {
		focus = SWE_airforce_modernization
	}
	relative_position_id = SWE_airforce_modernization
	mutually_exclusive = {
		focus = SWE_rockets
	}
	ai_will_do = {
		factor = 10
	}
	available = {

	}
	bypass = {

	}
	cancel_if_invalid = yes
	continue_if_invalid = no
	available_if_capitulated = no
	search_filters = {
		FOCUS_FILTER_RESEARCH
	}
	completion_reward = {
		add_breakthrough_progress = {
			specialization = specialization_air
			value = 0.75
		}
		add_tech_bonus = {
			bonus = 1
			uses = 2
			category = jet_technology
			name = SWE_the_barrel
		}
	}
}
### Entity: Modifier Reference
Component: FIN_finnish_airforce
Source: game
File: common/dynamic_modifiers/aat_dynamic_modifiers.txt

Code:
FIN_finnish_airforce = {
	enable = {
		always = yes
	}
	icon = GFX_idea_FIN_finnish_airforce
	experience_gain_air_factor = FIN_finnish_airforce_experience_gain_air_factor
	air_weather_penalty = FIN_finnish_airforce_air_weather_penalty
	air_untrained_pilots_penalty_factor = FIN_finnish_airforce_air_untrained_pilots_penalty_factor
	air_spirit_category_type_cost_factor = FIN_finnish_airforce_air_spirit_category_type_cost_factor
	custom_modifier_tooltip = FIN_finnish_airforce_dynamic_modifier_tt
	air_ace_generation_chance_factor = FIN_finnish_airforce_air_ace_generation_chance_factor
	air_home_defence_factor = FIN_finnish_airforce_air_home_defence_factor
	ace_effectiveness_factor = FIN_finnish_airforce_ace_effectiveness_factor
	air_mission_efficiency = FIN_finnish_airforce_air_mission_efficiency
	naval_strike_targetting_factor = FIN_finnish_airforce_naval_strike_targetting_factor
	air_cas_efficiency = FIN_finnish_airforce_air_cas_efficiency
	air_superiority_efficiency = FIN_finnish_airforce_air_superiority_efficiency
}