﻿# EOTM scripted effects: inheritance profile storage and display helpers
#
# Public terminology:
# - Focused uses the stable internal one_way/profile value 1.
# - Harmonious uses the stable internal balanced/profile value 2.
# - Curious uses the stable internal random/profile value 3.
#
# These helpers intentionally preserve eotm_inheritance_profile values and
# eotm_profile_* trait keys for save compatibility.

eotm_remove_inheritance_profile_traits = {
	if = {
		limit = { has_trait = eotm_profile_one_way }
		remove_trait = eotm_profile_one_way
	}
	if = {
		limit = { has_trait = eotm_profile_balanced }
		remove_trait = eotm_profile_balanced
	}
	if = {
		limit = { has_trait = eotm_profile_random }
		remove_trait = eotm_profile_random
	}
}

eotm_apply_inheritance_profile_display = {
	if = {
		limit = { eotm_character_has_multiple_profiles_trigger = yes }
		# Multiple visible profile traits are repair-needed; do not silently mutate.
		hidden_effect = { }
	}
	else_if = {
		limit = { eotm_child_has_one_way_profile = yes }
		if = { limit = { has_trait = eotm_profile_balanced } remove_trait = eotm_profile_balanced }
		if = { limit = { has_trait = eotm_profile_random } remove_trait = eotm_profile_random }
		if = {
			limit = { NOT = { has_trait = eotm_profile_one_way } }
			add_trait = eotm_profile_one_way
		}
	}
	else_if = {
		limit = { eotm_child_has_balanced_profile = yes }
		if = { limit = { has_trait = eotm_profile_one_way } remove_trait = eotm_profile_one_way }
		if = { limit = { has_trait = eotm_profile_random } remove_trait = eotm_profile_random }
		if = {
			limit = { NOT = { has_trait = eotm_profile_balanced } }
			add_trait = eotm_profile_balanced
		}
	}
	else_if = {
		limit = { eotm_child_has_random_profile = yes }
		if = { limit = { has_trait = eotm_profile_one_way } remove_trait = eotm_profile_one_way }
		if = { limit = { has_trait = eotm_profile_balanced } remove_trait = eotm_profile_balanced }
		if = {
			limit = { NOT = { has_trait = eotm_profile_random } }
			add_trait = eotm_profile_random
		}
	}
	else = {
		hidden_effect = { }
	}
}

eotm_clear_inheritance_profile = {
	remove_variable = eotm_inheritance_profile
	eotm_remove_inheritance_profile_traits = yes
}

eotm_sync_inheritance_profile_variable_from_single_trait = {
	if = {
		limit = {
			NOT = { eotm_character_has_multiple_profiles_trigger = yes }
			has_trait = eotm_profile_one_way
		}
		set_variable = {
			name = eotm_inheritance_profile
			value = 1
		}
	}
	else_if = {
		limit = {
			NOT = { eotm_character_has_multiple_profiles_trigger = yes }
			has_trait = eotm_profile_balanced
		}
		set_variable = {
			name = eotm_inheritance_profile
			value = 2
		}
	}
	else_if = {
		limit = {
			NOT = { eotm_character_has_multiple_profiles_trigger = yes }
			has_trait = eotm_profile_random
		}
		set_variable = {
			name = eotm_inheritance_profile
			value = 3
		}
	}
}

eotm_assign_inheritance_profile_one_way = {
	eotm_clear_inheritance_profile = yes
	set_variable = {
		name = eotm_inheritance_profile
		value = 1
	}
	if = {
		limit = { NOT = { has_trait = eotm_profile_one_way } }
		add_trait = eotm_profile_one_way
	}
	hidden_effect = { }
}

eotm_assign_inheritance_profile_balanced = {
	eotm_clear_inheritance_profile = yes
	set_variable = {
		name = eotm_inheritance_profile
		value = 2
	}
	if = {
		limit = { NOT = { has_trait = eotm_profile_balanced } }
		add_trait = eotm_profile_balanced
	}
	hidden_effect = { }
}

eotm_assign_inheritance_profile_random = {
	eotm_clear_inheritance_profile = yes
	set_variable = {
		name = eotm_inheritance_profile
		value = 3
	}
	if = {
		limit = { NOT = { has_trait = eotm_profile_random } }
		add_trait = eotm_profile_random
	}
	hidden_effect = { }
}

eotm_assign_random_inheritance_profile = {
	random_list = {
		pick = 1
		unique = yes
		33 = {
			modifier = {
				add = 5
				OR = {
					scope:real_father ?= { eotm_child_has_one_way_profile = yes }
					AND = {
						NOT = { exists = scope:real_father }
						scope:father ?= { eotm_child_has_one_way_profile = yes }
					}
				}
			}
			modifier = { add = 5 scope:mother ?= { eotm_child_has_one_way_profile = yes } }
			eotm_assign_inheritance_profile_one_way = yes
		}
		33 = {
			modifier = {
				add = 5
				OR = {
					scope:real_father ?= { eotm_child_has_balanced_profile = yes }
					AND = {
						NOT = { exists = scope:real_father }
						scope:father ?= { eotm_child_has_balanced_profile = yes }
					}
				}
			}
			modifier = { add = 5 scope:mother ?= { eotm_child_has_balanced_profile = yes } }
			eotm_assign_inheritance_profile_balanced = yes
		}
		34 = {
			modifier = {
				add = 5
				OR = {
					scope:real_father ?= { eotm_child_has_random_profile = yes }
					AND = {
						NOT = { exists = scope:real_father }
						scope:father ?= { eotm_child_has_random_profile = yes }
					}
				}
			}
			modifier = { add = 5 scope:mother ?= { eotm_child_has_random_profile = yes } }
			eotm_assign_inheritance_profile_random = yes
		}
	}
}

eotm_assign_base_inheritance_profile = {
	random_list = {
		pick = 1
		unique = yes
		33 = { eotm_assign_inheritance_profile_one_way = yes }
		33 = { eotm_assign_inheritance_profile_balanced = yes }
		34 = { eotm_assign_inheritance_profile_random = yes }
	}
}

eotm_set_profile_roll_report_weights = {
	set_variable = { name = eotm_profile_roll_focused_base_weight value = 33 }
	set_variable = { name = eotm_profile_roll_balanced_base_weight value = 33 }
	set_variable = { name = eotm_profile_roll_random_base_weight value = 34 }
	set_variable = { name = eotm_profile_roll_focused_parent_bonus value = 0 }
	set_variable = { name = eotm_profile_roll_balanced_parent_bonus value = 0 }
	set_variable = { name = eotm_profile_roll_random_parent_bonus value = 0 }
	if = {
		limit = {
			OR = {
				scope:real_father ?= { eotm_child_has_one_way_profile = yes }
				AND = {
					NOT = { exists = scope:real_father }
					scope:father ?= { eotm_child_has_one_way_profile = yes }
				}
			}
		}
		change_variable = { name = eotm_profile_roll_focused_parent_bonus add = 5 }
	}
	if = { limit = { scope:mother ?= { eotm_child_has_one_way_profile = yes } } change_variable = { name = eotm_profile_roll_focused_parent_bonus add = 5 } }
	if = {
		limit = {
			OR = {
				scope:real_father ?= { eotm_child_has_balanced_profile = yes }
				AND = {
					NOT = { exists = scope:real_father }
					scope:father ?= { eotm_child_has_balanced_profile = yes }
				}
			}
		}
		change_variable = { name = eotm_profile_roll_balanced_parent_bonus add = 5 }
	}
	if = { limit = { scope:mother ?= { eotm_child_has_balanced_profile = yes } } change_variable = { name = eotm_profile_roll_balanced_parent_bonus add = 5 } }
	if = {
		limit = {
			OR = {
				scope:real_father ?= { eotm_child_has_random_profile = yes }
				AND = {
					NOT = { exists = scope:real_father }
					scope:father ?= { eotm_child_has_random_profile = yes }
				}
			}
		}
		change_variable = { name = eotm_profile_roll_random_parent_bonus add = 5 }
	}
	if = { limit = { scope:mother ?= { eotm_child_has_random_profile = yes } } change_variable = { name = eotm_profile_roll_random_parent_bonus add = 5 } }
	set_variable = { name = eotm_profile_roll_focused_final_weight value = { value = var:eotm_profile_roll_focused_base_weight add = var:eotm_profile_roll_focused_parent_bonus } }
	set_variable = { name = eotm_profile_roll_balanced_final_weight value = { value = var:eotm_profile_roll_balanced_base_weight add = var:eotm_profile_roll_balanced_parent_bonus } }
	set_variable = { name = eotm_profile_roll_random_final_weight value = { value = var:eotm_profile_roll_random_base_weight add = var:eotm_profile_roll_random_parent_bonus } }
}

eotm_set_base_profile_roll_report_weights = {
	set_variable = { name = eotm_profile_roll_focused_base_weight value = 33 }
	set_variable = { name = eotm_profile_roll_balanced_base_weight value = 33 }
	set_variable = { name = eotm_profile_roll_random_base_weight value = 34 }
	set_variable = { name = eotm_profile_roll_focused_parent_bonus value = 0 }
	set_variable = { name = eotm_profile_roll_balanced_parent_bonus value = 0 }
	set_variable = { name = eotm_profile_roll_random_parent_bonus value = 0 }
	set_variable = { name = eotm_profile_roll_focused_final_weight value = 33 }
	set_variable = { name = eotm_profile_roll_balanced_final_weight value = 33 }
	set_variable = { name = eotm_profile_roll_random_final_weight value = 34 }
}

eotm_clear_profile_roll_report_weights = {
	remove_variable = eotm_profile_roll_focused_base_weight
	remove_variable = eotm_profile_roll_balanced_base_weight
	remove_variable = eotm_profile_roll_random_base_weight
	remove_variable = eotm_profile_roll_focused_parent_bonus
	remove_variable = eotm_profile_roll_balanced_parent_bonus
	remove_variable = eotm_profile_roll_random_parent_bonus
	remove_variable = eotm_profile_roll_focused_final_weight
	remove_variable = eotm_profile_roll_balanced_final_weight
	remove_variable = eotm_profile_roll_random_final_weight
}

eotm_report_family_profile_assurance_effect = {
	debug_log = "=== EOTM Family Profile Assurance Report ==="
	debug_log = "EOTM Family Profile Assurance Report: current version = V1 Advanced"
	debug_log = "EOTM Family Profile Assurance Report: character scope inspected"
	if = { limit = { var:eotm_family_profile_hook_source ?= 1 } debug_log = "EOTM Family Profile Assurance Report: hook source = game_start_after_lobby" }
	else_if = { limit = { var:eotm_family_profile_hook_source ?= 2 } debug_log = "EOTM Family Profile Assurance Report: hook source = birth" }
	else_if = { limit = { var:eotm_family_profile_hook_source ?= 3 } debug_log = "EOTM Family Profile Assurance Report: hook source = marriage" }
	else_if = { limit = { var:eotm_family_profile_hook_source ?= 4 } debug_log = "EOTM Family Profile Assurance Report: hook source = concubinage" }
	else_if = { limit = { var:eotm_family_profile_hook_source ?= 5 } debug_log = "EOTM Family Profile Assurance Report: hook source = title_gain/succession fallback" }
	else_if = { limit = { var:eotm_family_profile_hook_source ?= 6 } debug_log = "EOTM Family Profile Assurance Report: hook source = adulthood/pending fallback" }
	else = { debug_log = "EOTM Family Profile Assurance Report: hook source = direct/debug/fallback" }
	if = { limit = { var:eotm_family_profile_assurance_source ?= 1 } debug_log = "EOTM Family Profile Assurance Report: assurance source = close family sweep" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 2 } debug_log = "EOTM Family Profile Assurance Report: assurance source = direct spouse check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 3 } debug_log = "EOTM Family Profile Assurance Report: assurance source = direct concubine/consort check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 4 } debug_log = "EOTM Family Profile Assurance Report: assurance source = child check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 5 } debug_log = "EOTM Family Profile Assurance Report: assurance source = friend check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 6 } debug_log = "EOTM Family Profile Assurance Report: assurance source = parent check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 7 } debug_log = "EOTM Family Profile Assurance Report: assurance source = grandparent check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 8 } debug_log = "EOTM Family Profile Assurance Report: assurance source = sibling check" }
	else_if = { limit = { var:eotm_family_profile_assurance_source ?= 9 } debug_log = "EOTM Family Profile Assurance Report: assurance source = uncle/aunt check" }
	else = { debug_log = "EOTM Family Profile Assurance Report: assurance source = character check" }
	if = { limit = { var:eotm_family_profile_relationship ?= 1 } debug_log = "EOTM Family Profile Assurance Report: relationship = ruler" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 2 } debug_log = "EOTM Family Profile Assurance Report: relationship = spouse" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 3 } debug_log = "EOTM Family Profile Assurance Report: relationship = concubine/consort" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 4 } debug_log = "EOTM Family Profile Assurance Report: relationship = child" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 5 } debug_log = "EOTM Family Profile Assurance Report: relationship = friend" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 6 } debug_log = "EOTM Family Profile Assurance Report: relationship = parent" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 7 } debug_log = "EOTM Family Profile Assurance Report: relationship = grandparent" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 8 } debug_log = "EOTM Family Profile Assurance Report: relationship = sibling" }
	else_if = { limit = { var:eotm_family_profile_relationship ?= 9 } debug_log = "EOTM Family Profile Assurance Report: relationship = uncle/aunt" }
	else = { debug_log = "EOTM Family Profile Assurance Report: relationship = close family fallback" }
	if = { limit = { var:eotm_family_profile_reason ?= 2 } debug_log = "EOTM Family Profile Assurance Report: reason = multiple profiles detected, repair needed" }
	else_if = { limit = { var:eotm_family_profile_reason ?= 3 } debug_log = "EOTM Family Profile Assurance Report: reason = profile variable synced from a single visible profile trait" }
	else_if = { limit = { var:eotm_family_profile_reason ?= 4 } debug_log = "EOTM Family Profile Assurance Report: reason = existing valid profile preserved" }
	else_if = { limit = { var:eotm_family_profile_reason ?= 5 } debug_log = "EOTM Family Profile Assurance Report: reason = skipped or blocked by safe scope restrictions" }
	else_if = { limit = { var:eotm_family_profile_reason ?= 6 } debug_log = "EOTM Family Profile Assurance Report: reason = unsupported scope fallback" }
	else = { debug_log = "EOTM Family Profile Assurance Report: reason = missing EOTM profile detected; profile assigned by family assurance" }
	if = { limit = { var:eotm_family_profile_category ?= 1 } debug_log = "EOTM Family Profile Assurance Report: category = Assigned" }
	else_if = { limit = { var:eotm_family_profile_category ?= 2 } debug_log = "EOTM Family Profile Assurance Report: category = Synced" }
	else_if = { limit = { var:eotm_family_profile_category ?= 3 } debug_log = "EOTM Family Profile Assurance Report: category = Skipped" }
	else_if = { limit = { var:eotm_family_profile_category ?= 4 } debug_log = "EOTM Family Profile Assurance Report: category = Invalid" }
	else_if = { limit = { var:eotm_family_profile_category ?= 5 } debug_log = "EOTM Family Profile Assurance Report: category = ExistingValid" }
	else_if = { limit = { var:eotm_family_profile_category ?= 6 } debug_log = "EOTM Family Profile Assurance Report: category = Unsupported" }
	else = { debug_log = "EOTM Family Profile Assurance Report: category = Assigned" }
	if = { limit = { eotm_child_has_one_way_profile = yes } debug_log = "EOTM Family Profile Assurance Report: selected/current profile = Focused" }
	else_if = { limit = { eotm_child_has_balanced_profile = yes } debug_log = "EOTM Family Profile Assurance Report: selected/current profile = Harmonious" }
	else_if = { limit = { eotm_child_has_random_profile = yes } debug_log = "EOTM Family Profile Assurance Report: selected/current profile = Curious" }
	else = { debug_log = "EOTM Family Profile Assurance Report: selected/current profile = none" }
	if = {
		limit = { exists = var:eotm_profile_roll_focused_base_weight }
		debug_log = "EOTM Family Profile Assurance Report: base weights = Focused 33, Harmonious 33, Curious 34"
		debug_log = "EOTM Family Profile Assurance Report: parent bonus rule = +5 to each matching parent profile when parent scopes are available"
		debug_log = "EOTM Family Profile Assurance Report: final roll weights are stored on the checked character for player-facing report localization"
	}
	eotm_show_family_profile_assurance_window_effect = yes
	debug_log = "=== End EOTM Family Profile Assurance Report ==="
	remove_variable = eotm_family_profile_relationship
	remove_variable = eotm_family_profile_reason
	remove_variable = eotm_family_profile_category
	remove_variable = eotm_family_profile_hook_source
	remove_variable = eotm_family_profile_assurance_source
	eotm_clear_profile_roll_report_weights = yes
}

eotm_show_birth_profile_report_window_to_player_parent_effect = {
	save_scope_as = eotm_report_child
	if = {
		limit = { scope:mother ?= { is_ai = no } }
		scope:mother = {
			if = { limit = { scope:eotm_report_child = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0001 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0002 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0003 }
		}
	}
	else_if = {
		limit = { scope:real_father ?= { is_ai = no } }
		scope:real_father = {
			if = { limit = { scope:eotm_report_child = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0001 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0002 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0003 }
		}
	}
	else_if = {
		limit = { scope:father ?= { is_ai = no } }
		scope:father = {
			if = { limit = { scope:eotm_report_child = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0001 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0002 }
			else_if = { limit = { scope:eotm_report_child = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0003 }
		}
	}
}

eotm_show_family_profile_assurance_window_effect = {
	if = {
		limit = {
			var:eotm_family_profile_relationship ?= 4
			NOT = { var:eotm_family_profile_hook_source ?= 1 }
			OR = {
				var:eotm_family_profile_category ?= 1
				var:eotm_family_profile_category ?= 2
			}
		}
		save_scope_as = eotm_report_child
		if = {
			limit = { scope:mother ?= { is_ai = no } }
			scope:mother = {
				if = { limit = { scope:eotm_report_child = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0011 }
				else_if = { limit = { scope:eotm_report_child = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0012 }
				else_if = { limit = { scope:eotm_report_child = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0013 }
			}
		}
		else_if = {
			limit = { scope:father ?= { is_ai = no } }
			scope:father = {
				if = { limit = { scope:eotm_report_child = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0011 }
				else_if = { limit = { scope:eotm_report_child = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0012 }
				else_if = { limit = { scope:eotm_report_child = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0013 }
			}
		}
	}
}

eotm_report_family_profile_existing_valid_effect = {
	set_variable = { name = eotm_family_profile_reason value = 4 }
	set_variable = { name = eotm_family_profile_category value = 5 }
	eotm_report_family_profile_assurance_effect = yes
}

eotm_report_family_profile_synced_effect = {
	set_variable = { name = eotm_family_profile_reason value = 3 }
	set_variable = { name = eotm_family_profile_category value = 2 }
	eotm_report_family_profile_assurance_effect = yes
}

eotm_report_family_profile_invalid_effect = {
	set_variable = { name = eotm_family_profile_reason value = 2 }
	set_variable = { name = eotm_family_profile_category value = 4 }
	eotm_report_family_profile_assurance_effect = yes
}

eotm_show_friendship_insight_profile_window_to_root_effect = {
	save_scope_as = eotm_friend_insight_target
	root = {
		if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0021 }
		else_if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0022 }
		else_if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0023 }
	}
}

eotm_show_friendship_insight_profile_window_to_target_effect = {
	save_scope_as = eotm_friend_insight_target
	scope:target = {
		if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_one_way_profile = yes } } trigger_event = eotm_report_events.0021 }
		else_if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_balanced_profile = yes } } trigger_event = eotm_report_events.0022 }
		else_if = { limit = { scope:eotm_friend_insight_target = { eotm_child_has_random_profile = yes } } trigger_event = eotm_report_events.0023 }
	}
}

eotm_assign_friendship_insight_profile_and_report_to_root_effect = {
	if = {
		limit = {
			NOT = { eotm_character_has_multiple_profiles_trigger = yes }
			NOT = { eotm_character_has_any_profile_trigger = yes }
		}
		eotm_assign_base_inheritance_profile = yes
		if = {
			limit = { eotm_character_has_confirmed_single_profile_trigger = yes }
			eotm_show_friendship_insight_profile_window_to_root_effect = yes
		}
	}
}

eotm_assign_friendship_insight_profile_and_report_to_target_effect = {
	if = {
		limit = {
			NOT = { eotm_character_has_multiple_profiles_trigger = yes }
			NOT = { eotm_character_has_any_profile_trigger = yes }
		}
		eotm_assign_base_inheritance_profile = yes
		if = {
			limit = { eotm_character_has_confirmed_single_profile_trigger = yes }
			eotm_show_friendship_insight_profile_window_to_target_effect = yes
		}
	}
}

eotm_save_compatibility_profile_diagnostics_effect = {
	if = {
		limit = {
			OR = {
				eotm_character_has_multiple_profiles_trigger = yes
				eotm_character_has_profile_trait_without_variable_trigger = yes
				eotm_character_has_profile_variable_without_trait_trigger = yes
				eotm_character_has_profile_variable_trait_desync_trigger = yes
				has_variable = eotm_profile_roll_focused_base_weight
				has_variable = eotm_family_profile_reason
				has_variable = eotm_v1_debug_report_emitted
			}
		}
		debug_log = "=== EOTM Save Compatibility / Upgrade Safety Diagnostic ==="
		debug_log = "EOTM Save Diagnostic: character scope inspected"
		debug_log = "EOTM Save Diagnostic: current version = V1 Advanced"
		if = { limit = { eotm_character_has_multiple_profiles_trigger = yes } debug_log = "EOTM Save Diagnostic: warning = multiple visible EOTM profile traits; repair needed, skipped by assurance" }
		if = { limit = { eotm_character_has_profile_trait_without_variable_trigger = yes } debug_log = "EOTM Save Diagnostic: warning = visible EOTM profile trait without stored profile variable; safe sync may occur through assurance" }
		if = { limit = { eotm_character_has_profile_variable_without_trait_trigger = yes } debug_log = "EOTM Save Diagnostic: warning = stored profile variable without visible profile trait; display sync may occur through assurance" }
		if = { limit = { eotm_character_has_profile_variable_trait_desync_trigger = yes } debug_log = "EOTM Save Diagnostic: warning = stored profile variable and visible trait are desynced" }
		if = { limit = { has_variable = eotm_profile_roll_focused_base_weight } debug_log = "EOTM Save Diagnostic: warning = orphaned profile report variables detected; transient report cleanup is safe on next report path" }
		if = { limit = { has_variable = eotm_family_profile_reason } debug_log = "EOTM Save Diagnostic: warning = orphaned family assurance report state detected; cleanup is safe on next assurance path" }
		if = { limit = { has_variable = eotm_v1_debug_report_emitted } debug_log = "EOTM Save Diagnostic: note = inheritance report guard exists on this character; repeated same-character diagnostics may be suppressed" }
		if = { limit = { eotm_wanderer_content_available = yes } debug_log = "EOTM Save Diagnostic: Wanderer DLC feature = available" }
		else = { debug_log = "EOTM Save Diagnostic: Wanderer DLC feature = unavailable; Wanderer target paths should be skipped or zeroed" }
		debug_log = "EOTM Save Diagnostic: Advanced can be enabled/disabled mid-save through game rule; diagnostics warn only and do not rewrite inheritance state."
		debug_log = "=== End EOTM Save Compatibility / Upgrade Safety Diagnostic ==="
	}
}

eotm_debug_log_birth_profile_report = {
	eotm_set_profile_roll_report_weights = yes
	debug_log = eotm_birth_profile_report_header
	debug_log = eotm_birth_profile_report_mode_advanced
	debug_log = eotm_birth_profile_report_child
	if = { limit = { scope:real_father ?= { eotm_child_has_one_way_profile = yes } } debug_log = "EOTM Birth Profile Report: biological father profile = Focused" }
	else_if = { limit = { scope:real_father ?= { eotm_child_has_balanced_profile = yes } } debug_log = "EOTM Birth Profile Report: biological father profile = Harmonious" }
	else_if = { limit = { scope:real_father ?= { eotm_child_has_random_profile = yes } } debug_log = "EOTM Birth Profile Report: biological father profile = Curious" }
	else_if = { limit = { scope:father ?= { eotm_child_has_one_way_profile = yes } } debug_log = "EOTM Birth Profile Report: family father profile = Focused" }
	else_if = { limit = { scope:father ?= { eotm_child_has_balanced_profile = yes } } debug_log = "EOTM Birth Profile Report: family father profile = Harmonious" }
	else_if = { limit = { scope:father ?= { eotm_child_has_random_profile = yes } } debug_log = "EOTM Birth Profile Report: family father profile = Curious" }
	else = { debug_log = "EOTM Birth Profile Report: father profile = none/missing" }
	if = { limit = { scope:mother ?= { eotm_child_has_one_way_profile = yes } } debug_log = "EOTM Birth Profile Report: mother profile = Focused" }
	else_if = { limit = { scope:mother ?= { eotm_child_has_balanced_profile = yes } } debug_log = "EOTM Birth Profile Report: mother profile = Harmonious" }
	else_if = { limit = { scope:mother ?= { eotm_child_has_random_profile = yes } } debug_log = "EOTM Birth Profile Report: mother profile = Curious" }
	else = { debug_log = "EOTM Birth Profile Report: mother profile = none/missing" }
	debug_log = eotm_birth_profile_report_base_weights
	debug_log = eotm_birth_profile_report_parent_bonuses
	debug_log = eotm_birth_profile_report_final_weights
	if = { limit = { eotm_child_has_one_way_profile = yes } debug_log = eotm_birth_profile_report_selected_focused }
	else_if = { limit = { eotm_child_has_balanced_profile = yes } debug_log = eotm_birth_profile_report_selected_balanced }
	else_if = { limit = { eotm_child_has_random_profile = yes } debug_log = eotm_birth_profile_report_selected_curious }
	else = { debug_log = "EOTM Birth Profile Report: selected profile missing after assignment" }
	if = { limit = { has_variable = eotm_profile_report_newly_assigned } debug_log = eotm_birth_profile_report_newly_assigned }
	else = { debug_log = eotm_birth_profile_report_already_existed }
	debug_log = eotm_birth_profile_report_footer
	if = {
		limit = {
			has_variable = eotm_profile_report_newly_assigned
			eotm_character_has_confirmed_single_profile_trigger = yes
		}
		eotm_show_birth_profile_report_window_to_player_parent_effect = yes
	}
	else = {
		eotm_clear_profile_roll_report_weights = yes
		remove_variable = eotm_profile_report_newly_assigned
	}
}

eotm_backfill_inheritance_profile_if_missing = {
	if = {
		limit = { eotm_character_has_multiple_profiles_trigger = yes }
		hidden_effect = { }
	}
	else_if = {
		limit = { eotm_child_has_inheritance_profile = yes }
		eotm_apply_inheritance_profile_display = yes
	}
	else_if = {
		limit = { eotm_character_has_any_profile_trigger = yes }
		eotm_sync_inheritance_profile_variable_from_single_trait = yes
		eotm_apply_inheritance_profile_display = yes
	}
	else = {
		hidden_effect = { }
		eotm_assign_random_inheritance_profile = yes
	}
}

eotm_backfill_inheritance_profile_if_missing_with_birth_report = {
	if = {
		limit = { eotm_character_has_multiple_profiles_trigger = yes }
		hidden_effect = { }
	}
	else_if = {
		limit = { eotm_child_has_inheritance_profile = yes }
		eotm_apply_inheritance_profile_display = yes
	}
	else_if = {
		limit = { eotm_character_has_any_profile_trigger = yes }
		eotm_sync_inheritance_profile_variable_from_single_trait = yes
		eotm_apply_inheritance_profile_display = yes
	}
	else = {
		set_variable = { name = eotm_profile_report_newly_assigned value = 1 }
		eotm_assign_random_inheritance_profile = yes
		if = {
			limit = { eotm_character_has_profile_variable_without_trait_trigger = yes }
			eotm_apply_inheritance_profile_display = yes
		}
	}
	eotm_debug_log_birth_profile_report = yes
}

eotm_assure_shared_v1_profile_on_character = {
	eotm_ensure_character_has_eotm_profile_effect = yes
}

eotm_assure_shared_v1_base_profile_on_character = {
	if = {
		limit = { eotm_character_has_multiple_profiles_trigger = yes }
		eotm_report_family_profile_invalid_effect = yes
	}
	else_if = {
		limit = { eotm_child_has_inheritance_profile = yes }
		eotm_apply_inheritance_profile_display = yes
	}
	else_if = {
		limit = { eotm_character_has_any_profile_trigger = yes }
		eotm_sync_inheritance_profile_variable_from_single_trait = yes
		eotm_apply_inheritance_profile_display = yes
		eotm_report_family_profile_synced_effect = yes
	}
	else = {
		eotm_set_base_profile_roll_report_weights = yes
		eotm_assign_base_inheritance_profile = yes
		set_variable = { name = eotm_family_profile_reason value = 1 }
		set_variable = { name = eotm_family_profile_category value = 1 }
		eotm_report_family_profile_assurance_effect = yes
	}
}

eotm_assign_random_profile_with_parent_bias_effect = {
	eotm_assign_random_inheritance_profile = yes
}

eotm_ensure_character_has_eotm_profile_effect = {
	if = {
		limit = { eotm_character_has_multiple_profiles_trigger = yes }
		eotm_report_family_profile_invalid_effect = yes
	}
	else_if = {
		limit = { eotm_child_has_inheritance_profile = yes }
		eotm_apply_inheritance_profile_display = yes
	}
	else_if = {
		limit = { eotm_character_has_any_profile_trigger = yes }
		eotm_sync_inheritance_profile_variable_from_single_trait = yes
		eotm_apply_inheritance_profile_display = yes
		eotm_report_family_profile_synced_effect = yes
	}
	else = {
		eotm_set_profile_roll_report_weights = yes
		eotm_assign_random_profile_with_parent_bias_effect = yes
		set_variable = { name = eotm_family_profile_reason value = 1 }
		set_variable = { name = eotm_family_profile_category value = 1 }
		eotm_report_family_profile_assurance_effect = yes
	}
}

eotm_ensure_player_spouse_profiles_effect = {
	every_spouse = {
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 2 }
		set_variable = { name = eotm_family_profile_assurance_source value = 2 }
		eotm_assure_shared_v1_base_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_consort_profiles_effect = {
	every_consort = {
		limit = {
			NOT = { is_spouse_of = prev }
		}
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 3 }
		set_variable = { name = eotm_family_profile_assurance_source value = 3 }
		eotm_assure_shared_v1_base_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_child_profiles_effect = {
	every_child = {
		limit = { is_alive = yes }
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 4 }
		set_variable = { name = eotm_family_profile_assurance_source value = 4 }
		eotm_assure_shared_v1_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_friend_profiles_effect = {
	every_relation = {
		type = friend
		limit = { is_alive = yes }
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 5 }
		set_variable = { name = eotm_family_profile_assurance_source value = 5 }
		eotm_assure_shared_v1_base_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_parent_profiles_effect = {
	every_parent = {
		limit = { is_alive = yes }
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 6 }
		set_variable = { name = eotm_family_profile_assurance_source value = 6 }
		eotm_assure_shared_v1_base_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_grandparent_profiles_effect = {
	every_parent = {
		limit = { is_alive = yes }
		every_parent = {
			limit = { is_alive = yes }
			eotm_save_compatibility_profile_diagnostics_effect = yes
			set_variable = { name = eotm_family_profile_relationship value = 7 }
			set_variable = { name = eotm_family_profile_assurance_source value = 7 }
			eotm_assure_shared_v1_base_profile_on_character = yes
			remove_variable = eotm_family_profile_relationship
			remove_variable = eotm_family_profile_reason
			remove_variable = eotm_family_profile_category
			remove_variable = eotm_family_profile_assurance_source
		}
	}
}

eotm_ensure_player_sibling_profiles_effect = {
	every_sibling = {
		limit = { is_alive = yes }
		eotm_save_compatibility_profile_diagnostics_effect = yes
		set_variable = { name = eotm_family_profile_relationship value = 8 }
		set_variable = { name = eotm_family_profile_assurance_source value = 8 }
		eotm_assure_shared_v1_base_profile_on_character = yes
		remove_variable = eotm_family_profile_relationship
		remove_variable = eotm_family_profile_reason
		remove_variable = eotm_family_profile_category
		remove_variable = eotm_family_profile_assurance_source
	}
}

eotm_ensure_player_uncle_aunt_profiles_effect = {
	every_parent = {
		limit = { is_alive = yes }
		every_sibling = {
			limit = { is_alive = yes }
			eotm_save_compatibility_profile_diagnostics_effect = yes
			set_variable = { name = eotm_family_profile_relationship value = 9 }
			set_variable = { name = eotm_family_profile_assurance_source value = 9 }
			eotm_assure_shared_v1_base_profile_on_character = yes
			remove_variable = eotm_family_profile_relationship
			remove_variable = eotm_family_profile_reason
			remove_variable = eotm_family_profile_category
			remove_variable = eotm_family_profile_assurance_source
		}
	}
}

eotm_ensure_player_close_family_profiles_effect = {
	eotm_save_compatibility_profile_diagnostics_effect = yes
	set_variable = { name = eotm_family_profile_relationship value = 1 }
	set_variable = { name = eotm_family_profile_assurance_source value = 1 }
	eotm_assure_shared_v1_base_profile_on_character = yes
	eotm_ensure_player_spouse_profiles_effect = yes
	eotm_ensure_player_consort_profiles_effect = yes
	eotm_ensure_player_child_profiles_effect = yes
	eotm_ensure_player_parent_profiles_effect = yes
	eotm_ensure_player_grandparent_profiles_effect = yes
	eotm_ensure_player_sibling_profiles_effect = yes
	eotm_ensure_player_uncle_aunt_profiles_effect = yes
	remove_variable = eotm_family_profile_relationship
	remove_variable = eotm_family_profile_reason
	remove_variable = eotm_family_profile_category
	remove_variable = eotm_family_profile_assurance_source
}

eotm_assure_shared_v1_profiles_for_player_family = {
	eotm_ensure_player_close_family_profiles_effect = yes
}

eotm_ensure_current_player_family_profiles_effect = {
	eotm_ensure_player_close_family_profiles_effect = yes
}

eotm_assure_shared_v1_profiles_for_player_family_and_friends = {
	eotm_ensure_player_close_family_profiles_effect = yes
	eotm_ensure_player_friend_profiles_effect = yes
}

eotm_debug_generate_randomizer_test_path = {
	eotm_debug_test_randomizer_effect = yes
}

eotm_debug_generate_randomizer_test_path_x10 = {
	eotm_debug_test_learning_randomizer_x10_effect = yes
}

eotm_debug_clear_learning_lifestyle_perks_effect = {
	# Dev-only compatibility placeholder. Do not remove perks in normal runtime.
	hidden_effect = { }
}

eotm_debug_backfill_inheritance_profile_if_missing_effect = {
	set_variable = { name = eotm_family_profile_relationship value = 5 }
	eotm_ensure_character_has_eotm_profile_effect = yes
}

eotm_select_inheritance_profile_effect = {
	if = {
		limit = { is_ai = no }
		eotm_assign_random_inheritance_profile = yes
	}
}

eotm_apply_child_inheritance_effect = {
	eotm_execute_learning_death_inheritance = yes
}

eotm_apply_advanced_inheritance_resolver_insertion_points = {
	# V1 Advanced is the single active inheritance version. The existing V1
	# target calculation remains the foundation, then Advanced weighting adjusts
	# the targets before the established grant and validation effects run.
	eotm_v1_advanced_trait_weighting_pipeline_effect = yes
	eotm_v1_debug_log_inheritance_summary_effect = yes
}

############################################################
# Unsafe perk registry / pending perk safety
#
# `absolute_control_perk` triggers vanilla ruler-only effects on grant.
# Non-ruler receivers keep the inheritance value as pending until they
# become rulers through succession or later title gain.
#
# Audited context-effect perks currently safe for immediate grant:
# embassies_perk, confidants_perk, friendly_counsel_perk,
# groomed_to_rule_perk, sound_foundations_perk, mental_resilience_perk,
# dark_insights_perk, local_inspection_perk, no_stone_unturned_perk,
# local_arbitration_perk.
############################################################

eotm_grant_or_store_absolute_control_perk = {
	if = {
		limit = { has_perk = absolute_control_perk }
		hidden_effect = { }
	}
	else_if = {
		limit = { is_ruler = yes }
		add_perk = absolute_control_perk
	}
	else_if = {
		limit = { NOT = { eotm_has_pending_absolute_control_perk = yes } }
		set_variable = { name = eotm_pending_perk_absolute_control value = 1 }
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
	}
}

eotm_activate_pending_absolute_control_perk = {
	if = {
		limit = {
			is_ruler = yes
			eotm_has_pending_absolute_control_perk = yes
			NOT = { has_perk = absolute_control_perk }
		}
		add_perk = absolute_control_perk
		remove_variable = eotm_pending_perk_absolute_control
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
	}
	else_if = {
		limit = {
			is_ruler = yes
			eotm_has_pending_absolute_control_perk = yes
			has_perk = absolute_control_perk
		}
		remove_variable = eotm_pending_perk_absolute_control
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
	}
}

eotm_activate_pending_ruler_only_perks = {
	eotm_activate_pending_absolute_control_perk = yes
}

eotm_activate_pending_valid_context_perks = {
	# Reserved for future unsafe perks that need non-ruler context checks.
	if = {
		limit = { always = no }
		hidden_effect = { }
	}
}

eotm_activate_pending_unsafe_perks = {
	eotm_activate_pending_ruler_only_perks = yes
	eotm_activate_pending_valid_context_perks = yes
}

eotm_clear_pending_unsafe_perks = {
	if = {
		limit = { eotm_has_pending_absolute_control_perk = yes }
		remove_variable = eotm_pending_perk_absolute_control
		hidden_effect = { }
		hidden_effect = { }
	}
}

############################################################
# Pending adulthood inheritance queue
#
# Underage children store target counts plus a parent-owned perk snapshot.
# On adulthood, the system attempts to restore the original parent scope
# for diagnostics/backward compatibility, but validation no longer depends
# on that scope surviving after death.
############################################################

############################################################
# Pending parent-owned perk snapshots
#
# Delayed adulthood activation cannot rely on a live/restorable
# deceased-parent scope. Each underage inheritance stores the
# parent-owned visible perk set on the child at death time, then
# inheritance validation can use either the restored parent scope
# or these persistent snapshot flags.
############################################################

############################################################
# Pending Learning parent-owned perk snapshot
############################################################

eotm_clear_pending_learning_parent_perk_snapshot = {
	remove_variable = eotm_pending_learning_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_learning_anatomical_studies_perk
	remove_variable = eotm_pending_parent_had_learning_apostate_perk
	remove_variable = eotm_pending_parent_had_learning_carefree_perk
	remove_variable = eotm_pending_parent_had_learning_church_and_state_perk
	remove_variable = eotm_pending_parent_had_learning_clerical_justifications_perk
	remove_variable = eotm_pending_parent_had_learning_defender_of_the_faith_perk
	remove_variable = eotm_pending_parent_had_learning_faithful_perk
	remove_variable = eotm_pending_parent_had_learning_healthy_perk
	remove_variable = eotm_pending_parent_had_learning_iron_constitution_perk
	remove_variable = eotm_pending_parent_had_learning_know_thyself_perk
	remove_variable = eotm_pending_parent_had_learning_learn_on_the_job_perk
	remove_variable = eotm_pending_parent_had_learning_mental_resilience_perk
	remove_variable = eotm_pending_parent_had_learning_open_minded_perk
	remove_variable = eotm_pending_parent_had_learning_pedagogy_perk
	remove_variable = eotm_pending_parent_had_learning_planned_cultivation_perk
	remove_variable = eotm_pending_parent_had_learning_prophet_perk
	remove_variable = eotm_pending_parent_had_learning_radiant_perk
	remove_variable = eotm_pending_parent_had_learning_religious_icon_perk
	remove_variable = eotm_pending_parent_had_learning_restraint_perk
	remove_variable = eotm_pending_parent_had_learning_sanctioned_loopholes_perk
	remove_variable = eotm_pending_parent_had_learning_scholar_perk
	remove_variable = eotm_pending_parent_had_learning_scholarly_circles_perk
	remove_variable = eotm_pending_parent_had_learning_scientific_perk
	remove_variable = eotm_pending_parent_had_learning_theologian_perk
	remove_variable = eotm_pending_parent_had_learning_wash_your_hands_perk
	remove_variable = eotm_pending_parent_had_learning_whole_of_body_perk
	remove_variable = eotm_pending_parent_had_learning_zealous_proselytizer_perk
}

eotm_count_pending_learning_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_learning_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_anatomical_studies_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_apostate_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_carefree_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_church_and_state_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_clerical_justifications_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_defender_of_the_faith_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_faithful_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_healthy_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_iron_constitution_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_know_thyself_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_learn_on_the_job_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_mental_resilience_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_open_minded_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_pedagogy_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_planned_cultivation_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_prophet_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_radiant_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_religious_icon_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_restraint_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_sanctioned_loopholes_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_scholar_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_scholarly_circles_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_scientific_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_theologian_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_wash_your_hands_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_whole_of_body_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_learning_zealous_proselytizer_perk } change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_learning_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_learning_parent_snapshot_count }
		if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_learning_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_learning_parent_perk_snapshot = {
	eotm_clear_pending_learning_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_learning_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = anatomical_studies_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_anatomical_studies_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = apostate_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_apostate_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = carefree_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_carefree_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = church_and_state_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_church_and_state_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = clerical_justifications_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_clerical_justifications_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = defender_of_the_faith_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_defender_of_the_faith_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = faithful_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_faithful_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = healthy_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_healthy_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = iron_constitution_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_iron_constitution_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = know_thyself_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_know_thyself_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = learn_on_the_job_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_learn_on_the_job_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = mental_resilience_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_mental_resilience_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = open_minded_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_open_minded_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = pedagogy_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_pedagogy_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = planned_cultivation_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_planned_cultivation_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = prophet_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_prophet_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = radiant_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_radiant_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = religious_icon_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_religious_icon_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = restraint_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_restraint_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = sanctioned_loopholes_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_sanctioned_loopholes_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = scholar_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_scholar_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = scholarly_circles_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_scholarly_circles_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = scientific_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_scientific_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = theologian_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_theologian_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = wash_your_hands_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_wash_your_hands_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = whole_of_body_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_whole_of_body_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = zealous_proselytizer_perk } }
		set_variable = { name = eotm_pending_parent_had_learning_zealous_proselytizer_perk value = 1 }
		change_variable = { name = eotm_pending_learning_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_learning_parent_snapshot_count = yes
	remove_variable = eotm_pending_learning_parent_snapshot_count
}

eotm_debug_log_pending_learning_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_learning_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_learning_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_learning_parent_perk_snapshot = yes
	}
	eotm_count_pending_learning_parent_snapshot_perks = yes
	eotm_debug_log_pending_learning_parent_snapshot_count = yes
	remove_variable = eotm_pending_learning_parent_snapshot_count
}

############################################################
# Pending Martial parent-owned perk snapshot
############################################################

eotm_clear_pending_martial_parent_perk_snapshot = {
	remove_variable = eotm_pending_martial_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_martial_a_mans_home_perk
	remove_variable = eotm_pending_parent_had_martial_absolute_control_perk
	remove_variable = eotm_pending_parent_had_martial_bellum_justum_perk
	remove_variable = eotm_pending_parent_had_martial_chivalric_dominance_perk
	remove_variable = eotm_pending_parent_had_martial_courtship_perk
	remove_variable = eotm_pending_parent_had_martial_enduring_hardships_perk
	remove_variable = eotm_pending_parent_had_martial_engineered_for_destruction_perk
	remove_variable = eotm_pending_parent_had_martial_envelopment_perk
	remove_variable = eotm_pending_parent_had_martial_gallant_perk
	remove_variable = eotm_pending_parent_had_martial_hard_rule_perk
	remove_variable = eotm_pending_parent_had_martial_hit_and_run_perk
	remove_variable = eotm_pending_parent_had_martial_kingsguard_perk
	remove_variable = eotm_pending_parent_had_martial_living_off_the_land_perk
	remove_variable = eotm_pending_parent_had_martial_loyalty_and_respect_perk
	remove_variable = eotm_pending_parent_had_martial_never_back_down_perk
	remove_variable = eotm_pending_parent_had_martial_organized_retreat_perk
	remove_variable = eotm_pending_parent_had_martial_overseer_perk
	remove_variable = eotm_pending_parent_had_martial_parthian_tactics_perk
	remove_variable = eotm_pending_parent_had_martial_peacemaker_perk
	remove_variable = eotm_pending_parent_had_martial_prepared_conscription_perk
	remove_variable = eotm_pending_parent_had_martial_promising_prospects_perk
	remove_variable = eotm_pending_parent_had_martial_sappers_perk
	remove_variable = eotm_pending_parent_had_martial_serve_the_crown_perk
	remove_variable = eotm_pending_parent_had_martial_soldiers_of_lesser_fortune_perk
	remove_variable = eotm_pending_parent_had_martial_stalwart_leader_perk
	remove_variable = eotm_pending_parent_had_martial_strategist_perk
	remove_variable = eotm_pending_parent_had_martial_strict_organization_perk
}

eotm_count_pending_martial_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_martial_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_a_mans_home_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_absolute_control_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_bellum_justum_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_chivalric_dominance_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_courtship_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_enduring_hardships_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_engineered_for_destruction_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_envelopment_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_gallant_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_hard_rule_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_hit_and_run_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_kingsguard_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_living_off_the_land_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_loyalty_and_respect_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_never_back_down_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_organized_retreat_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_overseer_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_parthian_tactics_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_peacemaker_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_prepared_conscription_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_promising_prospects_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_sappers_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_serve_the_crown_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_soldiers_of_lesser_fortune_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_stalwart_leader_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_strategist_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_martial_strict_organization_perk } change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_martial_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_martial_parent_snapshot_count }
		if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_martial_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_martial_parent_perk_snapshot = {
	eotm_clear_pending_martial_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_martial_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = a_mans_home_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_a_mans_home_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = absolute_control_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_absolute_control_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = bellum_justum_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_bellum_justum_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = chivalric_dominance_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_chivalric_dominance_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = courtship_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_courtship_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = enduring_hardships_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_enduring_hardships_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = engineered_for_destruction_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_engineered_for_destruction_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = envelopment_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_envelopment_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = gallant_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_gallant_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = hard_rule_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_hard_rule_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = hit_and_run_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_hit_and_run_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = kingsguard_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_kingsguard_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = living_off_the_land_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_living_off_the_land_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = loyalty_and_respect_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_loyalty_and_respect_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = never_back_down_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_never_back_down_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = organized_retreat_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_organized_retreat_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = overseer_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_overseer_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = parthian_tactics_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_parthian_tactics_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = peacemaker_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_peacemaker_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = prepared_conscription_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_prepared_conscription_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = promising_prospects_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_promising_prospects_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = sappers_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_sappers_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = serve_the_crown_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_serve_the_crown_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = soldiers_of_lesser_fortune_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_soldiers_of_lesser_fortune_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = stalwart_leader_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_stalwart_leader_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = strategist_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_strategist_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = strict_organization_perk } }
		set_variable = { name = eotm_pending_parent_had_martial_strict_organization_perk value = 1 }
		change_variable = { name = eotm_pending_martial_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_martial_parent_snapshot_count = yes
	remove_variable = eotm_pending_martial_parent_snapshot_count
}

eotm_debug_log_pending_martial_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_martial_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_martial_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_martial_parent_perk_snapshot = yes
	}
	eotm_count_pending_martial_parent_snapshot_perks = yes
	eotm_debug_log_pending_martial_parent_snapshot_count = yes
	remove_variable = eotm_pending_martial_parent_snapshot_count
}

############################################################
# Pending Diplomacy parent-owned perk snapshot
############################################################

eotm_clear_pending_diplomacy_parent_perk_snapshot = {
	remove_variable = eotm_pending_diplomacy_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_diplomacy_a_life_of_glory_perk
	remove_variable = eotm_pending_parent_had_diplomacy_accomplished_forger_perk
	remove_variable = eotm_pending_parent_had_diplomacy_adaptive_traditions_perk
	remove_variable = eotm_pending_parent_had_diplomacy_august_perk
	remove_variable = eotm_pending_parent_had_diplomacy_befriend_perk
	remove_variable = eotm_pending_parent_had_diplomacy_benevolent_intent_perk
	remove_variable = eotm_pending_parent_had_diplomacy_confidants_perk
	remove_variable = eotm_pending_parent_had_diplomacy_defensive_negotiations_perk
	remove_variable = eotm_pending_parent_had_diplomacy_dignitas_perk
	remove_variable = eotm_pending_parent_had_diplomacy_diplomat_perk
	remove_variable = eotm_pending_parent_had_diplomacy_ducal_conquest_perk
	remove_variable = eotm_pending_parent_had_diplomacy_embassies_perk
	remove_variable = eotm_pending_parent_had_diplomacy_familial_familiar_perk
	remove_variable = eotm_pending_parent_had_diplomacy_family_man_perk
	remove_variable = eotm_pending_parent_had_diplomacy_firm_hand_perk
	remove_variable = eotm_pending_parent_had_diplomacy_flatterer_perk
	remove_variable = eotm_pending_parent_had_diplomacy_flexible_truces_perk
	remove_variable = eotm_pending_parent_had_diplomacy_forced_vassalage_perk
	remove_variable = eotm_pending_parent_had_diplomacy_friendly_counsel_perk
	remove_variable = eotm_pending_parent_had_diplomacy_groomed_to_rule_perk
	remove_variable = eotm_pending_parent_had_diplomacy_inspiring_rule_perk
	remove_variable = eotm_pending_parent_had_diplomacy_praetorian_guard_perk
	remove_variable = eotm_pending_parent_had_diplomacy_sound_foundations_perk
	remove_variable = eotm_pending_parent_had_diplomacy_thicker_than_water_perk
	remove_variable = eotm_pending_parent_had_diplomacy_thoughtful_perk
	remove_variable = eotm_pending_parent_had_diplomacy_true_ruler_perk
	remove_variable = eotm_pending_parent_had_diplomacy_writing_history_perk
}

eotm_count_pending_diplomacy_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_diplomacy_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_a_life_of_glory_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_accomplished_forger_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_adaptive_traditions_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_august_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_befriend_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_benevolent_intent_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_confidants_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_defensive_negotiations_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_dignitas_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_diplomat_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_ducal_conquest_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_embassies_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_familial_familiar_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_family_man_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_firm_hand_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_flatterer_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_flexible_truces_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_forced_vassalage_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_friendly_counsel_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_groomed_to_rule_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_inspiring_rule_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_praetorian_guard_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_sound_foundations_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_thicker_than_water_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_thoughtful_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_true_ruler_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_diplomacy_writing_history_perk } change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_diplomacy_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_diplomacy_parent_snapshot_count }
		if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_diplomacy_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_diplomacy_parent_perk_snapshot = {
	eotm_clear_pending_diplomacy_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_diplomacy_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = a_life_of_glory_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_a_life_of_glory_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = accomplished_forger_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_accomplished_forger_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = adaptive_traditions_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_adaptive_traditions_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = august_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_august_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = befriend_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_befriend_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = benevolent_intent_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_benevolent_intent_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = confidants_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_confidants_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = defensive_negotiations_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_defensive_negotiations_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = dignitas_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_dignitas_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = diplomat_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_diplomat_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = ducal_conquest_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_ducal_conquest_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = embassies_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_embassies_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = familial_familiar_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_familial_familiar_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = family_man_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_family_man_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = firm_hand_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_firm_hand_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = flatterer_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_flatterer_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = flexible_truces_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_flexible_truces_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = forced_vassalage_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_forced_vassalage_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = friendly_counsel_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_friendly_counsel_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = groomed_to_rule_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_groomed_to_rule_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = inspiring_rule_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_inspiring_rule_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = praetorian_guard_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_praetorian_guard_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = sound_foundations_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_sound_foundations_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = thicker_than_water_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_thicker_than_water_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = thoughtful_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_thoughtful_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = true_ruler_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_true_ruler_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = writing_history_perk } }
		set_variable = { name = eotm_pending_parent_had_diplomacy_writing_history_perk value = 1 }
		change_variable = { name = eotm_pending_diplomacy_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_diplomacy_parent_snapshot_count = yes
	remove_variable = eotm_pending_diplomacy_parent_snapshot_count
}

eotm_debug_log_pending_diplomacy_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_diplomacy_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_diplomacy_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_diplomacy_parent_perk_snapshot = yes
	}
	eotm_count_pending_diplomacy_parent_snapshot_perks = yes
	eotm_debug_log_pending_diplomacy_parent_snapshot_count = yes
	remove_variable = eotm_pending_diplomacy_parent_snapshot_count
}

############################################################
# Pending Stewardship parent-owned perk snapshot
############################################################

eotm_clear_pending_stewardship_parent_perk_snapshot = {
	remove_variable = eotm_pending_stewardship_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_stewardship_administrator_perk
	remove_variable = eotm_pending_parent_had_stewardship_architect_perk
	remove_variable = eotm_pending_parent_had_stewardship_at_any_cost_perk
	remove_variable = eotm_pending_parent_had_stewardship_avaricious_perk
	remove_variable = eotm_pending_parent_had_stewardship_centralization_perk
	remove_variable = eotm_pending_parent_had_stewardship_chains_of_loyalty_perk
	remove_variable = eotm_pending_parent_had_stewardship_cutting_corners_perk
	remove_variable = eotm_pending_parent_had_stewardship_defensive_measures_perk
	remove_variable = eotm_pending_parent_had_stewardship_detailed_ledgers_perk
	remove_variable = eotm_pending_parent_had_stewardship_divided_attention_perk
	remove_variable = eotm_pending_parent_had_stewardship_fearful_troops_perk
	remove_variable = eotm_pending_parent_had_stewardship_golden_aplomb_perk
	remove_variable = eotm_pending_parent_had_stewardship_golden_obligations_perk
	remove_variable = eotm_pending_parent_had_stewardship_heregeld_perk
	remove_variable = eotm_pending_parent_had_stewardship_honored_to_serve_perk
	remove_variable = eotm_pending_parent_had_stewardship_it_is_my_domain_perk
	remove_variable = eotm_pending_parent_had_stewardship_large_levies_perk
	remove_variable = eotm_pending_parent_had_stewardship_likable_perk
	remove_variable = eotm_pending_parent_had_stewardship_meritocracy_perk
	remove_variable = eotm_pending_parent_had_stewardship_organized_muster_rolls_perk
	remove_variable = eotm_pending_parent_had_stewardship_popular_figurehead_perk
	remove_variable = eotm_pending_parent_had_stewardship_positions_of_power_perk
	remove_variable = eotm_pending_parent_had_stewardship_professional_workforce_perk
	remove_variable = eotm_pending_parent_had_stewardship_soon_forgiven_perk
	remove_variable = eotm_pending_parent_had_stewardship_tax_man_perk
	remove_variable = eotm_pending_parent_had_stewardship_toe_the_line_perk
	remove_variable = eotm_pending_parent_had_stewardship_war_profiteer_perk
}

eotm_count_pending_stewardship_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_stewardship_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_administrator_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_architect_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_at_any_cost_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_avaricious_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_centralization_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_chains_of_loyalty_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_cutting_corners_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_defensive_measures_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_detailed_ledgers_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_divided_attention_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_fearful_troops_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_golden_aplomb_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_golden_obligations_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_heregeld_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_honored_to_serve_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_it_is_my_domain_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_large_levies_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_likable_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_meritocracy_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_organized_muster_rolls_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_popular_figurehead_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_positions_of_power_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_professional_workforce_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_soon_forgiven_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_tax_man_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_toe_the_line_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_stewardship_war_profiteer_perk } change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_stewardship_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_stewardship_parent_snapshot_count }
		if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_stewardship_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_stewardship_parent_perk_snapshot = {
	eotm_clear_pending_stewardship_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_stewardship_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = administrator_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_administrator_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = architect_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_architect_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = at_any_cost_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_at_any_cost_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = avaricious_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_avaricious_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = centralization_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_centralization_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = chains_of_loyalty_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_chains_of_loyalty_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = cutting_corners_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_cutting_corners_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = defensive_measures_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_defensive_measures_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = detailed_ledgers_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_detailed_ledgers_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = divided_attention_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_divided_attention_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = fearful_troops_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_fearful_troops_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = golden_aplomb_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_golden_aplomb_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = golden_obligations_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_golden_obligations_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = heregeld_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_heregeld_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = honored_to_serve_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_honored_to_serve_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = it_is_my_domain_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_it_is_my_domain_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = large_levies_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_large_levies_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = likable_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_likable_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = meritocracy_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_meritocracy_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = organized_muster_rolls_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_organized_muster_rolls_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = popular_figurehead_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_popular_figurehead_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = positions_of_power_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_positions_of_power_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = professional_workforce_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_professional_workforce_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = soon_forgiven_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_soon_forgiven_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = tax_man_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_tax_man_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = toe_the_line_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_toe_the_line_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = war_profiteer_perk } }
		set_variable = { name = eotm_pending_parent_had_stewardship_war_profiteer_perk value = 1 }
		change_variable = { name = eotm_pending_stewardship_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_stewardship_parent_snapshot_count = yes
	remove_variable = eotm_pending_stewardship_parent_snapshot_count
}

eotm_debug_log_pending_stewardship_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_stewardship_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_stewardship_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_stewardship_parent_perk_snapshot = yes
	}
	eotm_count_pending_stewardship_parent_snapshot_perks = yes
	eotm_debug_log_pending_stewardship_parent_snapshot_count = yes
	remove_variable = eotm_pending_stewardship_parent_snapshot_count
}

############################################################
# Pending Intrigue parent-owned perk snapshot
############################################################

eotm_clear_pending_intrigue_parent_perk_snapshot = {
	remove_variable = eotm_pending_intrigue_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_intrigue_a_job_done_right_perk
	remove_variable = eotm_pending_parent_had_intrigue_court_of_shadows_perk
	remove_variable = eotm_pending_parent_had_intrigue_dark_insights_perk
	remove_variable = eotm_pending_parent_had_intrigue_digging_for_dirt_perk
	remove_variable = eotm_pending_parent_had_intrigue_divine_retribution_perk
	remove_variable = eotm_pending_parent_had_intrigue_dreadful_perk
	remove_variable = eotm_pending_parent_had_intrigue_enticing_opportunity_perk
	remove_variable = eotm_pending_parent_had_intrigue_fear_tax_perk
	remove_variable = eotm_pending_parent_had_intrigue_forever_infamous_perk
	remove_variable = eotm_pending_parent_had_intrigue_graceful_recovery_perk
	remove_variable = eotm_pending_parent_had_intrigue_home_advantage_perk
	remove_variable = eotm_pending_parent_had_intrigue_kidnapper_perk
	remove_variable = eotm_pending_parent_had_intrigue_like_weed_in_a_garden_perk
	remove_variable = eotm_pending_parent_had_intrigue_malice_implicit_perk
	remove_variable = eotm_pending_parent_had_intrigue_mortal_adoration_perk
	remove_variable = eotm_pending_parent_had_intrigue_prepared_for_anything_perk
	remove_variable = eotm_pending_parent_had_intrigue_prison_feudal_complex_perk
	remove_variable = eotm_pending_parent_had_intrigue_schemer_perk
	remove_variable = eotm_pending_parent_had_intrigue_seducer_perk
	remove_variable = eotm_pending_parent_had_intrigue_smooth_operator_perk
	remove_variable = eotm_pending_parent_had_intrigue_subtle_desire_perk
	remove_variable = eotm_pending_parent_had_intrigue_swift_execution_perk
	remove_variable = eotm_pending_parent_had_intrigue_thriving_in_chaos_perk
	remove_variable = eotm_pending_parent_had_intrigue_torturer_perk
	remove_variable = eotm_pending_parent_had_intrigue_truth_is_relative_perk
	remove_variable = eotm_pending_parent_had_intrigue_twice_schemed_perk
	remove_variable = eotm_pending_parent_had_intrigue_unshackled_lust_perk
}

eotm_count_pending_intrigue_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_intrigue_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_a_job_done_right_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_court_of_shadows_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_dark_insights_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_digging_for_dirt_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_divine_retribution_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_dreadful_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_enticing_opportunity_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_fear_tax_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_forever_infamous_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_graceful_recovery_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_home_advantage_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_kidnapper_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_like_weed_in_a_garden_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_malice_implicit_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_mortal_adoration_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_prepared_for_anything_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_prison_feudal_complex_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_schemer_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_seducer_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_smooth_operator_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_subtle_desire_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_swift_execution_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_thriving_in_chaos_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_torturer_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_truth_is_relative_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_twice_schemed_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_intrigue_unshackled_lust_perk } change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_intrigue_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_intrigue_parent_snapshot_count }
		if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_intrigue_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_intrigue_parent_perk_snapshot = {
	eotm_clear_pending_intrigue_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_intrigue_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = a_job_done_right_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_a_job_done_right_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = court_of_shadows_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_court_of_shadows_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = dark_insights_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_dark_insights_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = digging_for_dirt_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_digging_for_dirt_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = divine_retribution_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_divine_retribution_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = dreadful_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_dreadful_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = enticing_opportunity_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_enticing_opportunity_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = fear_tax_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_fear_tax_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = forever_infamous_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_forever_infamous_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = graceful_recovery_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_graceful_recovery_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = home_advantage_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_home_advantage_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = kidnapper_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_kidnapper_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = like_weed_in_a_garden_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_like_weed_in_a_garden_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = malice_implicit_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_malice_implicit_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = mortal_adoration_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_mortal_adoration_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = prepared_for_anything_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_prepared_for_anything_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = prison_feudal_complex_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_prison_feudal_complex_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = schemer_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_schemer_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = seducer_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_seducer_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = smooth_operator_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_smooth_operator_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = subtle_desire_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_subtle_desire_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = swift_execution_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_swift_execution_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = thriving_in_chaos_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_thriving_in_chaos_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = torturer_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_torturer_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = truth_is_relative_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_truth_is_relative_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = twice_schemed_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_twice_schemed_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = unshackled_lust_perk } }
		set_variable = { name = eotm_pending_parent_had_intrigue_unshackled_lust_perk value = 1 }
		change_variable = { name = eotm_pending_intrigue_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_intrigue_parent_snapshot_count = yes
	remove_variable = eotm_pending_intrigue_parent_snapshot_count
}

eotm_debug_log_pending_intrigue_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_intrigue_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_intrigue_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_intrigue_parent_perk_snapshot = yes
	}
	eotm_count_pending_intrigue_parent_snapshot_perks = yes
	eotm_debug_log_pending_intrigue_parent_snapshot_count = yes
	remove_variable = eotm_pending_intrigue_parent_snapshot_count
}

############################################################
# Pending Wanderer parent-owned perk snapshot
############################################################

eotm_clear_pending_wanderer_parent_perk_snapshot = {
	remove_variable = eotm_pending_wanderer_parent_snapshot_count
	remove_variable = eotm_pending_parent_had_wanderer_been_there_done_that_perk
	remove_variable = eotm_pending_parent_had_wanderer_far_and_wide_perk
	remove_variable = eotm_pending_parent_had_wanderer_finally_there_perk
	remove_variable = eotm_pending_parent_had_wanderer_gracious_host_impeccable_guest_perk
	remove_variable = eotm_pending_parent_had_wanderer_journey_perk
	remove_variable = eotm_pending_parent_had_wanderer_journey_planner_perk
	remove_variable = eotm_pending_parent_had_wanderer_just_one_more_hill_perk
	remove_variable = eotm_pending_parent_had_wanderer_know_your_land_know_your_people_perk
	remove_variable = eotm_pending_parent_had_wanderer_local_arbitration_perk
	remove_variable = eotm_pending_parent_had_wanderer_local_hero_perk
	remove_variable = eotm_pending_parent_had_wanderer_local_inspection_perk
	remove_variable = eotm_pending_parent_had_wanderer_mercenary_contacts_perk
	remove_variable = eotm_pending_parent_had_wanderer_mustering_the_troops_perk
	remove_variable = eotm_pending_parent_had_wanderer_no_stone_unturned_perk
	remove_variable = eotm_pending_parent_had_wanderer_of_the_people_perk
	remove_variable = eotm_pending_parent_had_wanderer_personal_touch_perk
	remove_variable = eotm_pending_parent_had_wanderer_power_at_home_perk
	remove_variable = eotm_pending_parent_had_wanderer_realm_charts_perk
	remove_variable = eotm_pending_parent_had_wanderer_roaming_perk
	remove_variable = eotm_pending_parent_had_wanderer_souvenirs_aplenty_perk
	remove_variable = eotm_pending_parent_had_wanderer_surveyor_perk
	remove_variable = eotm_pending_parent_had_wanderer_the_home_away_from_home_perk
	remove_variable = eotm_pending_parent_had_wanderer_travel_companion_perk
	remove_variable = eotm_pending_parent_had_wanderer_travel_logs_perk
	remove_variable = eotm_pending_parent_had_wanderer_voyager_perk
	remove_variable = eotm_pending_parent_had_wanderer_wayfarer_perk
	remove_variable = eotm_pending_parent_had_wanderer_well_prepared_perk
}

eotm_count_pending_wanderer_parent_snapshot_perks = {
	set_variable = { name = eotm_pending_wanderer_parent_snapshot_count value = 0 }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_been_there_done_that_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_far_and_wide_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_finally_there_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_gracious_host_impeccable_guest_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_journey_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_journey_planner_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_just_one_more_hill_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_know_your_land_know_your_people_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_local_arbitration_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_local_hero_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_local_inspection_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_mercenary_contacts_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_mustering_the_troops_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_no_stone_unturned_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_of_the_people_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_personal_touch_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_power_at_home_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_realm_charts_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_roaming_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_souvenirs_aplenty_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_surveyor_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_the_home_away_from_home_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_travel_companion_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_travel_logs_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_voyager_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_wayfarer_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
	if = { limit = { has_variable = eotm_pending_parent_had_wanderer_well_prepared_perk } change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 } }
}

eotm_debug_log_pending_wanderer_parent_snapshot_count = {
	if = {
		limit = { exists = var:eotm_pending_wanderer_parent_snapshot_count }
		if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 0 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 1 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 2 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 3 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 4 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 5 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 6 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 7 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 8 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 9 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 10 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 11 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 12 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 13 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 14 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 15 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 16 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 17 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 18 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 19 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 20 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 21 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 22 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 23 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 24 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 25 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 26 } hidden_effect = { } }
		else_if = { limit = { var:eotm_pending_wanderer_parent_snapshot_count ?= 27 } hidden_effect = { } }
		else = { hidden_effect = { } }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_wanderer_parent_perk_snapshot = {
	eotm_clear_pending_wanderer_parent_perk_snapshot = yes
	set_variable = { name = eotm_pending_wanderer_parent_snapshot_count value = 0 }
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = been_there_done_that_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_been_there_done_that_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = far_and_wide_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_far_and_wide_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = finally_there_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_finally_there_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = gracious_host_impeccable_guest_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_gracious_host_impeccable_guest_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = journey_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_journey_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = journey_planner_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_journey_planner_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = just_one_more_hill_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_just_one_more_hill_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = know_your_land_know_your_people_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_know_your_land_know_your_people_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = local_arbitration_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_local_arbitration_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = local_hero_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_local_hero_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = local_inspection_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_local_inspection_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = mercenary_contacts_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_mercenary_contacts_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = mustering_the_troops_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_mustering_the_troops_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = no_stone_unturned_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_no_stone_unturned_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = of_the_people_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_of_the_people_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = personal_touch_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_personal_touch_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = power_at_home_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_power_at_home_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = realm_charts_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_realm_charts_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = roaming_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_roaming_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = souvenirs_aplenty_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_souvenirs_aplenty_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = surveyor_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_surveyor_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = the_home_away_from_home_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_the_home_away_from_home_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = travel_companion_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_travel_companion_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = travel_logs_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_travel_logs_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = voyager_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_voyager_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = wayfarer_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_wayfarer_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	if = {
		limit = { scope:eotm_deceased_parent ?= { has_perk = well_prepared_perk } }
		set_variable = { name = eotm_pending_parent_had_wanderer_well_prepared_perk value = 1 }
		change_variable = { name = eotm_pending_wanderer_parent_snapshot_count add = 1 }
	}
	hidden_effect = { }
	eotm_debug_log_pending_wanderer_parent_snapshot_count = yes
	remove_variable = eotm_pending_wanderer_parent_snapshot_count
}

eotm_debug_log_pending_wanderer_parent_restore = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
	eotm_count_pending_wanderer_parent_snapshot_perks = yes
	if = {
		limit = { exists = scope:eotm_deceased_parent var:eotm_pending_wanderer_parent_snapshot_count ?= 0 }
		hidden_effect = { }
		eotm_store_pending_wanderer_parent_perk_snapshot = yes
	}
	eotm_count_pending_wanderer_parent_snapshot_perks = yes
	eotm_debug_log_pending_wanderer_parent_snapshot_count = yes
	remove_variable = eotm_pending_wanderer_parent_snapshot_count
}


eotm_store_pending_learning_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_learning_target_count var:eotm_learning_target_count > 0 }
		set_variable = { name = eotm_pending_learning_inheritance value = 1 }
		set_variable = { name = eotm_pending_learning_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_learning_target_count value = { value = var:eotm_learning_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_learning_target_count = yes
		eotm_store_pending_learning_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_martial_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_martial_target_count var:eotm_martial_target_count > 0 }
		set_variable = { name = eotm_pending_martial_inheritance value = 1 }
		set_variable = { name = eotm_pending_martial_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_martial_target_count value = { value = var:eotm_martial_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_martial_target_count = yes
		eotm_store_pending_martial_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_diplomacy_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_diplomacy_target_count var:eotm_diplomacy_target_count > 0 }
		set_variable = { name = eotm_pending_diplomacy_inheritance value = 1 }
		set_variable = { name = eotm_pending_diplomacy_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_diplomacy_target_count value = { value = var:eotm_diplomacy_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_diplomacy_target_count = yes
		eotm_store_pending_diplomacy_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_stewardship_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_stewardship_target_count var:eotm_stewardship_target_count > 0 }
		set_variable = { name = eotm_pending_stewardship_inheritance value = 1 }
		set_variable = { name = eotm_pending_stewardship_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_stewardship_target_count value = { value = var:eotm_stewardship_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_stewardship_target_count = yes
		eotm_store_pending_stewardship_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_intrigue_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_intrigue_target_count var:eotm_intrigue_target_count > 0 }
		set_variable = { name = eotm_pending_intrigue_inheritance value = 1 }
		set_variable = { name = eotm_pending_intrigue_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_intrigue_target_count value = { value = var:eotm_intrigue_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_intrigue_target_count = yes
		eotm_store_pending_intrigue_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_store_pending_wanderer_inheritance = {
	if = {
		limit = { exists = scope:eotm_deceased_parent exists = var:eotm_wanderer_target_count var:eotm_wanderer_target_count > 0 }
		set_variable = { name = eotm_pending_wanderer_inheritance value = 1 }
		set_variable = { name = eotm_pending_wanderer_parent value = scope:eotm_deceased_parent }
		set_variable = { name = eotm_pending_wanderer_target_count value = { value = var:eotm_wanderer_target_count } }
		hidden_effect = { }
		hidden_effect = { }
		eotm_debug_log_wanderer_target_count = yes
		eotm_store_pending_wanderer_parent_perk_snapshot = yes
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_prepare_pending_learning_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_learning_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_learning_target_count = yes
	eotm_debug_log_learning_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_learning_parent_visible_count = yes }
	eotm_debug_log_learning_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_learning_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_learning_inheritance_child_temp_variables = yes
}

eotm_prepare_pending_martial_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_martial_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_martial_target_count = yes
	eotm_debug_log_martial_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_martial_parent_visible_count = yes }
	eotm_debug_log_martial_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_martial_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_martial_inheritance_child_temp_variables = yes
}

eotm_prepare_pending_diplomacy_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_diplomacy_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_diplomacy_target_count = yes
	eotm_debug_log_diplomacy_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_diplomacy_parent_visible_count = yes }
	eotm_debug_log_diplomacy_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_diplomacy_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_diplomacy_inheritance_child_temp_variables = yes
}

eotm_prepare_pending_stewardship_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_stewardship_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_stewardship_target_count = yes
	eotm_debug_log_stewardship_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_stewardship_parent_visible_count = yes }
	eotm_debug_log_stewardship_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_stewardship_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_stewardship_inheritance_child_temp_variables = yes
}

eotm_prepare_pending_intrigue_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_intrigue_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_intrigue_target_count = yes
	eotm_debug_log_intrigue_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_intrigue_parent_visible_count = yes }
	eotm_debug_log_intrigue_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_intrigue_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_intrigue_inheritance_child_temp_variables = yes
}

eotm_prepare_pending_wanderer_inheritance_child = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }
	eotm_debug_log_wanderer_child_age_years = yes
	eotm_backfill_inheritance_profile_if_missing = yes
	eotm_calculate_child_wanderer_target_count = yes
	eotm_debug_log_wanderer_age_bracket_and_percentage = yes
	scope:eotm_deceased_parent = { eotm_debug_log_wanderer_parent_visible_count = yes }
	eotm_debug_log_wanderer_target_count = yes
	eotm_apply_advanced_inheritance_resolver_insertion_points = yes
	eotm_store_pending_wanderer_inheritance = yes
	eotm_store_pending_inheritance_report_window_effect = yes
	eotm_cleanup_wanderer_inheritance_child_temp_variables = yes
}

eotm_activate_pending_learning_inheritance = {
	if = {
		limit = { eotm_has_pending_learning_inheritance = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_learning_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_learning_parent }
			var:eotm_pending_learning_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_learning_parent_restore = yes
		eotm_process_learning_inheritance_child = yes
		remove_variable = eotm_pending_learning_activation_active
		remove_variable = eotm_pending_learning_inheritance
		remove_variable = eotm_pending_learning_parent
		remove_variable = eotm_pending_learning_target_count
		eotm_clear_pending_learning_parent_perk_snapshot = yes
		hidden_effect = { }
	}
}

eotm_activate_pending_martial_inheritance = {
	if = {
		limit = { eotm_has_pending_martial_inheritance = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_martial_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_martial_parent }
			var:eotm_pending_martial_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_martial_parent_restore = yes
		eotm_process_martial_inheritance_child = yes
		remove_variable = eotm_pending_martial_activation_active
		remove_variable = eotm_pending_martial_inheritance
		remove_variable = eotm_pending_martial_parent
		remove_variable = eotm_pending_martial_target_count
		eotm_clear_pending_martial_parent_perk_snapshot = yes
		hidden_effect = { }
	}
}

eotm_activate_pending_diplomacy_inheritance = {
	if = {
		limit = { eotm_has_pending_diplomacy_inheritance = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_diplomacy_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_diplomacy_parent }
			var:eotm_pending_diplomacy_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_diplomacy_parent_restore = yes
		eotm_process_diplomacy_inheritance_child = yes
		remove_variable = eotm_pending_diplomacy_activation_active
		remove_variable = eotm_pending_diplomacy_inheritance
		remove_variable = eotm_pending_diplomacy_parent
		remove_variable = eotm_pending_diplomacy_target_count
		eotm_clear_pending_diplomacy_parent_perk_snapshot = yes
		hidden_effect = { }
	}
}

eotm_activate_pending_stewardship_inheritance = {
	if = {
		limit = { eotm_has_pending_stewardship_inheritance = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_stewardship_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_stewardship_parent }
			var:eotm_pending_stewardship_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_stewardship_parent_restore = yes
		eotm_process_stewardship_inheritance_child = yes
		remove_variable = eotm_pending_stewardship_activation_active
		remove_variable = eotm_pending_stewardship_inheritance
		remove_variable = eotm_pending_stewardship_parent
		remove_variable = eotm_pending_stewardship_target_count
		eotm_clear_pending_stewardship_parent_perk_snapshot = yes
		hidden_effect = { }
	}
}

eotm_activate_pending_intrigue_inheritance = {
	if = {
		limit = { eotm_has_pending_intrigue_inheritance = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_intrigue_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_intrigue_parent }
			var:eotm_pending_intrigue_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_intrigue_parent_restore = yes
		eotm_process_intrigue_inheritance_child = yes
		remove_variable = eotm_pending_intrigue_activation_active
		remove_variable = eotm_pending_intrigue_inheritance
		remove_variable = eotm_pending_intrigue_parent
		remove_variable = eotm_pending_intrigue_target_count
		eotm_clear_pending_intrigue_parent_perk_snapshot = yes
		hidden_effect = { }
	}
}

eotm_activate_pending_wanderer_inheritance = {
	if = {
		limit = { eotm_has_pending_wanderer_inheritance = yes eotm_wanderer_content_available = yes }
		hidden_effect = { }
		hidden_effect = { }
		set_variable = { name = eotm_pending_wanderer_activation_active value = 1 }
		if = {
			limit = { has_variable = eotm_pending_wanderer_parent }
			var:eotm_pending_wanderer_parent = { save_scope_as = eotm_deceased_parent }
		}
		else = {
			hidden_effect = { }
		}
		eotm_debug_log_pending_wanderer_parent_restore = yes
		eotm_process_wanderer_inheritance_child = yes
		remove_variable = eotm_pending_wanderer_activation_active
		remove_variable = eotm_pending_wanderer_inheritance
		remove_variable = eotm_pending_wanderer_parent
		remove_variable = eotm_pending_wanderer_target_count
		eotm_clear_pending_wanderer_parent_perk_snapshot = yes
		hidden_effect = { }
	}
	else_if = {
		limit = { eotm_has_pending_wanderer_inheritance = yes NOT = { eotm_wanderer_content_available = yes } }
		hidden_effect = { }
	}
}

eotm_activate_pending_inheritance_on_adulthood = {
	eotm_activate_pending_adulthood_inheritance = yes
}

eotm_try_activate_current_player_pending_inheritance_effect = {
	if = {
		limit = {
			is_ai = no
			eotm_has_any_pending_adulthood_inheritance = yes
		}
		if = {
			limit = { age < 16 }
			eotm_show_deferred_inheritance_notice_effect = yes
		}
		else = {
			eotm_try_activate_pending_inheritance_on_adulthood_fallback = yes
		}
	}
}

eotm_try_activate_pending_inheritance_on_adulthood = {
	hidden_effect = { }
	hidden_effect = { }
	hidden_effect = { }

	if = {
		limit = {
			age >= 16
			is_ai = no
			eotm_has_any_pending_adulthood_inheritance = yes
		}
		hidden_effect = { }
		eotm_activate_pending_inheritance_on_adulthood = yes
	}
	else_if = {
		limit = {
			eotm_has_any_pending_adulthood_inheritance = yes
		}
		hidden_effect = { }
		hidden_effect = { }
	}
	else = {
		hidden_effect = { }
	}
}

eotm_try_activate_pending_inheritance_on_adulthood_fallback = {
	if = {
		limit = {
			age >= 16
			is_ai = no
			eotm_has_any_pending_adulthood_inheritance = yes
		}
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
		hidden_effect = { }
		eotm_activate_pending_inheritance_on_adulthood = yes
	}
	else_if = {
		limit = {
			age >= 16
			is_ai = no
			has_variable = eotm_pending_inheritance_report_window
			NOT = { has_variable = eotm_pending_inheritance_report_window_shown }
		}
		eotm_show_pending_inheritance_report_window_effect = yes
	}
}

eotm_activate_pending_adulthood_inheritance = {
	hidden_effect = { }
	eotm_activate_pending_learning_inheritance = yes
	eotm_activate_pending_martial_inheritance = yes
	eotm_activate_pending_diplomacy_inheritance = yes
	eotm_activate_pending_stewardship_inheritance = yes
	eotm_activate_pending_intrigue_inheritance = yes
	eotm_activate_pending_wanderer_inheritance = yes
	eotm_show_pending_inheritance_report_window_effect = yes
	hidden_effect = { }
}

eotm_show_deferred_inheritance_notice_effect = {
	if = {
		limit = {
			age < 16
			is_ai = no
			OR = {
				eotm_has_any_pending_adulthood_inheritance = yes
				has_variable = eotm_deferred_inheritance_notice_pending
			}
			NOT = { has_variable = eotm_deferred_inheritance_notice_shown }
		}
		trigger_event = {
			id = eotm_report_events.0110
			days = 1
		}
	}
}

eotm_show_pending_inheritance_report_window_effect = {
	if = {
		limit = {
			is_ai = no
			has_variable = eotm_pending_inheritance_report_window
			NOT = { has_variable = eotm_pending_inheritance_report_window_shown }
		}
		if = {
			limit = { NOT = { exists = var:eotm_pending_report_total_granted_count } }
			set_variable = { name = eotm_pending_report_total_granted_count value = 0 }
			if = { limit = { exists = var:eotm_pending_report_learning_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_learning_granted_count } }
			if = { limit = { exists = var:eotm_pending_report_martial_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_martial_granted_count } }
			if = { limit = { exists = var:eotm_pending_report_diplomacy_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_diplomacy_granted_count } }
			if = { limit = { exists = var:eotm_pending_report_stewardship_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_stewardship_granted_count } }
			if = { limit = { exists = var:eotm_pending_report_intrigue_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_intrigue_granted_count } }
			if = { limit = { exists = var:eotm_pending_report_wanderer_granted_count } change_variable = { name = eotm_pending_report_total_granted_count add = var:eotm_pending_report_wanderer_granted_count } }
		}
		set_variable = { name = eotm_pending_inheritance_report_window_shown value = 1 }
		if = {
			limit = { has_variable = eotm_living_succession_report_window }
			trigger_event = {
				id = eotm_report_events.0121
				days = 1
			}
		}
		else_if = {
			limit = {
				OR = {
					has_variable = eotm_deferred_inheritance_notice_pending
					has_variable = eotm_deferred_inheritance_notice_shown
				}
			}
			trigger_event = {
				id = eotm_report_events.0112
				days = 1
			}
		}
		else = {
			trigger_event = {
				id = eotm_report_events.0102
				days = 1
			}
		}
	}
}

eotm_apply_living_father_guidance_effect = {
	if = {
		limit = {
			NOT = {
				OR = {
					has_trait = eotm_living_father_guidance
					has_trait = eotm_living_father_guidance_15
					has_trait = eotm_living_father_guidance_20
					has_trait = eotm_living_father_guidance_25
					has_trait = eotm_living_father_guidance_30
				}
			}
			eotm_inheritance_strength_100_selected = yes
		}
		add_trait = eotm_living_father_guidance_30
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED"
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED_30"
	}
	else_if = {
		limit = {
			NOT = {
				OR = {
					has_trait = eotm_living_father_guidance
					has_trait = eotm_living_father_guidance_15
					has_trait = eotm_living_father_guidance_20
					has_trait = eotm_living_father_guidance_25
					has_trait = eotm_living_father_guidance_30
				}
			}
			eotm_inheritance_strength_60_selected = yes
		}
		add_trait = eotm_living_father_guidance_20
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED"
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED_20"
	}
	else_if = {
		limit = {
			NOT = {
				OR = {
					has_trait = eotm_living_father_guidance
					has_trait = eotm_living_father_guidance_15
					has_trait = eotm_living_father_guidance_20
					has_trait = eotm_living_father_guidance_25
					has_trait = eotm_living_father_guidance_30
				}
			}
			eotm_inheritance_strength_40_selected = yes
		}
		add_trait = eotm_living_father_guidance_15
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED"
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED_15"
	}
	else_if = {
		limit = {
			NOT = {
				OR = {
					has_trait = eotm_living_father_guidance
					has_trait = eotm_living_father_guidance_15
					has_trait = eotm_living_father_guidance_20
					has_trait = eotm_living_father_guidance_25
					has_trait = eotm_living_father_guidance_30
				}
			}
		}
		add_trait = eotm_living_father_guidance_25
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED"
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_ADDED_25"
	}
}

eotm_remove_living_father_guidance_effect = {
	if = {
		limit = { has_trait = eotm_living_father_guidance }
		remove_trait = eotm_living_father_guidance
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_REMOVED"
	}
	if = {
		limit = { has_trait = eotm_living_father_guidance_15 }
		remove_trait = eotm_living_father_guidance_15
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_REMOVED"
	}
	if = {
		limit = { has_trait = eotm_living_father_guidance_20 }
		remove_trait = eotm_living_father_guidance_20
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_REMOVED"
	}
	if = {
		limit = { has_trait = eotm_living_father_guidance_25 }
		remove_trait = eotm_living_father_guidance_25
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_REMOVED"
	}
	if = {
		limit = { has_trait = eotm_living_father_guidance_30 }
		remove_trait = eotm_living_father_guidance_30
		debug_log = "EOTM_LIVING_SUCCESSION_TRAIT_REMOVED"
	}
	remove_variable = eotm_living_legacy_active
}

eotm_lock_living_legacy_transfer_effect = {
	if = {
		limit = { exists = scope:eotm_living_legacy_source }
		scope:eotm_living_legacy_source = {
			set_variable = { name = eotm_living_legacy_transferred value = 1 }
			set_variable = { name = eotm_living_legacy_active value = 1 }
		}
		set_variable = { name = eotm_living_legacy_active value = 1 }
		debug_log = "EOTM_LIVING_SUCCESSION_TRANSFER_LOCKED"
	}
}

eotm_prepare_living_succession_inheritance_effect = {
	if = {
		limit = { exists = scope:eotm_living_legacy_source }
		scope:eotm_living_legacy_source = {
			save_scope_as = eotm_deceased_parent
			eotm_count_parent_learning_normal_perks = yes
			eotm_count_parent_martial_visible_perks = yes
			eotm_count_parent_martial_final_visible_perks = yes
			eotm_count_parent_diplomacy_visible_perks = yes
			eotm_count_parent_diplomacy_final_visible_perks = yes
			eotm_count_parent_stewardship_visible_perks = yes
			eotm_count_parent_stewardship_final_visible_perks = yes
			eotm_count_parent_intrigue_visible_perks = yes
			eotm_count_parent_intrigue_final_visible_perks = yes
			if = {
				limit = { eotm_wanderer_content_available = yes }
				eotm_count_parent_wanderer_visible_perks = yes
				eotm_count_parent_wanderer_final_visible_perks = yes
			}
		}
		eotm_prepare_pending_learning_inheritance_child = yes
		eotm_prepare_pending_martial_inheritance_child = yes
		eotm_prepare_pending_diplomacy_inheritance_child = yes
		eotm_prepare_pending_stewardship_inheritance_child = yes
		eotm_prepare_pending_intrigue_inheritance_child = yes
		if = {
			limit = { eotm_wanderer_content_available = yes }
			eotm_prepare_pending_wanderer_inheritance_child = yes
		}
		if = {
			limit = { age >= 16 }
			set_variable = { name = eotm_living_succession_report_window value = 1 }
			eotm_try_activate_pending_inheritance_on_adulthood_fallback = yes
			debug_log = "EOTM_LIVING_SUCCESSION_INHERITANCE_GRANTED"
		}
		else = {
			eotm_show_deferred_inheritance_notice_effect = yes
		}
		scope:eotm_living_legacy_source = {
			remove_variable = eotm_parent_learning_normal_perk_count
			remove_variable = eotm_parent_martial_visible_perk_count
			remove_variable = eotm_parent_martial_final_visible_perk_count
			remove_variable = eotm_parent_diplomacy_visible_perk_count
			remove_variable = eotm_parent_diplomacy_final_visible_perk_count
			remove_variable = eotm_parent_stewardship_visible_perk_count
			remove_variable = eotm_parent_stewardship_final_visible_perk_count
			remove_variable = eotm_parent_intrigue_visible_perk_count
			remove_variable = eotm_parent_intrigue_final_visible_perk_count
			remove_variable = eotm_parent_wanderer_visible_perk_count
			remove_variable = eotm_parent_wanderer_final_visible_perk_count
		}
	}
}

eotm_prepare_same_dynasty_fallback_candidate_inheritance_effect = {
	if = {
		limit = { exists = scope:eotm_deceased_parent }
		set_variable = { name = eotm_same_dynasty_fallback_inheritance_active value = 1 }
		eotm_prepare_pending_learning_inheritance_child = yes
		eotm_prepare_pending_martial_inheritance_child = yes
		eotm_prepare_pending_diplomacy_inheritance_child = yes
		eotm_prepare_pending_stewardship_inheritance_child = yes
		eotm_prepare_pending_intrigue_inheritance_child = yes
		if = {
			limit = { eotm_wanderer_content_available = yes }
			eotm_prepare_pending_wanderer_inheritance_child = yes
		}
		eotm_try_activate_current_player_pending_inheritance_effect = yes
		set_variable = { name = eotm_same_dynasty_fallback_inheritance_done value = 1 }
		remove_variable = eotm_same_dynasty_fallback_inheritance_active
	}
}

eotm_prepare_same_dynasty_fallback_inheritance_effect = {
	if = {
		limit = { exists = dynasty }
		save_scope_as = eotm_deceased_parent
		scope:eotm_deceased_parent = {
			eotm_count_parent_learning_normal_perks = yes
			eotm_count_parent_martial_visible_perks = yes
			eotm_count_parent_martial_final_visible_perks = yes
			eotm_count_parent_diplomacy_visible_perks = yes
			eotm_count_parent_diplomacy_final_visible_perks = yes
			eotm_count_parent_stewardship_visible_perks = yes
			eotm_count_parent_stewardship_final_visible_perks = yes
			eotm_count_parent_intrigue_visible_perks = yes
			eotm_count_parent_intrigue_final_visible_perks = yes
			if = {
				limit = { eotm_wanderer_content_available = yes }
				eotm_count_parent_wanderer_visible_perks = yes
				eotm_count_parent_wanderer_final_visible_perks = yes
			}
		}
		if = {
			limit = {
				player_heir ?= {
					is_alive = yes
					exists = dynasty
					dynasty = scope:eotm_deceased_parent.dynasty
					NOT = { this = scope:eotm_deceased_parent }
					NOT = { any_parent = { this = scope:eotm_deceased_parent } }
					NOT = { is_sibling_of = scope:eotm_deceased_parent }
					NOT = { has_variable = eotm_same_dynasty_fallback_inheritance_done }
					NOT = { eotm_grandparent_inheritance_off_selected = yes }
				}
			}
			player_heir = {
				eotm_prepare_same_dynasty_fallback_candidate_inheritance_effect = yes
			}
		}
		scope:eotm_deceased_parent = {
			remove_variable = eotm_parent_learning_normal_perk_count
			remove_variable = eotm_parent_martial_visible_perk_count
			remove_variable = eotm_parent_martial_final_visible_perk_count
			remove_variable = eotm_parent_diplomacy_visible_perk_count
			remove_variable = eotm_parent_diplomacy_final_visible_perk_count
			remove_variable = eotm_parent_stewardship_visible_perk_count
			remove_variable = eotm_parent_stewardship_final_visible_perk_count
			remove_variable = eotm_parent_intrigue_visible_perk_count
			remove_variable = eotm_parent_intrigue_final_visible_perk_count
			remove_variable = eotm_parent_wanderer_visible_perk_count
			remove_variable = eotm_parent_wanderer_final_visible_perk_count
		}
	}
}

eotm_fire_living_succession_event_effect = {
	if = {
		limit = {
			is_ruler = yes
			exists = scope:eotm_living_legacy_source
			scope:eotm_living_legacy_source = {
				is_alive = yes
				NOT = { has_variable = eotm_living_legacy_transferred }
			}
			NOT = { has_variable = eotm_living_legacy_active }
		}
		save_scope_as = eotm_living_legacy_heir
		trigger_event = eotm_report_events.0120
	}
}

eotm_try_living_succession_from_father_effect = {
	debug_log = "EOTM_LIVING_SUCCESSION_TITLE_GAIN_CHECK"
	if = {
		limit = {
			is_ruler = yes
			exists = father
			father = {
				is_alive = yes
				has_variable = eotm_was_player_ruler_source
				NOT = { has_variable = eotm_living_legacy_transferred }
			}
			NOT = { has_variable = eotm_living_legacy_active }
		}
		father = { save_scope_as = eotm_living_legacy_source }
		eotm_fire_living_succession_event_effect = yes
	}
}

eotm_try_living_succession_from_abdication_effect = {
	debug_log = "EOTM_LIVING_SUCCESSION_ABDICATION_CHECK"
	if = {
		limit = {
			is_ruler = yes
			exists = father
			exists = scope:previous_holder
			scope:transfer_type = flag:abdication
			father = { this = scope:previous_holder }
			scope:previous_holder = {
				is_alive = yes
				is_ai = no
				NOT = { has_variable = eotm_living_legacy_transferred }
			}
			NOT = { has_variable = eotm_living_legacy_active }
		}
		debug_log = "EOTM_LIVING_SUCCESSION_ABDICATION_VALID_PATH"
		scope:previous_holder = {
			set_variable = { name = eotm_was_player_ruler_source value = 1 }
			save_scope_as = eotm_living_legacy_source
		}
		eotm_fire_living_succession_event_effect = yes
	}
}

eotm_debug_simulate_living_succession_effect = {
	debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_DECISION_USED"
	if = {
		limit = { NOT = { exists = father } }
		debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_BLOCKED_NO_FATHER"
	}
	else_if = {
		limit = {
			exists = father
			father = { is_alive = no }
		}
		debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_BLOCKED_FATHER_DEAD"
	}
	else_if = {
		limit = {
			exists = father
			father = { has_variable = eotm_living_legacy_transferred }
		}
		debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_BLOCKED_ALREADY_TRANSFERRED"
	}
	else_if = {
		limit = { has_variable = eotm_living_legacy_active }
		debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_BLOCKED_CHILD_ALREADY_ACTIVE"
	}
	if = {
		limit = {
			is_ai = no
			is_ruler = yes
			exists = father
			father = {
				is_alive = yes
				NOT = { has_variable = eotm_living_legacy_transferred }
			}
			NOT = { has_variable = eotm_living_legacy_active }
		}
		debug_log = "EOTM_LIVING_SUCCESSION_DEBUG_VALID_PATH"
		father = {
			set_variable = { name = eotm_was_player_ruler_source value = 1 }
			save_scope_as = eotm_living_legacy_source
		}
		eotm_fire_living_succession_event_effect = yes
	}
}

eotm_clear_pending_inheritance_report_window_effect = {
	remove_variable = eotm_pending_inheritance_report_window
	remove_variable = eotm_pending_inheritance_report_window_shown
	remove_variable = eotm_pending_inheritance_report_mode
	remove_variable = eotm_pending_report_learning_target_count
	remove_variable = eotm_pending_report_martial_target_count
	remove_variable = eotm_pending_report_diplomacy_target_count
	remove_variable = eotm_pending_report_stewardship_target_count
	remove_variable = eotm_pending_report_intrigue_target_count
	remove_variable = eotm_pending_report_wanderer_target_count
	remove_variable = eotm_pending_report_learning_granted_count
	remove_variable = eotm_pending_report_martial_granted_count
	remove_variable = eotm_pending_report_diplomacy_granted_count
	remove_variable = eotm_pending_report_stewardship_granted_count
	remove_variable = eotm_pending_report_intrigue_granted_count
	remove_variable = eotm_pending_report_wanderer_granted_count
	remove_variable = eotm_pending_report_total_granted_count
	remove_variable = eotm_pending_report_advanced_overflow_count
	remove_variable = eotm_pending_report_base_total_target_count
	remove_variable = eotm_living_succession_report_window
	remove_variable = eotm_inheritance_report_window_scheduled
	remove_variable = eotm_pending_inheritance_activation_retry_scheduled
	remove_variable = eotm_deferred_inheritance_notice_pending
}

eotm_clear_pending_adulthood_inheritance = {
	if = { limit = { eotm_has_pending_learning_inheritance = yes } hidden_effect = { } }
	if = { limit = { eotm_has_pending_martial_inheritance = yes } hidden_effect = { } }
	if = { limit = { eotm_has_pending_diplomacy_inheritance = yes } hidden_effect = { } }
	if = { limit = { eotm_has_pending_stewardship_inheritance = yes } hidden_effect = { } }
	if = { limit = { eotm_has_pending_intrigue_inheritance = yes } hidden_effect = { } }
	if = { limit = { eotm_has_pending_wanderer_inheritance = yes } hidden_effect = { } }
	eotm_clear_pending_learning_parent_perk_snapshot = yes
	eotm_clear_pending_martial_parent_perk_snapshot = yes
	eotm_clear_pending_diplomacy_parent_perk_snapshot = yes
	eotm_clear_pending_stewardship_parent_perk_snapshot = yes
	eotm_clear_pending_intrigue_parent_perk_snapshot = yes
	eotm_clear_pending_wanderer_parent_perk_snapshot = yes
	remove_variable = eotm_pending_learning_inheritance
	remove_variable = eotm_pending_learning_parent
	remove_variable = eotm_pending_learning_target_count
	remove_variable = eotm_pending_learning_activation_active
	remove_variable = eotm_pending_martial_inheritance
	remove_variable = eotm_pending_martial_parent
	remove_variable = eotm_pending_martial_target_count
	remove_variable = eotm_pending_martial_activation_active
	remove_variable = eotm_pending_diplomacy_inheritance
	remove_variable = eotm_pending_diplomacy_parent
	remove_variable = eotm_pending_diplomacy_target_count
	remove_variable = eotm_pending_diplomacy_activation_active
	remove_variable = eotm_pending_stewardship_inheritance
	remove_variable = eotm_pending_stewardship_parent
	remove_variable = eotm_pending_stewardship_target_count
	remove_variable = eotm_pending_stewardship_activation_active
	remove_variable = eotm_pending_intrigue_inheritance
	remove_variable = eotm_pending_intrigue_parent
	remove_variable = eotm_pending_intrigue_target_count
	remove_variable = eotm_pending_intrigue_activation_active
	remove_variable = eotm_pending_wanderer_inheritance
	remove_variable = eotm_pending_wanderer_parent
	remove_variable = eotm_pending_wanderer_target_count
	remove_variable = eotm_pending_wanderer_activation_active
	remove_variable = eotm_deferred_inheritance_notice_shown
	remove_variable = eotm_deferred_inheritance_notice_pending
	remove_variable = eotm_pending_inheritance_activation_retry_scheduled
}
