obf_notes_and_memories_variable_list = {

    effect = {
	clear_variable_list = notes_and_memories
	remove_global_variable = must_show_memorandum
	
	}
}

obf_toggle_reset_memorandum = {

		is_shown = {
			has_global_variable = must_show_memorandum
		}
    effect = {
	remove_global_variable = filter_only_notes
	remove_global_variable = filter_only_rulers
	remove_global_variable = filter_only_unmarried
	set_global_variable = filter_relationships
	set_global_variable = filter_no_relationships
     set_global_variable = must_show_memorandum
	clear_variable_list = notes_and_memories
	root = {every_memory = {every_memory_participant = {
		limit = {
			NOT = {this = root}
			is_alive = yes
				}	
				add_to_temporary_list = chars_in_my_memories
		}}}

	every_living_character = {
		limit = {
		NOT = {this = root}
			any_memory = {
			has_memory_participant = root
				}
			}	
			add_to_temporary_list = chars_in_my_memories
				}
	every_living_character = {
		limit = {
		NOT = {this = root}
			has_character_flag = had_note_taken
			}	
			add_to_temporary_list = chars_in_my_memories
				}
	ordered_in_list = {
			list = chars_in_my_memories
			order_by = highest_held_title_tier
			max = 500
			check_range_bounds = no
			root = {add_to_variable_list = {
				name = notes_and_memories
				target = prev
					}
				}
			}
	}
}


obf_toggle_notes_and_memories = {

		is_shown = {
			has_global_variable = must_show_memorandum
		}
    effect = {
	if = {
		limit = {
			has_global_variable = must_show_memorandum
		}
			remove_global_variable = must_show_memorandum
		}
	else = {
	
	remove_global_variable = filter_only_notes
	remove_global_variable = filter_only_rulers
	remove_global_variable = filter_only_unmarried
	set_global_variable = filter_relationships
	set_global_variable = filter_no_relationships
     set_global_variable = must_show_memorandum
	clear_variable_list = notes_and_memories
	root = {every_memory = {every_memory_participant = {
		limit = {
			NOT = {this = root}
			is_alive = yes
				}	
				add_to_temporary_list = chars_in_my_memories
		}}}

	every_living_character = {
		limit = {
		NOT = {this = root}
			any_memory = {
			has_memory_participant = root
				}
			}	
			add_to_temporary_list = chars_in_my_memories
				}
	every_living_character = {
		limit = {
		NOT = {this = root}
			has_character_flag = had_note_taken
			}	
			add_to_temporary_list = chars_in_my_memories
				}
	ordered_in_list = {
			list = chars_in_my_memories
			order_by = highest_held_title_tier
			max = 500
			check_range_bounds = no
			root = {add_to_variable_list = {
				name = notes_and_memories
				target = prev
					}
				}
			}
		}
	}
}

obf_toggle_filters = {

		is_shown = {
			has_global_variable = must_show_memorandum
		}
    effect = {
	clear_variable_list = notes_and_memories
	root = {every_memory = {every_memory_participant = {
	limit = {
			NOT = {this = root}
			is_alive = yes
				}
				add_to_temporary_list = chars_in_my_memories
		}}}
	
	every_living_character = {
		limit = {
		NOT = {this = root}
			any_memory = {
			has_memory_participant = root
				}
			}	
		add_to_temporary_list = chars_in_my_memories
			}
	every_living_character = {
		limit = {
		NOT = {this = root}
			has_character_flag = had_note_taken
			}	
			add_to_temporary_list = chars_in_my_memories
				}
	if = {#remove characters without notes
		limit = {
		has_global_variable = filter_only_notes
			}
			every_in_list = {
			list = chars_in_my_memories
			limit = {NOT = {has_character_flag = had_note_taken}}
			remove_from_list = chars_in_my_memories
			}
		}
	if = {#remove relations
		limit = {
		NOT = {has_global_variable = filter_relationships}
			}
			every_in_list = {
			list = chars_in_my_memories
			limit = {
			has_relation_to = root}
			remove_from_list = chars_in_my_memories
			}
		}
	if = {#remove no relations
		limit = {
		NOT = {has_global_variable = filter_no_relationships}
			}
			every_in_list = {
			list = chars_in_my_memories
			limit = {
			NOT = {
			has_relation_to = root}}
			remove_from_list = chars_in_my_memories
			}
		}
	if = {#remove no rulers
		limit = {
		has_global_variable = filter_only_rulers
			}
			every_in_list = {
			list = chars_in_my_memories
			limit = {
			is_ruler = no}
			remove_from_list = chars_in_my_memories
			}
		}
	if = {#remove
		limit = {
		has_global_variable = filter_only_unmarried
			}
		every_in_list = {
			list = chars_in_my_memories
			limit = {
			can_marry_trigger = no}
			remove_from_list = chars_in_my_memories
			}
		}
		
		
	ordered_in_list = {
			list = chars_in_my_memories
			order_by = highest_held_title_tier
			max = 500
			check_range_bounds = no
			root = {add_to_variable_list = {
				name = notes_and_memories
				target = prev
					}
				}
			}
	}
}

obf_toggle_only_notes = {

		is_shown = {
			has_global_variable = filter_only_notes
		}
    effect = {
		if = {
			limit = { NOT = {has_global_variable = filter_only_notes}}
					set_global_variable = filter_only_notes

            set_global_variable = must_show_memorandum
	clear_variable_list = notes_and_memories
	every_living_character = {
		limit = {
		NOT = {this = root}
			has_character_flag = had_note_taken
			}	
		root = {add_to_variable_list = {
				name = notes_and_memories
				target = prev
					}
				}
			}
		}
		else = {
		remove_global_variable = filter_only_notes
		}
	}
}

obf_toggle_relationships = {

	is_shown = {
			has_global_variable = filter_relationships
		}
    effect = {
		if = {
			limit = { NOT = {has_global_variable = filter_relationships}}
					set_global_variable = filter_relationships
			}
		else = {
		remove_global_variable = filter_relationships
		}
	}

}
obf_toggle_no_relationships = {

	is_shown = {
			has_global_variable = filter_no_relationships
		}
    effect = {
		if = {
			limit = { NOT = {has_global_variable = filter_no_relationships}}
					set_global_variable = filter_no_relationships
			}
		else = {
		remove_global_variable = filter_no_relationships
		}
	}

}

obf_toggle_only_rulers = {

	is_shown = {
			has_global_variable = filter_only_rulers
		}
    effect = {
		if = {
			limit = { NOT = {has_global_variable = filter_only_rulers}}
					set_global_variable = filter_only_rulers
			}
		else = {
		remove_global_variable = filter_only_rulers
		}
	}

}
obf_toggle_only_unmarried = {

	is_shown = {
			has_global_variable = filter_only_unmarried
		}
    effect = {
		if = {
			limit = { NOT = {has_global_variable = filter_only_unmarried}}
					set_global_variable = filter_only_unmarried
			}
		else = {
		remove_global_variable = filter_only_unmarried
		}
	}

}

obf_character_can_marry = {

	is_shown = {
			can_marry_trigger = yes
		}
		 effect = {
	}

}

obf_delete_all_notes_for_character = {

		effect = {
		remove_character_flag = had_note_taken
		remove_localized_text = test_saved_text
		random_memory = {
					limit = {
				has_memory_type = note_exposed_my_secret
				has_memory_participant = root
			}
			save_temporary_scope_as = note_exposed_my_secret_to_erase
			}
		if = {
			limit = {exists = scope:note_exposed_my_secret_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_exposed_my_secret_to_erase}
			}	
		random_memory = {
					limit = {
				has_memory_type = note_hostile_scheme_against_me
				has_memory_participant = root
			}
			save_temporary_scope_as = note_hostile_scheme_against_me_to_erase
			}
		if = {
			limit = {exists = scope:note_hostile_scheme_against_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_hostile_scheme_against_me_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_keep_an_eye_on
				has_memory_participant = root
			}
			save_temporary_scope_as = note_keep_an_eye_on_to_erase
			}
		if = {
			limit = {exists = scope:note_keep_an_eye_on_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_keep_an_eye_on_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_good_spouse_candidate
				has_memory_participant = root
			}
			save_temporary_scope_as = note_good_spouse_candidate_to_erase
			}
		if = {
			limit = {exists = scope:note_good_spouse_candidate_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_spouse_candidate_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_good_councillor
				has_memory_participant = root
			}
			save_temporary_scope_as = note_good_councillor_to_erase
			}
		if = {
			limit = {exists = scope:note_good_councillor_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_councillor_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_should_invite_to_court
				has_memory_participant = root
			}
			save_temporary_scope_as = note_should_invite_to_court_to_erase
			}
		if = {
			limit = {exists = scope:note_should_invite_to_court_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_should_invite_to_court_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_good_knight
				has_memory_participant = root
			}
			save_temporary_scope_as = note_good_knight_to_erase
			}
		if = {
			limit = {exists = scope:note_good_knight_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_knight_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_potential_war_target
				has_memory_participant = root
			}
			save_temporary_scope_as = note_potential_war_target_to_erase
			}
		if = {
			limit = {exists = scope:note_potential_war_target_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_potential_war_target_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_should_eliminate
				has_memory_participant = root
			}
			save_temporary_scope_as = note_should_eliminate_to_erase
			}
		if = {
			limit = {exists = scope:note_should_eliminate_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_should_eliminate_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_troublesome_vassal
				has_memory_participant = root
			}
			save_temporary_scope_as = note_troublesome_vassal_to_erase
			}
		if = {
			limit = {exists = scope:note_troublesome_vassal_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_troublesome_vassal_to_erase}
			}		
			random_memory = {
					limit = {
				has_memory_type = note_interesting_claimant
				has_memory_participant = root
			}
			save_temporary_scope_as = note_interesting_claimant_to_erase
			}
		if = {
			limit = {exists = scope:note_interesting_claimant_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_interesting_claimant_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_harmed_me
				has_memory_participant = root
			}
			save_temporary_scope_as = note_harmed_me_to_erase
			}
		if = {
			limit = {exists = scope:note_harmed_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_harmed_me_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_legitimized_me
				has_memory_participant = root
			}
			save_temporary_scope_as = note_legitimized_me_to_erase
			}
		if = {
			limit = {exists = scope:note_legitimized_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_legitimized_me_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_took_me_as_concubine
				has_memory_participant = root
			}
			save_temporary_scope_as = note_took_me_as_concubine_to_erase
			}
		if = {
			limit = {exists = scope:note_took_me_as_concubine_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_took_me_as_concubine_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_was_key_on_my_excommunication
				has_memory_participant = root
			}
			save_temporary_scope_as = note_was_key_on_my_excommunication_to_erase
			}
		if = {
			limit = {exists = scope:note_was_key_on_my_excommunication_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_was_key_on_my_excommunication_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_broken_betrothal
				has_memory_participant = root
			}
			save_temporary_scope_as = note_broken_betrothal_to_erase
			}
		if = {
			limit = {exists = scope:note_broken_betrothal_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_broken_betrothal_to_erase}
			}}	
		}

obf_delete_all_notes_for_player = {
saved_scopes = {
  target
}
		effect = {
		random_memory = {
					limit = {
				has_memory_type = note_exposed_my_secret
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_exposed_my_secret_to_erase
			}
		if = {
			limit = {exists = scope:note_exposed_my_secret_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_exposed_my_secret_to_erase}
			}
		random_memory = {
					limit = {
				has_memory_type = note_hostile_scheme_against_me
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_hostile_scheme_against_me_to_erase
			}
		if = {
			limit = {exists = scope:note_hostile_scheme_against_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_hostile_scheme_against_me_to_erase}
			}	
		random_memory = {
					limit = {
				has_memory_type = note_keep_an_eye_on
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_keep_an_eye_on_to_erase
			}
		if = {
			limit = {exists = scope:note_keep_an_eye_on_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_keep_an_eye_on_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_good_spouse_candidate
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_good_spouse_candidate_to_erase
			}
		if = {
			limit = {exists = scope:note_good_spouse_candidate_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_spouse_candidate_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_good_councillor
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_good_councillor_to_erase
			}
		if = {
			limit = {exists = scope:note_good_councillor_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_councillor_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_should_invite_to_court
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_should_invite_to_court_to_erase
			}
		if = {
			limit = {exists = scope:note_should_invite_to_court_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_should_invite_to_court_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_good_knight
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_good_knight_to_erase
			}
		if = {
			limit = {exists = scope:note_good_knight_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_good_knight_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_potential_war_target
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_potential_war_target_to_erase
			}
		if = {
			limit = {exists = scope:note_potential_war_target_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_potential_war_target_to_erase}
			}	
			random_memory = {
					limit = {
				has_memory_type = note_should_eliminate
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_should_eliminate_to_erase
			}
		if = {
			limit = {exists = scope:note_should_eliminate_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_should_eliminate_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_troublesome_vassal
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_troublesome_vassal_to_erase
			}
		if = {
			limit = {exists = scope:note_troublesome_vassal_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_troublesome_vassal_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_interesting_claimant
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_interesting_claimant_to_erase
			}
		if = {
			limit = {exists = scope:note_interesting_claimant_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_interesting_claimant_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_harmed_me
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_harmed_me_to_erase
			}
		if = {
			limit = {exists = scope:note_harmed_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_harmed_me_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_legitimized_me
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_legitimized_me_to_erase
			}
		if = {
			limit = {exists = scope:note_legitimized_me_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_legitimized_me_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_took_me_as_concubine
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_took_me_as_concubine_to_erase
			}
		if = {
			limit = {exists = scope:note_took_me_as_concubine_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_took_me_as_concubine_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_was_key_on_my_excommunication
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_was_key_on_my_excommunication_to_erase
			}
		if = {
			limit = {exists = scope:note_was_key_on_my_excommunication_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_was_key_on_my_excommunication_to_erase}
			}
			random_memory = {
					limit = {
				has_memory_type = note_broken_betrothal
				has_memory_participant = scope:target
			}
			save_temporary_scope_as = note_broken_betrothal_to_erase
			}
		if = {
			limit = {exists = scope:note_broken_betrothal_to_erase}
			hidden_effect = {
				destroy_character_memory = scope:note_broken_betrothal_to_erase}
			}}	
	}


obf_only_my_memories = {

saved_scopes = {
target
}
	is_shown = {
			has_memory_participant = scope:target
		}
		 effect = {
	}

}

obf_my_shared_memories = {

	is_shown = {
			has_global_variable = show_shared_memories
		}
    effect = {
	if = {
		limit = {
			has_global_variable = show_shared_memories
		}
			remove_global_variable = show_shared_memories
			every_living_character = {
			limit = {
			has_character_flag = memory_target}
			remove_character_flag = memory_target
			}

		}
	else = {
		set_global_variable = show_shared_memories
		add_character_flag = memory_target
		}
	}
}

obf_open_my_notes = {

	is_shown = {
			has_global_variable = show_only_notes
		}
    effect = {
	if = {
		limit = {
			has_global_variable = show_only_notes
		}
			remove_global_variable = show_only_notes

		}
	else = {
		set_global_variable = show_only_notes
		}
	}
}
	
obf_my_shared_memories_with_caracter = {

	is_shown = {
			any_memory_participant = {
			has_character_flag = memory_target
			}
		}
		effect = {
		
		}
	}

obf_see_only_notes = {

	is_shown = {
			has_memory_category = notes
			any_memory_participant = {
			is_alive = yes}
		}
	}
