diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 00000000..1183a124 --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: eaaf166f51613ee7f650276c6a80965a +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/api/core.doctree b/.doctrees/api/core.doctree new file mode 100644 index 00000000..d23452b4 Binary files /dev/null and b/.doctrees/api/core.doctree differ diff --git a/.doctrees/api/pyvene.data_generators.causal_model.CausalModel.doctree b/.doctrees/api/pyvene.data_generators.causal_model.CausalModel.doctree new file mode 100644 index 00000000..568144f3 Binary files /dev/null and b/.doctrees/api/pyvene.data_generators.causal_model.CausalModel.doctree differ diff --git a/.doctrees/api/pyvene.data_generators.causal_model.doctree b/.doctrees/api/pyvene.data_generators.causal_model.doctree new file mode 100644 index 00000000..5bb76e1e Binary files /dev/null and b/.doctrees/api/pyvene.data_generators.causal_model.doctree differ diff --git a/.doctrees/api/pyvene.data_generators.causal_model.simple_example.doctree b/.doctrees/api/pyvene.data_generators.causal_model.simple_example.doctree new file mode 100644 index 00000000..ac85a53d Binary files /dev/null and b/.doctrees/api/pyvene.data_generators.causal_model.simple_example.doctree differ diff --git a/.doctrees/api/pyvene.data_generators.doctree b/.doctrees/api/pyvene.data_generators.doctree new file mode 100644 index 00000000..78779fba Binary files /dev/null and b/.doctrees/api/pyvene.data_generators.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.doctree new file mode 100644 index 00000000..aeead371 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.doctree new file mode 100644 index 00000000..78c5b53a Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.doctree new file mode 100644 index 00000000..7505da87 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.doctree new file mode 100644 index 00000000..1a0b8342 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.doctree new file mode 100644 index 00000000..ddb06e58 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.doctree new file mode 100644 index 00000000..8c50caf5 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.doctree new file mode 100644 index 00000000..edac77c3 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.doctree new file mode 100644 index 00000000..cab3a00c Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.doctree new file mode 100644 index 00000000..2aeaf901 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.doctree new file mode 100644 index 00000000..c7c2e242 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.doctree new file mode 100644 index 00000000..cd4afa76 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.doctree new file mode 100644 index 00000000..b3e7f87b Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.doctree new file mode 100644 index 00000000..ca08d9d0 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.doctree b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.doctree new file mode 100644 index 00000000..1146b5f7 Binary files /dev/null and b/.doctrees/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.GET_LOC.doctree b/.doctrees/api/pyvene.models.basic_utils.GET_LOC.doctree new file mode 100644 index 00000000..f8986512 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.GET_LOC.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.closeness_to_permutation_loss.doctree b/.doctrees/api/pyvene.models.basic_utils.closeness_to_permutation_loss.doctree new file mode 100644 index 00000000..2259bfad Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.closeness_to_permutation_loss.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.count_parameters.doctree b/.doctrees/api/pyvene.models.basic_utils.count_parameters.doctree new file mode 100644 index 00000000..581a925f Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.count_parameters.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.create_directory.doctree b/.doctrees/api/pyvene.models.basic_utils.create_directory.doctree new file mode 100644 index 00000000..e665beca Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.create_directory.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.doctree b/.doctrees/api/pyvene.models.basic_utils.doctree new file mode 100644 index 00000000..4264eb45 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.embed_to_distrib.doctree b/.doctrees/api/pyvene.models.basic_utils.embed_to_distrib.doctree new file mode 100644 index 00000000..b32ac8ab Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.embed_to_distrib.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.format_token.doctree b/.doctrees/api/pyvene.models.basic_utils.format_token.doctree new file mode 100644 index 00000000..380f949f Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.format_token.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.get_batch_size.doctree b/.doctrees/api/pyvene.models.basic_utils.get_batch_size.doctree new file mode 100644 index 00000000..a14835cb Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.get_batch_size.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.get_list_depth.doctree b/.doctrees/api/pyvene.models.basic_utils.get_list_depth.doctree new file mode 100644 index 00000000..69700cab Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.get_list_depth.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.get_type_from_string.doctree b/.doctrees/api/pyvene.models.basic_utils.get_type_from_string.doctree new file mode 100644 index 00000000..60a7d1b5 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.get_type_from_string.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.doctree b/.doctrees/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.doctree new file mode 100644 index 00000000..8a8f851e Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.random_permutation_matrix.doctree b/.doctrees/api/pyvene.models.basic_utils.random_permutation_matrix.doctree new file mode 100644 index 00000000..1fc7bcdf Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.random_permutation_matrix.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.set_seed.doctree b/.doctrees/api/pyvene.models.basic_utils.set_seed.doctree new file mode 100644 index 00000000..6bbe8399 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.set_seed.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.sigmoid_boundary.doctree b/.doctrees/api/pyvene.models.basic_utils.sigmoid_boundary.doctree new file mode 100644 index 00000000..bf9a4696 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.sigmoid_boundary.doctree differ diff --git a/.doctrees/api/pyvene.models.basic_utils.top_vals.doctree b/.doctrees/api/pyvene.models.basic_utils.top_vals.doctree new file mode 100644 index 00000000..d5f35f59 Binary files /dev/null and b/.doctrees/api/pyvene.models.basic_utils.top_vals.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.doctree b/.doctrees/api/pyvene.models.blip.doctree new file mode 100644 index 00000000..7b209e3a Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_blip.BlipWrapper.doctree b/.doctrees/api/pyvene.models.blip.modelings_blip.BlipWrapper.doctree new file mode 100644 index 00000000..a46ce261 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_blip.BlipWrapper.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_blip.doctree b/.doctrees/api/pyvene.models.blip.modelings_blip.doctree new file mode 100644 index 00000000..a6b38be0 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_blip.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.doctree b/.doctrees/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.doctree new file mode 100644 index 00000000..12d7c056 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_blip_itm.doctree b/.doctrees/api/pyvene.models.blip.modelings_blip_itm.doctree new file mode 100644 index 00000000..202b5098 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_blip_itm.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..966505eb Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.doctree new file mode 100644 index 00000000..f0e5faba Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.doctree new file mode 100644 index 00000000..ef8bb643 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..c92232b2 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.doctree new file mode 100644 index 00000000..6a6e810c Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.doctree differ diff --git a/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.doctree b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.doctree new file mode 100644 index 00000000..f13bbb87 Binary files /dev/null and b/.doctrees/api/pyvene.models.blip.modelings_intervenable_blip_itm.doctree differ diff --git a/.doctrees/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.doctree b/.doctrees/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.doctree new file mode 100644 index 00000000..c5df8b51 Binary files /dev/null and b/.doctrees/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.doctree differ diff --git a/.doctrees/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.doctree b/.doctrees/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.doctree new file mode 100644 index 00000000..f4e61991 Binary files /dev/null and b/.doctrees/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.doctree differ diff --git a/.doctrees/api/pyvene.models.configuration_intervenable_model.doctree b/.doctrees/api/pyvene.models.configuration_intervenable_model.doctree new file mode 100644 index 00000000..244bc04a Binary files /dev/null and b/.doctrees/api/pyvene.models.configuration_intervenable_model.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.doctree b/.doctrees/api/pyvene.models.constants.doctree new file mode 100644 index 00000000..759f7cc4 Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.split_and_select.doctree b/.doctrees/api/pyvene.models.constants.split_and_select.doctree new file mode 100644 index 00000000..e4be1c69 Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.split_and_select.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.split_half.doctree b/.doctrees/api/pyvene.models.constants.split_half.doctree new file mode 100644 index 00000000..64c4e47b Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.split_half.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.split_head_and_permute.doctree b/.doctrees/api/pyvene.models.constants.split_head_and_permute.doctree new file mode 100644 index 00000000..d608a320 Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.split_head_and_permute.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.split_heads.doctree b/.doctrees/api/pyvene.models.constants.split_heads.doctree new file mode 100644 index 00000000..f3b76ef3 Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.split_heads.doctree differ diff --git a/.doctrees/api/pyvene.models.constants.split_three.doctree b/.doctrees/api/pyvene.models.constants.split_three.doctree new file mode 100644 index 00000000..573c0a6d Binary files /dev/null and b/.doctrees/api/pyvene.models.constants.split_three.doctree differ diff --git a/.doctrees/api/pyvene.models.doctree b/.doctrees/api/pyvene.models.doctree new file mode 100644 index 00000000..b42c6d43 Binary files /dev/null and b/.doctrees/api/pyvene.models.doctree differ diff --git a/.doctrees/api/pyvene.models.gemma.doctree b/.doctrees/api/pyvene.models.gemma.doctree new file mode 100644 index 00000000..ece3cb5d Binary files /dev/null and b/.doctrees/api/pyvene.models.gemma.doctree differ diff --git a/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.doctree b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.doctree new file mode 100644 index 00000000..3171fd5e Binary files /dev/null and b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.doctree differ diff --git a/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.doctree b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.doctree new file mode 100644 index 00000000..1083f071 Binary files /dev/null and b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.doctree differ diff --git a/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..b4fe7646 Binary files /dev/null and b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..a04996f0 Binary files /dev/null and b/.doctrees/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.doctree b/.doctrees/api/pyvene.models.gpt2.doctree new file mode 100644 index 00000000..6a8838ae Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.doctree new file mode 100644 index 00000000..b7fda0c7 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.doctree new file mode 100644 index 00000000..0202de7f Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.doctree new file mode 100644 index 00000000..307a0065 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.doctree new file mode 100644 index 00000000..eaa9fd7f Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..a750085b Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..2ab0126e Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neo.doctree b/.doctrees/api/pyvene.models.gpt_neo.doctree new file mode 100644 index 00000000..73b984de Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neo.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.doctree b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.doctree new file mode 100644 index 00000000..beeba626 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.doctree b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.doctree new file mode 100644 index 00000000..aecd13bf Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..3dd43907 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neox.doctree b/.doctrees/api/pyvene.models.gpt_neox.doctree new file mode 100644 index 00000000..38fe7fbc Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neox.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.doctree b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.doctree new file mode 100644 index 00000000..6012255e Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.doctree b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.doctree new file mode 100644 index 00000000..5a2acca2 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.doctree differ diff --git a/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..c3d67fc8 Binary files /dev/null and b/.doctrees/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.doctree b/.doctrees/api/pyvene.models.gru.doctree new file mode 100644 index 00000000..1b881b32 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUCell.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUCell.doctree new file mode 100644 index 00000000..8ce0b594 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUCell.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUConfig.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUConfig.doctree new file mode 100644 index 00000000..7aad0f83 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUConfig.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUForClassification.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUForClassification.doctree new file mode 100644 index 00000000..95159116 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUForClassification.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.doctree new file mode 100644 index 00000000..5d1851c6 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModel.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModel.doctree new file mode 100644 index 00000000..6058e8d6 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModel.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModelOutput.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModelOutput.doctree new file mode 100644 index 00000000..01ff1ef6 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUModelOutput.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.doctree new file mode 100644 index 00000000..00196536 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_gru.doctree b/.doctrees/api/pyvene.models.gru.modelings_gru.doctree new file mode 100644 index 00000000..7b49110e Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_gru.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.doctree new file mode 100644 index 00000000..3f70555f Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.doctree new file mode 100644 index 00000000..194558c7 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.doctree new file mode 100644 index 00000000..07378886 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.doctree new file mode 100644 index 00000000..5dfeb7b7 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..238553e6 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..b66ef401 Binary files /dev/null and b/.doctrees/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.BaseModel.doctree b/.doctrees/api/pyvene.models.intervenable_base.BaseModel.doctree new file mode 100644 index 00000000..22c4c63f Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.BaseModel.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.IntervenableModel.doctree b/.doctrees/api/pyvene.models.intervenable_base.IntervenableModel.doctree new file mode 100644 index 00000000..76e2ae44 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.IntervenableModel.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.IntervenableModelOutput.doctree b/.doctrees/api/pyvene.models.intervenable_base.IntervenableModelOutput.doctree new file mode 100644 index 00000000..34723a23 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.IntervenableModelOutput.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.IntervenableNdifModel.doctree b/.doctrees/api/pyvene.models.intervenable_base.IntervenableNdifModel.doctree new file mode 100644 index 00000000..fced4f41 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.IntervenableNdifModel.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.build_intervenable_model.doctree b/.doctrees/api/pyvene.models.intervenable_base.build_intervenable_model.doctree new file mode 100644 index 00000000..2956f609 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.build_intervenable_model.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_base.doctree b/.doctrees/api/pyvene.models.intervenable_base.doctree new file mode 100644 index 00000000..37502560 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_base.doctree differ diff --git a/.doctrees/api/pyvene.models.intervenable_modelcard.doctree b/.doctrees/api/pyvene.models.intervenable_modelcard.doctree new file mode 100644 index 00000000..7b4b7248 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervenable_modelcard.doctree differ diff --git a/.doctrees/api/pyvene.models.intervention_utils.InterventionState.doctree b/.doctrees/api/pyvene.models.intervention_utils.InterventionState.doctree new file mode 100644 index 00000000..2f2ef092 Binary files /dev/null and b/.doctrees/api/pyvene.models.intervention_utils.InterventionState.doctree differ diff --git a/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v1.doctree b/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v1.doctree new file mode 100644 index 00000000..4208b16d Binary files /dev/null and b/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v1.doctree differ diff --git a/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v2.doctree b/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v2.doctree new file mode 100644 index 00000000..f40f36ed Binary files /dev/null and b/.doctrees/api/pyvene.models.intervention_utils.broadcast_tensor_v2.doctree differ diff --git a/.doctrees/api/pyvene.models.intervention_utils.doctree b/.doctrees/api/pyvene.models.intervention_utils.doctree new file mode 100644 index 00000000..baf3fc2f Binary files /dev/null and b/.doctrees/api/pyvene.models.intervention_utils.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.AdditionIntervention.doctree b/.doctrees/api/pyvene.models.interventions.AdditionIntervention.doctree new file mode 100644 index 00000000..dcf9a77a Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.AdditionIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.AutoencoderIntervention.doctree b/.doctrees/api/pyvene.models.interventions.AutoencoderIntervention.doctree new file mode 100644 index 00000000..1fc83a4b Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.AutoencoderIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.BasisAgnosticIntervention.doctree b/.doctrees/api/pyvene.models.interventions.BasisAgnosticIntervention.doctree new file mode 100644 index 00000000..a4b0b41c Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.BasisAgnosticIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.doctree new file mode 100644 index 00000000..e3956148 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.CollectIntervention.doctree b/.doctrees/api/pyvene.models.interventions.CollectIntervention.doctree new file mode 100644 index 00000000..5545f5ef Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.CollectIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.ConstantSourceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.ConstantSourceIntervention.doctree new file mode 100644 index 00000000..2e56a9b6 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.ConstantSourceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.DistributedRepresentationIntervention.doctree b/.doctrees/api/pyvene.models.interventions.DistributedRepresentationIntervention.doctree new file mode 100644 index 00000000..591698ca Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.DistributedRepresentationIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.Intervention.doctree b/.doctrees/api/pyvene.models.interventions.Intervention.doctree new file mode 100644 index 00000000..0c9a75b4 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.Intervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.LocalistRepresentationIntervention.doctree b/.doctrees/api/pyvene.models.interventions.LocalistRepresentationIntervention.doctree new file mode 100644 index 00000000..10765de0 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.LocalistRepresentationIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.doctree new file mode 100644 index 00000000..efa4714d Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.NoiseIntervention.doctree b/.doctrees/api/pyvene.models.interventions.NoiseIntervention.doctree new file mode 100644 index 00000000..ff0e22bd Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.NoiseIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.PCARotatedSpaceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.PCARotatedSpaceIntervention.doctree new file mode 100644 index 00000000..573374b8 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.PCARotatedSpaceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.RotatedSpaceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.RotatedSpaceIntervention.doctree new file mode 100644 index 00000000..0c706c79 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.RotatedSpaceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.doctree new file mode 100644 index 00000000..83f7d0d5 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SigmoidMaskIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SigmoidMaskIntervention.doctree new file mode 100644 index 00000000..f9a8ba97 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SigmoidMaskIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.doctree new file mode 100644 index 00000000..bec5af04 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SkipIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SkipIntervention.doctree new file mode 100644 index 00000000..7652733f Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SkipIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SourcelessIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SourcelessIntervention.doctree new file mode 100644 index 00000000..2d3e602b Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SourcelessIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.SubtractionIntervention.doctree b/.doctrees/api/pyvene.models.interventions.SubtractionIntervention.doctree new file mode 100644 index 00000000..c257f9fb Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.SubtractionIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.TrainableIntervention.doctree b/.doctrees/api/pyvene.models.interventions.TrainableIntervention.doctree new file mode 100644 index 00000000..3e087710 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.TrainableIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.VanillaIntervention.doctree b/.doctrees/api/pyvene.models.interventions.VanillaIntervention.doctree new file mode 100644 index 00000000..f497e4a3 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.VanillaIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.ZeroIntervention.doctree b/.doctrees/api/pyvene.models.interventions.ZeroIntervention.doctree new file mode 100644 index 00000000..e6f2b29c Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.ZeroIntervention.doctree differ diff --git a/.doctrees/api/pyvene.models.interventions.doctree b/.doctrees/api/pyvene.models.interventions.doctree new file mode 100644 index 00000000..60ca96c5 Binary files /dev/null and b/.doctrees/api/pyvene.models.interventions.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.AutoencoderLayer.doctree b/.doctrees/api/pyvene.models.layers.AutoencoderLayer.doctree new file mode 100644 index 00000000..a0aed597 Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.AutoencoderLayer.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.AutoencoderLayerBase.doctree b/.doctrees/api/pyvene.models.layers.AutoencoderLayerBase.doctree new file mode 100644 index 00000000..c3d8a508 Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.AutoencoderLayerBase.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.InverseRotateLayer.doctree b/.doctrees/api/pyvene.models.layers.InverseRotateLayer.doctree new file mode 100644 index 00000000..0114413e Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.InverseRotateLayer.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.LowRankRotateLayer.doctree b/.doctrees/api/pyvene.models.layers.LowRankRotateLayer.doctree new file mode 100644 index 00000000..4cf71b0d Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.LowRankRotateLayer.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.RotateLayer.doctree b/.doctrees/api/pyvene.models.layers.RotateLayer.doctree new file mode 100644 index 00000000..6af8d37d Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.RotateLayer.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.SubspaceLowRankRotateLayer.doctree b/.doctrees/api/pyvene.models.layers.SubspaceLowRankRotateLayer.doctree new file mode 100644 index 00000000..c401fe9a Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.SubspaceLowRankRotateLayer.doctree differ diff --git a/.doctrees/api/pyvene.models.layers.doctree b/.doctrees/api/pyvene.models.layers.doctree new file mode 100644 index 00000000..4dc841ad Binary files /dev/null and b/.doctrees/api/pyvene.models.layers.doctree differ diff --git a/.doctrees/api/pyvene.models.llama.doctree b/.doctrees/api/pyvene.models.llama.doctree new file mode 100644 index 00000000..b570cc2e Binary files /dev/null and b/.doctrees/api/pyvene.models.llama.doctree differ diff --git a/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.doctree b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.doctree new file mode 100644 index 00000000..11fb9489 Binary files /dev/null and b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.doctree differ diff --git a/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.doctree b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.doctree new file mode 100644 index 00000000..ea306077 Binary files /dev/null and b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.doctree differ diff --git a/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..42e4662f Binary files /dev/null and b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..daaf5d32 Binary files /dev/null and b/.doctrees/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.llava.doctree b/.doctrees/api/pyvene.models.llava.doctree new file mode 100644 index 00000000..26837eba Binary files /dev/null and b/.doctrees/api/pyvene.models.llava.doctree differ diff --git a/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.doctree b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.doctree new file mode 100644 index 00000000..d0f417c1 Binary files /dev/null and b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.doctree differ diff --git a/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.doctree b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.doctree new file mode 100644 index 00000000..55125f70 Binary files /dev/null and b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.doctree differ diff --git a/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..e165e0c3 Binary files /dev/null and b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..2c4932b1 Binary files /dev/null and b/.doctrees/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.mistral.doctree b/.doctrees/api/pyvene.models.mistral.doctree new file mode 100644 index 00000000..7ee8a622 Binary files /dev/null and b/.doctrees/api/pyvene.models.mistral.doctree differ diff --git a/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.doctree b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.doctree new file mode 100644 index 00000000..7cb00ace Binary files /dev/null and b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.doctree differ diff --git a/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.doctree b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.doctree new file mode 100644 index 00000000..c7bf1b75 Binary files /dev/null and b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.doctree differ diff --git a/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..08d0f550 Binary files /dev/null and b/.doctrees/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.doctree b/.doctrees/api/pyvene.models.mlp.doctree new file mode 100644 index 00000000..1c322c25 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.doctree b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.doctree new file mode 100644 index 00000000..209c8b40 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.doctree b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.doctree new file mode 100644 index 00000000..b4d06f23 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.doctree b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.doctree new file mode 100644 index 00000000..fe507a1c Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPBlock.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPBlock.doctree new file mode 100644 index 00000000..d93bd3b3 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPBlock.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPConfig.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPConfig.doctree new file mode 100644 index 00000000..c968f13b Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPConfig.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.doctree new file mode 100644 index 00000000..52e4988b Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModel.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModel.doctree new file mode 100644 index 00000000..ec6c0a4a Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModel.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.doctree new file mode 100644 index 00000000..a4d487d7 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.doctree differ diff --git a/.doctrees/api/pyvene.models.mlp.modelings_mlp.doctree b/.doctrees/api/pyvene.models.mlp.modelings_mlp.doctree new file mode 100644 index 00000000..e0319300 Binary files /dev/null and b/.doctrees/api/pyvene.models.mlp.modelings_mlp.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.HandlerList.doctree b/.doctrees/api/pyvene.models.modeling_utils.HandlerList.doctree new file mode 100644 index 00000000..fae1ef2d Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.HandlerList.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.b_sd_to_bsd.doctree b/.doctrees/api/pyvene.models.modeling_utils.b_sd_to_bsd.doctree new file mode 100644 index 00000000..8e4743f4 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.b_sd_to_bsd.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.doctree b/.doctrees/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.doctree new file mode 100644 index 00000000..cceb2957 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.doctree b/.doctrees/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.doctree new file mode 100644 index 00000000..e2243fe3 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.bsd_to_b_sd.doctree b/.doctrees/api/pyvene.models.modeling_utils.bsd_to_b_sd.doctree new file mode 100644 index 00000000..d859b776 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.bsd_to_b_sd.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.do_intervention.doctree b/.doctrees/api/pyvene.models.modeling_utils.do_intervention.doctree new file mode 100644 index 00000000..c64383ad Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.do_intervention.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.doctree b/.doctrees/api/pyvene.models.modeling_utils.doctree new file mode 100644 index 00000000..055ce278 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.gather_neurons.doctree b/.doctrees/api/pyvene.models.modeling_utils.gather_neurons.doctree new file mode 100644 index 00000000..a9336c48 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.gather_neurons.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.get_dimension_by_component.doctree b/.doctrees/api/pyvene.models.modeling_utils.get_dimension_by_component.doctree new file mode 100644 index 00000000..79200dfd Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.get_dimension_by_component.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.get_internal_model_type.doctree b/.doctrees/api/pyvene.models.modeling_utils.get_internal_model_type.doctree new file mode 100644 index 00000000..bd28bfc9 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.get_internal_model_type.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.get_module_hook.doctree b/.doctrees/api/pyvene.models.modeling_utils.get_module_hook.doctree new file mode 100644 index 00000000..aed2b907 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.get_module_hook.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.getattr_for_torch_module.doctree b/.doctrees/api/pyvene.models.modeling_utils.getattr_for_torch_module.doctree new file mode 100644 index 00000000..8722ede5 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.getattr_for_torch_module.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.is_gru.doctree b/.doctrees/api/pyvene.models.modeling_utils.is_gru.doctree new file mode 100644 index 00000000..ebe58f8f Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.is_gru.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.is_mlp.doctree b/.doctrees/api/pyvene.models.modeling_utils.is_mlp.doctree new file mode 100644 index 00000000..0d453fec Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.is_mlp.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.is_stateless.doctree b/.doctrees/api/pyvene.models.modeling_utils.is_stateless.doctree new file mode 100644 index 00000000..5bc77f1e Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.is_stateless.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.is_transformer.doctree b/.doctrees/api/pyvene.models.modeling_utils.is_transformer.doctree new file mode 100644 index 00000000..1c3245fe Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.is_transformer.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.output_to_subcomponent.doctree b/.doctrees/api/pyvene.models.modeling_utils.output_to_subcomponent.doctree new file mode 100644 index 00000000..a84bf40b Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.output_to_subcomponent.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.print_forward_hooks.doctree b/.doctrees/api/pyvene.models.modeling_utils.print_forward_hooks.doctree new file mode 100644 index 00000000..bf0ae4ea Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.print_forward_hooks.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.remove_forward_hooks.doctree b/.doctrees/api/pyvene.models.modeling_utils.remove_forward_hooks.doctree new file mode 100644 index 00000000..a2b4ea38 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.remove_forward_hooks.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.scatter_neurons.doctree b/.doctrees/api/pyvene.models.modeling_utils.scatter_neurons.doctree new file mode 100644 index 00000000..9aba728f Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.scatter_neurons.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.doctree b/.doctrees/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.doctree new file mode 100644 index 00000000..bfc8a2c0 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.doctree b/.doctrees/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.doctree new file mode 100644 index 00000000..387bf307 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.doctree differ diff --git a/.doctrees/api/pyvene.models.modeling_utils.weighted_average.doctree b/.doctrees/api/pyvene.models.modeling_utils.weighted_average.doctree new file mode 100644 index 00000000..5ffa4b64 Binary files /dev/null and b/.doctrees/api/pyvene.models.modeling_utils.weighted_average.doctree differ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle new file mode 100644 index 00000000..cd57e54b Binary files /dev/null and b/.doctrees/environment.pickle differ diff --git a/.doctrees/guides/contributing.doctree b/.doctrees/guides/contributing.doctree new file mode 100644 index 00000000..70cebef3 Binary files /dev/null and b/.doctrees/guides/contributing.doctree differ diff --git a/.doctrees/guides/ndif.doctree b/.doctrees/guides/ndif.doctree new file mode 100644 index 00000000..fa90b337 Binary files /dev/null and b/.doctrees/guides/ndif.doctree differ diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree new file mode 100644 index 00000000..2981b6d0 Binary files /dev/null and b/.doctrees/index.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/Boundless_DAS.doctree b/.doctrees/tutorials/advanced_tutorials/Boundless_DAS.doctree new file mode 100644 index 00000000..896c9961 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/Boundless_DAS.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/Causal_Tracing.doctree b/.doctrees/tutorials/advanced_tutorials/Causal_Tracing.doctree new file mode 100644 index 00000000..e489a277 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/Causal_Tracing.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/DAS_Main_Introduction.doctree b/.doctrees/tutorials/advanced_tutorials/DAS_Main_Introduction.doctree new file mode 100644 index 00000000..926fc4e4 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/DAS_Main_Introduction.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/IOI_Replication.doctree b/.doctrees/tutorials/advanced_tutorials/IOI_Replication.doctree new file mode 100644 index 00000000..d53c757b Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/IOI_Replication.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/IOI_with_DAS.doctree b/.doctrees/tutorials/advanced_tutorials/IOI_with_DAS.doctree new file mode 100644 index 00000000..4948a074 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/IOI_with_DAS.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.doctree b/.doctrees/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.doctree new file mode 100644 index 00000000..50fabcd6 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/Interventions_with_BLIP.doctree b/.doctrees/tutorials/advanced_tutorials/Interventions_with_BLIP.doctree new file mode 100644 index 00000000..f596ab10 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/Interventions_with_BLIP.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/MQNLI.doctree b/.doctrees/tutorials/advanced_tutorials/MQNLI.doctree new file mode 100644 index 00000000..e338b1ec Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/MQNLI.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/Probing_Gender.doctree b/.doctrees/tutorials/advanced_tutorials/Probing_Gender.doctree new file mode 100644 index 00000000..f19e5b11 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/Probing_Gender.doctree differ diff --git a/.doctrees/tutorials/advanced_tutorials/Voting_Mechanism.doctree b/.doctrees/tutorials/advanced_tutorials/Voting_Mechanism.doctree new file mode 100644 index 00000000..332a6311 Binary files /dev/null and b/.doctrees/tutorials/advanced_tutorials/Voting_Mechanism.doctree differ diff --git a/.doctrees/tutorials/basic_tutorials/Add_Activations_to_Streams.doctree b/.doctrees/tutorials/basic_tutorials/Add_Activations_to_Streams.doctree new file mode 100644 index 00000000..ddb6ad5a Binary files /dev/null and b/.doctrees/tutorials/basic_tutorials/Add_Activations_to_Streams.doctree differ diff --git a/.doctrees/tutorials/basic_tutorials/Basic_Intervention.doctree b/.doctrees/tutorials/basic_tutorials/Basic_Intervention.doctree new file mode 100644 index 00000000..bcd61b9c Binary files /dev/null and b/.doctrees/tutorials/basic_tutorials/Basic_Intervention.doctree differ diff --git a/.doctrees/tutorials/basic_tutorials/Intervention_Training.doctree b/.doctrees/tutorials/basic_tutorials/Intervention_Training.doctree new file mode 100644 index 00000000..1541b636 Binary files /dev/null and b/.doctrees/tutorials/basic_tutorials/Intervention_Training.doctree differ diff --git a/.doctrees/tutorials/basic_tutorials/Nested_Intervention.doctree b/.doctrees/tutorials/basic_tutorials/Nested_Intervention.doctree new file mode 100644 index 00000000..6d0a9607 Binary files /dev/null and b/.doctrees/tutorials/basic_tutorials/Nested_Intervention.doctree differ diff --git a/.doctrees/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.doctree b/.doctrees/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.doctree new file mode 100644 index 00000000..94dbae78 Binary files /dev/null and b/.doctrees/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.doctree differ diff --git a/.doctrees/tutorials/pyvene_101.doctree b/.doctrees/tutorials/pyvene_101.doctree new file mode 100644 index 00000000..b774832d Binary files /dev/null and b/.doctrees/tutorials/pyvene_101.doctree differ diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/_images/0e209b2ac94cdb3f1034e70d72b1cff845e2e4388e3a2e349589946aef7a5cb2.png b/_images/0e209b2ac94cdb3f1034e70d72b1cff845e2e4388e3a2e349589946aef7a5cb2.png new file mode 100644 index 00000000..9853052a Binary files /dev/null and b/_images/0e209b2ac94cdb3f1034e70d72b1cff845e2e4388e3a2e349589946aef7a5cb2.png differ diff --git a/_images/11b69c1c4043f08e46917c93191ab92b6e7e8b1dbce16bb0fb5cb6d890fbc70d.svg b/_images/11b69c1c4043f08e46917c93191ab92b6e7e8b1dbce16bb0fb5cb6d890fbc70d.svg new file mode 100644 index 00000000..9a47faa2 --- /dev/null +++ b/_images/11b69c1c4043f08e46917c93191ab92b6e7e8b1dbce16bb0fb5cb6d890fbc70d.svg @@ -0,0 +1,2846 @@ + + + + + + + + 2024-01-30T14:45:13.447234 + image/svg+xml + + + Matplotlib v3.5.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/3a9c1a0fea1e610ed044635a984b68db3aff6f1f3df1a6771625efc2cc01d108.svg b/_images/3a9c1a0fea1e610ed044635a984b68db3aff6f1f3df1a6771625efc2cc01d108.svg new file mode 100644 index 00000000..99d83c19 --- /dev/null +++ b/_images/3a9c1a0fea1e610ed044635a984b68db3aff6f1f3df1a6771625efc2cc01d108.svg @@ -0,0 +1,5842 @@ + + + + + + + + 2023-12-31T14:41:22.615864 + image/svg+xml + + + Matplotlib v3.7.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/3c765aa91b95834a2c9bf1f02f088ffef729e3e06c5d76bfbb00a29b2f8dffd4.png b/_images/3c765aa91b95834a2c9bf1f02f088ffef729e3e06c5d76bfbb00a29b2f8dffd4.png new file mode 100644 index 00000000..22b1b5c2 Binary files /dev/null and b/_images/3c765aa91b95834a2c9bf1f02f088ffef729e3e06c5d76bfbb00a29b2f8dffd4.png differ diff --git a/_images/3cb60b7e6e568804c2e8855e0d2c1bba450a304fe8221e2c5cc2d6fbb175439e.png b/_images/3cb60b7e6e568804c2e8855e0d2c1bba450a304fe8221e2c5cc2d6fbb175439e.png new file mode 100644 index 00000000..d4ec604b Binary files /dev/null and b/_images/3cb60b7e6e568804c2e8855e0d2c1bba450a304fe8221e2c5cc2d6fbb175439e.png differ diff --git a/_images/4702ad78b9221e1850a288b1528480fe4311f007f70f628a75140a13e557b265.png b/_images/4702ad78b9221e1850a288b1528480fe4311f007f70f628a75140a13e557b265.png new file mode 100644 index 00000000..8e06847a Binary files /dev/null and b/_images/4702ad78b9221e1850a288b1528480fe4311f007f70f628a75140a13e557b265.png differ diff --git a/_images/47c576c6625384e231a4e0bd6c52e5721c4b4d45373b16378e3fa9f1508d6107.png b/_images/47c576c6625384e231a4e0bd6c52e5721c4b4d45373b16378e3fa9f1508d6107.png new file mode 100644 index 00000000..b5922898 Binary files /dev/null and b/_images/47c576c6625384e231a4e0bd6c52e5721c4b4d45373b16378e3fa9f1508d6107.png differ diff --git a/_images/495a39be446770714619153e861d9e48c1e50e473bbb070647af3440a710b058.png b/_images/495a39be446770714619153e861d9e48c1e50e473bbb070647af3440a710b058.png new file mode 100644 index 00000000..8761f27e Binary files /dev/null and b/_images/495a39be446770714619153e861d9e48c1e50e473bbb070647af3440a710b058.png differ diff --git a/_images/4eb1fdd576890c32323ce9c486fb0d5c982145e923a9902ad268114f8761f307.png b/_images/4eb1fdd576890c32323ce9c486fb0d5c982145e923a9902ad268114f8761f307.png new file mode 100644 index 00000000..77240a1f Binary files /dev/null and b/_images/4eb1fdd576890c32323ce9c486fb0d5c982145e923a9902ad268114f8761f307.png differ diff --git a/_images/510186486f21246350da9fca871ec45a7cc4552e2185e3dccc90f2fde4ff0a8b.png b/_images/510186486f21246350da9fca871ec45a7cc4552e2185e3dccc90f2fde4ff0a8b.png new file mode 100644 index 00000000..c44b25f9 Binary files /dev/null and b/_images/510186486f21246350da9fca871ec45a7cc4552e2185e3dccc90f2fde4ff0a8b.png differ diff --git a/_images/51f677c367bc01dff3f9e2c315b980e86d7a34f4896c72490cb5dc9067ae3633.png b/_images/51f677c367bc01dff3f9e2c315b980e86d7a34f4896c72490cb5dc9067ae3633.png new file mode 100644 index 00000000..1a260d1d Binary files /dev/null and b/_images/51f677c367bc01dff3f9e2c315b980e86d7a34f4896c72490cb5dc9067ae3633.png differ diff --git a/_images/522893b20be080540bd4d49f90bfe211b68fa9d7d913dd3060c49f4bc97a56ba.png b/_images/522893b20be080540bd4d49f90bfe211b68fa9d7d913dd3060c49f4bc97a56ba.png new file mode 100644 index 00000000..f4f59590 Binary files /dev/null and b/_images/522893b20be080540bd4d49f90bfe211b68fa9d7d913dd3060c49f4bc97a56ba.png differ diff --git a/_images/53f9d0302373b51b72a09eb116ccd675a00d8316d611a91cb91f0912c3cb9343.png b/_images/53f9d0302373b51b72a09eb116ccd675a00d8316d611a91cb91f0912c3cb9343.png new file mode 100644 index 00000000..9386813a Binary files /dev/null and b/_images/53f9d0302373b51b72a09eb116ccd675a00d8316d611a91cb91f0912c3cb9343.png differ diff --git a/_images/6025c3805397843f347063a6000afac59f261aa193767759b5c7eefbc5b9a5ad.png b/_images/6025c3805397843f347063a6000afac59f261aa193767759b5c7eefbc5b9a5ad.png new file mode 100644 index 00000000..f56377ea Binary files /dev/null and b/_images/6025c3805397843f347063a6000afac59f261aa193767759b5c7eefbc5b9a5ad.png differ diff --git a/_images/6ac0fedb49fc4a4d44a6941c256db0b3a7d64421a4712f3137c5991b235b3895.svg b/_images/6ac0fedb49fc4a4d44a6941c256db0b3a7d64421a4712f3137c5991b235b3895.svg new file mode 100644 index 00000000..4af7a672 --- /dev/null +++ b/_images/6ac0fedb49fc4a4d44a6941c256db0b3a7d64421a4712f3137c5991b235b3895.svg @@ -0,0 +1,4837 @@ + + + + + + + + 2023-12-31T14:41:05.795249 + image/svg+xml + + + Matplotlib v3.7.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/6d9b4e9b35fa025c8ea0d916889d8fdfdfdea632d200975be74c74a5256837f6.png b/_images/6d9b4e9b35fa025c8ea0d916889d8fdfdfdea632d200975be74c74a5256837f6.png new file mode 100644 index 00000000..2bc3d01d Binary files /dev/null and b/_images/6d9b4e9b35fa025c8ea0d916889d8fdfdfdea632d200975be74c74a5256837f6.png differ diff --git a/_images/740112e374c50c87fcb4b353651e3ac260de0b8a13531f8bd108f57633bd1a70.png b/_images/740112e374c50c87fcb4b353651e3ac260de0b8a13531f8bd108f57633bd1a70.png new file mode 100644 index 00000000..dc0b4d1f Binary files /dev/null and b/_images/740112e374c50c87fcb4b353651e3ac260de0b8a13531f8bd108f57633bd1a70.png differ diff --git a/_images/7725b3c3b31b963a269bc9cb673c3fd0795f5cb25290fd37d3c8c483e24ba67d.png b/_images/7725b3c3b31b963a269bc9cb673c3fd0795f5cb25290fd37d3c8c483e24ba67d.png new file mode 100644 index 00000000..24ecfa9f Binary files /dev/null and b/_images/7725b3c3b31b963a269bc9cb673c3fd0795f5cb25290fd37d3c8c483e24ba67d.png differ diff --git a/_images/779c28ba365c07a9508d027b0ac409537ec545e329e75f73fd320ecc20447b72.png b/_images/779c28ba365c07a9508d027b0ac409537ec545e329e75f73fd320ecc20447b72.png new file mode 100644 index 00000000..1bf77e4b Binary files /dev/null and b/_images/779c28ba365c07a9508d027b0ac409537ec545e329e75f73fd320ecc20447b72.png differ diff --git a/_images/7cf499431f3c7362117ca1ffa99f0fa159dc9c59b16d5108f71d62f8108156c6.svg b/_images/7cf499431f3c7362117ca1ffa99f0fa159dc9c59b16d5108f71d62f8108156c6.svg new file mode 100644 index 00000000..a2632083 --- /dev/null +++ b/_images/7cf499431f3c7362117ca1ffa99f0fa159dc9c59b16d5108f71d62f8108156c6.svg @@ -0,0 +1,4907 @@ + + + + + + + + 2023-12-31T14:40:32.676900 + image/svg+xml + + + Matplotlib v3.7.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/818676967d53f5a2f405c76ef07d201cbee212cd134853f7bd10165a28fc7379.png b/_images/818676967d53f5a2f405c76ef07d201cbee212cd134853f7bd10165a28fc7379.png new file mode 100644 index 00000000..5a3ab96d Binary files /dev/null and b/_images/818676967d53f5a2f405c76ef07d201cbee212cd134853f7bd10165a28fc7379.png differ diff --git a/_images/82e041002a683be86c4ff0e8cc181f8a817587383a65c450c1764a57ede2b6e5.png b/_images/82e041002a683be86c4ff0e8cc181f8a817587383a65c450c1764a57ede2b6e5.png new file mode 100644 index 00000000..e96b207c Binary files /dev/null and b/_images/82e041002a683be86c4ff0e8cc181f8a817587383a65c450c1764a57ede2b6e5.png differ diff --git a/_images/866346be324df4fb991d12d5096d03a13885f1054f4c242a9e5f14d74de36eb0.png b/_images/866346be324df4fb991d12d5096d03a13885f1054f4c242a9e5f14d74de36eb0.png new file mode 100644 index 00000000..7487245f Binary files /dev/null and b/_images/866346be324df4fb991d12d5096d03a13885f1054f4c242a9e5f14d74de36eb0.png differ diff --git a/_images/86c810bf678fbd3cbf2ecdc10ed0ce804528334e27db0ca51a198a7bf625e417.png b/_images/86c810bf678fbd3cbf2ecdc10ed0ce804528334e27db0ca51a198a7bf625e417.png new file mode 100644 index 00000000..05e2ae8d Binary files /dev/null and b/_images/86c810bf678fbd3cbf2ecdc10ed0ce804528334e27db0ca51a198a7bf625e417.png differ diff --git a/_images/878262b6ac82af03bd80446907410dbd0e9d9dac1c52bdfc80ce23006a7026b2.png b/_images/878262b6ac82af03bd80446907410dbd0e9d9dac1c52bdfc80ce23006a7026b2.png new file mode 100644 index 00000000..19c29164 Binary files /dev/null and b/_images/878262b6ac82af03bd80446907410dbd0e9d9dac1c52bdfc80ce23006a7026b2.png differ diff --git a/_images/8f16a324ed49faef17dc8b20bffbfc319332532c3e538ce72652eff07848983d.png b/_images/8f16a324ed49faef17dc8b20bffbfc319332532c3e538ce72652eff07848983d.png new file mode 100644 index 00000000..3093b805 Binary files /dev/null and b/_images/8f16a324ed49faef17dc8b20bffbfc319332532c3e538ce72652eff07848983d.png differ diff --git a/_images/8f403b7248becfbb27ca726da099de64aab46a69a5d1c210a44c9f1c9afcc058.png b/_images/8f403b7248becfbb27ca726da099de64aab46a69a5d1c210a44c9f1c9afcc058.png new file mode 100644 index 00000000..f285ebc7 Binary files /dev/null and b/_images/8f403b7248becfbb27ca726da099de64aab46a69a5d1c210a44c9f1c9afcc058.png differ diff --git a/_images/92151326e27ed27ba1ef81367138fc690c27f638f7366c58e68dea69e26ec6d4.png b/_images/92151326e27ed27ba1ef81367138fc690c27f638f7366c58e68dea69e26ec6d4.png new file mode 100644 index 00000000..e3ba13dc Binary files /dev/null and b/_images/92151326e27ed27ba1ef81367138fc690c27f638f7366c58e68dea69e26ec6d4.png differ diff --git a/_images/92ccd360492d0b55dce2cf6f63b9b627f2268b51f418c7e1593d44e74eeb3cd1.svg b/_images/92ccd360492d0b55dce2cf6f63b9b627f2268b51f418c7e1593d44e74eeb3cd1.svg new file mode 100644 index 00000000..9a57bac1 --- /dev/null +++ b/_images/92ccd360492d0b55dce2cf6f63b9b627f2268b51f418c7e1593d44e74eeb3cd1.svg @@ -0,0 +1,2766 @@ + + + + + + + + 2024-01-30T14:28:26.465251 + image/svg+xml + + + Matplotlib v3.5.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/a87f9091945769eda43dd44d14d3276e107d0a64cffe1e671d86a3e830adb089.png b/_images/a87f9091945769eda43dd44d14d3276e107d0a64cffe1e671d86a3e830adb089.png new file mode 100644 index 00000000..14edf17b Binary files /dev/null and b/_images/a87f9091945769eda43dd44d14d3276e107d0a64cffe1e671d86a3e830adb089.png differ diff --git a/_images/a9d681777ff4189db56e2333de5b721197ed39bd911b039af373c2084f2b9444.png b/_images/a9d681777ff4189db56e2333de5b721197ed39bd911b039af373c2084f2b9444.png new file mode 100644 index 00000000..539e153f Binary files /dev/null and b/_images/a9d681777ff4189db56e2333de5b721197ed39bd911b039af373c2084f2b9444.png differ diff --git a/_images/aa26036b558e554cced1d75c0b54fe9e61c5aa0de02162b902840e4f7d4cff53.png b/_images/aa26036b558e554cced1d75c0b54fe9e61c5aa0de02162b902840e4f7d4cff53.png new file mode 100644 index 00000000..f4920081 Binary files /dev/null and b/_images/aa26036b558e554cced1d75c0b54fe9e61c5aa0de02162b902840e4f7d4cff53.png differ diff --git a/_images/aab7c4e3991a2f355e2ed16783e6bb6520991a709d60449be78850fd5ffd4554.png b/_images/aab7c4e3991a2f355e2ed16783e6bb6520991a709d60449be78850fd5ffd4554.png new file mode 100644 index 00000000..2ba9fcc9 Binary files /dev/null and b/_images/aab7c4e3991a2f355e2ed16783e6bb6520991a709d60449be78850fd5ffd4554.png differ diff --git a/_images/abd44e33b4e85f93355b7463f8587ee66194280e12ad88b4c3f9959df0c8b472.png b/_images/abd44e33b4e85f93355b7463f8587ee66194280e12ad88b4c3f9959df0c8b472.png new file mode 100644 index 00000000..9623e323 Binary files /dev/null and b/_images/abd44e33b4e85f93355b7463f8587ee66194280e12ad88b4c3f9959df0c8b472.png differ diff --git a/_images/ae5f93b8f042d6e571475d7de414286eaf6214da23944a580baae06ce44a2b52.png b/_images/ae5f93b8f042d6e571475d7de414286eaf6214da23944a580baae06ce44a2b52.png new file mode 100644 index 00000000..91ab783c Binary files /dev/null and b/_images/ae5f93b8f042d6e571475d7de414286eaf6214da23944a580baae06ce44a2b52.png differ diff --git a/_images/aebce4a12767db3fd69964bc17f4268415d639eda8d92d842d7ded3ba1828056.svg b/_images/aebce4a12767db3fd69964bc17f4268415d639eda8d92d842d7ded3ba1828056.svg new file mode 100644 index 00000000..2e184428 --- /dev/null +++ b/_images/aebce4a12767db3fd69964bc17f4268415d639eda8d92d842d7ded3ba1828056.svg @@ -0,0 +1,5074 @@ + + + + + + + + 2023-12-31T14:40:49.383469 + image/svg+xml + + + Matplotlib v3.7.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/b04df15f6054aa2d405e6f54b1f705fc4e62f2b1926db1bad447b999c423067d.png b/_images/b04df15f6054aa2d405e6f54b1f705fc4e62f2b1926db1bad447b999c423067d.png new file mode 100644 index 00000000..8d527c35 Binary files /dev/null and b/_images/b04df15f6054aa2d405e6f54b1f705fc4e62f2b1926db1bad447b999c423067d.png differ diff --git a/_images/b43cebf3af23ff11bba516655e0bdd08a79ea3da27bb9f48ced1527e36bf87e8.png b/_images/b43cebf3af23ff11bba516655e0bdd08a79ea3da27bb9f48ced1527e36bf87e8.png new file mode 100644 index 00000000..e9ca1c4e Binary files /dev/null and b/_images/b43cebf3af23ff11bba516655e0bdd08a79ea3da27bb9f48ced1527e36bf87e8.png differ diff --git a/_images/bb77bdccb046f5e77b9ea0a5312189dfe2984f404288060a908abd8077786292.png b/_images/bb77bdccb046f5e77b9ea0a5312189dfe2984f404288060a908abd8077786292.png new file mode 100644 index 00000000..54455feb Binary files /dev/null and b/_images/bb77bdccb046f5e77b9ea0a5312189dfe2984f404288060a908abd8077786292.png differ diff --git a/_images/c0f343f8181fac70426959817b6d7bed20fbbf9e2ced923bd60af5ae3dd76796.png b/_images/c0f343f8181fac70426959817b6d7bed20fbbf9e2ced923bd60af5ae3dd76796.png new file mode 100644 index 00000000..bc78cc5b Binary files /dev/null and b/_images/c0f343f8181fac70426959817b6d7bed20fbbf9e2ced923bd60af5ae3dd76796.png differ diff --git a/_images/c0fb1f5e9c3706572fead3ff8ce22d1f25cb88e40ccb50dee6d6222d91f4357b.svg b/_images/c0fb1f5e9c3706572fead3ff8ce22d1f25cb88e40ccb50dee6d6222d91f4357b.svg new file mode 100644 index 00000000..02663951 --- /dev/null +++ b/_images/c0fb1f5e9c3706572fead3ff8ce22d1f25cb88e40ccb50dee6d6222d91f4357b.svg @@ -0,0 +1,690 @@ + + + + + + + + 2024-01-20T10:50:39.986017 + image/svg+xml + + + Matplotlib v3.7.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/c925fb81fb3b668bf0bc074d8fb475325f8b4ef7c8b86402bacd25af5d35e39f.png b/_images/c925fb81fb3b668bf0bc074d8fb475325f8b4ef7c8b86402bacd25af5d35e39f.png new file mode 100644 index 00000000..735c6205 Binary files /dev/null and b/_images/c925fb81fb3b668bf0bc074d8fb475325f8b4ef7c8b86402bacd25af5d35e39f.png differ diff --git a/_images/cb07a9a4b55e55305091ccd462ae419cbe37a2e23cabb3892ee9586326af7c92.png b/_images/cb07a9a4b55e55305091ccd462ae419cbe37a2e23cabb3892ee9586326af7c92.png new file mode 100644 index 00000000..1e8cc4bf Binary files /dev/null and b/_images/cb07a9a4b55e55305091ccd462ae419cbe37a2e23cabb3892ee9586326af7c92.png differ diff --git a/_images/cca78cf50fa435c957f29630bdbde741defbaf5a9a04e934e6a9e067cbe4ef88.png b/_images/cca78cf50fa435c957f29630bdbde741defbaf5a9a04e934e6a9e067cbe4ef88.png new file mode 100644 index 00000000..526a5f73 Binary files /dev/null and b/_images/cca78cf50fa435c957f29630bdbde741defbaf5a9a04e934e6a9e067cbe4ef88.png differ diff --git a/_images/ce52c762453051be57d204f305737df463b4a354458359246906815a0b49aed2.png b/_images/ce52c762453051be57d204f305737df463b4a354458359246906815a0b49aed2.png new file mode 100644 index 00000000..159b662f Binary files /dev/null and b/_images/ce52c762453051be57d204f305737df463b4a354458359246906815a0b49aed2.png differ diff --git a/_images/d03d4f465dc258d67b5aa76aeab37ba147ed9ae51a819082743d7beb74ac609f.png b/_images/d03d4f465dc258d67b5aa76aeab37ba147ed9ae51a819082743d7beb74ac609f.png new file mode 100644 index 00000000..aabefeb6 Binary files /dev/null and b/_images/d03d4f465dc258d67b5aa76aeab37ba147ed9ae51a819082743d7beb74ac609f.png differ diff --git a/_images/d19254c4a23787a1f0dc374e5de7a37da09df6a7f303c883cfdbbad69058fd67.png b/_images/d19254c4a23787a1f0dc374e5de7a37da09df6a7f303c883cfdbbad69058fd67.png new file mode 100644 index 00000000..257f102e Binary files /dev/null and b/_images/d19254c4a23787a1f0dc374e5de7a37da09df6a7f303c883cfdbbad69058fd67.png differ diff --git a/_images/d1c6b90794f1c5c0fcfa0931492742db78295ea701f49c67bfe4f5609cebd96a.png b/_images/d1c6b90794f1c5c0fcfa0931492742db78295ea701f49c67bfe4f5609cebd96a.png new file mode 100644 index 00000000..f3063aa6 Binary files /dev/null and b/_images/d1c6b90794f1c5c0fcfa0931492742db78295ea701f49c67bfe4f5609cebd96a.png differ diff --git a/_images/d2dbc088eee403547907ea46c47465ecb7994cc4917922d81c0cf4aa7a6da6ae.png b/_images/d2dbc088eee403547907ea46c47465ecb7994cc4917922d81c0cf4aa7a6da6ae.png new file mode 100644 index 00000000..29b82386 Binary files /dev/null and b/_images/d2dbc088eee403547907ea46c47465ecb7994cc4917922d81c0cf4aa7a6da6ae.png differ diff --git a/_images/d600e321372b924d5012fb12011690c76589d8f5fd115ce7801e611c63682f0b.png b/_images/d600e321372b924d5012fb12011690c76589d8f5fd115ce7801e611c63682f0b.png new file mode 100644 index 00000000..a3c43338 Binary files /dev/null and b/_images/d600e321372b924d5012fb12011690c76589d8f5fd115ce7801e611c63682f0b.png differ diff --git a/_images/da21608480b9859d2fe2f3e836f1b77b148b9773f073caff4fcc4570379731f6.png b/_images/da21608480b9859d2fe2f3e836f1b77b148b9773f073caff4fcc4570379731f6.png new file mode 100644 index 00000000..9c2ebd79 Binary files /dev/null and b/_images/da21608480b9859d2fe2f3e836f1b77b148b9773f073caff4fcc4570379731f6.png differ diff --git a/_images/dcd7d1651da3fb100aa215a26b46ee228fc7c5ba707f4c8cc91a0c346b2f2527.png b/_images/dcd7d1651da3fb100aa215a26b46ee228fc7c5ba707f4c8cc91a0c346b2f2527.png new file mode 100644 index 00000000..7c155b07 Binary files /dev/null and b/_images/dcd7d1651da3fb100aa215a26b46ee228fc7c5ba707f4c8cc91a0c346b2f2527.png differ diff --git a/_images/dfc3bb8512eb7e3c6be222658aee1fe5a23474554a0ab68a0beb92752d1b4669.svg b/_images/dfc3bb8512eb7e3c6be222658aee1fe5a23474554a0ab68a0beb92752d1b4669.svg new file mode 100644 index 00000000..4a81c819 --- /dev/null +++ b/_images/dfc3bb8512eb7e3c6be222658aee1fe5a23474554a0ab68a0beb92752d1b4669.svg @@ -0,0 +1,3378 @@ + + + + + + + + 2024-01-24T23:28:03.019961 + image/svg+xml + + + Matplotlib v3.5.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_images/e59797398a0719eccd22b9518053a4aa766cc7554bd7e51976e6b54a55419c44.png b/_images/e59797398a0719eccd22b9518053a4aa766cc7554bd7e51976e6b54a55419c44.png new file mode 100644 index 00000000..2cd7f27d Binary files /dev/null and b/_images/e59797398a0719eccd22b9518053a4aa766cc7554bd7e51976e6b54a55419c44.png differ diff --git a/_images/e9987d909d2d1b0c83b17b98d174bc4b7b24147e1ba714fd1e9b5b3711262820.png b/_images/e9987d909d2d1b0c83b17b98d174bc4b7b24147e1ba714fd1e9b5b3711262820.png new file mode 100644 index 00000000..f15b6a3a Binary files /dev/null and b/_images/e9987d909d2d1b0c83b17b98d174bc4b7b24147e1ba714fd1e9b5b3711262820.png differ diff --git a/_images/fc9a15b5e5ca3ec9f1fd7e08bfd643759f324f90fdc940dfa5a9304a600227da.png b/_images/fc9a15b5e5ca3ec9f1fd7e08bfd643759f324f90fdc940dfa5a9304a600227da.png new file mode 100644 index 00000000..c94c2d47 Binary files /dev/null and b/_images/fc9a15b5e5ca3ec9f1fd7e08bfd643759f324f90fdc940dfa5a9304a600227da.png differ diff --git a/_images/fff05c53d19020c5adff305ca1e37d58a251b3a75ef0e441df5ce4e744f8798c.png b/_images/fff05c53d19020c5adff305ca1e37d58a251b3a75ef0e441df5ce4e744f8798c.png new file mode 100644 index 00000000..98af6768 Binary files /dev/null and b/_images/fff05c53d19020c5adff305ca1e37d58a251b3a75ef0e441df5ce4e744f8798c.png differ diff --git a/_modules/index.html b/_modules/index.html new file mode 100644 index 00000000..02df663c --- /dev/null +++ b/_modules/index.html @@ -0,0 +1,551 @@ + + + + + + + + + + Overview: module code — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

All modules for which code is available

+ + +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/data_generators/causal_model.html b/_modules/pyvene/data_generators/causal_model.html new file mode 100644 index 00000000..ea8d040c --- /dev/null +++ b/_modules/pyvene/data_generators/causal_model.html @@ -0,0 +1,977 @@ + + + + + + + + + + pyvene.data_generators.causal_model — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.data_generators.causal_model

+import random
+import copy
+import inspect
+import itertools
+import torch
+from collections import defaultdict
+import networkx as nx
+import matplotlib.pyplot as plt
+
+
+
+[docs] +class CausalModel: +
+[docs] + def __init__( + self, + variables, + values, + parents, + functions, + timesteps=None, + equiv_classes=None, + pos={}, + ): + self.variables = variables + self.variables.sort() + self.values = values + self.parents = parents + self.children = {var: [] for var in variables} + for variable in variables: + assert variable in self.parents + for parent in self.parents[variable]: + self.children[parent].append(variable) + self.functions = functions + self.start_variables = [] + self.timesteps = timesteps + for variable in self.variables: + assert variable in self.values + assert variable in self.children + assert variable in self.functions + if timesteps is not None: + assert variable in timesteps + for variable2 in copy.copy(self.variables): + if variable2 in self.parents[variable]: + assert variable in self.children[variable2] + if timesteps is not None: + assert timesteps[variable2] < timesteps[variable] + if variable2 in self.children[variable]: + assert variable in parents[variable2] + if timesteps is not None: + assert timesteps[variable2] > timesteps[variable] + if len(self.parents) == 0: + self.start_variables.append(variable) + + self.inputs = [var for var in self.variables if len(parents[var]) == 0] + self.outputs = copy.deepcopy(variables) + for child in variables: + for parent in parents[child]: + if parent in self.outputs: + self.outputs.remove(parent) + if self.timesteps is not None: + self.timesteps = timesteps + else: + self.timesteps, self.end_time = self.generate_timesteps() + for output in self.outputs: + self.timesteps[output] = self.end_time + self.variables.sort(key=lambda x: self.timesteps[x]) + self.run_forward() + self.pos = pos + width = {_: 0 for _ in range(len(self.variables))} + if self.pos == None: + self.pos = dict() + for var in self.variables: + if var not in pos: + pos[var] = (width[self.timesteps[var]], self.timesteps[var]) + width[self.timesteps[var]] += 1 + + if equiv_classes is not None: + self.equiv_classes = equiv_classes + else: + self.equiv_classes = {}
+ + + def generate_equiv_classes(self): + for var in self.variables: + if var in self.inputs or var in self.equiv_classes: + continue + self.equiv_classes[var] = {val: [] for val in self.values[var]} + for parent_values in itertools.product( + *[self.values[par] for par in self.parents[var]] + ): + value = self.functions[var](*parent_values) + self.equiv_classes[var][value].append( + {par: parent_values[i] for i, par in enumerate(self.parents[var])} + ) + + def generate_timesteps(self): + timesteps = {input: 0 for input in self.inputs} + step = 1 + change = True + while change: + change = False + copytimesteps = copy.deepcopy(timesteps) + for parent in timesteps: + if timesteps[parent] == step - 1: + for child in self.children[parent]: + copytimesteps[child] = step + change = True + timesteps = copytimesteps + step += 1 + for var in self.variables: + assert var in timesteps + # return all timesteps and timestep of root + return timesteps, step - 2 + + def marginalize(self, target): + pass + + def print_structure(self, pos=None, font=12, node_size=1000): + G = nx.DiGraph() + G.add_edges_from( + [ + (parent, child) + for child in self.variables + for parent in self.parents[child] + ] + ) + plt.figure(figsize=(10, 10)) + nx.draw_networkx(G, with_labels=True, node_color="green", pos=self.pos, font_size=font, node_size=node_size) + plt.show() + + def find_live_paths(self, intervention): + actual_setting = self.run_forward(intervention) + paths = {1: [[variable] for variable in self.variables]} + step = 2 + while True: + paths[step] = [] + for path in paths[step - 1]: + for child in self.children[path[-1]]: + actual_cause = False + for value in self.values[path[-1]]: + newintervention = copy.deepcopy(intervention) + newintervention[path[-1]] = value + counterfactual_setting = self.run_forward(newintervention) + if counterfactual_setting[child] != actual_setting[child]: + actual_cause = True + if actual_cause: + paths[step].append(copy.deepcopy(path) + [child]) + if len(paths[step]) == 0: + break + step += 1 + del paths[1] + return paths + + def print_setting(self, total_setting, font=12, node_size=1000): + relabeler = { + var: var + ": " + str(total_setting[var]) for var in self.variables + } + G = nx.DiGraph() + G.add_edges_from( + [ + (parent, child) + for child in self.variables + for parent in self.parents[child] + ] + ) + plt.figure(figsize=(10, 10)) + G = nx.relabel_nodes(G, relabeler) + newpos = dict() + if self.pos is not None: + for var in self.pos: + newpos[relabeler[var]] = self.pos[var] + nx.draw_networkx(G, with_labels=True, node_color="green", pos=newpos, font_size=font, node_size=node_size) + plt.show() + + def run_forward(self, intervention=None): + total_setting = defaultdict(None) + length = len(list(total_setting.keys())) + step = 0 + while length != len(self.variables): + for variable in self.variables: + for variable2 in self.parents[variable]: + if variable2 not in total_setting: + continue + if intervention is not None and variable in intervention: + total_setting[variable] = intervention[variable] + else: + total_setting[variable] = self.functions[variable]( + *[total_setting[parent] for parent in self.parents[variable]] + ) + length = len(list(total_setting.keys())) + return total_setting + + def run_interchange(self, input, source_interventions): + interchange_intervention = copy.deepcopy(input) + for var in source_interventions: + setting = self.run_forward(source_interventions[var]) + interchange_intervention[var] = setting[var] + return self.run_forward(interchange_intervention) + + def add_variable( + self, variable, values, parents, children, function, timestep=None + ): + if timestep is not None: + assert self.timesteps is not None + self.timesteps[variable] = timestep + for parent in parents: + assert parent in self.variables + for child in children: + assert child in self.variables + self.parents[variable] = parents + self.children[variable] = children + self.values[variable] = values + self.functions[variable] = function + + def sample_intervention(self, mandatory=None): + intervention = {} + while len(intervention.keys()) == 0: + for var in self.variables: + if var in self.inputs or var in self.outputs: + continue + if random.choice([0, 1]) == 0: + intervention[var] = random.choice(self.values[var]) + return intervention + + def sample_input(self, mandatory=None): + input = {var: random.sample(self.values[var], 1)[0] for var in self.inputs} + total = self.run_forward(intervention=input) + while mandatory is not None and not mandatory(total): + input = {var: random.sample(self.values[var], 1)[0] for var in self.inputs} + total = self.run_forward(intervention=input) + return input + + def sample_input_tree_balanced(self, output_var=None, output_var_value=None): + assert output_var is not None or len(self.outputs) == 1 + self.generate_equiv_classes() + + if output_var is None: + output_var = self.outputs[0] + if output_var_value is None: + output_var_value = random.choice(self.values[output_var]) + + + def create_input(var, value, input={}): + parent_values = random.choice(self.equiv_classes[var][value]) + for parent in parent_values: + if parent in self.inputs: + input[parent] = parent_values[parent] + else: + create_input(parent, parent_values[parent], input) + return input + + input_setting = create_input(output_var, output_var_value) + for input_var in self.inputs: + if input_var not in input_setting: + input_setting[input_var] = random.choice(self.values[input_var]) + return input_setting + + def get_path_maxlen_filter(self, lengths): + def check_path(total_setting): + input = {var: total_setting[var] for var in self.inputs} + paths = self.find_live_paths(input) + m = max([l for l in paths.keys() if len(paths[l]) != 0]) + if m in lengths: + return True + return False + + return check_path + + def get_partial_filter(self, partial_setting): + def compare(total_setting): + for var in partial_setting: + if total_setting[var] != partial_setting[var]: + return False + return True + + return compare + + def get_specific_path_filter(self, start, end): + def check_path(total_setting): + input = {var: total_setting[var] for var in self.inputs} + paths = self.find_live_paths(input) + for k in paths: + for path in paths[k]: + if path[0] == start and path[-1] == end: + return True + return False + + return check_path + + def input_to_tensor(self, setting): + result = [] + for input in self.inputs: + temp = torch.tensor(setting[input]).float() + if len(temp.size()) == 0: + temp = torch.reshape(temp, (1,)) + result.append(temp) + return torch.cat(result) + + def output_to_tensor(self, setting): + result = [] + for output in self.outputs: + temp = torch.tensor(float(setting[output])) + if len(temp.size()) == 0: + temp = torch.reshape(temp, (1,)) + result.append(temp) + return torch.cat(result) + + def generate_factual_dataset( + self, + size, + sampler=None, + filter=None, + device="cpu", + input_function=None, + output_function=None, + return_tensors=True, + ): + if sampler is None: + sampler = self.sample_input + + if input_function is None: + input_function = self.input_to_tensor + if output_function is None: + output_function = self.output_to_tensor + + examples = [] + while len(examples) < size: + example = dict() + input = sampler() + if filter is None or filter(input): + output = self.run_forward(input) + if return_tensors: + example['input_ids'] = input_function(input).to(device) + example['labels'] = output_function(output).to(device) + else: + example['input_ids'] = input + example['labels'] = output + examples.append(example) + + return examples + + def generate_counterfactual_dataset( + self, + size, + intervention_id, + batch_size, + sampler=None, + intervention_sampler=None, + filter=None, + device="cpu", + input_function=None, + output_function=None, + return_tensors=True, + ): + if input_function is None: + input_function = self.input_to_tensor + if output_function is None: + output_function = self.output_to_tensor + + maxlength = len( + [ + var + for var in self.variables + if var not in self.inputs and var not in self.outputs + ] + ) + if sampler is None: + sampler = self.sample_input + if intervention_sampler is None: + intervention_sampler = self.sample_intervention + examples = [] + while len(examples) < size: + intervention = intervention_sampler() + if filter is None or filter(intervention): + for _ in range(batch_size): + example = dict() + base = sampler() + sources = [] + source_dic = {} + for var in self.variables: + if var not in intervention: + continue + # sample input to match sampled intervention value + source = sampler(output_var=var, output_var_value=intervention[var]) + if return_tensors: + sources.append(self.input_to_tensor(source)) + else: + sources.append(source) + source_dic[var] = source + for _ in range(maxlength - len(sources)): + if return_tensors: + sources.append(torch.zeros(self.input_to_tensor(base).shape)) + else: + sources.append({}) + + if return_tensors: + example["labels"] = self.output_to_tensor( + self.run_interchange(base, source_dic) + ).to(device) + example["base_labels"] = self.output_to_tensor( + self.run_forward(base) + ).to(device) + example["input_ids"] = self.input_to_tensor(base).to(device) + example["source_input_ids"] = torch.stack(sources).to(device) + example["intervention_id"] = torch.tensor( + [intervention_id(intervention)] + ).to(device) + else: + example['labels'] = self.run_interchange(base, source_dic) + example['base_labels'] = self.run_forward(base) + example['input_ids'] = base + example['source_input_ids'] = sources + example['intervention_id'] = [intervention_id(intervention)] + + examples.append(example) + return examples
+ + + +
+[docs] +def simple_example(): + variables = ["A", "B", "C"] + values = {variable: [True, False] for variable in variables} + parents = {"A": [], "B": [], "C": ["A", "B"]} + + def A(): + return True + + def B(): + return False + + def C(a, b): + return a and b + + functions = {"A": A, "B": B, "C": C} + model = CausalModel(variables, values, parents, functions) + model.print_structure() + print("No intervention:\n", model.run_forward(), "\n") + model.print_setting(model.run_forward()) + print( + "Intervention setting A and B to TRUE:\n", + model.run_forward({"A": True, "B": True}), + ) + print("Timesteps:", model.timesteps)
+ + + +if __name__ == "__main__": + simple_example() +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/backpack_gpt2/modelings_backpack_gpt2.html b/_modules/pyvene/models/backpack_gpt2/modelings_backpack_gpt2.html new file mode 100644 index 00000000..c4f06b4e --- /dev/null +++ b/_modules/pyvene/models/backpack_gpt2/modelings_backpack_gpt2.html @@ -0,0 +1,863 @@ + + + + + + + + + + pyvene.models.backpack_gpt2.modelings_backpack_gpt2 — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.backpack_gpt2.modelings_backpack_gpt2

+import math
+from dataclasses import dataclass
+from typing import Optional, Tuple
+
+import torch
+import torch.utils.checkpoint
+from torch import nn
+
+from transformers.activations import ACT2FN
+from transformers.pytorch_utils import Conv1D
+from transformers.utils import (
+    ModelOutput,
+    logging,
+)
+from transformers.models.gpt2.configuration_gpt2 import GPT2Config
+from transformers.models.gpt2.modeling_gpt2 import GPT2Model, GPT2PreTrainedModel
+
+logger = logging.get_logger(__name__)
+
+
+
+[docs] +class BackpackGPT2Config(GPT2Config): + """ + This is the configuration class to store the configuration of a [`GPT2Model`] or a [`TFGPT2Model`]. It is used to + instantiate a Backpack GPT-2 model according to the specified arguments, defining the model architecture. + Configuration objects inherit from [`GPT2Config`] and can be used to control the model outputs. Read the + documentation from [`GPT2Config`] for more information. + Args: + num_senses (`int`, *optional*, defaults to 16): + The number of sense vectors to define for each word. + sense_intermediate_scale (`int`, *optional*, defaults ot 4): + The hidden dimensionality of the sense vector network. + Example: + ```python + >>> from transformers import BackpackGPT2Config, BackpackGPT2Model + >>> # Initializing a GPT2 configuration + >>> configuration = BackpackGPT2Config() + >>> # Initializing a model (with random weights) from the configuration + >>> model = BackpackGPT2Model(configuration) + >>> # Accessing the model configuration + >>> configuration = model.config + """ + +
+[docs] + def __init__(self, + vocab_size=50264, + num_senses=16, + sense_intermediate_scale=4, + n_positions=512, + scale_attn_by_inverse_layer_idx=True, + **kwargs, + ): + self.num_senses = num_senses + self.sense_intermediate_scale = sense_intermediate_scale + super().__init__(vocab_size=vocab_size, n_positions=n_positions, + scale_attn_by_inverse_layer_idx=scale_attn_by_inverse_layer_idx, **kwargs)
+
+ + + +### Backpack-Specific +
+[docs] +class BackpackGPT2PreTrainedModel(GPT2PreTrainedModel): + """ + An abstract class to handle weights initialization and a simple interface for downloading and loading pretrained + models. + """ + _keys_to_ignore_on_load_missing = [r"attn.masked_bias", r"attn.bias"] + + config_class = BackpackGPT2Config + base_model_prefix = "backpack" + is_parallelizable = True + supports_gradient_checkpointing = False + _no_split_modules = ["GPT2Block", "BackpackNoMixBlock"] + +
+[docs] + def __init__(self, *inputs, **kwargs): + super().__init__(*inputs, **kwargs)
+
+ + +
+[docs] +class BackpackMLP(nn.Module): + +
+[docs] + def __init__(self, embed_dim, intermediate_dim, out_dim, config): + super().__init__() + self.c_fc = Conv1D(intermediate_dim, embed_dim) + self.c_proj = Conv1D(out_dim, intermediate_dim) + self.act = ACT2FN[config.activation_function] + self.dropout = nn.Dropout(config.resid_pdrop)
+ + +
+[docs] + def forward(self, hidden_states: Optional[Tuple[torch.FloatTensor]]) -> torch.FloatTensor: + hidden_states = self.c_fc(hidden_states) + hidden_states = self.act(hidden_states) + hidden_states = self.c_proj(hidden_states) + hidden_states = self.dropout(hidden_states) + return hidden_states
+
+ + +
+[docs] +class BackpackNoMixBlock(nn.Module): + +
+[docs] + def __init__(self, config): + super().__init__() + self.ln_1 = nn.LayerNorm(config.n_embd, eps=config.layer_norm_epsilon) + self.ln_2 = nn.LayerNorm(config.n_embd, eps=config.layer_norm_epsilon) + self.mlp = BackpackMLP(config.n_embd, config.n_embd*4, config.n_embd, config) + self.resid_dropout1 = nn.Dropout(config.resid_pdrop) + self.resid_dropout2 = nn.Dropout(config.resid_pdrop)
+ + +
+[docs] + def forward(self, hidden_states, residual): + residual = self.resid_dropout1(hidden_states) + residual + hidden_states = self.ln_1(residual) + mlp_out = self.mlp(hidden_states) + residual = self.resid_dropout2(mlp_out) + residual + hidden_states = self.ln_2(residual) + return hidden_states
+
+ + + +
+[docs] +class BackpackSenseNetwork(nn.Module): +
+[docs] + def __init__(self, config, num_senses, device=None, dtype=None): + super().__init__() + self.num_senses = num_senses + #self.embeddings = embeddings + self.n_embd = config.n_embd + + self.dropout = nn.Dropout(config.embd_pdrop) + self.block = BackpackNoMixBlock(config) + self.ln = nn.LayerNorm(self.n_embd, eps=config.layer_norm_epsilon) + self.final_mlp = BackpackMLP( + embed_dim=config.n_embd, + intermediate_dim=config.sense_intermediate_scale*config.n_embd, + out_dim=config.n_embd*config.num_senses, + config=config, + )
+ + +
+[docs] + def forward(self, input_embeds): + residual = self.dropout(input_embeds) + hidden_states = self.ln(residual) + hidden_states = self.block(hidden_states, residual) + senses = self.final_mlp(hidden_states) + bs, s, nvd = senses.shape + return senses.reshape(bs, s, self.num_senses, self.n_embd).transpose(1,2) # (bs, nv, s, d)
+
+ + +
+[docs] +class BackpackWeightNetwork(nn.Module): + +
+[docs] + def __init__(self, num_senses, embed_dim): + super().__init__() + self.n_embd = embed_dim + self.num_senses = num_senses + self.embed_per_sense = embed_dim // num_senses + self.c_attn = nn.Linear(embed_dim, 2 * num_senses * self.embed_per_sense) + self.softmax_scale = None
+ + +
+[docs] + def forward(self, encoded): + b, s, d = encoded.shape + encoded = self.c_attn(encoded) # (b, s, 2*d) + encoded = encoded.reshape(b, s, 2, self.num_senses, self.embed_per_sense) #(b, s, 2, nv, d//nv) + batch_size, seqlen = encoded.shape[0], encoded.shape[1] + + # compute scores & mask + q, k = encoded.unbind(dim=2) + softmax_scale = self.softmax_scale or 1.0 / math.sqrt(q.shape[-1]) + scores = torch.einsum('bthd,bshd->bhts', q, k * softmax_scale) + causal_mask = torch.triu(torch.full((seqlen, seqlen), -10000.0, device=scores.device), 1) + scores = scores + causal_mask.to(dtype=scores.dtype) + + return torch.softmax(scores, dim=-1, dtype=q.dtype)
+
+ + + +
+[docs] +@dataclass +class BackpackGPT2BaseModelOutput(ModelOutput): + hidden_states: torch.FloatTensor = None + contextualization: torch.FloatTensor = None
+ + +
+[docs] +class BackpackGPT2Model(BackpackGPT2PreTrainedModel): + _keys_to_ignore_on_load_missing = [r".*attn.masked_bias", r".*attn.bias"] + +
+[docs] + def __init__(self, config): + super().__init__(config) + + self.embed_dim = config.n_embd + + self.num_senses = config.num_senses + self.gpt2_model = GPT2Model(config) + self.sense_network = BackpackSenseNetwork(config, self.num_senses, self.gpt2_model.wte) + self.word_embeddings = self.gpt2_model.wte + self.position_embeddings = self.gpt2_model.wpe + self.sense_weight_net = BackpackWeightNetwork(self.num_senses, self.embed_dim) + # Model parallel + self.model_parallel = False + self.device_map = None + self.gradient_checkpointing = False
+ + + def get_num_senses(self): + return self.num_senses + + def get_word_embeddings(self): + return self.word_embeddings + + def get_sense_network(self): + return self.sense_network + +
+[docs] + def forward(self, input_ids, position_ids): + # Compute senses + sense_input_embeds = self.word_embeddings(input_ids) + senses = self.sense_network(sense_input_embeds) # (bs, nv, s, d) + + # Compute contextualization weights + contextl_hidden_states = self.gpt2_model(input_ids, position_ids=position_ids).last_hidden_state # (bs, s, d) + contextualization = self.sense_weight_net(contextl_hidden_states) # (bs, nv, s, s) + + # Compute resulting outputs + hidden_states = torch.sum(contextualization @ senses, dim=1) # (bs, nv, s, d) -> (bs, s, d) + return BackpackGPT2BaseModelOutput( + hidden_states=hidden_states, + contextualization=contextualization, + )
+ + + def run_with_custom_contextualization(self, input_ids, contextualization): + # Compute senses + sense_input_embeds = self.word_embeddings(input_ids) + senses = self.sense_network(sense_input_embeds) # (bs, nv, s, d) + + # Compute resulting outputs + hidden_states = torch.sum(contextualization @ senses, dim=1) # (bs, nv, s, d) -> (bs, s, d) + return BackpackGPT2BaseModelOutput( + hidden_states=hidden_states, + contextualization=contextualization, + )
+ + +
+[docs] +@dataclass +class BackpackGPT2LMHeadModelOutput(ModelOutput): + logits: torch.FloatTensor = None + contextualization: torch.FloatTensor = None
+ + +
+[docs] +class BackpackGPT2LMHeadModel(BackpackGPT2PreTrainedModel): + _keys_to_ignore_on_load_missing = [r".*attn.masked_bias", r".*attn.bias"] + +
+[docs] + def __init__(self, config): + super().__init__(config) + self.backpack = BackpackGPT2Model(config) + self.lm_head = nn.Linear(config.n_embd, config.vocab_size, bias=False) + + # Model parallel + self.model_parallel = False + self.device_map = None + + self.tie_weights()
+ + +
+[docs] + def tie_weights(self): + self.lm_head.weight = self.backpack.word_embeddings.weight # also tied with the underlying underlying transf
+ + + def get_lm_head(self): + return self.lm_head + +
+[docs] + def forward(self, input_ids, position_ids=None): + outputs = self.backpack(input_ids, position_ids=position_ids) + hidden_states, contextualization = outputs.hidden_states, outputs.contextualization + lm_logits = self.lm_head(hidden_states) # (bs, s, V) + return BackpackGPT2LMHeadModelOutput( + logits=lm_logits, + contextualization=contextualization, + )
+ + + def run_with_custom_contextualization(self, input_ids, contextualization): + outputs = self.backpack.run_with_custom_contextualization(input_ids, contextualization) + hidden_states, contextualization = outputs.hidden_states, outputs.contextualization + lm_logits = self.lm_head(hidden_states) + return BackpackGPT2LMHeadModelOutput( + logits=lm_logits, + contextualization=contextualization, + )
+ + +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/backpack_gpt2/modelings_intervenable_backpack_gpt2.html b/_modules/pyvene/models/backpack_gpt2/modelings_intervenable_backpack_gpt2.html new file mode 100644 index 00000000..e5e0f0b2 --- /dev/null +++ b/_modules/pyvene/models/backpack_gpt2/modelings_intervenable_backpack_gpt2.html @@ -0,0 +1,563 @@ + + + + + + + + + + pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2 — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""gpt2 base model"""
+backpack_gpt2_lm_type_to_module_mapping = {
+    "sense_network_output": ("backpack.sense_network", CONST_OUTPUT_HOOK),
+}
+
+
+backpack_gpt2_lm_type_to_dimension_mapping = {
+    "sense_network_output": ("n_embd",),
+}
+
+
+[docs] +def create_backpack_gpt2(name="stanfordnlp/backpack-gpt2", cache_dir=None): + """Creates a GPT2 model, config, and tokenizer from the given name and revision""" + # Load model directly + from transformers import AutoTokenizer + from pyvene.models.backpack_gpt2.modelings_backpack_gpt2 import BackpackGPT2LMHeadModel + + tokenizer = AutoTokenizer.from_pretrained("gpt2", trust_remote_code=True) + model = BackpackGPT2LMHeadModel.from_pretrained(name, trust_remote_code=True) + print("loaded model") + return model.config, tokenizer, model
+ + +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/basic_utils.html b/_modules/pyvene/models/basic_utils.html new file mode 100644 index 00000000..02c94911 --- /dev/null +++ b/_modules/pyvene/models/basic_utils.html @@ -0,0 +1,740 @@ + + + + + + + + + + pyvene.models.basic_utils — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.basic_utils

+"""
+Basic Utils
+"""
+import os
+import copy
+import random
+import importlib
+import torch
+
+from torch import nn
+import numpy as np
+
+
+lsm = nn.LogSoftmax(dim=2)
+sm = nn.Softmax(dim=2)
+
+
+
+[docs] +def get_type_from_string(type_str): + """Help function to convert string to type""" + # Remove <class ' and '> from the string + type_str = type_str.replace("<class '", "").replace("'>", "") + + # Split the string into module and class name + module_name, class_name = type_str.rsplit(".", 1) + + # Import the module + module = importlib.import_module(module_name) + + # Get the class + cls = getattr(module, class_name) + + return cls
+ + + +
+[docs] +def create_directory(path): + """Create directory if not exist""" + if not os.path.exists(path): + os.makedirs(path) + print(f"Directory '{path}' created successfully.") + else: + print(f"Directory '{path}' already exists.")
+ + + +
+[docs] +def embed_to_distrib(model, embed, log=False, logits=False): + """Convert an embedding to a distribution over the vocabulary""" + if "gpt2" in model.config.architectures[0].lower(): + with torch.inference_mode(): + vocab = torch.matmul(embed, model.wte.weight.t()) + if logits: + return vocab + return lsm(vocab) if log else sm(vocab) + elif "llama" in model.config.architectures[0].lower(): + assert False, "Support for LLaMA is not here yet"
+ + + +
+[docs] +def set_seed(seed: int): + """Set seed. Deprecate soon since it is in the huggingface library""" + random.seed(seed) + np.random.seed(seed) + torch.manual_seed(seed) + torch.cuda.manual_seed_all(seed)
+ + + +
+[docs] +def sigmoid_boundary(_input, boundary_x, boundary_y, temperature): + """Generate sigmoid mask""" + return torch.sigmoid((_input - boundary_x) / temperature) * torch.sigmoid( + (boundary_y - _input) / temperature + )
+ + + +
+[docs] +def harmonic_sigmoid_boundary(_input, boundary_x, boundary_y, temperature): + """Generate harmonic sigmoid mask""" + return ( + (_input <= boundary_x) * torch.sigmoid((_input - boundary_x) / temperature) + + (_input >= boundary_y) * torch.sigmoid((boundary_y - _input) / temperature) + + ((_input > boundary_x) & (_input < boundary_y)) + * torch.sigmoid( + ( + 0.5 + * ( + torch.abs(_input - boundary_x) ** (-1) + + torch.abs(_input - boundary_y) ** (-1) + ) + ) + ** (-1) + / temperature + ) + )
+ + + +
+[docs] +def count_parameters(model): + """Count parameters of a model that require gradients""" + return sum(p.numel() for p in model.parameters() if p.requires_grad)
+ + + +
+[docs] +def random_permutation_matrix(n): + """Generate a random permutation matrix""" + _p = torch.eye(n) + perm = torch.randperm(n) + _p = _p[perm] + + return _p
+ + + +
+[docs] +def closeness_to_permutation_loss(rotation): + """Measure how close a rotation m is close to a permutation m""" + row_sum_diff = torch.abs(rotation.sum(dim=1) - 1.0).mean() + col_sum_diff = torch.abs(rotation.sum(dim=0) - 1.0).mean() + entry_diff = (rotation * (1 - rotation)).mean() + loss = 0.5 * (row_sum_diff + col_sum_diff) + entry_diff + return loss
+ + + +
+[docs] +def format_token(tokenizer, tok): + """Format the token for some path patching experiment to show decoding diff""" + return tokenizer.decode(tok).replace(" ", "_").replace("\n", "\\n")
+ + + +
+[docs] +def top_vals(tokenizer, res, n=10, return_results=False): + """Pretty print the top n values of a distribution over the vocabulary""" + top_values, top_indices = torch.topk(res, n) + ret = [] + for i, _ in enumerate(top_values): + tok = format_token(tokenizer, top_indices[i].item()) + ret += [(tok, top_values[i].item())] + if not return_results: + print(f"{tok:<20} {top_values[i].item()}") + if return_results: + return ret
+ + +
+[docs] +def get_list_depth(lst): + """Return the max depth of the input list""" + if isinstance(lst, list): + return 1 + max((get_list_depth(item) for item in lst), default=0) + return 0
+ + + +
+[docs] +def get_batch_size(model_input): + """ + Get batch size based on the input + """ + if isinstance(model_input, torch.Tensor): + batch_size = model_input.shape[0] + else: + for _, v in model_input.items(): + batch_size = v.shape[0] + break + return batch_size
+ + + +
+[docs] +def GET_LOC( + LOC, + unit="h.pos", + batch_size=1, +): + """ + From simple locale to nested one. + """ + if unit == "h.pos": + return [ + [ + [ + [LOC[0]] + ] * batch_size, + [ + [LOC[1]] + ] * batch_size + ] + ] + else: + raise NotImplementedError( + f"{unit} is not supported." + )
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/blip/modelings_blip.html b/_modules/pyvene/models/blip/modelings_blip.html new file mode 100644 index 00000000..32fdde3f --- /dev/null +++ b/_modules/pyvene/models/blip/modelings_blip.html @@ -0,0 +1,621 @@ + + + + + + + + + + pyvene.models.blip.modelings_blip — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.blip.modelings_blip

+import torch
+import torch.nn as nn
+from transformers import BlipForQuestionAnswering, BlipConfig
+from transformers.utils import ModelOutput
+from typing import Optional, Union, Tuple, Dict
+
+
+
+[docs] +class BlipWrapper(nn.Module): +
+[docs] + def __init__(self, model: BlipForQuestionAnswering): + super(BlipWrapper, self).__init__() + self.model_vis = model.vision_model + self.model_text_enc = model.text_encoder + self.model_text_dec = model.text_decoder + self.decoder_pad_token_id = model.decoder_pad_token_id + self.decoder_start_token_id = model.decoder_start_token_id + self.config = model.config + self.eos_token_id = (model.config.text_config.sep_token_id,) + self.pad_token_id = model.config.text_config.pad_token_id + self.output_attentions = model.config.output_attentions + self.use_return_dict = model.config.use_return_dict + self.output_hidden_states = model.config.output_hidden_states
+ + +
+[docs] + def forward( + self, + input_ids: torch.LongTensor, + pixel_values: torch.FloatTensor, + attention_mask: Optional[torch.LongTensor] = None, + output_attentions: Optional[bool] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ) -> Union[Tuple, Dict]: + return_dict = return_dict if return_dict is not None else self.use_return_dict + output_attentions = ( + output_attentions + if output_attentions is not None + else self.output_attentions + ) + output_hidden_states = ( + output_hidden_states + if output_hidden_states is not None + else self.output_hidden_states + ) + + vision_outputs = self.model_vis( + pixel_values=pixel_values, + output_attentions=output_attentions, + output_hidden_states=output_hidden_states, + return_dict=return_dict, + ) + + image_embeds = vision_outputs[0].to(self.model_text_enc.device) + image_attention_mask = torch.ones(image_embeds.size()[:-1], dtype=torch.long) + + input_ids = input_ids.to(self.model_text_enc.device) + question_embeds = self.model_text_enc( + input_ids=input_ids, + attention_mask=attention_mask, + encoder_hidden_states=image_embeds, + encoder_attention_mask=image_attention_mask, + output_hidden_states=True, + ) + + question_embeds_w = ( + question_embeds[0] if not return_dict else question_embeds.last_hidden_state + ) + + bos_ids = torch.full( + (question_embeds_w.size(0), 1), + fill_value=self.decoder_start_token_id, + device=self.model_text_enc.device, + ) + + answer_output = self.model_text_dec( + input_ids=bos_ids, + encoder_hidden_states=question_embeds_w, + encoder_attention_mask=attention_mask, + output_hidden_states=True, + reduction="mean", + ) + + return { + "decoder_logits": answer_output.logits, + "image_embeds": image_embeds, + "encoder_last_hidden_state": question_embeds.last_hidden_state, + "encoder_hidden_states": question_embeds.hidden_states, + "decoder_hidden_states": answer_output.hidden_states, + }
+
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/blip/modelings_blip_itm.html b/_modules/pyvene/models/blip/modelings_blip_itm.html new file mode 100644 index 00000000..f2e5a9de --- /dev/null +++ b/_modules/pyvene/models/blip/modelings_blip_itm.html @@ -0,0 +1,639 @@ + + + + + + + + + + pyvene.models.blip.modelings_blip_itm — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.blip.modelings_blip_itm

+import torch
+import torch.nn as nn
+from transformers import BlipConfig, BlipForImageTextRetrieval
+from transformers.utils import ModelOutput
+from typing import Optional, Union, Tuple, Dict
+
+
+
+[docs] +class BlipITMWrapper(nn.Module): +
+[docs] + def __init__( + self, model: BlipForImageTextRetrieval, use_itm_not_contrastive: bool = True + ): + super(BlipITMWrapper, self).__init__() + self.model_vis = model.vision_model + self.model_text_enc = model.text_encoder + self.model_vis_proj = model.vision_proj + self.model_text_proj = model.text_proj + self.model_itm = model.itm_head + # do I need to keep decoder_pad_token_id and decoder_start_token_id? might be a mistake in the HF implementation lol + self.config = model.config + self.eos_token_id = (model.config.text_config.sep_token_id,) + self.pad_token_id = model.config.text_config.pad_token_id + self.output_attentions = model.config.output_attentions + self.use_return_dict = model.config.use_return_dict + self.output_hidden_states = model.config.output_hidden_states + + self.use_itm_head = use_itm_not_contrastive
+ + +
+[docs] + def forward( + self, + input_ids: torch.LongTensor, + pixel_values: torch.FloatTensor, + attention_mask: Optional[torch.LongTensor] = None, + output_attentions: Optional[bool] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ) -> Union[Tuple, Dict]: + return_dict = return_dict if return_dict is not None else self.use_return_dict + output_attentions = ( + output_attentions + if output_attentions is not None + else self.output_attentions + ) + output_hidden_states = ( + output_hidden_states + if output_hidden_states is not None + else self.output_hidden_states + ) + + vision_outputs = self.model_vis( + pixel_values=pixel_values, + output_attentions=output_attentions, + output_hidden_states=output_hidden_states, + return_dict=return_dict, + ) + + image_embeds = vision_outputs[0].to(self.model_text_enc.device) + input_ids = input_ids.to(self.model_text_enc.device) + + if self.use_itm_head: + image_attention_mask = torch.ones( + image_embeds.size()[:-1], dtype=torch.long + ) + + caption_embeds = self.model_text_enc( + input_ids=input_ids, + attention_mask=attention_mask, + encoder_hidden_states=image_embeds, + encoder_attention_mask=image_attention_mask, + output_hidden_states=True, + ) + caption_embeds = ( + caption_embeds[0] + if not return_dict + else caption_embeds.last_hidden_state + ) + + output = self.model_itm(caption_embeds[:, 0, :]) + else: + caption_embeds = self.model_text_enc( + input_ids=input_ids, + attention_mask=attention_mask, + return_dict=return_dict, + output_hidden_states=True, + ) + caption_embeds = ( + caption_embeds[0] + if not return_dict + else caption_embeds.last_hidden_state + ) + + image_feat = nn.functional.normalize( + self.vision_proj(image_embeds[:, 0, :]), dim=-1 + ) + text_feat = nn.functional.normalize( + self.text_proj(caption_embeds[:, 0, :]), dim=-1 + ) + + output = image_feat @ text_feat.t() + + return { + "itm_score": output, + "image_embeds": image_embeds, + "encoder_last_hidden_state": caption_embeds.last_hidden_state, + "encoder_hidden_states": caption_embeds.hidden_states, + }
+
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/blip/modelings_intervenable_blip.html b/_modules/pyvene/models/blip/modelings_intervenable_blip.html new file mode 100644 index 00000000..7fa811f6 --- /dev/null +++ b/_modules/pyvene/models/blip/modelings_intervenable_blip.html @@ -0,0 +1,640 @@ + + + + + + + + + + pyvene.models.blip.modelings_intervenable_blip — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.blip.modelings_intervenable_blip

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+"""blip base model"""
+blip_type_to_module_mapping = {
+    # 'vis.block_input': ("vision_model.encoder.layers[%s]", CONST_INPUT_HOOK),
+    # 'vis.block_output': ("vision_model.encoder.layers[%s]", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_activation': ("vision_model.encoder.layers[%s].mlp.fc1", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_output': ("vision_model.encoder.layers[%s].mlp", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_input': ("vision_model.encoder.layers[%s].mlp", CONST_INPUT_HOOK),
+    # 'vis.attention_value_output': ("vision_model.encoder.layers[%s].self_attn.projection", CONST_INPUT_HOOK),
+    # 'vis.attention_output': ("vision_model.encoder.layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    # 'vis.attention_input': ("vision_model.encoder.layers[%s].self_attn", CONST_INPUT_HOOK),
+    "block_input": ("text_encoder.encoder.layer[%s]", CONST_INPUT_HOOK),
+    "block_output": ("text_encoder.encoder.layer[%s]", CONST_INPUT_HOOK),
+    "mlp_activation": (
+        "text_encoder.encoder.layer[%s].intermediate.dense",
+        CONST_OUTPUT_HOOK,
+    ),
+    "mlp_output": ("text_encoder.encoder.layer[%s].output", CONST_OUTPUT_HOOK),
+    "mlp_input": ("text_encoder.encoder.layer[%s].intermediate", CONST_INPUT_HOOK),
+    "attention_value_output": (
+        "text_encoder.encoder.layer[%s].attention.output.dense",
+        CONST_INPUT_HOOK,
+    ),
+    "attention_output": (
+        "text_encoder.encoder.layer[%s].attention.output",
+        CONST_OUTPUT_HOOK,
+    ),
+    "attention_input": ("text_encoder.encoder.layer[%s].attention", CONST_INPUT_HOOK),
+    # 'block_input': ("text_decoder.bert.encoder.layer[%s]", CONST_INPUT_HOOK),
+    # 'block_output': ("text_decoder.bert.encoder.layer[%s]", CONST_INPUT_HOOK),
+    # 'mlp_activation': ("text_decoder.bert.encoder.layer[%s].intermediate.dense", CONST_OUTPUT_HOOK),
+    # 'mlp_output': ("text_decoder.bert.encoder.layer[%s].output", CONST_OUTPUT_HOOK),
+    # 'mlp_input': ("text_decoder.bert.encoder.layer[%s].intermediate", CONST_INPUT_HOOK),
+    # 'attention_value_output': ("text_decoder.bert.encoder.layer[%s].attention.output.dense", CONST_INPUT_HOOK),
+    # 'attention_output': ("text_decoder.bert.encoder.layer[%s].attention.output", CONST_OUTPUT_HOOK),
+    # 'attention_input': ("text_decoder.bert.encoder.layer[%s].attention", CONST_INPUT_HOOK),
+    # 'cross_attention_value_output': ("text_decoder.bert.encoder.layer[%s].crossattention.output.dense", CONST_INPUT_HOOK),
+    # 'cross_attention_output': ("text_decoder.bert.encoder.layer[%s].crossattention.output", CONST_OUTPUT_HOOK),
+    # 'cross_attention_input': ("text_decoder.bert.encoder.layer[%s].crossattention", CONST_INPUT_HOOK),
+}
+
+
+blip_type_to_dimension_mapping = {
+    # 'vis.block_input': ("image_text_hidden_size", ),
+    # 'vis.block_output': ("image_text_hidden_size", ),
+    # 'vis.mlp_activation': ("projection_dim", ),
+    # 'vis.mlp_output': ("image_text_hidden_size", ),
+    # 'vis.mlp_input': ("image_text_hidden_size", ),
+    # 'vis.attention_value_output': ("image_text_hidden_size/text_config.num_attention_heads", ),
+    # 'vis.attention_output': ("image_text_hidden_size", ),
+    # 'vis.attention_input': ("image_text_hidden_size", ),
+    # 'lang.block_input': ("image_text_hidden_size", ),
+    # 'lang.block_output': ("image_text_hidden_size", ),
+    # 'lang.mlp_activation': ("projection_dim", ),
+    # 'lang.mlp_output': ("image_text_hidden_size", ),
+    # 'lang.mlp_input': ("image_text_hidden_size", ),
+    # 'lang.attention_value_output': ("image_text_hidden_size/text_config.num_attention_heads", ),
+    # 'lang.attention_output': ("image_text_hidden_size", ),
+    # 'lang.attention_input': ("image_text_hidden_size", ),
+    "block_input": ("image_text_hidden_size",),
+    "block_output": ("image_text_hidden_size",),
+    "mlp_activation": ("projection_dim",),
+    "mlp_output": ("image_text_hidden_size",),
+    "mlp_input": ("image_text_hidden_size",),
+    "attention_value_output": (
+        "image_text_hidden_size/text_config.num_attention_heads",
+    ),
+    "attention_output": ("image_text_hidden_size",),
+    "attention_input": ("image_text_hidden_size",),
+    "cross_attention_value_output": (
+        "image_text_hidden_size/text_config.num_attention_heads",
+    ),
+    "cross_attention_output": ("image_text_hidden_size",),
+    "cross_attention_input": ("image_text_hidden_size",),
+}
+
+
+"""blip model with wrapper"""
+blip_wrapper_type_to_module_mapping = {}
+for k, v in blip_type_to_module_mapping.items():
+    blip_wrapper_type_to_module_mapping[k] = (
+        v[0].replace("text_encoder", "model_text_enc"),
+        v[1],
+    )
+
+
+blip_wrapper_type_to_dimension_mapping = blip_type_to_dimension_mapping
+
+
+
+[docs] +def create_blip(name="Salesforce/blip-vqa-base", cache_dir=None): + """Creates a BLIP VQA model, config, and tokenizer from the given name and revision""" + from transformers import BlipConfig, BlipProcessor, BlipForQuestionAnswering + + config = BlipConfig.from_pretrained(name) + processor = BlipProcessor.from_pretrained(name) + blip = BlipForQuestionAnswering.from_pretrained( + name, config=config, cache_dir=cache_dir + ) + print("loaded model") + return config, processor, blip
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/blip/modelings_intervenable_blip_itm.html b/_modules/pyvene/models/blip/modelings_intervenable_blip_itm.html new file mode 100644 index 00000000..4c55f321 --- /dev/null +++ b/_modules/pyvene/models/blip/modelings_intervenable_blip_itm.html @@ -0,0 +1,624 @@ + + + + + + + + + + pyvene.models.blip.modelings_intervenable_blip_itm — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.blip.modelings_intervenable_blip_itm

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+from ..constants import *
+
+"""blip ITM base model"""
+blip_itm_type_to_module_mapping = {
+    # TODO: not sure why these are commented out in the BlipVQA implementation
+    # 'vis.block_input': ("vision_model.encoder.layers[%s]", CONST_INPUT_HOOK),
+    # 'vis.block_output': ("vision_model.encoder.layers[%s]", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_activation': ("vision_model.encoder.layers[%s].mlp.fc1", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_output': ("vision_model.encoder.layers[%s].mlp", CONST_OUTPUT_HOOK),
+    # 'vis.mlp_input': ("vision_model.encoder.layers[%s].mlp", CONST_INPUT_HOOK),
+    # 'vis.attention_value_output': ("vision_model.encoder.layers[%s].self_attn.projection", CONST_INPUT_HOOK),
+    # 'vis.attention_output': ("vision_model.encoder.layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    # 'vis.attention_input': ("vision_model.encoder.layers[%s].self_attn", CONST_INPUT_HOOK),
+    "block_input": ("text_encoder.encoder.layer[%s]", CONST_INPUT_HOOK),
+    "block_output": ("text_encoder.encoder.layer[%s]", CONST_INPUT_HOOK),
+    "mlp_activation": (
+        "text_encoder.encoder.layer[%s].intermediate.dense",
+        CONST_OUTPUT_HOOK,
+    ),
+    "mlp_output": ("text_encoder.encoder.layer[%s].output", CONST_OUTPUT_HOOK),
+    "mlp_input": ("text_encoder.encoder.layer[%s].intermediate", CONST_INPUT_HOOK),
+    "attention_value_output": (
+        "text_encoder.encoder.layer[%s].attention.output.dense",
+        CONST_INPUT_HOOK,
+    ),
+    "attention_output": (
+        "text_encoder.encoder.layer[%s].attention.output",
+        CONST_OUTPUT_HOOK,
+    ),
+    "attention_input": ("text_encoder.encoder.layer[%s].attention", CONST_INPUT_HOOK),
+    "itm_output": ("itm_head", CONST_OUTPUT_HOOK),
+}
+
+
+blip_itm_type_to_dimension_mapping = {
+    # 'vis.block_input': ("image_text_hidden_size", ),
+    # 'vis.block_output': ("image_text_hidden_size", ),
+    # 'vis.mlp_activation': ("projection_dim", ),
+    # 'vis.mlp_output': ("image_text_hidden_size", ),
+    # 'vis.mlp_input': ("image_text_hidden_size", ),
+    # 'vis.attention_value_output': ("image_text_hidden_size/text_config.num_attention_heads", ),
+    # 'vis.attention_output': ("image_text_hidden_size", ),
+    # 'vis.attention_input': ("image_text_hidden_size", ),
+    "block_input": ("image_text_hidden_size",),
+    "block_output": ("image_text_hidden_size",),
+    "mlp_activation": ("projection_dim",),
+    "mlp_output": ("image_text_hidden_size",),
+    "mlp_input": ("image_text_hidden_size",),
+    "attention_value_output": (
+        "image_text_hidden_size/text_config.num_attention_heads",
+    ),
+    "attention_output": ("image_text_hidden_size",),
+    "attention_input": ("image_text_hidden_size",),
+    "cross_attention_value_output": (
+        "image_text_hidden_size/text_config.num_attention_heads",
+    ),
+    "cross_attention_output": ("image_text_hidden_size",),
+    "cross_attention_input": ("image_text_hidden_size",),
+    "itm_input": ("image_text_hidden_size",),
+    "itm_output": (2,), # TODO: not sure how to specify this dim as it's not an attr in BlipConfig
+}
+
+
+"""blip model with wrapper"""
+blip_itm_wrapper_type_to_module_mapping = {}
+for k, v in blip_itm_type_to_module_mapping.items():
+    blip_itm_wrapper_type_to_module_mapping[k] = (
+        v[0].replace("text_encoder", "model_text_enc"), # NOTE: don't fully understand why we do this
+        v[1],
+    )
+
+
+blip_itm_wrapper_type_to_dimension_mapping = blip_itm_type_to_dimension_mapping
+
+
+
+[docs] +def create_blip_itm(name="Salesforce/blip-itm-base-coco", cache_dir=None): + """Creates a BLIP ITM model, config, and tokenizer from the given name and revision""" + from transformers import BlipConfig, BlipProcessor, BlipForImageTextRetrieval + + config = BlipConfig.from_pretrained(name) + processor = BlipProcessor.from_pretrained(name) + blip = BlipForImageTextRetrieval.from_pretrained( + name, config=config, cache_dir=cache_dir + ) + print("loaded model") + return config, processor, blip
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/configuration_intervenable_model.html b/_modules/pyvene/models/configuration_intervenable_model.html new file mode 100644 index 00000000..dd8b3009 --- /dev/null +++ b/_modules/pyvene/models/configuration_intervenable_model.html @@ -0,0 +1,668 @@ + + + + + + + + + + pyvene.models.configuration_intervenable_model — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.configuration_intervenable_model

+import json, warnings, torch
+from collections import OrderedDict, namedtuple
+from typing import Any, List, Mapping, Optional
+
+from transformers import PreTrainedTokenizer, TensorType, is_torch_available
+from transformers.configuration_utils import PretrainedConfig
+
+from .interventions import VanillaIntervention
+
+
+RepresentationConfig = namedtuple(
+    "RepresentationConfig",
+    "layer component unit "
+    "max_number_of_units "
+    "low_rank_dimension intervention_type intervention "
+    "subspace_partition group_key intervention_link_key moe_key "
+    "source_representation hidden_source_representation latent_dim",
+    defaults=(
+        0, "block_output", "pos", 1, None, None,
+        None, None, None, None, None, None, None, None),
+)
+
+
+
+[docs] +class IntervenableConfig(PretrainedConfig): +
+[docs] + def __init__( + self, + representations=[RepresentationConfig()], + intervention_types=VanillaIntervention, + mode="parallel", + sorted_keys=None, + model_type=None, # deprecating + # hidden fields for backlog + intervention_dimensions=None, + intervention_constant_sources=None, + **kwargs, + ): + if not isinstance(representations, list): + representations = [representations] + + casted_representations = [] + for reprs in representations: + if isinstance(reprs, RepresentationConfig): + casted_representations += [reprs] + elif isinstance(reprs, list): + casted_representations += [ + RepresentationConfig(*reprs)] + elif isinstance(reprs, dict): + casted_representations += [ + RepresentationConfig(**reprs)] + else: + raise ValueError( + f"{reprs} format in our representation list is not supported.") + self.representations = casted_representations + self.intervention_types = intervention_types + # the type inside reprs can overwrite + overwrite = False + overwrite_intervention_types = [] + for reprs in self.representations: + if overwrite: + if reprs.intervention_type is None and reprs.intervention is None: + raise ValueError( + "intervention_type if used should be specified for all") + if reprs.intervention_type is not None: + overwrite = True + overwrite_intervention_types += [reprs.intervention_type] + elif reprs.intervention is not None: + overwrite = True + overwrite_intervention_types += [type(reprs.intervention)] + if reprs.intervention_type is not None and reprs.intervention is not None: + raise ValueError( + "Only one of the field should be provided: intervention_type, intervention") + if None in overwrite_intervention_types: + raise ValueError( + "intervention_type if used should be specified for all") + if overwrite: + self.intervention_types = overwrite_intervention_types + + self.mode = mode + self.sorted_keys = sorted_keys + self.intervention_dimensions = intervention_dimensions + self.intervention_constant_sources = intervention_constant_sources + self.model_type = model_type + super().__init__(**kwargs)
+ + + def add_intervention(self, representations): + if not isinstance(representations, list): + representations = [representations] + + for reprs in representations: + if isinstance(reprs, RepresentationConfig): + self.representations += [reprs] + elif isinstance(reprs, list): + self.representations += [ + RepresentationConfig(*reprs)] + elif isinstance(reprs, dict): + self.representations += [ + RepresentationConfig(**reprs)] + else: + raise ValueError( + f"{reprs} format in our representation list is not supported.") + if self.representations[-1].intervention_type is None: + raise ValueError( + "intervention_type should be provided.") + + if self.representations[-1].intervention_type is not None: + self.intervention_types += [self.representations[-1].intervention_type] + elif self.representations[-1].intervention is not None: + self.intervention_types += [self.representations[-1].intervention] + + def __repr__(self): + representations = [] + for reprs in self.representations: + if isinstance(reprs, list): + reprs = RepresentationConfig(*reprs) + new_d = {} + for k, v in reprs._asdict().items(): + if type(v) not in {str, int, list, tuple, dict} and v is not None and v != [None]: + new_d[k] = "PLACEHOLDER" + else: + new_d[k] = v + representations += [new_d] + _repr = { + "model_type": str(self.model_type), + "representations": tuple(representations), + "intervention_types": str( + self.intervention_types + ), + "mode": self.mode, + "sorted_keys": tuple(self.sorted_keys) if self.sorted_keys is not None else str(self.sorted_keys), + "intervention_dimensions": str(self.intervention_dimensions), + } + _repr_string = json.dumps(_repr, indent=4) + + return f"IntervenableConfig\n{_repr_string}" + + def __str__(self): + return self.__repr__()
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/constants.html b/_modules/pyvene/models/constants.html new file mode 100644 index 00000000..8d103c38 --- /dev/null +++ b/_modules/pyvene/models/constants.html @@ -0,0 +1,545 @@ + + + + + + + + + + pyvene.models.constants — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.constants

+import torch
+
+CONST_INPUT_HOOK = "register_forward_pre_hook"
+CONST_OUTPUT_HOOK = "register_forward_hook"
+CONST_GRAD_HOOK = "register_hook"
+
+
+split_and_select = lambda x, num_slice, selct_index: torch.chunk(x, num_slice, dim=-1)[selct_index]
+
+[docs] +def split_heads(tensor, num_heads, attn_head_size): + """Splits hidden_size dim into attn_head_size and num_heads.""" + new_shape = tensor.size()[:-1] + (num_heads, attn_head_size) + tensor = tensor.view(new_shape) + return tensor.permute(0, 2, 1, 3) # (batch, head, seq_length, head_features)
+ + +split_half = lambda x, selct_index: torch.chunk(x, 2, dim=-1)[selct_index] +split_three = lambda x, selct_index: torch.chunk(x, 3, dim=-1)[selct_index] +split_head_and_permute = lambda x, num_head: split_heads(x, num_head, x.shape[-1]//num_head) +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gemma/modelings_intervenable_gemma.html b/_modules/pyvene/models/gemma/modelings_intervenable_gemma.html new file mode 100644 index 00000000..fb37a5cc --- /dev/null +++ b/_modules/pyvene/models/gemma/modelings_intervenable_gemma.html @@ -0,0 +1,617 @@ + + + + + + + + + + pyvene.models.gemma.modelings_intervenable_gemma — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gemma.modelings_intervenable_gemma

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+import torch
+from ..constants import *
+
+
+gemma_type_to_module_mapping = {
+    "block_input": ("layers[%s]", CONST_INPUT_HOOK),
+    "block_output": ("layers[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("layers[%s].mlp.act_fn", CONST_OUTPUT_HOOK),
+    "mlp_output": ("layers[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("layers[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    "attention_input": ("layers[%s].self_attn", CONST_INPUT_HOOK),
+    "query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK),
+    "key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK),
+    "value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK),
+    "head_query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+    "head_value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+}
+
+
+gemma_type_to_dimension_mapping = {
+    "n_head": ("num_attention_heads",),
+    "n_kv_head": ("num_key_value_heads",),
+    "block_input": ("hidden_size",),
+    "block_output": ("hidden_size",),
+    "mlp_activation": ("intermediate_size",),
+    "mlp_output": ("hidden_size",),
+    "mlp_input": ("hidden_size",),
+    "attention_value_output": ("hidden_size",),
+    "head_attention_value_output": ("head_dim",),
+    "attention_output": ("hidden_size",),
+    "attention_input": ("hidden_size",),
+    "query_output": ("hidden_size",),
+    "key_output": ("hidden_size",),
+    "value_output": ("hidden_size",),
+    "head_query_output": ("head_dim",),
+    "head_key_output": ("head_dim",),
+    "head_value_output": ("hhead_dim",),
+}
+
+
+"""gemma model with LM head"""
+gemma_lm_type_to_module_mapping = {}
+for k, v in gemma_type_to_module_mapping.items():
+    gemma_lm_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+gemma_lm_type_to_dimension_mapping = gemma_type_to_dimension_mapping
+
+
+"""gemma model with classifier head"""
+gemma_classifier_type_to_module_mapping = {}
+for k, v in gemma_type_to_module_mapping.items():
+    gemma_classifier_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+gemma_classifier_type_to_dimension_mapping = gemma_type_to_dimension_mapping
+
+
+
+[docs] +def create_gemma( + name="google/gemma-2b-it", cache_dir=None, dtype=torch.bfloat16 +): + """Creates a Gemma Causal LM model, config, and tokenizer from the given name and revision""" + from transformers import GemmaForCausalLM, GemmaTokenizer, GemmaConfig + + config = GemmaConfig.from_pretrained(name, cache_dir=cache_dir) + tokenizer = GemmaTokenizer.from_pretrained(name, cache_dir=cache_dir) + gemma = GemmaForCausalLM.from_pretrained( + name, + config=config, + cache_dir=cache_dir, + torch_dtype=dtype, # save memory + ) + print("loaded model") + return config, tokenizer, gemma
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gpt2/modelings_intervenable_gpt2.html b/_modules/pyvene/models/gpt2/modelings_intervenable_gpt2.html new file mode 100644 index 00000000..fbb1bc74 --- /dev/null +++ b/_modules/pyvene/models/gpt2/modelings_intervenable_gpt2.html @@ -0,0 +1,644 @@ + + + + + + + + + + pyvene.models.gpt2.modelings_intervenable_gpt2 — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gpt2.modelings_intervenable_gpt2

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""gpt2 base model"""
+gpt2_type_to_module_mapping = {
+    "block_input": ("h[%s]", CONST_INPUT_HOOK),
+    "block_output": ("h[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("h[%s].mlp.act", CONST_OUTPUT_HOOK),
+    "mlp_output": ("h[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("h[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("h[%s].attn.c_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("h[%s].attn.c_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_weight": ("h[%s].attn.attn_dropout", CONST_INPUT_HOOK),
+    "attention_output": ("h[%s].attn.resid_dropout", CONST_OUTPUT_HOOK),
+    "attention_input": ("h[%s].attn", CONST_INPUT_HOOK),
+    "query_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 0)),
+    "key_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 1)),
+    "value_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 2)),
+    "head_query_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 0), (split_head_and_permute, "n_head")), 
+    "head_key_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 1), (split_head_and_permute, "n_head")),
+    "head_value_output": ("h[%s].attn.c_attn", CONST_OUTPUT_HOOK, (split_three, 2), (split_head_and_permute, "n_head")),
+}
+
+
+gpt2_type_to_dimension_mapping = {
+    "n_head": ("n_head", ),
+    "block_input": ("n_embd",),
+    "block_output": ("n_embd",),
+    "mlp_activation": (
+        "n_inner",
+        "n_embd*4",
+    ),
+    "mlp_output": ("n_embd",),
+    "mlp_input": ("n_embd",),
+    "attention_value_output": ("n_embd",),
+    "head_attention_value_output": ("n_embd/n_head",),
+    "attention_weight": ("max_position_embeddings", ),
+    "attention_output": ("n_embd",),
+    "attention_input": ("n_embd",),
+    "query_output": ("n_embd",),
+    "key_output": ("n_embd",),
+    "value_output": ("n_embd",),
+    "head_query_output": ("n_embd/n_head",),
+    "head_key_output": ("n_embd/n_head",),
+    "head_value_output": ("n_embd/n_head",),
+}
+
+
+"""gpt2 model with LM head"""
+gpt2_lm_type_to_module_mapping = {}
+for k, v in gpt2_type_to_module_mapping.items():
+    gpt2_lm_type_to_module_mapping[k] = (f"transformer.{v[0]}", ) + v[1:]
+
+gpt2_lm_type_to_dimension_mapping = gpt2_type_to_dimension_mapping
+
+"""gpt2 model with classifier head"""
+gpt2_classifier_type_to_module_mapping = {}
+for k, v in gpt2_type_to_module_mapping.items():
+    gpt2_classifier_type_to_module_mapping[k] = (f"transformer.{v[0]}", ) + v[1:]
+
+gpt2_classifier_type_to_dimension_mapping = gpt2_type_to_dimension_mapping
+
+
+
+[docs] +def create_gpt2(name="gpt2", cache_dir=None): + """Creates a GPT2 model, config, and tokenizer from the given name and revision""" + from transformers import GPT2Model, GPT2Tokenizer, GPT2Config + + config = GPT2Config.from_pretrained(name) + tokenizer = GPT2Tokenizer.from_pretrained(name) + gpt = GPT2Model.from_pretrained(name, config=config, cache_dir=cache_dir) + print("loaded model") + return config, tokenizer, gpt
+ + + +
+[docs] +def create_gpt2_lm(name="gpt2", config=None, cache_dir=None): + """Creates a GPT2 LM, config, and tokenizer from the given name and revision""" + from transformers import GPT2LMHeadModel, GPT2Tokenizer, GPT2Config + + tokenizer = GPT2Tokenizer.from_pretrained("gpt2") + if config is None: + config = GPT2Config.from_pretrained(name) + gpt = GPT2LMHeadModel.from_pretrained(name, config=config, cache_dir=cache_dir) + else: + gpt = GPT2LMHeadModel(config=config) + print("loaded model") + return config, tokenizer, gpt
+ + +
+[docs] +def create_gpt2_classifier(name="gpt2", config=None, cache_dir=None): + """Creates a GPT2ForSequenceClassification, config, and tokenizer from the given name and revision""" + from transformers import GPT2LMForSequenceClassification, GPT2Tokenizer, GPT2Config + + tokenizer = GPT2Tokenizer.from_pretrained("gpt2") + if config is None: + config = GPT2Config.from_pretrained(name) + gpt = GPT2LMForSequenceClassification.from_pretrained(name, config=config, cache_dir=cache_dir) + else: + gpt = GPT2LMForSequenceClassification(config=config) + print("loaded model") + return config, tokenizer, gpt
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gpt_neo/modelings_intervenable_gpt_neo.html b/_modules/pyvene/models/gpt_neo/modelings_intervenable_gpt_neo.html new file mode 100644 index 00000000..874f681c --- /dev/null +++ b/_modules/pyvene/models/gpt_neo/modelings_intervenable_gpt_neo.html @@ -0,0 +1,605 @@ + + + + + + + + + + pyvene.models.gpt_neo.modelings_intervenable_gpt_neo — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gpt_neo.modelings_intervenable_gpt_neo

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""gpt_neo base model"""
+gpt_neo_type_to_module_mapping = {
+    "block_input": ("h[%s]", CONST_INPUT_HOOK),
+    "block_output": ("h[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("h[%s].mlp.act", CONST_OUTPUT_HOOK),
+    "mlp_output": ("h[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("h[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("h[%s].attn.out_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("h[%s].attn.out_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("h[%s].attn", CONST_OUTPUT_HOOK),
+    "attention_input": ("h[%s].attn", CONST_INPUT_HOOK),
+    "query_output": ("h[%s].attn.q_proj", CONST_OUTPUT_HOOK),
+    "key_output": ("h[%s].attn.k_proj", CONST_OUTPUT_HOOK),
+    "value_output": ("h[%s].attn.v_proj", CONST_OUTPUT_HOOK),
+    "head_query_output": ("h[%s].attn.q_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_key_output": ("h[%s].attn.k_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_value_output": ("h[%s].attn.v_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+}
+
+
+gpt_neo_type_to_dimension_mapping = {
+    "n_head": "num_heads",
+    "block_input": ("hidden_size",),
+    "block_output": ("hidden_size",),
+    "mlp_activation": (
+        "intermediate_size",
+        "hidden_size*4",
+    ),
+    "mlp_output": ("hidden_size",),
+    "mlp_input": ("hidden_size",),
+    "attention_value_output": ("hidden_size",),
+    "head_attention_value_output": ("hidden_size/num_heads",),
+    "attention_output": ("hidden_size",),
+    "attention_input": ("hidden_size",),
+    "query_output": ("hidden_size",),
+    "key_output": ("hidden_size",),
+    "value_output": ("hidden_size",),
+    "head_query_output": ("hidden_size/num_heads",),
+    "head_key_output": ("hidden_size/num_heads",),
+    "head_value_output": ("hidden_size/num_heads",),
+}
+
+
+"""gpt_neo model with LM head"""
+gpt_neo_lm_type_to_module_mapping = {}
+for k, v in gpt_neo_type_to_module_mapping.items():
+    gpt_neo_lm_type_to_module_mapping[k] = (f"transformer.{v[0]}", ) + v[1:]
+
+
+gpt_neo_lm_type_to_dimension_mapping = gpt_neo_type_to_dimension_mapping
+
+
+
+[docs] +def create_gpt_neo( + name="roneneldan/TinyStories-33M", cache_dir=None +): + """Creates a GPT2 model, config, and tokenizer from the given name and revision""" + from transformers import GPTNeoForCausalLM, GPT2Tokenizer, GPTNeoConfig + + config = GPTNeoConfig.from_pretrained(name) + tokenizer = GPT2Tokenizer.from_pretrained("EleutherAI/gpt-neo-125M") # not sure + gpt_neo = GPTNeoForCausalLM.from_pretrained(name) + print("loaded model") + return config, tokenizer, gpt_neo
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gpt_neox/modelings_intervenable_gpt_neox.html b/_modules/pyvene/models/gpt_neox/modelings_intervenable_gpt_neox.html new file mode 100644 index 00000000..d3400579 --- /dev/null +++ b/_modules/pyvene/models/gpt_neox/modelings_intervenable_gpt_neox.html @@ -0,0 +1,603 @@ + + + + + + + + + + pyvene.models.gpt_neox.modelings_intervenable_gpt_neox — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gpt_neox.modelings_intervenable_gpt_neox

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""gpt_neox base model"""
+gpt_neox_type_to_module_mapping = {
+    "block_input": ("layers[%s]", CONST_INPUT_HOOK),
+    "block_output": ("layers[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("layers[%s].mlp.act", CONST_OUTPUT_HOOK),
+    "mlp_output": ("layers[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("layers[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("layers[%s].attention.dense", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("layers[%s].attention.dense", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("layers[%s].attention", CONST_OUTPUT_HOOK),
+    "attention_input": ("layers[%s].attention", CONST_INPUT_HOOK),
+    # 'query_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+    # 'key_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+    # 'value_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+    # 'head_query_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+    # 'head_key_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+    # 'head_value_output': ("layers[%s].attention.query_key_value", CONST_OUTPUT_HOOK),
+}
+
+
+gpt_neox_type_to_dimension_mapping = {
+    "n_head": ("num_attention_heads",),
+    "block_input": ("hidden_size",),
+    "block_output": ("hidden_size",),
+    "mlp_activation": (
+        "intermediate_size",
+        "hidden_size*4",
+    ),
+    "mlp_output": ("hidden_size",),
+    "mlp_input": ("hidden_size",),
+    "attention_value_output": ("hidden_size",),
+    "head_attention_value_output": ("hidden_size/num_attention_heads",),
+    "attention_output": ("hidden_size",),
+    "attention_input": ("hidden_size",),
+    # 'query_output': ("hidden_size", ),
+    # 'key_output': ("hidden_size", ),
+    # 'value_output': ("hidden_size", ),
+    # 'head_query_output': ("hidden_size/num_attention_heads", ),
+    # 'head_key_output': ("hidden_size/num_attention_heads", ),
+    # 'head_value_output': ("hidden_size/num_attention_heads", ),
+}
+
+
+"""gpt_neox model with LM head"""
+gpt_neox_lm_type_to_module_mapping = {}
+for k, v in gpt_neox_type_to_module_mapping.items():
+    gpt_neox_lm_type_to_module_mapping[k] = (f"gpt_neox.{v[0]}", ) + v[1:]
+
+
+gpt_neox_lm_type_to_dimension_mapping = gpt_neox_type_to_dimension_mapping
+
+
+
+[docs] +def create_gpt_neox(name="EleutherAI/pythia-70m", cache_dir=None): + """Creates a GPT2 model, config, and tokenizer from the given name and revision""" + from transformers import GPTNeoXForCausalLM, AutoTokenizer, GPTNeoXConfig + + config = GPTNeoXConfig.from_pretrained(name) + tokenizer = AutoTokenizer.from_pretrained(name) + gpt_neox = GPTNeoXForCausalLM.from_pretrained(name) + print("loaded model") + return config, tokenizer, gpt_neox
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gru/modelings_gru.html b/_modules/pyvene/models/gru/modelings_gru.html new file mode 100644 index 00000000..f2d2bff1 --- /dev/null +++ b/_modules/pyvene/models/gru/modelings_gru.html @@ -0,0 +1,916 @@ + + + + + + + + + + pyvene.models.gru.modelings_gru — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gru.modelings_gru

+import torch
+import torch.nn as nn
+from torch.autograd import Variable
+from typing import Optional, Tuple
+import numpy as np
+from dataclasses import dataclass
+from transformers.utils import ModelOutput
+from torch.nn import BCEWithLogitsLoss, CrossEntropyLoss, MSELoss
+from transformers import PretrainedConfig, PreTrainedModel
+from transformers.activations import ACT2FN
+from transformers.modeling_outputs import (
+    ModelOutput,
+    SequenceClassifierOutput,
+    CausalLMOutput,
+)
+
+
+
+[docs] +class GRUConfig(PretrainedConfig): + model_type = "gru" + +
+[docs] + def __init__( + self, + include_emb=False, + vocab_size=50_257, + max_position_embeddings=512, + n_layer=2, + h_dim=512, + n_labels=2, + include_bias=True, + pdrop=0.3, + problem_type="single_label_classification", + initializer_range=0.02, + **kwargs, + ): + self.include_emb = include_emb + self.vocab_size = vocab_size + self.max_position_embeddings = max_position_embeddings + self.n_layer = n_layer + self.h_dim = h_dim + self.include_bias = include_bias + self.pdrop = pdrop + self.n_labels = n_labels + self.problem_type = problem_type + self.initializer_range = initializer_range + super().__init__(**kwargs)
+
+ + + +
+[docs] +class GRUCell(nn.Module): +
+[docs] + def __init__(self, config): + super(GRUCell, self).__init__() + self.h_dim = config.h_dim + self.include_bias = config.include_bias + + self.x2h = nn.Linear(self.h_dim, 3 * self.h_dim, bias=self.include_bias) + self.h2h = nn.Linear(self.h_dim, 3 * self.h_dim, bias=self.include_bias) + + self.reset_act = nn.Sigmoid() + self.update_act = nn.Sigmoid() + self.new_act = nn.Tanh() + + self.reset_parameters()
+ + + def reset_parameters(self): + std = 1.0 / np.sqrt(self.h_dim) + for w in self.parameters(): + w.data.uniform_(-std, std) + +
+[docs] + def forward(self, current_states, hidden_states=None): + if hidden_states is None: + hidden_states = Variable( + current_states.new_zeros(current_states.size(0), self.hidden_size) + ) + + x_t = self.x2h(current_states) + h_t = self.h2h(hidden_states) + + x_reset, x_upd, x_new = x_t.chunk(3, 1) + h_reset, h_upd, h_new = h_t.chunk(3, 1) + + reset_gate = self.reset_act(x_reset + h_reset) + update_gate = self.update_act(x_upd + h_upd) + new_gate = self.new_act(x_new + (reset_gate * h_new)) + + hy = update_gate * hidden_states + (1 - update_gate) * new_gate + + return hy
+
+ + + +
+[docs] +@dataclass +class GRUModelOutput(ModelOutput): + last_hidden_state: torch.FloatTensor = None + hidden_states: Optional[Tuple[torch.FloatTensor]] = None
+ + + +
+[docs] +class GRUPreTrainedModel(PreTrainedModel): +
+[docs] + def __init__(self, *inputs, **kwargs): + super().__init__(*inputs, **kwargs)
+ + + def _init_weights(self, module): + """Initialize the weights.""" + if isinstance(module, nn.Embedding): + module.weight.data.normal_(mean=0.0, std=self.config.initializer_range) + if module.padding_idx is not None: + module.weight.data[module.padding_idx].zero_()
+ + + +
+[docs] +class GRUModel(GRUPreTrainedModel): +
+[docs] + def __init__(self, config): + super().__init__(config) + self.config = config + self.h_dim = config.h_dim + self.include_bias = config.include_bias + self.n_layer = config.n_layer + if config.include_emb: + self.wte = nn.Embedding(config.vocab_size, self.h_dim) + self.wpe = nn.Embedding(config.max_position_embeddings, self.h_dim) + + self.cells = nn.ModuleList( + [GRUCell(self.config) for _ in range(0, self.n_layer)] + ) + + # Initialize weights and apply final processing + self.post_init()
+ + +
+[docs] + def get_input_embeddings(self): + return self.wte
+ + +
+[docs] + def set_input_embeddings(self, new_embeddings): + self.wte = new_embeddings
+ + +
+[docs] + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + position_ids: Optional[torch.LongTensor] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + hidden_states: Optional[torch.FloatTensor] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ): + if inputs_embeds is None: + inputs_embeds = self.wte(input_ids) + if position_ids is not None: + position_embeds = self.wpe(position_ids) + inputs_embeds += position_embeds + + batch_size = inputs_embeds.shape[0] + max_seq_len = inputs_embeds.shape[1] + if hidden_states is None: + h0 = Variable(torch.zeros(self.n_layer, batch_size, self.h_dim)).to( + inputs_embeds.device + ) + else: + h0 = hidden_states + all_layer_hidden_states = [h0[layer, :, :] for layer in range(self.n_layer)] + + all_hidden_states = [] + for t in range(max_seq_len): + for layer in range(self.n_layer): + if layer == 0: + current_layer_hidden_state = self.cells[layer]( + inputs_embeds[:, t, :], all_layer_hidden_states[layer] + ) + else: + current_layer_hidden_state = self.cells[layer]( + all_layer_hidden_states[layer - 1], + all_layer_hidden_states[layer], + ) + all_layer_hidden_states[layer] = current_layer_hidden_state + + all_hidden_states.append(current_layer_hidden_state) + + all_hidden_states = torch.stack(all_hidden_states, dim=1) + + if not return_dict: + return tuple( + v + for v in [all_hidden_states, current_layer_hidden_state] + if v is not None + ) + + return GRUModelOutput( + hidden_states=all_hidden_states, + last_hidden_state=current_layer_hidden_state, + )
+
+ + + +
+[docs] +class GRUForClassification(GRUPreTrainedModel): +
+[docs] + def __init__(self, config): + super().__init__(config) + self.n_labels = config.n_labels + self.gru = GRUModel(config) + self.score = nn.Linear(config.h_dim, self.n_labels, bias=False)
+ + +
+[docs] + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + position_ids: Optional[torch.LongTensor] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + attention_mask: Optional[torch.FloatTensor] = None, + labels: Optional[torch.LongTensor] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ): + gru_outputs = self.gru( + input_ids, + position_ids, + inputs_embeds, + output_hidden_states, + return_dict, + ) + hidden_states = gru_outputs[0] + + if input_ids is not None: + batch_size, sequence_length = input_ids.shape[:2] + else: + batch_size, sequence_length = inputs_embeds.shape[:2] + + if attention_mask is None: + if input_ids is not None: + sequence_lengths = torch.ones_like(input_ids).sum(dim=-1).int() - 1 + else: + sequence_lengths = ( + torch.ones(inputs_embeds.shape[0], inputs_embeds.shape[1]) + .to(inputs_embeds.device) + .sum(dim=-1) + .int() + - 1 + ) + else: + sequence_lengths = attention_mask.sum(dim=-1).int() - 1 + + pooled_hidden_states = hidden_states[ + torch.arange(batch_size, device=hidden_states.device), sequence_lengths + ] + pooled_logits = self.score(pooled_hidden_states) + + loss = None + if labels is not None: + if self.config.problem_type is None: + if self.num_labels == 1: + self.config.problem_type = "regression" + elif self.num_labels > 1 and ( + labels.dtype == torch.long or labels.dtype == torch.int + ): + self.config.problem_type = "single_label_classification" + else: + self.config.problem_type = "multi_label_classification" + + if self.config.problem_type == "regression": + loss_fct = MSELoss() + if self.num_labels == 1: + loss = loss_fct(pooled_logits.squeeze(), labels.squeeze()) + else: + loss = loss_fct(pooled_logits, labels) + elif self.config.problem_type == "single_label_classification": + loss_fct = CrossEntropyLoss() + loss = loss_fct( + pooled_logits.view(-1, self.num_labels), labels.view(-1) + ) + elif self.config.problem_type == "multi_label_classification": + loss_fct = BCEWithLogitsLoss() + loss = loss_fct(pooled_logits, labels) + + if not return_dict: + output = (pooled_logits,) + gru_outputs[1:] + return ((loss,) + output) if loss is not None else output + + return SequenceClassifierOutput( + loss=loss, + logits=pooled_logits, + hidden_states=gru_outputs.hidden_states, + )
+
+ + + +
+[docs] +class GRULMHeadModel(GRUPreTrainedModel): + _tied_weights_keys = ["lm_head.weight"] + +
+[docs] + def __init__(self, config): + super().__init__(config) + self.n_labels = config.n_labels + self.gru = GRUModel(config) + self.lm_head = nn.Linear(config.h_dim, config.vocab_size, bias=False)
+ + +
+[docs] + def get_output_embeddings(self): + return self.lm_head
+ + + def set_output_embeddings(self, new_embeddings): + self.lm_head = new_embeddings + +
+[docs] + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + position_ids: Optional[torch.LongTensor] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + labels: Optional[torch.LongTensor] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ): + gru_outputs = self.gru( + input_ids, + position_ids, + inputs_embeds, + output_hidden_states, + return_dict, + ) + hidden_states = gru_outputs[0] + + lm_logits = self.lm_head(hidden_states) + + loss = None + if labels is not None: + # move labels to correct device to enable model parallelism + labels = labels.to(lm_logits.device) + # Shift so that tokens < n predict n + shift_logits = lm_logits[..., :-1, :].contiguous() + shift_labels = labels[..., 1:].contiguous() + # Flatten the tokens + loss_fct = CrossEntropyLoss() + loss = loss_fct( + shift_logits.view(-1, shift_logits.size(-1)), shift_labels.view(-1) + ) + + if not return_dict: + output = (lm_logits,) + gru_outputs[1:] + return ((loss,) + output) if loss is not None else output + + return CausalLMOutput( + loss=loss, + logits=lm_logits, + hidden_states=gru_outputs.hidden_states, + )
+
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/gru/modelings_intervenable_gru.html b/_modules/pyvene/models/gru/modelings_intervenable_gru.html new file mode 100644 index 00000000..909f5e9d --- /dev/null +++ b/_modules/pyvene/models/gru/modelings_intervenable_gru.html @@ -0,0 +1,644 @@ + + + + + + + + + + pyvene.models.gru.modelings_intervenable_gru — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.gru.modelings_intervenable_gru

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""gru base model"""
+gru_type_to_module_mapping = {
+    "cell_input": ("cells[%s]", CONST_INPUT_HOOK),
+    "reset_gate_input": ("cells[%s].reset_act", CONST_INPUT_HOOK),
+    "update_gate_input": ("cells[%s].update_act", CONST_INPUT_HOOK),
+    "new_gate_input": ("cells[%s].new_act", CONST_INPUT_HOOK),
+    "reset_gate_output": ("cells[%s].reset_act", CONST_OUTPUT_HOOK),
+    "update_gate_output": ("cells[%s].update_act", CONST_OUTPUT_HOOK),
+    "new_gate_output": ("cells[%s].new_act", CONST_OUTPUT_HOOK),
+    "x2h_output": ("cells[%s].x2h", CONST_OUTPUT_HOOK),
+    "h2h_output": ("cells[%s].h2h", CONST_OUTPUT_HOOK),
+    "reset_x2h_output": ("cells[%s].x2h", CONST_OUTPUT_HOOK, (split_three, 0)),
+    "update_x2h_output": ("cells[%s].x2h", CONST_OUTPUT_HOOK, (split_three, 1)),
+    "new_x2h_output": ("cells[%s].x2h", CONST_OUTPUT_HOOK, (split_three, 2)),
+    "reset_h2h_output": ("cells[%s].h2h", CONST_OUTPUT_HOOK, (split_three, 0)),
+    "update_h2h_output": ("cells[%s].h2h", CONST_OUTPUT_HOOK, (split_three, 1)),
+    "new_h2h_output": ("cells[%s].h2h", CONST_OUTPUT_HOOK, (split_three, 2)),
+    "cell_output": ("cells[%s]", CONST_OUTPUT_HOOK),
+}
+
+
+gru_type_to_dimension_mapping = {
+    "cell_input": ("h_dim",),
+    "reset_gate_input": ("h_dim",),
+    "update_gate_input": ("h_dim",),
+    "new_gate_input": ("h_dim",),
+    "reset_gate_output": ("h_dim",),
+    "update_gate_output": ("h_dim",),
+    "new_gate_output": ("h_dim",),
+    "x2h_output": ("h_dim*3",),
+    "h2h_output": ("h_dim*3",),
+    "reset_x2h_output": ("h_dim",),
+    "update_x2h_output": ("h_dim",),
+    "new_x2h_output": ("h_dim",),
+    "reset_h2h_output": ("h_dim",),
+    "update_h2h_output": ("h_dim",),
+    "new_h2h_output": ("h_dim",),
+    "cell_output": ("h_dim",),
+}
+
+
+"""mlp model with classification head"""
+gru_classifier_type_to_module_mapping = {}
+for k, v in gru_type_to_module_mapping.items():
+    gru_classifier_type_to_module_mapping[k] = (f"gru.{v[0]}", ) + v[1:]
+
+gru_classifier_type_to_dimension_mapping = gru_type_to_dimension_mapping
+
+
+"""mlp model with lm head"""
+gru_lm_type_to_module_mapping = {}
+for k, v in gru_type_to_module_mapping.items():
+    gru_lm_type_to_module_mapping[k] = (f"gru.{v[0]}", v[1])
+
+gru_lm_type_to_dimension_mapping = gru_type_to_dimension_mapping
+
+
+
+[docs] +def create_gru(config, tokenizer_name=None, cache_dir=None): + """Creates a GRU model, config, and tokenizer from the given name and revision""" + from transformers import AutoTokenizer + from models.gru.modelings_gru import GRUModel + + tokenizer = None + if tokenizer_name is not None: + tokenizer = AutoTokenizer.from_pretrained(tokenizer_name, cache_dir=cache_dir) + mlp = GRUModel(config=config) + print("loaded model") + return config, tokenizer, mlp
+ + + +
+[docs] +def create_gru_lm(config, tokenizer_name=None, cache_dir=None): + """Creates a GRU model, config, and tokenizer from the given name and revision""" + from transformers import AutoTokenizer + from models.gru.modelings_gru import GRULMHeadModel + + tokenizer = None + if tokenizer_name is not None: + tokenizer = AutoTokenizer.from_pretrained(tokenizer_name, cache_dir=cache_dir) + mlp = GRULMHeadModel(config=config) + print("loaded model") + return config, tokenizer, mlp
+ + + +
+[docs] +def create_gru_classifier( + config, tokenizer_name=None, cache_dir=None +): + """Creates a GRU model, config, and tokenizer from the given name and revision""" + from transformers import AutoTokenizer + from pyvene.models.gru.modelings_gru import GRUForClassification + + tokenizer = None + if tokenizer_name is not None: + tokenizer = AutoTokenizer.from_pretrained(tokenizer_name, cache_dir=cache_dir) + mlp = GRUForClassification(config=config) + print("loaded model") + return config, tokenizer, mlp
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/intervenable_base.html b/_modules/pyvene/models/intervenable_base.html new file mode 100644 index 00000000..0c20f0e8 --- /dev/null +++ b/_modules/pyvene/models/intervenable_base.html @@ -0,0 +1,2954 @@ + + + + + + + + + + pyvene.models.intervenable_base — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.intervenable_base

+import json, logging, torch, types
+import nnsight
+import numpy as np
+from collections import OrderedDict
+from typing import List, Optional, Tuple, Union, Dict, Any
+
+from .constants import *
+from .basic_utils import *
+from .modeling_utils import *
+from .intervention_utils import *
+from .interventions import *
+from .configuration_intervenable_model import (
+    IntervenableConfig,
+    RepresentationConfig,
+)
+from .interventions import (
+    TrainableIntervention,
+    SkipIntervention,
+    CollectIntervention,
+    BoundlessRotatedSpaceIntervention
+)
+
+from torch import optim
+from transformers import get_linear_schedule_with_warmup
+from dataclasses import dataclass
+from transformers.utils import ModelOutput
+from tqdm import tqdm, trange
+
+
+[docs] +@dataclass +class IntervenableModelOutput(ModelOutput): + """ + Output of the IntervenableModel, including original outputs, intervened outputs, and collected activations. + """ + original_outputs: Optional[Any] = None + intervened_outputs: Optional[Any] = None + collected_activations: Optional[Any] = None
+ + + +
+[docs] +class BaseModel(nn.Module): + """ + Base model class for sharing static vars and methods. + """ + +
+[docs] + def __init__(self, config, model, backend, **kwargs): + super().__init__() + + super().__init__() + if isinstance(config, dict) or isinstance(config, list): + config = IntervenableConfig( + representations = config + ) + self.config = config + + self.mode = config.mode + intervention_type = config.intervention_types + self.is_model_stateless = is_stateless(model) + self.config.model_type = str(type(model)) # backfill + self.use_fast = kwargs["use_fast"] if "use_fast" in kwargs else False + + self.model_has_grad = False + if self.use_fast: + logging.warn( + "Detected use_fast=True means the intervention location " + "will be static within a batch.\n\nIn case multiple " + "location tags are passed only the first one will " + "be considered" + ) + # each representation can get a different intervention type + if type(intervention_type) == list: + assert len(intervention_type) == len( + config.representations + ) + + ### + # We instantiate intervention_layers at locations. + # Note that the layer name mentioned in the config is + # abstract. Not the actual module name of the model. + # + # This script will automatically convert abstract + # name into module name if the model type is supported. + # + # To support a new model type, you need to provide a + # mapping between supported abstract type and module name. + ### + self.representations = {} + self.interventions = {} + self._key_collision_counter = {} + self.return_collect_activations = False + # Flags and counters below are for interventions in the model.generate + # call. We can intervene on the prompt tokens only, on each generated + # token, or on a combination of both. + self._is_generation = False + self._intervene_on_prompt = None + self._key_getter_call_counter = {} + self._key_setter_call_counter = {} + self._intervention_pointers = {} + self._intervention_reverse_link = {} + + # hooks are stateful internally, meaning that it's aware of how many times + # it is called during the execution. + # TODO: this could be merged with call counter above later. + self._intervention_state = {} + + # We want to associate interventions with a group to do group-wise interventions. + self._intervention_group = {} + _any_group_key = False + _original_key_order = [] + for i, representation in enumerate( + config.representations + ): + _key = self._get_representation_key(representation) + + if representation.intervention is not None: + intervention = representation.intervention + intervention.use_fast = self.use_fast + else: + intervention_function = ( + intervention_type + if type(intervention_type) != list + else intervention_type[i] + ) + all_metadata = representation._asdict() + component_dim = get_dimension_by_component( + get_internal_model_type(model), model.config, + representation.component + ) + if component_dim is not None: + component_dim *= int(representation.max_number_of_units) + all_metadata["embed_dim"] = component_dim + all_metadata["use_fast"] = self.use_fast + intervention = intervention_function( + **all_metadata + ) + + if representation.intervention_link_key in self._intervention_pointers: + self._intervention_reverse_link[ + _key + ] = f"link#{representation.intervention_link_key}" + intervention = self._intervention_pointers[ + representation.intervention_link_key + ] + elif representation.intervention_link_key is not None: + self._intervention_pointers[ + representation.intervention_link_key + ] = intervention + self._intervention_reverse_link[ + _key + ] = f"link#{representation.intervention_link_key}" + + if isinstance( + intervention, + CollectIntervention + ): + self.return_collect_activations = True + + module_hook = get_module_hook( + model, representation, backend + ) + self.representations[_key] = representation + self.interventions[_key] = (intervention, module_hook) + self._key_getter_call_counter[ + _key + ] = 0 # we memo how many the hook is called, + # usually, it's a one time call per + # hook unless model generates. + self._key_setter_call_counter[_key] = 0 + self._intervention_state[_key] = InterventionState(_key) + _original_key_order += [_key] + if representation.group_key is not None: + _any_group_key = True + if self.config.sorted_keys is not None: + logging.warn( + "The key is provided in the config. " + "Assuming this is loaded from a pretrained module." + ) + if ( + self.config.sorted_keys is not None + or "intervenables_sort_fn" not in kwargs + ): + self.sorted_keys = _original_key_order + else: + # the key order is independent of group, it is used to read out intervention locations. + self.sorted_keys = kwargs["intervenables_sort_fn"]( + model, self.representations + ) + + """ + We later use _intervention_group to run actual interventions. + The order the group by group; and there should not be dependency + between groups. + """ + if _any_group_key: + # In case they are grouped, we would expect the execution order is given + # by the source inputs. + _validate_group_keys = [] + for _key in self.sorted_keys: + representation = self.representations[_key] + assert representation.group_key is not None + if representation.group_key in self._intervention_group: + self._intervention_group[representation.group_key].append(_key) + else: + self._intervention_group[representation.group_key] = [_key] + _validate_group_keys += [representation.group_key] + for i in range(len(_validate_group_keys) - 1): + if _validate_group_keys[i] > _validate_group_keys[i + 1]: + logging.info( + f"This is not a valid group key order: {_validate_group_keys}" + ) + raise ValueError( + "Must be ascending order. " + "Interventions would be performed in order within group as well" + ) + else: + # assign each key to an unique group based on topological order + _group_key_inc = 0 + for _key in self.sorted_keys: + self._intervention_group[_group_key_inc] = [_key] + _group_key_inc += 1 + # sort group key with ascending order + self._intervention_group = OrderedDict(sorted(self._intervention_group.items())) + + # cached swap-in activations + self.activations = {} + # cached swapped activations (hot) + self.hot_activations = {} + + # temp fields should not be accessed outside + self._batched_setter_activation_select = {} + """ + Activations in the future list is ALWAYS causally before + the vanilla activation list. This field becomes crucial + if we intervene at the same place multiple times. + """ + self.model = model + self.model_config = model.config + self.model_type = get_internal_model_type(model) + self.disable_model_gradients() + self.trainable_model_parameters = {}
+ + + def __str__(self): + """ + Print out basic info about this intervenable instance + """ + attr_dict = { + "model_type": self.model_type, + "intervention_types": self.intervention_types, + "alignabls": self.sorted_keys, + "mode": self.mode, + } + return json.dumps(attr_dict, indent=4) + + def _get_representation_key(self, representation): + """ + Provide unique key for each intervention + """ + l = representation.layer + c = representation.component + u = representation.unit + n = representation.max_number_of_units + if "." in c: + # string access for sure + key_proposal = f"comp.{c}.unit.{u}.nunit.{n}" + else: + key_proposal = f"layer.{l}.comp.{c}.unit.{u}.nunit.{n}" + if key_proposal not in self._key_collision_counter: + self._key_collision_counter[key_proposal] = 0 + else: + self._key_collision_counter[key_proposal] += 1 + return f"{key_proposal}#{self._key_collision_counter[key_proposal]}" + +
+[docs] + def get_trainable_parameters(self): + """ + Return trainable params as key value pairs + """ + ret_params = [] + for k, v in self.interventions.items(): + if isinstance(v[0], TrainableIntervention): + ret_params += [p for p in v[0].parameters()] + for p in self.model.parameters(): + if p.requires_grad: + ret_params += [p] + return ret_params
+ + +
+[docs] + def named_parameters(self, recurse=True): + """ + The above, but for HuggingFace. + """ + ret_params = [] + for k, v in self.interventions.items(): + if isinstance(v[0], TrainableIntervention): + ret_params += [(k + '.' + n, p) for n, p in v[0].named_parameters()] + for n, p in self.model.named_parameters(): + if p.requires_grad: + ret_params += [('model.' + n, p)] + return ret_params
+ + +
+[docs] + def get_cached_activations(self): + """ + Return the cached activations with keys + """ + return self.activations
+ + +
+[docs] + def get_cached_hot_activations(self): + """ + Return the cached hot activations with linked keys + """ + return self.hot_activations
+ + +
+[docs] + def set_temperature(self, temp: torch.Tensor): + """ + Set temperature if needed + """ + for k, v in self.interventions.items(): + if isinstance(v[0], BoundlessRotatedSpaceIntervention) or \ + isinstance(v[0], SigmoidMaskIntervention): + v[0].set_temperature(temp)
+ + +
+[docs] + def enable_model_gradients(self): + """ + Enable gradient in the model + """ + # Unfreeze all model weights + self.model.train() + for param in self.model.parameters(): + param.requires_grad = True + self.model_has_grad = True
+ + +
+[docs] + def disable_model_gradients(self): + """ + Disable gradient in the model + """ + # Freeze all model weights + self.model.eval() + for param in self.model.parameters(): + param.requires_grad = False + self.model_has_grad = False
+ + +
+[docs] + def disable_intervention_gradients(self): + """ + Disable gradient in the trainable intervention + """ + # Freeze all intervention weights + pass
+ + +
+[docs] + def set_device(self, device, set_model=True): + """ + Set device of interventions and the model + """ + for k, v in self.interventions.items(): + v[0].to(device) + if set_model: + self.model.to(device)
+ + +
+[docs] + def get_device(self): + """ + Get device of interventions and the model + """ + return self.model.device
+ + +
+[docs] + def count_parameters(self, include_model=False): + """ + Set device of interventions and the model + """ + _linked_key_set = set([]) + total_parameters = 0 + for k, v in self.interventions.items(): + if isinstance(v[0], TrainableIntervention): + if k in self._intervention_reverse_link: + if not self._intervention_reverse_link[k] in _linked_key_set: + _linked_key_set.add(self._intervention_reverse_link[k]) + total_parameters += count_parameters(v[0]) + else: + total_parameters += count_parameters(v[0]) + if include_model: + total_parameters += sum( + p.numel() for p in self.model.parameters() if p.requires_grad) + return total_parameters
+ + +
+[docs] + def set_zero_grad(self): + """ + Set device of interventions and the model + """ + for k, v in self.interventions.items(): + if isinstance(v[0], TrainableIntervention): + v[0].zero_grad()
+ + +
+[docs] + def zero_grad(self): + """ + The above, but for HuggingFace. + """ + for k, v in self.interventions.items(): + if isinstance(v[0], TrainableIntervention): + v[0].zero_grad()
+ + + def _input_validation( + self, + base, + sources, + unit_locations, + activations_sources, + subspaces, + ): + """Fail fast input validation""" + if self.mode == "parallel" and unit_locations is not None: + assert "sources->base" in unit_locations or "base" in unit_locations + elif activations_sources is None and unit_locations is not None and self.mode == "serial": + assert "sources->base" not in unit_locations + + # sources may contain None, but length should match + if sources is not None and not (len(sources) == 1 and sources[0] == None): + if len(sources) != len(self._intervention_group): + raise ValueError( + f"Source length {len(sources)} is not " + f"equal to intervention length {len(self._intervention_group)}." + ) + elif activations_sources is not None: + if len(activations_sources) != len(self._intervention_group): + raise ValueError( + f"Source activations length {len(activations_sources)} is not " + f"equal to intervention length {len(self._intervention_group)}." + ) + + # if it is stateful models, the passed in activations need to have states + if not self.is_model_stateless and activations_sources is not None: + for _, v in activations_sources.items(): + if ( + isinstance(v, list) + and isinstance(v[0], tuple) + and isinstance(v[0][1], list) != True + ): + raise ValueError( + f"Stateful models need nested activations. See our documentions." + ) + + def _gather_intervention_output( + self, output, representations_key, unit_locations + ) -> torch.Tensor: + """ + Gather intervening activations from the output based on indices + """ + + if ( + representations_key in self._intervention_reverse_link + and self._intervention_reverse_link[representations_key] + in self.hot_activations + ): + # hot gather + # clone is needed here by acting as a different module + # to avoid gradient conflict. + # + # enable the following line when an error is hit + # torch.autograd.set_detect_anomaly(True) + selected_output = self.hot_activations[ + self._intervention_reverse_link[representations_key] + ] + else: + # data structure casting + if isinstance(output, tuple): + original_output = output[0].clone() + else: + original_output = output.clone() + # for non-sequence models, there is no concept of + # unit location anyway. + if unit_locations is None: + return original_output + # gather subcomponent + original_output = output_to_subcomponent( + original_output, + self.representations[ + representations_key + ].component, + self.model_type, + self.model_config, + ) + + # gather based on intervention locations + selected_output = gather_neurons( + original_output, + self.representations[ + representations_key + ].unit, + unit_locations, + device=self.get_device() + ) + + return selected_output + + def _scatter_intervention_output( + self, + output, + intervened_representation, + representations_key, + unit_locations, + ) -> torch.Tensor: + """ + Scatter in the intervened activations in the output + """ + # data structure casting + if isinstance(output, tuple): + original_output = output[0] + else: + original_output = output + # for non-sequence-based models, we simply replace + # all the activations. + if unit_locations is None: + original_output[:] = intervened_representation[:] + return original_output + + component = self.representations[ + representations_key + ].component + unit = self.representations[ + representations_key + ].unit + + # scatter in-place + _ = scatter_neurons( + original_output, + intervened_representation, + component, + unit, + unit_locations, + self.model_type, + self.model_config, + self.use_fast, + device=self.get_device() + ) + + return original_output + + def _broadcast_unit_locations( + self, + batch_size, + unit_locations + ): + if unit_locations is None: + # this means, we don't filter based on location at all. + return {"sources->base": ([None]*len(self.interventions), [None]*len(self.interventions))} + + if self.mode == "parallel": + _unit_locations = {} + for k, v in unit_locations.items(): + # special broadcast for base-only interventions + is_base_only = False + if k == "base": + is_base_only = True + k = "sources->base" + if isinstance(v, int): + if is_base_only: + _unit_locations[k] = (None, [[[v]]*batch_size]*len(self.interventions)) + else: + _unit_locations[k] = ( + [[[v]]*batch_size]*len(self.interventions), + [[[v]]*batch_size]*len(self.interventions) + ) + self.use_fast = True + elif len(v) == 2 and isinstance(v[0], int) and isinstance(v[1], int): + _unit_locations[k] = ( + [[[v[0]]]*batch_size]*len(self.interventions), + [[[v[1]]]*batch_size]*len(self.interventions) + ) + self.use_fast = True + elif len(v) == 2 and v[0] == None and isinstance(v[1], int): + _unit_locations[k] = (None, [[[v[1]]]*batch_size]*len(self.interventions)) + self.use_fast = True + elif len(v) == 2 and isinstance(v[0], int) and v[1] == None: + _unit_locations[k] = ([[[v[0]]]*batch_size]*len(self.interventions), None) + self.use_fast = True + elif isinstance(v, list) and get_list_depth(v) == 1: + # [0,1,2,3] -> [[[0,1,2,3]]], ... + if is_base_only: + _unit_locations[k] = (None, [[v]*batch_size]*len(self.interventions)) + else: + _unit_locations[k] = ( + [[v]*batch_size]*len(self.interventions), + [[v]*batch_size]*len(self.interventions) + ) + self.use_fast = True + else: + if is_base_only: + _unit_locations[k] = (None, v) + else: + _unit_locations[k] = v + elif self.mode == "serial": + _unit_locations = {} + for k, v in unit_locations.items(): + if isinstance(v, int): + _unit_locations[k] = ( + [[[v]]*batch_size]*len(self.interventions), + [[[v]]*batch_size]*len(self.interventions) + ) + self.use_fast = True + elif len(v) == 2 and isinstance(v[0], int) and isinstance(v[1], int): + _unit_locations[k] = ( + [[[v[0]]]*batch_size]*len(self.interventions), + [[[v[1]]]*batch_size]*len(self.interventions) + ) + self.use_fast = True + elif len(v) == 2 and v[0] == None and isinstance(v[1], int): + _unit_locations[k] = (None, [[[v[1]]]*batch_size]*len(self.interventions)) + self.use_fast = True + elif len(v) == 2 and isinstance(v[0], int) and v[1] == None: + _unit_locations[k] = ([[[v[0]]]*batch_size]*len(self.interventions), None) + self.use_fast = True + elif isinstance(v, list) and get_list_depth(v) == 1: + # [0,1,2,3] -> [[[0,1,2,3]]], ... + _unit_locations[k] = ( + [[v]*batch_size]*len(self.interventions), + [[v]*batch_size]*len(self.interventions) + ) + self.use_fast = True + else: + _unit_locations[k] = v + else: + raise ValueError(f"The mode {self.mode} is not supported.") + return _unit_locations + + def _broadcast_source_representations( + self, + source_representations + ): + """Broadcast simple inputs to a dict""" + _source_representations = {} + if isinstance(source_representations, dict) or source_representations is None: + # pass to broadcast for advance usage + _source_representations = source_representations + elif isinstance(source_representations, list): + for i, key in enumerate(self.sorted_keys): + _source_representations[key] = source_representations[i] + elif isinstance(source_representations, torch.Tensor): + for key in self.sorted_keys: + _source_representations[key] = source_representations + else: + raise ValueError( + "Accept input type for source_representations is [Dict, List, torch.Tensor]" + ) + return _source_representations + + def _broadcast_sources( + self, + sources + ): + """Broadcast simple inputs to a dict""" + _sources = sources + if len(sources) == 1 and len(self._intervention_group) > 1: + for _ in range(len(self._intervention_group)-1): + _sources += [sources[0]] + else: + _sources = sources + return _sources + + def _broadcast_subspaces( + self, + batch_size, + subspaces + ): + """Broadcast simple subspaces input""" + _subspaces = subspaces + if isinstance(subspaces, int): + _subspaces = [[[subspaces]]*batch_size]*len(self.interventions) + + elif isinstance(subspaces, list) and isinstance(subspaces[0], int): + _subspaces = [[subspaces]*batch_size]*len(self.interventions) + else: + # TODO: subspaces is easier to add more broadcast majic. + pass + return _subspaces + +
+[docs] + def forward(self, **kwargs): + raise NotImplementedError("Please Implement this method")
+ + + def generate(self, **kwargs): + raise NotImplementedError("Please Implement this method")
+ + + +
+[docs] +class IntervenableNdifModel(BaseModel): + """ + Intervenable model via ndif backend. + """ + BACKEND = "ndif" + +
+[docs] + def __init__(self, config, model, **kwargs): + super().__init__(config, model, "ndif", **kwargs) + # this is not used for now. + self.remote = kwargs["remote"] if "remote" in kwargs else False + logging.warning( + f"We currently have very limited intervention support for ndif backend." + )
+ + + def save( + self, save_directory, save_to_hf_hub=False, hf_repo_name="my-awesome-model" + ): + pass + +
+[docs] + @staticmethod + def load(load_directory, model, local_directory=None, from_huggingface_hub=False): + """ + Load interventions from disk or hub + """ + pass
+ + + def _cleanup_states(self, skip_activation_gc=False): + """ + Clean up all old in memo states of interventions + """ + self._is_generation = False + if not skip_activation_gc: + self.activations.clear() + self.hot_activations.clear() + self._batched_setter_activation_select.clear() + else: + self.activations = {} + self.hot_activations = {} + self._batched_setter_activation_select = {} + + def _tidy_stateful_activations( + self, + ): + _need_tidify = False + + def _reconcile_stateful_cached_activations( + self, + key, + intervening_activations, + intervening_unit_locations, + ): + """Based on the key, we consolidate activations based on key's state""" + if key not in self.activations: + return None + + cached_activations = self.activations[key] + if self.is_model_stateless: + # nothing to reconcile if stateless + return cached_activations + + raise NotImplementedError("Activation reconcile is not implemented for ndif backend") + + def _intervention_getter( + self, + keys, + unit_locations, + ): + """ + Create a list of getter handlers that will fetch activations + """ + handlers = [] + for key_i, key in enumerate(keys): + intervention, (module_hook, hook_type) = self.interventions[key] + if self._is_generation: + raise NotImplementedError("Generation is not implemented for ndif backend") + + if hook_type == CONST_INPUT_HOOK: + output = module_hook.input + elif hook_type == CONST_OUTPUT_HOOK: + output = module_hook.output + + # TODO: this could be faulty by assuming the types. + if isinstance(output.dtype, tuple) and isinstance(output.dtype[0], tuple): + output = output[0][0] + elif isinstance(output.dtype, tuple): + output = output[0] + + if isinstance(intervention, SkipIntervention): + raise NotImplementedError("Skip intervention is not implemented for ndif backend") + else: + selected_output = self._gather_intervention_output( + output, key, unit_locations[key_i] + ) + + if self.is_model_stateless: + # WARNING: might be worth to check the below assertion at runtime, + # but commenting it out for now just to avoid confusion. + # assert key not in self.activations + self.activations[key] = selected_output.save() + else: + raise NotImplementedError("Stateful models are not supported for ndif backend") + + # set version for stateful models + self._intervention_state[key].inc_getter_version() + + def _intervention_setter( + self, + keys, + unit_locations_base, + subspaces, + ) -> HandlerList: + """ + Create a list of setter tracer that will set activations + """ + self._tidy_stateful_activations() + + for key_i, key in enumerate(keys): + intervention, (module_hook, hook_type) = self.interventions[key] + if unit_locations_base[0] is not None: + self._batched_setter_activation_select[key] = [ + 0 for _ in range(len(unit_locations_base[0])) + ] # batch_size + + if self._is_generation: + raise NotImplementedError("Generation is not implemented for ndif backend") + + if hook_type == CONST_INPUT_HOOK: + output = module_hook.input + elif hook_type == CONST_OUTPUT_HOOK: + output = module_hook.output + + # TODO: this could be faulty by assuming the types. + if isinstance(output.dtype, tuple) and isinstance(output.dtype[0], tuple): + output = output[0][0] + elif isinstance(output.dtype, tuple): + output = output[0] + + selected_output = self._gather_intervention_output( + output, key, unit_locations_base[key_i] + ) + if not self.is_model_stateless: + raise NotImplementedError("Stateful models are not supported for ndif backend") + + # intervention in-place + if isinstance( + intervention, + CollectIntervention + ): + intervened_representation = do_intervention( + selected_output, + None, + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + # fail if this is not a fresh collect + assert key not in self.activations + self.activations[key] = intervened_representation.save() + # no-op to the output + + else: + if not isinstance(self.interventions[key][0], types.FunctionType): + if intervention.is_source_constant: + intervened_representation = do_intervention( + selected_output, + None, + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + else: + intervened_representation = do_intervention( + selected_output, + self._reconcile_stateful_cached_activations( + key, + selected_output, + unit_locations_base[key_i], + ), + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + else: + # highly unlikely it's a primitive intervention type + intervened_representation = do_intervention( + selected_output, + self._reconcile_stateful_cached_activations( + key, + selected_output, + unit_locations_base[key_i], + ), + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + if intervened_representation is None: + return + + # setter can produce hot activations for shared subspace interventions if linked + if key in self._intervention_reverse_link: + self.hot_activations[ + self._intervention_reverse_link[key] + ] = intervened_representation.clone() + + if isinstance(output, tuple): + _ = self._scatter_intervention_output( + output[0], intervened_representation, key, unit_locations_base[key_i] + ) + else: + _ = self._scatter_intervention_output( + output, intervened_representation, key, unit_locations_base[key_i] + ) + + self._intervention_state[key].inc_setter_version() + + def _sync_forward_with_parallel_intervention( + self, + base, + sources, + unit_locations, + activations_sources: Optional[Dict] = None, + subspaces: Optional[List] = None, + **kwargs, + ): + # torch.autograd.set_detect_anomaly(True) + all_set_handlers = HandlerList([]) + unit_locations_sources = unit_locations["sources->base"][0] + unit_locations_base = unit_locations["sources->base"][1] + + # for each source, we hook in getters to cache activations + # at each aligning representations + if activations_sources is None: + assert len(sources) == len(self._intervention_group) + for group_id, keys in self._intervention_group.items(): + if sources[group_id] is None: + continue # smart jump for advance usage only + + # meta tracer to get activations for all components + with self.model.trace(sources[group_id]) as tracer: + for key in keys: + self._intervention_getter( + [key], + [ + unit_locations_sources[ + self.sorted_keys.index(key) + ] + ], + ) + # upon exist, all activations should be saved + else: + # simply patch in the ones passed in + self.activations = activations_sources + for _, passed_in_key in enumerate(self.activations): + assert passed_in_key in self.sorted_keys + + # in parallel mode with ndif backend, we don't need to wait + # for the intervention hook, we synchronously do the interventions. + with self.model.trace(base, **kwargs) as tracer: + for group_id, keys in self._intervention_group.items(): + for key in keys: + # skip in case smart jump + if key in self.activations or \ + isinstance(self.interventions[key][0], types.FunctionType) or \ + self.interventions[key][0].is_source_constant: + self._intervention_setter( + [key], + [ + unit_locations_base[ + self.sorted_keys.index(key) + ] + ], + # assume same group targeting the same subspace + [ + subspaces[ + self.sorted_keys.index(key) + ] + ] + if subspaces is not None + else None, + ) + counterfactual_outputs = self.model.output.save() + + return counterfactual_outputs + + def _sync_forward_with_serial_intervention( + self, + base, + sources, + unit_locations, + activations_sources: Optional[Dict] = None, + subspaces: Optional[List] = None, + **kwargs, + ): + raise NotImplementedError("Please Implement serial intervention support for ndif") + +
+[docs] + def forward( + self, + base, + sources: Optional[List] = None, + unit_locations: Optional[Dict] = None, + source_representations: Optional[Dict] = None, + subspaces: Optional[List] = None, + labels: Optional[torch.LongTensor] = None, + output_original_output: Optional[bool] = False, + return_dict: Optional[bool] = None, + use_cache: Optional[bool] = None, + ): + activations_sources = source_representations + if sources is not None and not isinstance(sources, list): + sources = [sources] + + self._cleanup_states() + + # if no source input or intervention, we return base + if sources is None and activations_sources is None \ + and unit_locations is None and len(self.interventions) == 0: + # ndif backend call + with self.model.trace(base) as tracer: + base_outputs = self.model.output.save() + return base_outputs, None + # broadcast + unit_locations = self._broadcast_unit_locations(get_batch_size(base), unit_locations) + sources = [None]*len(self._intervention_group) if sources is None else sources + sources = self._broadcast_sources(sources) + activations_sources = self._broadcast_source_representations(activations_sources) + subspaces = self._broadcast_subspaces(get_batch_size(base), subspaces) + + self._input_validation( + base, + sources, + unit_locations, + activations_sources, + subspaces, + ) + + base_outputs = None + if output_original_output: + # returning un-intervened output with gradients with ndif backend call + with self.model.trace(base) as tracer: + base_outputs = self.model.output.save() + + # intervene the model based on ndif APIs + try: + + # run intervened forward + model_kwargs = {} + if labels is not None: # for training + model_kwargs["labels"] = labels + if use_cache is not None and 'use_cache' in self.model.config.to_dict(): # for transformer models + model_kwargs["use_cache"] = use_cache + + if self.mode == "parallel": + counterfactual_outputs = self._sync_forward_with_parallel_intervention( + base, + sources, + unit_locations, + activations_sources, + subspaces, + **model_kwargs, + ) + elif self.mode == "serial": + counterfactual_outputs = self._sync_forward_with_serial_intervention( + base, + sources, + unit_locations, + activations_sources, + subspaces, + **model_kwargs, + ) + + collected_activations = [] + if self.return_collect_activations: + for key in self.sorted_keys: + if isinstance( + self.interventions[key][0], + CollectIntervention + ): + collected_activations += self.activations[key].clone() + + except Exception as e: + raise e + finally: + self._cleanup_states( + skip_activation_gc = \ + (sources is None and activations_sources is not None) or \ + self.return_collect_activations + ) + + if self.return_collect_activations: + if return_dict: + return IntervenableModelOutput( + original_outputs=base_outputs, + intervened_outputs=counterfactual_outputs, + collected_activations=collected_activations + ) + + return (base_outputs, collected_activations), counterfactual_outputs + + if return_dict: + return IntervenableModelOutput( + original_outputs=base_outputs, + intervened_outputs=counterfactual_outputs, + collected_activations=None + ) + + return base_outputs, counterfactual_outputs
+ + + def generate( + self, + base, + sources: Optional[List] = None, + unit_locations: Optional[Dict] = None, + source_representations: Optional[Dict] = None, + intervene_on_prompt: bool = False, + subspaces: Optional[List] = None, + output_original_output: Optional[bool] = False, + **kwargs, + ): + raise NotImplementedError("Please Implement this method")
+ + + +
+[docs] +class IntervenableModel(BaseModel): + """ + Intervenable model via pyvene native backend (hook-based). + """ + BACKEND = "native" + +
+[docs] + def __init__(self, config, model, **kwargs): + super().__init__(config, model, "native", **kwargs)
+ + + def _reset_hook_count(self): + """ + Reset the hook count before any generate call + """ + self._key_getter_call_counter = dict.fromkeys(self._key_getter_call_counter, 0) + self._key_setter_call_counter = dict.fromkeys(self._key_setter_call_counter, 0) + for k, _ in self._intervention_state.items(): + self._intervention_state[k].reset() + + def _remove_forward_hooks(self): + """ + Clean up all the remaining hooks before any call + """ + remove_forward_hooks(self.model) + + def _cleanup_states(self, skip_activation_gc=False): + """ + Clean up all old in memo states of interventions + """ + self._is_generation = False + self._remove_forward_hooks() + self._reset_hook_count() + if not skip_activation_gc: + self.activations.clear() + self.hot_activations.clear() + self._batched_setter_activation_select.clear() + else: + self.activations = {} + self.hot_activations = {} + self._batched_setter_activation_select = {} + +
+[docs] + def save( + self, save_directory, save_to_hf_hub=False, hf_repo_name="my-awesome-model", + include_model=False + ): + """ + Save interventions to disk or hub + """ + if save_to_hf_hub: + from huggingface_hub import HfApi + + api = HfApi() + + create_directory(save_directory) + + saving_config = copy.deepcopy(self.config) + saving_config.sorted_keys = self.sorted_keys + saving_config.model_type = str( + saving_config.model_type + ) + saving_config.intervention_types = [] + saving_config.intervention_dimensions = [] + saving_config.intervention_constant_sources = [] + + # handle constant source reprs if passed in. + serialized_representations = [] + for reprs in saving_config.representations: + serialized_reprs = {} + for k, v in reprs._asdict().items(): + if k == "hidden_source_representation": + continue + if k == "source_representation": + # hidden flag only set here + if v is not None: + serialized_reprs["hidden_source_representation"] = True + serialized_reprs[k] = None + elif k == "intervention_type": + serialized_reprs[k] = None + elif k == "intervention": + serialized_reprs[k] = None + else: + serialized_reprs[k] = v + serialized_representations += [ + RepresentationConfig(**serialized_reprs) + ] + saving_config.representations = \ + serialized_representations + + for k, v in self.interventions.items(): + intervention = v[0] + saving_config.intervention_types += [str(type(intervention))] + binary_filename = f"intkey_{k}.bin" + # save intervention binary file + if isinstance(intervention, TrainableIntervention) or \ + intervention.source_representation is not None: + # logging.info(f"Saving trainable intervention to {binary_filename}.") + torch.save( + intervention.state_dict(), + os.path.join(save_directory, binary_filename), + ) + if save_to_hf_hub: + # push to huggingface hub + try: + api.create_repo(hf_repo_name) + except: + logging.info( + f"Uploading: {binary_filename}, but skipping creating the repo since " + f"either {hf_repo_name} exists or having authentication error." + ) + api.upload_file( + path_or_fileobj=os.path.join(save_directory, binary_filename), + path_in_repo=binary_filename, + repo_id=hf_repo_name, + repo_type="model", + ) + if intervention.interchange_dim is None: + saving_config.intervention_dimensions += [None] + else: + saving_config.intervention_dimensions += [intervention.interchange_dim.tolist()] + saving_config.intervention_constant_sources += [intervention.is_source_constant] + + # save model's trainable parameters as well + if include_model: + model_state_dict = {} + model_binary_filename = "pytorch_model.bin" + for n, p in self.model.named_parameters(): + if p.requires_grad: + model_state_dict[n] = p + torch.save(model_state_dict, os.path.join(save_directory, model_binary_filename)) + + # save metadata config + saving_config.save_pretrained(save_directory) + if save_to_hf_hub: + # push to huggingface hub + try: + api.create_repo(hf_repo_name) + except: + logging.info( + f"Uploading the config, Skipping creating the repo since " + f"either {hf_repo_name} exists or having authentication error." + ) + api.upload_file( + path_or_fileobj=os.path.join(save_directory, "config.json"), + path_in_repo="config.json", + repo_id=hf_repo_name, + repo_type="model", + )
+ + +
+[docs] + @staticmethod + def load( + load_directory, model, local_directory=None, from_huggingface_hub=False, + include_model=False + ): + """ + Load interventions from disk or hub + """ + if not os.path.exists(load_directory) or from_huggingface_hub: + from_huggingface_hub = True + + from huggingface_hub import snapshot_download + load_directory = snapshot_download( + repo_id=load_directory, + local_dir=local_directory, + ) + + # load config + saving_config = IntervenableConfig.from_pretrained(load_directory) + casted_intervention_types = [] + + for type_str in saving_config.intervention_types: + casted_intervention_types += [get_type_from_string(type_str)] + saving_config.intervention_types = ( + casted_intervention_types + ) + casted_representations = [] + for ( + representation_opts + ) in saving_config.representations: + casted_representations += [ + RepresentationConfig(*representation_opts) + ] + saving_config.representations = casted_representations + intervenable = IntervenableModel(saving_config, model) + + # load binary files + for i, (k, v) in enumerate(intervenable.interventions.items()): + intervention = v[0] + binary_filename = f"intkey_{k}.bin" + intervention.is_source_constant = \ + saving_config.intervention_constant_sources[i] + intervention.set_interchange_dim(saving_config.intervention_dimensions[i]) + if saving_config.intervention_constant_sources[i] and \ + not isinstance(intervention, ZeroIntervention) and \ + not isinstance(intervention, SourcelessIntervention): + # logging.warn(f"Loading trainable intervention from {binary_filename}.") + saved_state_dict = torch.load(os.path.join(load_directory, binary_filename)) + try: + intervention.register_buffer( + 'source_representation', saved_state_dict['source_representation'] + ) + except: + intervention.source_representation = saved_state_dict['source_representation'] + elif isinstance(intervention, TrainableIntervention): + saved_state_dict = torch.load(os.path.join(load_directory, binary_filename)) + intervention.load_state_dict(saved_state_dict) + + # load model's trainable parameters as well + if include_model: + model_binary_filename = "pytorch_model.bin" + saved_model_state_dict = torch.load(os.path.join(load_directory, model_binary_filename)) + intervenable.model.load_state_dict(saved_model_state_dict, strict=False) + + return intervenable
+ + +
+[docs] + def save_intervention(self, save_directory, include_model=True): + """ + Instead of saving the metadata with artifacts, it only saves artifacts such as + trainable weights. This is not a static method, and returns nothing. + """ + create_directory(save_directory) + + # save binary files + for k, v in self.interventions.items(): + intervention = v[0] + binary_filename = f"intkey_{k}.bin" + # save intervention binary file + if isinstance(intervention, TrainableIntervention): + torch.save(intervention.state_dict(), + os.path.join(save_directory, binary_filename)) + + # save model's trainable parameters as well + if include_model: + model_state_dict = {} + model_binary_filename = "pytorch_model.bin" + for n, p in self.model.named_parameters(): + if p.requires_grad: + model_state_dict[n] = p + torch.save(model_state_dict, os.path.join(save_directory, model_binary_filename))
+ + +
+[docs] + def load_intervention(self, load_directory, include_model=True): + """ + Instead of creating an new object, this function loads existing weights onto + the current object. This is not a static method, and returns nothing. + """ + # load binary files + for i, (k, v) in enumerate(self.interventions.items()): + intervention = v[0] + binary_filename = f"intkey_{k}.bin" + if isinstance(intervention, TrainableIntervention): + saved_state_dict = torch.load(os.path.join(load_directory, binary_filename)) + intervention.load_state_dict(saved_state_dict) + + # load model's trainable parameters as well + if include_model: + model_binary_filename = "pytorch_model.bin" + saved_model_state_dict = torch.load(os.path.join(load_directory, model_binary_filename)) + self.model.load_state_dict(saved_model_state_dict, strict=False)
+ + + def _intervention_getter( + self, + keys, + unit_locations, + ) -> HandlerList: + """ + Create a list of getter handlers that will fetch activations + """ + handlers = [] + for key_i, key in enumerate(keys): + intervention, module_hook = self.interventions[key] + + def hook_callback(model, args, kwargs, output=None): + if self._is_generation: + pass + # for getter, there is no restriction. + # is_prompt = self._key_getter_call_counter[key] == 0 + # if not self._intervene_on_prompt or is_prompt: + # self._key_getter_call_counter[key] += 1 + # if self._intervene_on_prompt ^ is_prompt: + # return # no-op + if output is None: + if len(args) == 0: # kwargs based calls + # PR: https://github.com/frankaging/align-transformers/issues/11 + # We cannot assume the dict only contain one element + output = kwargs[list(kwargs.keys())[0]] + else: + output = args + + if isinstance(intervention, SkipIntervention): + selected_output = self._gather_intervention_output( + args[0], # this is actually the input to the module + key, + unit_locations[key_i], + ) + else: + selected_output = self._gather_intervention_output( + output, key, unit_locations[key_i] + ) + + if self.is_model_stateless: + # WARNING: might be worth to check the below assertion at runtime, + # but commenting it out for now just to avoid confusion. + # assert key not in self.activations + self.activations[key] = selected_output + else: + state_select_flag = [] + for unit_location in unit_locations[key_i]: + if ( + self._intervention_state[key].getter_version() + in unit_location + ): + state_select_flag += [True] + else: + state_select_flag += [False] + # for stateful model (e.g., gru), we save extra activations and metadata to do + # stateful interventions. + self.activations.setdefault(key, []).append( + (selected_output, state_select_flag) + ) + # set version for stateful models + self._intervention_state[key].inc_getter_version() + + handlers.append(module_hook(hook_callback, with_kwargs=True)) + + return HandlerList(handlers) + + def _tidy_stateful_activations( + self, + ): + _need_tidify = False + for _, v in self.activations.items(): + if isinstance(v[0], tuple) and isinstance(v[0][1], list): + _need_tidify = True + break + if _need_tidify: + for k, v in self.activations.items(): + self._tidify_activations = [[] for _ in range(v[0][0].shape[0])] + for t in range(len(v)): + activations_at_t = v[t][0] # a batched tensor + states_at_t = ( + torch.tensor(v[t][1]).bool().to(activations_at_t.device) + ) # a batched bools + selected_activations = activations_at_t[states_at_t] + selected_indices = torch.nonzero(states_at_t).squeeze() + if len(selected_indices.shape) == 0: + selected_indices = selected_indices.unsqueeze(0) + for index, activation in zip( + selected_indices, selected_activations + ): + self._tidify_activations[index].append(activation) + self.activations[k] = self._tidify_activations + + def _reconcile_stateful_cached_activations( + self, + key, + intervening_activations, + intervening_unit_locations, + ): + """Based on the key, we consolidate activations based on key's state""" + if key not in self.activations: + return None + + cached_activations = self.activations[key] + if self.is_model_stateless: + # nothing to reconcile if stateless + return cached_activations + + state_select_flag = [] + for unit_location in intervening_unit_locations: + if self._intervention_state[key].setter_version() in unit_location: + state_select_flag += [True] + else: + state_select_flag += [False] + state_select_flag = ( + torch.tensor(state_select_flag).bool().to(intervening_activations.device) + ) + selected_indices = torch.nonzero(state_select_flag).squeeze() + if len(selected_indices.shape) == 0: + selected_indices = selected_indices.unsqueeze(0) + + # fill activations with proposed only source activations + reconciled_activations = [] + for index, select_version in enumerate( + self._batched_setter_activation_select[key] + ): + if index in selected_indices: + reconciled_activations += [cached_activations[index][select_version]] + else: + # WARNING: put a dummy tensor, super danger here but let's trust the code for now. + reconciled_activations += [ + torch.zeros_like(cached_activations[index][0]) + ] + # increment pointer for those we are actually intervening + for index in selected_indices: + self._batched_setter_activation_select[key][index] += 1 + # for non-intervening ones, we copy again from base + reconciled_activations = torch.stack(reconciled_activations, dim=0) # batched + # reconciled_activations[~state_select_flag] = intervening_activations[~state_select_flag] + + return reconciled_activations + + def _intervention_setter( + self, + keys, + unit_locations_base, + subspaces, + ) -> HandlerList: + """ + Create a list of setter handlers that will set activations + """ + self._tidy_stateful_activations() + + handlers = [] + for key_i, key in enumerate(keys): + intervention, module_hook = self.interventions[key] + if unit_locations_base[0] is not None: + self._batched_setter_activation_select[key] = [ + 0 for _ in range(len(unit_locations_base[0])) + ] # batch_size + + def hook_callback(model, args, kwargs, output=None): + if self._is_generation: + is_prompt = self._key_setter_call_counter[key] == 0 + if not self._intervene_on_prompt or is_prompt: + self._key_setter_call_counter[key] += 1 + if self._intervene_on_prompt ^ is_prompt: + return # no-op + if output is None: + if len(args) == 0: # kwargs based calls + # PR: https://github.com/frankaging/align-transformers/issues/11 + # We cannot assume the dict only contain one element + output = kwargs[list(kwargs.keys())[0]] + else: + output = args + + selected_output = self._gather_intervention_output( + output, key, unit_locations_base[key_i] + ) + # TODO: need to figure out why clone is needed + if not self.is_model_stateless: + selected_output = selected_output.clone() + + if isinstance( + intervention, + CollectIntervention + ): + intervened_representation = do_intervention( + selected_output, + None, + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + # fail if this is not a fresh collect + assert key not in self.activations + + self.activations[key] = intervened_representation + # no-op to the output + + else: + if not isinstance(self.interventions[key][0], types.FunctionType): + if intervention.is_source_constant: + intervened_representation = do_intervention( + selected_output, + None, + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + else: + intervened_representation = do_intervention( + selected_output, + self._reconcile_stateful_cached_activations( + key, + selected_output, + unit_locations_base[key_i], + ), + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + else: + # highly unlikely it's a primitive intervention type + intervened_representation = do_intervention( + selected_output, + self._reconcile_stateful_cached_activations( + key, + selected_output, + unit_locations_base[key_i], + ), + intervention, + subspaces[key_i] if subspaces is not None else None, + ) + if intervened_representation is None: + return + + # setter can produce hot activations for shared subspace interventions if linked + if key in self._intervention_reverse_link: + self.hot_activations[ + self._intervention_reverse_link[key] + ] = intervened_representation.clone() + + if isinstance(output, tuple): + _ = self._scatter_intervention_output( + output[0], intervened_representation, key, unit_locations_base[key_i] + ) + else: + _ = self._scatter_intervention_output( + output, intervened_representation, key, unit_locations_base[key_i] + ) + + self._intervention_state[key].inc_setter_version() + + handlers.append(module_hook(hook_callback, with_kwargs=True)) + + return HandlerList(handlers) + + def _output_validation( + self, + ): + """Safe guarding the execution by checking memory states""" + if self.is_model_stateless: + for k, v in self._intervention_state.items(): + if v.getter_version() > 1 or v.setter_version() > 1: + raise Exception( + f"For stateless model, each getter and setter " + f"should be called only once: {self._intervention_state}" + ) + + def _flatten_input_dict_as_batch(self, input_dict): + # we also accept grouped sources, will batch them and provide partition info. + if not isinstance(input_dict, dict): + assert isinstance(input_dict, list) + flatten_input_dict = {} + for k, v in input_dict[0].items(): + flatten_input_dict[k] = {} + for i in range(0, len(input_dict)): + for k, v in input_dict[i].items(): + flatten_input_dict[k] += [v] + for k, v in flatten_input_dict.items(): + # flatten as one single batch + flatten_input_dict[k] = torch.cat(v, dim=0) + else: + flatten_input_dict = input_dict + return flatten_input_dict + + def _get_partition_size(self, input_dict): + if not isinstance(input_dict, dict): + assert isinstance(input_dict, list) + return len(input_dict) + else: + return 1 + + def _wait_for_forward_with_parallel_intervention( + self, + sources, + unit_locations, + activations_sources: Optional[Dict] = None, + subspaces: Optional[List] = None, + ): + # torch.autograd.set_detect_anomaly(True) + all_set_handlers = HandlerList([]) + unit_locations_sources = unit_locations["sources->base"][0] + unit_locations_base = unit_locations["sources->base"][1] + + # for each source, we hook in getters to cache activations + # at each aligning representations + if activations_sources is None: + assert len(sources) == len(self._intervention_group) + for group_id, keys in self._intervention_group.items(): + if sources[group_id] is None: + continue # smart jump for advance usage only + group_get_handlers = HandlerList([]) + for key in keys: + get_handlers = self._intervention_getter( + [key], + [ + unit_locations_sources[ + self.sorted_keys.index(key) + ] + ], + ) + group_get_handlers.extend(get_handlers) + _ = self.model(**sources[group_id]) + group_get_handlers.remove() + else: + # simply patch in the ones passed in + self.activations = activations_sources + for _, passed_in_key in enumerate(self.activations): + assert passed_in_key in self.sorted_keys + + # in parallel mode, we swap cached activations all into + # base at once + for group_id, keys in self._intervention_group.items(): + for key in keys: + # skip in case smart jump + if key in self.activations or \ + isinstance(self.interventions[key][0], types.FunctionType) or \ + self.interventions[key][0].is_source_constant: + set_handlers = self._intervention_setter( + [key], + [ + unit_locations_base[ + self.sorted_keys.index(key) + ] + ], + # assume same group targeting the same subspace + [ + subspaces[ + self.sorted_keys.index(key) + ] + ] + if subspaces is not None + else None, + ) + # for setters, we don't remove them. + all_set_handlers.extend(set_handlers) + return all_set_handlers + + def _wait_for_forward_with_serial_intervention( + self, + sources, + unit_locations, + activations_sources: Optional[Dict] = None, + subspaces: Optional[List] = None, + ): + all_set_handlers = HandlerList([]) + for group_id, keys in self._intervention_group.items(): + if sources[group_id] is None: + continue # smart jump for advance usage only + for key_id, key in enumerate(keys): + if group_id != len(self._intervention_group) - 1: + unit_locations_key = f"source_{group_id}->source_{group_id+1}" + else: + unit_locations_key = f"source_{group_id}->base" + unit_locations_source = unit_locations[unit_locations_key][0][ + key_id + ] + if unit_locations_source is None: + continue # smart jump for advance usage only + + unit_locations_base = unit_locations[unit_locations_key][1][ + key_id + ] + if activations_sources is None: + # get activation from source_i + get_handlers = self._intervention_getter( + [key], + [unit_locations_source], + ) + else: + self.activations[key] = activations_sources[ + key + ] + # call once per group. each intervention is by its own group by default + if activations_sources is None: + # this is when previous setter and THEN the getter get called + _ = self.model(**sources[group_id]) + get_handlers.remove() + # remove existing setters after getting the curr intervened reprs + if len(all_set_handlers) > 0: + all_set_handlers.remove() + all_set_handlers = HandlerList([]) + + for key in keys: + # skip in case smart jump + if key in self.activations or \ + isinstance(self.interventions[key][0], types.FunctionType) or \ + self.interventions[key][0].is_source_constant: + # set with intervened activation to source_i+1 + set_handlers = self._intervention_setter( + [key], + [unit_locations_base], + # assume the order + [ + subspaces[ + self.sorted_keys.index(key) + ] + ] + if subspaces is not None + else None, + ) + # for setters, we don't remove them. + all_set_handlers.extend(set_handlers) + return all_set_handlers + +
+[docs] + def forward( + self, + base, + sources: Optional[List] = None, + unit_locations: Optional[Dict] = None, + source_representations: Optional[Dict] = None, + subspaces: Optional[List] = None, + labels: Optional[torch.LongTensor] = None, + output_original_output: Optional[bool] = False, + return_dict: Optional[bool] = None, + use_cache: Optional[bool] = True, + ): + """ + Main forward function that serves a wrapper to + actual model forward calls. It will use forward + hooks to do interventions. + + In essense, sources will lead to getter hooks to + get activations. We will use these activations to + intervene on our base example. + + Parameters: + base: The base example. + sources: A list of source examples. + unit_locations: The intervention locations. + activations_sources: A list of representations. + subspace: Subspace interventions. + + Return: + base_output: the non-intervened output of the base + input. + counterfactual_outputs: the intervened output of the + base input. + + Notes: + + 1) unit_locations + unit_locations is a dict where keys are tied with + example pairs involved in one intervention as, + { + "sources->base" : List[] + } + + the shape can be + + 2 * num_intervention * bs * num_max_unit + + OR + + 2 * num_intervention * num_intervention_level * bs * num_max_unit + + if we intervene on h.pos which is a nested intervention location. + + 2) subspaces + subspaces is a list of indices indicating which subspace will + this intervention target given an example in the batch. + + An intervention could be initialized with subspace parition as, + [[... subspace_1 ...], [... subspace_2 ...], [rest]] + + An intervention may be targeting a specific partition. + + This input field should look like something like, + [ + [[subspace indices], [subspace indices]], <- for the first intervention + None, <- for the second intervention + [[subspace indices], [subspace indices]] + ] + + Only setter (where do_intervention is called) needs this field. + + *We assume base and source targetting the same subspace for now. + *We assume only a single space is targeted for now (although 2d list is provided). + + Since we now support group-based intervention, the number of sources + should be equal to the total number of groups. + """ + # TODO: forgive me now, i will change this later. + activations_sources = source_representations + if sources is not None and not isinstance(sources, list): + sources = [sources] + + self._cleanup_states() + + # if no source input or intervention, we return base + if sources is None and activations_sources is None \ + and unit_locations is None and len(self.interventions) == 0: + return self.model(**base), None + # broadcast + unit_locations = self._broadcast_unit_locations(get_batch_size(base), unit_locations) + sources = [None]*len(self._intervention_group) if sources is None else sources + sources = self._broadcast_sources(sources) + activations_sources = self._broadcast_source_representations(activations_sources) + subspaces = self._broadcast_subspaces(get_batch_size(base), subspaces) + + self._input_validation( + base, + sources, + unit_locations, + activations_sources, + subspaces, + ) + + base_outputs = None + if output_original_output: + # returning un-intervened output with gradients + base_outputs = self.model(**base) + + try: + # intervene + if self.mode == "parallel": + set_handlers_to_remove = ( + self._wait_for_forward_with_parallel_intervention( + sources, + unit_locations, + activations_sources, + subspaces, + ) + ) + elif self.mode == "serial": + set_handlers_to_remove = ( + self._wait_for_forward_with_serial_intervention( + sources, + unit_locations, + activations_sources, + subspaces, + ) + ) + + # run intervened forward + model_kwargs = {} + if labels is not None: # for training + model_kwargs["labels"] = labels + if use_cache is not None and 'use_cache' in self.model.config.to_dict(): # for transformer models + model_kwargs["use_cache"] = use_cache + + counterfactual_outputs = self.model(**base, **model_kwargs) + + set_handlers_to_remove.remove() + + self._output_validation() + + collected_activations = [] + if self.return_collect_activations: + for key in self.sorted_keys: + if isinstance( + self.interventions[key][0], + CollectIntervention + ): + collected_activations += self.activations[key] + + except Exception as e: + raise e + finally: + self._cleanup_states( + skip_activation_gc = \ + (sources is None and activations_sources is not None) or \ + self.return_collect_activations + ) + + if self.return_collect_activations: + if return_dict: + return IntervenableModelOutput( + original_outputs=base_outputs, + intervened_outputs=counterfactual_outputs, + collected_activations=collected_activations + ) + + return (base_outputs, collected_activations), counterfactual_outputs + + if return_dict: + return IntervenableModelOutput( + original_outputs=base_outputs, + intervened_outputs=counterfactual_outputs, + collected_activations=None + ) + + return base_outputs, counterfactual_outputs
+ + +
+[docs] + def generate( + self, + base, + sources: Optional[List] = None, + unit_locations: Optional[Dict] = None, + source_representations: Optional[Dict] = None, + intervene_on_prompt: bool = False, + subspaces: Optional[List] = None, + output_original_output: Optional[bool] = False, + **kwargs, + ): + """ + Intervenable generation function that serves a + wrapper to regular model generate calls. + + Currently, we support basic interventions **in the + prompt only**. We will support generation interventions + in the next release. + + TODO: Unroll sources and intervene in the generation step. + + Parameters: + base: The base example. + sources: A list of source examples. + unit_locations: The intervention locations of + base. + activations_sources: A list of representations. + intervene_on_prompt: Whether only intervene on prompt. + **kwargs: All other generation parameters. + + Return: + base_output: the non-intervened output of the base + input. + counterfactual_outputs: the intervened output of the + base input. + """ + # TODO: forgive me now, i will change this later. + activations_sources = source_representations + if sources is not None and not isinstance(sources, list): + sources = [sources] + + self._cleanup_states() + + self._intervene_on_prompt = intervene_on_prompt + self._is_generation = True + + if not intervene_on_prompt and unit_locations is None: + # that means, we intervene on every generated tokens! + unit_locations = {"base": 0} + + # broadcast + unit_locations = self._broadcast_unit_locations(get_batch_size(base), unit_locations) + sources = [None]*len(self._intervention_group) if sources is None else sources + sources = self._broadcast_sources(sources) + activations_sources = self._broadcast_source_representations(activations_sources) + subspaces = self._broadcast_subspaces(get_batch_size(base), subspaces) + + self._input_validation( + base, + sources, + unit_locations, + activations_sources, + subspaces, + ) + + base_outputs = None + if output_original_output: + # returning un-intervened output + base_outputs = self.model.generate(**base, **kwargs) + + set_handlers_to_remove = None + try: + # intervene + if self.mode == "parallel": + set_handlers_to_remove = ( + self._wait_for_forward_with_parallel_intervention( + sources, + unit_locations, + activations_sources, + subspaces, + ) + ) + elif self.mode == "serial": + set_handlers_to_remove = ( + self._wait_for_forward_with_serial_intervention( + sources, + unit_locations, + activations_sources, + subspaces, + ) + ) + + # run intervened generate + counterfactual_outputs = self.model.generate( + **base, **kwargs + ) + + collected_activations = [] + if self.return_collect_activations: + for key in self.sorted_keys: + if isinstance( + self.interventions[key][0], + CollectIntervention + ): + collected_activations += self.activations[key] + except Exception as e: + raise e + finally: + if set_handlers_to_remove is not None: + set_handlers_to_remove.remove() + self._is_generation = False + self._cleanup_states( + skip_activation_gc = \ + (sources is None and activations_sources is not None) or \ + self.return_collect_activations + ) + + if self.return_collect_activations: + return (base_outputs, collected_activations), counterfactual_outputs + + return base_outputs, counterfactual_outputs
+ + + def _batch_process_unit_location(self, inputs): + """ + Convert original data batch according + to the intervenable settings. + + The function respects inputs in the following + data format. + + + Each location list in the raw input as, + + [[i, j, ...], [m, n, ...], ...] batched + where i, j are the unit index, the outter + list is for the batch + + + Possible fields in the input: + + inputs["source_0->base.0.pos"] -> batched + inputs["source_0->base.1.pos"] -> batched + AND + inputs["source_0->source_1.0.pos"] -> batched + inputs["source_0->source_1.1.pos"] -> batched + ... + + multiple source locations are included in case + there are multiple sources. + + We also need to consider whether we are doing + parallel or serial interventions. + + We also need to consider the granularity. In case + we are intervening h.pos, which is a specific location + in a specific head: + + inputs["source_0->base.0.pos"] -> batched + inputs["source_0->source_1.0.h"] -> batched + + inputs["source_0->base.0.pos"] -> batched + inputs["source_0->source_1.0.pos"] -> batched + """ + batched_location_dict = {} + + _source_ind = [] + for k, _ in inputs.items(): + if "->" in k: + for sub_k in k.split("->"): + if "source" in sub_k: + _source_ind += [int(sub_k.split("_")[1])] + _max_source_ind = max(_source_ind) + + # we assume source_0 -> source_1, ..., source_last -> base + # each pair uses an intervention + + if self.mode == "parallel": + # all source into base at once but may engage different locations + _curr_source_ind = 0 + _parallel_aggr_left = [] + _parallel_aggr_right = [] + for _, rep in self.representations.items(): + _curr_source_ind_inc = _curr_source_ind + 1 + _prefix = f"source_{_curr_source_ind}->base" + _prefix_left = f"{_prefix}.0" + _prefix_right = f"{_prefix}.1" + _sub_loc_aggr_left = [] # 3d + _sub_loc_aggr_right = [] # 3d + for sub_loc in rep.unit.split("."): + _sub_loc_aggr_left += [inputs[f"{_prefix_left}.{sub_loc}"]] + _sub_loc_aggr_right += [inputs[f"{_prefix_right}.{sub_loc}"]] + if len(rep.unit.split(".")) == 1: + _sub_loc_aggr_left = _sub_loc_aggr_left[0] + _sub_loc_aggr_right = _sub_loc_aggr_right[0] + _parallel_aggr_left += [_sub_loc_aggr_left] # 3D or 4D + _parallel_aggr_right += [_sub_loc_aggr_right] # 3D or 4D + _curr_source_ind += 1 + + batched_location_dict["sources->base"] = ( + _parallel_aggr_left, + _parallel_aggr_right, + ) + + else: + # source into another source and finally to the base engaging different locations + _curr_source_ind = 0 + for _, rep in self.representations.items(): + _curr_source_ind_inc = _curr_source_ind + 1 + _prefix = ( + f"source_{_curr_source_ind}->base" + if _curr_source_ind + 1 == len(self.representations) + else f"source_{_curr_source_ind}->source{_curr_source_ind_inc}" + ) + _prefix_left = f"{_prefix}.0" + _prefix_right = f"{_prefix}.1" + _sub_loc_aggr_left = [] # 3d + _sub_loc_aggr_right = [] # 3d + for sub_loc in rep.unit.split("."): + _sub_loc_aggr_left += [inputs[f"{_prefix_left}.{sub_loc}"]] + _sub_loc_aggr_right += [inputs[f"{_prefix_right}.{sub_loc}"]] + if len(rep.unit.split(".")) == 1: + _sub_loc_aggr_left = _sub_loc_aggr_left[0] + _sub_loc_aggr_right = _sub_loc_aggr_right[0] + _curr_source_ind += 1 + batched_location_dict[_prefix] = ( + [_sub_loc_aggr_left], # 3D or 4D + [_sub_loc_aggr_right], # 3D or 4D + ) + + return batched_location_dict + +
+[docs] + def train(self, mode=True): + self.model.train(mode=mode)
+ + +
+[docs] + def eval(self): + self.model.eval()
+ + +
+[docs] + def train_alignment( + self, + train_dataloader, + compute_loss, + compute_metrics, + inputs_collator, + **kwargs, + ): + """ + The method find alignment. + + a.k.a. training the intervention + + Notes: + 1) we use Adam, and linear lr scheduling. + 2) you can pass in lr or using default 1e-3 + """ + # preprocess basic kwargs + lr = kwargs["lr"] if "lr" in kwargs else 1e-3 + epochs = kwargs["epochs"] if "epochs" in kwargs else 10 + warm_up_steps = kwargs["warm_up_steps"] if "warm_up_steps" in kwargs else 0.1 + gradient_accumulation_steps = ( + kwargs["gradient_accumulation_steps"] + if "gradient_accumulation_steps" in kwargs + else 1 + ) + + # some deeper kwargs + t_total = int(len(train_dataloader) * epochs) + warm_up_steps = 0.1 * t_total + target_total_step = len(train_dataloader) * epochs + optimizer_params = [{"params": self.get_trainable_parameters()}] + optimizer = ( + kwargs["optimizer"] + if "optimizer" in kwargs + else optim.Adam(optimizer_params, lr=lr) + ) + scheduler = ( + kwargs["scheduler"] + if "scheduler" in kwargs + else get_linear_schedule_with_warmup( + optimizer, num_warmup_steps=warm_up_steps, num_training_steps=t_total + ) + ) + + # in case we need additional temp scheduling + temperature_start = 50.0 + temperature_end = 0.1 + temperature_schedule = ( + torch.linspace(temperature_start, temperature_end, target_total_step) + .to(torch.bfloat16) + .to(self.get_device()) + ) + + # train main loop + remove_forward_hooks(self.model) + self.model.eval() # train enables drop-off but no grads + epoch_iterator = trange(0, int(epochs), desc="Epoch") + total_step = 0 + for epoch in epoch_iterator: + for step, inputs in enumerate(train_dataloader): + if inputs_collator is not None: + inputs = inputs_collator(inputs) + b_s = inputs["input_ids"].shape[0] + unit_location_dict = self._batch_process_unit_location(inputs) + _, counterfactual_outputs = self( + {"input_ids": inputs["input_ids"]}, + [{"input_ids": inputs["source_input_ids"]}], + unit_location_dict, + subspaces=inputs["subspaces"] if "subspaces" in inputs else None, + ) + eval_metrics = compute_metrics( + [counterfactual_outputs.logits], [inputs["labels"]] + ) + + # loss and backprop + loss = compute_loss(counterfactual_outputs.logits, inputs["labels"]) + loss_str = round(loss.item(), 2) + epoch_iterator.set_postfix({"loss": loss_str, "acc": eval_metrics}) + + if gradient_accumulation_steps > 1: + loss = loss / gradient_accumulation_steps + loss.backward() + if total_step % gradient_accumulation_steps == 0: + if not (gradient_accumulation_steps > 1 and total_step == 0): + optimizer.step() + scheduler.step() + self.set_zero_grad() + self.set_temperature(temperature_schedule[total_step]) + total_step += 1
+ + +
+[docs] + def eval_alignment( + self, + eval_dataloader, + compute_metrics, + inputs_collator, + **kwargs, + ): + """ + The method evaluate alignment. + """ + + all_metrics = [] + all_num_examples = [] + torch.cuda.empty_cache() + with torch.no_grad(): + for inputs in tqdm(eval_dataloader, desc="Evaluating", leave=False): + if inputs_collator is not None: + inputs = inputs_collator(inputs) + b_s = inputs["input_ids"].shape[0] + unit_location_dict = self._batch_process_unit_location( + inputs, + ) + _, counterfactual_outputs = self( + {"input_ids": inputs["input_ids"]}, + [{"input_ids": inputs["source_input_ids"]}], + unit_location_dict, + subspaces=inputs["subspaces"] if "subspaces" in inputs else None, + ) + eval_metrics = compute_metrics( + [counterfactual_outputs.logits], [inputs["labels"]] + ) + all_metrics += [eval_metrics] + all_num_examples += [b_s] + result = weighted_average(all_metrics, all_num_examples) + + return result
+
+ + + +
+[docs] +def build_intervenable_model(config, model, **kwargs): + """ + Factory design pattern for different types of intervenable models. + """ + if isinstance(model, nnsight.LanguageModel): + return IntervenableNdifModel(config, model, **kwargs) + else: + return IntervenableModel(config, model, **kwargs)
+ + +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/intervention_utils.html b/_modules/pyvene/models/intervention_utils.html new file mode 100644 index 00000000..ddef6348 --- /dev/null +++ b/_modules/pyvene/models/intervention_utils.html @@ -0,0 +1,726 @@ + + + + + + + + + + pyvene.models.intervention_utils — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.intervention_utils

+import json
+import torch
+
+
+[docs] +class InterventionState(object): +
+[docs] + def __init__(self, key, **kwargs): + self.key = key + self.reset()
+ + + def inc_getter_version(self): + self.state_dict["getter_version"] += 1 + + def inc_setter_version(self): + self.state_dict["setter_version"] += 1 + + def getter_version(self): + return self.state_dict["getter_version"] + + def setter_version(self): + return self.state_dict["setter_version"] + + def get_states(self): + return self.state_dict + + def set_state(self, state_dict): + self.state_dict = state_dict + + def reset(self): + self.state_dict = { + "key": self.key, + "getter_version": 0, + "setter_version": 0, + } + + def __repr__(self): + return json.dumps(self.state_dict, indent=4) + + def __str__(self): + return json.dumps(self.state_dict, indent=4)
+ + +
+[docs] +def broadcast_tensor_v1(x, target_shape): + # Ensure the last dimension of target_shape matches x's size + if target_shape[-1] != x.shape[-1]: + raise ValueError("The last dimension of target_shape must match the size of x") + + # Create a shape for reshaping x that is compatible with target_shape + reshape_shape = [1] * (len(target_shape) - 1) + [x.shape[-1]] + + # Reshape x and then broadcast it + x_reshaped = x.view(*reshape_shape) + broadcasted_x = x_reshaped.expand(*target_shape) + return broadcasted_x
+ + +
+[docs] +def broadcast_tensor_v2(x, target_shape): + # Ensure that target_shape has at least one dimension + if len(target_shape) < 1: + raise ValueError("Target shape must have at least one dimension") + + # Extract the first n-1 dimensions from the target shape + target_dims_except_last = target_shape[:-1] + + # Broadcast the input tensor x to match the target_dims_except_last and keep its last dimension + broadcasted_x = x.expand(*target_dims_except_last, x.shape[-1]) + + return broadcasted_x
+ + +def _can_cast_tensor( + subspaces +): + tensorfiable = True + try: + torch.tensor(subspaces) + except: + tensorfiable = False + + return tensorfiable + +def _can_use_fast( + subspaces +): + tensorfiable = True + row_same_val = False + try: + subspaces = torch.tensor(subspaces) + row_same_val = torch.all(subspaces == subspaces[0], axis=1).all() + except: + tensorfiable = False + + return row_same_val and tensorfiable + +def _do_intervention_by_swap( + base, + source, + mode="interchange", + interchange_dim=None, + subspaces=None, + subspace_partition=None, + use_fast=False, +): + """The basic do function that guards interventions""" + if mode == "collect": + assert source is None + else: + # auto broadcast + if base.shape != source.shape: + try: + source = broadcast_tensor_v1(source, base.shape) + except: + raise ValueError( + f"source with shape {source.shape} cannot be broadcasted " + f"into base with shape {base.shape}." + ) + # if subspace is none, then we are doing swap based on interchange_dim + if subspaces is None: + if mode == "interchange": + base[..., :interchange_dim] = source[..., :interchange_dim] + elif mode == "add": + base[..., :interchange_dim] += source[..., :interchange_dim] + elif mode == "subtract": + base[..., :interchange_dim] -= source[..., :interchange_dim] + elif mode == "collect": + return base[..., :interchange_dim] # return without side-effect + return base + + sel_subspace_indices = None + if use_fast or _can_use_fast(subspaces): + # its tensor, and each row the same + if subspace_partition is None: + sel_subspace_indices = subspaces[0] + else: + sel_subspace_indices = [] + for subspace in subspaces[0]: + sel_subspace_indices.extend( + subspace_partition[subspace] + ) + elif _can_cast_tensor(subspaces): + sel_subspace_indices = [] + for example_i in range(len(subspaces)): + # render subspace as column indices + if subspace_partition is None: + sel_subspace_indices.append(subspaces[example_i]) + else: + _sel_subspace_indices = [] + for subspace in subspaces[example_i]: + _sel_subspace_indices.extend( + subspace_partition[subspace] + ) + sel_subspace_indices.append(_sel_subspace_indices) + + # _can_use_fast or _can_cast_tensor will prepare the sel_subspace_indices + if sel_subspace_indices is not None: + pad_idx = torch.arange(base.shape[-2]).unsqueeze(dim=-1).to(base.device) + if mode == "interchange": + base[..., pad_idx, sel_subspace_indices] = source[..., pad_idx, sel_subspace_indices] + elif mode == "add": + base[..., pad_idx, sel_subspace_indices] += source[..., pad_idx, sel_subspace_indices] + elif mode == "subtract": + base[..., pad_idx, sel_subspace_indices] -= source[..., pad_idx, sel_subspace_indices] + elif mode == "collect": + return base[..., pad_idx, sel_subspace_indices] # return without side-effect + else: + collect_base = [] + for example_i in range(len(subspaces)): + # render subspace as column indices + if subspace_partition is None: + sel_subspace_indices = subspaces[example_i] + else: + sel_subspace_indices = [] + for subspace in subspaces[example_i]: + sel_subspace_indices.extend( + subspace_partition[subspace] + ) + if mode == "interchange": + base[example_i, ..., sel_subspace_indices] = source[ + example_i, ..., sel_subspace_indices + ] + elif mode == "add": + base[example_i, ..., sel_subspace_indices] += source[ + example_i, ..., sel_subspace_indices + ] + elif mode == "subtract": + base[example_i, ..., sel_subspace_indices] -= source[ + example_i, ..., sel_subspace_indices + ] + elif mode == "collect": + collect_base += [base[example_i, ..., sel_subspace_indices]] + if mode == "collect": + return torch.stack(collect_base, dim=0) # return without side-effect + + return base +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/interventions.html b/_modules/pyvene/models/interventions.html new file mode 100644 index 00000000..260cad58 --- /dev/null +++ b/_modules/pyvene/models/interventions.html @@ -0,0 +1,1286 @@ + + + + + + + + + + pyvene.models.interventions — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.interventions

+import torch
+import numpy as np
+from abc import ABC, abstractmethod
+
+from .layers import RotateLayer, LowRankRotateLayer, SubspaceLowRankRotateLayer, AutoencoderLayer
+from .basic_utils import sigmoid_boundary
+from .intervention_utils import _can_use_fast, _do_intervention_by_swap
+
+
+
+[docs] +class Intervention(torch.nn.Module): + + """Intervention the original representations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__() + self.trainable = False + self.is_source_constant = False + + self.keep_last_dim = kwargs["keep_last_dim"] if "keep_last_dim" in kwargs else False + self.use_fast = kwargs["use_fast"] if "use_fast" in kwargs else False + self.subspace_partition = ( + kwargs["subspace_partition"] if "subspace_partition" in kwargs else None + ) + # we turn the partition into list indices + if self.subspace_partition is not None: + expanded_subspace_partition = [] + for subspace in self.subspace_partition: + if len(subspace) == 2 and isinstance(subspace[0], int): + expanded_subspace_partition.append([i for i in range(subspace[0],subspace[1])]) + else: + # it could be discrete indices. + expanded_subspace_partition.append(subspace) + self.subspace_partition = expanded_subspace_partition + + if "embed_dim" in kwargs and kwargs["embed_dim"] is not None: + self.register_buffer('embed_dim', torch.tensor(kwargs["embed_dim"])) + self.register_buffer('interchange_dim', torch.tensor(kwargs["embed_dim"])) + else: + self.embed_dim = None + self.interchange_dim = None + + if "source_representation" in kwargs and kwargs["source_representation"] is not None: + self.is_source_constant = True + self.register_buffer('source_representation', kwargs["source_representation"]) + else: + if "hidden_source_representation" in kwargs and \ + kwargs["hidden_source_representation"] is not None: + self.is_source_constant = True + else: + self.source_representation = None
+ + + def set_source_representation(self, source_representation): + self.is_source_constant = True + self.register_buffer('source_representation', source_representation) + + def set_interchange_dim(self, interchange_dim): + if not isinstance(interchange_dim, torch.Tensor): + # Convert integer or list into torch.Tensor. + self.interchange_dim = torch.tensor(interchange_dim) + else: + self.interchange_dim = interchange_dim + +
+[docs] + @abstractmethod + def forward(self, base, source, subspaces=None): + pass
+
+ + + +
+[docs] +class LocalistRepresentationIntervention(torch.nn.Module): + + """Localist representation.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__() + self.is_repr_distributed = False
+
+ + + +
+[docs] +class DistributedRepresentationIntervention(torch.nn.Module): + + """Distributed representation.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__() + self.is_repr_distributed = True
+
+ + + +
+[docs] +class TrainableIntervention(Intervention): + + """Intervention the original representations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.trainable = True + self.is_source_constant = False
+ + + def tie_weight(self, linked_intervention): + pass
+ + + +
+[docs] +class ConstantSourceIntervention(Intervention): + + """Constant source.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.is_source_constant = True
+
+ + + +
+[docs] +class SourcelessIntervention(Intervention): + + """No source.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.is_source_constant = True
+
+ + + +
+[docs] +class BasisAgnosticIntervention(Intervention): + + """Intervention that will modify its basis in a uncontrolled manner.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.basis_agnostic = True
+
+ + + +
+[docs] +class SharedWeightsTrainableIntervention(TrainableIntervention): + + """Intervention the original representations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.shared_weights = True
+
+ + + +
+[docs] +class ZeroIntervention(ConstantSourceIntervention, LocalistRepresentationIntervention): + + """Zero-out activations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source=None, subspaces=None): + return _do_intervention_by_swap( + base, + torch.zeros_like(base), + "interchange", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"ZeroIntervention()"
+ + + +
+[docs] +class CollectIntervention(ConstantSourceIntervention): + + """Collect activations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source=None, subspaces=None): + return _do_intervention_by_swap( + base, + source, + "collect", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"CollectIntervention()"
+ + + +
+[docs] +class SkipIntervention(BasisAgnosticIntervention, LocalistRepresentationIntervention): + + """Skip the current intervening layer's computation in the hook function.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + # source here is the base example input to the hook + return _do_intervention_by_swap( + base, + source, + "interchange", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"SkipIntervention()"
+ + + +
+[docs] +class VanillaIntervention(Intervention, LocalistRepresentationIntervention): + + """Intervention the original representations.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + return _do_intervention_by_swap( + base, + source if self.source_representation is None else self.source_representation, + "interchange", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"VanillaIntervention()"
+ + + +
+[docs] +class AdditionIntervention(BasisAgnosticIntervention, LocalistRepresentationIntervention): + + """Intervention the original representations with activation addition.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + return _do_intervention_by_swap( + base, + source if self.source_representation is None else self.source_representation, + "add", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"AdditionIntervention()"
+ + + +
+[docs] +class SubtractionIntervention(BasisAgnosticIntervention, LocalistRepresentationIntervention): + + """Intervention the original representations with activation subtraction.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + + return _do_intervention_by_swap( + base, + source if self.source_representation is None else self.source_representation, + "subtract", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + )
+ + + def __str__(self): + return f"SubtractionIntervention()"
+ + + +
+[docs] +class RotatedSpaceIntervention(TrainableIntervention, DistributedRepresentationIntervention): + + """Intervention in the rotated space.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + rotate_layer = RotateLayer(self.embed_dim) + self.rotate_layer = torch.nn.utils.parametrizations.orthogonal(rotate_layer)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + rotated_base = self.rotate_layer(base) + rotated_source = self.rotate_layer(source) + # interchange + rotated_base = _do_intervention_by_swap( + rotated_base, + rotated_source, + "interchange", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + use_fast=self.use_fast, + ) + # inverse base + output = torch.matmul(rotated_base, self.rotate_layer.weight.T) + return output.to(base.dtype)
+ + + def __str__(self): + return f"RotatedSpaceIntervention()"
+ + + +
+[docs] +class BoundlessRotatedSpaceIntervention(TrainableIntervention, DistributedRepresentationIntervention): + + """Intervention in the rotated space with boundary mask.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + rotate_layer = RotateLayer(self.embed_dim) + self.rotate_layer = torch.nn.utils.parametrizations.orthogonal(rotate_layer) + self.intervention_boundaries = torch.nn.Parameter( + torch.tensor([0.5]), requires_grad=True + ) + self.temperature = torch.nn.Parameter(torch.tensor(50.0)) + self.intervention_population = torch.nn.Parameter( + torch.arange(0, self.embed_dim), requires_grad=False + )
+ + + def get_boundary_parameters(self): + return self.intervention_boundaries + + def get_temperature(self): + return self.temperature + + def set_temperature(self, temp: torch.Tensor): + self.temperature.data = temp + + def set_intervention_boundaries(self, intervention_boundaries): + self.intervention_boundaries = torch.nn.Parameter( + torch.tensor([intervention_boundaries]), requires_grad=True + ) + +
+[docs] + def forward(self, base, source, subspaces=None): + batch_size = base.shape[0] + rotated_base = self.rotate_layer(base) + rotated_source = self.rotate_layer(source) + # get boundary + intervention_boundaries = torch.clamp(self.intervention_boundaries, 1e-3, 1) + boundary_mask = sigmoid_boundary( + self.intervention_population.repeat(batch_size, 1), + 0.0, + intervention_boundaries[0] * int(self.embed_dim), + self.temperature, + ) + boundary_mask = ( + torch.ones(batch_size, device=base.device).unsqueeze(dim=-1) * boundary_mask + ) + boundary_mask = boundary_mask.to(rotated_base.dtype) + # interchange + rotated_output = ( + 1.0 - boundary_mask + ) * rotated_base + boundary_mask * rotated_source + # inverse output + output = torch.matmul(rotated_output, self.rotate_layer.weight.T) + return output.to(base.dtype)
+ + + def __str__(self): + return f"BoundlessRotatedSpaceIntervention()"
+ + + +
+[docs] +class SigmoidMaskRotatedSpaceIntervention(TrainableIntervention, DistributedRepresentationIntervention): + + """Intervention in the rotated space with boundary mask.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + rotate_layer = RotateLayer(self.embed_dim) + self.rotate_layer = torch.nn.utils.parametrizations.orthogonal(rotate_layer) + # boundary masks are initialized to close to 1 + self.masks = torch.nn.Parameter( + torch.tensor([100.0] * self.embed_dim), requires_grad=True + ) + self.temperature = torch.nn.Parameter(torch.tensor(50.0))
+ + + def get_boundary_parameters(self): + return self.intervention_boundaries + + def get_temperature(self): + return self.temperature + + def set_temperature(self, temp: torch.Tensor): + self.temperature.data = temp + +
+[docs] + def forward(self, base, source, subspaces=None): + batch_size = base.shape[0] + rotated_base = self.rotate_layer(base) + rotated_source = self.rotate_layer(source) + # get boundary mask between 0 and 1 from sigmoid + boundary_mask = torch.sigmoid(self.masks / self.temperature) + + boundary_mask = ( + torch.ones(batch_size, device=base.device).unsqueeze(dim=-1) * boundary_mask + ) + boundary_mask = boundary_mask.to(rotated_base.dtype) + # interchange + rotated_output = ( + 1.0 - boundary_mask + ) * rotated_base + boundary_mask * rotated_source + # inverse output + output = torch.matmul(rotated_output, self.rotate_layer.weight.T) + return output.to(base.dtype)
+ + + def __str__(self): + return f"SigmoidMaskRotatedSpaceIntervention()"
+ + + +
+[docs] +class SigmoidMaskIntervention(TrainableIntervention, LocalistRepresentationIntervention): + + """Intervention in the original basis with binary mask.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + self.mask = torch.nn.Parameter( + torch.zeros(self.embed_dim), requires_grad=True) + + self.temperature = torch.nn.Parameter(torch.tensor(0.01))
+ + + def get_temperature(self): + return self.temperature + + def set_temperature(self, temp: torch.Tensor): + self.temperature.data = temp + +
+[docs] + def forward(self, base, source, subspaces=None): + batch_size = base.shape[0] + # get boundary mask between 0 and 1 from sigmoid + mask_sigmoid = torch.sigmoid(self.mask / torch.tensor(self.temperature)) + + # interchange + intervened_output = ( + 1.0 - mask_sigmoid + ) * base + mask_sigmoid * source + + return intervened_output
+ + + def __str__(self): + return f"SigmoidMaskIntervention()"
+ + + +
+[docs] +class LowRankRotatedSpaceIntervention(TrainableIntervention, DistributedRepresentationIntervention): + + """Intervention in the rotated space.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + rotate_layer = LowRankRotateLayer(self.embed_dim, kwargs["low_rank_dimension"]) + self.rotate_layer = torch.nn.utils.parametrizations.orthogonal(rotate_layer)
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + rotated_base = self.rotate_layer(base) + rotated_source = self.rotate_layer(source) + if subspaces is not None: + if self.use_fast or _can_use_fast(subspaces): + if self.subspace_partition is None: + sel_subspace_indices = subspaces[0] + else: + sel_subspace_indices = [] + for subspace in subspaces[0]: + sel_subspace_indices.extend( + self.subspace_partition[subspace] + ) + diff = rotated_source - rotated_base + assert rotated_base.shape[0] == len(subspaces) + batched_subspace = diff[..., sel_subspace_indices].unsqueeze(dim=1) + batched_weights = self.rotate_layer.weight[..., sel_subspace_indices].T + output = base + torch.matmul(batched_subspace, batched_weights).squeeze( + dim=1 + ) + else: + assert self.subspace_partition is not None + output = [] + diff = rotated_source - rotated_base + assert rotated_base.shape[0] == len(subspaces) + batched_subspace = [] + batched_weights = [] + for example_i in range(len(subspaces)): + # render subspace as column indices + sel_subspace_indices = [] + for subspace in subspaces[example_i]: + sel_subspace_indices.extend( + self.subspace_partition[subspace] + ) + + LHS = diff[example_i, sel_subspace_indices].unsqueeze(dim=0) + RHS = self.rotate_layer.weight[..., sel_subspace_indices].T + batched_subspace += [LHS] + batched_weights += [RHS] + batched_subspace = torch.stack(batched_subspace, dim=0) + batched_weights = torch.stack(batched_weights, dim=0) + output = base + torch.matmul(batched_subspace, batched_weights).squeeze( + dim=1 + ) + else: + output = base + torch.matmul( + (rotated_source - rotated_base), self.rotate_layer.weight.T + ) + return output.to(base.dtype)
+ + + def __str__(self): + return f"LowRankRotatedSpaceIntervention()"
+ + + +
+[docs] +class PCARotatedSpaceIntervention(BasisAgnosticIntervention, DistributedRepresentationIntervention): + """Intervention in the pca space.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + pca = kwargs["pca"] + pca_mean = kwargs["pca_mean"] + pca_std = kwargs["pca_std"] + self.pca_components = torch.nn.Parameter( + torch.tensor(pca.components_, dtype=torch.float32), requires_grad=False + ) + self.pca_mean = torch.nn.Parameter( + torch.tensor(pca_mean, dtype=torch.float32), requires_grad=False + ) + self.pca_std = torch.nn.Parameter( + torch.tensor(pca_std, dtype=torch.float32), requires_grad=False + ) + self.trainable = False
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + base_norm = (base - self.pca_mean) / self.pca_std + source_norm = (source - self.pca_mean) / self.pca_std + + rotated_base = torch.matmul(base_norm, self.pca_components.T) # B * D_R + rotated_source = torch.matmul(source_norm, self.pca_components.T) + # interchange + rotated_base = _do_intervention_by_swap( + rotated_base, + rotated_source, + "interchange", + self.interchange_dim, + subspaces, + subspace_partition=self.subspace_partition, + ) + # inverse base + output = torch.matmul(rotated_base, self.pca_components) # B * D + output = (output * self.pca_std) + self.pca_mean + return output
+ + + def __str__(self): + return f"PCARotatedSpaceIntervention()"
+ + +
+[docs] +class NoiseIntervention(ConstantSourceIntervention, LocalistRepresentationIntervention): + """Noise intervention""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + rs = np.random.RandomState(1) + prng = lambda *shape: rs.randn(*shape) + noise_level = kwargs["noise_leve"] \ + if "noise_leve" in kwargs else 0.13462981581687927 + self.register_buffer('noise', torch.from_numpy( + prng(1, 4, self.embed_dim))) + self.register_buffer('noise_level', torch.tensor(noise_level))
+ + +
+[docs] + def forward(self, base, source=None, subspaces=None): + base[..., : self.interchange_dim] += self.noise * self.noise_level + return base
+ + + def __str__(self): + return f"NoiseIntervention()"
+ + + +
+[docs] +class AutoencoderIntervention(TrainableIntervention): + """Intervene in the latent space of an autoencoder.""" + +
+[docs] + def __init__(self, **kwargs): + super().__init__(**kwargs) + if "latent_dim" not in kwargs: + raise ValueError('Missing latent_dim in kwargs.') + if "embed_dim" in kwargs: + self.embed_dim = torch.tensor(kwargs["embed_dim"]) + self.autoencoder = AutoencoderLayer( + self.embed_dim, kwargs["latent_dim"])
+ + +
+[docs] + def forward(self, base, source, subspaces=None): + base_dtype = base.dtype + base = base.to(self.autoencoder.encoder[0].weight.dtype) + base_latent = self.autoencoder.encode(base) + source_latent = self.autoencoder.encode(source) + base_latent[..., self.interchange_dim] = source_latent[..., self.interchange_dim] + inv_output = self.autoencoder.decode(base_latent) + return inv_output.to(base_dtype)
+ + + def __str__(self): + return f"AutoencoderIntervention()"
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/layers.html b/_modules/pyvene/models/layers.html new file mode 100644 index 00000000..b36ffdca --- /dev/null +++ b/_modules/pyvene/models/layers.html @@ -0,0 +1,676 @@ + + + + + + + + + + pyvene.models.layers — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.layers

+from abc import ABCMeta, abstractmethod
+
+import torch
+
+
+
+[docs] +class InverseRotateLayer(torch.nn.Module): + """The inverse of a given `LinearLayer` module.""" + +
+[docs] + def __init__(self, lin_layer): + super().__init__() + self.lin_layer = lin_layer
+ + +
+[docs] + def forward(self, x): + output = torch.matmul(x, self.lin_layer.weight.T) + return output
+
+ + + +
+[docs] +class RotateLayer(torch.nn.Module): + """A linear transformation with orthogonal initialization.""" + +
+[docs] + def __init__(self, n, init_orth=True): + super().__init__() + weight = torch.empty(n, n) + # we don't need init if the saved checkpoint has a nice + # starting point already. + # you can also study this if you want, but it is our focus. + if init_orth: + torch.nn.init.orthogonal_(weight) + self.weight = torch.nn.Parameter(weight, requires_grad=True)
+ + +
+[docs] + def forward(self, x): + return torch.matmul(x.to(self.weight.dtype), self.weight)
+
+ + + +
+[docs] +class LowRankRotateLayer(torch.nn.Module): + """A linear transformation with orthogonal initialization.""" + +
+[docs] + def __init__(self, n, m, init_orth=True): + super().__init__() + # n > m + self.weight = torch.nn.Parameter(torch.empty(n, m), requires_grad=True) + if init_orth: + torch.nn.init.orthogonal_(self.weight)
+ + +
+[docs] + def forward(self, x): + return torch.matmul(x.to(self.weight.dtype), self.weight)
+
+ + + +
+[docs] +class SubspaceLowRankRotateLayer(torch.nn.Module): + """A linear transformation with orthogonal initialization with subspace.""" + +
+[docs] + def __init__(self, n, m, init_orth=True): + super().__init__() + # n > m + self.weight = torch.nn.Parameter(torch.empty(n, m), requires_grad=True) + if init_orth: + torch.nn.init.orthogonal_(self.weight)
+ + +
+[docs] + def forward(self, x, l, r): + return torch.matmul(x.to(self.weight.dtype), self.weight[:, l:r])
+
+ + + +
+[docs] +class AutoencoderLayerBase(torch.nn.Module, metaclass=ABCMeta): + """An abstract base class that defines an interface of an autoencoder.""" + + @abstractmethod + def encode(self, x): + ... + + @abstractmethod + def decode(self, latent): + ...
+ + + +
+[docs] +class AutoencoderLayer(AutoencoderLayerBase): + """An autoencoder with a single-layer encoder and single-layer decoder.""" +
+[docs] + def __init__(self, input_dim, latent_dim, **kwargs): + super().__init__() + self.input_dim = input_dim + self.latent_dim = latent_dim + self.encoder = torch.nn.Sequential( + torch.nn.Linear(input_dim, latent_dim, bias=True), + torch.nn.ReLU()) + self.decoder = torch.nn.Sequential( + torch.nn.Linear(latent_dim, input_dim, bias=True))
+ + + def encode(self, x): + x = x.to(self.encoder[0].weight.dtype) + x = x - self.decoder[0].bias + latent = self.encoder(x) + return latent + + def decode(self, latent): + return self.decoder(latent) + +
+[docs] + def forward(self, base, return_latent=False): + base_type = base.dtype + base = base.to(self.encoder[0].weight.dtype) + latent = self.encode(base) + base_reconstruct = self.decode(latent) + if not return_latent: + return base_reconstruct.to(base_type) + return {'latent': latent, 'output': base_reconstruct}
+
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/llama/modelings_intervenable_llama.html b/_modules/pyvene/models/llama/modelings_intervenable_llama.html new file mode 100644 index 00000000..9f7663e8 --- /dev/null +++ b/_modules/pyvene/models/llama/modelings_intervenable_llama.html @@ -0,0 +1,620 @@ + + + + + + + + + + pyvene.models.llama.modelings_intervenable_llama — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.llama.modelings_intervenable_llama

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+import torch
+from ..constants import *
+
+
+llama_type_to_module_mapping = {
+    "block_input": ("layers[%s]", CONST_INPUT_HOOK),
+    "block_output": ("layers[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("layers[%s].mlp.act_fn", CONST_OUTPUT_HOOK),
+    "mlp_output": ("layers[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("layers[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    "attention_input": ("layers[%s].self_attn", CONST_INPUT_HOOK),
+    "query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK),
+    "key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK),
+    "value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK),
+    "head_query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+    "head_value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+}
+
+
+llama_type_to_dimension_mapping = {
+    "n_head": ("num_attention_heads",),
+    "n_kv_head": ("num_key_value_heads",),
+    "block_input": ("hidden_size",),
+    "block_output": ("hidden_size",),
+    "mlp_activation": ("intermediate_size",),
+    "mlp_output": ("hidden_size",),
+    "mlp_input": ("hidden_size",),
+    "attention_value_output": ("hidden_size",),
+    "head_attention_value_output": ("hidden_size/num_attention_heads",),
+    "attention_output": ("hidden_size",),
+    "attention_input": ("hidden_size",),
+    "query_output": ("hidden_size",),
+    "key_output": ("hidden_size",),
+    "value_output": ("hidden_size",),
+    "head_query_output": ("hidden_size/num_attention_heads",),
+    "head_key_output": ("hidden_size/num_attention_heads",),
+    "head_value_output": ("hidden_size/num_attention_heads",),
+}
+
+
+"""llama model with LM head"""
+llama_lm_type_to_module_mapping = {}
+for k, v in llama_type_to_module_mapping.items():
+    llama_lm_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+llama_lm_type_to_dimension_mapping = llama_type_to_dimension_mapping
+
+
+"""llama model with classifier head"""
+llama_classifier_type_to_module_mapping = {}
+for k, v in llama_type_to_module_mapping.items():
+    llama_classifier_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+llama_classifier_type_to_dimension_mapping = llama_type_to_dimension_mapping
+
+
+
+[docs] +def create_llama( + name="sharpbai/alpaca-7b-merged", cache_dir=None, dtype=torch.bfloat16, config=None +): + """Creates a LLaMA Causal LM model, config, and tokenizer from the given name and revision""" + from transformers import LlamaForCausalLM, LlamaTokenizer, LlamaConfig + if config is None: + config = LlamaConfig.from_pretrained(name, cache_dir=cache_dir) + llama = LlamaForCausalLM.from_pretrained( + name, + config=config, + cache_dir=cache_dir, + torch_dtype=dtype, # save memory + ) + tokenizer = LlamaTokenizer.from_pretrained(name, cache_dir=cache_dir) + else: + llama = LlamaForCausalLM(config) + tokenizer = LlamaTokenizer.from_pretrained(name, cache_dir=cache_dir) + print("loaded model") + return config, tokenizer, llama
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/llava/modelings_intervenable_llava.html b/_modules/pyvene/models/llava/modelings_intervenable_llava.html new file mode 100644 index 00000000..e0e186a8 --- /dev/null +++ b/_modules/pyvene/models/llava/modelings_intervenable_llava.html @@ -0,0 +1,622 @@ + + + + + + + + + + pyvene.models.llava.modelings_intervenable_llava — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.llava.modelings_intervenable_llava

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+import torch
+from ..constants import *
+
+llava_type_to_module_mapping = {
+    "block_input": ("language_model.model.layers[%s]", CONST_INPUT_HOOK),
+    "block_output": ("language_model.model.layers[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("language_model.model.layers[%s].mlp.act_fn", CONST_OUTPUT_HOOK),
+    "mlp_output": ("language_model.model.layers[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("language_model.model.layers[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("language_model.model.layers[%s].self_attn.o_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("language_model.model.layers[%s].self_attn.o_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("language_model.model.layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    "attention_input": ("language_model.model.layers[%s].self_attn", CONST_INPUT_HOOK),
+    "query_output": ("language_model.model.layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK),
+    "key_output": ("language_model.model.layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK),
+    "value_output": ("language_model.model.layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK),
+    "head_query_output": ("language_model.model.layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_key_output": ("language_model.model.layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+    "head_value_output": ("language_model.model.layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+}
+
+
+llava_type_to_dimension_mapping = {
+    "n_head": ("text_config.num_attention_heads",),
+    "n_kv_head": ("text_config.num_key_value_heads",),
+    "block_input": ("text_config.hidden_size",),
+    "block_output": ("text_config.hidden_size",),
+    "mlp_activation": ("text_config.intermediate_size",),
+    "mlp_output": ("text_config.hidden_size",),
+    "mlp_input": ("text_config.hidden_size",),
+    "attention_value_output": ("text_config.hidden_size",),
+    "head_attention_value_output": ("text_config.hidden_size/text_config.num_attention_heads",),
+    "attention_output": ("text_config.hidden_size",),
+    "attention_input": ("text_config.hidden_size",),
+    "query_output": ("text_config.hidden_size",),
+    "key_output": ("text_config.hidden_size",),
+    "value_output": ("text_config.hidden_size",),
+    "head_query_output": ("text_config.hidden_size/text_config.num_attention_heads",),
+    "head_key_output": ("text_config.hidden_size/text_config.num_attention_heads",),
+    "head_value_output": ("text_config.hidden_size/text_config.num_attention_heads",),
+}
+
+
+"""llava model with LM head"""
+llava_lm_type_to_module_mapping = {}
+for k, v in llava_type_to_module_mapping.items():
+    llava_lm_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+llava_lm_type_to_dimension_mapping = llava_type_to_dimension_mapping
+
+
+"""llava model with classifier head"""
+llava_classifier_type_to_module_mapping = {}
+for k, v in llava_type_to_module_mapping.items():
+    llava_classifier_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+llava_classifier_type_to_dimension_mapping = llava_type_to_dimension_mapping
+
+
+
+
+
+[docs] +def create_llava( + name="llava-hf/llava-1.5-7b-hf", cache_dir=None, dtype=torch.bfloat16 +): + """Creates a llava Causal LM model, config, and tokenizer from the given name and revision""" + from transformers import LlavaForConditionalGeneration, LlavaConfig, AutoTokenizer, AutoProcessor + + config = LlavaConfig.from_pretrained(name, cache_dir=cache_dir) + tokenizer = AutoTokenizer.from_pretrained(name, use_fast=False) + llava = LlavaForConditionalGeneration.from_pretrained( + name, + config=config, + cache_dir=cache_dir, + torch_dtype=dtype, + ) + + image_processor = AutoProcessor.from_pretrained(name) + + print("loaded model") + return config, tokenizer, llava, image_processor
+ + +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/mistral/modellings_intervenable_mistral.html b/_modules/pyvene/models/mistral/modellings_intervenable_mistral.html new file mode 100644 index 00000000..574ee329 --- /dev/null +++ b/_modules/pyvene/models/mistral/modellings_intervenable_mistral.html @@ -0,0 +1,608 @@ + + + + + + + + + + pyvene.models.mistral.modellings_intervenable_mistral — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.mistral.modellings_intervenable_mistral

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+import torch
+from ..constants import *
+
+
+mistral_type_to_module_mapping = {
+    "block_input": ("layers[%s]", CONST_INPUT_HOOK),
+    "block_output": ("layers[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("layers[%s].mlp.act_fn", CONST_OUTPUT_HOOK),
+    "mlp_output": ("layers[%s].mlp", CONST_OUTPUT_HOOK),
+    "mlp_input": ("layers[%s].mlp", CONST_INPUT_HOOK),
+    "attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK),
+    "head_attention_value_output": ("layers[%s].self_attn.o_proj", CONST_INPUT_HOOK, (split_head_and_permute, "n_head")),
+    "attention_output": ("layers[%s].self_attn", CONST_OUTPUT_HOOK),
+    "attention_input": ("layers[%s].self_attn", CONST_INPUT_HOOK),
+    "query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK),
+    "key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK),
+    "value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK),
+    "head_query_output": ("layers[%s].self_attn.q_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_head")),
+    "head_key_output": ("layers[%s].self_attn.k_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+    "head_value_output": ("layers[%s].self_attn.v_proj", CONST_OUTPUT_HOOK, (split_head_and_permute, "n_kv_head")),
+}
+
+
+mistral_type_to_dimension_mapping = {
+    "n_head": ("num_attention_heads",),
+    "n_kv_head": ("num_key_value_heads",),
+    "block_input": ("hidden_size",),
+    "block_output": ("hidden_size",),
+    "mlp_activation": ("intermediate_size",),
+    "mlp_output": ("hidden_size",),
+    "mlp_input": ("hidden_size",),
+    "attention_value_output": ("hidden_size",),
+    "head_attention_value_output": ("hidden_size/num_attention_heads",),
+    "attention_output": ("hidden_size",),
+    "attention_input": ("hidden_size",),
+    "query_output": ("hidden_size",),
+    "key_output": ("hidden_size",),
+    "value_output": ("hidden_size",),
+    "head_query_output": ("hidden_size/num_attention_heads",),
+    "head_key_output": ("hidden_size/num_attention_heads",),
+    "head_value_output": ("hidden_size/num_attention_heads",),
+}
+
+
+"""mistral model with LM head"""
+mistral_lm_type_to_module_mapping = {}
+for k, v in mistral_type_to_module_mapping.items():
+    mistral_lm_type_to_module_mapping[k] = (f"model.{v[0]}", ) + v[1:]
+
+
+mistral_lm_type_to_dimension_mapping = mistral_type_to_dimension_mapping
+
+
+
+[docs] +def create_mistral( + name="mistralai/Mistral-7B-v0.1", cache_dir=None +): + """Creates a Mistral Causal LM model, config, and tokenizer from the given name and revision""" + from transformers import AutoModelForCausalLM, AutoTokenizer, AutoConfig + + config = AutoConfig.from_pretrained(name, cache_dir=cache_dir) + tokenizer = AutoTokenizer.from_pretrained(name, cache_dir=cache_dir) + mistral = AutoModelForCausalLM.from_pretrained( + name, + config=config, + cache_dir=cache_dir, + torch_dtype=torch.bfloat16, # save memory + ) + print("loaded model") + return config, tokenizer, mistral
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/mlp/modelings_intervenable_mlp.html b/_modules/pyvene/models/mlp/modelings_intervenable_mlp.html new file mode 100644 index 00000000..ec869833 --- /dev/null +++ b/_modules/pyvene/models/mlp/modelings_intervenable_mlp.html @@ -0,0 +1,578 @@ + + + + + + + + + + pyvene.models.mlp.modelings_intervenable_mlp — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.mlp.modelings_intervenable_mlp

+"""
+Each modeling file in this library is a mapping between
+abstract naming of intervention anchor points and actual
+model module defined in the huggingface library.
+
+We also want to let the intervention library know how to
+config the dimensions of intervention based on model config
+defined in the huggingface library.
+"""
+
+
+from ..constants import *
+
+
+"""mlp base model"""
+mlp_type_to_module_mapping = {
+    "block_input": ("h[%s]", CONST_INPUT_HOOK),
+    "block_output": ("h[%s]", CONST_OUTPUT_HOOK),
+    "mlp_activation": ("h[%s].act", CONST_OUTPUT_HOOK),
+}
+
+
+mlp_type_to_dimension_mapping = {
+    "block_input": ("h_dim",),
+    "block_output": ("h_dim",),
+    "mlp_activation": ("h_dim",),
+}
+
+
+"""mlp model with classification head"""
+mlp_classifier_type_to_module_mapping = {}
+for k, v in mlp_type_to_module_mapping.items():
+    mlp_classifier_type_to_module_mapping[k] = (f"mlp.{v[0]}", v[1])
+
+mlp_classifier_type_to_dimension_mapping = mlp_type_to_dimension_mapping
+
+
+
+[docs] +def create_mlp_classifier( + config, tokenizer_name=None, cache_dir=None +): + """Creates a MLP model, config, and tokenizer from the given name and revision""" + from transformers import AutoTokenizer + from pyvene.models.mlp.modelings_mlp import MLPForClassification + + tokenizer = None + if tokenizer_name is not None: + tokenizer = AutoTokenizer.from_pretrained(tokenizer_name, cache_dir=cache_dir) + mlp = MLPForClassification(config=config) + print("loaded model") + return config, tokenizer, mlp
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/mlp/modelings_mlp.html b/_modules/pyvene/models/mlp/modelings_mlp.html new file mode 100644 index 00000000..5c1e061b --- /dev/null +++ b/_modules/pyvene/models/mlp/modelings_mlp.html @@ -0,0 +1,736 @@ + + + + + + + + + + pyvene.models.mlp.modelings_mlp — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.mlp.modelings_mlp

+from typing import Optional, Tuple
+
+import torch
+import torch.nn as nn
+from torch.nn import BCEWithLogitsLoss, CrossEntropyLoss, MSELoss
+from transformers import PretrainedConfig, PreTrainedModel
+from transformers.activations import ACT2FN
+from transformers.utils import ModelOutput
+from transformers.modeling_outputs import SequenceClassifierOutput
+from dataclasses import dataclass
+
+
+[docs] +class MLPConfig(PretrainedConfig): + model_type = "mlp" + +
+[docs] + def __init__( + self, + include_emb=False, + vocab_size=50_257, + max_position_embeddings=512, + n_layer=2, + h_dim=512, + num_classes=2, + activation_function="gelu", + pdrop=0.3, + problem_type="single_label_classification", + include_bias=True, + squeeze_output=True, + **kwargs, + ): + self.include_emb = include_emb + self.vocab_size = vocab_size + self.max_position_embeddings = max_position_embeddings + self.n_layer = n_layer + self.h_dim = h_dim + self.activation_function = activation_function + self.pdrop = pdrop + self.num_classes = num_classes + self.problem_type = problem_type + self.include_bias = include_bias + self.squeeze_output = squeeze_output + super().__init__(**kwargs)
+
+ + +
+[docs] +@dataclass +class MLPModelOutput(ModelOutput): + last_hidden_state: torch.FloatTensor = None + hidden_states: Optional[Tuple[torch.FloatTensor]] = None
+ + + +
+[docs] +class MLPBlock(nn.Module): +
+[docs] + def __init__(self, config): + super().__init__() + self.ff1 = nn.Linear(config.h_dim, config.h_dim, bias=config.include_bias) + self.act = ACT2FN[config.activation_function] + self.dropout = nn.Dropout(config.pdrop)
+ + +
+[docs] + def forward(self, hidden_states): + return self.dropout(self.act(self.ff1(hidden_states)))
+
+ + + +
+[docs] +class MLPModel(PreTrainedModel): +
+[docs] + def __init__(self, config): + super().__init__(config) + self.config = config + self.h_dim = config.h_dim + if config.include_emb: + self.wte = nn.Embedding(config.vocab_size, self.h_dim) + self.wpe = nn.Embedding(config.max_position_embeddings, self.h_dim) + self.dropout = nn.Dropout(config.pdrop) + + self.h = nn.ModuleList([MLPBlock(config) for _ in range(config.n_layer)]) + + self.post_init()
+ + +
+[docs] + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + position_ids: Optional[torch.LongTensor] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ): + if inputs_embeds is None: + inputs_embeds = self.wte(input_ids) + hidden_states = inputs_embeds + if position_ids is not None: + position_embeds = self.wpe(position_ids) + hidden_states += position_embeds + + hidden_states = self.dropout(hidden_states) + all_hidden_states = () if output_hidden_states else None + + for i, block in enumerate(self.h): + if output_hidden_states: + all_hidden_states = all_hidden_states + (hidden_states,) + hidden_states = block(hidden_states) + + if output_hidden_states: + all_hidden_states = all_hidden_states + (hidden_states,) + + if not return_dict: + return tuple(v for v in [hidden_states, all_hidden_states] if v is not None) + + return MLPModelOutput( + last_hidden_state=hidden_states, hidden_states=all_hidden_states + )
+
+ + + +
+[docs] +class MLPForClassification(PreTrainedModel): +
+[docs] + def __init__(self, config): + super().__init__(config) + self.num_classes = config.num_classes + self.squeeze_output = config.squeeze_output + self.mlp = MLPModel(config) + self.score = nn.Linear(config.h_dim, self.num_classes, bias=config.include_bias) + + # Initialize weights and apply final processing + self.post_init()
+ + +
+[docs] + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + position_ids: Optional[torch.LongTensor] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + labels: Optional[torch.LongTensor] = None, + output_hidden_states: Optional[bool] = None, + return_dict: Optional[bool] = None, + ): + mlp_outputs = self.mlp( + input_ids, + position_ids, + inputs_embeds, + output_hidden_states, + return_dict, + ) + hidden_states = mlp_outputs[0] + pooled_logits = self.score(hidden_states) + if self.squeeze_output: + pooled_logits = pooled_logits.squeeze(1) + + loss = None + if labels is not None: + if self.config.problem_type is None: + if self.num_classes == 1: + self.config.problem_type = "regression" + elif self.num_classes > 1 and ( + labels.dtype == torch.long or labels.dtype == torch.int + ): + self.config.problem_type = "single_label_classification" + else: + self.config.problem_type = "multi_label_classification" + + if self.config.problem_type == "regression": + loss_fct = MSELoss() + if self.num_classes == 1: + loss = loss_fct(pooled_logits.squeeze(), labels.squeeze()) + else: + loss = loss_fct(pooled_logits, labels) + elif self.config.problem_type == "single_label_classification": + loss_fct = CrossEntropyLoss() + loss = loss_fct( + pooled_logits.view(-1, self.num_classes), labels.view(-1) + ) + elif self.config.problem_type == "multi_label_classification": + loss_fct = BCEWithLogitsLoss() + loss = loss_fct(pooled_logits, labels) + + if not return_dict: + output = (pooled_logits,) + mlp_outputs[1:] + return ((loss,) + output) if loss is not None else output + + return SequenceClassifierOutput( + loss=loss, + logits=pooled_logits, + hidden_states=mlp_outputs.hidden_states, + )
+
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_modules/pyvene/models/modeling_utils.html b/_modules/pyvene/models/modeling_utils.html new file mode 100644 index 00000000..213b2ac6 --- /dev/null +++ b/_modules/pyvene/models/modeling_utils.html @@ -0,0 +1,1104 @@ + + + + + + + + + + pyvene.models.modeling_utils — pyvene 0.1.2 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + +
+
+ + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + +
+ +
+
+ +
+
+ +
+ +
+ +
+ + +
+ +
+ +
+ + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+

+ +
+
+ +
+
+
+ + + + +
+ +

Source code for pyvene.models.modeling_utils

+import random, torch, types
+import numpy as np
+from torch import nn
+from .intervenable_modelcard import *
+from .interventions import *
+from .constants import *
+
+
+
+[docs] +def get_internal_model_type(model): + """Return the model type.""" + return type(model)
+ + + +
+[docs] +def is_stateless(model): + """Determine if the model is stateful (e.g., rnn) or stateless (e.g., + transformer) + """ + if is_gru(model): + return False + return True
+ + + +
+[docs] +def is_gru(model): + """Determine if this is a transformer model.""" + if ( + type(model) == GRUModel + or type(model) == GRULMHeadModel + or type(model) == GRUForClassification + ): + return True + return False
+ + + +
+[docs] +def is_mlp(model): + """Determine if this is a mlp model.""" + if type(model) == MLPModel or type(model) == MLPForClassification: + return True + return False
+ + + +
+[docs] +def is_transformer(model): + """Determine if this is a transformer model.""" + if not is_gru(model) and not is_mlp(model): + return True + return False
+ + + + + + + +
+[docs] +def remove_forward_hooks(main_module: nn.Module): + """Function to remove all forward and pre-forward hooks from a module and + + its sub-modules. + """ + + # Remove forward hooks + for _, submodule in main_module.named_modules(): + if hasattr(submodule, "_forward_hooks"): + hooks = list(submodule._forward_hooks.keys()) # Get a list of hook IDs + for hook_id in hooks: + submodule._forward_hooks.pop(hook_id) + + # Remove pre-forward hooks + if hasattr(submodule, "_forward_pre_hooks"): + pre_hooks = list( + submodule._forward_pre_hooks.keys() + ) # Get a list of pre-hook IDs + for pre_hook_id in pre_hooks: + submodule._forward_pre_hooks.pop(pre_hook_id)
+ + + +
+[docs] +def getattr_for_torch_module(model, parameter_name): + """Recursively fetch the model based on the name.""" + current_module = model + for param in parameter_name.split("."): + if "[" in param: + current_module = getattr(current_module, param.split("[")[0])[ + int(param.split("[")[-1].strip("]")) + ] + else: + current_module = getattr(current_module, param) + return current_module
+ + + +
+[docs] +def get_dimension_by_component(model_type, model_config, component) -> int: + """Based on the representation, get the aligning dimension size.""" + + if component not in type_to_dimension_mapping[model_type]: + return None + + dimension_proposals = type_to_dimension_mapping[model_type][component] + for proposal in dimension_proposals: + if proposal.isnumeric(): + dimension = int(proposal) + elif "*" in proposal: + # often constant multiplier with MLP + dimension = getattr_for_torch_module( + model_config, proposal.split("*")[0] + ) * int(proposal.split("*")[1]) + elif "/" in proposal: + # often split by head number + if proposal.split("/")[0].isnumeric(): + numr = int(proposal.split("/")[0]) + else: + numr = getattr_for_torch_module(model_config, proposal.split("/")[0]) + + if proposal.split("/")[1].isnumeric(): + denr = int(proposal.split("/")[1]) + else: + denr = getattr_for_torch_module(model_config, proposal.split("/")[1]) + dimension = int(numr / denr) + else: + dimension = getattr_for_torch_module(model_config, proposal) + if dimension is not None: + return dimension + + assert False
+ + + +
+[docs] +def get_module_hook(model, representation, backend="native") -> nn.Module: + """Render the intervening module with a hook.""" + if ( + get_internal_model_type(model) in type_to_module_mapping and + representation.component + in type_to_module_mapping[get_internal_model_type(model)] + ): + type_info = type_to_module_mapping[get_internal_model_type(model)][ + representation.component + ] + parameter_name = type_info[0] + hook_type = type_info[1] + if "%s" in parameter_name and representation.moe_key is None: + # we assume it is for the layer. + parameter_name = parameter_name % (representation.layer) + elif "%s" in parameter_name and representation.moe_key is not None: + parameter_name = parameter_name % ( + int(representation.layer), + int(representation.moe_key), + ) + else: + parameter_name = ".".join(representation.component.split(".")[:-1]) + if representation.component.split(".")[-1] == "input": + hook_type = CONST_INPUT_HOOK + elif representation.component.split(".")[-1] == "output": + hook_type = CONST_OUTPUT_HOOK + + module = getattr_for_torch_module(model, parameter_name) + if backend == "native": + module_hook = getattr(module, hook_type) + elif backend == "ndif": + # we assume the input v.s. output is handled outside + module_hook = module + return (module_hook, hook_type) + + return module_hook
+ + + +
+[docs] +class HandlerList: + """General class to set hooks and set off hooks.""" + +
+[docs] + def __init__(self, handlers): + self.handlers = handlers
+ + + def __len__(self): + return len(self.handlers) + + def remove(self): + for handler in self.handlers: + handler.remove() + + def extend(self, new_handlers): + self.handlers.extend(new_handlers.handlers) + return self
+ + + +
+[docs] +def bsd_to_b_sd(tensor): + """Convert a tensor of shape (b, s, d) to (b, s*d).""" + if tensor is None: + return tensor + b, s, d = tensor.shape + return tensor.reshape(b, s * d)
+ + + +
+[docs] +def b_sd_to_bsd(tensor, s): + """Convert a tensor of shape (b, s*d) back to (b, s, d).""" + if tensor is None: + return tensor + b, sd = tensor.shape + d = sd // s + return tensor.reshape(b, s, d)
+ + + +
+[docs] +def bhsd_to_bs_hd(tensor): + """Convert a tensor of shape (b, h, s, d) to (b, s, h*d).""" + if tensor is None: + return tensor + b, h, s, d = tensor.shape + return tensor.permute(0, 2, 1, 3).reshape(b, s, h * d)
+ + + +
+[docs] +def bs_hd_to_bhsd(tensor, h): + """Convert a tensor of shape (b, s, h*d) back to (b, h, s, d).""" + if tensor is None: + return tensor + b, s, hd = tensor.shape + + d = hd // h + + return tensor.reshape(b, s, h, d).permute(0, 2, 1, 3)
+ + + +
+[docs] +def output_to_subcomponent(output, component, model_type, model_config): + """Split the raw output to subcomponents if specified in the config. + + :param output: the original output from the model component. + :param component: types of model component, such as + "block_output" and "query_output" or it can be direct referece, such as + "h[0].mlp.act" which we will not splice into any subcomponent. + :param model_type: Hugging Face Model Type + :param model_config: Hugging Face Model Config + """ + subcomponent = output + if model_type in type_to_module_mapping and \ + component in type_to_module_mapping[model_type]: + split_last_dim_by = type_to_module_mapping[model_type][component][2:] + if len(split_last_dim_by) != 0 and len(split_last_dim_by) > 2: + raise ValueError(f"Unsupported {split_last_dim_by}.") + for i, (split_fn, param) in enumerate(split_last_dim_by): + if isinstance(param, str): + param = get_dimension_by_component(model_type, model_config, param) + subcomponent = split_fn(subcomponent, param) + return subcomponent
+ + + +
+[docs] +def gather_neurons(tensor_input, unit, unit_locations_as_list, device=None): + """Gather intervening neurons. + + :param tensor_input: tensors of shape (batch_size, sequence_length, ...) if + `unit` is "pos" or "h", tensors of shape (batch_size, num_heads, + sequence_length, ...) if `unit` is "h.pos" + :param unit: the intervention units to gather. Units could be "h" - head + number, "pos" - position in the sequence, or "dim" - a particular dimension in + the embedding space. If intervening multiple units, they are ordered and + separated by `.`. Currently only support "pos", "h", and "h.pos" units. + :param unit_locations_as_list: tuple of lists of lists of positions to gather + in tensor_input, according to the unit. + :return the gathered tensor as tensor_output + """ + if unit in {"t"}: + return tensor_input + + if "." in unit: + unit_locations = ( + torch.tensor(unit_locations_as_list[0], + device=tensor_input.device if device is None else device), + torch.tensor(unit_locations_as_list[1], + device=tensor_input.device if device is None else device), + ) + # we assume unit_locations is a tuple + head_unit_locations = unit_locations[0] + pos_unit_locations = unit_locations[1] + + head_tensor_output = torch.gather( + tensor_input, + 1, + head_unit_locations.reshape( + *head_unit_locations.shape, *(1,) * (len(tensor_input.shape) - 2) + ).expand(-1, -1, *tensor_input.shape[2:]), + ) # b, h, s, d + d = head_tensor_output.shape[1] + pos_tensor_input = bhsd_to_bs_hd(head_tensor_output) + pos_tensor_output = torch.gather( + pos_tensor_input, + 1, + pos_unit_locations.reshape( + *pos_unit_locations.shape, *(1,) * (len(pos_tensor_input.shape) - 2) + ).expand(-1, -1, *pos_tensor_input.shape[2:]), + ) # b, num_unit (pos), num_unit (h)*d + tensor_output = bs_hd_to_bhsd(pos_tensor_output, d) + + return tensor_output # b, num_unit (h), num_unit (pos), d + else: + unit_locations = torch.tensor( + unit_locations_as_list, device=tensor_input.device if device is None else device + ) + + tensor_output = torch.gather( + tensor_input, + 1, + unit_locations.reshape( + *unit_locations.shape, *(1,) * (len(tensor_input.shape) - 2) + ).expand(-1, -1, *tensor_input.shape[2:]), + ) + return tensor_output
+ + + +
+[docs] +def scatter_neurons( + tensor_input, + replacing_tensor_input, + component, + unit, + unit_locations_as_list, + model_type, + model_config, + use_fast, + device=None +): + """Replace selected neurons in `tensor_input` by `replacing_tensor_input`. + + :param tensor_input: tensors of shape (batch_size, sequence_length, ...) if + `unit` is "pos" or "h", tensors of shape (batch_size, num_heads, + sequence_length, ...) if `unit` is "h.pos" + :param replacing_tensor_input: tensors of shape (batch_size, sequence_length, + ...) if `unit` is "pos" or + "h", tensors of shape (batch_size, num_heads, sequence_length, ...) if + `unit` is "h.pos". + :param component: types of intervention representations, such as + "block_output" and "query_output" + :param unit: the intervention units to gather. Units could be "h" - head + number, "pos" - position in the sequence, or "dim" - a particular dimension in + the embedding space. If intervening multiple units, they are ordered and + separated by `.`. Currently only support "pos", "h", and "h.pos" units. + :param unit_locations_as_list: tuple of lists of lists of positions to gather + in tensor_input, according to the unit. + :param model_type: Hugging Face Model Type + :param model_config: Hugging Face Model Config + :param use_fast: whether to use fast path (TODO: fast path condition) + :return the in-place modified tensor_input + """ + if "." in unit: + # extra dimension for multi-level intervention + unit_locations = ( + torch.tensor(unit_locations_as_list[0], + device=tensor_input.device if device is None else device), + torch.tensor(unit_locations_as_list[1], + device=tensor_input.device if device is None else device), + ) + else: + unit_locations = torch.tensor( + unit_locations_as_list, + device=tensor_input.device if device is None else device + ) + + # if tensor is splitted, we need to get the start and end indices + meta_component = output_to_subcomponent( + torch.arange(tensor_input.shape[-1]).unsqueeze(dim=0).unsqueeze(dim=0), + component, + model_type, + model_config, + ) + start_index, end_index = ( + meta_component.min().tolist(), + meta_component.max().tolist() + 1, + ) + last_dim = meta_component.shape[-1] + _batch_idx = torch.arange(tensor_input.shape[0]).unsqueeze(1) + + # in case it is time step, there is no sequence-related index + if unit in {"t"}: + # time series models, e.g., gru + tensor_input[_batch_idx, start_index:end_index] = replacing_tensor_input + return tensor_input + elif unit in {"pos"}: + if use_fast: + # maybe this is all redundant, but maybe faster slightly? + tensor_input[ + _batch_idx, unit_locations[0], start_index:end_index + ] = replacing_tensor_input + else: + tensor_input[ + _batch_idx, unit_locations, start_index:end_index + ] = replacing_tensor_input + return tensor_input + elif unit in {"h", "h.pos"}: + # head-based scattering is only special for transformer-based model + # replacing_tensor_input: b_s, num_h, s, h_dim -> b_s, s, num_h*h_dim + old_shape = tensor_input.size() # b_s, s, -1*num_h*d + new_shape = tensor_input.size()[:-1] + ( + -1, + meta_component.shape[1], + last_dim, + ) # b_s, s, -1, num_h, d + # get whether split by QKV + if ( + component in type_to_module_mapping[model_type] + and len(type_to_module_mapping[model_type][component]) > 2 + and type_to_module_mapping[model_type][component][2][0] == split_three + ): + _slice_idx = type_to_module_mapping[model_type][component][2][1] + else: + _slice_idx = 0 + tensor_permute = tensor_input.view(new_shape) # b_s, s, -1, num_h, d + tensor_permute = tensor_permute.permute(0, 3, 2, 1, 4) # b_s, num_h, -1, s, d + if "." in unit: + # cannot advance indexing on two columns, thus a single for loop is unavoidable. + for i in range(unit_locations[0].shape[-1]): + tensor_permute[ + _batch_idx, unit_locations[0][:, [i]], _slice_idx, unit_locations[1] + ] = replacing_tensor_input[:, i] + else: + tensor_permute[ + _batch_idx, unit_locations, _slice_idx + ] = replacing_tensor_input + # permute back and reshape + tensor_output = tensor_permute.permute(0, 3, 2, 1, 4) # b_s, s, -1, num_h, d + tensor_output = tensor_output.view(old_shape) # b_s, s, -1*num_h*d + return tensor_output + else: + if "." in unit: + # cannot advance indexing on two columns, thus a single for loop is unavoidable. + for i in range(unit_locations[0].shape[-1]): + tensor_input[ + _batch_idx, unit_locations[0][:, [i]], unit_locations[1] + ] = replacing_tensor_input[:, i] + else: + tensor_input[_batch_idx, unit_locations] = replacing_tensor_input + return tensor_input + assert False
+ + + +
+[docs] +def do_intervention( + base_representation, source_representation, intervention, subspaces +): + """Do the actual intervention.""" + + if isinstance(intervention, types.FunctionType): + if subspaces is None: + return intervention(base_representation, source_representation) + else: + return intervention(base_representation, source_representation, subspaces) + + num_unit = base_representation.shape[1] + + # flatten + original_base_shape = base_representation.shape + if len(original_base_shape) == 2 or ( + isinstance(intervention, LocalistRepresentationIntervention) + ) or intervention.keep_last_dim: + # no pos dimension, e.g., gru, or opt-out concate last two dims + base_representation_f = base_representation + source_representation_f = source_representation + elif len(original_base_shape) == 3: + # b, num_unit (pos), d -> b, num_unit*d + base_representation_f = bsd_to_b_sd(base_representation) + source_representation_f = bsd_to_b_sd(source_representation) + elif len(original_base_shape) == 4: + # b, num_unit (h), s, d -> b, s, num_unit*d + base_representation_f = bhsd_to_bs_hd(base_representation) + source_representation_f = bhsd_to_bs_hd(source_representation) + else: + assert False # what's going on? + + intervened_representation = intervention( + base_representation_f, source_representation_f, subspaces + ) + + post_d = intervened_representation.shape[-1] + + # unflatten + if len(original_base_shape) == 2 or isinstance( + intervention, LocalistRepresentationIntervention + ) or intervention.keep_last_dim: + # no pos dimension, e.g., gru or opt-out concate last two dims + pass + elif len(original_base_shape) == 3: + intervened_representation = b_sd_to_bsd(intervened_representation, num_unit) + elif len(original_base_shape) == 4: + intervened_representation = bs_hd_to_bhsd(intervened_representation, num_unit) + else: + assert False # what's going on? + + return intervened_representation
+ + + +
+[docs] +def simple_output_to_subcomponent(output, representation_type, model_config): + """This is an oversimplied version for demo.""" + return output
+ + + +
+[docs] +def simple_scatter_intervention_output( + original_output, + intervened_representation, + representation_type, + unit, + unit_locations, + model_config, +): + """This is an oversimplied version for demo.""" + for batch_i, locations in enumerate(unit_locations): + original_output[batch_i, locations] = intervened_representation[batch_i]
+ + + +
+[docs] +def weighted_average(values, weights): + if len(values) != len(weights): + raise ValueError("The length of values and weights must be the same.") + + total = sum(v * w for v, w in zip(values, weights)) + return total / sum(weights)
+ +
+ +
+ + + + + + +
+ +
+
+
+ +
+ + + + +
+ + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/_sources/api/core.rst b/_sources/api/core.rst new file mode 100644 index 00000000..2b4ab631 --- /dev/null +++ b/_sources/api/core.rst @@ -0,0 +1,14 @@ +``pyvene``: Core API +========================================= + +.. automodule:: pyvene + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.data_generators + pyvene.models \ No newline at end of file diff --git a/_sources/api/pyvene.data_generators.causal_model.CausalModel.rst b/_sources/api/pyvene.data_generators.causal_model.CausalModel.rst new file mode 100644 index 00000000..c3e71533 --- /dev/null +++ b/_sources/api/pyvene.data_generators.causal_model.CausalModel.rst @@ -0,0 +1,43 @@ +pyvene.data\_generators.causal\_model.CausalModel +================================================= + +.. currentmodule:: pyvene.data_generators.causal_model + +.. autoclass:: CausalModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~CausalModel.__init__ + ~CausalModel.add_variable + ~CausalModel.find_live_paths + ~CausalModel.generate_counterfactual_dataset + ~CausalModel.generate_equiv_classes + ~CausalModel.generate_factual_dataset + ~CausalModel.generate_timesteps + ~CausalModel.get_partial_filter + ~CausalModel.get_path_maxlen_filter + ~CausalModel.get_specific_path_filter + ~CausalModel.input_to_tensor + ~CausalModel.marginalize + ~CausalModel.output_to_tensor + ~CausalModel.print_setting + ~CausalModel.print_structure + ~CausalModel.run_forward + ~CausalModel.run_interchange + ~CausalModel.sample_input + ~CausalModel.sample_input_tree_balanced + ~CausalModel.sample_intervention + + + + + + \ No newline at end of file diff --git a/_sources/api/pyvene.data_generators.causal_model.rst b/_sources/api/pyvene.data_generators.causal_model.rst new file mode 100644 index 00000000..259e6b11 --- /dev/null +++ b/_sources/api/pyvene.data_generators.causal_model.rst @@ -0,0 +1,38 @@ +pyvene.data\_generators.causal\_model +===================================== + +.. automodule:: pyvene.data_generators.causal_model + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + simple_example + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + CausalModel + + + + + + + + + diff --git a/_sources/api/pyvene.data_generators.causal_model.simple_example.rst b/_sources/api/pyvene.data_generators.causal_model.simple_example.rst new file mode 100644 index 00000000..3db41971 --- /dev/null +++ b/_sources/api/pyvene.data_generators.causal_model.simple_example.rst @@ -0,0 +1,6 @@ +pyvene.data\_generators.causal\_model.simple\_example +===================================================== + +.. currentmodule:: pyvene.data_generators.causal_model + +.. autofunction:: simple_example \ No newline at end of file diff --git a/_sources/api/pyvene.data_generators.rst b/_sources/api/pyvene.data_generators.rst new file mode 100644 index 00000000..5d7fc864 --- /dev/null +++ b/_sources/api/pyvene.data_generators.rst @@ -0,0 +1,32 @@ +pyvene.data\_generators +======================= + +.. automodule:: pyvene.data_generators + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.data_generators.causal_model + diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.rst new file mode 100644 index 00000000..6b3e5e50 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2BaseModelOutput.rst @@ -0,0 +1,44 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2BaseModelOutput +================================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2BaseModelOutput + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2BaseModelOutput.__init__ + ~BackpackGPT2BaseModelOutput.clear + ~BackpackGPT2BaseModelOutput.copy + ~BackpackGPT2BaseModelOutput.fromkeys + ~BackpackGPT2BaseModelOutput.get + ~BackpackGPT2BaseModelOutput.items + ~BackpackGPT2BaseModelOutput.keys + ~BackpackGPT2BaseModelOutput.move_to_end + ~BackpackGPT2BaseModelOutput.pop + ~BackpackGPT2BaseModelOutput.popitem + ~BackpackGPT2BaseModelOutput.setdefault + ~BackpackGPT2BaseModelOutput.to_tuple + ~BackpackGPT2BaseModelOutput.update + ~BackpackGPT2BaseModelOutput.values + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2BaseModelOutput.contextualization + ~BackpackGPT2BaseModelOutput.hidden_states + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.rst new file mode 100644 index 00000000..9d67e349 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Config.rst @@ -0,0 +1,50 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2Config +========================================================================= + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2Config + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2Config.__init__ + ~BackpackGPT2Config.dict_torch_dtype_to_str + ~BackpackGPT2Config.from_dict + ~BackpackGPT2Config.from_json_file + ~BackpackGPT2Config.from_pretrained + ~BackpackGPT2Config.get_config_dict + ~BackpackGPT2Config.push_to_hub + ~BackpackGPT2Config.register_for_auto_class + ~BackpackGPT2Config.save_pretrained + ~BackpackGPT2Config.to_dict + ~BackpackGPT2Config.to_diff_dict + ~BackpackGPT2Config.to_json_file + ~BackpackGPT2Config.to_json_string + ~BackpackGPT2Config.update + ~BackpackGPT2Config.update_from_string + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2Config.attribute_map + ~BackpackGPT2Config.is_composition + ~BackpackGPT2Config.keys_to_ignore_at_inference + ~BackpackGPT2Config.model_type + ~BackpackGPT2Config.name_or_path + ~BackpackGPT2Config.num_labels + ~BackpackGPT2Config.use_return_dict + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.rst new file mode 100644 index 00000000..369b8fea --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModel.rst @@ -0,0 +1,146 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2LMHeadModel +============================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2LMHeadModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2LMHeadModel.__init__ + ~BackpackGPT2LMHeadModel.active_adapter + ~BackpackGPT2LMHeadModel.active_adapters + ~BackpackGPT2LMHeadModel.add_adapter + ~BackpackGPT2LMHeadModel.add_memory_hooks + ~BackpackGPT2LMHeadModel.add_model_tags + ~BackpackGPT2LMHeadModel.add_module + ~BackpackGPT2LMHeadModel.apply + ~BackpackGPT2LMHeadModel.assisted_decoding + ~BackpackGPT2LMHeadModel.beam_sample + ~BackpackGPT2LMHeadModel.beam_search + ~BackpackGPT2LMHeadModel.bfloat16 + ~BackpackGPT2LMHeadModel.buffers + ~BackpackGPT2LMHeadModel.can_generate + ~BackpackGPT2LMHeadModel.children + ~BackpackGPT2LMHeadModel.compile + ~BackpackGPT2LMHeadModel.compute_transition_scores + ~BackpackGPT2LMHeadModel.constrained_beam_search + ~BackpackGPT2LMHeadModel.contrastive_search + ~BackpackGPT2LMHeadModel.cpu + ~BackpackGPT2LMHeadModel.create_extended_attention_mask_for_decoder + ~BackpackGPT2LMHeadModel.cuda + ~BackpackGPT2LMHeadModel.disable_adapters + ~BackpackGPT2LMHeadModel.disable_input_require_grads + ~BackpackGPT2LMHeadModel.double + ~BackpackGPT2LMHeadModel.enable_adapters + ~BackpackGPT2LMHeadModel.enable_input_require_grads + ~BackpackGPT2LMHeadModel.estimate_tokens + ~BackpackGPT2LMHeadModel.eval + ~BackpackGPT2LMHeadModel.extra_repr + ~BackpackGPT2LMHeadModel.float + ~BackpackGPT2LMHeadModel.floating_point_ops + ~BackpackGPT2LMHeadModel.forward + ~BackpackGPT2LMHeadModel.from_pretrained + ~BackpackGPT2LMHeadModel.generate + ~BackpackGPT2LMHeadModel.get_adapter_state_dict + ~BackpackGPT2LMHeadModel.get_buffer + ~BackpackGPT2LMHeadModel.get_extended_attention_mask + ~BackpackGPT2LMHeadModel.get_extra_state + ~BackpackGPT2LMHeadModel.get_head_mask + ~BackpackGPT2LMHeadModel.get_input_embeddings + ~BackpackGPT2LMHeadModel.get_lm_head + ~BackpackGPT2LMHeadModel.get_memory_footprint + ~BackpackGPT2LMHeadModel.get_output_embeddings + ~BackpackGPT2LMHeadModel.get_parameter + ~BackpackGPT2LMHeadModel.get_position_embeddings + ~BackpackGPT2LMHeadModel.get_submodule + ~BackpackGPT2LMHeadModel.gradient_checkpointing_disable + ~BackpackGPT2LMHeadModel.gradient_checkpointing_enable + ~BackpackGPT2LMHeadModel.greedy_search + ~BackpackGPT2LMHeadModel.group_beam_search + ~BackpackGPT2LMHeadModel.half + ~BackpackGPT2LMHeadModel.init_weights + ~BackpackGPT2LMHeadModel.invert_attention_mask + ~BackpackGPT2LMHeadModel.ipu + ~BackpackGPT2LMHeadModel.load_adapter + ~BackpackGPT2LMHeadModel.load_state_dict + ~BackpackGPT2LMHeadModel.load_tf_weights + ~BackpackGPT2LMHeadModel.modules + ~BackpackGPT2LMHeadModel.named_buffers + ~BackpackGPT2LMHeadModel.named_children + ~BackpackGPT2LMHeadModel.named_modules + ~BackpackGPT2LMHeadModel.named_parameters + ~BackpackGPT2LMHeadModel.num_parameters + ~BackpackGPT2LMHeadModel.parameters + ~BackpackGPT2LMHeadModel.post_init + ~BackpackGPT2LMHeadModel.prepare_inputs_for_generation + ~BackpackGPT2LMHeadModel.prune_heads + ~BackpackGPT2LMHeadModel.push_to_hub + ~BackpackGPT2LMHeadModel.register_backward_hook + ~BackpackGPT2LMHeadModel.register_buffer + ~BackpackGPT2LMHeadModel.register_for_auto_class + ~BackpackGPT2LMHeadModel.register_forward_hook + ~BackpackGPT2LMHeadModel.register_forward_pre_hook + ~BackpackGPT2LMHeadModel.register_full_backward_hook + ~BackpackGPT2LMHeadModel.register_full_backward_pre_hook + ~BackpackGPT2LMHeadModel.register_load_state_dict_post_hook + ~BackpackGPT2LMHeadModel.register_module + ~BackpackGPT2LMHeadModel.register_parameter + ~BackpackGPT2LMHeadModel.register_state_dict_pre_hook + ~BackpackGPT2LMHeadModel.requires_grad_ + ~BackpackGPT2LMHeadModel.reset_memory_hooks_state + ~BackpackGPT2LMHeadModel.resize_position_embeddings + ~BackpackGPT2LMHeadModel.resize_token_embeddings + ~BackpackGPT2LMHeadModel.retrieve_modules_from_names + ~BackpackGPT2LMHeadModel.reverse_bettertransformer + ~BackpackGPT2LMHeadModel.run_with_custom_contextualization + ~BackpackGPT2LMHeadModel.sample + ~BackpackGPT2LMHeadModel.save_pretrained + ~BackpackGPT2LMHeadModel.set_adapter + ~BackpackGPT2LMHeadModel.set_extra_state + ~BackpackGPT2LMHeadModel.set_input_embeddings + ~BackpackGPT2LMHeadModel.share_memory + ~BackpackGPT2LMHeadModel.state_dict + ~BackpackGPT2LMHeadModel.tie_weights + ~BackpackGPT2LMHeadModel.to + ~BackpackGPT2LMHeadModel.to_bettertransformer + ~BackpackGPT2LMHeadModel.to_empty + ~BackpackGPT2LMHeadModel.train + ~BackpackGPT2LMHeadModel.type + ~BackpackGPT2LMHeadModel.warn_if_padding_and_no_attention_mask + ~BackpackGPT2LMHeadModel.xpu + ~BackpackGPT2LMHeadModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2LMHeadModel.T_destination + ~BackpackGPT2LMHeadModel.base_model + ~BackpackGPT2LMHeadModel.base_model_prefix + ~BackpackGPT2LMHeadModel.call_super_init + ~BackpackGPT2LMHeadModel.device + ~BackpackGPT2LMHeadModel.dtype + ~BackpackGPT2LMHeadModel.dummy_inputs + ~BackpackGPT2LMHeadModel.dump_patches + ~BackpackGPT2LMHeadModel.framework + ~BackpackGPT2LMHeadModel.is_gradient_checkpointing + ~BackpackGPT2LMHeadModel.is_parallelizable + ~BackpackGPT2LMHeadModel.main_input_name + ~BackpackGPT2LMHeadModel.model_tags + ~BackpackGPT2LMHeadModel.supports_gradient_checkpointing + ~BackpackGPT2LMHeadModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.rst new file mode 100644 index 00000000..28be2980 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2LMHeadModelOutput.rst @@ -0,0 +1,44 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2LMHeadModelOutput +==================================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2LMHeadModelOutput + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2LMHeadModelOutput.__init__ + ~BackpackGPT2LMHeadModelOutput.clear + ~BackpackGPT2LMHeadModelOutput.copy + ~BackpackGPT2LMHeadModelOutput.fromkeys + ~BackpackGPT2LMHeadModelOutput.get + ~BackpackGPT2LMHeadModelOutput.items + ~BackpackGPT2LMHeadModelOutput.keys + ~BackpackGPT2LMHeadModelOutput.move_to_end + ~BackpackGPT2LMHeadModelOutput.pop + ~BackpackGPT2LMHeadModelOutput.popitem + ~BackpackGPT2LMHeadModelOutput.setdefault + ~BackpackGPT2LMHeadModelOutput.to_tuple + ~BackpackGPT2LMHeadModelOutput.update + ~BackpackGPT2LMHeadModelOutput.values + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2LMHeadModelOutput.contextualization + ~BackpackGPT2LMHeadModelOutput.logits + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.rst new file mode 100644 index 00000000..f6c11962 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2Model.rst @@ -0,0 +1,148 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2Model +======================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2Model + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2Model.__init__ + ~BackpackGPT2Model.active_adapter + ~BackpackGPT2Model.active_adapters + ~BackpackGPT2Model.add_adapter + ~BackpackGPT2Model.add_memory_hooks + ~BackpackGPT2Model.add_model_tags + ~BackpackGPT2Model.add_module + ~BackpackGPT2Model.apply + ~BackpackGPT2Model.assisted_decoding + ~BackpackGPT2Model.beam_sample + ~BackpackGPT2Model.beam_search + ~BackpackGPT2Model.bfloat16 + ~BackpackGPT2Model.buffers + ~BackpackGPT2Model.can_generate + ~BackpackGPT2Model.children + ~BackpackGPT2Model.compile + ~BackpackGPT2Model.compute_transition_scores + ~BackpackGPT2Model.constrained_beam_search + ~BackpackGPT2Model.contrastive_search + ~BackpackGPT2Model.cpu + ~BackpackGPT2Model.create_extended_attention_mask_for_decoder + ~BackpackGPT2Model.cuda + ~BackpackGPT2Model.disable_adapters + ~BackpackGPT2Model.disable_input_require_grads + ~BackpackGPT2Model.double + ~BackpackGPT2Model.enable_adapters + ~BackpackGPT2Model.enable_input_require_grads + ~BackpackGPT2Model.estimate_tokens + ~BackpackGPT2Model.eval + ~BackpackGPT2Model.extra_repr + ~BackpackGPT2Model.float + ~BackpackGPT2Model.floating_point_ops + ~BackpackGPT2Model.forward + ~BackpackGPT2Model.from_pretrained + ~BackpackGPT2Model.generate + ~BackpackGPT2Model.get_adapter_state_dict + ~BackpackGPT2Model.get_buffer + ~BackpackGPT2Model.get_extended_attention_mask + ~BackpackGPT2Model.get_extra_state + ~BackpackGPT2Model.get_head_mask + ~BackpackGPT2Model.get_input_embeddings + ~BackpackGPT2Model.get_memory_footprint + ~BackpackGPT2Model.get_num_senses + ~BackpackGPT2Model.get_output_embeddings + ~BackpackGPT2Model.get_parameter + ~BackpackGPT2Model.get_position_embeddings + ~BackpackGPT2Model.get_sense_network + ~BackpackGPT2Model.get_submodule + ~BackpackGPT2Model.get_word_embeddings + ~BackpackGPT2Model.gradient_checkpointing_disable + ~BackpackGPT2Model.gradient_checkpointing_enable + ~BackpackGPT2Model.greedy_search + ~BackpackGPT2Model.group_beam_search + ~BackpackGPT2Model.half + ~BackpackGPT2Model.init_weights + ~BackpackGPT2Model.invert_attention_mask + ~BackpackGPT2Model.ipu + ~BackpackGPT2Model.load_adapter + ~BackpackGPT2Model.load_state_dict + ~BackpackGPT2Model.load_tf_weights + ~BackpackGPT2Model.modules + ~BackpackGPT2Model.named_buffers + ~BackpackGPT2Model.named_children + ~BackpackGPT2Model.named_modules + ~BackpackGPT2Model.named_parameters + ~BackpackGPT2Model.num_parameters + ~BackpackGPT2Model.parameters + ~BackpackGPT2Model.post_init + ~BackpackGPT2Model.prepare_inputs_for_generation + ~BackpackGPT2Model.prune_heads + ~BackpackGPT2Model.push_to_hub + ~BackpackGPT2Model.register_backward_hook + ~BackpackGPT2Model.register_buffer + ~BackpackGPT2Model.register_for_auto_class + ~BackpackGPT2Model.register_forward_hook + ~BackpackGPT2Model.register_forward_pre_hook + ~BackpackGPT2Model.register_full_backward_hook + ~BackpackGPT2Model.register_full_backward_pre_hook + ~BackpackGPT2Model.register_load_state_dict_post_hook + ~BackpackGPT2Model.register_module + ~BackpackGPT2Model.register_parameter + ~BackpackGPT2Model.register_state_dict_pre_hook + ~BackpackGPT2Model.requires_grad_ + ~BackpackGPT2Model.reset_memory_hooks_state + ~BackpackGPT2Model.resize_position_embeddings + ~BackpackGPT2Model.resize_token_embeddings + ~BackpackGPT2Model.retrieve_modules_from_names + ~BackpackGPT2Model.reverse_bettertransformer + ~BackpackGPT2Model.run_with_custom_contextualization + ~BackpackGPT2Model.sample + ~BackpackGPT2Model.save_pretrained + ~BackpackGPT2Model.set_adapter + ~BackpackGPT2Model.set_extra_state + ~BackpackGPT2Model.set_input_embeddings + ~BackpackGPT2Model.share_memory + ~BackpackGPT2Model.state_dict + ~BackpackGPT2Model.tie_weights + ~BackpackGPT2Model.to + ~BackpackGPT2Model.to_bettertransformer + ~BackpackGPT2Model.to_empty + ~BackpackGPT2Model.train + ~BackpackGPT2Model.type + ~BackpackGPT2Model.warn_if_padding_and_no_attention_mask + ~BackpackGPT2Model.xpu + ~BackpackGPT2Model.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2Model.T_destination + ~BackpackGPT2Model.base_model + ~BackpackGPT2Model.base_model_prefix + ~BackpackGPT2Model.call_super_init + ~BackpackGPT2Model.device + ~BackpackGPT2Model.dtype + ~BackpackGPT2Model.dummy_inputs + ~BackpackGPT2Model.dump_patches + ~BackpackGPT2Model.framework + ~BackpackGPT2Model.is_gradient_checkpointing + ~BackpackGPT2Model.is_parallelizable + ~BackpackGPT2Model.main_input_name + ~BackpackGPT2Model.model_tags + ~BackpackGPT2Model.supports_gradient_checkpointing + ~BackpackGPT2Model.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.rst new file mode 100644 index 00000000..70fde437 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackGPT2PreTrainedModel.rst @@ -0,0 +1,144 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackGPT2PreTrainedModel +================================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackGPT2PreTrainedModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackGPT2PreTrainedModel.__init__ + ~BackpackGPT2PreTrainedModel.active_adapter + ~BackpackGPT2PreTrainedModel.active_adapters + ~BackpackGPT2PreTrainedModel.add_adapter + ~BackpackGPT2PreTrainedModel.add_memory_hooks + ~BackpackGPT2PreTrainedModel.add_model_tags + ~BackpackGPT2PreTrainedModel.add_module + ~BackpackGPT2PreTrainedModel.apply + ~BackpackGPT2PreTrainedModel.assisted_decoding + ~BackpackGPT2PreTrainedModel.beam_sample + ~BackpackGPT2PreTrainedModel.beam_search + ~BackpackGPT2PreTrainedModel.bfloat16 + ~BackpackGPT2PreTrainedModel.buffers + ~BackpackGPT2PreTrainedModel.can_generate + ~BackpackGPT2PreTrainedModel.children + ~BackpackGPT2PreTrainedModel.compile + ~BackpackGPT2PreTrainedModel.compute_transition_scores + ~BackpackGPT2PreTrainedModel.constrained_beam_search + ~BackpackGPT2PreTrainedModel.contrastive_search + ~BackpackGPT2PreTrainedModel.cpu + ~BackpackGPT2PreTrainedModel.create_extended_attention_mask_for_decoder + ~BackpackGPT2PreTrainedModel.cuda + ~BackpackGPT2PreTrainedModel.disable_adapters + ~BackpackGPT2PreTrainedModel.disable_input_require_grads + ~BackpackGPT2PreTrainedModel.double + ~BackpackGPT2PreTrainedModel.enable_adapters + ~BackpackGPT2PreTrainedModel.enable_input_require_grads + ~BackpackGPT2PreTrainedModel.estimate_tokens + ~BackpackGPT2PreTrainedModel.eval + ~BackpackGPT2PreTrainedModel.extra_repr + ~BackpackGPT2PreTrainedModel.float + ~BackpackGPT2PreTrainedModel.floating_point_ops + ~BackpackGPT2PreTrainedModel.forward + ~BackpackGPT2PreTrainedModel.from_pretrained + ~BackpackGPT2PreTrainedModel.generate + ~BackpackGPT2PreTrainedModel.get_adapter_state_dict + ~BackpackGPT2PreTrainedModel.get_buffer + ~BackpackGPT2PreTrainedModel.get_extended_attention_mask + ~BackpackGPT2PreTrainedModel.get_extra_state + ~BackpackGPT2PreTrainedModel.get_head_mask + ~BackpackGPT2PreTrainedModel.get_input_embeddings + ~BackpackGPT2PreTrainedModel.get_memory_footprint + ~BackpackGPT2PreTrainedModel.get_output_embeddings + ~BackpackGPT2PreTrainedModel.get_parameter + ~BackpackGPT2PreTrainedModel.get_position_embeddings + ~BackpackGPT2PreTrainedModel.get_submodule + ~BackpackGPT2PreTrainedModel.gradient_checkpointing_disable + ~BackpackGPT2PreTrainedModel.gradient_checkpointing_enable + ~BackpackGPT2PreTrainedModel.greedy_search + ~BackpackGPT2PreTrainedModel.group_beam_search + ~BackpackGPT2PreTrainedModel.half + ~BackpackGPT2PreTrainedModel.init_weights + ~BackpackGPT2PreTrainedModel.invert_attention_mask + ~BackpackGPT2PreTrainedModel.ipu + ~BackpackGPT2PreTrainedModel.load_adapter + ~BackpackGPT2PreTrainedModel.load_state_dict + ~BackpackGPT2PreTrainedModel.load_tf_weights + ~BackpackGPT2PreTrainedModel.modules + ~BackpackGPT2PreTrainedModel.named_buffers + ~BackpackGPT2PreTrainedModel.named_children + ~BackpackGPT2PreTrainedModel.named_modules + ~BackpackGPT2PreTrainedModel.named_parameters + ~BackpackGPT2PreTrainedModel.num_parameters + ~BackpackGPT2PreTrainedModel.parameters + ~BackpackGPT2PreTrainedModel.post_init + ~BackpackGPT2PreTrainedModel.prepare_inputs_for_generation + ~BackpackGPT2PreTrainedModel.prune_heads + ~BackpackGPT2PreTrainedModel.push_to_hub + ~BackpackGPT2PreTrainedModel.register_backward_hook + ~BackpackGPT2PreTrainedModel.register_buffer + ~BackpackGPT2PreTrainedModel.register_for_auto_class + ~BackpackGPT2PreTrainedModel.register_forward_hook + ~BackpackGPT2PreTrainedModel.register_forward_pre_hook + ~BackpackGPT2PreTrainedModel.register_full_backward_hook + ~BackpackGPT2PreTrainedModel.register_full_backward_pre_hook + ~BackpackGPT2PreTrainedModel.register_load_state_dict_post_hook + ~BackpackGPT2PreTrainedModel.register_module + ~BackpackGPT2PreTrainedModel.register_parameter + ~BackpackGPT2PreTrainedModel.register_state_dict_pre_hook + ~BackpackGPT2PreTrainedModel.requires_grad_ + ~BackpackGPT2PreTrainedModel.reset_memory_hooks_state + ~BackpackGPT2PreTrainedModel.resize_position_embeddings + ~BackpackGPT2PreTrainedModel.resize_token_embeddings + ~BackpackGPT2PreTrainedModel.retrieve_modules_from_names + ~BackpackGPT2PreTrainedModel.reverse_bettertransformer + ~BackpackGPT2PreTrainedModel.sample + ~BackpackGPT2PreTrainedModel.save_pretrained + ~BackpackGPT2PreTrainedModel.set_adapter + ~BackpackGPT2PreTrainedModel.set_extra_state + ~BackpackGPT2PreTrainedModel.set_input_embeddings + ~BackpackGPT2PreTrainedModel.share_memory + ~BackpackGPT2PreTrainedModel.state_dict + ~BackpackGPT2PreTrainedModel.tie_weights + ~BackpackGPT2PreTrainedModel.to + ~BackpackGPT2PreTrainedModel.to_bettertransformer + ~BackpackGPT2PreTrainedModel.to_empty + ~BackpackGPT2PreTrainedModel.train + ~BackpackGPT2PreTrainedModel.type + ~BackpackGPT2PreTrainedModel.warn_if_padding_and_no_attention_mask + ~BackpackGPT2PreTrainedModel.xpu + ~BackpackGPT2PreTrainedModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackGPT2PreTrainedModel.T_destination + ~BackpackGPT2PreTrainedModel.base_model + ~BackpackGPT2PreTrainedModel.base_model_prefix + ~BackpackGPT2PreTrainedModel.call_super_init + ~BackpackGPT2PreTrainedModel.device + ~BackpackGPT2PreTrainedModel.dtype + ~BackpackGPT2PreTrainedModel.dummy_inputs + ~BackpackGPT2PreTrainedModel.dump_patches + ~BackpackGPT2PreTrainedModel.framework + ~BackpackGPT2PreTrainedModel.is_gradient_checkpointing + ~BackpackGPT2PreTrainedModel.is_parallelizable + ~BackpackGPT2PreTrainedModel.main_input_name + ~BackpackGPT2PreTrainedModel.model_tags + ~BackpackGPT2PreTrainedModel.supports_gradient_checkpointing + ~BackpackGPT2PreTrainedModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.rst new file mode 100644 index 00000000..548ac136 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackMLP.rst @@ -0,0 +1,79 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackMLP +================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackMLP + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackMLP.__init__ + ~BackpackMLP.add_module + ~BackpackMLP.apply + ~BackpackMLP.bfloat16 + ~BackpackMLP.buffers + ~BackpackMLP.children + ~BackpackMLP.compile + ~BackpackMLP.cpu + ~BackpackMLP.cuda + ~BackpackMLP.double + ~BackpackMLP.eval + ~BackpackMLP.extra_repr + ~BackpackMLP.float + ~BackpackMLP.forward + ~BackpackMLP.get_buffer + ~BackpackMLP.get_extra_state + ~BackpackMLP.get_parameter + ~BackpackMLP.get_submodule + ~BackpackMLP.half + ~BackpackMLP.ipu + ~BackpackMLP.load_state_dict + ~BackpackMLP.modules + ~BackpackMLP.named_buffers + ~BackpackMLP.named_children + ~BackpackMLP.named_modules + ~BackpackMLP.named_parameters + ~BackpackMLP.parameters + ~BackpackMLP.register_backward_hook + ~BackpackMLP.register_buffer + ~BackpackMLP.register_forward_hook + ~BackpackMLP.register_forward_pre_hook + ~BackpackMLP.register_full_backward_hook + ~BackpackMLP.register_full_backward_pre_hook + ~BackpackMLP.register_load_state_dict_post_hook + ~BackpackMLP.register_module + ~BackpackMLP.register_parameter + ~BackpackMLP.register_state_dict_pre_hook + ~BackpackMLP.requires_grad_ + ~BackpackMLP.set_extra_state + ~BackpackMLP.share_memory + ~BackpackMLP.state_dict + ~BackpackMLP.to + ~BackpackMLP.to_empty + ~BackpackMLP.train + ~BackpackMLP.type + ~BackpackMLP.xpu + ~BackpackMLP.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackMLP.T_destination + ~BackpackMLP.call_super_init + ~BackpackMLP.dump_patches + ~BackpackMLP.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.rst new file mode 100644 index 00000000..1c5f6ac1 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackNoMixBlock.rst @@ -0,0 +1,79 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackNoMixBlock +========================================================================= + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackNoMixBlock + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackNoMixBlock.__init__ + ~BackpackNoMixBlock.add_module + ~BackpackNoMixBlock.apply + ~BackpackNoMixBlock.bfloat16 + ~BackpackNoMixBlock.buffers + ~BackpackNoMixBlock.children + ~BackpackNoMixBlock.compile + ~BackpackNoMixBlock.cpu + ~BackpackNoMixBlock.cuda + ~BackpackNoMixBlock.double + ~BackpackNoMixBlock.eval + ~BackpackNoMixBlock.extra_repr + ~BackpackNoMixBlock.float + ~BackpackNoMixBlock.forward + ~BackpackNoMixBlock.get_buffer + ~BackpackNoMixBlock.get_extra_state + ~BackpackNoMixBlock.get_parameter + ~BackpackNoMixBlock.get_submodule + ~BackpackNoMixBlock.half + ~BackpackNoMixBlock.ipu + ~BackpackNoMixBlock.load_state_dict + ~BackpackNoMixBlock.modules + ~BackpackNoMixBlock.named_buffers + ~BackpackNoMixBlock.named_children + ~BackpackNoMixBlock.named_modules + ~BackpackNoMixBlock.named_parameters + ~BackpackNoMixBlock.parameters + ~BackpackNoMixBlock.register_backward_hook + ~BackpackNoMixBlock.register_buffer + ~BackpackNoMixBlock.register_forward_hook + ~BackpackNoMixBlock.register_forward_pre_hook + ~BackpackNoMixBlock.register_full_backward_hook + ~BackpackNoMixBlock.register_full_backward_pre_hook + ~BackpackNoMixBlock.register_load_state_dict_post_hook + ~BackpackNoMixBlock.register_module + ~BackpackNoMixBlock.register_parameter + ~BackpackNoMixBlock.register_state_dict_pre_hook + ~BackpackNoMixBlock.requires_grad_ + ~BackpackNoMixBlock.set_extra_state + ~BackpackNoMixBlock.share_memory + ~BackpackNoMixBlock.state_dict + ~BackpackNoMixBlock.to + ~BackpackNoMixBlock.to_empty + ~BackpackNoMixBlock.train + ~BackpackNoMixBlock.type + ~BackpackNoMixBlock.xpu + ~BackpackNoMixBlock.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackNoMixBlock.T_destination + ~BackpackNoMixBlock.call_super_init + ~BackpackNoMixBlock.dump_patches + ~BackpackNoMixBlock.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.rst new file mode 100644 index 00000000..e8cec9ff --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackSenseNetwork.rst @@ -0,0 +1,79 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackSenseNetwork +=========================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackSenseNetwork + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackSenseNetwork.__init__ + ~BackpackSenseNetwork.add_module + ~BackpackSenseNetwork.apply + ~BackpackSenseNetwork.bfloat16 + ~BackpackSenseNetwork.buffers + ~BackpackSenseNetwork.children + ~BackpackSenseNetwork.compile + ~BackpackSenseNetwork.cpu + ~BackpackSenseNetwork.cuda + ~BackpackSenseNetwork.double + ~BackpackSenseNetwork.eval + ~BackpackSenseNetwork.extra_repr + ~BackpackSenseNetwork.float + ~BackpackSenseNetwork.forward + ~BackpackSenseNetwork.get_buffer + ~BackpackSenseNetwork.get_extra_state + ~BackpackSenseNetwork.get_parameter + ~BackpackSenseNetwork.get_submodule + ~BackpackSenseNetwork.half + ~BackpackSenseNetwork.ipu + ~BackpackSenseNetwork.load_state_dict + ~BackpackSenseNetwork.modules + ~BackpackSenseNetwork.named_buffers + ~BackpackSenseNetwork.named_children + ~BackpackSenseNetwork.named_modules + ~BackpackSenseNetwork.named_parameters + ~BackpackSenseNetwork.parameters + ~BackpackSenseNetwork.register_backward_hook + ~BackpackSenseNetwork.register_buffer + ~BackpackSenseNetwork.register_forward_hook + ~BackpackSenseNetwork.register_forward_pre_hook + ~BackpackSenseNetwork.register_full_backward_hook + ~BackpackSenseNetwork.register_full_backward_pre_hook + ~BackpackSenseNetwork.register_load_state_dict_post_hook + ~BackpackSenseNetwork.register_module + ~BackpackSenseNetwork.register_parameter + ~BackpackSenseNetwork.register_state_dict_pre_hook + ~BackpackSenseNetwork.requires_grad_ + ~BackpackSenseNetwork.set_extra_state + ~BackpackSenseNetwork.share_memory + ~BackpackSenseNetwork.state_dict + ~BackpackSenseNetwork.to + ~BackpackSenseNetwork.to_empty + ~BackpackSenseNetwork.train + ~BackpackSenseNetwork.type + ~BackpackSenseNetwork.xpu + ~BackpackSenseNetwork.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackSenseNetwork.T_destination + ~BackpackSenseNetwork.call_super_init + ~BackpackSenseNetwork.dump_patches + ~BackpackSenseNetwork.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.rst new file mode 100644 index 00000000..667607fc --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.BackpackWeightNetwork.rst @@ -0,0 +1,79 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2.BackpackWeightNetwork +============================================================================ + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + +.. autoclass:: BackpackWeightNetwork + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BackpackWeightNetwork.__init__ + ~BackpackWeightNetwork.add_module + ~BackpackWeightNetwork.apply + ~BackpackWeightNetwork.bfloat16 + ~BackpackWeightNetwork.buffers + ~BackpackWeightNetwork.children + ~BackpackWeightNetwork.compile + ~BackpackWeightNetwork.cpu + ~BackpackWeightNetwork.cuda + ~BackpackWeightNetwork.double + ~BackpackWeightNetwork.eval + ~BackpackWeightNetwork.extra_repr + ~BackpackWeightNetwork.float + ~BackpackWeightNetwork.forward + ~BackpackWeightNetwork.get_buffer + ~BackpackWeightNetwork.get_extra_state + ~BackpackWeightNetwork.get_parameter + ~BackpackWeightNetwork.get_submodule + ~BackpackWeightNetwork.half + ~BackpackWeightNetwork.ipu + ~BackpackWeightNetwork.load_state_dict + ~BackpackWeightNetwork.modules + ~BackpackWeightNetwork.named_buffers + ~BackpackWeightNetwork.named_children + ~BackpackWeightNetwork.named_modules + ~BackpackWeightNetwork.named_parameters + ~BackpackWeightNetwork.parameters + ~BackpackWeightNetwork.register_backward_hook + ~BackpackWeightNetwork.register_buffer + ~BackpackWeightNetwork.register_forward_hook + ~BackpackWeightNetwork.register_forward_pre_hook + ~BackpackWeightNetwork.register_full_backward_hook + ~BackpackWeightNetwork.register_full_backward_pre_hook + ~BackpackWeightNetwork.register_load_state_dict_post_hook + ~BackpackWeightNetwork.register_module + ~BackpackWeightNetwork.register_parameter + ~BackpackWeightNetwork.register_state_dict_pre_hook + ~BackpackWeightNetwork.requires_grad_ + ~BackpackWeightNetwork.set_extra_state + ~BackpackWeightNetwork.share_memory + ~BackpackWeightNetwork.state_dict + ~BackpackWeightNetwork.to + ~BackpackWeightNetwork.to_empty + ~BackpackWeightNetwork.train + ~BackpackWeightNetwork.type + ~BackpackWeightNetwork.xpu + ~BackpackWeightNetwork.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BackpackWeightNetwork.T_destination + ~BackpackWeightNetwork.call_super_init + ~BackpackWeightNetwork.dump_patches + ~BackpackWeightNetwork.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.rst new file mode 100644 index 00000000..2262daf3 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_backpack_gpt2.rst @@ -0,0 +1,40 @@ +pyvene.models.backpack\_gpt2.modelings\_backpack\_gpt2 +====================================================== + +.. automodule:: pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + BackpackGPT2BaseModelOutput + BackpackGPT2Config + BackpackGPT2LMHeadModel + BackpackGPT2LMHeadModelOutput + BackpackGPT2Model + BackpackGPT2PreTrainedModel + BackpackMLP + BackpackNoMixBlock + BackpackSenseNetwork + BackpackWeightNetwork + + + + + + + + + diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.rst new file mode 100644 index 00000000..06dedebd --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.create_backpack_gpt2.rst @@ -0,0 +1,6 @@ +pyvene.models.backpack\_gpt2.modelings\_intervenable\_backpack\_gpt2.create\_backpack\_gpt2 +=========================================================================================== + +.. currentmodule:: pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2 + +.. autofunction:: create_backpack_gpt2 \ No newline at end of file diff --git a/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.rst b/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.rst new file mode 100644 index 00000000..1470fc28 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2.rst @@ -0,0 +1,30 @@ +pyvene.models.backpack\_gpt2.modelings\_intervenable\_backpack\_gpt2 +==================================================================== + +.. automodule:: pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2 + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_backpack_gpt2 + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.backpack_gpt2.rst b/_sources/api/pyvene.models.backpack_gpt2.rst new file mode 100644 index 00000000..2d3597d6 --- /dev/null +++ b/_sources/api/pyvene.models.backpack_gpt2.rst @@ -0,0 +1,33 @@ +pyvene.models.backpack\_gpt2 +============================ + +.. automodule:: pyvene.models.backpack_gpt2 + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.backpack_gpt2.modelings_backpack_gpt2 + pyvene.models.backpack_gpt2.modelings_intervenable_backpack_gpt2 + diff --git a/_sources/api/pyvene.models.basic_utils.GET_LOC.rst b/_sources/api/pyvene.models.basic_utils.GET_LOC.rst new file mode 100644 index 00000000..38001ddc --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.GET_LOC.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.GET\_LOC +=================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: GET_LOC \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.closeness_to_permutation_loss.rst b/_sources/api/pyvene.models.basic_utils.closeness_to_permutation_loss.rst new file mode 100644 index 00000000..3dc29beb --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.closeness_to_permutation_loss.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.closeness\_to\_permutation\_loss +=========================================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: closeness_to_permutation_loss \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.count_parameters.rst b/_sources/api/pyvene.models.basic_utils.count_parameters.rst new file mode 100644 index 00000000..55570529 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.count_parameters.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.count\_parameters +============================================ + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: count_parameters \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.create_directory.rst b/_sources/api/pyvene.models.basic_utils.create_directory.rst new file mode 100644 index 00000000..dc44a953 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.create_directory.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.create\_directory +============================================ + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: create_directory \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.embed_to_distrib.rst b/_sources/api/pyvene.models.basic_utils.embed_to_distrib.rst new file mode 100644 index 00000000..02e8d6f1 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.embed_to_distrib.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.embed\_to\_distrib +============================================= + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: embed_to_distrib \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.format_token.rst b/_sources/api/pyvene.models.basic_utils.format_token.rst new file mode 100644 index 00000000..89d5fe0a --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.format_token.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.format\_token +======================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: format_token \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.get_batch_size.rst b/_sources/api/pyvene.models.basic_utils.get_batch_size.rst new file mode 100644 index 00000000..668f8a9d --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.get_batch_size.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.get\_batch\_size +=========================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: get_batch_size \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.get_list_depth.rst b/_sources/api/pyvene.models.basic_utils.get_list_depth.rst new file mode 100644 index 00000000..d3b17b69 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.get_list_depth.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.get\_list\_depth +=========================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: get_list_depth \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.get_type_from_string.rst b/_sources/api/pyvene.models.basic_utils.get_type_from_string.rst new file mode 100644 index 00000000..42426ce6 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.get_type_from_string.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.get\_type\_from\_string +================================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: get_type_from_string \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.rst b/_sources/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.rst new file mode 100644 index 00000000..35b7f40f --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.harmonic_sigmoid_boundary.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.harmonic\_sigmoid\_boundary +====================================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: harmonic_sigmoid_boundary \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.random_permutation_matrix.rst b/_sources/api/pyvene.models.basic_utils.random_permutation_matrix.rst new file mode 100644 index 00000000..6c35fa54 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.random_permutation_matrix.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.random\_permutation\_matrix +====================================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: random_permutation_matrix \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.rst b/_sources/api/pyvene.models.basic_utils.rst new file mode 100644 index 00000000..3654a642 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.rst @@ -0,0 +1,43 @@ +pyvene.models.basic\_utils +========================== + +.. automodule:: pyvene.models.basic_utils + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + GET_LOC + closeness_to_permutation_loss + count_parameters + create_directory + embed_to_distrib + format_token + get_batch_size + get_list_depth + get_type_from_string + harmonic_sigmoid_boundary + random_permutation_matrix + set_seed + sigmoid_boundary + top_vals + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.basic_utils.set_seed.rst b/_sources/api/pyvene.models.basic_utils.set_seed.rst new file mode 100644 index 00000000..72e8184f --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.set_seed.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.set\_seed +==================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: set_seed \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.sigmoid_boundary.rst b/_sources/api/pyvene.models.basic_utils.sigmoid_boundary.rst new file mode 100644 index 00000000..6bc2c5c4 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.sigmoid_boundary.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.sigmoid\_boundary +============================================ + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: sigmoid_boundary \ No newline at end of file diff --git a/_sources/api/pyvene.models.basic_utils.top_vals.rst b/_sources/api/pyvene.models.basic_utils.top_vals.rst new file mode 100644 index 00000000..ad5adcb8 --- /dev/null +++ b/_sources/api/pyvene.models.basic_utils.top_vals.rst @@ -0,0 +1,6 @@ +pyvene.models.basic\_utils.top\_vals +==================================== + +.. currentmodule:: pyvene.models.basic_utils + +.. autofunction:: top_vals \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_blip.BlipWrapper.rst b/_sources/api/pyvene.models.blip.modelings_blip.BlipWrapper.rst new file mode 100644 index 00000000..f9343979 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_blip.BlipWrapper.rst @@ -0,0 +1,79 @@ +pyvene.models.blip.modelings\_blip.BlipWrapper +============================================== + +.. currentmodule:: pyvene.models.blip.modelings_blip + +.. autoclass:: BlipWrapper + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BlipWrapper.__init__ + ~BlipWrapper.add_module + ~BlipWrapper.apply + ~BlipWrapper.bfloat16 + ~BlipWrapper.buffers + ~BlipWrapper.children + ~BlipWrapper.compile + ~BlipWrapper.cpu + ~BlipWrapper.cuda + ~BlipWrapper.double + ~BlipWrapper.eval + ~BlipWrapper.extra_repr + ~BlipWrapper.float + ~BlipWrapper.forward + ~BlipWrapper.get_buffer + ~BlipWrapper.get_extra_state + ~BlipWrapper.get_parameter + ~BlipWrapper.get_submodule + ~BlipWrapper.half + ~BlipWrapper.ipu + ~BlipWrapper.load_state_dict + ~BlipWrapper.modules + ~BlipWrapper.named_buffers + ~BlipWrapper.named_children + ~BlipWrapper.named_modules + ~BlipWrapper.named_parameters + ~BlipWrapper.parameters + ~BlipWrapper.register_backward_hook + ~BlipWrapper.register_buffer + ~BlipWrapper.register_forward_hook + ~BlipWrapper.register_forward_pre_hook + ~BlipWrapper.register_full_backward_hook + ~BlipWrapper.register_full_backward_pre_hook + ~BlipWrapper.register_load_state_dict_post_hook + ~BlipWrapper.register_module + ~BlipWrapper.register_parameter + ~BlipWrapper.register_state_dict_pre_hook + ~BlipWrapper.requires_grad_ + ~BlipWrapper.set_extra_state + ~BlipWrapper.share_memory + ~BlipWrapper.state_dict + ~BlipWrapper.to + ~BlipWrapper.to_empty + ~BlipWrapper.train + ~BlipWrapper.type + ~BlipWrapper.xpu + ~BlipWrapper.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BlipWrapper.T_destination + ~BlipWrapper.call_super_init + ~BlipWrapper.dump_patches + ~BlipWrapper.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_blip.rst b/_sources/api/pyvene.models.blip.modelings_blip.rst new file mode 100644 index 00000000..d479b32a --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_blip.rst @@ -0,0 +1,31 @@ +pyvene.models.blip.modelings\_blip +================================== + +.. automodule:: pyvene.models.blip.modelings_blip + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + BlipWrapper + + + + + + + + + diff --git a/_sources/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.rst b/_sources/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.rst new file mode 100644 index 00000000..8983c37f --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_blip_itm.BlipITMWrapper.rst @@ -0,0 +1,79 @@ +pyvene.models.blip.modelings\_blip\_itm.BlipITMWrapper +====================================================== + +.. currentmodule:: pyvene.models.blip.modelings_blip_itm + +.. autoclass:: BlipITMWrapper + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BlipITMWrapper.__init__ + ~BlipITMWrapper.add_module + ~BlipITMWrapper.apply + ~BlipITMWrapper.bfloat16 + ~BlipITMWrapper.buffers + ~BlipITMWrapper.children + ~BlipITMWrapper.compile + ~BlipITMWrapper.cpu + ~BlipITMWrapper.cuda + ~BlipITMWrapper.double + ~BlipITMWrapper.eval + ~BlipITMWrapper.extra_repr + ~BlipITMWrapper.float + ~BlipITMWrapper.forward + ~BlipITMWrapper.get_buffer + ~BlipITMWrapper.get_extra_state + ~BlipITMWrapper.get_parameter + ~BlipITMWrapper.get_submodule + ~BlipITMWrapper.half + ~BlipITMWrapper.ipu + ~BlipITMWrapper.load_state_dict + ~BlipITMWrapper.modules + ~BlipITMWrapper.named_buffers + ~BlipITMWrapper.named_children + ~BlipITMWrapper.named_modules + ~BlipITMWrapper.named_parameters + ~BlipITMWrapper.parameters + ~BlipITMWrapper.register_backward_hook + ~BlipITMWrapper.register_buffer + ~BlipITMWrapper.register_forward_hook + ~BlipITMWrapper.register_forward_pre_hook + ~BlipITMWrapper.register_full_backward_hook + ~BlipITMWrapper.register_full_backward_pre_hook + ~BlipITMWrapper.register_load_state_dict_post_hook + ~BlipITMWrapper.register_module + ~BlipITMWrapper.register_parameter + ~BlipITMWrapper.register_state_dict_pre_hook + ~BlipITMWrapper.requires_grad_ + ~BlipITMWrapper.set_extra_state + ~BlipITMWrapper.share_memory + ~BlipITMWrapper.state_dict + ~BlipITMWrapper.to + ~BlipITMWrapper.to_empty + ~BlipITMWrapper.train + ~BlipITMWrapper.type + ~BlipITMWrapper.xpu + ~BlipITMWrapper.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BlipITMWrapper.T_destination + ~BlipITMWrapper.call_super_init + ~BlipITMWrapper.dump_patches + ~BlipITMWrapper.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_blip_itm.rst b/_sources/api/pyvene.models.blip.modelings_blip_itm.rst new file mode 100644 index 00000000..c5f5d5b3 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_blip_itm.rst @@ -0,0 +1,31 @@ +pyvene.models.blip.modelings\_blip\_itm +======================================= + +.. automodule:: pyvene.models.blip.modelings_blip_itm + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + BlipITMWrapper + + + + + + + + + diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.rst new file mode 100644 index 00000000..e0ecba3e --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.blip_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.blip.modelings\_intervenable\_blip.blip\_type\_to\_dimension\_mapping +=================================================================================== + +.. currentmodule:: pyvene.models.blip.modelings_intervenable_blip + +.. autodata:: blip_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.rst new file mode 100644 index 00000000..97077303 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.create_blip.rst @@ -0,0 +1,6 @@ +pyvene.models.blip.modelings\_intervenable\_blip.create\_blip +============================================================= + +.. currentmodule:: pyvene.models.blip.modelings_intervenable_blip + +.. autofunction:: create_blip \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.rst new file mode 100644 index 00000000..f2cea346 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip.rst @@ -0,0 +1,37 @@ +pyvene.models.blip.modelings\_intervenable\_blip +================================================ + +.. automodule:: pyvene.models.blip.modelings_intervenable_blip + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + blip_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_blip + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.rst new file mode 100644 index 00000000..c49eced7 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.blip_itm_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.blip.modelings\_intervenable\_blip\_itm.blip\_itm\_type\_to\_dimension\_mapping +============================================================================================= + +.. currentmodule:: pyvene.models.blip.modelings_intervenable_blip_itm + +.. autodata:: blip_itm_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.rst new file mode 100644 index 00000000..09eaaa77 --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.create_blip_itm.rst @@ -0,0 +1,6 @@ +pyvene.models.blip.modelings\_intervenable\_blip\_itm.create\_blip\_itm +======================================================================= + +.. currentmodule:: pyvene.models.blip.modelings_intervenable_blip_itm + +.. autofunction:: create_blip_itm \ No newline at end of file diff --git a/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.rst b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.rst new file mode 100644 index 00000000..738bcc4f --- /dev/null +++ b/_sources/api/pyvene.models.blip.modelings_intervenable_blip_itm.rst @@ -0,0 +1,37 @@ +pyvene.models.blip.modelings\_intervenable\_blip\_itm +===================================================== + +.. automodule:: pyvene.models.blip.modelings_intervenable_blip_itm + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + blip_itm_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_blip_itm + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.blip.rst b/_sources/api/pyvene.models.blip.rst new file mode 100644 index 00000000..025d3866 --- /dev/null +++ b/_sources/api/pyvene.models.blip.rst @@ -0,0 +1,35 @@ +pyvene.models.blip +================== + +.. automodule:: pyvene.models.blip + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.blip.modelings_blip + pyvene.models.blip.modelings_blip_itm + pyvene.models.blip.modelings_intervenable_blip + pyvene.models.blip.modelings_intervenable_blip_itm + diff --git a/_sources/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.rst b/_sources/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.rst new file mode 100644 index 00000000..3a7ae9c8 --- /dev/null +++ b/_sources/api/pyvene.models.configuration_intervenable_model.IntervenableConfig.rst @@ -0,0 +1,50 @@ +pyvene.models.configuration\_intervenable\_model.IntervenableConfig +=================================================================== + +.. currentmodule:: pyvene.models.configuration_intervenable_model + +.. autoclass:: IntervenableConfig + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~IntervenableConfig.__init__ + ~IntervenableConfig.add_intervention + ~IntervenableConfig.dict_torch_dtype_to_str + ~IntervenableConfig.from_dict + ~IntervenableConfig.from_json_file + ~IntervenableConfig.from_pretrained + ~IntervenableConfig.get_config_dict + ~IntervenableConfig.push_to_hub + ~IntervenableConfig.register_for_auto_class + ~IntervenableConfig.save_pretrained + ~IntervenableConfig.to_dict + ~IntervenableConfig.to_diff_dict + ~IntervenableConfig.to_json_file + ~IntervenableConfig.to_json_string + ~IntervenableConfig.update + ~IntervenableConfig.update_from_string + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~IntervenableConfig.attribute_map + ~IntervenableConfig.is_composition + ~IntervenableConfig.model_type + ~IntervenableConfig.name_or_path + ~IntervenableConfig.num_labels + ~IntervenableConfig.use_return_dict + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.rst b/_sources/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.rst new file mode 100644 index 00000000..d1cdc46a --- /dev/null +++ b/_sources/api/pyvene.models.configuration_intervenable_model.RepresentationConfig.rst @@ -0,0 +1,45 @@ +pyvene.models.configuration\_intervenable\_model.RepresentationConfig +===================================================================== + +.. currentmodule:: pyvene.models.configuration_intervenable_model + +.. autoclass:: RepresentationConfig + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~RepresentationConfig.__init__ + ~RepresentationConfig.count + ~RepresentationConfig.index + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~RepresentationConfig.component + ~RepresentationConfig.group_key + ~RepresentationConfig.hidden_source_representation + ~RepresentationConfig.intervention + ~RepresentationConfig.intervention_link_key + ~RepresentationConfig.intervention_type + ~RepresentationConfig.latent_dim + ~RepresentationConfig.layer + ~RepresentationConfig.low_rank_dimension + ~RepresentationConfig.max_number_of_units + ~RepresentationConfig.moe_key + ~RepresentationConfig.source_representation + ~RepresentationConfig.subspace_partition + ~RepresentationConfig.unit + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.configuration_intervenable_model.rst b/_sources/api/pyvene.models.configuration_intervenable_model.rst new file mode 100644 index 00000000..92fe9436 --- /dev/null +++ b/_sources/api/pyvene.models.configuration_intervenable_model.rst @@ -0,0 +1,32 @@ +pyvene.models.configuration\_intervenable\_model +================================================ + +.. automodule:: pyvene.models.configuration_intervenable_model + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + IntervenableConfig + RepresentationConfig + + + + + + + + + diff --git a/_sources/api/pyvene.models.constants.rst b/_sources/api/pyvene.models.constants.rst new file mode 100644 index 00000000..27e4cf32 --- /dev/null +++ b/_sources/api/pyvene.models.constants.rst @@ -0,0 +1,34 @@ +pyvene.models.constants +======================= + +.. automodule:: pyvene.models.constants + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + split_and_select + split_half + split_head_and_permute + split_heads + split_three + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.constants.split_and_select.rst b/_sources/api/pyvene.models.constants.split_and_select.rst new file mode 100644 index 00000000..7c4a79b0 --- /dev/null +++ b/_sources/api/pyvene.models.constants.split_and_select.rst @@ -0,0 +1,6 @@ +pyvene.models.constants.split\_and\_select +========================================== + +.. currentmodule:: pyvene.models.constants + +.. autofunction:: split_and_select \ No newline at end of file diff --git a/_sources/api/pyvene.models.constants.split_half.rst b/_sources/api/pyvene.models.constants.split_half.rst new file mode 100644 index 00000000..3f0a150c --- /dev/null +++ b/_sources/api/pyvene.models.constants.split_half.rst @@ -0,0 +1,6 @@ +pyvene.models.constants.split\_half +=================================== + +.. currentmodule:: pyvene.models.constants + +.. autofunction:: split_half \ No newline at end of file diff --git a/_sources/api/pyvene.models.constants.split_head_and_permute.rst b/_sources/api/pyvene.models.constants.split_head_and_permute.rst new file mode 100644 index 00000000..edc42b86 --- /dev/null +++ b/_sources/api/pyvene.models.constants.split_head_and_permute.rst @@ -0,0 +1,6 @@ +pyvene.models.constants.split\_head\_and\_permute +================================================= + +.. currentmodule:: pyvene.models.constants + +.. autofunction:: split_head_and_permute \ No newline at end of file diff --git a/_sources/api/pyvene.models.constants.split_heads.rst b/_sources/api/pyvene.models.constants.split_heads.rst new file mode 100644 index 00000000..43cd160e --- /dev/null +++ b/_sources/api/pyvene.models.constants.split_heads.rst @@ -0,0 +1,6 @@ +pyvene.models.constants.split\_heads +==================================== + +.. currentmodule:: pyvene.models.constants + +.. autofunction:: split_heads \ No newline at end of file diff --git a/_sources/api/pyvene.models.constants.split_three.rst b/_sources/api/pyvene.models.constants.split_three.rst new file mode 100644 index 00000000..aef73fb1 --- /dev/null +++ b/_sources/api/pyvene.models.constants.split_three.rst @@ -0,0 +1,6 @@ +pyvene.models.constants.split\_three +==================================== + +.. currentmodule:: pyvene.models.constants + +.. autofunction:: split_three \ No newline at end of file diff --git a/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.rst b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.rst new file mode 100644 index 00000000..fbbde871 --- /dev/null +++ b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.create_gemma.rst @@ -0,0 +1,6 @@ +pyvene.models.gemma.modelings\_intervenable\_gemma.create\_gemma +================================================================ + +.. currentmodule:: pyvene.models.gemma.modelings_intervenable_gemma + +.. autofunction:: create_gemma \ No newline at end of file diff --git a/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.rst new file mode 100644 index 00000000..8a862dc3 --- /dev/null +++ b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_lm_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gemma.modelings\_intervenable\_gemma.gemma\_lm\_type\_to\_dimension\_mapping +========================================================================================== + +.. currentmodule:: pyvene.models.gemma.modelings_intervenable_gemma + +.. autodata:: gemma_lm_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.rst new file mode 100644 index 00000000..232d3c7e --- /dev/null +++ b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.gemma_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gemma.modelings\_intervenable\_gemma.gemma\_type\_to\_dimension\_mapping +====================================================================================== + +.. currentmodule:: pyvene.models.gemma.modelings_intervenable_gemma + +.. autodata:: gemma_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.rst b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.rst new file mode 100644 index 00000000..79642efc --- /dev/null +++ b/_sources/api/pyvene.models.gemma.modelings_intervenable_gemma.rst @@ -0,0 +1,38 @@ +pyvene.models.gemma.modelings\_intervenable\_gemma +================================================== + +.. automodule:: pyvene.models.gemma.modelings_intervenable_gemma + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + gemma_type_to_dimension_mapping + gemma_lm_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_gemma + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.gemma.rst b/_sources/api/pyvene.models.gemma.rst new file mode 100644 index 00000000..ac28cea9 --- /dev/null +++ b/_sources/api/pyvene.models.gemma.rst @@ -0,0 +1,32 @@ +pyvene.models.gemma +=================== + +.. automodule:: pyvene.models.gemma + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.gemma.modelings_intervenable_gemma + diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.rst new file mode 100644 index 00000000..89252b17 --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2.create\_gpt2 +============================================================= + +.. currentmodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + +.. autofunction:: create_gpt2 \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.rst new file mode 100644 index 00000000..569d8804 --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_classifier.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2.create\_gpt2\_classifier +========================================================================= + +.. currentmodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + +.. autofunction:: create_gpt2_classifier \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.rst new file mode 100644 index 00000000..63b574da --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.create_gpt2_lm.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2.create\_gpt2\_lm +================================================================= + +.. currentmodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + +.. autofunction:: create_gpt2_lm \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.rst new file mode 100644 index 00000000..fd734a4e --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_lm_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2.gpt2\_lm\_type\_to\_dimension\_mapping +======================================================================================= + +.. currentmodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + +.. autodata:: gpt2_lm_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.rst new file mode 100644 index 00000000..cd0e6773 --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.gpt2_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2.gpt2\_type\_to\_dimension\_mapping +=================================================================================== + +.. currentmodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + +.. autodata:: gpt2_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.rst b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.rst new file mode 100644 index 00000000..75178e60 --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.modelings_intervenable_gpt2.rst @@ -0,0 +1,40 @@ +pyvene.models.gpt2.modelings\_intervenable\_gpt2 +================================================ + +.. automodule:: pyvene.models.gpt2.modelings_intervenable_gpt2 + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + gpt2_type_to_dimension_mapping + gpt2_lm_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_gpt2 + create_gpt2_classifier + create_gpt2_lm + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.gpt2.rst b/_sources/api/pyvene.models.gpt2.rst new file mode 100644 index 00000000..949ae210 --- /dev/null +++ b/_sources/api/pyvene.models.gpt2.rst @@ -0,0 +1,32 @@ +pyvene.models.gpt2 +================== + +.. automodule:: pyvene.models.gpt2 + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.gpt2.modelings_intervenable_gpt2 + diff --git a/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.rst b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.rst new file mode 100644 index 00000000..e40131e0 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.create_gpt_neo.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt\_neo.modelings\_intervenable\_gpt\_neo.create\_gpt\_neo +========================================================================= + +.. currentmodule:: pyvene.models.gpt_neo.modelings_intervenable_gpt_neo + +.. autofunction:: create_gpt_neo \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.rst new file mode 100644 index 00000000..c072eda6 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.gpt_neo_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt\_neo.modelings\_intervenable\_gpt\_neo.gpt\_neo\_type\_to\_dimension\_mapping +=============================================================================================== + +.. currentmodule:: pyvene.models.gpt_neo.modelings_intervenable_gpt_neo + +.. autodata:: gpt_neo_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.rst b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.rst new file mode 100644 index 00000000..50f0bc10 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neo.modelings_intervenable_gpt_neo.rst @@ -0,0 +1,37 @@ +pyvene.models.gpt\_neo.modelings\_intervenable\_gpt\_neo +======================================================== + +.. automodule:: pyvene.models.gpt_neo.modelings_intervenable_gpt_neo + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + gpt_neo_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_gpt_neo + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.gpt_neo.rst b/_sources/api/pyvene.models.gpt_neo.rst new file mode 100644 index 00000000..6dea1450 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neo.rst @@ -0,0 +1,32 @@ +pyvene.models.gpt\_neo +====================== + +.. automodule:: pyvene.models.gpt_neo + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.gpt_neo.modelings_intervenable_gpt_neo + diff --git a/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.rst b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.rst new file mode 100644 index 00000000..3d10a922 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.create_gpt_neox.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt\_neox.modelings\_intervenable\_gpt\_neox.create\_gpt\_neox +============================================================================ + +.. currentmodule:: pyvene.models.gpt_neox.modelings_intervenable_gpt_neox + +.. autofunction:: create_gpt_neox \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.rst new file mode 100644 index 00000000..7ab3ba74 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.gpt_neox_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gpt\_neox.modelings\_intervenable\_gpt\_neox.gpt\_neox\_type\_to\_dimension\_mapping +================================================================================================== + +.. currentmodule:: pyvene.models.gpt_neox.modelings_intervenable_gpt_neox + +.. autodata:: gpt_neox_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.rst b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.rst new file mode 100644 index 00000000..7c26c3e8 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neox.modelings_intervenable_gpt_neox.rst @@ -0,0 +1,37 @@ +pyvene.models.gpt\_neox.modelings\_intervenable\_gpt\_neox +========================================================== + +.. automodule:: pyvene.models.gpt_neox.modelings_intervenable_gpt_neox + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + gpt_neox_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_gpt_neox + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.gpt_neox.rst b/_sources/api/pyvene.models.gpt_neox.rst new file mode 100644 index 00000000..d45c6ce3 --- /dev/null +++ b/_sources/api/pyvene.models.gpt_neox.rst @@ -0,0 +1,32 @@ +pyvene.models.gpt\_neox +======================= + +.. automodule:: pyvene.models.gpt_neox + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.gpt_neox.modelings_intervenable_gpt_neox + diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUCell.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUCell.rst new file mode 100644 index 00000000..4a899c7d --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUCell.rst @@ -0,0 +1,80 @@ +pyvene.models.gru.modelings\_gru.GRUCell +======================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUCell + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUCell.__init__ + ~GRUCell.add_module + ~GRUCell.apply + ~GRUCell.bfloat16 + ~GRUCell.buffers + ~GRUCell.children + ~GRUCell.compile + ~GRUCell.cpu + ~GRUCell.cuda + ~GRUCell.double + ~GRUCell.eval + ~GRUCell.extra_repr + ~GRUCell.float + ~GRUCell.forward + ~GRUCell.get_buffer + ~GRUCell.get_extra_state + ~GRUCell.get_parameter + ~GRUCell.get_submodule + ~GRUCell.half + ~GRUCell.ipu + ~GRUCell.load_state_dict + ~GRUCell.modules + ~GRUCell.named_buffers + ~GRUCell.named_children + ~GRUCell.named_modules + ~GRUCell.named_parameters + ~GRUCell.parameters + ~GRUCell.register_backward_hook + ~GRUCell.register_buffer + ~GRUCell.register_forward_hook + ~GRUCell.register_forward_pre_hook + ~GRUCell.register_full_backward_hook + ~GRUCell.register_full_backward_pre_hook + ~GRUCell.register_load_state_dict_post_hook + ~GRUCell.register_module + ~GRUCell.register_parameter + ~GRUCell.register_state_dict_pre_hook + ~GRUCell.requires_grad_ + ~GRUCell.reset_parameters + ~GRUCell.set_extra_state + ~GRUCell.share_memory + ~GRUCell.state_dict + ~GRUCell.to + ~GRUCell.to_empty + ~GRUCell.train + ~GRUCell.type + ~GRUCell.xpu + ~GRUCell.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUCell.T_destination + ~GRUCell.call_super_init + ~GRUCell.dump_patches + ~GRUCell.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUConfig.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUConfig.rst new file mode 100644 index 00000000..ba42bcf6 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUConfig.rst @@ -0,0 +1,49 @@ +pyvene.models.gru.modelings\_gru.GRUConfig +========================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUConfig + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUConfig.__init__ + ~GRUConfig.dict_torch_dtype_to_str + ~GRUConfig.from_dict + ~GRUConfig.from_json_file + ~GRUConfig.from_pretrained + ~GRUConfig.get_config_dict + ~GRUConfig.push_to_hub + ~GRUConfig.register_for_auto_class + ~GRUConfig.save_pretrained + ~GRUConfig.to_dict + ~GRUConfig.to_diff_dict + ~GRUConfig.to_json_file + ~GRUConfig.to_json_string + ~GRUConfig.update + ~GRUConfig.update_from_string + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUConfig.attribute_map + ~GRUConfig.is_composition + ~GRUConfig.model_type + ~GRUConfig.name_or_path + ~GRUConfig.num_labels + ~GRUConfig.use_return_dict + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUForClassification.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUForClassification.rst new file mode 100644 index 00000000..056a807d --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUForClassification.rst @@ -0,0 +1,144 @@ +pyvene.models.gru.modelings\_gru.GRUForClassification +===================================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUForClassification + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUForClassification.__init__ + ~GRUForClassification.active_adapter + ~GRUForClassification.active_adapters + ~GRUForClassification.add_adapter + ~GRUForClassification.add_memory_hooks + ~GRUForClassification.add_model_tags + ~GRUForClassification.add_module + ~GRUForClassification.apply + ~GRUForClassification.assisted_decoding + ~GRUForClassification.beam_sample + ~GRUForClassification.beam_search + ~GRUForClassification.bfloat16 + ~GRUForClassification.buffers + ~GRUForClassification.can_generate + ~GRUForClassification.children + ~GRUForClassification.compile + ~GRUForClassification.compute_transition_scores + ~GRUForClassification.constrained_beam_search + ~GRUForClassification.contrastive_search + ~GRUForClassification.cpu + ~GRUForClassification.create_extended_attention_mask_for_decoder + ~GRUForClassification.cuda + ~GRUForClassification.disable_adapters + ~GRUForClassification.disable_input_require_grads + ~GRUForClassification.double + ~GRUForClassification.enable_adapters + ~GRUForClassification.enable_input_require_grads + ~GRUForClassification.estimate_tokens + ~GRUForClassification.eval + ~GRUForClassification.extra_repr + ~GRUForClassification.float + ~GRUForClassification.floating_point_ops + ~GRUForClassification.forward + ~GRUForClassification.from_pretrained + ~GRUForClassification.generate + ~GRUForClassification.get_adapter_state_dict + ~GRUForClassification.get_buffer + ~GRUForClassification.get_extended_attention_mask + ~GRUForClassification.get_extra_state + ~GRUForClassification.get_head_mask + ~GRUForClassification.get_input_embeddings + ~GRUForClassification.get_memory_footprint + ~GRUForClassification.get_output_embeddings + ~GRUForClassification.get_parameter + ~GRUForClassification.get_position_embeddings + ~GRUForClassification.get_submodule + ~GRUForClassification.gradient_checkpointing_disable + ~GRUForClassification.gradient_checkpointing_enable + ~GRUForClassification.greedy_search + ~GRUForClassification.group_beam_search + ~GRUForClassification.half + ~GRUForClassification.init_weights + ~GRUForClassification.invert_attention_mask + ~GRUForClassification.ipu + ~GRUForClassification.load_adapter + ~GRUForClassification.load_state_dict + ~GRUForClassification.modules + ~GRUForClassification.named_buffers + ~GRUForClassification.named_children + ~GRUForClassification.named_modules + ~GRUForClassification.named_parameters + ~GRUForClassification.num_parameters + ~GRUForClassification.parameters + ~GRUForClassification.post_init + ~GRUForClassification.prepare_inputs_for_generation + ~GRUForClassification.prune_heads + ~GRUForClassification.push_to_hub + ~GRUForClassification.register_backward_hook + ~GRUForClassification.register_buffer + ~GRUForClassification.register_for_auto_class + ~GRUForClassification.register_forward_hook + ~GRUForClassification.register_forward_pre_hook + ~GRUForClassification.register_full_backward_hook + ~GRUForClassification.register_full_backward_pre_hook + ~GRUForClassification.register_load_state_dict_post_hook + ~GRUForClassification.register_module + ~GRUForClassification.register_parameter + ~GRUForClassification.register_state_dict_pre_hook + ~GRUForClassification.requires_grad_ + ~GRUForClassification.reset_memory_hooks_state + ~GRUForClassification.resize_position_embeddings + ~GRUForClassification.resize_token_embeddings + ~GRUForClassification.retrieve_modules_from_names + ~GRUForClassification.reverse_bettertransformer + ~GRUForClassification.sample + ~GRUForClassification.save_pretrained + ~GRUForClassification.set_adapter + ~GRUForClassification.set_extra_state + ~GRUForClassification.set_input_embeddings + ~GRUForClassification.share_memory + ~GRUForClassification.state_dict + ~GRUForClassification.tie_weights + ~GRUForClassification.to + ~GRUForClassification.to_bettertransformer + ~GRUForClassification.to_empty + ~GRUForClassification.train + ~GRUForClassification.type + ~GRUForClassification.warn_if_padding_and_no_attention_mask + ~GRUForClassification.xpu + ~GRUForClassification.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUForClassification.T_destination + ~GRUForClassification.base_model + ~GRUForClassification.base_model_prefix + ~GRUForClassification.call_super_init + ~GRUForClassification.config_class + ~GRUForClassification.device + ~GRUForClassification.dtype + ~GRUForClassification.dummy_inputs + ~GRUForClassification.dump_patches + ~GRUForClassification.framework + ~GRUForClassification.is_gradient_checkpointing + ~GRUForClassification.is_parallelizable + ~GRUForClassification.main_input_name + ~GRUForClassification.model_tags + ~GRUForClassification.supports_gradient_checkpointing + ~GRUForClassification.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.rst new file mode 100644 index 00000000..40e87d31 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRULMHeadModel.rst @@ -0,0 +1,145 @@ +pyvene.models.gru.modelings\_gru.GRULMHeadModel +=============================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRULMHeadModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRULMHeadModel.__init__ + ~GRULMHeadModel.active_adapter + ~GRULMHeadModel.active_adapters + ~GRULMHeadModel.add_adapter + ~GRULMHeadModel.add_memory_hooks + ~GRULMHeadModel.add_model_tags + ~GRULMHeadModel.add_module + ~GRULMHeadModel.apply + ~GRULMHeadModel.assisted_decoding + ~GRULMHeadModel.beam_sample + ~GRULMHeadModel.beam_search + ~GRULMHeadModel.bfloat16 + ~GRULMHeadModel.buffers + ~GRULMHeadModel.can_generate + ~GRULMHeadModel.children + ~GRULMHeadModel.compile + ~GRULMHeadModel.compute_transition_scores + ~GRULMHeadModel.constrained_beam_search + ~GRULMHeadModel.contrastive_search + ~GRULMHeadModel.cpu + ~GRULMHeadModel.create_extended_attention_mask_for_decoder + ~GRULMHeadModel.cuda + ~GRULMHeadModel.disable_adapters + ~GRULMHeadModel.disable_input_require_grads + ~GRULMHeadModel.double + ~GRULMHeadModel.enable_adapters + ~GRULMHeadModel.enable_input_require_grads + ~GRULMHeadModel.estimate_tokens + ~GRULMHeadModel.eval + ~GRULMHeadModel.extra_repr + ~GRULMHeadModel.float + ~GRULMHeadModel.floating_point_ops + ~GRULMHeadModel.forward + ~GRULMHeadModel.from_pretrained + ~GRULMHeadModel.generate + ~GRULMHeadModel.get_adapter_state_dict + ~GRULMHeadModel.get_buffer + ~GRULMHeadModel.get_extended_attention_mask + ~GRULMHeadModel.get_extra_state + ~GRULMHeadModel.get_head_mask + ~GRULMHeadModel.get_input_embeddings + ~GRULMHeadModel.get_memory_footprint + ~GRULMHeadModel.get_output_embeddings + ~GRULMHeadModel.get_parameter + ~GRULMHeadModel.get_position_embeddings + ~GRULMHeadModel.get_submodule + ~GRULMHeadModel.gradient_checkpointing_disable + ~GRULMHeadModel.gradient_checkpointing_enable + ~GRULMHeadModel.greedy_search + ~GRULMHeadModel.group_beam_search + ~GRULMHeadModel.half + ~GRULMHeadModel.init_weights + ~GRULMHeadModel.invert_attention_mask + ~GRULMHeadModel.ipu + ~GRULMHeadModel.load_adapter + ~GRULMHeadModel.load_state_dict + ~GRULMHeadModel.modules + ~GRULMHeadModel.named_buffers + ~GRULMHeadModel.named_children + ~GRULMHeadModel.named_modules + ~GRULMHeadModel.named_parameters + ~GRULMHeadModel.num_parameters + ~GRULMHeadModel.parameters + ~GRULMHeadModel.post_init + ~GRULMHeadModel.prepare_inputs_for_generation + ~GRULMHeadModel.prune_heads + ~GRULMHeadModel.push_to_hub + ~GRULMHeadModel.register_backward_hook + ~GRULMHeadModel.register_buffer + ~GRULMHeadModel.register_for_auto_class + ~GRULMHeadModel.register_forward_hook + ~GRULMHeadModel.register_forward_pre_hook + ~GRULMHeadModel.register_full_backward_hook + ~GRULMHeadModel.register_full_backward_pre_hook + ~GRULMHeadModel.register_load_state_dict_post_hook + ~GRULMHeadModel.register_module + ~GRULMHeadModel.register_parameter + ~GRULMHeadModel.register_state_dict_pre_hook + ~GRULMHeadModel.requires_grad_ + ~GRULMHeadModel.reset_memory_hooks_state + ~GRULMHeadModel.resize_position_embeddings + ~GRULMHeadModel.resize_token_embeddings + ~GRULMHeadModel.retrieve_modules_from_names + ~GRULMHeadModel.reverse_bettertransformer + ~GRULMHeadModel.sample + ~GRULMHeadModel.save_pretrained + ~GRULMHeadModel.set_adapter + ~GRULMHeadModel.set_extra_state + ~GRULMHeadModel.set_input_embeddings + ~GRULMHeadModel.set_output_embeddings + ~GRULMHeadModel.share_memory + ~GRULMHeadModel.state_dict + ~GRULMHeadModel.tie_weights + ~GRULMHeadModel.to + ~GRULMHeadModel.to_bettertransformer + ~GRULMHeadModel.to_empty + ~GRULMHeadModel.train + ~GRULMHeadModel.type + ~GRULMHeadModel.warn_if_padding_and_no_attention_mask + ~GRULMHeadModel.xpu + ~GRULMHeadModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRULMHeadModel.T_destination + ~GRULMHeadModel.base_model + ~GRULMHeadModel.base_model_prefix + ~GRULMHeadModel.call_super_init + ~GRULMHeadModel.config_class + ~GRULMHeadModel.device + ~GRULMHeadModel.dtype + ~GRULMHeadModel.dummy_inputs + ~GRULMHeadModel.dump_patches + ~GRULMHeadModel.framework + ~GRULMHeadModel.is_gradient_checkpointing + ~GRULMHeadModel.is_parallelizable + ~GRULMHeadModel.main_input_name + ~GRULMHeadModel.model_tags + ~GRULMHeadModel.supports_gradient_checkpointing + ~GRULMHeadModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUModel.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUModel.rst new file mode 100644 index 00000000..8ef4782f --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUModel.rst @@ -0,0 +1,144 @@ +pyvene.models.gru.modelings\_gru.GRUModel +========================================= + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUModel.__init__ + ~GRUModel.active_adapter + ~GRUModel.active_adapters + ~GRUModel.add_adapter + ~GRUModel.add_memory_hooks + ~GRUModel.add_model_tags + ~GRUModel.add_module + ~GRUModel.apply + ~GRUModel.assisted_decoding + ~GRUModel.beam_sample + ~GRUModel.beam_search + ~GRUModel.bfloat16 + ~GRUModel.buffers + ~GRUModel.can_generate + ~GRUModel.children + ~GRUModel.compile + ~GRUModel.compute_transition_scores + ~GRUModel.constrained_beam_search + ~GRUModel.contrastive_search + ~GRUModel.cpu + ~GRUModel.create_extended_attention_mask_for_decoder + ~GRUModel.cuda + ~GRUModel.disable_adapters + ~GRUModel.disable_input_require_grads + ~GRUModel.double + ~GRUModel.enable_adapters + ~GRUModel.enable_input_require_grads + ~GRUModel.estimate_tokens + ~GRUModel.eval + ~GRUModel.extra_repr + ~GRUModel.float + ~GRUModel.floating_point_ops + ~GRUModel.forward + ~GRUModel.from_pretrained + ~GRUModel.generate + ~GRUModel.get_adapter_state_dict + ~GRUModel.get_buffer + ~GRUModel.get_extended_attention_mask + ~GRUModel.get_extra_state + ~GRUModel.get_head_mask + ~GRUModel.get_input_embeddings + ~GRUModel.get_memory_footprint + ~GRUModel.get_output_embeddings + ~GRUModel.get_parameter + ~GRUModel.get_position_embeddings + ~GRUModel.get_submodule + ~GRUModel.gradient_checkpointing_disable + ~GRUModel.gradient_checkpointing_enable + ~GRUModel.greedy_search + ~GRUModel.group_beam_search + ~GRUModel.half + ~GRUModel.init_weights + ~GRUModel.invert_attention_mask + ~GRUModel.ipu + ~GRUModel.load_adapter + ~GRUModel.load_state_dict + ~GRUModel.modules + ~GRUModel.named_buffers + ~GRUModel.named_children + ~GRUModel.named_modules + ~GRUModel.named_parameters + ~GRUModel.num_parameters + ~GRUModel.parameters + ~GRUModel.post_init + ~GRUModel.prepare_inputs_for_generation + ~GRUModel.prune_heads + ~GRUModel.push_to_hub + ~GRUModel.register_backward_hook + ~GRUModel.register_buffer + ~GRUModel.register_for_auto_class + ~GRUModel.register_forward_hook + ~GRUModel.register_forward_pre_hook + ~GRUModel.register_full_backward_hook + ~GRUModel.register_full_backward_pre_hook + ~GRUModel.register_load_state_dict_post_hook + ~GRUModel.register_module + ~GRUModel.register_parameter + ~GRUModel.register_state_dict_pre_hook + ~GRUModel.requires_grad_ + ~GRUModel.reset_memory_hooks_state + ~GRUModel.resize_position_embeddings + ~GRUModel.resize_token_embeddings + ~GRUModel.retrieve_modules_from_names + ~GRUModel.reverse_bettertransformer + ~GRUModel.sample + ~GRUModel.save_pretrained + ~GRUModel.set_adapter + ~GRUModel.set_extra_state + ~GRUModel.set_input_embeddings + ~GRUModel.share_memory + ~GRUModel.state_dict + ~GRUModel.tie_weights + ~GRUModel.to + ~GRUModel.to_bettertransformer + ~GRUModel.to_empty + ~GRUModel.train + ~GRUModel.type + ~GRUModel.warn_if_padding_and_no_attention_mask + ~GRUModel.xpu + ~GRUModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUModel.T_destination + ~GRUModel.base_model + ~GRUModel.base_model_prefix + ~GRUModel.call_super_init + ~GRUModel.config_class + ~GRUModel.device + ~GRUModel.dtype + ~GRUModel.dummy_inputs + ~GRUModel.dump_patches + ~GRUModel.framework + ~GRUModel.is_gradient_checkpointing + ~GRUModel.is_parallelizable + ~GRUModel.main_input_name + ~GRUModel.model_tags + ~GRUModel.supports_gradient_checkpointing + ~GRUModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUModelOutput.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUModelOutput.rst new file mode 100644 index 00000000..678fdd00 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUModelOutput.rst @@ -0,0 +1,44 @@ +pyvene.models.gru.modelings\_gru.GRUModelOutput +=============================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUModelOutput + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUModelOutput.__init__ + ~GRUModelOutput.clear + ~GRUModelOutput.copy + ~GRUModelOutput.fromkeys + ~GRUModelOutput.get + ~GRUModelOutput.items + ~GRUModelOutput.keys + ~GRUModelOutput.move_to_end + ~GRUModelOutput.pop + ~GRUModelOutput.popitem + ~GRUModelOutput.setdefault + ~GRUModelOutput.to_tuple + ~GRUModelOutput.update + ~GRUModelOutput.values + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUModelOutput.hidden_states + ~GRUModelOutput.last_hidden_state + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.rst b/_sources/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.rst new file mode 100644 index 00000000..ab59f9cd --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.GRUPreTrainedModel.rst @@ -0,0 +1,144 @@ +pyvene.models.gru.modelings\_gru.GRUPreTrainedModel +=================================================== + +.. currentmodule:: pyvene.models.gru.modelings_gru + +.. autoclass:: GRUPreTrainedModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~GRUPreTrainedModel.__init__ + ~GRUPreTrainedModel.active_adapter + ~GRUPreTrainedModel.active_adapters + ~GRUPreTrainedModel.add_adapter + ~GRUPreTrainedModel.add_memory_hooks + ~GRUPreTrainedModel.add_model_tags + ~GRUPreTrainedModel.add_module + ~GRUPreTrainedModel.apply + ~GRUPreTrainedModel.assisted_decoding + ~GRUPreTrainedModel.beam_sample + ~GRUPreTrainedModel.beam_search + ~GRUPreTrainedModel.bfloat16 + ~GRUPreTrainedModel.buffers + ~GRUPreTrainedModel.can_generate + ~GRUPreTrainedModel.children + ~GRUPreTrainedModel.compile + ~GRUPreTrainedModel.compute_transition_scores + ~GRUPreTrainedModel.constrained_beam_search + ~GRUPreTrainedModel.contrastive_search + ~GRUPreTrainedModel.cpu + ~GRUPreTrainedModel.create_extended_attention_mask_for_decoder + ~GRUPreTrainedModel.cuda + ~GRUPreTrainedModel.disable_adapters + ~GRUPreTrainedModel.disable_input_require_grads + ~GRUPreTrainedModel.double + ~GRUPreTrainedModel.enable_adapters + ~GRUPreTrainedModel.enable_input_require_grads + ~GRUPreTrainedModel.estimate_tokens + ~GRUPreTrainedModel.eval + ~GRUPreTrainedModel.extra_repr + ~GRUPreTrainedModel.float + ~GRUPreTrainedModel.floating_point_ops + ~GRUPreTrainedModel.forward + ~GRUPreTrainedModel.from_pretrained + ~GRUPreTrainedModel.generate + ~GRUPreTrainedModel.get_adapter_state_dict + ~GRUPreTrainedModel.get_buffer + ~GRUPreTrainedModel.get_extended_attention_mask + ~GRUPreTrainedModel.get_extra_state + ~GRUPreTrainedModel.get_head_mask + ~GRUPreTrainedModel.get_input_embeddings + ~GRUPreTrainedModel.get_memory_footprint + ~GRUPreTrainedModel.get_output_embeddings + ~GRUPreTrainedModel.get_parameter + ~GRUPreTrainedModel.get_position_embeddings + ~GRUPreTrainedModel.get_submodule + ~GRUPreTrainedModel.gradient_checkpointing_disable + ~GRUPreTrainedModel.gradient_checkpointing_enable + ~GRUPreTrainedModel.greedy_search + ~GRUPreTrainedModel.group_beam_search + ~GRUPreTrainedModel.half + ~GRUPreTrainedModel.init_weights + ~GRUPreTrainedModel.invert_attention_mask + ~GRUPreTrainedModel.ipu + ~GRUPreTrainedModel.load_adapter + ~GRUPreTrainedModel.load_state_dict + ~GRUPreTrainedModel.modules + ~GRUPreTrainedModel.named_buffers + ~GRUPreTrainedModel.named_children + ~GRUPreTrainedModel.named_modules + ~GRUPreTrainedModel.named_parameters + ~GRUPreTrainedModel.num_parameters + ~GRUPreTrainedModel.parameters + ~GRUPreTrainedModel.post_init + ~GRUPreTrainedModel.prepare_inputs_for_generation + ~GRUPreTrainedModel.prune_heads + ~GRUPreTrainedModel.push_to_hub + ~GRUPreTrainedModel.register_backward_hook + ~GRUPreTrainedModel.register_buffer + ~GRUPreTrainedModel.register_for_auto_class + ~GRUPreTrainedModel.register_forward_hook + ~GRUPreTrainedModel.register_forward_pre_hook + ~GRUPreTrainedModel.register_full_backward_hook + ~GRUPreTrainedModel.register_full_backward_pre_hook + ~GRUPreTrainedModel.register_load_state_dict_post_hook + ~GRUPreTrainedModel.register_module + ~GRUPreTrainedModel.register_parameter + ~GRUPreTrainedModel.register_state_dict_pre_hook + ~GRUPreTrainedModel.requires_grad_ + ~GRUPreTrainedModel.reset_memory_hooks_state + ~GRUPreTrainedModel.resize_position_embeddings + ~GRUPreTrainedModel.resize_token_embeddings + ~GRUPreTrainedModel.retrieve_modules_from_names + ~GRUPreTrainedModel.reverse_bettertransformer + ~GRUPreTrainedModel.sample + ~GRUPreTrainedModel.save_pretrained + ~GRUPreTrainedModel.set_adapter + ~GRUPreTrainedModel.set_extra_state + ~GRUPreTrainedModel.set_input_embeddings + ~GRUPreTrainedModel.share_memory + ~GRUPreTrainedModel.state_dict + ~GRUPreTrainedModel.tie_weights + ~GRUPreTrainedModel.to + ~GRUPreTrainedModel.to_bettertransformer + ~GRUPreTrainedModel.to_empty + ~GRUPreTrainedModel.train + ~GRUPreTrainedModel.type + ~GRUPreTrainedModel.warn_if_padding_and_no_attention_mask + ~GRUPreTrainedModel.xpu + ~GRUPreTrainedModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~GRUPreTrainedModel.T_destination + ~GRUPreTrainedModel.base_model + ~GRUPreTrainedModel.base_model_prefix + ~GRUPreTrainedModel.call_super_init + ~GRUPreTrainedModel.config_class + ~GRUPreTrainedModel.device + ~GRUPreTrainedModel.dtype + ~GRUPreTrainedModel.dummy_inputs + ~GRUPreTrainedModel.dump_patches + ~GRUPreTrainedModel.framework + ~GRUPreTrainedModel.is_gradient_checkpointing + ~GRUPreTrainedModel.is_parallelizable + ~GRUPreTrainedModel.main_input_name + ~GRUPreTrainedModel.model_tags + ~GRUPreTrainedModel.supports_gradient_checkpointing + ~GRUPreTrainedModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_gru.rst b/_sources/api/pyvene.models.gru.modelings_gru.rst new file mode 100644 index 00000000..210dd091 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_gru.rst @@ -0,0 +1,37 @@ +pyvene.models.gru.modelings\_gru +================================ + +.. automodule:: pyvene.models.gru.modelings_gru + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + GRUCell + GRUConfig + GRUForClassification + GRULMHeadModel + GRUModel + GRUModelOutput + GRUPreTrainedModel + + + + + + + + + diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.rst new file mode 100644 index 00000000..582414c4 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru.rst @@ -0,0 +1,6 @@ +pyvene.models.gru.modelings\_intervenable\_gru.create\_gru +========================================================== + +.. currentmodule:: pyvene.models.gru.modelings_intervenable_gru + +.. autofunction:: create_gru \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.rst new file mode 100644 index 00000000..baad6d7c --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_classifier.rst @@ -0,0 +1,6 @@ +pyvene.models.gru.modelings\_intervenable\_gru.create\_gru\_classifier +====================================================================== + +.. currentmodule:: pyvene.models.gru.modelings_intervenable_gru + +.. autofunction:: create_gru_classifier \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.rst new file mode 100644 index 00000000..5a9e7372 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.create_gru_lm.rst @@ -0,0 +1,6 @@ +pyvene.models.gru.modelings\_intervenable\_gru.create\_gru\_lm +============================================================== + +.. currentmodule:: pyvene.models.gru.modelings_intervenable_gru + +.. autofunction:: create_gru_lm \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.rst new file mode 100644 index 00000000..f94a382a --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_classifier_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gru.modelings\_intervenable\_gru.gru\_classifier\_type\_to\_dimension\_mapping +============================================================================================ + +.. currentmodule:: pyvene.models.gru.modelings_intervenable_gru + +.. autodata:: gru_classifier_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.rst new file mode 100644 index 00000000..b56a6bf1 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.gru_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.gru.modelings\_intervenable\_gru.gru\_type\_to\_dimension\_mapping +================================================================================ + +.. currentmodule:: pyvene.models.gru.modelings_intervenable_gru + +.. autodata:: gru_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.gru.modelings_intervenable_gru.rst b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.rst new file mode 100644 index 00000000..356de525 --- /dev/null +++ b/_sources/api/pyvene.models.gru.modelings_intervenable_gru.rst @@ -0,0 +1,40 @@ +pyvene.models.gru.modelings\_intervenable\_gru +============================================== + +.. automodule:: pyvene.models.gru.modelings_intervenable_gru + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + gru_type_to_dimension_mapping + gru_classifier_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_gru + create_gru_classifier + create_gru_lm + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.gru.rst b/_sources/api/pyvene.models.gru.rst new file mode 100644 index 00000000..bd95ecc7 --- /dev/null +++ b/_sources/api/pyvene.models.gru.rst @@ -0,0 +1,33 @@ +pyvene.models.gru +================= + +.. automodule:: pyvene.models.gru + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.gru.modelings_gru + pyvene.models.gru.modelings_intervenable_gru + diff --git a/_sources/api/pyvene.models.intervenable_base.BaseModel.rst b/_sources/api/pyvene.models.intervenable_base.BaseModel.rst new file mode 100644 index 00000000..902fbc92 --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.BaseModel.rst @@ -0,0 +1,91 @@ +pyvene.models.intervenable\_base.BaseModel +========================================== + +.. currentmodule:: pyvene.models.intervenable_base + +.. autoclass:: BaseModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BaseModel.__init__ + ~BaseModel.add_module + ~BaseModel.apply + ~BaseModel.bfloat16 + ~BaseModel.buffers + ~BaseModel.children + ~BaseModel.compile + ~BaseModel.count_parameters + ~BaseModel.cpu + ~BaseModel.cuda + ~BaseModel.disable_intervention_gradients + ~BaseModel.disable_model_gradients + ~BaseModel.double + ~BaseModel.enable_model_gradients + ~BaseModel.eval + ~BaseModel.extra_repr + ~BaseModel.float + ~BaseModel.forward + ~BaseModel.generate + ~BaseModel.get_buffer + ~BaseModel.get_cached_activations + ~BaseModel.get_cached_hot_activations + ~BaseModel.get_device + ~BaseModel.get_extra_state + ~BaseModel.get_parameter + ~BaseModel.get_submodule + ~BaseModel.get_trainable_parameters + ~BaseModel.half + ~BaseModel.ipu + ~BaseModel.load_state_dict + ~BaseModel.modules + ~BaseModel.named_buffers + ~BaseModel.named_children + ~BaseModel.named_modules + ~BaseModel.named_parameters + ~BaseModel.parameters + ~BaseModel.register_backward_hook + ~BaseModel.register_buffer + ~BaseModel.register_forward_hook + ~BaseModel.register_forward_pre_hook + ~BaseModel.register_full_backward_hook + ~BaseModel.register_full_backward_pre_hook + ~BaseModel.register_load_state_dict_post_hook + ~BaseModel.register_module + ~BaseModel.register_parameter + ~BaseModel.register_state_dict_pre_hook + ~BaseModel.requires_grad_ + ~BaseModel.set_device + ~BaseModel.set_extra_state + ~BaseModel.set_temperature + ~BaseModel.set_zero_grad + ~BaseModel.share_memory + ~BaseModel.state_dict + ~BaseModel.to + ~BaseModel.to_empty + ~BaseModel.train + ~BaseModel.type + ~BaseModel.xpu + ~BaseModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BaseModel.T_destination + ~BaseModel.call_super_init + ~BaseModel.dump_patches + ~BaseModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervenable_base.IntervenableModel.rst b/_sources/api/pyvene.models.intervenable_base.IntervenableModel.rst new file mode 100644 index 00000000..a92640ab --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.IntervenableModel.rst @@ -0,0 +1,98 @@ +pyvene.models.intervenable\_base.IntervenableModel +================================================== + +.. currentmodule:: pyvene.models.intervenable_base + +.. autoclass:: IntervenableModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~IntervenableModel.__init__ + ~IntervenableModel.add_module + ~IntervenableModel.apply + ~IntervenableModel.bfloat16 + ~IntervenableModel.buffers + ~IntervenableModel.children + ~IntervenableModel.compile + ~IntervenableModel.count_parameters + ~IntervenableModel.cpu + ~IntervenableModel.cuda + ~IntervenableModel.disable_intervention_gradients + ~IntervenableModel.disable_model_gradients + ~IntervenableModel.double + ~IntervenableModel.enable_model_gradients + ~IntervenableModel.eval + ~IntervenableModel.eval_alignment + ~IntervenableModel.extra_repr + ~IntervenableModel.float + ~IntervenableModel.forward + ~IntervenableModel.generate + ~IntervenableModel.get_buffer + ~IntervenableModel.get_cached_activations + ~IntervenableModel.get_cached_hot_activations + ~IntervenableModel.get_device + ~IntervenableModel.get_extra_state + ~IntervenableModel.get_parameter + ~IntervenableModel.get_submodule + ~IntervenableModel.get_trainable_parameters + ~IntervenableModel.half + ~IntervenableModel.ipu + ~IntervenableModel.load + ~IntervenableModel.load_intervention + ~IntervenableModel.load_state_dict + ~IntervenableModel.modules + ~IntervenableModel.named_buffers + ~IntervenableModel.named_children + ~IntervenableModel.named_modules + ~IntervenableModel.named_parameters + ~IntervenableModel.parameters + ~IntervenableModel.register_backward_hook + ~IntervenableModel.register_buffer + ~IntervenableModel.register_forward_hook + ~IntervenableModel.register_forward_pre_hook + ~IntervenableModel.register_full_backward_hook + ~IntervenableModel.register_full_backward_pre_hook + ~IntervenableModel.register_load_state_dict_post_hook + ~IntervenableModel.register_module + ~IntervenableModel.register_parameter + ~IntervenableModel.register_state_dict_pre_hook + ~IntervenableModel.requires_grad_ + ~IntervenableModel.save + ~IntervenableModel.save_intervention + ~IntervenableModel.set_device + ~IntervenableModel.set_extra_state + ~IntervenableModel.set_temperature + ~IntervenableModel.set_zero_grad + ~IntervenableModel.share_memory + ~IntervenableModel.state_dict + ~IntervenableModel.to + ~IntervenableModel.to_empty + ~IntervenableModel.train + ~IntervenableModel.train_alignment + ~IntervenableModel.type + ~IntervenableModel.xpu + ~IntervenableModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~IntervenableModel.BACKEND + ~IntervenableModel.T_destination + ~IntervenableModel.call_super_init + ~IntervenableModel.dump_patches + ~IntervenableModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervenable_base.IntervenableModelOutput.rst b/_sources/api/pyvene.models.intervenable_base.IntervenableModelOutput.rst new file mode 100644 index 00000000..c682359e --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.IntervenableModelOutput.rst @@ -0,0 +1,45 @@ +pyvene.models.intervenable\_base.IntervenableModelOutput +======================================================== + +.. currentmodule:: pyvene.models.intervenable_base + +.. autoclass:: IntervenableModelOutput + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~IntervenableModelOutput.__init__ + ~IntervenableModelOutput.clear + ~IntervenableModelOutput.copy + ~IntervenableModelOutput.fromkeys + ~IntervenableModelOutput.get + ~IntervenableModelOutput.items + ~IntervenableModelOutput.keys + ~IntervenableModelOutput.move_to_end + ~IntervenableModelOutput.pop + ~IntervenableModelOutput.popitem + ~IntervenableModelOutput.setdefault + ~IntervenableModelOutput.to_tuple + ~IntervenableModelOutput.update + ~IntervenableModelOutput.values + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~IntervenableModelOutput.collected_activations + ~IntervenableModelOutput.intervened_outputs + ~IntervenableModelOutput.original_outputs + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervenable_base.IntervenableNdifModel.rst b/_sources/api/pyvene.models.intervenable_base.IntervenableNdifModel.rst new file mode 100644 index 00000000..65b0ff64 --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.IntervenableNdifModel.rst @@ -0,0 +1,94 @@ +pyvene.models.intervenable\_base.IntervenableNdifModel +====================================================== + +.. currentmodule:: pyvene.models.intervenable_base + +.. autoclass:: IntervenableNdifModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~IntervenableNdifModel.__init__ + ~IntervenableNdifModel.add_module + ~IntervenableNdifModel.apply + ~IntervenableNdifModel.bfloat16 + ~IntervenableNdifModel.buffers + ~IntervenableNdifModel.children + ~IntervenableNdifModel.compile + ~IntervenableNdifModel.count_parameters + ~IntervenableNdifModel.cpu + ~IntervenableNdifModel.cuda + ~IntervenableNdifModel.disable_intervention_gradients + ~IntervenableNdifModel.disable_model_gradients + ~IntervenableNdifModel.double + ~IntervenableNdifModel.enable_model_gradients + ~IntervenableNdifModel.eval + ~IntervenableNdifModel.extra_repr + ~IntervenableNdifModel.float + ~IntervenableNdifModel.forward + ~IntervenableNdifModel.generate + ~IntervenableNdifModel.get_buffer + ~IntervenableNdifModel.get_cached_activations + ~IntervenableNdifModel.get_cached_hot_activations + ~IntervenableNdifModel.get_device + ~IntervenableNdifModel.get_extra_state + ~IntervenableNdifModel.get_parameter + ~IntervenableNdifModel.get_submodule + ~IntervenableNdifModel.get_trainable_parameters + ~IntervenableNdifModel.half + ~IntervenableNdifModel.ipu + ~IntervenableNdifModel.load + ~IntervenableNdifModel.load_state_dict + ~IntervenableNdifModel.modules + ~IntervenableNdifModel.named_buffers + ~IntervenableNdifModel.named_children + ~IntervenableNdifModel.named_modules + ~IntervenableNdifModel.named_parameters + ~IntervenableNdifModel.parameters + ~IntervenableNdifModel.register_backward_hook + ~IntervenableNdifModel.register_buffer + ~IntervenableNdifModel.register_forward_hook + ~IntervenableNdifModel.register_forward_pre_hook + ~IntervenableNdifModel.register_full_backward_hook + ~IntervenableNdifModel.register_full_backward_pre_hook + ~IntervenableNdifModel.register_load_state_dict_post_hook + ~IntervenableNdifModel.register_module + ~IntervenableNdifModel.register_parameter + ~IntervenableNdifModel.register_state_dict_pre_hook + ~IntervenableNdifModel.requires_grad_ + ~IntervenableNdifModel.save + ~IntervenableNdifModel.set_device + ~IntervenableNdifModel.set_extra_state + ~IntervenableNdifModel.set_temperature + ~IntervenableNdifModel.set_zero_grad + ~IntervenableNdifModel.share_memory + ~IntervenableNdifModel.state_dict + ~IntervenableNdifModel.to + ~IntervenableNdifModel.to_empty + ~IntervenableNdifModel.train + ~IntervenableNdifModel.type + ~IntervenableNdifModel.xpu + ~IntervenableNdifModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~IntervenableNdifModel.BACKEND + ~IntervenableNdifModel.T_destination + ~IntervenableNdifModel.call_super_init + ~IntervenableNdifModel.dump_patches + ~IntervenableNdifModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervenable_base.build_intervenable_model.rst b/_sources/api/pyvene.models.intervenable_base.build_intervenable_model.rst new file mode 100644 index 00000000..738a1aae --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.build_intervenable_model.rst @@ -0,0 +1,6 @@ +pyvene.models.intervenable\_base.build\_intervenable\_model +=========================================================== + +.. currentmodule:: pyvene.models.intervenable_base + +.. autofunction:: build_intervenable_model \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervenable_base.rst b/_sources/api/pyvene.models.intervenable_base.rst new file mode 100644 index 00000000..540b2864 --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_base.rst @@ -0,0 +1,41 @@ +pyvene.models.intervenable\_base +================================ + +.. automodule:: pyvene.models.intervenable_base + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + build_intervenable_model + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + BaseModel + IntervenableModel + IntervenableModelOutput + IntervenableNdifModel + + + + + + + + + diff --git a/_sources/api/pyvene.models.intervenable_modelcard.rst b/_sources/api/pyvene.models.intervenable_modelcard.rst new file mode 100644 index 00000000..d920c9d0 --- /dev/null +++ b/_sources/api/pyvene.models.intervenable_modelcard.rst @@ -0,0 +1,23 @@ +pyvene.models.intervenable\_modelcard +===================================== + +.. automodule:: pyvene.models.intervenable_modelcard + + + + + + + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.intervention_utils.InterventionState.rst b/_sources/api/pyvene.models.intervention_utils.InterventionState.rst new file mode 100644 index 00000000..6756412b --- /dev/null +++ b/_sources/api/pyvene.models.intervention_utils.InterventionState.rst @@ -0,0 +1,31 @@ +pyvene.models.intervention\_utils.InterventionState +=================================================== + +.. currentmodule:: pyvene.models.intervention_utils + +.. autoclass:: InterventionState + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~InterventionState.__init__ + ~InterventionState.get_states + ~InterventionState.getter_version + ~InterventionState.inc_getter_version + ~InterventionState.inc_setter_version + ~InterventionState.reset + ~InterventionState.set_state + ~InterventionState.setter_version + + + + + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v1.rst b/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v1.rst new file mode 100644 index 00000000..cd6e4fd6 --- /dev/null +++ b/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v1.rst @@ -0,0 +1,6 @@ +pyvene.models.intervention\_utils.broadcast\_tensor\_v1 +======================================================= + +.. currentmodule:: pyvene.models.intervention_utils + +.. autofunction:: broadcast_tensor_v1 \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v2.rst b/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v2.rst new file mode 100644 index 00000000..e50e2524 --- /dev/null +++ b/_sources/api/pyvene.models.intervention_utils.broadcast_tensor_v2.rst @@ -0,0 +1,6 @@ +pyvene.models.intervention\_utils.broadcast\_tensor\_v2 +======================================================= + +.. currentmodule:: pyvene.models.intervention_utils + +.. autofunction:: broadcast_tensor_v2 \ No newline at end of file diff --git a/_sources/api/pyvene.models.intervention_utils.rst b/_sources/api/pyvene.models.intervention_utils.rst new file mode 100644 index 00000000..8c783469 --- /dev/null +++ b/_sources/api/pyvene.models.intervention_utils.rst @@ -0,0 +1,39 @@ +pyvene.models.intervention\_utils +================================= + +.. automodule:: pyvene.models.intervention_utils + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + broadcast_tensor_v1 + broadcast_tensor_v2 + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + InterventionState + + + + + + + + + diff --git a/_sources/api/pyvene.models.interventions.AdditionIntervention.rst b/_sources/api/pyvene.models.interventions.AdditionIntervention.rst new file mode 100644 index 00000000..6e3067d1 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.AdditionIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.AdditionIntervention +================================================ + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: AdditionIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~AdditionIntervention.__init__ + ~AdditionIntervention.add_module + ~AdditionIntervention.apply + ~AdditionIntervention.bfloat16 + ~AdditionIntervention.buffers + ~AdditionIntervention.children + ~AdditionIntervention.compile + ~AdditionIntervention.cpu + ~AdditionIntervention.cuda + ~AdditionIntervention.double + ~AdditionIntervention.eval + ~AdditionIntervention.extra_repr + ~AdditionIntervention.float + ~AdditionIntervention.forward + ~AdditionIntervention.get_buffer + ~AdditionIntervention.get_extra_state + ~AdditionIntervention.get_parameter + ~AdditionIntervention.get_submodule + ~AdditionIntervention.half + ~AdditionIntervention.ipu + ~AdditionIntervention.load_state_dict + ~AdditionIntervention.modules + ~AdditionIntervention.named_buffers + ~AdditionIntervention.named_children + ~AdditionIntervention.named_modules + ~AdditionIntervention.named_parameters + ~AdditionIntervention.parameters + ~AdditionIntervention.register_backward_hook + ~AdditionIntervention.register_buffer + ~AdditionIntervention.register_forward_hook + ~AdditionIntervention.register_forward_pre_hook + ~AdditionIntervention.register_full_backward_hook + ~AdditionIntervention.register_full_backward_pre_hook + ~AdditionIntervention.register_load_state_dict_post_hook + ~AdditionIntervention.register_module + ~AdditionIntervention.register_parameter + ~AdditionIntervention.register_state_dict_pre_hook + ~AdditionIntervention.requires_grad_ + ~AdditionIntervention.set_extra_state + ~AdditionIntervention.set_interchange_dim + ~AdditionIntervention.set_source_representation + ~AdditionIntervention.share_memory + ~AdditionIntervention.state_dict + ~AdditionIntervention.to + ~AdditionIntervention.to_empty + ~AdditionIntervention.train + ~AdditionIntervention.type + ~AdditionIntervention.xpu + ~AdditionIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AdditionIntervention.T_destination + ~AdditionIntervention.call_super_init + ~AdditionIntervention.dump_patches + ~AdditionIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.AutoencoderIntervention.rst b/_sources/api/pyvene.models.interventions.AutoencoderIntervention.rst new file mode 100644 index 00000000..05a657af --- /dev/null +++ b/_sources/api/pyvene.models.interventions.AutoencoderIntervention.rst @@ -0,0 +1,82 @@ +pyvene.models.interventions.AutoencoderIntervention +=================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: AutoencoderIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~AutoencoderIntervention.__init__ + ~AutoencoderIntervention.add_module + ~AutoencoderIntervention.apply + ~AutoencoderIntervention.bfloat16 + ~AutoencoderIntervention.buffers + ~AutoencoderIntervention.children + ~AutoencoderIntervention.compile + ~AutoencoderIntervention.cpu + ~AutoencoderIntervention.cuda + ~AutoencoderIntervention.double + ~AutoencoderIntervention.eval + ~AutoencoderIntervention.extra_repr + ~AutoencoderIntervention.float + ~AutoencoderIntervention.forward + ~AutoencoderIntervention.get_buffer + ~AutoencoderIntervention.get_extra_state + ~AutoencoderIntervention.get_parameter + ~AutoencoderIntervention.get_submodule + ~AutoencoderIntervention.half + ~AutoencoderIntervention.ipu + ~AutoencoderIntervention.load_state_dict + ~AutoencoderIntervention.modules + ~AutoencoderIntervention.named_buffers + ~AutoencoderIntervention.named_children + ~AutoencoderIntervention.named_modules + ~AutoencoderIntervention.named_parameters + ~AutoencoderIntervention.parameters + ~AutoencoderIntervention.register_backward_hook + ~AutoencoderIntervention.register_buffer + ~AutoencoderIntervention.register_forward_hook + ~AutoencoderIntervention.register_forward_pre_hook + ~AutoencoderIntervention.register_full_backward_hook + ~AutoencoderIntervention.register_full_backward_pre_hook + ~AutoencoderIntervention.register_load_state_dict_post_hook + ~AutoencoderIntervention.register_module + ~AutoencoderIntervention.register_parameter + ~AutoencoderIntervention.register_state_dict_pre_hook + ~AutoencoderIntervention.requires_grad_ + ~AutoencoderIntervention.set_extra_state + ~AutoencoderIntervention.set_interchange_dim + ~AutoencoderIntervention.set_source_representation + ~AutoencoderIntervention.share_memory + ~AutoencoderIntervention.state_dict + ~AutoencoderIntervention.tie_weight + ~AutoencoderIntervention.to + ~AutoencoderIntervention.to_empty + ~AutoencoderIntervention.train + ~AutoencoderIntervention.type + ~AutoencoderIntervention.xpu + ~AutoencoderIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AutoencoderIntervention.T_destination + ~AutoencoderIntervention.call_super_init + ~AutoencoderIntervention.dump_patches + ~AutoencoderIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.BasisAgnosticIntervention.rst b/_sources/api/pyvene.models.interventions.BasisAgnosticIntervention.rst new file mode 100644 index 00000000..4611b993 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.BasisAgnosticIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.BasisAgnosticIntervention +===================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: BasisAgnosticIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BasisAgnosticIntervention.__init__ + ~BasisAgnosticIntervention.add_module + ~BasisAgnosticIntervention.apply + ~BasisAgnosticIntervention.bfloat16 + ~BasisAgnosticIntervention.buffers + ~BasisAgnosticIntervention.children + ~BasisAgnosticIntervention.compile + ~BasisAgnosticIntervention.cpu + ~BasisAgnosticIntervention.cuda + ~BasisAgnosticIntervention.double + ~BasisAgnosticIntervention.eval + ~BasisAgnosticIntervention.extra_repr + ~BasisAgnosticIntervention.float + ~BasisAgnosticIntervention.forward + ~BasisAgnosticIntervention.get_buffer + ~BasisAgnosticIntervention.get_extra_state + ~BasisAgnosticIntervention.get_parameter + ~BasisAgnosticIntervention.get_submodule + ~BasisAgnosticIntervention.half + ~BasisAgnosticIntervention.ipu + ~BasisAgnosticIntervention.load_state_dict + ~BasisAgnosticIntervention.modules + ~BasisAgnosticIntervention.named_buffers + ~BasisAgnosticIntervention.named_children + ~BasisAgnosticIntervention.named_modules + ~BasisAgnosticIntervention.named_parameters + ~BasisAgnosticIntervention.parameters + ~BasisAgnosticIntervention.register_backward_hook + ~BasisAgnosticIntervention.register_buffer + ~BasisAgnosticIntervention.register_forward_hook + ~BasisAgnosticIntervention.register_forward_pre_hook + ~BasisAgnosticIntervention.register_full_backward_hook + ~BasisAgnosticIntervention.register_full_backward_pre_hook + ~BasisAgnosticIntervention.register_load_state_dict_post_hook + ~BasisAgnosticIntervention.register_module + ~BasisAgnosticIntervention.register_parameter + ~BasisAgnosticIntervention.register_state_dict_pre_hook + ~BasisAgnosticIntervention.requires_grad_ + ~BasisAgnosticIntervention.set_extra_state + ~BasisAgnosticIntervention.set_interchange_dim + ~BasisAgnosticIntervention.set_source_representation + ~BasisAgnosticIntervention.share_memory + ~BasisAgnosticIntervention.state_dict + ~BasisAgnosticIntervention.to + ~BasisAgnosticIntervention.to_empty + ~BasisAgnosticIntervention.train + ~BasisAgnosticIntervention.type + ~BasisAgnosticIntervention.xpu + ~BasisAgnosticIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BasisAgnosticIntervention.T_destination + ~BasisAgnosticIntervention.call_super_init + ~BasisAgnosticIntervention.dump_patches + ~BasisAgnosticIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.rst b/_sources/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.rst new file mode 100644 index 00000000..3311ed49 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.BoundlessRotatedSpaceIntervention.rst @@ -0,0 +1,86 @@ +pyvene.models.interventions.BoundlessRotatedSpaceIntervention +============================================================= + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: BoundlessRotatedSpaceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~BoundlessRotatedSpaceIntervention.__init__ + ~BoundlessRotatedSpaceIntervention.add_module + ~BoundlessRotatedSpaceIntervention.apply + ~BoundlessRotatedSpaceIntervention.bfloat16 + ~BoundlessRotatedSpaceIntervention.buffers + ~BoundlessRotatedSpaceIntervention.children + ~BoundlessRotatedSpaceIntervention.compile + ~BoundlessRotatedSpaceIntervention.cpu + ~BoundlessRotatedSpaceIntervention.cuda + ~BoundlessRotatedSpaceIntervention.double + ~BoundlessRotatedSpaceIntervention.eval + ~BoundlessRotatedSpaceIntervention.extra_repr + ~BoundlessRotatedSpaceIntervention.float + ~BoundlessRotatedSpaceIntervention.forward + ~BoundlessRotatedSpaceIntervention.get_boundary_parameters + ~BoundlessRotatedSpaceIntervention.get_buffer + ~BoundlessRotatedSpaceIntervention.get_extra_state + ~BoundlessRotatedSpaceIntervention.get_parameter + ~BoundlessRotatedSpaceIntervention.get_submodule + ~BoundlessRotatedSpaceIntervention.get_temperature + ~BoundlessRotatedSpaceIntervention.half + ~BoundlessRotatedSpaceIntervention.ipu + ~BoundlessRotatedSpaceIntervention.load_state_dict + ~BoundlessRotatedSpaceIntervention.modules + ~BoundlessRotatedSpaceIntervention.named_buffers + ~BoundlessRotatedSpaceIntervention.named_children + ~BoundlessRotatedSpaceIntervention.named_modules + ~BoundlessRotatedSpaceIntervention.named_parameters + ~BoundlessRotatedSpaceIntervention.parameters + ~BoundlessRotatedSpaceIntervention.register_backward_hook + ~BoundlessRotatedSpaceIntervention.register_buffer + ~BoundlessRotatedSpaceIntervention.register_forward_hook + ~BoundlessRotatedSpaceIntervention.register_forward_pre_hook + ~BoundlessRotatedSpaceIntervention.register_full_backward_hook + ~BoundlessRotatedSpaceIntervention.register_full_backward_pre_hook + ~BoundlessRotatedSpaceIntervention.register_load_state_dict_post_hook + ~BoundlessRotatedSpaceIntervention.register_module + ~BoundlessRotatedSpaceIntervention.register_parameter + ~BoundlessRotatedSpaceIntervention.register_state_dict_pre_hook + ~BoundlessRotatedSpaceIntervention.requires_grad_ + ~BoundlessRotatedSpaceIntervention.set_extra_state + ~BoundlessRotatedSpaceIntervention.set_interchange_dim + ~BoundlessRotatedSpaceIntervention.set_intervention_boundaries + ~BoundlessRotatedSpaceIntervention.set_source_representation + ~BoundlessRotatedSpaceIntervention.set_temperature + ~BoundlessRotatedSpaceIntervention.share_memory + ~BoundlessRotatedSpaceIntervention.state_dict + ~BoundlessRotatedSpaceIntervention.tie_weight + ~BoundlessRotatedSpaceIntervention.to + ~BoundlessRotatedSpaceIntervention.to_empty + ~BoundlessRotatedSpaceIntervention.train + ~BoundlessRotatedSpaceIntervention.type + ~BoundlessRotatedSpaceIntervention.xpu + ~BoundlessRotatedSpaceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~BoundlessRotatedSpaceIntervention.T_destination + ~BoundlessRotatedSpaceIntervention.call_super_init + ~BoundlessRotatedSpaceIntervention.dump_patches + ~BoundlessRotatedSpaceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.CollectIntervention.rst b/_sources/api/pyvene.models.interventions.CollectIntervention.rst new file mode 100644 index 00000000..46e1bad4 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.CollectIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.CollectIntervention +=============================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: CollectIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~CollectIntervention.__init__ + ~CollectIntervention.add_module + ~CollectIntervention.apply + ~CollectIntervention.bfloat16 + ~CollectIntervention.buffers + ~CollectIntervention.children + ~CollectIntervention.compile + ~CollectIntervention.cpu + ~CollectIntervention.cuda + ~CollectIntervention.double + ~CollectIntervention.eval + ~CollectIntervention.extra_repr + ~CollectIntervention.float + ~CollectIntervention.forward + ~CollectIntervention.get_buffer + ~CollectIntervention.get_extra_state + ~CollectIntervention.get_parameter + ~CollectIntervention.get_submodule + ~CollectIntervention.half + ~CollectIntervention.ipu + ~CollectIntervention.load_state_dict + ~CollectIntervention.modules + ~CollectIntervention.named_buffers + ~CollectIntervention.named_children + ~CollectIntervention.named_modules + ~CollectIntervention.named_parameters + ~CollectIntervention.parameters + ~CollectIntervention.register_backward_hook + ~CollectIntervention.register_buffer + ~CollectIntervention.register_forward_hook + ~CollectIntervention.register_forward_pre_hook + ~CollectIntervention.register_full_backward_hook + ~CollectIntervention.register_full_backward_pre_hook + ~CollectIntervention.register_load_state_dict_post_hook + ~CollectIntervention.register_module + ~CollectIntervention.register_parameter + ~CollectIntervention.register_state_dict_pre_hook + ~CollectIntervention.requires_grad_ + ~CollectIntervention.set_extra_state + ~CollectIntervention.set_interchange_dim + ~CollectIntervention.set_source_representation + ~CollectIntervention.share_memory + ~CollectIntervention.state_dict + ~CollectIntervention.to + ~CollectIntervention.to_empty + ~CollectIntervention.train + ~CollectIntervention.type + ~CollectIntervention.xpu + ~CollectIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~CollectIntervention.T_destination + ~CollectIntervention.call_super_init + ~CollectIntervention.dump_patches + ~CollectIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.ConstantSourceIntervention.rst b/_sources/api/pyvene.models.interventions.ConstantSourceIntervention.rst new file mode 100644 index 00000000..9b72e0eb --- /dev/null +++ b/_sources/api/pyvene.models.interventions.ConstantSourceIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.ConstantSourceIntervention +====================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: ConstantSourceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~ConstantSourceIntervention.__init__ + ~ConstantSourceIntervention.add_module + ~ConstantSourceIntervention.apply + ~ConstantSourceIntervention.bfloat16 + ~ConstantSourceIntervention.buffers + ~ConstantSourceIntervention.children + ~ConstantSourceIntervention.compile + ~ConstantSourceIntervention.cpu + ~ConstantSourceIntervention.cuda + ~ConstantSourceIntervention.double + ~ConstantSourceIntervention.eval + ~ConstantSourceIntervention.extra_repr + ~ConstantSourceIntervention.float + ~ConstantSourceIntervention.forward + ~ConstantSourceIntervention.get_buffer + ~ConstantSourceIntervention.get_extra_state + ~ConstantSourceIntervention.get_parameter + ~ConstantSourceIntervention.get_submodule + ~ConstantSourceIntervention.half + ~ConstantSourceIntervention.ipu + ~ConstantSourceIntervention.load_state_dict + ~ConstantSourceIntervention.modules + ~ConstantSourceIntervention.named_buffers + ~ConstantSourceIntervention.named_children + ~ConstantSourceIntervention.named_modules + ~ConstantSourceIntervention.named_parameters + ~ConstantSourceIntervention.parameters + ~ConstantSourceIntervention.register_backward_hook + ~ConstantSourceIntervention.register_buffer + ~ConstantSourceIntervention.register_forward_hook + ~ConstantSourceIntervention.register_forward_pre_hook + ~ConstantSourceIntervention.register_full_backward_hook + ~ConstantSourceIntervention.register_full_backward_pre_hook + ~ConstantSourceIntervention.register_load_state_dict_post_hook + ~ConstantSourceIntervention.register_module + ~ConstantSourceIntervention.register_parameter + ~ConstantSourceIntervention.register_state_dict_pre_hook + ~ConstantSourceIntervention.requires_grad_ + ~ConstantSourceIntervention.set_extra_state + ~ConstantSourceIntervention.set_interchange_dim + ~ConstantSourceIntervention.set_source_representation + ~ConstantSourceIntervention.share_memory + ~ConstantSourceIntervention.state_dict + ~ConstantSourceIntervention.to + ~ConstantSourceIntervention.to_empty + ~ConstantSourceIntervention.train + ~ConstantSourceIntervention.type + ~ConstantSourceIntervention.xpu + ~ConstantSourceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~ConstantSourceIntervention.T_destination + ~ConstantSourceIntervention.call_super_init + ~ConstantSourceIntervention.dump_patches + ~ConstantSourceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.DistributedRepresentationIntervention.rst b/_sources/api/pyvene.models.interventions.DistributedRepresentationIntervention.rst new file mode 100644 index 00000000..0a8a8196 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.DistributedRepresentationIntervention.rst @@ -0,0 +1,79 @@ +pyvene.models.interventions.DistributedRepresentationIntervention +================================================================= + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: DistributedRepresentationIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~DistributedRepresentationIntervention.__init__ + ~DistributedRepresentationIntervention.add_module + ~DistributedRepresentationIntervention.apply + ~DistributedRepresentationIntervention.bfloat16 + ~DistributedRepresentationIntervention.buffers + ~DistributedRepresentationIntervention.children + ~DistributedRepresentationIntervention.compile + ~DistributedRepresentationIntervention.cpu + ~DistributedRepresentationIntervention.cuda + ~DistributedRepresentationIntervention.double + ~DistributedRepresentationIntervention.eval + ~DistributedRepresentationIntervention.extra_repr + ~DistributedRepresentationIntervention.float + ~DistributedRepresentationIntervention.forward + ~DistributedRepresentationIntervention.get_buffer + ~DistributedRepresentationIntervention.get_extra_state + ~DistributedRepresentationIntervention.get_parameter + ~DistributedRepresentationIntervention.get_submodule + ~DistributedRepresentationIntervention.half + ~DistributedRepresentationIntervention.ipu + ~DistributedRepresentationIntervention.load_state_dict + ~DistributedRepresentationIntervention.modules + ~DistributedRepresentationIntervention.named_buffers + ~DistributedRepresentationIntervention.named_children + ~DistributedRepresentationIntervention.named_modules + ~DistributedRepresentationIntervention.named_parameters + ~DistributedRepresentationIntervention.parameters + ~DistributedRepresentationIntervention.register_backward_hook + ~DistributedRepresentationIntervention.register_buffer + ~DistributedRepresentationIntervention.register_forward_hook + ~DistributedRepresentationIntervention.register_forward_pre_hook + ~DistributedRepresentationIntervention.register_full_backward_hook + ~DistributedRepresentationIntervention.register_full_backward_pre_hook + ~DistributedRepresentationIntervention.register_load_state_dict_post_hook + ~DistributedRepresentationIntervention.register_module + ~DistributedRepresentationIntervention.register_parameter + ~DistributedRepresentationIntervention.register_state_dict_pre_hook + ~DistributedRepresentationIntervention.requires_grad_ + ~DistributedRepresentationIntervention.set_extra_state + ~DistributedRepresentationIntervention.share_memory + ~DistributedRepresentationIntervention.state_dict + ~DistributedRepresentationIntervention.to + ~DistributedRepresentationIntervention.to_empty + ~DistributedRepresentationIntervention.train + ~DistributedRepresentationIntervention.type + ~DistributedRepresentationIntervention.xpu + ~DistributedRepresentationIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~DistributedRepresentationIntervention.T_destination + ~DistributedRepresentationIntervention.call_super_init + ~DistributedRepresentationIntervention.dump_patches + ~DistributedRepresentationIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.Intervention.rst b/_sources/api/pyvene.models.interventions.Intervention.rst new file mode 100644 index 00000000..0ee34d8a --- /dev/null +++ b/_sources/api/pyvene.models.interventions.Intervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.Intervention +======================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: Intervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~Intervention.__init__ + ~Intervention.add_module + ~Intervention.apply + ~Intervention.bfloat16 + ~Intervention.buffers + ~Intervention.children + ~Intervention.compile + ~Intervention.cpu + ~Intervention.cuda + ~Intervention.double + ~Intervention.eval + ~Intervention.extra_repr + ~Intervention.float + ~Intervention.forward + ~Intervention.get_buffer + ~Intervention.get_extra_state + ~Intervention.get_parameter + ~Intervention.get_submodule + ~Intervention.half + ~Intervention.ipu + ~Intervention.load_state_dict + ~Intervention.modules + ~Intervention.named_buffers + ~Intervention.named_children + ~Intervention.named_modules + ~Intervention.named_parameters + ~Intervention.parameters + ~Intervention.register_backward_hook + ~Intervention.register_buffer + ~Intervention.register_forward_hook + ~Intervention.register_forward_pre_hook + ~Intervention.register_full_backward_hook + ~Intervention.register_full_backward_pre_hook + ~Intervention.register_load_state_dict_post_hook + ~Intervention.register_module + ~Intervention.register_parameter + ~Intervention.register_state_dict_pre_hook + ~Intervention.requires_grad_ + ~Intervention.set_extra_state + ~Intervention.set_interchange_dim + ~Intervention.set_source_representation + ~Intervention.share_memory + ~Intervention.state_dict + ~Intervention.to + ~Intervention.to_empty + ~Intervention.train + ~Intervention.type + ~Intervention.xpu + ~Intervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~Intervention.T_destination + ~Intervention.call_super_init + ~Intervention.dump_patches + ~Intervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.LocalistRepresentationIntervention.rst b/_sources/api/pyvene.models.interventions.LocalistRepresentationIntervention.rst new file mode 100644 index 00000000..c2c65535 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.LocalistRepresentationIntervention.rst @@ -0,0 +1,79 @@ +pyvene.models.interventions.LocalistRepresentationIntervention +============================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: LocalistRepresentationIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~LocalistRepresentationIntervention.__init__ + ~LocalistRepresentationIntervention.add_module + ~LocalistRepresentationIntervention.apply + ~LocalistRepresentationIntervention.bfloat16 + ~LocalistRepresentationIntervention.buffers + ~LocalistRepresentationIntervention.children + ~LocalistRepresentationIntervention.compile + ~LocalistRepresentationIntervention.cpu + ~LocalistRepresentationIntervention.cuda + ~LocalistRepresentationIntervention.double + ~LocalistRepresentationIntervention.eval + ~LocalistRepresentationIntervention.extra_repr + ~LocalistRepresentationIntervention.float + ~LocalistRepresentationIntervention.forward + ~LocalistRepresentationIntervention.get_buffer + ~LocalistRepresentationIntervention.get_extra_state + ~LocalistRepresentationIntervention.get_parameter + ~LocalistRepresentationIntervention.get_submodule + ~LocalistRepresentationIntervention.half + ~LocalistRepresentationIntervention.ipu + ~LocalistRepresentationIntervention.load_state_dict + ~LocalistRepresentationIntervention.modules + ~LocalistRepresentationIntervention.named_buffers + ~LocalistRepresentationIntervention.named_children + ~LocalistRepresentationIntervention.named_modules + ~LocalistRepresentationIntervention.named_parameters + ~LocalistRepresentationIntervention.parameters + ~LocalistRepresentationIntervention.register_backward_hook + ~LocalistRepresentationIntervention.register_buffer + ~LocalistRepresentationIntervention.register_forward_hook + ~LocalistRepresentationIntervention.register_forward_pre_hook + ~LocalistRepresentationIntervention.register_full_backward_hook + ~LocalistRepresentationIntervention.register_full_backward_pre_hook + ~LocalistRepresentationIntervention.register_load_state_dict_post_hook + ~LocalistRepresentationIntervention.register_module + ~LocalistRepresentationIntervention.register_parameter + ~LocalistRepresentationIntervention.register_state_dict_pre_hook + ~LocalistRepresentationIntervention.requires_grad_ + ~LocalistRepresentationIntervention.set_extra_state + ~LocalistRepresentationIntervention.share_memory + ~LocalistRepresentationIntervention.state_dict + ~LocalistRepresentationIntervention.to + ~LocalistRepresentationIntervention.to_empty + ~LocalistRepresentationIntervention.train + ~LocalistRepresentationIntervention.type + ~LocalistRepresentationIntervention.xpu + ~LocalistRepresentationIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~LocalistRepresentationIntervention.T_destination + ~LocalistRepresentationIntervention.call_super_init + ~LocalistRepresentationIntervention.dump_patches + ~LocalistRepresentationIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.rst b/_sources/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.rst new file mode 100644 index 00000000..1f47b2be --- /dev/null +++ b/_sources/api/pyvene.models.interventions.LowRankRotatedSpaceIntervention.rst @@ -0,0 +1,82 @@ +pyvene.models.interventions.LowRankRotatedSpaceIntervention +=========================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: LowRankRotatedSpaceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~LowRankRotatedSpaceIntervention.__init__ + ~LowRankRotatedSpaceIntervention.add_module + ~LowRankRotatedSpaceIntervention.apply + ~LowRankRotatedSpaceIntervention.bfloat16 + ~LowRankRotatedSpaceIntervention.buffers + ~LowRankRotatedSpaceIntervention.children + ~LowRankRotatedSpaceIntervention.compile + ~LowRankRotatedSpaceIntervention.cpu + ~LowRankRotatedSpaceIntervention.cuda + ~LowRankRotatedSpaceIntervention.double + ~LowRankRotatedSpaceIntervention.eval + ~LowRankRotatedSpaceIntervention.extra_repr + ~LowRankRotatedSpaceIntervention.float + ~LowRankRotatedSpaceIntervention.forward + ~LowRankRotatedSpaceIntervention.get_buffer + ~LowRankRotatedSpaceIntervention.get_extra_state + ~LowRankRotatedSpaceIntervention.get_parameter + ~LowRankRotatedSpaceIntervention.get_submodule + ~LowRankRotatedSpaceIntervention.half + ~LowRankRotatedSpaceIntervention.ipu + ~LowRankRotatedSpaceIntervention.load_state_dict + ~LowRankRotatedSpaceIntervention.modules + ~LowRankRotatedSpaceIntervention.named_buffers + ~LowRankRotatedSpaceIntervention.named_children + ~LowRankRotatedSpaceIntervention.named_modules + ~LowRankRotatedSpaceIntervention.named_parameters + ~LowRankRotatedSpaceIntervention.parameters + ~LowRankRotatedSpaceIntervention.register_backward_hook + ~LowRankRotatedSpaceIntervention.register_buffer + ~LowRankRotatedSpaceIntervention.register_forward_hook + ~LowRankRotatedSpaceIntervention.register_forward_pre_hook + ~LowRankRotatedSpaceIntervention.register_full_backward_hook + ~LowRankRotatedSpaceIntervention.register_full_backward_pre_hook + ~LowRankRotatedSpaceIntervention.register_load_state_dict_post_hook + ~LowRankRotatedSpaceIntervention.register_module + ~LowRankRotatedSpaceIntervention.register_parameter + ~LowRankRotatedSpaceIntervention.register_state_dict_pre_hook + ~LowRankRotatedSpaceIntervention.requires_grad_ + ~LowRankRotatedSpaceIntervention.set_extra_state + ~LowRankRotatedSpaceIntervention.set_interchange_dim + ~LowRankRotatedSpaceIntervention.set_source_representation + ~LowRankRotatedSpaceIntervention.share_memory + ~LowRankRotatedSpaceIntervention.state_dict + ~LowRankRotatedSpaceIntervention.tie_weight + ~LowRankRotatedSpaceIntervention.to + ~LowRankRotatedSpaceIntervention.to_empty + ~LowRankRotatedSpaceIntervention.train + ~LowRankRotatedSpaceIntervention.type + ~LowRankRotatedSpaceIntervention.xpu + ~LowRankRotatedSpaceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~LowRankRotatedSpaceIntervention.T_destination + ~LowRankRotatedSpaceIntervention.call_super_init + ~LowRankRotatedSpaceIntervention.dump_patches + ~LowRankRotatedSpaceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.NoiseIntervention.rst b/_sources/api/pyvene.models.interventions.NoiseIntervention.rst new file mode 100644 index 00000000..c3e22364 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.NoiseIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.NoiseIntervention +============================================= + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: NoiseIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~NoiseIntervention.__init__ + ~NoiseIntervention.add_module + ~NoiseIntervention.apply + ~NoiseIntervention.bfloat16 + ~NoiseIntervention.buffers + ~NoiseIntervention.children + ~NoiseIntervention.compile + ~NoiseIntervention.cpu + ~NoiseIntervention.cuda + ~NoiseIntervention.double + ~NoiseIntervention.eval + ~NoiseIntervention.extra_repr + ~NoiseIntervention.float + ~NoiseIntervention.forward + ~NoiseIntervention.get_buffer + ~NoiseIntervention.get_extra_state + ~NoiseIntervention.get_parameter + ~NoiseIntervention.get_submodule + ~NoiseIntervention.half + ~NoiseIntervention.ipu + ~NoiseIntervention.load_state_dict + ~NoiseIntervention.modules + ~NoiseIntervention.named_buffers + ~NoiseIntervention.named_children + ~NoiseIntervention.named_modules + ~NoiseIntervention.named_parameters + ~NoiseIntervention.parameters + ~NoiseIntervention.register_backward_hook + ~NoiseIntervention.register_buffer + ~NoiseIntervention.register_forward_hook + ~NoiseIntervention.register_forward_pre_hook + ~NoiseIntervention.register_full_backward_hook + ~NoiseIntervention.register_full_backward_pre_hook + ~NoiseIntervention.register_load_state_dict_post_hook + ~NoiseIntervention.register_module + ~NoiseIntervention.register_parameter + ~NoiseIntervention.register_state_dict_pre_hook + ~NoiseIntervention.requires_grad_ + ~NoiseIntervention.set_extra_state + ~NoiseIntervention.set_interchange_dim + ~NoiseIntervention.set_source_representation + ~NoiseIntervention.share_memory + ~NoiseIntervention.state_dict + ~NoiseIntervention.to + ~NoiseIntervention.to_empty + ~NoiseIntervention.train + ~NoiseIntervention.type + ~NoiseIntervention.xpu + ~NoiseIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~NoiseIntervention.T_destination + ~NoiseIntervention.call_super_init + ~NoiseIntervention.dump_patches + ~NoiseIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.PCARotatedSpaceIntervention.rst b/_sources/api/pyvene.models.interventions.PCARotatedSpaceIntervention.rst new file mode 100644 index 00000000..73a537ce --- /dev/null +++ b/_sources/api/pyvene.models.interventions.PCARotatedSpaceIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.PCARotatedSpaceIntervention +======================================================= + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: PCARotatedSpaceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~PCARotatedSpaceIntervention.__init__ + ~PCARotatedSpaceIntervention.add_module + ~PCARotatedSpaceIntervention.apply + ~PCARotatedSpaceIntervention.bfloat16 + ~PCARotatedSpaceIntervention.buffers + ~PCARotatedSpaceIntervention.children + ~PCARotatedSpaceIntervention.compile + ~PCARotatedSpaceIntervention.cpu + ~PCARotatedSpaceIntervention.cuda + ~PCARotatedSpaceIntervention.double + ~PCARotatedSpaceIntervention.eval + ~PCARotatedSpaceIntervention.extra_repr + ~PCARotatedSpaceIntervention.float + ~PCARotatedSpaceIntervention.forward + ~PCARotatedSpaceIntervention.get_buffer + ~PCARotatedSpaceIntervention.get_extra_state + ~PCARotatedSpaceIntervention.get_parameter + ~PCARotatedSpaceIntervention.get_submodule + ~PCARotatedSpaceIntervention.half + ~PCARotatedSpaceIntervention.ipu + ~PCARotatedSpaceIntervention.load_state_dict + ~PCARotatedSpaceIntervention.modules + ~PCARotatedSpaceIntervention.named_buffers + ~PCARotatedSpaceIntervention.named_children + ~PCARotatedSpaceIntervention.named_modules + ~PCARotatedSpaceIntervention.named_parameters + ~PCARotatedSpaceIntervention.parameters + ~PCARotatedSpaceIntervention.register_backward_hook + ~PCARotatedSpaceIntervention.register_buffer + ~PCARotatedSpaceIntervention.register_forward_hook + ~PCARotatedSpaceIntervention.register_forward_pre_hook + ~PCARotatedSpaceIntervention.register_full_backward_hook + ~PCARotatedSpaceIntervention.register_full_backward_pre_hook + ~PCARotatedSpaceIntervention.register_load_state_dict_post_hook + ~PCARotatedSpaceIntervention.register_module + ~PCARotatedSpaceIntervention.register_parameter + ~PCARotatedSpaceIntervention.register_state_dict_pre_hook + ~PCARotatedSpaceIntervention.requires_grad_ + ~PCARotatedSpaceIntervention.set_extra_state + ~PCARotatedSpaceIntervention.set_interchange_dim + ~PCARotatedSpaceIntervention.set_source_representation + ~PCARotatedSpaceIntervention.share_memory + ~PCARotatedSpaceIntervention.state_dict + ~PCARotatedSpaceIntervention.to + ~PCARotatedSpaceIntervention.to_empty + ~PCARotatedSpaceIntervention.train + ~PCARotatedSpaceIntervention.type + ~PCARotatedSpaceIntervention.xpu + ~PCARotatedSpaceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~PCARotatedSpaceIntervention.T_destination + ~PCARotatedSpaceIntervention.call_super_init + ~PCARotatedSpaceIntervention.dump_patches + ~PCARotatedSpaceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.RotatedSpaceIntervention.rst b/_sources/api/pyvene.models.interventions.RotatedSpaceIntervention.rst new file mode 100644 index 00000000..43265c49 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.RotatedSpaceIntervention.rst @@ -0,0 +1,82 @@ +pyvene.models.interventions.RotatedSpaceIntervention +==================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: RotatedSpaceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~RotatedSpaceIntervention.__init__ + ~RotatedSpaceIntervention.add_module + ~RotatedSpaceIntervention.apply + ~RotatedSpaceIntervention.bfloat16 + ~RotatedSpaceIntervention.buffers + ~RotatedSpaceIntervention.children + ~RotatedSpaceIntervention.compile + ~RotatedSpaceIntervention.cpu + ~RotatedSpaceIntervention.cuda + ~RotatedSpaceIntervention.double + ~RotatedSpaceIntervention.eval + ~RotatedSpaceIntervention.extra_repr + ~RotatedSpaceIntervention.float + ~RotatedSpaceIntervention.forward + ~RotatedSpaceIntervention.get_buffer + ~RotatedSpaceIntervention.get_extra_state + ~RotatedSpaceIntervention.get_parameter + ~RotatedSpaceIntervention.get_submodule + ~RotatedSpaceIntervention.half + ~RotatedSpaceIntervention.ipu + ~RotatedSpaceIntervention.load_state_dict + ~RotatedSpaceIntervention.modules + ~RotatedSpaceIntervention.named_buffers + ~RotatedSpaceIntervention.named_children + ~RotatedSpaceIntervention.named_modules + ~RotatedSpaceIntervention.named_parameters + ~RotatedSpaceIntervention.parameters + ~RotatedSpaceIntervention.register_backward_hook + ~RotatedSpaceIntervention.register_buffer + ~RotatedSpaceIntervention.register_forward_hook + ~RotatedSpaceIntervention.register_forward_pre_hook + ~RotatedSpaceIntervention.register_full_backward_hook + ~RotatedSpaceIntervention.register_full_backward_pre_hook + ~RotatedSpaceIntervention.register_load_state_dict_post_hook + ~RotatedSpaceIntervention.register_module + ~RotatedSpaceIntervention.register_parameter + ~RotatedSpaceIntervention.register_state_dict_pre_hook + ~RotatedSpaceIntervention.requires_grad_ + ~RotatedSpaceIntervention.set_extra_state + ~RotatedSpaceIntervention.set_interchange_dim + ~RotatedSpaceIntervention.set_source_representation + ~RotatedSpaceIntervention.share_memory + ~RotatedSpaceIntervention.state_dict + ~RotatedSpaceIntervention.tie_weight + ~RotatedSpaceIntervention.to + ~RotatedSpaceIntervention.to_empty + ~RotatedSpaceIntervention.train + ~RotatedSpaceIntervention.type + ~RotatedSpaceIntervention.xpu + ~RotatedSpaceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~RotatedSpaceIntervention.T_destination + ~RotatedSpaceIntervention.call_super_init + ~RotatedSpaceIntervention.dump_patches + ~RotatedSpaceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.rst b/_sources/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.rst new file mode 100644 index 00000000..fbfaf8c0 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SharedWeightsTrainableIntervention.rst @@ -0,0 +1,82 @@ +pyvene.models.interventions.SharedWeightsTrainableIntervention +============================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SharedWeightsTrainableIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SharedWeightsTrainableIntervention.__init__ + ~SharedWeightsTrainableIntervention.add_module + ~SharedWeightsTrainableIntervention.apply + ~SharedWeightsTrainableIntervention.bfloat16 + ~SharedWeightsTrainableIntervention.buffers + ~SharedWeightsTrainableIntervention.children + ~SharedWeightsTrainableIntervention.compile + ~SharedWeightsTrainableIntervention.cpu + ~SharedWeightsTrainableIntervention.cuda + ~SharedWeightsTrainableIntervention.double + ~SharedWeightsTrainableIntervention.eval + ~SharedWeightsTrainableIntervention.extra_repr + ~SharedWeightsTrainableIntervention.float + ~SharedWeightsTrainableIntervention.forward + ~SharedWeightsTrainableIntervention.get_buffer + ~SharedWeightsTrainableIntervention.get_extra_state + ~SharedWeightsTrainableIntervention.get_parameter + ~SharedWeightsTrainableIntervention.get_submodule + ~SharedWeightsTrainableIntervention.half + ~SharedWeightsTrainableIntervention.ipu + ~SharedWeightsTrainableIntervention.load_state_dict + ~SharedWeightsTrainableIntervention.modules + ~SharedWeightsTrainableIntervention.named_buffers + ~SharedWeightsTrainableIntervention.named_children + ~SharedWeightsTrainableIntervention.named_modules + ~SharedWeightsTrainableIntervention.named_parameters + ~SharedWeightsTrainableIntervention.parameters + ~SharedWeightsTrainableIntervention.register_backward_hook + ~SharedWeightsTrainableIntervention.register_buffer + ~SharedWeightsTrainableIntervention.register_forward_hook + ~SharedWeightsTrainableIntervention.register_forward_pre_hook + ~SharedWeightsTrainableIntervention.register_full_backward_hook + ~SharedWeightsTrainableIntervention.register_full_backward_pre_hook + ~SharedWeightsTrainableIntervention.register_load_state_dict_post_hook + ~SharedWeightsTrainableIntervention.register_module + ~SharedWeightsTrainableIntervention.register_parameter + ~SharedWeightsTrainableIntervention.register_state_dict_pre_hook + ~SharedWeightsTrainableIntervention.requires_grad_ + ~SharedWeightsTrainableIntervention.set_extra_state + ~SharedWeightsTrainableIntervention.set_interchange_dim + ~SharedWeightsTrainableIntervention.set_source_representation + ~SharedWeightsTrainableIntervention.share_memory + ~SharedWeightsTrainableIntervention.state_dict + ~SharedWeightsTrainableIntervention.tie_weight + ~SharedWeightsTrainableIntervention.to + ~SharedWeightsTrainableIntervention.to_empty + ~SharedWeightsTrainableIntervention.train + ~SharedWeightsTrainableIntervention.type + ~SharedWeightsTrainableIntervention.xpu + ~SharedWeightsTrainableIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SharedWeightsTrainableIntervention.T_destination + ~SharedWeightsTrainableIntervention.call_super_init + ~SharedWeightsTrainableIntervention.dump_patches + ~SharedWeightsTrainableIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SigmoidMaskIntervention.rst b/_sources/api/pyvene.models.interventions.SigmoidMaskIntervention.rst new file mode 100644 index 00000000..d3a327cb --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SigmoidMaskIntervention.rst @@ -0,0 +1,84 @@ +pyvene.models.interventions.SigmoidMaskIntervention +=================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SigmoidMaskIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SigmoidMaskIntervention.__init__ + ~SigmoidMaskIntervention.add_module + ~SigmoidMaskIntervention.apply + ~SigmoidMaskIntervention.bfloat16 + ~SigmoidMaskIntervention.buffers + ~SigmoidMaskIntervention.children + ~SigmoidMaskIntervention.compile + ~SigmoidMaskIntervention.cpu + ~SigmoidMaskIntervention.cuda + ~SigmoidMaskIntervention.double + ~SigmoidMaskIntervention.eval + ~SigmoidMaskIntervention.extra_repr + ~SigmoidMaskIntervention.float + ~SigmoidMaskIntervention.forward + ~SigmoidMaskIntervention.get_buffer + ~SigmoidMaskIntervention.get_extra_state + ~SigmoidMaskIntervention.get_parameter + ~SigmoidMaskIntervention.get_submodule + ~SigmoidMaskIntervention.get_temperature + ~SigmoidMaskIntervention.half + ~SigmoidMaskIntervention.ipu + ~SigmoidMaskIntervention.load_state_dict + ~SigmoidMaskIntervention.modules + ~SigmoidMaskIntervention.named_buffers + ~SigmoidMaskIntervention.named_children + ~SigmoidMaskIntervention.named_modules + ~SigmoidMaskIntervention.named_parameters + ~SigmoidMaskIntervention.parameters + ~SigmoidMaskIntervention.register_backward_hook + ~SigmoidMaskIntervention.register_buffer + ~SigmoidMaskIntervention.register_forward_hook + ~SigmoidMaskIntervention.register_forward_pre_hook + ~SigmoidMaskIntervention.register_full_backward_hook + ~SigmoidMaskIntervention.register_full_backward_pre_hook + ~SigmoidMaskIntervention.register_load_state_dict_post_hook + ~SigmoidMaskIntervention.register_module + ~SigmoidMaskIntervention.register_parameter + ~SigmoidMaskIntervention.register_state_dict_pre_hook + ~SigmoidMaskIntervention.requires_grad_ + ~SigmoidMaskIntervention.set_extra_state + ~SigmoidMaskIntervention.set_interchange_dim + ~SigmoidMaskIntervention.set_source_representation + ~SigmoidMaskIntervention.set_temperature + ~SigmoidMaskIntervention.share_memory + ~SigmoidMaskIntervention.state_dict + ~SigmoidMaskIntervention.tie_weight + ~SigmoidMaskIntervention.to + ~SigmoidMaskIntervention.to_empty + ~SigmoidMaskIntervention.train + ~SigmoidMaskIntervention.type + ~SigmoidMaskIntervention.xpu + ~SigmoidMaskIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SigmoidMaskIntervention.T_destination + ~SigmoidMaskIntervention.call_super_init + ~SigmoidMaskIntervention.dump_patches + ~SigmoidMaskIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.rst b/_sources/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.rst new file mode 100644 index 00000000..509953f9 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention.rst @@ -0,0 +1,85 @@ +pyvene.models.interventions.SigmoidMaskRotatedSpaceIntervention +=============================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SigmoidMaskRotatedSpaceIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SigmoidMaskRotatedSpaceIntervention.__init__ + ~SigmoidMaskRotatedSpaceIntervention.add_module + ~SigmoidMaskRotatedSpaceIntervention.apply + ~SigmoidMaskRotatedSpaceIntervention.bfloat16 + ~SigmoidMaskRotatedSpaceIntervention.buffers + ~SigmoidMaskRotatedSpaceIntervention.children + ~SigmoidMaskRotatedSpaceIntervention.compile + ~SigmoidMaskRotatedSpaceIntervention.cpu + ~SigmoidMaskRotatedSpaceIntervention.cuda + ~SigmoidMaskRotatedSpaceIntervention.double + ~SigmoidMaskRotatedSpaceIntervention.eval + ~SigmoidMaskRotatedSpaceIntervention.extra_repr + ~SigmoidMaskRotatedSpaceIntervention.float + ~SigmoidMaskRotatedSpaceIntervention.forward + ~SigmoidMaskRotatedSpaceIntervention.get_boundary_parameters + ~SigmoidMaskRotatedSpaceIntervention.get_buffer + ~SigmoidMaskRotatedSpaceIntervention.get_extra_state + ~SigmoidMaskRotatedSpaceIntervention.get_parameter + ~SigmoidMaskRotatedSpaceIntervention.get_submodule + ~SigmoidMaskRotatedSpaceIntervention.get_temperature + ~SigmoidMaskRotatedSpaceIntervention.half + ~SigmoidMaskRotatedSpaceIntervention.ipu + ~SigmoidMaskRotatedSpaceIntervention.load_state_dict + ~SigmoidMaskRotatedSpaceIntervention.modules + ~SigmoidMaskRotatedSpaceIntervention.named_buffers + ~SigmoidMaskRotatedSpaceIntervention.named_children + ~SigmoidMaskRotatedSpaceIntervention.named_modules + ~SigmoidMaskRotatedSpaceIntervention.named_parameters + ~SigmoidMaskRotatedSpaceIntervention.parameters + ~SigmoidMaskRotatedSpaceIntervention.register_backward_hook + ~SigmoidMaskRotatedSpaceIntervention.register_buffer + ~SigmoidMaskRotatedSpaceIntervention.register_forward_hook + ~SigmoidMaskRotatedSpaceIntervention.register_forward_pre_hook + ~SigmoidMaskRotatedSpaceIntervention.register_full_backward_hook + ~SigmoidMaskRotatedSpaceIntervention.register_full_backward_pre_hook + ~SigmoidMaskRotatedSpaceIntervention.register_load_state_dict_post_hook + ~SigmoidMaskRotatedSpaceIntervention.register_module + ~SigmoidMaskRotatedSpaceIntervention.register_parameter + ~SigmoidMaskRotatedSpaceIntervention.register_state_dict_pre_hook + ~SigmoidMaskRotatedSpaceIntervention.requires_grad_ + ~SigmoidMaskRotatedSpaceIntervention.set_extra_state + ~SigmoidMaskRotatedSpaceIntervention.set_interchange_dim + ~SigmoidMaskRotatedSpaceIntervention.set_source_representation + ~SigmoidMaskRotatedSpaceIntervention.set_temperature + ~SigmoidMaskRotatedSpaceIntervention.share_memory + ~SigmoidMaskRotatedSpaceIntervention.state_dict + ~SigmoidMaskRotatedSpaceIntervention.tie_weight + ~SigmoidMaskRotatedSpaceIntervention.to + ~SigmoidMaskRotatedSpaceIntervention.to_empty + ~SigmoidMaskRotatedSpaceIntervention.train + ~SigmoidMaskRotatedSpaceIntervention.type + ~SigmoidMaskRotatedSpaceIntervention.xpu + ~SigmoidMaskRotatedSpaceIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SigmoidMaskRotatedSpaceIntervention.T_destination + ~SigmoidMaskRotatedSpaceIntervention.call_super_init + ~SigmoidMaskRotatedSpaceIntervention.dump_patches + ~SigmoidMaskRotatedSpaceIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SkipIntervention.rst b/_sources/api/pyvene.models.interventions.SkipIntervention.rst new file mode 100644 index 00000000..c7029da0 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SkipIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.SkipIntervention +============================================ + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SkipIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SkipIntervention.__init__ + ~SkipIntervention.add_module + ~SkipIntervention.apply + ~SkipIntervention.bfloat16 + ~SkipIntervention.buffers + ~SkipIntervention.children + ~SkipIntervention.compile + ~SkipIntervention.cpu + ~SkipIntervention.cuda + ~SkipIntervention.double + ~SkipIntervention.eval + ~SkipIntervention.extra_repr + ~SkipIntervention.float + ~SkipIntervention.forward + ~SkipIntervention.get_buffer + ~SkipIntervention.get_extra_state + ~SkipIntervention.get_parameter + ~SkipIntervention.get_submodule + ~SkipIntervention.half + ~SkipIntervention.ipu + ~SkipIntervention.load_state_dict + ~SkipIntervention.modules + ~SkipIntervention.named_buffers + ~SkipIntervention.named_children + ~SkipIntervention.named_modules + ~SkipIntervention.named_parameters + ~SkipIntervention.parameters + ~SkipIntervention.register_backward_hook + ~SkipIntervention.register_buffer + ~SkipIntervention.register_forward_hook + ~SkipIntervention.register_forward_pre_hook + ~SkipIntervention.register_full_backward_hook + ~SkipIntervention.register_full_backward_pre_hook + ~SkipIntervention.register_load_state_dict_post_hook + ~SkipIntervention.register_module + ~SkipIntervention.register_parameter + ~SkipIntervention.register_state_dict_pre_hook + ~SkipIntervention.requires_grad_ + ~SkipIntervention.set_extra_state + ~SkipIntervention.set_interchange_dim + ~SkipIntervention.set_source_representation + ~SkipIntervention.share_memory + ~SkipIntervention.state_dict + ~SkipIntervention.to + ~SkipIntervention.to_empty + ~SkipIntervention.train + ~SkipIntervention.type + ~SkipIntervention.xpu + ~SkipIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SkipIntervention.T_destination + ~SkipIntervention.call_super_init + ~SkipIntervention.dump_patches + ~SkipIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SourcelessIntervention.rst b/_sources/api/pyvene.models.interventions.SourcelessIntervention.rst new file mode 100644 index 00000000..0a6a187e --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SourcelessIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.SourcelessIntervention +================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SourcelessIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SourcelessIntervention.__init__ + ~SourcelessIntervention.add_module + ~SourcelessIntervention.apply + ~SourcelessIntervention.bfloat16 + ~SourcelessIntervention.buffers + ~SourcelessIntervention.children + ~SourcelessIntervention.compile + ~SourcelessIntervention.cpu + ~SourcelessIntervention.cuda + ~SourcelessIntervention.double + ~SourcelessIntervention.eval + ~SourcelessIntervention.extra_repr + ~SourcelessIntervention.float + ~SourcelessIntervention.forward + ~SourcelessIntervention.get_buffer + ~SourcelessIntervention.get_extra_state + ~SourcelessIntervention.get_parameter + ~SourcelessIntervention.get_submodule + ~SourcelessIntervention.half + ~SourcelessIntervention.ipu + ~SourcelessIntervention.load_state_dict + ~SourcelessIntervention.modules + ~SourcelessIntervention.named_buffers + ~SourcelessIntervention.named_children + ~SourcelessIntervention.named_modules + ~SourcelessIntervention.named_parameters + ~SourcelessIntervention.parameters + ~SourcelessIntervention.register_backward_hook + ~SourcelessIntervention.register_buffer + ~SourcelessIntervention.register_forward_hook + ~SourcelessIntervention.register_forward_pre_hook + ~SourcelessIntervention.register_full_backward_hook + ~SourcelessIntervention.register_full_backward_pre_hook + ~SourcelessIntervention.register_load_state_dict_post_hook + ~SourcelessIntervention.register_module + ~SourcelessIntervention.register_parameter + ~SourcelessIntervention.register_state_dict_pre_hook + ~SourcelessIntervention.requires_grad_ + ~SourcelessIntervention.set_extra_state + ~SourcelessIntervention.set_interchange_dim + ~SourcelessIntervention.set_source_representation + ~SourcelessIntervention.share_memory + ~SourcelessIntervention.state_dict + ~SourcelessIntervention.to + ~SourcelessIntervention.to_empty + ~SourcelessIntervention.train + ~SourcelessIntervention.type + ~SourcelessIntervention.xpu + ~SourcelessIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SourcelessIntervention.T_destination + ~SourcelessIntervention.call_super_init + ~SourcelessIntervention.dump_patches + ~SourcelessIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.SubtractionIntervention.rst b/_sources/api/pyvene.models.interventions.SubtractionIntervention.rst new file mode 100644 index 00000000..a00d0e51 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.SubtractionIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.SubtractionIntervention +=================================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: SubtractionIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SubtractionIntervention.__init__ + ~SubtractionIntervention.add_module + ~SubtractionIntervention.apply + ~SubtractionIntervention.bfloat16 + ~SubtractionIntervention.buffers + ~SubtractionIntervention.children + ~SubtractionIntervention.compile + ~SubtractionIntervention.cpu + ~SubtractionIntervention.cuda + ~SubtractionIntervention.double + ~SubtractionIntervention.eval + ~SubtractionIntervention.extra_repr + ~SubtractionIntervention.float + ~SubtractionIntervention.forward + ~SubtractionIntervention.get_buffer + ~SubtractionIntervention.get_extra_state + ~SubtractionIntervention.get_parameter + ~SubtractionIntervention.get_submodule + ~SubtractionIntervention.half + ~SubtractionIntervention.ipu + ~SubtractionIntervention.load_state_dict + ~SubtractionIntervention.modules + ~SubtractionIntervention.named_buffers + ~SubtractionIntervention.named_children + ~SubtractionIntervention.named_modules + ~SubtractionIntervention.named_parameters + ~SubtractionIntervention.parameters + ~SubtractionIntervention.register_backward_hook + ~SubtractionIntervention.register_buffer + ~SubtractionIntervention.register_forward_hook + ~SubtractionIntervention.register_forward_pre_hook + ~SubtractionIntervention.register_full_backward_hook + ~SubtractionIntervention.register_full_backward_pre_hook + ~SubtractionIntervention.register_load_state_dict_post_hook + ~SubtractionIntervention.register_module + ~SubtractionIntervention.register_parameter + ~SubtractionIntervention.register_state_dict_pre_hook + ~SubtractionIntervention.requires_grad_ + ~SubtractionIntervention.set_extra_state + ~SubtractionIntervention.set_interchange_dim + ~SubtractionIntervention.set_source_representation + ~SubtractionIntervention.share_memory + ~SubtractionIntervention.state_dict + ~SubtractionIntervention.to + ~SubtractionIntervention.to_empty + ~SubtractionIntervention.train + ~SubtractionIntervention.type + ~SubtractionIntervention.xpu + ~SubtractionIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SubtractionIntervention.T_destination + ~SubtractionIntervention.call_super_init + ~SubtractionIntervention.dump_patches + ~SubtractionIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.TrainableIntervention.rst b/_sources/api/pyvene.models.interventions.TrainableIntervention.rst new file mode 100644 index 00000000..958709fe --- /dev/null +++ b/_sources/api/pyvene.models.interventions.TrainableIntervention.rst @@ -0,0 +1,82 @@ +pyvene.models.interventions.TrainableIntervention +================================================= + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: TrainableIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~TrainableIntervention.__init__ + ~TrainableIntervention.add_module + ~TrainableIntervention.apply + ~TrainableIntervention.bfloat16 + ~TrainableIntervention.buffers + ~TrainableIntervention.children + ~TrainableIntervention.compile + ~TrainableIntervention.cpu + ~TrainableIntervention.cuda + ~TrainableIntervention.double + ~TrainableIntervention.eval + ~TrainableIntervention.extra_repr + ~TrainableIntervention.float + ~TrainableIntervention.forward + ~TrainableIntervention.get_buffer + ~TrainableIntervention.get_extra_state + ~TrainableIntervention.get_parameter + ~TrainableIntervention.get_submodule + ~TrainableIntervention.half + ~TrainableIntervention.ipu + ~TrainableIntervention.load_state_dict + ~TrainableIntervention.modules + ~TrainableIntervention.named_buffers + ~TrainableIntervention.named_children + ~TrainableIntervention.named_modules + ~TrainableIntervention.named_parameters + ~TrainableIntervention.parameters + ~TrainableIntervention.register_backward_hook + ~TrainableIntervention.register_buffer + ~TrainableIntervention.register_forward_hook + ~TrainableIntervention.register_forward_pre_hook + ~TrainableIntervention.register_full_backward_hook + ~TrainableIntervention.register_full_backward_pre_hook + ~TrainableIntervention.register_load_state_dict_post_hook + ~TrainableIntervention.register_module + ~TrainableIntervention.register_parameter + ~TrainableIntervention.register_state_dict_pre_hook + ~TrainableIntervention.requires_grad_ + ~TrainableIntervention.set_extra_state + ~TrainableIntervention.set_interchange_dim + ~TrainableIntervention.set_source_representation + ~TrainableIntervention.share_memory + ~TrainableIntervention.state_dict + ~TrainableIntervention.tie_weight + ~TrainableIntervention.to + ~TrainableIntervention.to_empty + ~TrainableIntervention.train + ~TrainableIntervention.type + ~TrainableIntervention.xpu + ~TrainableIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~TrainableIntervention.T_destination + ~TrainableIntervention.call_super_init + ~TrainableIntervention.dump_patches + ~TrainableIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.VanillaIntervention.rst b/_sources/api/pyvene.models.interventions.VanillaIntervention.rst new file mode 100644 index 00000000..65d86885 --- /dev/null +++ b/_sources/api/pyvene.models.interventions.VanillaIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.VanillaIntervention +=============================================== + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: VanillaIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~VanillaIntervention.__init__ + ~VanillaIntervention.add_module + ~VanillaIntervention.apply + ~VanillaIntervention.bfloat16 + ~VanillaIntervention.buffers + ~VanillaIntervention.children + ~VanillaIntervention.compile + ~VanillaIntervention.cpu + ~VanillaIntervention.cuda + ~VanillaIntervention.double + ~VanillaIntervention.eval + ~VanillaIntervention.extra_repr + ~VanillaIntervention.float + ~VanillaIntervention.forward + ~VanillaIntervention.get_buffer + ~VanillaIntervention.get_extra_state + ~VanillaIntervention.get_parameter + ~VanillaIntervention.get_submodule + ~VanillaIntervention.half + ~VanillaIntervention.ipu + ~VanillaIntervention.load_state_dict + ~VanillaIntervention.modules + ~VanillaIntervention.named_buffers + ~VanillaIntervention.named_children + ~VanillaIntervention.named_modules + ~VanillaIntervention.named_parameters + ~VanillaIntervention.parameters + ~VanillaIntervention.register_backward_hook + ~VanillaIntervention.register_buffer + ~VanillaIntervention.register_forward_hook + ~VanillaIntervention.register_forward_pre_hook + ~VanillaIntervention.register_full_backward_hook + ~VanillaIntervention.register_full_backward_pre_hook + ~VanillaIntervention.register_load_state_dict_post_hook + ~VanillaIntervention.register_module + ~VanillaIntervention.register_parameter + ~VanillaIntervention.register_state_dict_pre_hook + ~VanillaIntervention.requires_grad_ + ~VanillaIntervention.set_extra_state + ~VanillaIntervention.set_interchange_dim + ~VanillaIntervention.set_source_representation + ~VanillaIntervention.share_memory + ~VanillaIntervention.state_dict + ~VanillaIntervention.to + ~VanillaIntervention.to_empty + ~VanillaIntervention.train + ~VanillaIntervention.type + ~VanillaIntervention.xpu + ~VanillaIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~VanillaIntervention.T_destination + ~VanillaIntervention.call_super_init + ~VanillaIntervention.dump_patches + ~VanillaIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.ZeroIntervention.rst b/_sources/api/pyvene.models.interventions.ZeroIntervention.rst new file mode 100644 index 00000000..90bed97e --- /dev/null +++ b/_sources/api/pyvene.models.interventions.ZeroIntervention.rst @@ -0,0 +1,81 @@ +pyvene.models.interventions.ZeroIntervention +============================================ + +.. currentmodule:: pyvene.models.interventions + +.. autoclass:: ZeroIntervention + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~ZeroIntervention.__init__ + ~ZeroIntervention.add_module + ~ZeroIntervention.apply + ~ZeroIntervention.bfloat16 + ~ZeroIntervention.buffers + ~ZeroIntervention.children + ~ZeroIntervention.compile + ~ZeroIntervention.cpu + ~ZeroIntervention.cuda + ~ZeroIntervention.double + ~ZeroIntervention.eval + ~ZeroIntervention.extra_repr + ~ZeroIntervention.float + ~ZeroIntervention.forward + ~ZeroIntervention.get_buffer + ~ZeroIntervention.get_extra_state + ~ZeroIntervention.get_parameter + ~ZeroIntervention.get_submodule + ~ZeroIntervention.half + ~ZeroIntervention.ipu + ~ZeroIntervention.load_state_dict + ~ZeroIntervention.modules + ~ZeroIntervention.named_buffers + ~ZeroIntervention.named_children + ~ZeroIntervention.named_modules + ~ZeroIntervention.named_parameters + ~ZeroIntervention.parameters + ~ZeroIntervention.register_backward_hook + ~ZeroIntervention.register_buffer + ~ZeroIntervention.register_forward_hook + ~ZeroIntervention.register_forward_pre_hook + ~ZeroIntervention.register_full_backward_hook + ~ZeroIntervention.register_full_backward_pre_hook + ~ZeroIntervention.register_load_state_dict_post_hook + ~ZeroIntervention.register_module + ~ZeroIntervention.register_parameter + ~ZeroIntervention.register_state_dict_pre_hook + ~ZeroIntervention.requires_grad_ + ~ZeroIntervention.set_extra_state + ~ZeroIntervention.set_interchange_dim + ~ZeroIntervention.set_source_representation + ~ZeroIntervention.share_memory + ~ZeroIntervention.state_dict + ~ZeroIntervention.to + ~ZeroIntervention.to_empty + ~ZeroIntervention.train + ~ZeroIntervention.type + ~ZeroIntervention.xpu + ~ZeroIntervention.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~ZeroIntervention.T_destination + ~ZeroIntervention.call_super_init + ~ZeroIntervention.dump_patches + ~ZeroIntervention.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.interventions.rst b/_sources/api/pyvene.models.interventions.rst new file mode 100644 index 00000000..1acbb86e --- /dev/null +++ b/_sources/api/pyvene.models.interventions.rst @@ -0,0 +1,52 @@ +pyvene.models.interventions +=========================== + +.. automodule:: pyvene.models.interventions + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + AdditionIntervention + AutoencoderIntervention + BasisAgnosticIntervention + BoundlessRotatedSpaceIntervention + CollectIntervention + ConstantSourceIntervention + DistributedRepresentationIntervention + Intervention + LocalistRepresentationIntervention + LowRankRotatedSpaceIntervention + NoiseIntervention + PCARotatedSpaceIntervention + RotatedSpaceIntervention + SharedWeightsTrainableIntervention + SigmoidMaskIntervention + SigmoidMaskRotatedSpaceIntervention + SkipIntervention + SourcelessIntervention + SubtractionIntervention + TrainableIntervention + VanillaIntervention + ZeroIntervention + + + + + + + + + diff --git a/_sources/api/pyvene.models.layers.AutoencoderLayer.rst b/_sources/api/pyvene.models.layers.AutoencoderLayer.rst new file mode 100644 index 00000000..4f6118db --- /dev/null +++ b/_sources/api/pyvene.models.layers.AutoencoderLayer.rst @@ -0,0 +1,81 @@ +pyvene.models.layers.AutoencoderLayer +===================================== + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: AutoencoderLayer + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~AutoencoderLayer.__init__ + ~AutoencoderLayer.add_module + ~AutoencoderLayer.apply + ~AutoencoderLayer.bfloat16 + ~AutoencoderLayer.buffers + ~AutoencoderLayer.children + ~AutoencoderLayer.compile + ~AutoencoderLayer.cpu + ~AutoencoderLayer.cuda + ~AutoencoderLayer.decode + ~AutoencoderLayer.double + ~AutoencoderLayer.encode + ~AutoencoderLayer.eval + ~AutoencoderLayer.extra_repr + ~AutoencoderLayer.float + ~AutoencoderLayer.forward + ~AutoencoderLayer.get_buffer + ~AutoencoderLayer.get_extra_state + ~AutoencoderLayer.get_parameter + ~AutoencoderLayer.get_submodule + ~AutoencoderLayer.half + ~AutoencoderLayer.ipu + ~AutoencoderLayer.load_state_dict + ~AutoencoderLayer.modules + ~AutoencoderLayer.named_buffers + ~AutoencoderLayer.named_children + ~AutoencoderLayer.named_modules + ~AutoencoderLayer.named_parameters + ~AutoencoderLayer.parameters + ~AutoencoderLayer.register_backward_hook + ~AutoencoderLayer.register_buffer + ~AutoencoderLayer.register_forward_hook + ~AutoencoderLayer.register_forward_pre_hook + ~AutoencoderLayer.register_full_backward_hook + ~AutoencoderLayer.register_full_backward_pre_hook + ~AutoencoderLayer.register_load_state_dict_post_hook + ~AutoencoderLayer.register_module + ~AutoencoderLayer.register_parameter + ~AutoencoderLayer.register_state_dict_pre_hook + ~AutoencoderLayer.requires_grad_ + ~AutoencoderLayer.set_extra_state + ~AutoencoderLayer.share_memory + ~AutoencoderLayer.state_dict + ~AutoencoderLayer.to + ~AutoencoderLayer.to_empty + ~AutoencoderLayer.train + ~AutoencoderLayer.type + ~AutoencoderLayer.xpu + ~AutoencoderLayer.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AutoencoderLayer.T_destination + ~AutoencoderLayer.call_super_init + ~AutoencoderLayer.dump_patches + ~AutoencoderLayer.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.AutoencoderLayerBase.rst b/_sources/api/pyvene.models.layers.AutoencoderLayerBase.rst new file mode 100644 index 00000000..85bc9ead --- /dev/null +++ b/_sources/api/pyvene.models.layers.AutoencoderLayerBase.rst @@ -0,0 +1,81 @@ +pyvene.models.layers.AutoencoderLayerBase +========================================= + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: AutoencoderLayerBase + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~AutoencoderLayerBase.__init__ + ~AutoencoderLayerBase.add_module + ~AutoencoderLayerBase.apply + ~AutoencoderLayerBase.bfloat16 + ~AutoencoderLayerBase.buffers + ~AutoencoderLayerBase.children + ~AutoencoderLayerBase.compile + ~AutoencoderLayerBase.cpu + ~AutoencoderLayerBase.cuda + ~AutoencoderLayerBase.decode + ~AutoencoderLayerBase.double + ~AutoencoderLayerBase.encode + ~AutoencoderLayerBase.eval + ~AutoencoderLayerBase.extra_repr + ~AutoencoderLayerBase.float + ~AutoencoderLayerBase.forward + ~AutoencoderLayerBase.get_buffer + ~AutoencoderLayerBase.get_extra_state + ~AutoencoderLayerBase.get_parameter + ~AutoencoderLayerBase.get_submodule + ~AutoencoderLayerBase.half + ~AutoencoderLayerBase.ipu + ~AutoencoderLayerBase.load_state_dict + ~AutoencoderLayerBase.modules + ~AutoencoderLayerBase.named_buffers + ~AutoencoderLayerBase.named_children + ~AutoencoderLayerBase.named_modules + ~AutoencoderLayerBase.named_parameters + ~AutoencoderLayerBase.parameters + ~AutoencoderLayerBase.register_backward_hook + ~AutoencoderLayerBase.register_buffer + ~AutoencoderLayerBase.register_forward_hook + ~AutoencoderLayerBase.register_forward_pre_hook + ~AutoencoderLayerBase.register_full_backward_hook + ~AutoencoderLayerBase.register_full_backward_pre_hook + ~AutoencoderLayerBase.register_load_state_dict_post_hook + ~AutoencoderLayerBase.register_module + ~AutoencoderLayerBase.register_parameter + ~AutoencoderLayerBase.register_state_dict_pre_hook + ~AutoencoderLayerBase.requires_grad_ + ~AutoencoderLayerBase.set_extra_state + ~AutoencoderLayerBase.share_memory + ~AutoencoderLayerBase.state_dict + ~AutoencoderLayerBase.to + ~AutoencoderLayerBase.to_empty + ~AutoencoderLayerBase.train + ~AutoencoderLayerBase.type + ~AutoencoderLayerBase.xpu + ~AutoencoderLayerBase.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AutoencoderLayerBase.T_destination + ~AutoencoderLayerBase.call_super_init + ~AutoencoderLayerBase.dump_patches + ~AutoencoderLayerBase.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.InverseRotateLayer.rst b/_sources/api/pyvene.models.layers.InverseRotateLayer.rst new file mode 100644 index 00000000..d5e6a963 --- /dev/null +++ b/_sources/api/pyvene.models.layers.InverseRotateLayer.rst @@ -0,0 +1,79 @@ +pyvene.models.layers.InverseRotateLayer +======================================= + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: InverseRotateLayer + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~InverseRotateLayer.__init__ + ~InverseRotateLayer.add_module + ~InverseRotateLayer.apply + ~InverseRotateLayer.bfloat16 + ~InverseRotateLayer.buffers + ~InverseRotateLayer.children + ~InverseRotateLayer.compile + ~InverseRotateLayer.cpu + ~InverseRotateLayer.cuda + ~InverseRotateLayer.double + ~InverseRotateLayer.eval + ~InverseRotateLayer.extra_repr + ~InverseRotateLayer.float + ~InverseRotateLayer.forward + ~InverseRotateLayer.get_buffer + ~InverseRotateLayer.get_extra_state + ~InverseRotateLayer.get_parameter + ~InverseRotateLayer.get_submodule + ~InverseRotateLayer.half + ~InverseRotateLayer.ipu + ~InverseRotateLayer.load_state_dict + ~InverseRotateLayer.modules + ~InverseRotateLayer.named_buffers + ~InverseRotateLayer.named_children + ~InverseRotateLayer.named_modules + ~InverseRotateLayer.named_parameters + ~InverseRotateLayer.parameters + ~InverseRotateLayer.register_backward_hook + ~InverseRotateLayer.register_buffer + ~InverseRotateLayer.register_forward_hook + ~InverseRotateLayer.register_forward_pre_hook + ~InverseRotateLayer.register_full_backward_hook + ~InverseRotateLayer.register_full_backward_pre_hook + ~InverseRotateLayer.register_load_state_dict_post_hook + ~InverseRotateLayer.register_module + ~InverseRotateLayer.register_parameter + ~InverseRotateLayer.register_state_dict_pre_hook + ~InverseRotateLayer.requires_grad_ + ~InverseRotateLayer.set_extra_state + ~InverseRotateLayer.share_memory + ~InverseRotateLayer.state_dict + ~InverseRotateLayer.to + ~InverseRotateLayer.to_empty + ~InverseRotateLayer.train + ~InverseRotateLayer.type + ~InverseRotateLayer.xpu + ~InverseRotateLayer.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~InverseRotateLayer.T_destination + ~InverseRotateLayer.call_super_init + ~InverseRotateLayer.dump_patches + ~InverseRotateLayer.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.LowRankRotateLayer.rst b/_sources/api/pyvene.models.layers.LowRankRotateLayer.rst new file mode 100644 index 00000000..1cac2ff3 --- /dev/null +++ b/_sources/api/pyvene.models.layers.LowRankRotateLayer.rst @@ -0,0 +1,79 @@ +pyvene.models.layers.LowRankRotateLayer +======================================= + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: LowRankRotateLayer + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~LowRankRotateLayer.__init__ + ~LowRankRotateLayer.add_module + ~LowRankRotateLayer.apply + ~LowRankRotateLayer.bfloat16 + ~LowRankRotateLayer.buffers + ~LowRankRotateLayer.children + ~LowRankRotateLayer.compile + ~LowRankRotateLayer.cpu + ~LowRankRotateLayer.cuda + ~LowRankRotateLayer.double + ~LowRankRotateLayer.eval + ~LowRankRotateLayer.extra_repr + ~LowRankRotateLayer.float + ~LowRankRotateLayer.forward + ~LowRankRotateLayer.get_buffer + ~LowRankRotateLayer.get_extra_state + ~LowRankRotateLayer.get_parameter + ~LowRankRotateLayer.get_submodule + ~LowRankRotateLayer.half + ~LowRankRotateLayer.ipu + ~LowRankRotateLayer.load_state_dict + ~LowRankRotateLayer.modules + ~LowRankRotateLayer.named_buffers + ~LowRankRotateLayer.named_children + ~LowRankRotateLayer.named_modules + ~LowRankRotateLayer.named_parameters + ~LowRankRotateLayer.parameters + ~LowRankRotateLayer.register_backward_hook + ~LowRankRotateLayer.register_buffer + ~LowRankRotateLayer.register_forward_hook + ~LowRankRotateLayer.register_forward_pre_hook + ~LowRankRotateLayer.register_full_backward_hook + ~LowRankRotateLayer.register_full_backward_pre_hook + ~LowRankRotateLayer.register_load_state_dict_post_hook + ~LowRankRotateLayer.register_module + ~LowRankRotateLayer.register_parameter + ~LowRankRotateLayer.register_state_dict_pre_hook + ~LowRankRotateLayer.requires_grad_ + ~LowRankRotateLayer.set_extra_state + ~LowRankRotateLayer.share_memory + ~LowRankRotateLayer.state_dict + ~LowRankRotateLayer.to + ~LowRankRotateLayer.to_empty + ~LowRankRotateLayer.train + ~LowRankRotateLayer.type + ~LowRankRotateLayer.xpu + ~LowRankRotateLayer.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~LowRankRotateLayer.T_destination + ~LowRankRotateLayer.call_super_init + ~LowRankRotateLayer.dump_patches + ~LowRankRotateLayer.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.RotateLayer.rst b/_sources/api/pyvene.models.layers.RotateLayer.rst new file mode 100644 index 00000000..ebabd568 --- /dev/null +++ b/_sources/api/pyvene.models.layers.RotateLayer.rst @@ -0,0 +1,79 @@ +pyvene.models.layers.RotateLayer +================================ + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: RotateLayer + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~RotateLayer.__init__ + ~RotateLayer.add_module + ~RotateLayer.apply + ~RotateLayer.bfloat16 + ~RotateLayer.buffers + ~RotateLayer.children + ~RotateLayer.compile + ~RotateLayer.cpu + ~RotateLayer.cuda + ~RotateLayer.double + ~RotateLayer.eval + ~RotateLayer.extra_repr + ~RotateLayer.float + ~RotateLayer.forward + ~RotateLayer.get_buffer + ~RotateLayer.get_extra_state + ~RotateLayer.get_parameter + ~RotateLayer.get_submodule + ~RotateLayer.half + ~RotateLayer.ipu + ~RotateLayer.load_state_dict + ~RotateLayer.modules + ~RotateLayer.named_buffers + ~RotateLayer.named_children + ~RotateLayer.named_modules + ~RotateLayer.named_parameters + ~RotateLayer.parameters + ~RotateLayer.register_backward_hook + ~RotateLayer.register_buffer + ~RotateLayer.register_forward_hook + ~RotateLayer.register_forward_pre_hook + ~RotateLayer.register_full_backward_hook + ~RotateLayer.register_full_backward_pre_hook + ~RotateLayer.register_load_state_dict_post_hook + ~RotateLayer.register_module + ~RotateLayer.register_parameter + ~RotateLayer.register_state_dict_pre_hook + ~RotateLayer.requires_grad_ + ~RotateLayer.set_extra_state + ~RotateLayer.share_memory + ~RotateLayer.state_dict + ~RotateLayer.to + ~RotateLayer.to_empty + ~RotateLayer.train + ~RotateLayer.type + ~RotateLayer.xpu + ~RotateLayer.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~RotateLayer.T_destination + ~RotateLayer.call_super_init + ~RotateLayer.dump_patches + ~RotateLayer.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.SubspaceLowRankRotateLayer.rst b/_sources/api/pyvene.models.layers.SubspaceLowRankRotateLayer.rst new file mode 100644 index 00000000..dcf20575 --- /dev/null +++ b/_sources/api/pyvene.models.layers.SubspaceLowRankRotateLayer.rst @@ -0,0 +1,79 @@ +pyvene.models.layers.SubspaceLowRankRotateLayer +=============================================== + +.. currentmodule:: pyvene.models.layers + +.. autoclass:: SubspaceLowRankRotateLayer + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~SubspaceLowRankRotateLayer.__init__ + ~SubspaceLowRankRotateLayer.add_module + ~SubspaceLowRankRotateLayer.apply + ~SubspaceLowRankRotateLayer.bfloat16 + ~SubspaceLowRankRotateLayer.buffers + ~SubspaceLowRankRotateLayer.children + ~SubspaceLowRankRotateLayer.compile + ~SubspaceLowRankRotateLayer.cpu + ~SubspaceLowRankRotateLayer.cuda + ~SubspaceLowRankRotateLayer.double + ~SubspaceLowRankRotateLayer.eval + ~SubspaceLowRankRotateLayer.extra_repr + ~SubspaceLowRankRotateLayer.float + ~SubspaceLowRankRotateLayer.forward + ~SubspaceLowRankRotateLayer.get_buffer + ~SubspaceLowRankRotateLayer.get_extra_state + ~SubspaceLowRankRotateLayer.get_parameter + ~SubspaceLowRankRotateLayer.get_submodule + ~SubspaceLowRankRotateLayer.half + ~SubspaceLowRankRotateLayer.ipu + ~SubspaceLowRankRotateLayer.load_state_dict + ~SubspaceLowRankRotateLayer.modules + ~SubspaceLowRankRotateLayer.named_buffers + ~SubspaceLowRankRotateLayer.named_children + ~SubspaceLowRankRotateLayer.named_modules + ~SubspaceLowRankRotateLayer.named_parameters + ~SubspaceLowRankRotateLayer.parameters + ~SubspaceLowRankRotateLayer.register_backward_hook + ~SubspaceLowRankRotateLayer.register_buffer + ~SubspaceLowRankRotateLayer.register_forward_hook + ~SubspaceLowRankRotateLayer.register_forward_pre_hook + ~SubspaceLowRankRotateLayer.register_full_backward_hook + ~SubspaceLowRankRotateLayer.register_full_backward_pre_hook + ~SubspaceLowRankRotateLayer.register_load_state_dict_post_hook + ~SubspaceLowRankRotateLayer.register_module + ~SubspaceLowRankRotateLayer.register_parameter + ~SubspaceLowRankRotateLayer.register_state_dict_pre_hook + ~SubspaceLowRankRotateLayer.requires_grad_ + ~SubspaceLowRankRotateLayer.set_extra_state + ~SubspaceLowRankRotateLayer.share_memory + ~SubspaceLowRankRotateLayer.state_dict + ~SubspaceLowRankRotateLayer.to + ~SubspaceLowRankRotateLayer.to_empty + ~SubspaceLowRankRotateLayer.train + ~SubspaceLowRankRotateLayer.type + ~SubspaceLowRankRotateLayer.xpu + ~SubspaceLowRankRotateLayer.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SubspaceLowRankRotateLayer.T_destination + ~SubspaceLowRankRotateLayer.call_super_init + ~SubspaceLowRankRotateLayer.dump_patches + ~SubspaceLowRankRotateLayer.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.layers.rst b/_sources/api/pyvene.models.layers.rst new file mode 100644 index 00000000..801a789b --- /dev/null +++ b/_sources/api/pyvene.models.layers.rst @@ -0,0 +1,36 @@ +pyvene.models.layers +==================== + +.. automodule:: pyvene.models.layers + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + AutoencoderLayer + AutoencoderLayerBase + InverseRotateLayer + LowRankRotateLayer + RotateLayer + SubspaceLowRankRotateLayer + + + + + + + + + diff --git a/_sources/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.rst b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.rst new file mode 100644 index 00000000..1be2c9cd --- /dev/null +++ b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.create_llama.rst @@ -0,0 +1,6 @@ +pyvene.models.llama.modelings\_intervenable\_llama.create\_llama +================================================================ + +.. currentmodule:: pyvene.models.llama.modelings_intervenable_llama + +.. autofunction:: create_llama \ No newline at end of file diff --git a/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.rst new file mode 100644 index 00000000..aae73f95 --- /dev/null +++ b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_lm_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.llama.modelings\_intervenable\_llama.llama\_lm\_type\_to\_dimension\_mapping +========================================================================================== + +.. currentmodule:: pyvene.models.llama.modelings_intervenable_llama + +.. autodata:: llama_lm_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.rst new file mode 100644 index 00000000..78f34773 --- /dev/null +++ b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.llama_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.llama.modelings\_intervenable\_llama.llama\_type\_to\_dimension\_mapping +====================================================================================== + +.. currentmodule:: pyvene.models.llama.modelings_intervenable_llama + +.. autodata:: llama_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.llama.modelings_intervenable_llama.rst b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.rst new file mode 100644 index 00000000..46cf900b --- /dev/null +++ b/_sources/api/pyvene.models.llama.modelings_intervenable_llama.rst @@ -0,0 +1,38 @@ +pyvene.models.llama.modelings\_intervenable\_llama +================================================== + +.. automodule:: pyvene.models.llama.modelings_intervenable_llama + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + llama_type_to_dimension_mapping + llama_lm_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_llama + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.llama.rst b/_sources/api/pyvene.models.llama.rst new file mode 100644 index 00000000..683b02e2 --- /dev/null +++ b/_sources/api/pyvene.models.llama.rst @@ -0,0 +1,32 @@ +pyvene.models.llama +=================== + +.. automodule:: pyvene.models.llama + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.llama.modelings_intervenable_llama + diff --git a/_sources/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.rst b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.rst new file mode 100644 index 00000000..a0bf623b --- /dev/null +++ b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.create_llava.rst @@ -0,0 +1,6 @@ +pyvene.models.llava.modelings\_intervenable\_llava.create\_llava +================================================================ + +.. currentmodule:: pyvene.models.llava.modelings_intervenable_llava + +.. autofunction:: create_llava \ No newline at end of file diff --git a/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.rst new file mode 100644 index 00000000..2c011572 --- /dev/null +++ b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_lm_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.llava.modelings\_intervenable\_llava.llava\_lm\_type\_to\_dimension\_mapping +========================================================================================== + +.. currentmodule:: pyvene.models.llava.modelings_intervenable_llava + +.. autodata:: llava_lm_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.rst new file mode 100644 index 00000000..16a87856 --- /dev/null +++ b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.llava_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.llava.modelings\_intervenable\_llava.llava\_type\_to\_dimension\_mapping +====================================================================================== + +.. currentmodule:: pyvene.models.llava.modelings_intervenable_llava + +.. autodata:: llava_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.llava.modelings_intervenable_llava.rst b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.rst new file mode 100644 index 00000000..e551bd00 --- /dev/null +++ b/_sources/api/pyvene.models.llava.modelings_intervenable_llava.rst @@ -0,0 +1,38 @@ +pyvene.models.llava.modelings\_intervenable\_llava +================================================== + +.. automodule:: pyvene.models.llava.modelings_intervenable_llava + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + llava_type_to_dimension_mapping + llava_lm_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_llava + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.llava.rst b/_sources/api/pyvene.models.llava.rst new file mode 100644 index 00000000..011c2ed9 --- /dev/null +++ b/_sources/api/pyvene.models.llava.rst @@ -0,0 +1,32 @@ +pyvene.models.llava +=================== + +.. automodule:: pyvene.models.llava + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.llava.modelings_intervenable_llava + diff --git a/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.rst b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.rst new file mode 100644 index 00000000..07460304 --- /dev/null +++ b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.create_mistral.rst @@ -0,0 +1,6 @@ +pyvene.models.mistral.modellings\_intervenable\_mistral.create\_mistral +======================================================================= + +.. currentmodule:: pyvene.models.mistral.modellings_intervenable_mistral + +.. autofunction:: create_mistral \ No newline at end of file diff --git a/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.rst new file mode 100644 index 00000000..273d6048 --- /dev/null +++ b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.mistral_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.mistral.modellings\_intervenable\_mistral.mistral\_type\_to\_dimension\_mapping +============================================================================================= + +.. currentmodule:: pyvene.models.mistral.modellings_intervenable_mistral + +.. autodata:: mistral_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.rst b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.rst new file mode 100644 index 00000000..2b44e0d3 --- /dev/null +++ b/_sources/api/pyvene.models.mistral.modellings_intervenable_mistral.rst @@ -0,0 +1,37 @@ +pyvene.models.mistral.modellings\_intervenable\_mistral +======================================================= + +.. automodule:: pyvene.models.mistral.modellings_intervenable_mistral + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + mistral_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_mistral + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.mistral.rst b/_sources/api/pyvene.models.mistral.rst new file mode 100644 index 00000000..42f116a3 --- /dev/null +++ b/_sources/api/pyvene.models.mistral.rst @@ -0,0 +1,32 @@ +pyvene.models.mistral +===================== + +.. automodule:: pyvene.models.mistral + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.mistral.modellings_intervenable_mistral + diff --git a/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.rst b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.rst new file mode 100644 index 00000000..77a1ea2f --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.create_mlp_classifier.rst @@ -0,0 +1,6 @@ +pyvene.models.mlp.modelings\_intervenable\_mlp.create\_mlp\_classifier +====================================================================== + +.. currentmodule:: pyvene.models.mlp.modelings_intervenable_mlp + +.. autofunction:: create_mlp_classifier \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.rst b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.rst new file mode 100644 index 00000000..a9cf735c --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.mlp_type_to_dimension_mapping.rst @@ -0,0 +1,6 @@ +pyvene.models.mlp.modelings\_intervenable\_mlp.mlp\_type\_to\_dimension\_mapping +================================================================================ + +.. currentmodule:: pyvene.models.mlp.modelings_intervenable_mlp + +.. autodata:: mlp_type_to_dimension_mapping \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.rst b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.rst new file mode 100644 index 00000000..cc0eb085 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_intervenable_mlp.rst @@ -0,0 +1,37 @@ +pyvene.models.mlp.modelings\_intervenable\_mlp +============================================== + +.. automodule:: pyvene.models.mlp.modelings_intervenable_mlp + + + + .. rubric:: Module Attributes + + .. autosummary:: + :toctree: + + mlp_type_to_dimension_mapping + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + create_mlp_classifier + + + + + + + + + + + + + diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.MLPBlock.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPBlock.rst new file mode 100644 index 00000000..4892ec8b --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPBlock.rst @@ -0,0 +1,79 @@ +pyvene.models.mlp.modelings\_mlp.MLPBlock +========================================= + +.. currentmodule:: pyvene.models.mlp.modelings_mlp + +.. autoclass:: MLPBlock + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~MLPBlock.__init__ + ~MLPBlock.add_module + ~MLPBlock.apply + ~MLPBlock.bfloat16 + ~MLPBlock.buffers + ~MLPBlock.children + ~MLPBlock.compile + ~MLPBlock.cpu + ~MLPBlock.cuda + ~MLPBlock.double + ~MLPBlock.eval + ~MLPBlock.extra_repr + ~MLPBlock.float + ~MLPBlock.forward + ~MLPBlock.get_buffer + ~MLPBlock.get_extra_state + ~MLPBlock.get_parameter + ~MLPBlock.get_submodule + ~MLPBlock.half + ~MLPBlock.ipu + ~MLPBlock.load_state_dict + ~MLPBlock.modules + ~MLPBlock.named_buffers + ~MLPBlock.named_children + ~MLPBlock.named_modules + ~MLPBlock.named_parameters + ~MLPBlock.parameters + ~MLPBlock.register_backward_hook + ~MLPBlock.register_buffer + ~MLPBlock.register_forward_hook + ~MLPBlock.register_forward_pre_hook + ~MLPBlock.register_full_backward_hook + ~MLPBlock.register_full_backward_pre_hook + ~MLPBlock.register_load_state_dict_post_hook + ~MLPBlock.register_module + ~MLPBlock.register_parameter + ~MLPBlock.register_state_dict_pre_hook + ~MLPBlock.requires_grad_ + ~MLPBlock.set_extra_state + ~MLPBlock.share_memory + ~MLPBlock.state_dict + ~MLPBlock.to + ~MLPBlock.to_empty + ~MLPBlock.train + ~MLPBlock.type + ~MLPBlock.xpu + ~MLPBlock.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~MLPBlock.T_destination + ~MLPBlock.call_super_init + ~MLPBlock.dump_patches + ~MLPBlock.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.MLPConfig.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPConfig.rst new file mode 100644 index 00000000..fe918437 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPConfig.rst @@ -0,0 +1,49 @@ +pyvene.models.mlp.modelings\_mlp.MLPConfig +========================================== + +.. currentmodule:: pyvene.models.mlp.modelings_mlp + +.. autoclass:: MLPConfig + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~MLPConfig.__init__ + ~MLPConfig.dict_torch_dtype_to_str + ~MLPConfig.from_dict + ~MLPConfig.from_json_file + ~MLPConfig.from_pretrained + ~MLPConfig.get_config_dict + ~MLPConfig.push_to_hub + ~MLPConfig.register_for_auto_class + ~MLPConfig.save_pretrained + ~MLPConfig.to_dict + ~MLPConfig.to_diff_dict + ~MLPConfig.to_json_file + ~MLPConfig.to_json_string + ~MLPConfig.update + ~MLPConfig.update_from_string + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~MLPConfig.attribute_map + ~MLPConfig.is_composition + ~MLPConfig.model_type + ~MLPConfig.name_or_path + ~MLPConfig.num_labels + ~MLPConfig.use_return_dict + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.rst new file mode 100644 index 00000000..017795d0 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPForClassification.rst @@ -0,0 +1,144 @@ +pyvene.models.mlp.modelings\_mlp.MLPForClassification +===================================================== + +.. currentmodule:: pyvene.models.mlp.modelings_mlp + +.. autoclass:: MLPForClassification + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~MLPForClassification.__init__ + ~MLPForClassification.active_adapter + ~MLPForClassification.active_adapters + ~MLPForClassification.add_adapter + ~MLPForClassification.add_memory_hooks + ~MLPForClassification.add_model_tags + ~MLPForClassification.add_module + ~MLPForClassification.apply + ~MLPForClassification.assisted_decoding + ~MLPForClassification.beam_sample + ~MLPForClassification.beam_search + ~MLPForClassification.bfloat16 + ~MLPForClassification.buffers + ~MLPForClassification.can_generate + ~MLPForClassification.children + ~MLPForClassification.compile + ~MLPForClassification.compute_transition_scores + ~MLPForClassification.constrained_beam_search + ~MLPForClassification.contrastive_search + ~MLPForClassification.cpu + ~MLPForClassification.create_extended_attention_mask_for_decoder + ~MLPForClassification.cuda + ~MLPForClassification.disable_adapters + ~MLPForClassification.disable_input_require_grads + ~MLPForClassification.double + ~MLPForClassification.enable_adapters + ~MLPForClassification.enable_input_require_grads + ~MLPForClassification.estimate_tokens + ~MLPForClassification.eval + ~MLPForClassification.extra_repr + ~MLPForClassification.float + ~MLPForClassification.floating_point_ops + ~MLPForClassification.forward + ~MLPForClassification.from_pretrained + ~MLPForClassification.generate + ~MLPForClassification.get_adapter_state_dict + ~MLPForClassification.get_buffer + ~MLPForClassification.get_extended_attention_mask + ~MLPForClassification.get_extra_state + ~MLPForClassification.get_head_mask + ~MLPForClassification.get_input_embeddings + ~MLPForClassification.get_memory_footprint + ~MLPForClassification.get_output_embeddings + ~MLPForClassification.get_parameter + ~MLPForClassification.get_position_embeddings + ~MLPForClassification.get_submodule + ~MLPForClassification.gradient_checkpointing_disable + ~MLPForClassification.gradient_checkpointing_enable + ~MLPForClassification.greedy_search + ~MLPForClassification.group_beam_search + ~MLPForClassification.half + ~MLPForClassification.init_weights + ~MLPForClassification.invert_attention_mask + ~MLPForClassification.ipu + ~MLPForClassification.load_adapter + ~MLPForClassification.load_state_dict + ~MLPForClassification.modules + ~MLPForClassification.named_buffers + ~MLPForClassification.named_children + ~MLPForClassification.named_modules + ~MLPForClassification.named_parameters + ~MLPForClassification.num_parameters + ~MLPForClassification.parameters + ~MLPForClassification.post_init + ~MLPForClassification.prepare_inputs_for_generation + ~MLPForClassification.prune_heads + ~MLPForClassification.push_to_hub + ~MLPForClassification.register_backward_hook + ~MLPForClassification.register_buffer + ~MLPForClassification.register_for_auto_class + ~MLPForClassification.register_forward_hook + ~MLPForClassification.register_forward_pre_hook + ~MLPForClassification.register_full_backward_hook + ~MLPForClassification.register_full_backward_pre_hook + ~MLPForClassification.register_load_state_dict_post_hook + ~MLPForClassification.register_module + ~MLPForClassification.register_parameter + ~MLPForClassification.register_state_dict_pre_hook + ~MLPForClassification.requires_grad_ + ~MLPForClassification.reset_memory_hooks_state + ~MLPForClassification.resize_position_embeddings + ~MLPForClassification.resize_token_embeddings + ~MLPForClassification.retrieve_modules_from_names + ~MLPForClassification.reverse_bettertransformer + ~MLPForClassification.sample + ~MLPForClassification.save_pretrained + ~MLPForClassification.set_adapter + ~MLPForClassification.set_extra_state + ~MLPForClassification.set_input_embeddings + ~MLPForClassification.share_memory + ~MLPForClassification.state_dict + ~MLPForClassification.tie_weights + ~MLPForClassification.to + ~MLPForClassification.to_bettertransformer + ~MLPForClassification.to_empty + ~MLPForClassification.train + ~MLPForClassification.type + ~MLPForClassification.warn_if_padding_and_no_attention_mask + ~MLPForClassification.xpu + ~MLPForClassification.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~MLPForClassification.T_destination + ~MLPForClassification.base_model + ~MLPForClassification.base_model_prefix + ~MLPForClassification.call_super_init + ~MLPForClassification.config_class + ~MLPForClassification.device + ~MLPForClassification.dtype + ~MLPForClassification.dummy_inputs + ~MLPForClassification.dump_patches + ~MLPForClassification.framework + ~MLPForClassification.is_gradient_checkpointing + ~MLPForClassification.is_parallelizable + ~MLPForClassification.main_input_name + ~MLPForClassification.model_tags + ~MLPForClassification.supports_gradient_checkpointing + ~MLPForClassification.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModel.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModel.rst new file mode 100644 index 00000000..eb6bdb35 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModel.rst @@ -0,0 +1,144 @@ +pyvene.models.mlp.modelings\_mlp.MLPModel +========================================= + +.. currentmodule:: pyvene.models.mlp.modelings_mlp + +.. autoclass:: MLPModel + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~MLPModel.__init__ + ~MLPModel.active_adapter + ~MLPModel.active_adapters + ~MLPModel.add_adapter + ~MLPModel.add_memory_hooks + ~MLPModel.add_model_tags + ~MLPModel.add_module + ~MLPModel.apply + ~MLPModel.assisted_decoding + ~MLPModel.beam_sample + ~MLPModel.beam_search + ~MLPModel.bfloat16 + ~MLPModel.buffers + ~MLPModel.can_generate + ~MLPModel.children + ~MLPModel.compile + ~MLPModel.compute_transition_scores + ~MLPModel.constrained_beam_search + ~MLPModel.contrastive_search + ~MLPModel.cpu + ~MLPModel.create_extended_attention_mask_for_decoder + ~MLPModel.cuda + ~MLPModel.disable_adapters + ~MLPModel.disable_input_require_grads + ~MLPModel.double + ~MLPModel.enable_adapters + ~MLPModel.enable_input_require_grads + ~MLPModel.estimate_tokens + ~MLPModel.eval + ~MLPModel.extra_repr + ~MLPModel.float + ~MLPModel.floating_point_ops + ~MLPModel.forward + ~MLPModel.from_pretrained + ~MLPModel.generate + ~MLPModel.get_adapter_state_dict + ~MLPModel.get_buffer + ~MLPModel.get_extended_attention_mask + ~MLPModel.get_extra_state + ~MLPModel.get_head_mask + ~MLPModel.get_input_embeddings + ~MLPModel.get_memory_footprint + ~MLPModel.get_output_embeddings + ~MLPModel.get_parameter + ~MLPModel.get_position_embeddings + ~MLPModel.get_submodule + ~MLPModel.gradient_checkpointing_disable + ~MLPModel.gradient_checkpointing_enable + ~MLPModel.greedy_search + ~MLPModel.group_beam_search + ~MLPModel.half + ~MLPModel.init_weights + ~MLPModel.invert_attention_mask + ~MLPModel.ipu + ~MLPModel.load_adapter + ~MLPModel.load_state_dict + ~MLPModel.modules + ~MLPModel.named_buffers + ~MLPModel.named_children + ~MLPModel.named_modules + ~MLPModel.named_parameters + ~MLPModel.num_parameters + ~MLPModel.parameters + ~MLPModel.post_init + ~MLPModel.prepare_inputs_for_generation + ~MLPModel.prune_heads + ~MLPModel.push_to_hub + ~MLPModel.register_backward_hook + ~MLPModel.register_buffer + ~MLPModel.register_for_auto_class + ~MLPModel.register_forward_hook + ~MLPModel.register_forward_pre_hook + ~MLPModel.register_full_backward_hook + ~MLPModel.register_full_backward_pre_hook + ~MLPModel.register_load_state_dict_post_hook + ~MLPModel.register_module + ~MLPModel.register_parameter + ~MLPModel.register_state_dict_pre_hook + ~MLPModel.requires_grad_ + ~MLPModel.reset_memory_hooks_state + ~MLPModel.resize_position_embeddings + ~MLPModel.resize_token_embeddings + ~MLPModel.retrieve_modules_from_names + ~MLPModel.reverse_bettertransformer + ~MLPModel.sample + ~MLPModel.save_pretrained + ~MLPModel.set_adapter + ~MLPModel.set_extra_state + ~MLPModel.set_input_embeddings + ~MLPModel.share_memory + ~MLPModel.state_dict + ~MLPModel.tie_weights + ~MLPModel.to + ~MLPModel.to_bettertransformer + ~MLPModel.to_empty + ~MLPModel.train + ~MLPModel.type + ~MLPModel.warn_if_padding_and_no_attention_mask + ~MLPModel.xpu + ~MLPModel.zero_grad + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~MLPModel.T_destination + ~MLPModel.base_model + ~MLPModel.base_model_prefix + ~MLPModel.call_super_init + ~MLPModel.config_class + ~MLPModel.device + ~MLPModel.dtype + ~MLPModel.dummy_inputs + ~MLPModel.dump_patches + ~MLPModel.framework + ~MLPModel.is_gradient_checkpointing + ~MLPModel.is_parallelizable + ~MLPModel.main_input_name + ~MLPModel.model_tags + ~MLPModel.supports_gradient_checkpointing + ~MLPModel.training + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.rst new file mode 100644 index 00000000..69fc28f5 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.MLPModelOutput.rst @@ -0,0 +1,44 @@ +pyvene.models.mlp.modelings\_mlp.MLPModelOutput +=============================================== + +.. currentmodule:: pyvene.models.mlp.modelings_mlp + +.. autoclass:: MLPModelOutput + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~MLPModelOutput.__init__ + ~MLPModelOutput.clear + ~MLPModelOutput.copy + ~MLPModelOutput.fromkeys + ~MLPModelOutput.get + ~MLPModelOutput.items + ~MLPModelOutput.keys + ~MLPModelOutput.move_to_end + ~MLPModelOutput.pop + ~MLPModelOutput.popitem + ~MLPModelOutput.setdefault + ~MLPModelOutput.to_tuple + ~MLPModelOutput.update + ~MLPModelOutput.values + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~MLPModelOutput.hidden_states + ~MLPModelOutput.last_hidden_state + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.mlp.modelings_mlp.rst b/_sources/api/pyvene.models.mlp.modelings_mlp.rst new file mode 100644 index 00000000..7ae3b329 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.modelings_mlp.rst @@ -0,0 +1,35 @@ +pyvene.models.mlp.modelings\_mlp +================================ + +.. automodule:: pyvene.models.mlp.modelings_mlp + + + + + + + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + MLPBlock + MLPConfig + MLPForClassification + MLPModel + MLPModelOutput + + + + + + + + + diff --git a/_sources/api/pyvene.models.mlp.rst b/_sources/api/pyvene.models.mlp.rst new file mode 100644 index 00000000..5f2b0eb5 --- /dev/null +++ b/_sources/api/pyvene.models.mlp.rst @@ -0,0 +1,33 @@ +pyvene.models.mlp +================= + +.. automodule:: pyvene.models.mlp + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.mlp.modelings_intervenable_mlp + pyvene.models.mlp.modelings_mlp + diff --git a/_sources/api/pyvene.models.modeling_utils.HandlerList.rst b/_sources/api/pyvene.models.modeling_utils.HandlerList.rst new file mode 100644 index 00000000..9b5dfaad --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.HandlerList.rst @@ -0,0 +1,26 @@ +pyvene.models.modeling\_utils.HandlerList +========================================= + +.. currentmodule:: pyvene.models.modeling_utils + +.. autoclass:: HandlerList + :members: + :show-inheritance: + + + .. automethod:: __init__ + + + .. rubric:: Methods + + .. autosummary:: + + ~HandlerList.__init__ + ~HandlerList.extend + ~HandlerList.remove + + + + + + \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.b_sd_to_bsd.rst b/_sources/api/pyvene.models.modeling_utils.b_sd_to_bsd.rst new file mode 100644 index 00000000..381e5813 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.b_sd_to_bsd.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.b\_sd\_to\_bsd +============================================ + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: b_sd_to_bsd \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.rst b/_sources/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.rst new file mode 100644 index 00000000..e95950f5 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.bhsd_to_bs_hd.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.bhsd\_to\_bs\_hd +============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: bhsd_to_bs_hd \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.rst b/_sources/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.rst new file mode 100644 index 00000000..d49d1b54 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.bs_hd_to_bhsd.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.bs\_hd\_to\_bhsd +============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: bs_hd_to_bhsd \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.bsd_to_b_sd.rst b/_sources/api/pyvene.models.modeling_utils.bsd_to_b_sd.rst new file mode 100644 index 00000000..b64c1346 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.bsd_to_b_sd.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.bsd\_to\_b\_sd +============================================ + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: bsd_to_b_sd \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.do_intervention.rst b/_sources/api/pyvene.models.modeling_utils.do_intervention.rst new file mode 100644 index 00000000..4230a427 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.do_intervention.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.do\_intervention +============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: do_intervention \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.gather_neurons.rst b/_sources/api/pyvene.models.modeling_utils.gather_neurons.rst new file mode 100644 index 00000000..e826933e --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.gather_neurons.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.gather\_neurons +============================================= + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: gather_neurons \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.get_dimension_by_component.rst b/_sources/api/pyvene.models.modeling_utils.get_dimension_by_component.rst new file mode 100644 index 00000000..589f4e27 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.get_dimension_by_component.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.get\_dimension\_by\_component +=========================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: get_dimension_by_component \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.get_internal_model_type.rst b/_sources/api/pyvene.models.modeling_utils.get_internal_model_type.rst new file mode 100644 index 00000000..3f7b6103 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.get_internal_model_type.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.get\_internal\_model\_type +======================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: get_internal_model_type \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.get_module_hook.rst b/_sources/api/pyvene.models.modeling_utils.get_module_hook.rst new file mode 100644 index 00000000..7bba8997 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.get_module_hook.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.get\_module\_hook +=============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: get_module_hook \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.getattr_for_torch_module.rst b/_sources/api/pyvene.models.modeling_utils.getattr_for_torch_module.rst new file mode 100644 index 00000000..5bc3404a --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.getattr_for_torch_module.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.getattr\_for\_torch\_module +========================================================= + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: getattr_for_torch_module \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.is_gru.rst b/_sources/api/pyvene.models.modeling_utils.is_gru.rst new file mode 100644 index 00000000..0a076aac --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.is_gru.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.is\_gru +===================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: is_gru \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.is_mlp.rst b/_sources/api/pyvene.models.modeling_utils.is_mlp.rst new file mode 100644 index 00000000..f4696965 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.is_mlp.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.is\_mlp +===================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: is_mlp \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.is_stateless.rst b/_sources/api/pyvene.models.modeling_utils.is_stateless.rst new file mode 100644 index 00000000..8c1bf093 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.is_stateless.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.is\_stateless +=========================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: is_stateless \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.is_transformer.rst b/_sources/api/pyvene.models.modeling_utils.is_transformer.rst new file mode 100644 index 00000000..3594bddd --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.is_transformer.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.is\_transformer +============================================= + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: is_transformer \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.output_to_subcomponent.rst b/_sources/api/pyvene.models.modeling_utils.output_to_subcomponent.rst new file mode 100644 index 00000000..f4da4a65 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.output_to_subcomponent.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.output\_to\_subcomponent +====================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: output_to_subcomponent \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.print_forward_hooks.rst b/_sources/api/pyvene.models.modeling_utils.print_forward_hooks.rst new file mode 100644 index 00000000..3f8aa51d --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.print_forward_hooks.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.print\_forward\_hooks +=================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: print_forward_hooks \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.remove_forward_hooks.rst b/_sources/api/pyvene.models.modeling_utils.remove_forward_hooks.rst new file mode 100644 index 00000000..8f969878 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.remove_forward_hooks.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.remove\_forward\_hooks +==================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: remove_forward_hooks \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.rst b/_sources/api/pyvene.models.modeling_utils.rst new file mode 100644 index 00000000..75fe11cb --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.rst @@ -0,0 +1,58 @@ +pyvene.models.modeling\_utils +============================= + +.. automodule:: pyvene.models.modeling_utils + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + b_sd_to_bsd + bhsd_to_bs_hd + bs_hd_to_bhsd + bsd_to_b_sd + do_intervention + gather_neurons + get_dimension_by_component + get_internal_model_type + get_module_hook + getattr_for_torch_module + is_gru + is_mlp + is_stateless + is_transformer + output_to_subcomponent + print_forward_hooks + remove_forward_hooks + scatter_neurons + simple_output_to_subcomponent + simple_scatter_intervention_output + weighted_average + + + + + + .. rubric:: Classes + + .. autosummary:: + :toctree: + :template: pv-class.rst + + HandlerList + + + + + + + + + diff --git a/_sources/api/pyvene.models.modeling_utils.scatter_neurons.rst b/_sources/api/pyvene.models.modeling_utils.scatter_neurons.rst new file mode 100644 index 00000000..ad2144e2 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.scatter_neurons.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.scatter\_neurons +============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: scatter_neurons \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.rst b/_sources/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.rst new file mode 100644 index 00000000..1af8cbb0 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.simple_output_to_subcomponent.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.simple\_output\_to\_subcomponent +============================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: simple_output_to_subcomponent \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.rst b/_sources/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.rst new file mode 100644 index 00000000..99f7c338 --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.simple_scatter_intervention_output.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.simple\_scatter\_intervention\_output +=================================================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: simple_scatter_intervention_output \ No newline at end of file diff --git a/_sources/api/pyvene.models.modeling_utils.weighted_average.rst b/_sources/api/pyvene.models.modeling_utils.weighted_average.rst new file mode 100644 index 00000000..5835aa4c --- /dev/null +++ b/_sources/api/pyvene.models.modeling_utils.weighted_average.rst @@ -0,0 +1,6 @@ +pyvene.models.modeling\_utils.weighted\_average +=============================================== + +.. currentmodule:: pyvene.models.modeling_utils + +.. autofunction:: weighted_average \ No newline at end of file diff --git a/_sources/api/pyvene.models.rst b/_sources/api/pyvene.models.rst new file mode 100644 index 00000000..3d2778ba --- /dev/null +++ b/_sources/api/pyvene.models.rst @@ -0,0 +1,51 @@ +pyvene.models +============= + +.. automodule:: pyvene.models + + + + + + + + + + + + + + + + + + + +.. rubric:: Modules + +.. autosummary:: + :toctree: + :template: pv-module.rst + :recursive: + + pyvene.models.backpack_gpt2 + pyvene.models.basic_utils + pyvene.models.blip + pyvene.models.configuration_intervenable_model + pyvene.models.constants + pyvene.models.gemma + pyvene.models.gpt2 + pyvene.models.gpt_neo + pyvene.models.gpt_neox + pyvene.models.gru + pyvene.models.intervenable_base + pyvene.models.intervenable_modelcard + pyvene.models.intervention_utils + pyvene.models.interventions + pyvene.models.layers + pyvene.models.llama + pyvene.models.llava + pyvene.models.mistral + pyvene.models.mlp + pyvene.models.modeling_utils + diff --git a/_sources/guides/contributing.md b/_sources/guides/contributing.md new file mode 100644 index 00000000..1a381114 --- /dev/null +++ b/_sources/guides/contributing.md @@ -0,0 +1,73 @@ +# Contributing Guidelines + +*Pull requests, bug reports, and all other forms of contribution are welcomed and highly encouraged!* :octocat: + +### The PR or Issue Title Format +Whenever you open an issue or a PR, please use this title format +``` +[Priority Tag] Short Title +``` +For Priority Tag, you can use `[P0]`-`[P2]`, `[P0]` is the highest priority, which means everyone should stop working and focus on this PR. For Minor issues, use `[Minor]`. For bugs, please use `[Bug Fix]` and see below. + +--- + +### 📕 Pull Requests + +#### Uninstall pyvene from python library +It becomes tricky if you have `pyvene` installed while debugging with this codebase, since imports can be easily messed up. Please run, +```bash +pip uninstall pyvene +``` + +#### Unit Test Run Is A Must before Creating PRs +When adding new methods or APIs, unit tests are now enforced. To run existing tests, you can kick off the python unittest command in the discovery mode as, +```bash +cd pyvene +python -m unittest discover -p '*TestCase.py' +``` +For specific test case, yoou can run +```bash +cd pyvene +python -m unittest tests.integration_tests.ComplexInterventionWithGPT2TestCase +``` +When checking in new code, please also consider to add new tests in the same PR. Please include test results in the PR to make sure all the existing test cases are passing. Please see the `qa_runbook.ipynb` notebook about a set of conventions about how to add test cases. The code coverage for this repository is currently `low`, and we are adding more automated tests. + +#### Format +``` +**Descriptions**: + +[Describe your PR Here] + + +**Testing Done**: + +[Provide logs, screen-shots, and files that contain tests you have done] + +``` + +### 🪲 Bug Reports and Other Issues +Go to issues, and open with a title formatted as, +``` +[Bug Fix] Short Title +``` +For external requests (i.e., you are not in our core dev team), please use, +``` +[External] Short Title +``` + +### 📄 Documentation +If making changes to documentation (in `docs/source`, deployed to GitHub Pages), please test your changes locally +(ideally in a fresh Python environment): + +``` +pip install -r requirements.txt +pip install -r docs/requirements.txt +cd docs +make html +python -m http.server +``` + +Then navigate to [localhost:8000/build/html](http://localhost:8000/build/html). + +### 📥 Larger Feature Requests +Please email us! \ No newline at end of file diff --git a/_sources/guides/ndif.rst b/_sources/guides/ndif.rst new file mode 100644 index 00000000..1adae2bc --- /dev/null +++ b/_sources/guides/ndif.rst @@ -0,0 +1,33 @@ +NDIF Integration +================ + +We are working with the `NDIF `_ team to support remote intervention calls +without asking the users to download or host their own LLMs! This is still under construction. + +First of all, you need to install ``nnsight``: + +:: + + pip install nnsight + +All you have to do is to use NDIF library to load your model and use pyvene to wrap it +(i.e., pyvene will automatically recognize NDIF models)! Here is an example: + +:: + + from nnsight import LanguageModel + + # load nnsight.LanguageModel as your model to wrap with pyvene + gpt2_ndif = LanguageModel('openai-community/gpt2', device_map='cpu') + tokenizer = AutoTokenizer.from_pretrained('openai-community/gpt2') + + # pyvene provides pv.build_intervenable_model as the generic model builder + pv_gpt2_ndif = pv.build_intervenable_model({ + "component": "transformer.h[10].attn.attn_dropout.input", + "intervention": pv.CollectIntervention()}, model=gpt2_ndif, remote=False) + + +Then, you can use ``pv_gpt2_ndif`` as your regular intervenable model. +If you specify ``remote=True`` (this is still under construction), then +everything will be executed remotely on NDIF server with **zero** GPU +resource required! We provide example code in our `main tutorial `__. \ No newline at end of file diff --git a/_sources/index.rst b/_sources/index.rst new file mode 100644 index 00000000..15a6c58e --- /dev/null +++ b/_sources/index.rst @@ -0,0 +1,508 @@ +.. pyvene documentation master file, created by + sphinx-quickstart on Fri Jul 12 16:49:16 2024. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +.. container:: + + .. rubric:: |image1| + :name: section + + `Read Our Paper » `__ + +|image2| |image3| |image4| + +.. |image1| image:: https://i.ibb.co/BNkhQH3/pyvene-logo.png +.. |image2| image:: https://img.shields.io/pepy/dt/pyvene?color=green + :target: https://pypi.org/project/pyvene/ +.. |image3| image:: https://img.shields.io/pypi/v/pyvene?color=red + :target: https://pypi.org/project/pyvene/ +.. |image4| image:: https://img.shields.io/pypi/l/pyvene?color=blue + :target: https://pypi.org/project/pyvene/ + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + +pyvene +====== + +Interventions on model-internal states are fundamental operations in many areas of AI, +including model editing, steering, robustness, and interpretability. To facilitate such research, +we introduce **pyvene**, an open-source Python library that supports customizable interventions +on a range of different PyTorch modules. pyvene supports complex intervention schemes with +an intuitive configuration format, and its interventions can be static or include trainable +parameters. + +Getting Started +--------------- + +Since the library is evolving, it is recommended to install pyvene by, + +:: + + git clone git@github.com:stanfordnlp/pyvene.git + +and add pyvene into your system path in Python via, + +:: + + import sys + sys.path.append("") + + import pyvene as pv + +Alternatively, you can do + +:: + + pip install git+https://github.com/stanfordnlp/pyvene.git + +or + +:: + + pip install pyvene + + +*Wrap*, *intervene*, and *share* +-------------------------------- + +You can intervene with any HuggingFace model as, + +:: + + import torch + import pyvene as pv + from transformers import AutoTokenizer, AutoModelForCausalLM + + model_name = "meta-llama/Llama-2-7b-hf" # your HF model name. + model = AutoModelForCausalLM.from_pretrained( + model_name, torch_dtype=torch.bfloat16, device_map="cuda") + tokenizer = AutoTokenizer.from_pretrained(model_name) + + def zeroout_intervention_fn(b, s): + b[:,3] = 0. # 3rd position + return b + + pv_model = pv.IntervenableModel({ + "component": "model.layers[15].mlp.output", # string access + "intervention": zeroout_intervention_fn}, model=model) + + # run the intervened forward pass + orig_outputs, intervened_outputs = pv_model( + tokenizer("The capital of Spain is", return_tensors="pt").to('cuda'), + output_original_output=True + ) + print(intervened_outputs.logits - orig_outputs.logits) + + +which returns + +:: + + tensor([[[ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0000, 0.0000], + [ 0.0000, 0.0000, 0.0000, ..., 0.0000, 0.0000, 0.0000], + [ 0.4375, 1.0625, 0.3750, ..., -0.1562, 0.4844, 0.2969], + [ 0.0938, 0.1250, 0.1875, ..., 0.2031, 0.0625, 0.2188], + [ 0.0000, -0.0625, -0.0312, ..., 0.0000, 0.0000, -0.0156]]], + device='cuda:0') + +*IntervenableModel* Loaded from HuggingFace Directly +---------------------------------------------------- + +The following codeblock can reproduce `honest_llama-2 +chat `__ from the +paper `Inference-Time Intervention: Eliciting Truthful Answers from a +Language Model `__. The added +activations are only **~0.14MB** on disk! + +.. code:: python + + # others can download from huggingface and use it directly + import torch + from transformers import AutoTokenizer, AutoModelForCausalLM + import pyvene as pv + + tokenizer = AutoTokenizer.from_pretrained("meta-llama/Llama-2-7b-chat-hf") + model = AutoModelForCausalLM.from_pretrained( + "meta-llama/Llama-2-7b-chat-hf", + torch_dtype=torch.bfloat16, + ).to("cuda") + + pv_model = pv.IntervenableModel.load( + "zhengxuanzenwu/intervenable_honest_llama2_chat_7B", # the activation diff ~0.14MB + model, + ) + + print("llama-2-chat loaded with interventions:") + q = "What's a cure for insomnia that always works?" + prompt = tokenizer(q, return_tensors="pt").to("cuda") + _, iti_response_shared = pv_model.generate(prompt, max_new_tokens=64, do_sample=False) + print(tokenizer.decode(iti_response_shared[0], skip_special_tokens=True)) + +With this, once you discover some clever intervention schemes, you can +share with others quickly without sharing the actual base LMs or the +intervention code! + +.. _intervenablemodel-as-regular-nnmodule: + +*IntervenableModel* as Regular *nn.Module* +------------------------------------------ + +You can also use the ``pv_gpt2`` just like a regular torch model +component inside another model, or another pipeline as, + +.. code:: py + + import torch + import torch.nn as nn + from typing import List, Optional, Tuple, Union, Dict + + class ModelWithIntervenables(nn.Module): + def __init__(self): + super(ModelWithIntervenables, self).__init__() + self.pv_gpt2 = pv_gpt2 + self.relu = nn.ReLU() + self.fc = nn.Linear(768, 1) + # Your other downstream components go here + + def forward( + self, + base, + sources: Optional[List] = None, + unit_locations: Optional[Dict] = None, + activations_sources: Optional[Dict] = None, + subspaces: Optional[List] = None, + ): + _, counterfactual_x = self.pv_gpt2( + base, + sources, + unit_locations, + activations_sources, + subspaces + ) + return self.fc(self.relu(counterfactual_x.last_hidden_state)) + +Complex *Intervention Schema* as an *Object* +-------------------------------------------- + +One key abstraction that **pyvene** provides is the encapsulation of the +intervention schema. While abstraction provides good user-interfact, +**pyvene** can support relatively complex intervention schema. The +following helper function generates the schema configuration for *path +patching* on individual attention heads on the output of the OV circuit +(i.e., analyzing causal effect of each individual component): + +.. code:: py + + import pyvene as pv + + def path_patching_config( + layer, last_layer, + component="head_attention_value_output", unit="h.pos", + ): + intervening_component = [ + {"layer": layer, "component": component, "unit": unit, "group_key": 0}] + restoring_components = [] + if not stream.startswith("mlp_"): + restoring_components += [ + {"layer": layer, "component": "mlp_output", "group_key": 1}] + for i in range(layer+1, last_layer): + restoring_components += [ + {"layer": i, "component": "attention_output", "group_key": 1} + {"layer": i, "component": "mlp_output", "group_key": 1} + ] + intervenable_config = IntervenableConfig(intervening_component + restoring_components) + return intervenable_config + +then you can wrap the config generated by this function to a model. And +after you have done your intervention, you can share your path patching +with others, + +.. code:: py + + _, tokenizer, gpt2 = pv.create_gpt2() + + pv_gpt2 = pv.IntervenableModel( + path_patching_config(4, gpt2.config.n_layer), + model=gpt2 + ) + # saving the path + pv_gpt2.save( + save_directory="./your_gpt2_path/" + ) + # loading the path + pv_gpt2 = pv.IntervenableModel.load( + "./tmp/", + model=gpt2) + +Selected Tutorials +------------------ + +.. list-table:: Tutorials + :widths: 10 20 20 50 + :header-rows: 1 + + * - Level + - Tutorial + - Run in Colab + - Description + * - Beginner + - `pyvene 101 `__ + - + .. image:: https://colab.research.google.com/assets/colab-badge.svg + :align: center + :target: https://colab.research.google.com/github/stanfordnlp/pyvene/blob/main/pyvene_101.ipynb + - Introduce you to the basics of pyvene + * - Intermediate + - `ROME Causal Tracing `__ + - + .. image:: https://colab.research.google.com/assets/colab-badge.svg + :align: center + :target: https://colab.research.google.com/github/stanfordnlp/pyvene/blob/main/tutorials/advanced_tutorials/Causal_Tracing.ipynb + - Reproduce ROME's Results on Factual Associations with GPT2-XL + * - Intermediate + - `Intervention vs. Probing `__ + - + .. image:: https://colab.research.google.com/assets/colab-badge.svg + :align: center + :target: https://colab.research.google.com/github/stanfordnlp/pyvene/blob/main/tutorials/advanced_tutorials/Probing_Gender.ipynb + - Illustrates how to run trainable interventions and probing with pythia-6.9B + * - Advanced + - `Trainable Interventions for Causal Abstraction `__ + - + .. image:: https://colab.research.google.com/assets/colab-badge.svg + :align: center + :target: https://colab.research.google.com/github/stanfordnlp/pyvene/blob/main/tutorials/advanced_tutorials/DAS_Main_Introduction.ipynb + - Illustrates how to train an intervention to discover causal mechanisms of a neural model + + +Contributing to This Library +---------------------------- + +Please see `our guidelines `__ about how to contribute +to this repository. + +*Pull requests, bug reports, and all other forms of contribution are +welcomed and highly encouraged!* :octocat: + +A Little Guide for Causal Abstraction: From Interventions to Gain Interpretability Insights +------------------------------------------------------------------------------------------- + +Basic interventions are fun but we cannot make any causal claim +systematically. To gain actual interpretability insights, we want to +measure the counterfactual behaviors of a model in a data-driven +fashion. In other words, if the model responds systematically to your +interventions, then you start to associate certain regions in the +network with a high-level concept. We also call this alignment search +process with model internals. + +Understanding Causal Mechanisms with Static Interventions +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Here is a more concrete example, + +.. code:: py + + def add_three_numbers(a, b, c): + var_x = a + b + return var_x + c + +The function solves a 3-digit sum problem. Let's say, we trained a +neural network to solve this problem perfectly. "Can we find the +representation of (a + b) in the neural network?". We can use this +library to answer this question. Specifically, we can do the following, + +- **Step 1:** Form Interpretability (Alignment) Hypothesis: We + hypothesize that a set of neurons N aligns with (a + b). +- **Step 2:** Counterfactual Testings: If our hypothesis is correct, + then swapping neurons N between examples would give us expected + counterfactual behaviors. For instance, the values of N for (1+2)+3, + when swapping with N for (2+3)+4, the output should be (2+3)+3 or + (1+2)+4 depending on the direction of the swap. +- **Step 3:** Reject Sampling of Hypothesis: Running tests multiple + times and aggregating statistics in terms of counterfactual behavior + matching. Proposing a new hypothesis based on the results. + +To translate the above steps into API calls with the library, it will be +a single call, + +.. code:: py + + intervenable.eval_alignment( + train_dataloader=test_dataloader, + compute_metrics=compute_metrics, + inputs_collator=inputs_collator + ) + +where you provide testing data (basically interventional data and the +counterfactual behavior you are looking for) along with your metrics +functions. The library will try to evaluate the alignment with the +intervention you specified in the config. + +-------------- + +Understanding Causal Mechanism with Trainable Interventions +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The alignment searching process outlined above can be tedious when your +neural network is large. For a single hypothesized alignment, you +basically need to set up different intervention configs targeting +different layers and positions to verify your hypothesis. Instead of +doing this brute-force search process, you can turn it into an +optimization problem which also has other benefits such as distributed +alignments. + +In its crux, we basically want to train an intervention to have our +desired counterfactual behaviors in mind. And if we can indeed train +such interventions, we claim that causally informative information +should live in the intervening representations! Below, we show one type +of trainable intervention +``models.interventions.RotatedSpaceIntervention`` as, + +.. code:: py + + class RotatedSpaceIntervention(TrainableIntervention): + + """Intervention in the rotated space.""" + def forward(self, base, source): + rotated_base = self.rotate_layer(base) + rotated_source = self.rotate_layer(source) + # interchange + rotated_base[:self.interchange_dim] = rotated_source[:self.interchange_dim] + # inverse base + output = torch.matmul(rotated_base, self.rotate_layer.weight.T) + return output + +Instead of activation swapping in the original representation space, we +first **rotate** them, and then do the swap followed by un-rotating the +intervened representation. Additionally, we try to use SGD to **learn a +rotation** that lets us produce expected counterfactual behavior. If we +can find such rotation, we claim there is an alignment. +``If the cost is between X and Y.ipynb`` tutorial covers this with an +advanced version of distributed alignment search, `Boundless +DAS `__. There are `recent +works `__ +outlining potential limitations of doing a distributed alignment search +as well. + +You can now also make a single API call to train your intervention, + +.. code:: py + + intervenable.train_alignment( + train_dataloader=train_dataloader, + compute_loss=compute_loss, + compute_metrics=compute_metrics, + inputs_collator=inputs_collator + ) + +where you need to pass in a trainable dataset, and your customized loss +and metrics function. The trainable interventions can later be saved on +to your disk. You can also use ``intervenable.evaluate()`` your +interventions in terms of customized objectives. + +Citation +-------- + +If you use this repository, please consider to cite our library paper: + +.. code:: stex + + @article{wu2024pyvene, + title={pyvene: A Library for Understanding and Improving {P}y{T}orch Models via Interventions}, + author={Wu, Zhengxuan and Geiger, Atticus and Arora, Aryaman and Huang, Jing and Wang, Zheng and Noah D. Goodman and Christopher D. Manning and Christopher Potts}, + booktitle={arXiv:2403.07809}, + url={arxiv.org/abs/2403.07809}, + year={2024} + } + +Related Works in Discovering Causal Mechanism of LLMs +----------------------------------------------------- + +If you would like to read more works on this area, here is a list of +papers that try to align or discover the causal mechanisms of LLMs. + +- `Causal Abstractions of Neural + Networks `__: This paper introduces + interchange intervention (a.k.a. activation patching or causal + scrubbing). It tries to align a causal model with the model's + representations. +- `Inducing Causal Structure for Interpretable Neural + Networks `__: Interchange + intervention training (IIT) induces causal structures into the + model's representations. +- `Localizing Model Behavior with Path + Patching `__: Path patching (or + causal scrubbing) to uncover causal paths in neural model. +- `Towards Automated Circuit Discovery for Mechanistic + Interpretability `__: Scalable + method to prune out a small set of connections in a neural network + that can still complete a task. +- `Interpretability in the Wild: a Circuit for Indirect Object + Identification in GPT-2 small `__: + Path patching plus posthoc representation study to uncover a circuit + that solves the indirect object identification (IOI) task. +- `Rigorously Assessing Natural Language Explanations of + Neurons `__: Using causal + abstraction to validate `neuron explanations released by + OpenAI `__. + +Star History +------------ + +|Star History Chart| + +.. |Star History Chart| image:: https://api.star-history.com/svg?repos=stanfordnlp/pyvene,stanfordnlp/pyreft&type=Date + :target: https://star-history.com/#stanfordnlp/pyvene&stanfordnlp/pyreft&Date + +.. toctree:: + :hidden: + :caption: Guides + + guides/contributing + guides/ndif + + +.. toctree:: + :hidden: + :caption: Basic tutorials + + tutorials/pyvene_101 + tutorials/basic_tutorials/Add_Activations_to_Streams + tutorials/basic_tutorials/Basic_Intervention + tutorials/basic_tutorials/Nested_Intervention + tutorials/basic_tutorials/Subspace_Partition_with_Intervention + tutorials/basic_tutorials/Intervention_Training + +.. toctree:: + :hidden: + :caption: Advanced tutorials + + tutorials/advanced_tutorials/Causal_Tracing + tutorials/advanced_tutorials/Probing_Gender + tutorials/advanced_tutorials/DAS_Main_Introduction + tutorials/advanced_tutorials/Boundless_DAS + tutorials/advanced_tutorials/IOI_Replication + tutorials/advanced_tutorials/IOI_with_DAS + tutorials/advanced_tutorials/IOI_with_Mask_Intervention + tutorials/advanced_tutorials/Interventions_with_BLIP + tutorials/advanced_tutorials/MQNLI + tutorials/advanced_tutorials/Voting_Mechanism + +.. toctree:: + :hidden: + :caption: API + + api/core + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` \ No newline at end of file diff --git a/_sources/tutorials/advanced_tutorials/Boundless_DAS.ipynb b/_sources/tutorials/advanced_tutorials/Boundless_DAS.ipynb new file mode 100644 index 00000000..7b40c536 --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/Boundless_DAS.ipynb @@ -0,0 +1,624 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "63ff6846", + "metadata": {}, + "source": [ + "## Boundless DAS" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3ae11b28", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"10/05/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "7d898fce", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "This tutorial aims to reproduce one key result of [the Boundless DAS paper](https://arxiv.org/pdf/2305.08809). It uses the same pricing tag dataset as in the paper. Additionally, it focuses on finding alignment for the left boundary check only. " + ] + }, + { + "cell_type": "markdown", + "id": "8af5dff0", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3e3c09e2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[2024-01-11 01:35:34,365] [INFO] [real_accelerator.py:158:get_accelerator] Setting ds_accelerator to cuda (auto detect)\n" + ] + } + ], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "9a39c2b3", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "from tqdm import tqdm, trange\n", + "from datasets import Dataset\n", + "from torch.utils.data import DataLoader\n", + "from transformers import get_linear_schedule_with_warmup\n", + "from torch.nn import CrossEntropyLoss\n", + "from tutorial_price_tagging_utils import (\n", + " factual_sampler,\n", + " bound_alignment_sampler,\n", + " lower_bound_alignment_example_sampler,\n", + ")\n", + "\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " BoundlessRotatedSpaceIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene import create_llama\n", + "from pyvene import set_seed, count_parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "970a8f7d", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "7ae4a40cfb8d44a38578fd45815ab319", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Downloading config.json: 0%| | 0.00/550 [00:00. This is expected, and simply means that the `legacy` (previous) behavior will be used so nothing changes for you. If you want to use the new behaviour, set `legacy=False`. This should only be set if you understand what it means, and thouroughly read the reason why this was added as explained in https://github.com/huggingface/transformers/pull/24565\n", + "normalizer.cc(51) LOG(INFO) precompiled_charsmap is empty. use identity normalization.\n", + "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "cbf4bf617f9a4099bf3525e0c5334ed6", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Loading checkpoint shards: 0%| | 0/34 [00:00base\": 80}, # swap 80th token\n", + " )\n", + " eval_metrics = compute_metrics(\n", + " [counterfactual_outputs.logits], [inputs[\"labels\"]]\n", + " )\n", + "\n", + " # loss and backprop\n", + " loss = calculate_loss(counterfactual_outputs.logits, inputs[\"labels\"])\n", + " loss_str = round(loss.item(), 2)\n", + " epoch_iterator.set_postfix({\"loss\": loss_str, \"acc\": eval_metrics[\"accuracy\"]})\n", + "\n", + " if gradient_accumulation_steps > 1:\n", + " loss = loss / gradient_accumulation_steps\n", + " loss.backward()\n", + " if total_step % gradient_accumulation_steps == 0:\n", + " if not (gradient_accumulation_steps > 1 and total_step == 0):\n", + " optimizer.step()\n", + " scheduler.step()\n", + " intervenable.set_zero_grad()\n", + " intervenable.set_temperature(temperature_schedule[total_step])\n", + " total_step += 1" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "3323b113", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:45<00:00, 1.38it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'accuracy': 0.96}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# evaluation on the test set\n", + "eval_labels = []\n", + "eval_preds = []\n", + "with torch.no_grad():\n", + " epoch_iterator = tqdm(test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " [{\"input_ids\": inputs[\"source_input_ids\"]}],\n", + " {\"sources->base\": 80}, # swap 80th token\n", + " )\n", + " eval_labels += [inputs[\"labels\"]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + "eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "print(eval_metrics)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9fbd6296", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.13" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/advanced_tutorials/Causal_Tracing.ipynb b/_sources/tutorials/advanced_tutorials/Causal_Tracing.ipynb new file mode 100644 index 00000000..58589f7b --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/Causal_Tracing.ipynb @@ -0,0 +1,493 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Causal Tracing (ROME)\n", + "\n", + "Causal tracing was a methodology for locating where facts are stored in transformer LMs, introduced in the paper [\"Locating and Editing Factual Associations in GPT\" (Meng et al., 2023)](https://arxiv.org/abs/2202.05262). In this notebook, we will implement their method using this library and replicate the first causal tracing example in the paper (full figure 1 on page 2)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/frankaging/pyvene/blob/main/tutorials/advance_tutorials/Causal_Tracing.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Aryaman Arora\"\n", + "__version__ = \"11/08/2023\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "import pandas as pd\n", + "import numpy as np\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " VanillaIntervention, Intervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + " ConstantSourceIntervention,\n", + " LocalistRepresentationIntervention\n", + ")\n", + "from pyvene import create_gpt2\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + " xlab, ylab, ylim,\n", + " scale_y_discrete, scale_y_continuous, ggsave\n", + ")\n", + "from plotnine.scales import scale_y_reverse, scale_fill_cmap\n", + "from tqdm import tqdm\n", + "\n", + "titles={\n", + " \"block_output\": \"single restored layer in GPT2-XL\",\n", + " \"mlp_activation\": \"center of interval of 10 patched mlp layer\",\n", + " \"attention_output\": \"center of interval of 10 patched attn layer\"\n", + "}\n", + "\n", + "colors={\n", + " \"block_output\": \"Purples\",\n", + " \"mlp_activation\": \"Greens\",\n", + " \"attention_output\": \"Reds\"\n", + "} " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Factual recall\n", + "\n", + "Let's set up the model (gpt2-xl) and test it on the fact we want to causal trace: \"The Space Needle is in downtown **Seattle**\"." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "The Space Needle is in downtown\n", + "_Seattle 0.9763794541358948\n", + "_Bellev 0.0027682818472385406\n", + "_Portland 0.0021577849984169006\n", + ", 0.0015149445971474051\n", + "_Vancouver 0.0014351375866681337\n", + "_San 0.0013575783232226968\n", + "_Minneapolis 0.000938268203753978\n", + ". 0.0007443446083925664\n", + "_Tacoma 0.0006097281584516168\n", + "_Washington 0.0005885555874556303\n" + ] + } + ], + "source": [ + "device = \"cuda:0\" if torch.cuda.is_available() else \"cpu\"\n", + "config, tokenizer, gpt = create_gpt2(name=\"gpt2-xl\")\n", + "gpt.to(device)\n", + "\n", + "base = \"The Space Needle is in downtown\"\n", + "inputs = [\n", + " tokenizer(base, return_tensors=\"pt\").to(device),\n", + "]\n", + "print(base)\n", + "res = gpt(**inputs[0])\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Corrupted run\n", + "\n", + "The first step in implementing causal tracing is to corrupt the input embeddings for the subject tokens by adding Gaussian noise to them. In Meng et al., the standard deviation of the Gaussian we sample from is computed as thrice the standard deviation of embeddings over a big dataset. We encode this as a constant, `self.noise_level`.\n", + "\n", + "Note that the `source` argument is ignored unlike in causal interventions, since we are adding noise without reference to any other input.\n", + "\n", + "Our intervention config intervenes on the `block_input` of the 0th layer, i.e. the embeddings." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "class NoiseIntervention(ConstantSourceIntervention, LocalistRepresentationIntervention):\n", + " def __init__(self, embed_dim, **kwargs):\n", + " super().__init__()\n", + " self.interchange_dim = embed_dim\n", + " rs = np.random.RandomState(1)\n", + " prng = lambda *shape: rs.randn(*shape)\n", + " self.noise = torch.from_numpy(\n", + " prng(1, 4, embed_dim)).to(device)\n", + " self.noise_level = 0.13462981581687927\n", + "\n", + " def forward(self, base, source=None, subspaces=None):\n", + " base[..., : self.interchange_dim] += self.noise * self.noise_level\n", + " return base\n", + "\n", + " def __str__(self):\n", + " return f\"NoiseIntervention(embed_dim={self.embed_dim})\"\n", + "\n", + "\n", + "def corrupted_config(model_type):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_input\", # intervention type\n", + " ),\n", + " ],\n", + " intervention_types=NoiseIntervention,\n", + " )\n", + " return config" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's check that this reduced the probability of the output \"_Seattle\"." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "_Los 0.03294256329536438\n", + "_San 0.03194474056363106\n", + "_Seattle 0.026176469400525093\n", + "_Toronto 0.02585919387638569\n", + "_Chicago 0.024749040603637695\n", + "_Houston 0.024224288761615753\n", + "_Atlanta 0.01866454817354679\n", + "_Austin 0.017735302448272705\n", + "_St 0.017606761306524277\n", + "_Denver 0.01740877516567707\n" + ] + } + ], + "source": [ + "base = tokenizer(\"The Space Needle is in downtown\", return_tensors=\"pt\").to(device)\n", + "config = corrupted_config(type(gpt))\n", + "intervenable = IntervenableModel(config, gpt)\n", + "_, counterfactual_outputs = intervenable(\n", + " base, unit_locations={\"base\": ([[[0, 1, 2, 3]]])}\n", + ")\n", + "distrib = embed_to_distrib(gpt, counterfactual_outputs.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Restored run\n", + "\n", + "We now make a config that performs the following:\n", + "1. Corrupt input embeddings for some positions.\n", + "2. Restore the hidden state at a particular layer for some (potentially different positions).\n", + "\n", + "This is how Meng et al. check where in the model the fact moves through." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [], + "source": [ + "def restore_corrupted_with_interval_config(\n", + " layer, stream=\"mlp_activation\", window=10, num_layers=48):\n", + " start = max(0, layer - window // 2)\n", + " end = min(num_layers, layer - (-window // 2))\n", + " config = IntervenableConfig(\n", + " representations=[\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_input\", # intervention type\n", + " ),\n", + " ] + [\n", + " RepresentationConfig(\n", + " i, # layer\n", + " stream, # intervention type\n", + " ) for i in range(start, end)],\n", + " intervention_types=\\\n", + " [NoiseIntervention]+[VanillaIntervention]*(end-start),\n", + " )\n", + " return config" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's run this over all layers and positions! We will corrupt positions 0, 1, 2, 3 (\"The Space Needle\", i.e. the subject of the fact) and restore at a single position at every layer." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "7312\n" + ] + } + ], + "source": [ + "# should finish within 1 min with a standard 12G GPU\n", + "token = tokenizer.encode(\" Seattle\")[0]\n", + "print(token)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for stream in [\"block_output\", \"mlp_activation\", \"attention_output\"]:\n", + " data = []\n", + " for layer_i in tqdm(range(gpt.config.n_layer)):\n", + " for pos_i in range(7):\n", + " config = restore_corrupted_with_interval_config(\n", + " layer_i, stream, \n", + " window=1 if stream == \"block_output\" else 10\n", + " )\n", + " n_restores = len(config.representations) - 1\n", + " intervenable = IntervenableModel(config, gpt)\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " [None] + [base]*n_restores,\n", + " {\n", + " \"sources->base\": (\n", + " [None] + [[[pos_i]]]*n_restores,\n", + " [[[0, 1, 2, 3]]] + [[[pos_i]]]*n_restores,\n", + " )\n", + " },\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " prob = distrib[0][-1][token].detach().cpu().item()\n", + " data.append({\"layer\": layer_i, \"pos\": pos_i, \"prob\": prob})\n", + " df = pd.DataFrame(data)\n", + " df.to_csv(f\"./tutorial_data/pyvene_rome_{stream}.csv\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The plot below should now replicate Meng et al." + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:587: PlotnineWarning: Saving 5 x 4 in image.\n", + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:588: PlotnineWarning: Filename: ./tutorial_data/pyvene_rome_block_output.pdf\n" + ] + }, + { + "data": { + "image/png": "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jY3Vpk2b9MILL2jv3r3aunWrhg0bprVr16pNmzbVtn///fcDP59yyin1ttWrV6/Az08//bSmTJmiqKioZtU/bdo0zZkzR1LlbccXXXSRBg0apMTERGVkZOjtt9/Wu+++q927d2vYsGFavXq1jjnmmBr7KSwsVEREhE4++WSdfvrpOuaYY5SUlCS/36+dO3fqrbfe0ueff649e/bo3HPP1bp169S1a9dq+1i0aJEkBS7d79evn2bNmlWjrRNOOCGo9Z14Xaq0bdtWqamp+v777/Xxxx+ruLhYMTExTa7LtmnW6pObm6tvvvlGWVlZio+P14ABA9S5c+eQ7Z9p1uAGTLMGu/F2eBfTrAEIBtOs/c/HH3+sYcOGBf4cFxent99+u8bl6QcPHtTo0aP1xRdfSJKuvvpqPfPMM9XWufbaawPPLV++XMOHD6+z3S+++EKnnXZa4M9paWn63e9+p1GjRgU1v/Y//vGPwP3p48aN08svv1ytw7TKwoULddFFF6m8vFynn366VqxYUWOdVatWqXPnzurUqVOd7c2ZM0fTpk1TRUWFrrjiisCty4dzepq1UL4uh5o+fbpeeuklSZXvZUNfyNTGFbPZJyYmatiwYbrgggs0evTokIZzAAAAAGiOBx98sNZ7x5OSkvT6668rISFBUuW95pmZmdXW2bBhQ+DnY489tt52Tj31VN10002BP2/cuFHXXnutunfvrvbt22vUqFG688479f777zd433tJSYnuvvtuSVKfPn30xhtv1BpCJenXv/61brnlFknS559/rq+++qrGOieddFK94VySpk6dqilTpkiS5s+f78pBv0P9uhyqT58+gZ/Xr18fVH2uCOgAAAAA4EZJSUn67W9/W+fyzp0765JLLpFUGf6WLl1abfnOnTsDP7dt27bB9qqm6To8DGdlZen999/XrFmzNGrUKB1xxBG66aab6rxa+IMPPtDevXslVY4I39Cl8oeOLn/oZflNNWTIEEmVl8QHG1KtZOXrcuj7e+j73hS23YN+qPz8fK1atUo//PBDYAj6Nm3aqGfPnjrppJMC30ABAAAAgJOGDBnS4L3EZ599tv7xj39Ikr7++mtdfvnlgWUHDhyQVHmZfGPvSb7yyiv1m9/8Rh988IHeeecdrVy5Ups2bao2mFlOTo7+9re/acGCBVq6dKlOPPHEavv49NNPAz/n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1+q8885TQUGBli1bpqKiIknSK6+8ovfee0+//PKLJOn888/XZZddZmdpAAAAADzK6V5uNzxkNH7EuZKSEo0fP14ZGRlKS0vTunXrlJubq9zcXM2aNUuGYeiJJ57Qv/71r6Dfk1WrVmnfvn21PsaOHVvrNps2bdJll12msrIyXXjhhdqzZ48OHjyoPXv26IILLlBpaammTZumrVu3Bl2X1WzrQZekiIgITZ8+XaNGjdLy5cu1detWZWdnq6KiQklJSTr22GM1YsQIde7c2c6yAAAAAHiYz+eT4aujq9kLI6UbUmxs42bbkqRnn31W27dvV1xcnN5++20dddRRkqS4uDjdfvvt2rt3r5566indcccdmjp1qiIjI62qvJq77rpLpaWlOv744zV37ly1alUZd4888kjNmzdP27Zt07p163TXXXfptddes6WmprI1oFfp2LGjLrnkEieaBgAAAIBqjP8+6lyIaubMmSNJuvjiiwPh/FC33HKLnn76ae3Zs0cfffSRRo4caXlNOTk5euuttyRJN998cyCcV2nVqpVuvvlmXXrppVqyZIny8vLUunVry+tqKlsvcQcAAAAA1zHUqMHJans4fm16A48mHUsj5Ofna9WqVZIqBwKvzVFHHaU+ffpIkpYvXx6a96gBK1asUGlpqSTpnHPOqXWdqudLSkq0YsUKW+pqKkt60BcsWBCyfU2ePDlk+wIAAACAWgXZU+61DvYtW7bINCuv+09LS6tzvbS0NG3evFmbN28Oqp0LL7xQ27ZtU2Fhodq3b6/Bgwfr8ssv15gxY2pdv6qdI444Qu3bt691nfbt26tDhw7KyMjQ5s2bXTlrmCUBff78+Y3+BqYhBHQAAAAAVrM+aIeyBedujN+7d2/g506dOtW5XtWyQ9dvilWrVikxMVERERH6+eeftXDhQi1cuFAXXHCB5syZo6io6vfMV7VTX01VyzMyMoKuy2qWBPR+/fqFLKADAAAAgJUMNf4S7+YIXaw2Qv6FQmMPPz8/P/BzXFxcnetVLcvLy2t0DTExMbruuus0efJkHX/88YF7xDdt2qSHHnpIr7zyil5//XUlJSXp2WefrbWu+moKti47WRLQ77//fit2CwAAAAChZ5i2XKtOF2b9OnbsqKeeeqrG8/369dPLL7+s9u3b67HHHtPzzz+vm2++Wb1793agSms5Moo7AAAA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+fPn649//KMeeeSRevcTExOjNm3a1LosJSWlSTXZzbaA3rlzZ/3www9as2aNTjrpJEnSZ599JsMw1K9fv2rrlpaWqqCgoN7QfaipU6dq6tSpdS7PyspSdnZ28MWHSHJSW6dLAAAAAGrlhs/LknMByk29107U0pQ2S0pKNH78eGVkZCgtLU1z5szRgAEDVFhYqMcff1x33nmnnnjiCR1//PG67LLLGr3fsrIyHXfccbryyis1evRo9ezZU6Zpatu2bfrzn/+shQsX6q9//at69uypa665ps79XHTRRXrxxRcbf0AuYtsgcYMHD5ZpmnriiSf073//W//85z/16aefSpJOP/30auump6fLNM1GB3QAAAAAaA6rR3F3+6Mpnn32WW3fvl1xcXF6++23NWDAAEmVVy7ffvvtuu666yRJd9xxh8rKyhq935dfflnffvutrr/+evXs2fO/74uhY445Rq+//rrOOussSWqwBz2c2RbQJ0yYoK5duyo3N1evvPKKli5dKtM0NWrUKHXp0qXaul988YUMw1BaWppd5QEAAADwNCtGRg+nR+PNmTNHknTxxRfrqKOOqrH8lltukWEY2rNnjz766KNG7/fMM8+sc5nP5wsM/L19+3bXXPERarZd4h4dHa2HH35YS5Ys0ffff6/Y2FideOKJGjZsWLX1ysvLtX79eqWkpGjgwIF2lQcAAADAo5weJM4NGnv8+fn5WrVqlSRp1KhRta5z1FFHqU+fPtq8ebOWL1+ukSNHhqTGQ29/KC8vD8k+3ca2gC5VXvIwefLketdp1apVkwcTAAAAAIDm8HpAb6wtW7bI/O8odvVd8ZyWlqbNmzdr8+bNIWv7k08+kSQdccQR9Y5VsHz5cqWmpuqnn35STEyMevXqpdGjR+v3v/+9jjjiiJDVYwXbLnEHAAAAADeqDJxOX2Lu7KO8kVNC7927N/Bzp06d6lyvatmh6zfH7t279cwzz0iqnE7NqOcbld27d2vnzp2Kj49Xfn6+1qxZo1mzZqlv375avnx5SOqxiiU96AsWLJAkJSYmavTo0dWea6qGetwBAAAAoDkMw/B8D3pTLnGvEhcXV+d6Vcvy8vKaVZdUObr7xRdfrPz8fHXr1k1//vOfa13vhBNO0ODBgzVmzBh16dJFPp9PeXl5WrJkif70pz9p7969mjhxor755hsdc8wxza7LCpYE9Pnz58swDHXu3DkQ0KueayoCOgAAAAArVQb0urKKI5OS26jyuFu1cmr++fqZpqnf/va3WrFihWJiYrRgwYI65zi/4YYbajzXunVrXXLJJRoyZIgGDhyo7OxszZw5U/PmzbO69KBYEtD79esnwzCq3RdQ9RwAAAAAuE1+/k9Bbde6dc1RzJ2Wl9f0Y8nPl1JSBjW4XkJCQuDnwsJCJSYm1rpeYWGhpMqA3Bw33HCDXnrpJbVq1UqvvfaaTjnllKD2061bN/3+97/Xvffeq7ffflsVFRXy+dx3x7clAf3+++9v1HMAAAAAgPBx6H3ne/bsqTOg79mzR5J05JFHBt3WH//4Rz355JOKiIjQnDlzNG7cuKD3JUmDBw+WJOXm5mr//v1q3759s/ZnBfd9ZQAAAAAAYaJqijY3Pax07LHHBq6M3rRpU53rVS3r27dvUO3cdtttevTRR2UYhp5//nlddNFFQe0n3Ng6zRoAAAAAuFFiotWXqleNFG+9YI6lbdu6B3w7VEJCgk4++WR99dVXeu+993T++efXWGf37t2B6dVGjBjR5FpmzpypBx54QJL09NNPa/r06U3eR22++uorSZWX3bdr1y4k+ww1etABAAAAeFplz7Nh8cMXwl5ya2psrEsuuURS5UDgu3btqrH84Ycflmma6tSpk4YNG9ak9+LBBx/U3XffLUl6/PHHdc011zRqu6q52evy008/6amnnpIkjRkzxpX3n0sEdAAAAABeZ9o123j1/+zZsnGPprjqqqvUo0cPFRQUaOzYsVq/fr0kqaioSA8++KCefPJJSdKsWbMUGRlZbdujjz5ahmHU2is+e/bswBRqDz74oGbMmNHomubMmaPzzz9fixcvVlZWVuD5/Px8zZ8/X6effroOHDighIQEzZw5s2kHbCMucQcAAADgbYZh19Xn1Zu1v8mQiI6O1pIlSzR8+HCtX79eAwYMUGJiogoKCuT3+yVJ119/vS677LIm7femm26SVHmFwOOPP67HH3+8znUXLlyo0047LfBnv9+vhQsXauHChZIqL8WPjo5Wdna2KioqJEkdOnTQggUL1Lt37ybVZScCOgAAAADPC9ewHCpNPf5+/fppw4YNevDBB7V06VLt2rVLbdq00QknnKDf/e53mjhxYpNrqLpM3TRN/fLLL/WuW1paWu3Pw4YN06xZs/T555/ru+++U1ZWlnJycpScnKy+fftq9OjRuuqqq9S2bdsm12Unw2zoYv0W4NBLHJyUnOTukwHwEg/86gOCwl+Nulk9MjLgtIM52U6XIElKSUmxvc2CglL98kue7e26SXJyrJKTGzdQHKxDDzoAAAAAz7P8O7jmNsAXqJ5AQAcAAACAkCb0qjQdwp3W2JV907bBPgR0AAAAAJ5WNU56aPdotdC2EdrjR7AI6AAAAAC8LZi5xoLbxBZBXQ3v1oPxGAI6AAAAAM9rSfm0JR2L1xDQAQAAAHiaWaFap2poqUG3th728vIK2+tATQR0AAAAAJ7m87XcMF6b2o41IsL2MlALAjoAAAAAjzNk1NKD/j8teY6zyuP2+UjobkBABwAAAOBtRq1XuFdf4VDhnNfrOE4vXUHgZgR0AAAAAGgK0iwsQkAHAAAA4HlkbrgBAR0AAAAAvJ7QvX78LkFABwAAAOBphiTD4wnV20fvHgR0AAAAAJ5mSs4l1PoGnCM1ew4BHQAAAICnGXIwCxPCcQgCOgAAAABvczCh19asI7O48UWBKxDQAQAAAHievfm0/tb+t9S+qE4+dwcCOgAAAABYHFGNoHZffSPT0rxORHcDAjoAAAAAzwsuQNsrHGpE8/icLgAAAAAAANCDDgAAAMDjDNE77fXjdwsCOgAAAACPc3SiNSCAgA4AAADA00zT9HwPst/vd7oEiHvQAQAAAHic4fN4OpcUEUE0dANP9KAbhiGfjxMOAAAAqEtERITTJTjK8HgXumGQl9zAEwE9NjZWcXFxTpchf3mF0yW4lmntpI5wOSf+QQy2Tc5VhIPmnKZBn+PBthnsX//mHGOQ2/noYfM0L2S35ORkp0twVlPe43D9OOCB8zjceSKgFxUVqaSkxOkylNi6jdMlAAAAALXKzs52ugRJznxR0OQh4g5b2a15nTwefjwR0E3TZNADAAAAoB58Xg4eQRih4omADgAAAAD1siFlV/W0uzLQu7Io7yGgAwAAAPA8w4aEaqj5l8NbVSX53B0I6AAAAAC8rck3oTevKaAujKUPAAAAAA5y6yBzsB896AAAAAA8z8mp9FzRq+6KIkBABwAAAADPJ1SvH787ENABAAAAeJohZ3vQ3cDjh+8a3IMOAAAAAIAL0IMOAAAAAM3glt53k9Hmwh4BHQAAAIC3GU0N2S5J5IepeQxNSOzuPCTPIaADAAAA8DgbJ0K3VROOid53VyCgAwAAAPA00zRdc5m6UyoqKpwuASKgAwAAAPA4n2F4PqBHtGL8cDcgoAMAAABAi7zEvSm8fvzuwNckAAAAAAC4AD3oAAAAADyvuf3HbhtjranHQ/+5OxDQAQAAAHhbCAZxJ+AiFAjoAAAAAGBpxLaqf52vBVoaAjoAAAAAbzOtjrrV9x5sXCeOt3wEdAAAAACwEUEbdSGgAwAAAPC2ENyDHva8fvwuQUAHAAAA4Hlez6deP363IKADAAAA8DgbutBdP48bEd0NCOgAAAAA4PZ86vb6EBIEdAAAAACexi3ocAuf0wUAAAAAAAB60AEAAACgaYww6m83Lb95HSFEQAcAAADgaaZMGeEUupuikcdlEuRdgUvcAQAAAMDjCOjuQA86AAAAAE8zDCOsrlq3QkQEfbduQEAHAAAAAM+P4+7143cHviYBAAAAAMAF6EEHAAAAgBB2INvdFx2Su8fpQHcFAjoAAAAATzMU3vk0FLWH8/G3JFziDgAAAACACzjSg+73+7V3717l5+ervLy83nXT0tJsqgoAAACAF5mSw9el19a4WfcitFi2BvSMjAy9/PLL+vLLLxsM5lUWL15sbVEAAAAAYLdqwZs5yFHJtoC+b98+/elPf1JeXp5MkxMQAAAAgDsY//0PcJptAX3evHnKzc1VfHy8LrzwQp1yyilq166dIiMj7SoBAAAAAGpyaJS4upp0pDuT7ydcwbaA/u2338owDN1000066aST7GoWAAAAABzXlPzrquAOW9kW0AsKCtSqVSsNGjQo5PueM2eO5s2bV+fySZMmadq0aSFvt8n4GwUAAACXSk5OdroER4VDB7KVNYbD8XuBbQG9bdu2ysnJkc8X+pndCgoKlJGRUefywsJCRUREhLzdpvKXVzhdAgAAAFArN3xedo4ZgoTqhohLj2C4sy2gn3rqqXrzzTf1/fff65hjjgnpvuPj49WhQ4c6l8fFxcnv94e0zeC44S8tAAAAUJM7Pi+H0xcFbvxsf3hNBPZwY5g2DaleUFCgGTNmKCEhQffee68SEhLsaFaSlJWVZVtb9UlOaut0Ca7FyP7eZhhu/AeudpyrCAfNOU2DPseDbTPYv/7NOcYgt/P5wud3FUIvjP6pCtrBnGynS5AkpaSk2N5mRYWpCn/9vx3C/RRo6Hefz2fIFxHuRxn+bAvoGzdu1P79+/Xss88qMjJSI0eOVGpqqmJjY+vdLi0trdltE9Ddj9DjbQR0ILQI6NZsSkD3tjD6pypoXg7oZoWpigpv/xtvGJIvIvS3I6NpbAvoEyZMCOpD+OLFi5vdNgHd/Qg93kZAB0KLgG7NpgR0bwujf6qC5umAbpoyK0yZCq/PJaFQ9XvfMGTJeGFoGtvuQZf4YAsAAADAfQzDkOHZy7u9etzuZFtAf/PNN+1qCgAAAACAsMM1DAAAAAAAuAABHQAAAAAAF7DkEvcFCxZIkhITEzV69OhqzzXV5MmTQ1YXAAAAAABuZUlAnz9/vgzDUOfOnQMBveq5piKgAwAAAAC8wJKA3q9fPxmGUW2KhKrnAAAAAABATbbNg+4k5kF3Pw+chqhHOH15x7mKcMA86NZsyjzo3hZG/1QFzcvzoANuwSBxAAAAAAC4AAEdAAAAAAAXIKADAAAAAOACBHQAAAAAAFyAgA4AAAAAgAsQ0AEAAAAAcAECOgAAAAAALkBABwAAAADABQjoAAAAAAC4AAEdAAAAAAAXIKADAAAAAOACBHQAAAAAAFyAgA4AAAAAgAsQ0AEAAAAAcAECOgAAAAAALkBABwAAAADABVo50WhJSYkKCgrk9/vrXa99+/Y2VQQAAAAAgLNsC+iFhYV64403tGLFCmVkZDRqm8WLF1tbFAAAAAAALmFLQM/JydGtt96qffv2yTRNO5oEAAAAACCs2BLQ582bp7179yoyMlIjR47U4MGD1a5dO0VFRdnRPAAAAAAArmdLQF+1apUMw9C1116rESNG2NEkAAAAAABhxZZR3HNycuTz+TR06FA7mgMAAAAAIOzYEtCTkpIUHR2tVq0cGTQeAAAAAADXsyWgDxo0SEVFRdq1a5cdzQEAAAAAEHZsCegXXXSREhIS9Nxzz6m8vNyOJgEAAAAACCuGacO8Z5mZmdq5c6f+9re/qV27dpowYYJSU1MVGxtb73bt27cPSftZWVkh2U9zJSe1dboE12L6PW8zDMPpEhqNcxXhoDmnadDneLBtBvvXvznHGOR2Pl/4/K5C6IXRP1VBO5iT7XQJkqSUlBSnSwAcY0tAnzhxYlDbLV68OCTtE9Ddj9DjbQR0ILQI6NZsSkD3tjD6pypoBHTAebaM2sYHWgAAAAAA6mdLQH/uuefsaAYAAAAAgLBlS0Dv0KGDHc0AAAAAABC2PDExuWEY8vlsGbAeAAAACEsRERFOlwB4ni0B/eWXX1b//v3Vt29fRUdH29FkNbGxsYqLi7O93cP5yyucLgGHCKeByeAewZ43jMVRt6DHJKuw/zUN9n0M9hgrgtxw1+6c4BqU9N13mUFtt3rlT0FtF+z7mL39QFDbSVLevvygtsv5KS+o7Yqyi4PaLtgB9Jz5uxHcdsH+U+wv9Qe1XbMGULT7dXXgn42PKu62v1EA1dgS0P/9739r4cKF8vl86tWrl/r16xcI7DExMZa3X1RUpJKSEsvbaUhi6zZOlwAAAADUKjvbHaO4JycnO10C4BhbAvqQIUO0adMmZWdn67vvvtP333+vRYsWyefzqUePHurfv7/S0tLUt2/fBudGD4ZpmvL7g/umFQAAAPACPi8DzrMloP/pT3+SJO3evVsbN24MPLKzs7Vt2zalp6dXC+xpaWnq37+/Bg0aZEd5AAAAAAA4ztZB4rp06aIuXbpo1KhRkqSff/65WmA/cOCA0tPTlZ6ersWLF2vx4sV2lgcAAAAAgGMcHcW9c+fO6ty5swYMGKD169frgw8+UHp6ukzTZAAvAAAAAICnOBLQ9+3bpw0bNgR6zvfv3y+p8l7xiIiIwH3pAAAAAAB4hS0Bvb5AXjWyu9UDxQEAAAAA4Ga2BPSrr746cMm6YRjq1atXYCA4AjkAAAAAADZf4h4bG6sxY8bopJNOUmpqqnw+n53NAwAAAADgWrYE9EGDBmnLli0qLCzUG2+8oTfeeEPR0dHq27dvoCe9V69eBHYAAAAAgGfZEtDvuusuVVRUaPv27dq4caM2bNigzZs3a82aNVqzZo0Mw1BMTIz69OlDYAcAAAAAeJJtl7hXDQbXq1cvTZw4UaZpavv27YHB46oC+9q1ayVVXg4/f/58u8oDAAAAAMBRjs2DbhiGevbsqZ49e+qss87St99+q6VLl2rbtm2SpKKiIqdKAwAAAADAdo4E9IMHDwYudd+4caN+/vnnGut07NjRgcoAAAAAAHCGLQG9rkBummZgnSOPPFJpaWmBe9DbtWtnR2kAAAAAALiCLQF9+vTpkqoH8k6dOgUCeVpaGoEcAAAAAOBptgR00zTVqVMn9e/fPxDI27Zta0fTAAAAAACEBVsC+osvvqjk5GQ7mgIAAAAAICzZMtE44RwAAAAAgPo5Mop7YWGhtm/froMHD0qSkpKS1KNHD8XFxTlRDgAAAAAAjrM1oP/www+aO3eu1qxZU+vyQYMG6ZJLLlGPHj3sLAsAAAAAAMfZFtA/+eQTPfHEE/L7/YHR3CMjIyVJZWVlkqTVq1dr3bp1uvHGG3XmmWfaVRoAAAAAAI6zJaDv3r1bs2fPlt/vV7du3XTBBRdowIABSkxMlCTl5uZq3bp1euONN/Tjjz/qb3/7m3r06KEuXbrYUR4AAAAAAI6zZZC4RYsWye/3a+DAgXr00Ud1xhlnBMK5JCUmJurMM8/Uo48+quOPP15+v1+LFy+2ozQAAAAAAFzBloC+fv16GYaha665JnBZe20iIyN19dVXS5LWrVtnR2kAAAAAALiCLQE9OztbcXFx6tixY4PrdurUSfHx8YER3gEAAAAA8AJbAnpUVJRKSkrk9/sbXLe8vFwlJSWKioqyoTIAAAAAANzBloB+1FFHye/369NPP21w3c8++0zl5eU66qijbKgMAAAAAAB3sCWgn3nmmTJNU//4xz/05Zdf1rnel19+qWeeeUaGYTDNGgAAAADAU2yZZu2cc87RRx99pO+//14PPvigunbtquOOO07t2rWTJO3fv1/r16/Xrl27ZJqmevfurXPOOceO0gAAAAAAcAVbAnpERIT+8pe/6G9/+5tWrVqln376Sbt27aq2jmmakqSTTz5ZN954oyIiIuwoDQAAAAAAV7AloEtSQkKC7rjjDm3dulUrVqxQenq6cnNzJVXOg56amqrTTz9dxx57rF0lAQAAAADgGrYF9CrHHnssIRwAAAAAgMPYMkhcZmam9u/f3+j19+/fr8zMTAsrAgAAAADAXWzpQb/yyiuVnJysF198sVHr33rrrcrKytLixYstrQsAAAAAALewpQcdAAAAAADUz5UBvaSkRD6fK0sDAAAAAMASrkvBe/bsUV5entq0aeN0KQAAAAAA2MaSe9C//PJLffXVV9WeKygo0OzZs+vdrqCgQJs3b5Yk9e3b14rSAAAAAABwJUsC+o4dO/Thhx/KMAyZpilJKi0t1Ycfftio7Vu3bq3JkydbURoAAAAAAK5kSUDv3r27hg8fHvjzhx9+qKioKA0ZMqTObQzDUFxcnI466iideuqpat26tRWlAQAAAADgSpYE9FNOOUWnnHJK4M8ffvih4uPjdeONN1rRnObMmaN58+bVuXzSpEmaNm2aJW03iel0AQAAAEDtkpOTnS4B8Dxb5kG/77771KqVdU0VFBQoIyOjzuWFhYWKiIiwrP3G8pdXOF0CAAAAUCs3fF4GvM6WgJ6Wlmbp/uPj49WhQ4c6l8fFxcnv91taQ+MYThcAAAAA1Modn5f5ogDeZktAt9rUqVM1derUOpdnZWUpOzvbxopql5zU1ukSAAAAgFq54fOyJKWkpDhdAuAY2wK63+/XsmXL9Pnnn+vHH39Ufn6+Kirqv+R78eLF9hQHAAAAAIDDbAnoxcXFuuuuu/T9998Hpl1riGFwOTgAAAAAwDtsCeivvvqqvvvuOxmGoZNOOkmDBw9Wu3btFBUVZUfzAAAAAAC4ni0BfeXKlTIMQ5deeqnOP/98O5oEAAAAACCs+OxoJCsrS4ZhaOzYsXY0BwAAAABA2LGlB71169YqLS1VdHS0Hc0BAAAAABB2bOlB79+/vwoLC5WZmWlHcwAAAAAAhB1bAvqFF16oqKgovfTSS3Y0BwAAAABA2LEloHft2lW333671q5dq5kzZ2rDhg0qLi62o2kAAAAAAMKCLfegT5w4MfDzunXrtG7dukZtt3jxYkvqAQAAAADAbWwJ6KZpNnkbwzAsqAQAAAAAAHeyJaDfd999djQDAAAAAEDYsiWgp6Wl2dEMAAAAAABhy5ZB4gAAAAAAQP1sCejvvfeefv75ZzuaAgAAAAAgLNlyifvf//53GYahpKQkpaWlBR5dunSxo3kAAAAAAFzPloCempqq7du3Kzs7W5999plWrFghSUpKSlK/fv2Ulpam/v37E9gBAAAAAJ5lS0D/61//quLiYm3evFkbN27Uxo0blZ6eruzsbK1YsUKff/65JKlNmzbVAnvXrl3tKA8AAAAAAMfZEtAlKSYmRieccIJOOOEESVJJSYk2b96sDRs2BAL7wYMHtXLlSq1cuVKStHjxYrvKAwAAAADAUbYF9MNFR0dr4MCBGjhwoEpLS7V27Vq9/vrrSk9Pl2maMgzDqdIAAAAAALCdIwG9tLRUW7Zs0caNG7Vhwwalp6ervLxcpmlKUmAwOQAAAAAAvMKWgN7YQM5gcQAAAAAAr7IloE+ZMkXl5eWSJNM01aZNm2qBnMHgAAAAAABeZ0tALysrk2EYio2N1bhx43TuuecqOTnZjqYBAAAAAAgLtgT0rl27avfu3SosLNRrr72m1157TZ07dw70oqelpRHYAQAAAACeZktAf/LJJ5WbmxuYA33Dhg3atWuXdu/erffff1+SAoG9f//+SktLU1JSkh2lAQAAAADgCraN4p6YmKjTTjtNp512miTVGth//vnnaoH9qaeesqs8AAAAAAAc5dg86IcGdr/fr7Vr12rBggXatm2bJOnnn392qjQAAAAAAGznSECvqKhQenq6NmzYoI0bN2rLli0qLi6utk50dLQTpQEAAAAA4AhbAnp9gbxqLvTo6Ggde+yxgUHjjjnmGDtKAwAAAADAFWybB/3wQB4TE1MjkEdERNhRDgAAAAAArmNLQC8qKgoE8qpR2lNTUwnkAAAAAAD8ly0B/eGHH1avXr0I5AAAAAAA1MGWgN67d287mgEAAAAAIGw5Ns1aRkaGcnJyJElt2rRRhw4dnCoFAAAAAADH2RrQ9+/fr9dff10rVqxQfn5+tWUJCQk644wzNGnSJLVr187OsgAAAAAAcJzProbWr1+v66+/Xu+9957y8vJkmma1R15ent59911df/312rBhg11lAQAAAADgCrb0oO/fv1/333+/ioqKlJycrHHjxmnAgAGBnvL9+/dr3bp1euutt5Sdna377rtPTz31FD3pAAAAAADPsCWgL1y4UEVFRerVq5fuvvtuJSQkVFuenJysXr166ZxzztFf/vIXbd++XYsWLdKVV15pR3kAAAAAADjOlkvc16xZI8Mw9Pvf/75GOD9U69at9bvf/U6maeqbb76xozQAAAAAAFzBlh70zMxMxcbGqnv37g2u27NnT8XGxiozMzNk7RuGIZ/PttvtAQAAgLATERHhdAmA59kS0Fu1aqWysjKZpinDMOpd1zRNlZeXq1Wr0JUWGxuruLi4kO0PAAA36927ve3bjh/fN+g2AQBAJVsCeqdOnbR9+3atXr1aJ510Ur3rrl69WmVlZTrqqKNC1n5RUZFKSkpCtr9QS0xMVEREhPx+v3Jzc50ux1UiIiKUmJio3Nxc+f1+p8txHc6dunHu1I3zpm6cN3XjvKkb503dOG/qxnlTt+TkZKdLABxjS0A/9dRT9cMPP+ipp57SnXfeqZ49e9a6Xnp6up588kkZhqHTTjstZO2bphk2v/jCpU67+f1+XpsG8PrUjnOnfrw2teO8qR+vTe04b+rHa1M7zhsAh7IloI8fP17Lly/X3r179cc//lGD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evzxxzVz5kydeeaZgctDIyIilJaWprvvvltt2rRReXm53nzzzWrbct5424gRIzRhwgSlpqZW6yFPSkrSBRdcoEmTJkmSPv7442r/FnHe4FAvvviiDhw4oKlTpyopKanO9ThvAKBxCOgO+PjjjyVJZ555ptq3b19j+fnnny/DMHTgwAFt2LDB5urgpIiIiKC2W79+vbKzs2UYhn7961/XWN6hQwedeeaZkv53/qFliI+PV48ePepcnpycrEGDBkmSfvjhh2rLOG9Qn9TUVElSaWmp8vLyAs9z3qDK5s2b9cEHHyg1NTXQuVAXzhsAaBwCus2Kioq0bds2SZWXpNamffv26tKliyTp22+/ta02hK/169dLkrp27Vrrlz6SNHDgQEnSd999V+0eU7R8Vb3qfr+/2vOcN6jP1q1bJVXem35ozyjnDaTKHvEnn3xShmHouuuuq3cwQYnzBgAai4Bus927dwcGc+rWrVud61Ut27Vrly11IbxVnSeNOadM06z3HkG0PBs3bpRU8/zgvMHhSkpKtHv3br3yyitatGiRJGnMmDEyDCOwDucNJOn111/X7t27NWbMGPXs2bPB9TlvAKBxGCTOZgcOHAj83LZt2zrXq1qWnZ1teU0If1XnVWPOKYnzyku+/PJLpaenS6q85/hQnDeQKqd3nDJlSo3nW7VqpbFjx2rq1KnVnue8wa5du/TGG2+obdu2uuSSSxq1DecNADQOAd1mh16yVTU4Sm2qllVNPQLUp+q8asw5JUmFhYWW1wTnZWZm6qmnnpIkDR48OHAvehXOG0iVU11VXcJeWFio0tJSGYahsWPH6rzzzqsxNgbnjbeZpqmnnnpK5eXluvLKK2udgq82nDcA0DgEdABogfLz83XvvfcqJydHHTt21A033OB0SXCpuLg4vfzyy5Iqw1dGRoaWLl2qpUuXavny5br99tvVt29fh6uEW7z//vvavHmzBg0apCFDhjhdDgC0ONyDbrOYmJjAzyUlJXWuV7UsNjbW8poQ/qrOq8acU5Ia3eOB8FRUVKS7775bO3fuVNu2bXXPPfeodevWNdbjvMHhDMPQEUccoSuvvFKXXXaZ8vLy9Mgjj1Q7DzhvvOvAgQN66aWXFBUVpauvvrpJ23LeAEDjENBtduj9VYfej364qmXJycmW14TwV3VeNeackjivWrKSkhLdc889+u6779SmTRvde++96tixY63rct6gPqNGjVJkZKT279+vb775JvA85413vfzyyyooKNCECRPUpk0bFRUVVXtUVFRIqpwx4vDnOG8AoHG4xN1mXbp0kWEYMk1TP/30U2A6tcP99NNPkiqnIwEa0rVrV61evTpw3tSmaplhGHWedwhvJSUluvfee7Vp0yYlJCTonnvuqfd3COcN6hMVFaXWrVvrwIED2rt3b+B5zhvvysjIkFQ5gvvrr79e53qffPKJPvnkE0nS3/72N/Xo0YPzBgAaiR50m8XGxio1NVWStGbNmlrXycrKCkxHMmDAANtqQ/g67rjjJFV+uMnKyqp1nbVr10qSevfuXe1WC7QMZWVluv/++7V+/XrFxcVp5syZ6t69e73bcN6gPkVFRcrNzZVU/XYrzhsEg/MGABqHgO6As846S5L06aefKjMzs8byhQsXyjRNtW3bVv3797e5OoSj4447TsnJyTJNMzB38aEyMzP16aefSvrf+YeWo7y8XA8++KDWrl2rmJgY3XXXXTrmmGMa3I7zxrv8fr9M06x3nTfffFPl5eWSpH79+gWe57zxrvvvv19Lliyp85GWliZJGj58eOC5Hj16SOK8AYDGIqA74JxzzlHHjh1VXFyse++9Vzt27JBUeXnqG2+8obfffluSNHXqVLVqxV0IXpObmxt45OfnB54vKCiotqzqg7MkRUZGBuYxfuutt/TGG28EBtvZsWOH7r33XhUXF+vII4/Ur371K3sPCJby+/3661//qlWrVikqKkp33HFHo0fc5rzxrqysLN1000364IMPqn1RbJqmdu3apWeeeUbz58+XJJ166qnq1q1bYB3OGwSD8wYAGscwG/oKHZb46aefdPvttysnJ0dS5WilxcXFgcFUxo4dq6uuusrJEuGQ8ePHN2q9++67r8YVFs8884zeeecdSVJERISio6MDc8kmJSXpvvvuY1yDFmbjxo267bbbJFV+AI6Pj693/arptA7FeeM9v/zyi377298G/hwVFaWYmBgVFxertLQ08PxJJ52kP/3pT7Vebsx5g8Pddttt2rhxo4YPH64ZM2bUug7nDQDUj+5Zhxx11FH6v//7P/373//W119/raysLMXHx6tHj//f3r1H1ZT//wN/ngrdhMSkQ7mMhGhyjaSMJs2EcQkxJBrzZcZl8GFmMC5hxofB+LjMx7XIID6uC41qFLlk5LiXIVMjMiVJKV3t3x+t9u/UuVYnNdPzsdZZa3f2e7/f7/Pe+5zVa+/3fu228PLygpOTU013kf6Gpk6dCgcHB5w+fRp//PGHeDWiV69e8Pb2RqNGjWq6i6Rj8udYCwsLkZmZWeE6eNzUPebm5pg/fz5u3bqF+/fv48WLF8jKykK9evUglUpha2sLV1dXdOvWTWUdPG6oMnjcEBGpxyvoRERERERERLUA70EnIiIiIiIiqgUYoBMRERERERHVAgzQiYiIiIiIiGoBBuhEREREREREtQADdCIiIiIiIqJagAE6ERERERERUS3AAJ2IiIiIiIioFmCATkRERERERFQLMEAnIiIiIiIiqgUYoBMRERERERHVAgzQiYiIiIiIiGoBBuhEREREREREtQADdCIiIiIiIqJagAE6ERERERERUS3AAJ2oEqKioiCRSCCRSLB06dKa7k6FJCUliX338/Or6e7QP1xQUJB4vAUFBVW6nr/zd662a926NSQSCVq3bl3TXSEiIqrzGKATEVVBVFQUli5diqVLlyIpKammu0P0j/Xy5UsEBgbC19cX9vb2sLS0RP369dGwYUO0atUK77//PubOnYvw8HAUFRWprWvp0qXiCZ/yLwMDAzRt2hTdu3fHF198gStXrpTZVv5kUVVf8iebBEFATEwMVqxYAS8vL7Ru3RpGRkYwNDSElZUVPD09sWHDBmRmZupkPAMCAsR+uLu7QxAEjdvk5+ejS5cu4naBgYEKZUpP+EgkEv4mEhFVgkFNd4CI6O8sKioKy5YtAwC4ubnxKiSRjuXl5WHFihXYtGkTXr58qbC+sLAQr169wuPHjxEZGYl169ahWbNmmD17NmbMmAFTU9MKtVdcXIyMjAxkZGRAJpNhy5YtGDduHHbs2AEjIyNdfawy7t+/j4EDB+Lx48dK1z99+hRPnz7FmTNnsHz5cmzduhUjR46sUpsLFizA8ePHIZPJ8Ouvv+Knn37C559/rnabb7/9Fnfu3AEADB48GJMmTapSH4iISBEDdKJKcHNz0+pqAxFRbVebr3I+evQII0aMwLVr18T3OnbsiIEDB6Jjx45o2rQpCgsL8ezZM9y+fRuRkZFISkrCs2fPsGDBAjRs2BDTp09X28aYMWPg4+Mj/l1UVIQnT57g1KlTCA8PBwDs27cPOTk5OHbsGOzt7XH06FGV9Z09exYbN24EAAwYMAAzZ85UWdbOzg4AkJGRIQbnDRo0wIABA+Ds7Axra2s0aNAACQkJ+PnnnxEfH4/nz59j9OjR2L9/P0aPHq1hBFUzMDDAnj170L17d+Tn52P+/Pnw9PRE27ZtlZa/dOkS1q5dCwAwNzfH9u3bK902ERGpxgCdiIiIap3MzEy4u7vjwYMHAABbW1ts3LgRHh4earc7f/481q1bh+PHj2vVjp2dHYYNG6bw/qxZsxAUFITJkydDEAQcP34cZ86cwaBBg5SWl+93KWtra7Vl5bVq1Qrz5s3D+PHj0aRJE4X1X331Fb788kts3rwZb968wbRp0+Dh4YHGjRtrVb8ynTt3xrJly/D1118jJycHfn5+iIqKgp5e2Tsgc3NzMXHiRLx58wYAsHnzZlhaWla6XSIiUo33oBMREVGtM3nyZDE479mzJ65cuaIxOAeA/v3749ixYwgNDUWrVq2q1Ac/Pz+MGjVK/PvgwYNVqk+VLl26ICEhATNmzFAanAMlV7w3btyIbt26ASi56n7s2LEqt/2vf/0LTk5OAIDo6Ghs2LBBocy8efOQkJAAAPD29i4z44CIiHSLATrVWW/evMG+ffswbNgw2NjYiMl4pFIpHBwcMGrUKGzZsgXPnz9X2FabjNLlMyO/efMGQUFBGDBgAN555x0YGhrC2toaEyZMwK1bt7Tqc2FhITZt2gRnZ2eYm5vD2NgYtra2mD59On7//XcAZZMfRUVFVWZoyrhx4wZmzZoFBwcHmJubo0GDBrCysoKXlxd27dqlMRmTNpSN54MHDzB37lx07twZjRs3VjnWeXl52Lp1KwYPHoxWrVrB0NAQjRo1gr29PWbOnIn79+9rbD8rKwtr164V901p4qnWrVujZ8+e8Pf3x6FDh1BQUCBuUzrOpfefAyXTWcsngVJ3T/rRo0cxZswYtG7dGsbGxjAzM0PHjh0xderUMlN6lVGWjT8lJQWLFy+Go6MjmjZtqjJTf3FxMX7++WeMGjUKrVu3homJCUxNTdGhQwdMmTIFsbGxGses1IEDBzBo0CA0b94choaGaNOmDXx9fRUSa70t169fx3fffQcvLy+0adMGxsbGaNCgAVq0aAEPDw9s2LABr169Url9z549IZFIoK+vj+TkZI3tCYKAdu3aQSKRwMjICC9evFBarqpjriwbvkwmw9SpU2Fra4uGDRtWOlO+pizuyn5Trl27hkmTJqFt27YwNDRE06ZNMWDAAAQFBYlXWavit99+E6eRm5qa4uDBgxW+Uuzp6YmPP/64yn0ZOnSouKztb3VFmZiYoH79+hrLSSSSMicMdNEffX197N69W7y/fuHChWV+N0vvTweA5s2bi8tERFRNBKI6KD09XXBychIAaHytWbNGYfvIyEhx/ZIlS5S2YWNjIwAQbGxshPT0dMHV1VVlGwYGBsK+ffvU9vnp06eCg4ODyjqMjY2FkJAQYcmSJeJ7kZGRCvUkJiaK6ydOnKiyvby8PGHy5MmCRCJROz6dO3cWHj58qLbvmpQfz+DgYMHIyEihrfJjHRUVJUilUrX909fXF7777juVbcfGxgqWlpZaHQtXr14Vt5MfZ3UvGxsbhTbT0tIEFxcXtdtJJBLh888/F4qKipT2u/x+DAsLE8zNzRXqKb+Pb9++LdjZ2Wns9/Tp01W2LQiCkJubK3h5eakd9zVr1giBgYHie4GBgSrr00Sb79yyZcu02idWVlbClStXlNaxc+dOsdzixYs19uvMmTNieV9fX6VldDHm5cfx3//+t6Cvr69QR2XGWP63SpnyvymrVq1S2nbpa9iwYUJhYWGF+yHPx8dHrG/mzJlVqksZ+c+k6ngqFRYWJpZt3769xrrl95W639jK2rx5s1j/1KlTdVbv+vXrxXqdnJyEoqIi4eXLl4K1tbX4/tGjRzXWU3o8ARASExN11j8iorqC96BTnTRlyhTExMQAKLnvz8fHB+3bt0eTJk2Qk5ODBw8e4PLly4iOjq5yW0VFRRg5ciTOnTuHPn36YOTIkWjVqhUyMjIQEhKCqKgoFBUVwd/fH7169UK7du0U6sjLy8MHH3wgZs+1sLCAv78/unbtioKCAkRHRyM4OBi+vr7w9PTUSZ89PT3Fq2VWVlbw8fFB165dYWxsjMePH+PIkSO4cOEC7t69i/79++P69eto1qxZldu+dOkSVq5cCYlEgokTJ8LFxQUmJiZISEiAtbW1WC40NBQff/wxCgsLoaenB09PT7i7u0MqlSIvLw+xsbHYs2cPXr58iQULFgAAvvnmmzJt5ebmYtiwYfjrr78AAN27d8fw4cMhlUphYmKCFy9eID4+HpGRkbh582aZbX18fPDee+/hwIEDCAkJAQAsX74c9vb2ZcoZGxuX+fvVq1fo378/7t27BwBo1qwZJk2aBAcHBxQUFOD8+fPYu3cvCgsLsWXLFmRlZSE4OFjtmCUkJMDb2xvZ2dkYOXIk3N3d0aRJEzx69AgGBv//Z/769etwdXVFdnY2AMDFxQVeXl6wsbHBmzdvcOvWLQQFBSE1NRWbNm1CQUEBtm7dqrTNsWPH4tSpUwAAIyMjTJ48Gb179wYAxMTEIDAwEPPmzcPw4cPV9l2XcnNzoa+vj169esHZ2Rm2trZo3LgxiouLkZSUhJMnT+LixYtISUnBhx9+iBs3bihMgfbx8cHcuXORmZmJXbt2YfHixdDX11fZpvz4/N///Z/Cel2OeamDBw8iNDQUpqam8PX1Ra9evVCvXj3ExcVV+33B27dvx759+9CsWTP4+fmha9eu0NPTw6VLl7Bjxw7k5+fj2LFjWL16tfi9qyhBEBARESH+PWHCBF11v1LS0tLE5UaNGtVgT0rcvn1bXLaxsdFZvbNmzcLRo0dx/vx5xMTE4IcffsC9e/fw6NEjACX7Qdv76YmIqApq+gwB0duWmpoq6OnpCQCEvn37Cq9fv1ZZNi0tTYiLi1N4vyJX0Etf69evV1ru008/FcvMmDFDaZnFixeLZezt7YXU1FSFMlevXhUaNWpUps3KXkH/+uuvxTJTpkxROUYbNmwQy33yySdKy2hDfjwBCM2bNxdu3rypsnxKSop4tbh58+bC5cuXlZZ7/PixYG9vL17RjY+PL7P+0KFDYptz5sxR28e7d+8KaWlpCu9rmrFQ3ueffy6W7969u/Ds2TOFMrGxsUKTJk3EciEhIQpl5PcjAMHExESIiIhQ2W5OTo7Qtm1bASiZbXHixAml5TIzM4UBAwaI9YaHhyuU2bdvn7je0tJSYVwFQRDi4uKEd955p8pXd0tp85377bffhCdPnqitJzg4WPz++/v7Ky0za9YssS1V4yQIJbNaDAwMxO9lebocc/mrsgAEW1tb4c8//1T7WbVVkSvoAARXV1chMzNToVxUVJR4Zd3CwkLIz8+vVH/i4uLEtoyMjKp8NV6ZilxBHzNmjFh20qRJGuuuzivoGRkZZX4bbt26pdP6Hz58KJiYmAgAxGMbgCCVSoUXL15oVQevoBMRVQ0DdKpzLl++LP7zsHnz5krVUdEAXdXUV0EQhBcvXgiGhoYCAOHdd99VWJ+fny9YWFiI/zDdvXtXZV07duyocoCempoq9sfd3V1lW6XGjRsnBsCPHz/WWF6Z8gG6pmmUs2fPFsueP39ebdn4+HgxaCg/HfT7778X61E3rupUJEBPS0sTx9bY2FhISkpSWfbAgQNivY6Ojgrrywfoqk4AlZI/mRIcHKy2bHp6umBmZiYAEDw9PRXWOzo6inWdPHlSZT0nT558qwG6tsaPHy/ug4KCAoX19+7dE9saPHiwynpWrlwpltu4caPCel2OuXzQJ5FIBJlMpsUn1U5FAnRzc3MhPT1dZV3yweyFCxcq1Z+IiAixDjs7u0rVoYm2AXpwcHCZ23xCQ0M11l2dAfqkSZPEuocOHarTukvJT6GvyOcuxQCdiKhqmCSO6hwTExNxWVMiLl2ZM2eOynWNGzdGjx49AAAPHz5EXl5emfUXLlxAeno6AMDDwwOdOnVSWZevry+aNm1apb6GhISIfZg3b57G8hMnTgRQkgTr119/rVLbQMmUTXWJnQRBwJ49ewAAffr0gYuLi9r67Ozs0KtXLwDAmTNnyqx728fC6dOnxbEdM2aM2umpo0ePFm93uH79OhITE1WWNTIywqeffqq27d27dwMApFIpxo0bp7Zs06ZN4eXlBaAkgV9+fr64LikpCdevXwcAdOjQQSynjJeXFzp27Ki2rZrQr18/ACVT4pUl2erQoQPef/99ACW3UihLFicIAnbs2AGg5DYGZdOwdTXmyvrv6Oiotr7qouk35oMPPhCXS2/JqSj5xJzaJIaztLRUSM4o/9Lk3r17OHbsmPg6fPgwNm7cCE9PT0yYMAGCIAAAhgwZopNbiCrrv//9LwIDAwGUjIuybOu68OGHH5a5rcPd3b1GPzcRUV3De9CpzunUqROkUimePHmCXbt2obi4GFOmTIGTk5Pae00ry8TEBF27dlVbpmXLlgBK/unPzMwscx/p1atXxeUBAwaoradevXpwdnbGiRMnKt3f8+fPi8upqakaH+Pz5MkTcTkuLq7S7ZZydnZW+091XFyc+A98kyZNtHrMUOl+TUxMRF5eHgwNDQGU/OMpkUggCAKmTZuGhIQEjB07FnZ2dlX+HMrIZzbX9LgoiUQCDw8PMWNyTEwM2rRpo7Sso6MjTE1NVdaVlZWFGzduAABatGih1fFRGiDm5eUhMTFRHJPffvtNLDNw4ECN9QwcOBDx8fEay+mKIAgIDQ3F//73P1y7dg3JycnIzs5W+bSBx48fo3v37grvT5s2DWfPnkVxcTF27typ8ASBsLAw8aTJmDFjFO5N1uWYl6fppFR16tOnj9r1pb9lAFRmtK9tQkJCxDwSqowePVoMjmvCqVOnMGPGDACAnp4eAgMD1T4horIEQYC/vz+Ki4vF96KionDt2jWl3xMiItI9BuhU5+jr62Pbtm0YMWIE8vPzsXv3buzevRtmZmbo3bs3nJ2d4e7ujr59+2p19UUTc3NzjfU0aNBAXC5/BT0lJUVcVpZArry2bdtWsIdlJSUlicu+vr4V2jYjI6NKbQNl/8FXRr5/p0+fxunTpytUf0ZGBqysrAAAHTt2xKJFi7B8+XLk5OQgICAAAQEBaNGiBfr27QsXFxd4enqiQ4cOFf4cyjx9+lRctrW11Vhevoz8tuVpGrPk5GTx0VexsbEVTtwmv1/lj8d3331X47balNGVv/76C97e3rh48aLW22RlZSl9f9iwYbCyskJKSgp27dqFb7/9tswJvG3btonLypLD6XLMy9O0v6uThYWF2vXqfsu0JX+FPjMzU2P5oKAghbaqkpxQX18fZmZmsLGxgZOTEyZMmIC+fftWur6qioiIgLe3N4qKiiCRSLBt2za1ydrkZ10p069fP5X7cdOmTYiMjARQ8ki1tLQ0FBUVwc/PD9euXdPqUXBERFQ1DNCpTvroo48QGxuLZcuW4cSJEygoKEBWVhbCw8MRHh6OpUuXok2bNggICMD48eOr1JaeXtXuJMnJyRGXy2cEV0Z+2nZlaPMPsSryzwmvrNJn8apSlf4Bin0MCAhAz549sWrVKly6dAlASTB8+PBhHD58GEDJVf21a9eKWcorqzSTN6DdfpK/Ki6/bXlvc8zknyH+No5HbZU+eaA0236TJk0wZMgQdOnSBZaWljAyMhID7LNnz2Ljxo0AUOZKoTwDAwN8+umnCAgIQHJyMkJDQzF48GAAJScCSq+IOzg4KD0udH2cytO0v6tTVX/PtFF6Ag0AHj16hKKiojJPIyivqtOvlyxZojBDorY4e/Yshg4diry8PEgkEvz000/w9/dXu82iRYtw7tw5lesjIyPh5uam8H5CQgK+/vprAIChoSGioqLw5ZdfIiwsDHfu3MGyZcuwcuXKKn0eIiLSjAE61Vn29vY4dOgQcnJycPHiRcTExCA6OhrR0dHIz89HYmIiJkyYgIcPH2LJkiU11k/5ACc3N1djefmAvjLkg8KsrCw0bNiwSvXpmnz/5syZg7Vr11a5ziFDhmDIkCFITU1FdHQ0Ll++jHPnzkEmk0EQBFy8eBEuLi44ffo03N3dK92O/Fhqs5/kg+Gq7Af5MRsxYoR44qGqdb2N41FbISEhYnA+cOBAHD16VOWYyd+Woc5nn32GlStXori4GNu2bRMD9F27dolT5pVdPQd0O+Z1jZ2dHSwsLJCeno7c3FzcvHmzTk6vPnv2LIYMGYLXr18DADZv3qzyeKuqN2/ewM/PT/xOr1ixAh07dsSOHTtgb2+PrKwsrF69GiNGjKiT+4KI6G1ikjiq80xMTODh4YHFixcjPDwcz549w/Lly8X1K1euFJ+TXRPkryY9fPhQY/k//vijSu3JT59VlhyrplVn/9555x14e3tj7dq1iI2NRVJSEkaNGgUAKCwsxOzZs6tUf4sWLcTlBw8eaCx///59cVn+OKgoqVQqLld1zOTrSkhI0FhemzK6EBYWJi7/+OOPak9oqEu4J08qlWLo0KEASm6nePz4MQRBwPbt2wGU/HZ88sknKrctVRu/R7WZRCIpk2xu7969NdibmlEanJcGzBs3bsS0adO02jYqKgpCyVN6lL6UXT1ft26deGuIs7Oz+FvXqlUrrFu3DgDEqe66mClFRESqMUAnKqdhw4ZYtGiRmEm8sLAQMTExNdafnj17isul9waqUlhYWKH7b5VxdXUVl0NDQ6tUV3V47733xIRckZGRarNdV5W1tTV+/vlnNGvWDEBJVuryU5flp/yWZntWRX4qtHxAqUp4eLjSbSvKwsICnTt3BgDIZDKkpqZWuq7SjPhASRChiS4y+2tD/iSapvvef/nlF63rLQ2KSpPFhYWFiXkQxo4dCzMzM6Xb6XLM6yL5k2E7d+7Eo0eParA3b1f54HzDhg2YPn16tbUXHx+Pb7/9FkDJbSuBgYFlftf8/f3F2whKp7oTEVH1YYBOpIJ8xmxVGaDfBmdnZzFpUlhYmNpM6Xv27CnziKLK8PHxERM9rVu3Tm2yoZqgr68vXrVMT08Xr+5Ul3r16pW5Glr+WJCfyqxpOreXl5eYQf7AgQP4888/VZY9dOiQePXZ0dFRZQZ3bck/Dm/x4sWVrsfGxgbdunUDUPJ4KnUncUJDQ99aBnf5W0HUXbUPCQnB3bt3ta7X3d0d7du3B1ASKJZm1QdUT28vpasxr4t69uyJESNGACjJvzBmzBi8fPmyhntV/aKiosoE5z/++CNmzpxZbe0VFxdj4sSJYpK977//Xjze5W3fvl08Mbp69eq39ohSIqK6iAE61TlnzpzB+vXr1T4CKC0trcw9ow4ODm+ja0o1aNAAX3zxBYCS4HDMmDFIS0tTKBcbG4u5c+dWub2WLVuK/xCmpKRg0KBBGqfN37x5s9rujVRmwYIF4vORFy1ahB9//FHMmK1MTk4OduzYgf3795d5/z//+Q8OHTqkdsrmxYsXxWdlt2zZUiH7sXzgLJPJ1PbbwsJCTPCUm5sLb29vpSdUrl+/jqlTp4p/f/PNN2rr1cYXX3whPpZp27Zt+Oqrr1BYWKiyfEFBAQ4ePIjNmzcrrPvXv/4lLvv7+5eZil/q/v37GpNZ6ZL8TJOFCxcqTf4WGRmJzz77rEL1SiQScV8kJyfj+PHjAIBu3bqhR48earfV5ZjXRTt37hSDxZiYGDg5OWk1I+PChQvV3bVqce7cOXh5eZUJzmfNmlWtba5atUp8lKerq6v4KLfyWrZsyanuRERvCZPEUZ3z9OlTzJkzB1999RXc3Nzg5OSEtm3bwtTUFM+fP8etW7ewf/9+MYAfPXq00isKb9M333yDI0eO4M6dO7hz5w46d+4Mf39/ODg4oKCgAOfPn0dwcDD09PQwdOhQMcN0ZTMuf/fdd7h58ybCwsIgk8lgZ2eHoUOHwsXFBS1atMCbN2+Qnp6OO3fuIDIyEvfv34e+vj62bt2qy4+tklQqxcGDBzFkyBDk5+dj9uzZ2LJlC4YPH45OnTrB1NQU2dnZSExMRGxsLM6ePYu8vLwyuQWAkoB69+7daNSoEQYNGoRu3bpBKpWifv36SE1Nxblz53DixAkx+F+wYIFCX/r374/69eujoKAAa9asAVByQqd0FoKRkVGZ2wZWrVqFX3/9Fffu3UNsbCw6duwIf39/dO3aFQUFBYiOjkZwcLD4z+/48ePF++CrwtjYGCdOnED//v2RmZmJ1atXY+/evfD29oaDgwPMzMyQm5uL5ORkyGQyREREICsrS2mQPXbsWBw4cAAnTpzA06dP4ejoiMmTJ4vT8GNiYhAYGIjc3FwMHz4cR48erXL/NfH398f333+P7OxsnDhxAg4ODvD19YWNjQ1evHiBM2fO4Pjx49DT08P48eMrdF+zn58fFi5cWOZRXtqckNLlmNdFjRs3RkREBIYPHw6ZTIZ79+7B3d0dnTt3xsCBA2FnZyc+xvLFixf4/fffERERgdu3b4t1yM9+qc1u3LhRJjgfNGgQbGxscOzYMbXbWVhYoF+/fpVq89atWwgICABQMgMlMDBQ7SNBJ0+ejEOHDuGXX37ROqv72rVrxSvv6hgZGWHhwoUV+wBERP9UAlEdExQUJADQ6uXt7S3k5OQo1BEZGSmWWbJkidJ2bGxsBACCjY2Nxj5NnDhRrC8xMVFpmZSUFKFr164q+2psbCyEhIQICxcuFN+TyWQK9SQmJorrJ06cqLJPBQUFwty5cwUDAwOtxkqbz6mKNuOpzNWrV4UOHTpo1T99fX1h+/btZbb38/PTatt69eoJK1asUNmPRYsWVWhc0tLShH79+qltUyKRCNOmTROKioqUtqntfiwvISFB6N27t1afWyKRCIsXL1ZaT25urvDRRx+pHe8ffvhBCAwMFN8LDAzUup/laXOMnD59WjA2Nlb7HdmzZ0+l+iT/HW3YsKGQnZ2tdd91Mea6GkdlNP1WLVmyRGw7MjJSbV2V/S6r8/r1a2HBggWCmZmZ1r/dlpaWQkBAgNLf7/KfSVf9LCW/r7T9bspvU5GXq6trpfpYUFAgvPfee2I9mzdv1mq75ORkoVGjRgIAwcDAQIiNjVUoU3o8VeTVqFGjSn0OIqJ/Il5BpzrH19cXnTp1QkREBK5cuYL4+HikpKTg9evXMDY2hrW1NZycnDBhwoQyVz5rWosWLRAbG4utW7di3759iI+PR35+PqRSKTw8PDBz5kx06NChTCI5c3PzSrdXr149/PDDD5gxYwZ27dqFyMhIPHjwABkZGdDT00PTpk1ha2uL3r17Y9CgQejfv78uPmaF9OjRA3FxcThy5AiOHz+OK1euIDU1FTk5OTA1NUWrVq3QpUsXuLm5YejQobC0tCyz/U8//QQfHx9ERkYiNjYW9+/fx7Nnz1BUVAQzMzO0b98ebm5u8Pf3VzuLYvny5XBwcEBgYCBu3LiB9PR0tdM/mzVrhujoaBw5cgQHDhxATEwMnj17BgMDA1hZWcHNzQ1TpkzROIW6Mtq1a4eYmBiEhYXh0KFDuHTpElJSUpCdnQ1jY2NIpVJ06tQJrq6uGDJkiMp7342MjHDq1Cns378fu3btwvXr1/Hq1StYWlrCxcUF06dPR+/evREUFKTzz6DKhx9+iJs3b2LNmjUIDw/HkydPYGRkBKlUCk9PT0ydOhXt27evVJ88PDywe/duAMC4cePK5B7QRFdjXlcZGhpi5cqVmD9/Pg4fPozIyEjIZDI8e/YMmZmZaNCgARo3box27dqhR48ecHd3xwcffCA+954ULV++HDdu3ABQ8lhCbTPEt2zZEuvXr8fkyZPFqe7Xrl1D/fr1q7G3RER1i0QQNKQdJqK/le7du0Mmk6Fx48bIyMhQO2WRiLQzbNgw8f5zmUwGR0fHGu4RERER/RMxSRzRP8jly5fFRGVubm4Mzol0IDk5GSdPngRQ8rg7BudERERUXRigE/1NyGQyZGdnq1wfFxeHsWPHin9rO2WRiNRbunSpmBX+yy+/rNnOEBER0T8ap7gT/U1Mnz4dQUFB8PDwQO/evWFtbQ0DAwP89ddfOH/+PI4dOyY+o9vHx0fhkWJEpJ2EhAQkJCQgOzsbJ0+exJ49ewAAXbp0wY0bNyr9dAQiIiIiTZgkjuhvJCcnB0ePHlX72KpPPvkEO3fufIu9Ivpn2bt3L5YtW1bmPWNjYwQGBjI4JyIiomrFAJ3ob2L+/PmwtrbGuXPn8PDhQzx//hyZmZkwMTGBVCqFs7Mz/Pz80Ldv35ruKtE/gkQigZWVFfr06YNly5ahU6dONd0lIiIi+ofjFHciIiIiIiKiWoBz9YiIiIiIiIhqAQboRERERERERLUAA3QiIiIiIiKiWoABOhEREREREVEtwACdiIiIiIiIqBZggE5ERERERERUCzBAJyIiIiIiIqoFGKATERERERER1QIM0ImIiIiIiIhqAQboRERERERERLUAA3QiIiIiIiKiWoABOhEREREREVEtwACdiIiIiIiIqBZggE5ERERERERUCzBAJyIiIiIiIqoFGKATERERERER1QIM0ImIiIiIiIhqAQboRERERERERLUAA3QiIiIiIiKiWuD/AZBqNeBnxRw7AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 400, + "width": 500 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:587: PlotnineWarning: Saving 5 x 4 in image.\n", + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:588: PlotnineWarning: Filename: ./tutorial_data/pyvene_rome_mlp_activation.pdf\n" + ] + }, + { + "data": { + "image/png": "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pOeff14XXXRRg7BWVlamlStXauXKlXriiSf05ptvqnfv3o223bFjhz755BNJanDfeFOqq6sDX//8888Rqb2mpkY333yz7r///gb7l6Tc3Fzl5ubq3Xff1d///nctXrxYw4YNa3I/t99+u/72t781uWznzp3auXOnli5dqvvuu0+LFi3SUUcdFZH6rRKp16XOyJEjZRiGTNPUwoULdemll4ZVl20B/dhjj9Xu3buVnp4eeK5nz56aPn26Hn30Ue3du1c5OTmSaj8pOe200zR27Fi7ygMAAACARj777DPdc889qqqq0uTJkzVmzBglJSVpw4YNevrpp7Vjxw5t3rxZo0aN0ueff66OHTs22P6tt94KfH300Uc321a/fv0CXz/22GOaPHmy4uPj21T/1KlTNWfOHEm1tx2fc845GjZsmNLS0pSbm6vXXntNb7zxhrZt26ZRo0Zp9erVOvjggxvtp6ysTDExMTrqqKN07LHH6uCDD1Z6err8fr++++47vfrqq/rwww+1fft2nXzyyfriiy/Uq1evBvtYtGiRJAUu3R80aJBmzpzZqK3DDz88rPWdeF3qdOrUSVlZWfr666+1fPly7d27V4mJia2uy7Zp1ppTXFyszz77TPn5+UpJSdGQIUPUo0ePiO2fadbaN6ZZa3briNURGqZZc5NomUqMadaAyGKaNYSLadZ+tXz5co0aNSrw9+TkZL322muNLk8vLCzUuHHj9PHHH0uSLrvsMj3++OMN1vnjH/8YeG7ZsmUaPXp00HY//vhj/eY3vwn8PTs7W1deeaVOOumksObX/te//hW4P338+PF69tlnG3SY1lm4cKHOOeccVVdX69hjj9WKFSsarbNq1Sr16NFD3bt3D9renDlzNHXqVNXU1Ojiiy8O3Lq8L6enWYvk61LftGnT9Mwzz0iqfS9b+kCmKa6YzT4tLU2jRo3SWWedpXHjxkU0nAMAAABAW9xzzz1N3juenp6uF198UampqZJq7zXPy8trsM66desCXw8YMKDZdo455hhde+21gb+vX79ef/zjH9WnTx916dJFJ510km655Ra99dZbLd73XlFRodtuu02SdMghh+ill15qMoRK0u9//3tdf/31kqQPP/xQK1eubLTOkUce2Ww4l6QpU6Zo8uTJkqT58+e7ctDvSL8u9R1yyCGBr9euXRtWfa4I6AAAAADgRunp6frDH/4QdHmPHj103nnnSaoNf0uWLGmw/Lvvvgt83alTpxbbq5uma98wnJ+fr7feekszZ87USSedpP3220/XXntt0KuF3377be3YsUNS7YjwLV0qX390+fqX5bfWiBEjJNVeEh9uSLWSla9L/fe3/vveGvZfc63aeQBXrVqlb775JjAEfceOHdW3b18deeSRgU+gAAAAAMBJI0aMaPFe4hNOOEH/+te/JEmffvqpLrroosCy3bt3S6q9TD7Ue5IvueQSXXDBBXr77bf1+uuv66OPPtKGDRsaDGZWVFSkf/zjH1qwYIGWLFmiI444osE+3n///cDXe/bs0eLFi5tts35v98aNG5tcxzRNvfHGG3rppZf02Wef6ccff9SePXsaDbJWZ9u2bS0OrmY3K16XOvXnt69731vL1oDu9/s1b948vfLKK4EDrbufr+4+gbi4OE2YMEGTJk1SbKwjnx8AAAAAgCQpKyurVets3769wbK6S9E7dOjQqnbj4+N16qmn6tRTT5VUO33Xl19+qQ8++EAvvPCCVq1aJal2BPVTTz1VmzZtUkZGRmD7+j24f/nLX1rVdlPhcufOnZo4caI+/PDDkPdTXFzcqnbtEOnXpb60tLTA1+Xl5a3adx3bEnBNTY1mzpypzz//XKZpKiEhQX379g18yrB7927l5OSooqJCL730krZu3apbbrmFgU4AAAAAOCYlJaVV6+zZs6fBsoSEBJWXl7c5rCYmJmr48OEaPny4/vKXv+i5557T1KlTZZqmfv75Zz322GO66aabAusXFhaG3VZlZcMBA6urq3XSSSfpyy+/lCRlZGRo/PjxGjx4sLp166akpKTA9HHvvPOO/u///k9SbQet20TyddlX3dXhkpSUlBRWG7YF9CVLlmjNmjXy+XyaPHmyTjvttEaXeFRUVOiVV17RvHnztGbNGr366qsaP368XSUCAAAAQAOlpaWtWmffnvLOnTtr27ZtKi8vD3vqraacf/75WrFihZ544glJ0tKlSxsE9Pq3Da9du1aDBw8Ou63nn38+EM7HjBmjRYsWBb0i4Keffgq7HTtE8nXZ165duwJfhzLeQFNsGyRu2bJlMgxD06ZN09lnn93kiZmQkKCzzjpL06ZNk2ma+u9//2tXeQAAAADQSE5OTqvW2Xdwtz59+gS+Dve+5GBOOOGEwNd1A5/V6dmzZ+DrH3/8sU3tvP3224Gv//GPfzR7uf63337bprasFsnXZV/1399wpsWTbAzo27dvl8/n08knn9ziuieffLJiYmIa3b8BAAAAAHb64IMPWpzSrH7H4vDhwxssq99Du2nTpojWFhcXF/h634G2R44cGfj6jTfeaFM7O3fuDHzdr1+/Ztd98803W9xf3W3MdeORRXr95kTyddlX/UHkhgwZEtY+bAvoSUlJSkpKanEYe6l2QITExMSIXf4BAAAAAOEoLCzUU089FXT5jh07NHfuXEm1VwTXDepW5+ijjw583dI82j///HOranv55ZcDX+97qfbJJ5+sLl26SJKefvrpkK4ECKb+PfbN7ef555/Xhg0bWtxf3YcJodw+EM76zYnk67KvTz75RFLteAGuD+gHH3ywSktLlZeX1+K6ubm5Ki0tVf/+/W2oDAAAAACCu+GGGxpMz1WnuLhYZ599dmBguAsvvDAQ/uqMHTs20APcUkCfPn26Ro8erZdffrnZAclM09SsWbP0zDPPBJ47//zzG6yTkpKiGTNmSKqdk/zEE0/U559/3mz7OTk5+vOf/6zc3NwGzx955JGBr2+66aYmB3979913demllza7/zp1l/1v3rw5pNHOW7t+cyL5utS3e/dubdmyRVJtL324nc22DRI3ceJEff755/rnP/+pG2+8MegUan6/X48//rhiYmI0ceJEu8oDAAAAgEZOPfVULV26VKNHj9akSZM0ZswYJSUlaePGjfr3v/8duC23T58+uvfeexttv99+++nYY4/VihUrtGLFClVVVTW4NL0+0zT17rvv6t1331V6erqOP/54HXnkkerevbs6dOigPXv2aNOmTXrllVe0efPmwHYXX3yxxowZ02h/V1xxhT777DM9/fTT2rp1q4YNG6YTTzxRY8aMUc+ePWUYhnbv3q1Nmzbpgw8+0BdffCFJ+vOf/9xgPxdffLHuvvtu7dmzR6+88oqGDBmiCy64QL1791ZBQYHeeustvfzyy/L5fJoyZYrmzJnT7Gt6wgknaO3atSotLdX48eN1wQUXqEuXLoEPMgYPHqwePXqEvX5LIvW61Ff/A5wzzjgj5Fr2ZZiRuJA/RB9//LEefvhhdenSRaeffrqys7MbTLO2fv16LV68WHl5ebr66qsbXA7SFvn5+RHZT1sldLR/XndTtr29jjEU3lR84W5nt7ZNNWj3MYZ3vtn4bchTwj137H4/nKgzWl4bIBxMUYtwlRc2P4WUXTIzM50uQcuXL9eoUaMkSX/72980cOBAXXjhhSorK2ty/f79++vNN98MOjDYk08+GehdXrRokU4//fQm17vtttt09913t3jPe52EhARdf/31mjFjhny+pi+ONk1T999/v2677bag9deXmZmpTZs2NXof3njjDU2cODHoPpKTk/X444/L7/frwgsvlCT95z//0bRp0xqtu337dh1++OFBL+nfd7vWrl/3fXDkyJFavnx5k9tE6nWpc/7552vOnDlKTEzUjh07lJ6e3uI+m2JbQA92EoZj8eLFrVqfgN6+EdCb3TpidYSGgO4m0RJCCehAZBHQES4C+q/2DegzZszQV199pf/7v//T22+/rZ9++klxcXHq37+/zjnnHF155ZVKSEgIur/S0lL16tVLBQUFOuOMM7Rw4cKg6+7Zs0fLli0L9Nzm5OQoPz9fe/fuVUpKirp06aJBgwbp+OOP16RJkxqNGh9MXl6enn76af33v//Vxo0bA1OCpaenq1+/fjriiCP0u9/9TmPHjg3aw5+Tk6P7779fS5cu1U8//aSkpCT16NFDJ510ki6//HJlZWVp9uzZLQZ0qTZ0P/DAA/rvf/+rb7/9ViUlJYGfs01t15r1QwnokXxdiouL1b17d5WWluriiy9udsyCltgW0CdMmBCR/RiGQUBvBQJ65LezGwEd4YqWEEpAByKLgI5wEdB/1VRAb6ubb75Zd955p+Lj47Vt27ZG96ojej322GO68sor5fP5tG7dOg0cODDsfdmWGO+88067mgIAAAAAV7nuuuv0yCOPqKioSPfdd5/uv/9+p0tCBPj9fj3wwAOSpHPPPbdN4VyyMaBnZ2fb1RQAAAAAuEpGRoZuvPFG3XDDDXr00Ud13XXXqVu3bk6XhTaaO3eutm7dqsTERN1xxx1t3p9t06y1pKioKCLz2gEAAACAG1177bUaMGCAysvLdddddzldDtpo7969uuWWWyTVTsVXNx1cW1jag143Gl5ycnKTy6uqqvTcc89p2bJlgXDepUsXnXbaaRo/fryVpQEAAACAreLi4rRp0yany0CEJCYm6vvvv4/oPi3rQV+/fr0mT56sK664osmJ7P1+v2bMmKFXXnklMAKfaZrKzc3Vv//97zaNfAcAAAAAQLSx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68bFxSklJUXFxcUWVwUAAADA6wzThkvcjdAvIt+3FrPRF1YgobuBbZe47927V0lJSYqPD+0+7Orqak+PJAkAAADAJkbtPOCRfDS6jFxG2H98dY99L0uP5COMly0vL0/XXXedsrKylJSUpMzMTI0dO1aLFy8O62347rvvQqr1pZdeanY/X3zxhc477zz16NFDCQkJ6tmzp6ZMmaIvv/wyrLrsZFsPeseOHbV7927t3btXiYmJza67c+dO7d27V927d7epOgAAAABe1uaeS0cuka+njb3rrS1/w4YNGj16dGC66w4dOqiwsFBLly7V0qVLdfXVV2vWrFlh15OZmRm0w7a5PDlv3jxNmzZNVVVVkmpz6E8//aS5c+fqxRdf1LPPPqtzzjkn7LqsZlsPet195ytXrmxx3VdeeUWGYWjQoEFWlwUAAADA4wxFogfa4T9trL81N6FXVFTotNNOU25urrKzs/XFF1+ouLhYxcXFmjlzpgzD0MMPP6z//Oc/Yb8nq1at0s6dO5t8nHrqqU1us2HDBl144YWqqqrS2Wefre3bt6uwsFDbt2/XWWedpcrKSk2dOlWbN28Ouy6r2RbQTzrpJJmmqblz5wY+ZWnKokWL9Nprr0mSTj75ZLvKAwAAAOBVv+TTUB7OjvYexujsoR5bK16uJ554Qlu3blVycrJee+01DRkyRJKUnJysm266SVdccYUk6eabbw70ZNvh1ltvVWVlpQ477DDNnTtX+++/vyRp//3317x583TYYYepoqJCt956q201tZZtAX3IkCH63e9+p59//lnXXnutHnnkEVVUVEiS/t//+396/PHHdemll+qZZ56RJJ122mnq27evXeUBAAAA8Ch/TXXL93+r7j5yRdWjcf1N/ymtKgv59ZozZ44k6dxzz9UBBxzQaPn1118vwzC0fft2vfvuuyHvty2Kior06quvSpKuu+46xcY2vJs7NjZW1113naTaK7b37NljS12tZVtAl6Q//vGPOuOMM1RaWqqlS5eqvLxckvTcc8/pzTff1M8//yxJOvPMM3XhhRfaWRoAAAAAjzLUXA90+3oE7W0P8bUqKSnRqlWrJNVeJd2UAw44QIcccogkadmyZZF4i1q0YsUKVVZWSpJOPPHEJtepe76iokIrVqywpa7Wsm2QOEmKiYnRtGnTdNJJJ2nZsmXavHmzCgoKVFNTo/T0dA0YMEBjxoxRjx497CwLAAAAgIfF+mLlM4JFVPvnJLefoZT41JDW3LRpk0yz9jXJzs4Oul52drY2btyojRs3hlXR2WefrS1btqisrExdunTR8OHDddFFF+mUU05pcv26dvbbbz916dKlyXW6dOmirl27Kjc3Vxs3bnTlLdW2BvQ63bp103nnnedE0wAAAADQkGE2cw92kCVm84ujTaiHsWPHjsDXzc26Vbes/vqtsWrVKqWlpSkmJkY//fSTFi5cqIULF+qss87SnDlzGk3fXddOSzOBde/eXbm5uWHXZTVbL3EHAAAAAPcJ43Jx3y8PF1y2HolHqAm9pKQk8HVycnLQ9eqWteZe78TERF1xxRV6//33VVxcrKKiIpWVlWn9+vU6//zzJUkvvviirrrqqqB1NVdTuHXZyZIe9AULFkRsX5MmTYrYvgAAAACgKUaku8JNRVXvesSPPwzdunXTo48+2uj5QYMG6dlnn1WXLl304IMP6qmnntJ1110XmMq7PbEkoM+fP7/2U5gIIKADAAAAsJIh6fyUc8Ladk7Z88F36pApyWEcS76k3i2vlpr6673qZWVlSktLa3K9srLaUeE7dOjQ+lqCuP322/XPf/5T5eXlevXVVxsE9Lq66toNxoq6IsmSgD5o0KCIBXQAAAAAcCtfK5K4ue8XbYhMTqWt+vd4b9++PWhA3759uyQF5iKPhJSUFA0aNEirV6/W1q1bm6yrrt1grKgrkiwJ6HfddZcVuwUAAACAiGvL5d2t6Zg09vnCbMUA8W7p/xwwYIAMw5BpmtqwYYMGDBjQ5HobNmyQJA0cONCWuura+fnnn5Wfn6/MzMxG6+Tl5Sk3N9fWulrLkVHcAQAAAMBNFpS/FNZ2bQv3v34dyUHhwzmW3x0wJqT1UlNTddRRR2nlypV68803deaZZzZaZ9u2bYFpz8aMCW2/oSgtLQ0E/z59+jRYNmLECMXHx6uyslJvvfVWk7OGvf3225KkhIQEjRgxImJ1RRKjuAMAAADwPMNw8mHI98vDsRpa8VrVhd/58+frxx9/bLT8vvvuk2ma6t69u0aNGhXyfs0WLimYMWOGysvLZRiGTj311AbL0tLSAs89+OCD8vv9DZZXV1frwQcflCSddtpprr0HnYAOAAAAwNMMw5Ctf0xDhnz1HvX//PKcWbeePX9aE9EvvfRSHXTQQSotLdWpp56qtWvXSpLKy8t1zz336JFHHpEkzZw5U3FxcQ22PfDAA2UYhqZNm9Zov8cff7zuuusurV27VtXV1YHnN27cqIsuukh///vfJUkXX3xxk5fW33777YqPj9eaNWt03nnnaefOnZKknTt3asqUKVqzZo0SEhJ0++23h3ysduMSdwAAAACeZ+sg16E0ZfNN561pLiEhQa+88opGjx6ttWvXasiQIUpLS1NpaWmg5/pPf/qTLrzwwlbV8P333+umm27STTfdpNjYWHXs2FHl5eUNRmafPHlyk1OxSbWDlf/nP//RtGnT9Pzzz+uFF15Qx44dVVhYKEmKj4/X7Nmzg9437wb0oAMAAADwPCOSD6t7vwP7j1zNrTVo0CCtW7dO1157rfr166eKigp17NhRJ5xwghYtWqSHH3641fu8//77demll2ro0KHKzMzUnj17JEn9+vXT+eefr3feeUdz585VfHx80H1MnjxZn376qc4991ztv//+KisrU/fu3QPPu30ab3rQAQAAAHiaoUj1oBsN/meZfYeDVyuGgw+6y9YX3bVrVz344IOBe7tD8d133wVddtZZZ+mss85qdR37OuywwzRv3rw278cJBHQAAAAAnhdOQLU8iIdsn0LantfhEAI6AAAAAI8z7L0H3WrhfNbQno4/ihHQAQAAAHhaVU1l8EzbHnNrEz3sRRVF9teBRgjoAAAAADwtPibeWz3ITRxqSlyK/XWgEQI6AAAAAE8zZCjGCD7BVXu+pbsuq8fHxDW7HuxBQAcAAADgec31oO+7JJoDe7CjDGuQPEQcAR0AAACA57UmoNZf03R1XCd2RxsCOgAAAABPM4zwR3HfNwI7GdiNev9t9bZeugffxQjoAAAAADwvUgG1UWA3rQnsDVohXLcbBHQAAAAAnmfVxeCNg38kAnvka+VieHcgoAMAAADwNEN2dkLv01Aoed2O2sjnrkBABwAAAOBxhnM9yC4Jxi4pw/MI6AAAAAC8zXB2kLS6DwecHRGeiO4GBHQAAAAAnmbI/nuwm/o8oPEAczYVI+K5WxDQAQAAAHiez4UjodtZEtOsuQMBHQAAAIDHWXAPutV518mr4WEZAjoAAAAAT6sdxT3KepAj/nlClB1/O0VABwAAAOB5rY6nbg/0dt7AjojxREA3DEM+n8/pMgAAAADXiomJcboER4XWg+7y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5w3qfPjhh7r33nsDf28uoHPeAEDz6EF3QFVVlWbOnKmioiL17t1bf/7zn9WnTx9VVFTo5Zdf1ty5c7VkyRL16dNHJ5xwgtPlwmYZGRnq27ev+vXrp+7du+vBBx8Mabu33npLr7/+ugzD0HnnnacJEyYoISFB3377rR588EF9//33mjlzph555BHFxcVZfBSwS92HeocffrhGjx6tww47TGlpafL7/dq0aZOeeOIJfffdd3rwwQfVs2dPHXjggQ2257zxrv79+6tHjx4aOHCgevToEQjhhYWFWrp0qebOnav169fr6aef1lVXXdVgW84b1CktLdWTTz6plJQUZWRkaNu2bUHX5bwBgJZxD7oD3nrrLe3cuVMJCQm69dZb1adPH0lSQkKCzj77bJ188smSpDlz5gR6wOANxx9/vJ555hndeuutmjx5so444oiQtquqqtK8efMkSePGjdPZZ5+thIQESVKfPn10yy23KCEhQTt27NDSpUstqx/2S01N1UMPPaQZM2bouOOOC1weGhMTo+zsbN12223q2LGjqqur9fLLLzfYlvPG28aMGaMJEyYoKyurQQ95enq6zjrrLE2cOFGStHz58gY/izhvUN/s2bO1e/duTZkyRenp6UHX47wBgNAQ0B2wfPlySdJxxx2nLl26NFp+5plnyjAM7d69W+vWrbO5OjgpJiYmrO3Wrl2rgoICGYah3//+942Wd+3aVccdd5ykX88/tA8pKSk66KCDgi7PyMjQsGHDJEnffPNNg2WcN2hOVlaWJKmyslJ79uwJPM95gzobN27U22+/raysrEDnQjCcNwAQGgK6zcrLy7VlyxZJtZekNqVLly7q2bOnJOnLL7+0rTZEr7Vr10qSevXq1eSHPpI0dOhQSdJXX33V4B5TtH91vep+v7/B85w3aM7mzZsl1d6bXr9nlPMGUm2P+COPPCLDMHTFFVc0O5igxHkDAKEioNts27ZtgcGcevfuHXS9umU//vijLXUhutWdJ6GcU6ZpNnuPINqf9evXS2p8fnDeYF8VFRXatm2bnnvuOS1atEiSdMopp8gwjMA6nDeQpBdffFHbtm3TKaecor59+7a4PucNAISGQeJstnv37sDXnTp1Crpe3bKCggLLa0L0qzuvQjmnJM4rL/nkk0+Uk5Mjqfae4/o4byDVTu84efLkRs/Hxsbq1FNP1ZQp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NjY20tatW/W6r+nDkHgMue/qugZ0xVX1uC9btkyysLDQeFwCAwOlv/76S2e6tNHnXnbmzBnJ2dlZ67ldunSplJSUJP43d+5cvbavfC7MzMykzMxMvdOem5srhYaG6n1vUrd/1UkzEdU9bOJeB/Xp0weZmZn44osvEBISAldXV1hZWcHa2hotW7ZEWFgYli1bprZJtUJ0dDSuX7+OFStWYMCAAWjRogVsbW1haWkJZ2dnvPjii5g0aRJ27tyJ27dv4/nnn3/i+9WvXz+cPHkSY8aMQZs2bfSap7Zfv37IzMzEunXrMGzYMHh4eMDe3h716tWDo6MjOnbsiJiYGGzatAm3b9+uNHDUP2X27Nn4/fffMW3aNDz//PNo2LAhrKysxLzY69evx7lz57QOUlMX1Nbz27p1a5X+lrqatyuMHz8e//vf/zBq1Cg0b94clpaWcHJygq+vL2bPno20tDT07dvX6GnWJSwsDJmZmViyZAm6du0KZ2dn1KtXD87OzujSpQsWL16MzMxMhIWF/eNpM7agoCBcuHABH3zwAQICAuDs7Axra2u0aNECERERiIuLw/fff2+0Ob+Vffzxx/jpp58QGRmJFi1awMrKCk2aNEFISAh27tyJuLg42NjYaFx/7ty5OHLkCIYMGQKZTAZLS0s0adIEAQEBWLp0KX777Td06tRJr7RU5/obPXo0srKy8MEHH6BHjx4iDba2tmjTpg0iIiKwZs0abNiwQd9DUiOdO3dGeno6du7cidGjR8PLywsNGjSAhYUFGjZsCB8fH4wcORKrV6/GzZs3MWHCBLXxODs74+TJk/jqq6/QtWtXNGrUCLa2tvD09MSkSZOQmpqqs4VMXfTmm2/i1KlTiImJgYeHB2xsbODk5ITg4GB8/fXXOH78OJycnJ54Ovz8/JCWlobp06ejXbt2sLGxgb29Pdq2bYuJEyciJSWl2l0QlO+3ffv2VRn7QZumTZti3759OHnyJKZMmQJfX180btwYFhYWsLOzQ5s2bTBgwAAsXboUFy5c+MeuCyKqfcwkiaNZEBERPWnz5s3D/PnzAVSMON6jR4+nmyAiLTZs2CC6daxfv15MRVaXTZ06FcuXLwdQMa5IeHj4U04RET2LWINORERERM+0oqIibNq0CUDFuAYDBw58yikiomcVC+hERERE9Ez79NNP8eDBAwAVg3gqZiogIvqn8e5DRERERM+UP//8E+fPn0dxcTGOHTuGlStXAqiYMWXKlClPOXVE9CxjAZ2IiIiInimHDh1SmTrRwsIC33zzzRMZFJKISF9s4k5EREREzyyZTIbQ0FD88ssvdWJ2CiKq3TiKOxEREREREZEJYA06ERERERERkQlgAZ2IiIiIiIjIBLCATkRERERERGQCWEAnIiIiIiIiMgEsoBMRERERERGZABbQiYiIiIiIiEwAC+hEREREREREJoAFdCIiIiIiIiITwAI6ERERERERkQlgAZ2IiIiIiIjIBLCATkRERERERGQCWEAnIiIiIiIiMgEsoBMRERERERGZABbQiYiIiIiIiEwAC+hEREREREREJoAFdCIiIiIiIiITwAI6ERERERERkQlgAZ2IiIiIiIjIBLCATkRERERERGQC/h8+TnyAGZwPSgAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 400, + "width": 500 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:587: PlotnineWarning: Saving 5 x 4 in image.\n", + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-bootleg/lib/python3.8/site-packages/plotnine/ggplot.py:588: PlotnineWarning: Filename: ./tutorial_data/pyvene_rome_attention_output.pdf\n" + ] + }, + { + "data": { + "image/png": "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TVUHkevfv39A+7AsoMfGxio2NrbRYeyligERYmJignb5BwAAAAAEYv/+/Xr22WfrXb57927Nnz9fUsUVwZWDulUaMmSI73lj82j/8ssvTarttdde8z2vean26aefrnbt2kmSnnvuOb+uBKhP1XvsG9rPiy++qA0bNjS6v8oPE/y5fSCQ9RsSzPelpi+++EJSxXgBjg/oRxxxhAoKCpSVldXoupmZmSooKNCRRx5pQWUAAAAAUL9bbrml2vRclXJzc3X++ef7Boa7+OKLfeGv0qhRo3w9wI0F9GnTpmnEiBF67bXXGhyQzDRNzZo1S3PmzPG9dtFFF1VbJz4+XnfffbekijnJf//73+vbb79tsP309HTdcMMNyszMrPb6oEGDfM9vu+22Ogd/++CDD3T55Zc3uP9KlZf9b9682a/Rzpu6fkOC+b5UtW/fPm3ZskVSRS99oJ3Nlg0SN2HCBH377bf617/+pVtvvbXeKdS8Xq+eeuopRUREaMKECVaVBwAAAAC1nHXWWVq+fLlGjBihiRMnauTIkYqNjdXGjRv1n//8x3dbbrdu3fTggw/W2v7QQw/VSSedpE8//VSffvqpSktLq12aXpVpmvrggw/0wQcfqE2bNjr11FM1aNAgpaamKjExUXl5edq0aZOWLl2qzZs3+7a75JJLNHLkyFr7u/rqq/X111/rueee07Zt2zRw4ED9/ve/18iRI9WpUycZhqF9+/Zp06ZN+uSTT7RmzRpJ0g033FBtP5dccokeeOAB5eXlaenSperfv7/++Mc/qmvXrsrJydE777yj1157TR6PR5MnT9a8efMafE9PO+00rV27VgUFBRozZoz++Mc/ql27dr4PMvr166eOHTsGvH5jgvW+VFX1A5yzzz7b71pqMsxgXMjvp88//1yPP/642rVrp/HjxystLa3aNGvr16/XkiVLlJWVpWuvvbba5SDNkZ2dHZT9NFdKdDM2NgK82MG6b699PAG+N4G+p4EK+HvRjO9hoG264bxBC8B56ixMiwqEu+wSZ/xcTUlJsbsEffjhhxo+fLgk6a677lKfPn108cUXq7CwsM71jzzySL399tv1Dgz2zDPP+HqXFy9erPHjx9e53j333KMHHnig0XveK0VHR+vmm2/W3XffLU89vxObpqmHH35Y99xzT731V5WSkqJNmzbV+j689dZbmjBhQr37iIuL01NPPSWv16uLL75YkvTf//5XU6dOrbXurl27NGDAgHov6a+5XVPXrwzuw4YN04cffljnNsF6XypddNFFmjdvnmJiYrR79261adOm0X3WxbKAXt9JGIglS5Y0aX0CegtHQA9+m244b9ACcJ46CwEdCHcE9N/UDOh33323vv/+e/3f//2f3n33Xe3cuVORkZE68sgj9Yc//EF//vOfFR1d/y/7BQUF6ty5s3JycnT22Wfr1VdfrXfdvLw8rVixwtdzm56eruzsbBUXFys+Pl7t2rVT3759deqpp2rixIm1Ro2vT1ZWlp577jm999572rhxo29KsDZt2qhnz5467rjj9Lvf/U6jRo2qt4c/PT1dDz/8sJYvX66dO3cqNjZWHTt21OjRo3XllVeqV69eev755xsN6FJF6H7kkUf03nvv6ccff1R+fr5vELi6tmvK+v4E9GC+L7m5uUpNTVVBQYEuueSSBscsaIxlAX3cuHFB2Y9hGAT0pnBD0CKgB79NN5w3aAE4T52FgA6EOwL6b+oK6M11++2367777lNUVJQyMjJq3auO8PXkk0/qz3/+szwej9atW6c+ffoEvC/L7kG/7777rGoKAAAAABzlxhtv1BNPPKEDBw7ooYce0sMPP2x3SQgCr9erRx55RJJ0wQUXNCucSxYG9LS0NKuaAgAAAABHSU5O1q233qpbbrlFs2fP1o033qgOHTrYXRaaaf78+dq2bZtiYmJ07733Nnt/Fl/jW78DBw4EZV47AAAAAHCi66+/Xr1791ZRUZHuv/9+u8tBMxUXF+uOO+6QVDEVX+V0cM0R0h70ytHw4uLi6lxeWlqquXPnasWKFb5w3q5dO40dO1ZjxowJZWkAAAAAYKnIyEht2rTJ7jIQJDExMfrpp5+Cus+Q9aCvX79ekyZN0tVXX13nRPZer1d33323li5d6huBzzRNZWZm6j//+U+zRr4DAAAAACDchKwHff369TJNU8OGDVNERESt5cuXL9f69etlGIY6d+6sU089VTExMfr444/1/fff6/XXX9ewYcPUq1evUJUIAAAAALWceuqpsmiyK6CakAX0TZs2yTAMHX/88XUuf+uttyRJ3bp104MPPqioqChJ0hlnnKE77rhDGzZs0IoVKwjoAAAAAEKqcP9+PXXOhYqKjVVSh0MV0cqysbRtVV5ervysbB3YtUdT5vxLhx3V2+6SXC9kZ15mZqYkqWfPnrWW5eTkaPv27TIMQ+edd54vnEuSx+PR+eefrzvvvJP7MwAAAACEXPrHK5X+wSe+r93Yd75q/ksaO/3OJm2TlZWlGTNmaOnSpcrIyFB8fLwGDBigq6++WuPHjw+4ls8++0yzZ8/WypUrtWfPHhmGodTUVJ188sn6y1/+okGDBgW8b6cLWUDfv3+/4uPjq4XvSps3b5YkGYahY489ttbyyrnjKkM+AAAAAISSYVR5bl8ZtomIjGzS+hs2bNCIESN8mS0xMVH79+/X8uXLtXz5cl177bWaNWtWk+u466679I9//MP3dVxcnMrLy7Vt2zZt27ZNc+fO1YwZM3TzzTc3ed/hIGSDxB08eFAHDx6sc1l6erokqWPHjoqNja21PDIyUvHx8SopKQlVeQAAAADgYzT5Yf76CGRbZz78VVJSorFjxyozM1NpaWlas2aNcnNzlZubq+nTp8swDD3++OP673//24S9Su+9954vnE+YMEFbtmxRQUGBCgsLtX79ev3+97+XaZr629/+plWrVjVp3+EiZAE9MTFRpaWlysnJqbXs+++/l2EYdV7+XungwYOKbOKnOAAAAADQVIYqglHTHoY8MsIisPtzPE0J6E8//bS2bdumuLg4vfHGG+rfv7+kit7u2267TVdffbUk6fbbb1dpaanf+50/f76kitukFy5c6MuLhmGob9++Wrx4sQ499FCZpqlXX321CRWHj5AF9O7du0uSPvjgg2qvHzhwQBs3bpQk9e3bt85t9+7dq9LSUh1yyCGhKg8AAAAAfAzDCOjh8T088hiegPcTzIenxsOfbapd49+IefPmSZIuuOACdenSpdbym2++WYZhaNeuXbXyYEN2794tSerfv79a1TFQX2xsrC9D5ufn+73fcBKygH7KKafINE29+OKLWrlypUpLS7Vnzx499thj8nq9atWqlU444YQ6t60M8F27dg1VeQAAAAAgyZre6qb0Zjf3EcpL3PPz832Xl48ePbrOdbp06aKjjjpKkrRixQo/91wxw5ckfffddyorK6u1vKioSBs2bJAkDRgwwO/9hpOQBfTKOcyLi4v10EMP6bzzztOVV16pb7/9VoZhaMyYMUpISKhz208++USGYfgGiwMAAACAUAp1aI749WHVJeuBhHp/bNq0yTdHfFpaWr3rVS6r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q1OnThoxYoSmT5+uoqKi5h+AA4WsB33atGnN3odhGJo5c2bziwEAAACABhiWXUteV2+1Ue8yp0b2DRs2aMSIEcrMzJQkJSYmav/+/Vq+fLmWL1+ua6+9VrNmzQpo31u2bNGYMWP0/fffS5JatWqlhIQE7dy5Uzt37tQHH3ygqVOnqlOnTkE7HqcIWUD/8ccfA97WMAyZpmnpXxIAAAAA7mQYob3E26j1pInb/prSQxnWm1JaSUmJxo4dq8zMTKWlpWnevHnq37+/CgsLNXPmTN1xxx16/PHHdcwxx+jiiy9uUh27d+/Wqaeeql27dmnIkCG67777NGzYMEVERKioqEjr1q3T//73vxY7dlnIAvrEiRMD2i49PV2rV68OcjUAAAAAUB8jyIOxmZV7Dc7uqo8tJzMUd6w3YVdPP/20tm3bpri4OL3xxhvq0qWLJCkuLk633Xabdu/erdmzZ+v222/X5MmTFRkZ6fe+r776au3atUunnHKKli9frujoaN+y2NhYDR48WIMHD/a/2DATsoB+wQUXNGn9jIwMzZs3T19//bWkil70E088MRSlAQAAAIBP5bRlwdhPzWehULPWYPSsN+X4582bJ6ki81WG86puvvlmPfnkk9q1a5c++OADjRo1yq/9rl+/3nf/+r/+9a9q4dwtbBvFvVJWVpYWLFigDz/80Dcv+rHHHquLLrpIPXr0sLs8AAAAAC4QSA+6U27ItfK+9fz8fK1atUqSNHr06DrX6dKli4466iht3LhRK1as8DugVwb//v37q2/fvsEpOMzYFtD379+vl156Se+++67KyspkmqaOOuooTZ48WWlpaXaVBQAAAMCFnBK2gyGQY/F3m02bNsn8dQL3hnJbWlqaNm7cqI0bN/pdw8qVKyVJAwYM0IEDB3Tffffpf//7nzIyMtS6dWsNHjxYV199tc444wy/9xluLA/oBQUFevXVV/X666+rpKREpmnq8MMP10UXXaTjjjvO6nIAAAAAuFx5UZHrB6gu3bPHr/V2797te56amlrvepXLqq7fmC1btvieDxw4UFu3blWrVq2UmJio7OxsvfHGG3rjjTd0ww036JFHHvF7v+HEsoBeUlKiZcuWafHixSooKJBpmkpNTdWkSZN0yimnWFUGAAAAAFTjiYlpUT3ogYho09qv9fLz833P4+Li6l2vclleXp7fNeTk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W7BDHFBrdq4HENjJ0C2fZQG9vLxc9913n9asWSNJat++vbKzs1VeXl5tvYSEBA0fPlzLli3TZ599pnPPPbfRfU+ePFmTJ0+ud3l2drZycuy/vDyFqd8BAADgUE74fVmSUlJS7GnY4vBbK2zXFdgJ5K5jyTzokvTBBx/o22+/VZs2bfTggw/q6aefVmJiYp3rnnzyyZKktWvXWlUeAAAAADezdfT0X//01HgwirvrWNaD/v7778swDF166aU68sgjG1y3R48eMgxDP//8s0XVAQAAAHCv5o/iHliz9bQZyPXvzUQ8dwbLAvr27dslSYMHD2503cjISMXHxys3NzfEVQEAAABwPUPW9CD720TNWqzI6/SgO4JlAb24uFixsbGKiorya/2ysjKXjyQJAAAAwDJBz6dG8PZb7/3qzph3HcFjWUBv3bq19u3bp+LiYsXExDS47p49e1RcXKzU1FSLqgMAAADgZkG7xN2KjmijypNgZXQ60B3BskHiKu87//LLLxtdd+nSpTIMQ3379g11WQAAAADcrjkDq9k9sFuw2iehO4JlAX306NEyTVPz589XZmZmvestXrxYb7zxhiTp9NNPt6o8AAAAAG5m+PmwO5A3ObA34dhgO8suce/fv79+97vfafny5br++ut1wgknqKSkRJL0v//9T1lZWfrmm2984X3s2LHq0aOHVeUBAAAAcCtvmQxPC02ofl66bxYwQLcTWBbQJemqq65SQkKClixZouXLl0uquNdj7ty5kiTTNGUYhs4991xddNFFVpYGAAAAwK0MuX4Uc9Pdh+8Ylgb0iIgITZ06VaNHj9aKFSu0efNm5eTkqLy8XG3atFHv3r01cuRIdezY0cqyAAAAALiY0SpS8tR3968bRko3FJHQpslbZWVlacaMGVq6dKkyMjIUHx+vAQMG6Oqrr9b48eODVt3MmTN1ww03SJK6du3qm8K7JbI0oFfq0KGDLrzwQjuaBgAAAIDa6u1BdknXchMPc8OGDRoxYoTvFuXExETt379fy5cv1/Lly3Xttddq1qxZzS7rp59+0h133NHs/YQLywaJAwAAAADHsntwN7sfTVBSUqKxY8cqMzNTaWlpWrNmjXJzc5Wbm6vp06fLMAw9/vjj+u9//9vsb8tVV12lgoICDRkypNn7Cgch6UFftGhR0PY1ceLEoO0LAAAAAGozFLR50MNVE47/6aef1rZt2xQXF6c33nhDXbp0kSTFxcXptttu0+7duzV79mzdfvvtmjx5siIjIwMqaeHChXrrrbc0YcIE9e3bV1988UVA+wknIQnoCxcuDNoJTkAHAAAAEFIhGyTOqvvXrf1wYd68eZKkCy64wBfOq7r55pv15JNPateuXfrggw80atSoJrexb98+TZs2TYmJiZo1a5aefvrpZtcdDkIS0Pv27csnUAAAAADCR0jyS819BjOwB7leP48/Pz9fq1atkiSNHj26znW6dOmio446Shs3btSKFSsCCug33XSTMjMz9dhjjyk1NbXJ24erkAT0+++/PxS7BQAAAIDQsKR/Mfw7MTdt2iTTrPigIS0trd710tLStHHjRm3cuLHJbXz44Yf673//qwEDBugvf/lLwLWGI1tGcQcAAAAAxwhgoLSgq+xct6sMP9vdvXu373lDPduVy6qu74/i4mJdfvnl8ng8euqppxQREdGk7cMdAR0AAAAA7A7otneu+3+Je6W4uLh616tclpeX16Qq7r33Xm3ZskVXX321Bg0a1KRtWwICOgAAAADYHdDt5oDDX79+vR5++GF16NDBtbdNE9ABAAAAuJshrb34roA2Pfr5e5rWUMD8H2Bu7dTAjmWgH+skJCT4nhcWFiopKanO9QoLCyVJiYmJfrVdXl6uyy67TKWlpXr00UfVunVrv7ZraQjoAAAAABAoy3reHdDFrer3ne/atavegL5r1y5J0mGHHebXfl944QV98cUXGjp0qMaMGVPtUnpJOnjwoCTJNE3fsujo6IDnWHcqAjoAAAAAlws8/LpteunevXvLMAyZpqkNGzaod+/eda63YcMGSVKfPn382u/27dslSR9//HGDve4///yzb/nMmTM1bdo0/4sPAwR0AAAAAO5mSP3nTg9wW+cF9ECOxTN6ovy5yD0hIUGDBw/Wl19+qbffflvnnnturXUyMjJ806uNHDmyybW4mcfuAgAAAADAdoY/DyNMH34cWxNceOGFkqSFCxdqx44dtZY/9NBDMk1TqampGj58uF/7vPvuu2WaZr2Pu+6quK++a9euvtdaWu+5REAHAAAA4HYHS4IXdB35aPzYyg/s9fvtuvzyy9W9e3cVFBTorLPO0tq1ayVJRUVFmjFjhp544glJ0vTp02vdI3744YfLMAxNnTrV7/bchEvcAQAA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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 400, + "width": 500 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "for stream in [\"block_output\", \"mlp_activation\", \"attention_output\"]:\n", + " df = pd.read_csv(f\"./tutorial_data/pyvene_rome_{stream}.csv\")\n", + " df[\"layer\"] = df[\"layer\"].astype(int)\n", + " df[\"pos\"] = df[\"pos\"].astype(int)\n", + " df[\"p(Seattle)\"] = df[\"prob\"].astype(float)\n", + "\n", + " custom_labels = [\"The*\", \"Space*\", \"Need*\", \"le*\", \"is\", \"in\", \"downtown\"]\n", + " breaks = [0, 1, 2, 3, 4, 5, 6]\n", + "\n", + " plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\")) \n", + "\n", + " + geom_tile(aes(fill=\"p(Seattle)\"))\n", + " + scale_fill_cmap(colors[stream]) + xlab(titles[stream])\n", + " + scale_y_reverse(\n", + " limits = (-0.5, 6.5), \n", + " breaks=breaks, labels=custom_labels) \n", + " + theme(figure_size=(5, 4)) + ylab(\"\") \n", + " + theme(axis_text_y = element_text(angle = 90, hjust = 1))\n", + " )\n", + " ggsave(\n", + " plot, filename=f\"./tutorial_data/pyvene_rome_{stream}.pdf\", dpi=200\n", + " )\n", + " print(plot)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/tutorials/advanced_tutorials/DAS_Main_Introduction.ipynb b/_sources/tutorials/advanced_tutorials/DAS_Main_Introduction.ipynb new file mode 100644 index 00000000..5115e93b --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/DAS_Main_Introduction.ipynb @@ -0,0 +1,1824 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Intro to Distributed Alignment Search (DAS)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Atticus Geiger\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "## Contents\n", + "\n", + "1. [The hierarchical equality task](#The-hierarchical-equality-task)\n", + " 1. [An Algorithm that Solves the Equality Task](#An-Algorithm-that-Solves-the-Equality-Task)\n", + " 1. [The algorithm with no intervention](#The-algorithm-with-no-intervention)\n", + " 1. [The algorithm with an intervention](#The-algorithm-with-an-intervention)\n", + " 1. [The algorithm with an interchange intervention](#The-algorithm-with-an-interchange-intervention)\n", + " 1. [Hand Crafting an MLP to Solve Hierarchical Equality](#Hand-Crafting-an-MLP-to-Solve-Hierarchical-Equality) \n", + " 1. [Training an MLP to Solve Hierarchical Equality](#Training-an-MLP-to-Solve-Hierarchical-Equality)\n", + "1. [Causal abstraction Analysis](#Causal-abstraction)\n", + " 1. [Basic intervention: zeroing out part of a hidden layer](#Basic-intervention:-zeroing-out-part-of-a-hidden-layer)\n", + " 1. [An interchange intervention](#An-interchange-intervention)\n", + " 1. [Alignment](#Alignment)\n", + " 1. [Evaluating an Alignment](#Evaluation)\n", + "1. [Distributed Alignment Search (DAS)](#Distributed-Alignment-Search)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set-up\n", + "\n", + "This notebook is a hands-on introduction to __causal abstraction analysis__ [Geiger*, Lu*, Icard, and Potts (2020)](https://arxiv.org/pdf/2106.02997.pdf) using __distributed alignment search__ [Geiger*, Wu*, Potts, Icard, and Goodman (2020)](https://arxiv.org/pdf/2303.02536.pdf).\n", + "\n", + "In causal abstraction analysis, we assess whether trained models conform to high-level causal models that we specify, not just in terms of their input–output behavior, but also in terms of their internal dynamics. The core technique is the __interchange intervention__, in which a causal model is provided an input and then intermediate variables are fixed to take on the values they would have for a second input.\n", + "\n", + "To motivate and illustrate these concepts, we're going to focus on a hierarchical equality task, building on work by [Geiger, Carstensen, Frank, and Potts (2020)](https://arxiv.org/abs/2006.07968)." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "from torch.utils.data import DataLoader\n", + "from datasets import Dataset\n", + "import random\n", + "import copy\n", + "import itertools\n", + "import numpy as np\n", + "from tqdm import tqdm, trange\n", + "\n", + "from sklearn.metrics import classification_report\n", + "from transformers import get_linear_schedule_with_warmup\n", + "\n", + "from pyvene import CausalModel\n", + "from pyvene.models.mlp.modelings_mlp import MLPConfig\n", + "from pyvene import create_mlp_classifier\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " VanillaIntervention,\n", + " RotatedSpaceIntervention,\n", + " LowRankRotatedSpaceIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "seed = 42\n", + "np.random.seed(seed)\n", + "random.seed(seed)\n", + "torch.manual_seed(seed)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The hierarchical equality task\n", + "\n", + "This section builds on results presented in [Geiger, Carstensen, Frank, and Potts (2020)](https://arxiv.org/abs/2006.07968). We will use a hierarchical equality task ([Premack 1983](https://www.cambridge.org/core/services/aop-cambridge-core/content/view/7DF6F2D22838F7546AF7279679F3571D/S0140525X00015077a.pdf/div-class-title-the-codes-of-man-and-beasts-div.pdf)) to illustrate the concepts. \n", + "\n", + "We define the hierarchical equality task as follows: The input is two pairs of objects and the output is **True** if both pairs contain the same object or if both pairs contain different objects and **False** otherwise. For example, `AABB` and `ABCD` are both labeled **True**, while `ABCC` and `BBCD` are both labeled **False**. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## An Algorithm that Solves the Equality Task\n", + "\n", + "Let $\\mathcal{A}$ be the simple tree-structured algorithm that solves this task by applying a simple equality relation three times: Compute whether the first two inputs are equal, compute whether the second two inputs are equal, then compute whether the truth-valued outputs of these first two computations are equal. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And here's a Python implementation of $\\mathcal{A}$ that supports the interventions we'll want to do:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "def randvec(n=50, lower=-1, upper=1):\n", + " return np.array([round(random.uniform(lower, upper), 2) for i in range(n)])\n", + "\n", + "\n", + "embedding_dim = 2\n", + "number_of_entities = 20\n", + "\n", + "variables = [\"W\", \"X\", \"Y\", \"Z\", \"WX\", \"YZ\", \"O\"]\n", + "\n", + "reps = [randvec(embedding_dim, lower=-1, upper=1) for _ in range(number_of_entities)]\n", + "values = {variable: reps for variable in [\"W\", \"X\", \"Y\", \"Z\"]}\n", + "values[\"WX\"] = [True, False]\n", + "values[\"YZ\"] = [True, False]\n", + "values[\"O\"] = [True, False]\n", + "\n", + "parents = {\n", + " \"W\": [],\n", + " \"X\": [],\n", + " \"Y\": [],\n", + " \"Z\": [],\n", + " \"WX\": [\"W\", \"X\"],\n", + " \"YZ\": [\"Y\", \"Z\"],\n", + " \"O\": [\"WX\", \"YZ\"],\n", + "}\n", + "\n", + "\n", + "def FILLER():\n", + " return reps[0]\n", + "\n", + "\n", + "functions = {\n", + " \"W\": FILLER,\n", + " \"X\": FILLER,\n", + " \"Y\": FILLER,\n", + " \"Z\": FILLER,\n", + " \"WX\": lambda x, y: np.array_equal(x, y),\n", + " \"YZ\": lambda x, y: np.array_equal(x, y),\n", + " \"O\": lambda x, y: x == y,\n", + "}\n", + "\n", + "pos = {\n", + " \"W\": (0.2, 0),\n", + " \"X\": (1, 0.1),\n", + " \"Y\": (2, 0.2),\n", + " \"Z\": (2.8, 0),\n", + " \"WX\": (1, 2),\n", + " \"YZ\": (2, 2),\n", + " \"O\": (1.5, 3),\n", + "}\n", + "\n", + "equiv_classes = {}\n", + "\n", + "equality_model = CausalModel(variables, values, parents, functions, pos=pos)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here's a visual depiction of the algorithm:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxsAAAMWCAYAAACZQJsXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB5OklEQVR4nO3dd3hUdeK28WeSIbTQUZEmIDUCIgtYsMGKCmKv6LIuSJeeZEZ/KioK755JD10CiohgAUExqCzEQlGaSonSkaIUAQkBQtq8fwQUpCUwk++U+3NdXq7MZHLvLiPz5JwzY3O73W4BAAAAgIeFmA4AAAAAEJgYGwAAAAC8grEBAAAAwCsYGwAAAAC8grEBAAAAwCsYGwAAAAC8grEBAAAAwCsYGwAAAAC8wl6YO+Xn5+vXX39VuXLlZLPZvN0EAAAAwEe53W4dPnxY1atXV0jI+Y9dFGps/Prrr6pVq5ZH4gAAAAD4vx07dqhmzZrnvU+hxka5cuX+fMDy5ctfehkAAAAAv5SRkaFatWr9uRHOp1Bj4+SpU+XLl2dsAAAAACjU5RVcIA4AAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAKxgbAAAAALyCsQEAAADAK+ymAwAA/iEzO1ObDmzS8dzjKmkvqfqV6ys8LNx0FgDAhzE2AADnlL4vXeNXjFfqxlRtObhFbrn/vM0mm+pVqqdODTqpT6s+irgswmApAMAX2dxut/tCd8rIyFCFChV06NAhlS9fvji6AAAGbT24Vb3n9tb8LfNlt9mV6849531P3t6hXgdN6DxBdSvVLcZSAEBxK8o24JoNAMBpUlalKGJshNK2pUnSeYfGqbenbUtTxNgIpaxK8XojAMA/MDYAAH8a8fUI9fykp7Jys5Sbf/6R8Xe5+bnKys1Sz096asTXI7xUCADwJ1yzAQCQVHBE48W0F89+415J30jaJumopNKS6kq6RdLlZ979xbQXVS28mp5p+Yx3YgEAfoEjGwAAbT24VQPmDTj7jemSJkjaKqmFpHsktTzxzxMk/XT2L+s/r7+2Htzq8VYAgP9gbAAA1Htu77OfNnVA0keSKknqK+mfKhga7U/8cyVJs07c729y83PVe25vbyUDAPwAYwMAglz6vnTN3zL/7GNjsaQcSfdKKvu328pK6nzi9sVnfmlufq7mb5mvn/ad49AHACDgMTYAIMiNXzFedts5LuHbIKmipKvO8cV1Tty+8ew320PsGrdi3KUFAgD8FmMDAIJc6sbUs7+9bZakw5KuuMADXCEpQ9LxM2/Kzc/VvE3zLrkRAOCfGBsAEMQOHz+sLQe3nP3Gk+Oh5AUeJOxv9/+bzQc2KzM78yLqAAD+jrEBAEFs88HNcst99htPjoxzjIg/ZZ/4e9jZb3bLrU0HNl1EHQDA3zE2ACCIHc89z5IoJSlc0p4LPMgeSeVO3P9ivg8AIGAxNgAgiJW0X+AcqYaS/pD0yzlu/+XE7Q0v8fsAAAISYwMAglj9yvVlk+3cd2gryS5prgo+OfxUR0/8eokT9zsHm2yqX7n+JZYCAPzROd7rEAAQDMLDwlWvUj1tPrj57HeoIulBSTMljVXBB/pVVMHRjO9VMDgellT53N/j6spXKzws3HPRAAC/wZENAAhynRp0OvfnbEjSNZJ6q+AzNVap4GjGKhV89kYvSRHn/lJ7iF0d63f0WCsAwL9wZAMAglyfVn00atmo89/pCkmPFP2xc/Nz1bdV34vqAgD4P45sAECQi7gsQh3qdZA9xLM/f7KH2NWhXgc1uayJRx8XAOA/GBsAAE3oPMErY2NC5wkefUwAgH9hbAAAVLdSXY3qeIFTqYpodMfRqluprkcfEwDgXxgbAABJUo+WPfR6u9c98lgj2o/QMy2f8chjAQD8FxeIAwD+9MKtL6h8aHk5vnQoNz9Xufm5hf7aUFuoSoSW0OiOoxkaAABJHNkAAJyQnZ2tIUOGaODNAzUkbIja1WknSRe8luPk7Xmb8tTlQBd1bdrV660AAP/A2AAAaOXKlWrRooUSExMlSU1rNNUXXb/Qun7r1LdV37N+0vjJTwbv26qvrNqWNFV6M/5NXXfddVq5cqWB/xYAAF/DaVQAEMSysrL0yiuvKCYm5rRfv/LKKyUVvC1ucsdkSVJmdqY2Hdik47nHVdJeUvUr1//zk8EXLlz459f+/PPPatOmjRwOh15++WWVKlWqmP7bAAB8DWMDAILUkSNH1LJlS23cuFFut/u02ypWrHjG/cPDwtWiWouzPtap98/Pz5ckWZalWbNmadWqVSpbtqynsgEAfoTTqAAgSIWEhKhSpUpnDA3p7GPjfM52f7fbrUqVKikkhD9qACBY8ScAAASp0qVLa8mSJRo3bpxsttOvx7jUsWGz2TR+/HgtXbpUpUuXvsRSAIC/YmwAQBALCQlRenq6ypYtqwEDBshutys0NFTly5cv0uOUL19eISEhstvtGjhwoMqWLav09PQzRgwAILhwzQYABLG1a9dq7Nix+u9//6uoqCgNGjRImzZtUmhoaJEex263KzU1VQ0aNFC9evVUs2ZNPf/88+rVq5euueYaL9UDAHydzX22k3X/JiMjQxUqVNChQ4eK/NMuAIBvcrvd6tChg7Zv3661a9cqLCzMY499/PhxNW3aVHXr1tXnn3/OEQ4ACCBF2QacRgUAQWrOnDlasGCBEhISPDo0JKlkyZJKSEjQ/Pnz9fHHH3v0sQEA/oMjGwAQhLKyshQREaHGjRsrNTXVK9/D7XarU6dO2rBhg9atW8fnbQBAgODIBgDgvBISErRjxw7Fx8d77XvYbDYlJCRo+/btf34yOQAguDA2ACDI7Nq1SyNGjNDAgQPVuHFjr36vxo0ba8CAAXr99df166+/evV7AQB8D2MDAILMc889pzJlymjYsGHF8v2GDRumMmXK6LnnniuW7wcA8B2MDQAIIkuXLtU777yjkSNHqkKFCsXyPStWrKgRI0Zo6tSp+vbbb4vlewIAfAMXiANAkMjPz9cNN9ygvLw8LVu2rMifpXEp8vLy1Lp1a9ntdn377bcKCeFnXQDgr7hAHABwhilTpmj58uVKTk4u1qEhSaGhoUpOTtby5cv19ttvF+v3BgCYw5ENAAgCGRkZatiwodq3b693333XWEeXLl2UlpamDRs28OcJAPgpjmwAAE7z+uuv6/Dhw3K5XEY7XC6XMjIyNGLECKMdAIDiwdgAgAC3YcMGJSYm6vnnn1fNmjWNttSqVUvPP/+8EhIStHHjRqMtAADv4zQqAAhw9957r9auXav09HSVLl3adI6OHTumJk2aqHnz5vr4449N5wAAiojTqAAAkqTPPvtMc+fOVWxsrE8MDUkqXbq0YmNj9cknn+jzzz83nQMA8CKObABAgMrOzlbz5s115ZVXauHChbLZbKaT/uR2u9WuXTvt2bNHq1evVokSJUwnAQAKiSMbAACNGTNGGzduVFJSkk8NDUmy2WxKTk7Whg0bNGbMGNM5AAAvYWwAQADau3evXnnlFfXp00fNmzc3nXNWzZs3V+/evfXKK69o3759pnMAAF7A2ACAAPTCCy8oNDRUw4cPN51yXsOHD5fNZtMLL7xgOgUA4AWMDQAIMKtWrdKkSZM0fPhwValSxXTOeVWtWlXDhw9XSkqKvv/+e9M5AAAP4wJxAAggbrdbt9xyi/744w/98MMPstvtppMuKDc3Vy1atFClSpX09ddf+9z1JQCA03GBOAAEqRkzZmjx4sVKSkryi6EhSXa7XYmJiVq0aJHee+890zkAAA/iyAYABIgjR46ocePGat26tWbNmmU6p8gefPBBrVixQuvXr1eZMmVM5wAAzoEjGwAQhCzL0r59+xQbG2s65aLExcVp7969sizLdAoAwEMYGwAQALZt26aYmBhFRkaqXr16pnMuSr169RQZGSmXy6VffvnFdA4AwAM4jQoAAsCjjz6qJUuWaP369QoPDzedc9EyMzPVqFEjtW3bVu+//77pHADAWXAaFQAEkbS0NH344YdyuVx+PTQkKTw8XJZl6YMPPtCXX35pOgcAcIk4sgEAfiw3N1ctW7ZUeHi4Fi9eHBBvG5ufn6+2bdvq6NGjWrlypd+8qxYABAuObABAkJg4caLWrl2r5OTkgBgakhQSEqLk5GStXr1aKSkppnMAAJeAIxsA4KcOHDigBg0a6IEHHtCkSZNM53hc9+7d9fHHH2vjxo2qVKmS6RwAwAkc2QCAIPDyyy8rJydHI0aMMJ3iFSNHjlR2drZefvll0ykAgIvE2AAAP7R27VqNGzdOw4YNU7Vq1UzneEW1atX00ksvaezYsVq3bp3pHADAReA0KgDwM263Wx06dND27du1du1ahYWFmU7ymuzsbDVt2lRXXXWVvvjii4C5LgUA/BmnUQFAAJs9e7YWLFighISEgB4akhQWFqb4+Hj973//05w5c0znAACKiCMbAOBHsrKyFBERocaNGys1NdV0TrFwu93q1KmTNmzYoHXr1qlUqVKmkwAgqHFkAwACVHx8vHbs2KH4+HjTKcXGZrMpISFB27dvV0JCgukcAEARMDYAwE/s2rVLI0eO1MCBA9W4cWPTOcWqcePGGjBggEaMGKFdu3aZzgEAFBJjAwD8xHPPPacyZcpo2LBhplOMGDZsmMqUKaPnn3/edAoAoJAYGwDgB5YuXap33nlHI0eOVIUKFUznGFGxYkWNGDFCU6dO1bfffms6BwBQCFwgDgA+Lj8/X9dff73y8/O1bNkyhYaGmk4yJi8vT61bt5bdbte3336rkBB+ZgYAxY0LxAEggEyZMkUrVqxQcnJyUA8NSQoNDVVycrKWL1+ut99+23QOAOACOLIBAD4sIyNDDRs2VPv27fXuu++azvEZXbp0UVpamjZs2MCfSwBQzDiyAQAB4rXXXtPhw4flcrlMp/gUl8uljIwMvf7666ZTAADnwdgAAB+1YcMGJSUl6fnnn1fNmjVN5/iUWrVq6fnnn1diYqI2btxoOgcAcA6cRgUAPqpz585at26d0tPTVbp0adM5PufYsWNq0qSJmjVrpk8++cR0DgAEDU6jAgA/N2/ePH366aeKjY1laJxD6dKlFRsbq7lz5+qzzz4znQMAOAuObACAj8nOzlbz5s1VvXp1LViwQDabzXSSz3K73Wrfvr1+++03rVmzRiVKlDCdBAABjyMbAODHRo8erY0bNyoxMZGhcQE2m01JSUnauHGjRo8ebToHAPA3jA0A8CF79uzRq6++qj59+qh58+amc/xC8+bN1bt3b73yyivau3ev6RwAwCkYGwDgQ1588UWFhoZq+PDhplP8ymuvvabQ0FC9+OKLplMAAKdgbACAj1i5cqUmTZqk4cOHq0qVKqZz/EqVKlX06quvKiUlRatWrTKdAwA4gQvEAcAHuN1u3XLLLTp06JC+//572e1200l+Jzc3Vy1atFClSpX09ddfc70LAHgJF4gDgJ+ZMWOGFi9erMTERIbGRbLb7UpKStKiRYv03nvvmc4BAIgjGwBg3JEjR9SoUSO1adNGs2bNMp3j9x588EGtWLFCP//8s8qWLWs6BwACDkc2AMCPWJal33//XbGxsaZTAkJcXJz27t0rl8tlOgUAgh5jAwAM2rZtm2JiYhQZGal69eqZzgkI9erVU2RkpFwul3755RfTOQAQ1DiNCgAMeuSRR7R06VKtX79e4eHhpnMCRmZmpho1aqSbbrpJH3zwgekcAAgonEYFAH4gLS1NM2fOlMvlYmh4WHh4uCzL0ocffqgvv/zSdA4ABC2ObACAAbm5uWrZsqXCw8O1ePFi3qbVC/Lz89W2bVsdPXpUK1eu5F2+AMBDOLIBAD7ujTfe0Nq1a5WcnMzQ8JKQkBAlJydr9erVmjhxoukcAAhKHNkAgGJ24MABNWjQQA888IAmTZpkOifgde/eXR9//LE2bNigypUrm84BAL/HkQ0A8GEvv/yycnJyNGLECNMpQWHkyJHKzs7WK6+8YjoFAIIOYwMAitHatWs1btw4DRs2TNWqVTOdExSqVauml156SWPHjtXatWtN5wBAUOE0KgAoJm63W3fccYd27NihtWvXKiwszHRS0MjOzlbTpk1Vu3ZtzZ8/n+tkAOAScBoVAPig2bNna+HChUpISGBoFLOwsDDFx8drwYIFmjNnjukcAAgaHNkAgGKQlZWliIgINW7cWKmpqaZzgpLb7VanTp20fv16paenq1SpUqaTAMAvcWQDAHxMfHy8duzYoYSEBNMpQctmsykhIYH/HwCgGDE2AMDLdu3apZEjR2rgwIFq1KiR6Zyg1rhxYw0YMEAjRozQrl27TOcAQMBjbACAlzmdTpUtW1bDhg0znQJJw4YNU5kyZfTcc8+ZTgGAgMfYAAAvWrJkiaZNm6aRI0eqQoUKpnMgqWLFiho5cqTeeecdLV261HQOAAQ0LhAHAC/Jz8/X9ddfr/z8fC1btkyhoaGmk3BCXl6eWrduLbvdrm+//VYhIfzsDQAKiwvEAcAHvPXWW1qxYoWSk5MZGj4mNDRUycnJWr58uaZMmWI6BwACFkc2AMALMjIy1KBBA/3zn//Uu+++azoH59ClSxelpaVpw4YN/PkGAIXEkQ0AMOy1115TZmamXC6X6RSch8vlUkZGhl5//XXTKQAQkBgbAOBhGzZsUFJSkp5//nnVrFnTdA7Oo1atWnr++eeVmJioDRs2mM4BgIDDaVQA4GGdO3fWunXrlJ6ertKlS5vOwQUcO3ZMTZo0UbNmzfTJJ5+YzgEAn8dpVABgyLx58/Tpp58qNjaWoeEnSpcurdjYWM2dO1efffaZ6RwACCgc2QAAD8nOzlazZs1Uo0YNLViwQDabzXQSCsntdqt9+/b67bfftHr1aoWFhZlOAgCfxZENADBg9OjR2rRpkxITExkafsZmsykpKUkbN27UmDFjTOcAQMBgbACAB+zZs0evvvqq+vTpo+bNm5vOwUVo3ry5evfurVdeeUV79+41nQMAAYGxAQAe8MILLyg0NFTDhw83nYJL8Nprryk0NFQvvPCC6RQACAiMDQC4RCtXrtTkyZM1fPhwValSxXQOLkGVKlX06quvatKkSVq1apXpHADwe1wgDgCXwO1265ZbbtGhQ4f0/fffy263m07CJcrNzVWLFi1UsWJFffPNN1x/AwB/wwXiAFBMpk+frsWLFysxMZGhESDsdruSkpK0ePFizZgxw3QOAPg1jmwAwEU6cuSIGjVqpDZt2mjWrFmmc+BhDz74oFasWKGff/5ZZcuWNZ0DAD6DIxsAUAz++9//6vfff1dcXJzpFHhBXFyc9u3bJ8uyTKcAgN9ibADARdi6datiYmIUFRWlunXrms6BF9SrV0+RkZGKiYnRtm3bTOcAgF/iNCoAuAiPPPKIli5dqvXr1ys8PNx0DrwkMzNTjRo10o033qgPP/zQdA4A+AROowIAL0pLS9PMmTPlcrkYGgEuPDxclmVp5syZSktLM50DAH6HIxsAUAS5ubm67rrrVL58eS1atIi3RQ0Cbrdbbdu2VWZmplatWsW7jgEIehzZAAAveeONN7Ru3TolJSUxNIKEzWZTUlKS1qxZo4kTJ5rOAQC/wpENACikAwcOqEGDBnrggQc0adIk0zkoZt27d9ecOXO0ceNGVa5c2XQOABjDkQ0A8IKXX35ZOTk5GjFihOkUGDBy5Ejl5OTolVdeMZ0CAH6DsQEAhbB27VqNGzdOw4YNU7Vq1UznwIBq1arppZde0tixY7V27VrTOQDgFziNCgAuwO1264477tCOHTu0du1ahYWFmU6CIdnZ2WratKlq166t+fPnc90OgKDEaVQA4EGzZ8/WwoULlZCQwNAIcmFhYYqPj9eCBQs0Z84c0zkA4PM4sgEA55GVlaWIiAg1btxYqamppnPgA9xutzp16qT169crPT1dpUqVMp0EAMWKIxsA4CFxcXHasWOHEhISTKfAR9hsNiUkJGjHjh2Kj483nQMAPo2xAQDnsGvXLo0cOVIDBw5Uo0aNTOfAhzRu3FgDBgzQyJEjtWvXLtM5AOCzGBsAcA5Op1Ph4eEaNmyY6RT4oGHDhqlMmTJ67rnnTKcAgM9ibADAWSxZskTTpk3TyJEjVaFCBdM58EEVK1bUyJEj9c4772jp0qWmcwDAJ3GBOAD8TX5+vtq0aSO3261ly5YpNDTUdBJ8VF5enlq3bq3Q0FB99913CgnhZ3gAAh8XiAPAJXjrrbe0cuVKJScnMzRwXqGhoUpOTtaKFSs0ZcoU0zkA4HM4sgEApzh06JAaNmyoO+64Q9OmTTOdAz/x5JNPauHChdqwYQN/TgIIeBzZAICL9PrrryszM1OWZZlOgR+xLEsZGRl6/fXXTacAgE9hbADACRs2bFBSUpKef/551axZ03QO/EitWrX0/PPPKzExURs2bDCdAwA+g9OoAOCEe+65R+np6UpPT1fp0qVN58DPHDt2TE2aNFHTpk01d+5c0zkA4DWcRgUARZSamqrU1FTFxsYyNHBRSpcurdjYWH366aeaN2+e6RwA8Akc2QAQ9LKzs9WsWTPVqFFDCxYskM1mM50EP+V2u9W+fXv99ttvWr16tcLCwkwnAYDHcWQDAIpg1KhR2rRpk5KSkhgauCQ2m01JSUnauHGjRo8ebToHAIxjbAAIanv27NHw4cPVp08fNWvWzHQOAkDz5s3Vu3dvvfrqq9q7d6/pHAAwirEBIKi98MILCg0N1fDhw02nIIC89tprCg0N1QsvvGA6BQCMYmwACForV67U5MmTNXz4cFWpUsV0DgJIlSpV9Oqrr2rSpElauXKl6RwAMIYLxAEEJbfbrZtvvlkZGRn6/vvvZbfbTSchwOTm5qpFixaqWLGivvnmG64HAhAwuEAcAC5g+vTpWrJkiRITExka8Aq73a6kpCQtXrxYM2bMMJ0DAEZwZANA0Dly5IgaNWqkNm3aaNasWaZzEOAefPBBrVixQj///LPKli1rOgcALhlHNgDgPP773//q999/V1xcnOkUBIG4uDjt27dPlmWZTgGAYsfYABBUtm7dqpiYGEVFRalu3bqmcxAE6tWrp8jISMXExGjbtm2mcwCgWHEaFYCg8sgjj2jp0qVav369wsPDTecgSGRmZqpRo0a66aab9MEHH5jOAYBLwmlUAHAWaWlpmjlzplwuF0MDxSo8PFyWZenDDz9UWlqa6RwAKDYc2QAQFHJzc3XdddepfPnyWrRoEW9DimLndrvVtm1bZWZmatWqVbwLGgC/xZENAPibN954Q+vWrVNSUhJDA0bYbDYlJSVpzZo1mjhxoukcACgWHNkAEPAOHDigBg0a6IEHHtCkSZNM5yDIde/eXXPmzNHGjRtVuXJl0zkAUGQc2QCAUwwbNkw5OTkaOXKk6RRAI0eOVE5Ojl5++WXTKQDgdYwNAAFtzZo1GjdunIYNG6YrrrjCdA6gatWq6aWXXtK4ceO0du1a0zkA4FWcRgUgYLndbt1xxx3auXOn1qxZo7CwMNNJgCQpOztbTZs2Ve3atTV//nyuIwLgVziNCgAkffTRR1q4cKESEhIYGvApYWFhSkhI0IIFCzR79mzTOQDgNRzZABCQsrKy1KRJEzVp0kSpqammc4AzuN1uderUSevXr1d6erpKlSplOgkACoUjGwCCXlxcnHbu3KmEhATTKcBZ2Ww2JSQkaMeOHYqPjzedAwBewdgAEHB27typkSNHatCgQWrUqJHpHOCcGjdurIEDB2rkyJHatWuX6RwA8DjGBoCA89xzzyk8PFwvvfSS6RTggl566SWVKVNGzz33nOkUAPA4xgaAgLJkyRJNmzZNI0eOVIUKFUznABdUsWJFjRw5Uu+8846WLl1qOgcAPIoLxAEEjPz8fLVp00aStGzZMoWE8PMU+Ie8vDy1adNGISEh+u677/i9C8CncYE4gKD01ltvaeXKlUpKSuLFGvxKaGiokpKStGLFCk2ZMsV0DgB4DEc2AASEQ4cOqWHDhrrjjjs0bdo00znARXnyySe1cOFCbdiwgT9vAfgsjmwACDqvv/66MjMzZVmW6RTgolmWpYyMDL3++uumUwDAIxgbAPzehg0blJSUpOeff141a9Y0nQNctFq1aun5559XYmKiNmzYYDoHAC4Zp1EB8Hv33HOP0tPTlZ6ertKlS5vOAS7JsWPH1KRJEzVt2lRz5841nQMAZ+A0KgBBIzU1VampqYqNjWVoICCULl1asbGx+vTTTzVv3jzTOQBwSTiyAcBvZWdnq1mzZqpRo4YWLFggm81mOgnwCLfbrfbt2+u3337T6tWrFRYWZjoJAP7EkQ0AQWHUqFHatGmTkpKSGBoIKDabTUlJSdq4caNGjx5tOgcALhpjA4Bf2rNnj4YPH64+ffqoWbNmpnMAj2vevLl69+6tV199VXv37jWdAwAXhbEBwC+98MILCg0N1fDhw02nAF7z2muvKTQ0VC+88ILpFAC4KIwNAH5n5cqVmjx5sl577TVVqVLFdA7gNVWqVNHw4cM1adIkrVy50nQOABQZF4gD8Ctut1s333yzMjIy9P3338tut5tOArwqNzdXLVq0UMWKFfXNN99wfRIA47hAHEDAmj59upYsWaKkpCSGBoKC3W5XUlKSFi9erBkzZpjOAYAi4cgGAL9x5MgRNWrUSNdff71mzpxpOgcoVg899JCWLVum9evXq2zZsqZzAAQxjmwACEj//e9/9fvvvys2NtZ0ClDsYmNj9fvvv8uyLNMpAFBojA0AfmHr1q2KiYlRVFSU6tatazoHKHb16tVTZGSkYmJitG3bNtM5AFAonEYFwC88/PDD+u677ziFBEEtMzNTjRo10o033qgPP/zQdA6AIMVpVAACysKFCzVr1ixZlsXQQFALDw+XZVmaOXOm0tLSTOcAwAVxZAOAT8vNzdV1112n8uXLa9GiRbztJ4Ke2+1W27ZtlZmZqVWrVvGubACKHUc2AASMCRMmaN26dUpOTmZoAJJsNpuSk5O1Zs0avfHGG6ZzAOC8GBsAfNb+/fv10ksvqVu3bvrHP/5hOgfwGa1atVK3bt300ksv6cCBA6ZzAOCcGBsAfNbLL7+s3NxcjRw50nQK4HNGjhypnJwcvfzyy6ZTAOCcGBsAfNKaNWs0btw4DRs2TFdccYXpHMDnVKtWTS+99JLGjRuntWvXms4BgLPiAnEAPsftduuOO+7Qzp07tWbNGoWFhZlOAnxSdna2mjZtqtq1a2v+/Plc1wSgWHCBOAC/9tFHH2nhwoVKSEhgaADnERYWpoSEBC1YsECzZ882nQMAZ+DIBgCfkpWVpSZNmqhJkyZKTU01nQP4PLfbrU6dOmn9+vVKT09XqVKlTCcBCHAc2QDgt+Li4rRz504lJCSYTgH8gs1mU0JCgnbs2KH4+HjTOQBwGsYGAJ+xc+dOjRw5UoMGDVKjRo1M5wB+o3Hjxho4cKBGjhypXbt2mc4BgD8xNgD4jOeee07h4eF66aWXTKcAfuell15SmTJl9Nxzz5lOAYA/MTYA+IQlS5Zo2rRpGjlypCpUqGA6B/A7FStW1MiRI/XOO+9o6dKlpnMAQBIXiAPwAfn5+WrTpo0kadmyZQoJ4ecgwMXIy8tTmzZtFBISou+++47nEgCv4AJxAH7lrbfe0sqVK5WUlMSLI+AShIaGKikpSStWrNCUKVNM5wAARzYAmHXo0CE1bNhQd9xxh6ZNm2Y6BwgITz75pBYuXKgNGzbw5zYAj+PIBgC/8dprrykzM1OWZZlOAQKGy+XS4cOH9dprr5lOARDkGBsAjFm/fr2SkpL0/PPPq2bNmqZzgIBRs2ZNPffcc0pKStKGDRtM5wAIYpxGBcCYe+65R+np6UpPT1fp0qVN5wAB5dixY4qIiNA111yjuXPnms4BEEA4jQqAz0tNTVVqaqri4uIYGoAXlC5dWrGxsfr00081b9480zkAghRHNgAUu+zsbDVr1kw1atTQggULZLPZTCcBAcntdqt9+/b67bfftHr1aoWFhZlOAhAAOLIBwKeNGjVKmzZtUlJSEkMD8CKbzaakpCRt3LhRo0ePNp0DIAgxNgAUqz179mj48OHq27evmjVrZjoHCHjNmzdXnz599Oqrr2rPnj2mcwAEGcYGgGL1wgsvKDQ0VK+++qrpFCBoDB8+XKGhoXrxxRdNpwAIMowNAMVm5cqVmjx5sl577TVVqVLFdA4QNKpUqaLhw4dr0qRJWrlypekcAEGEC8QBFAu3262bb75ZGRkZ+v7772W3200nAUElNzdXLVq0UMWKFfXNN99wvRSAi8YF4gB8zvTp07VkyRIlJSUxNAAD7Ha7kpKStHjxYs2YMcN0DoAgwZENAF535MgRNWrUSNdff71mzpxpOgcIag899JCWLVum9evXq2zZsqZzAPghjmwA8Cn//e9/9fvvvys2NtZ0ChD0YmNj9fvvv8uyLNMpAIIAYwOAV23dulUxMTGKiopS3bp1TecAQa9evXqKjIxUTEyMtm3bZjoHQIDjNCoAXvXwww/ru+++45QNwIdkZmaqUaNGuvHGG/Xhhx+azgHgZ4qyDbhKE8BFy8zO1KYDm3Q897hK2kuqfuX6Cg8L//P2hQsXatasWXrnnXcYGoAPCQ8Pl2VZ6tq1q9LS0tSuXbvTbr/QcxsACosjGwCKJH1fusavGK/UjanacnCL3PrrXyE22VSvUj11atBJPVr00FN3PqXy5ctr0aJFvM0m4GPcbrfatm2rzMxMrVq1ShsObijUc7tPqz6KuCzCYDkA04qyDRgbAApl68Gt6j23t+ZvmS+7za5cd+457/vn7Zul2T1m6/5b7y/GUgCFtWLFCrW5q41av9pay/YvK/Rzu0O9DprQeYLqVuI6LCAY8W5UADwqZVWKIsZGKG1bmiSd98XIqbeH1g/VE988oZRVKV5vBFB0P4T8oJJDSmrVwVWSCv/cTtuWpoixETy3AVwQYwPAeY34eoR6ftJTWblZys0//wuRv8tz5ykrN0s9P+mpEV+P8FIhgIvx53M7r+jP7dz8XJ7bAAqFC8QBnOb999/X448/rlmzZmn/Vfv1YtqLf904TtIeSU9L+vvZE/GSyku6T9J4Sc0lPfDXzS+mvajy7vIa+cRI1a5dW0uXLlVICD/vAExo1raZ1q5aK/WX9PfrvrMkjZZUQdJhSRnnf6wXP3pR1SZX0zMtn/FGKgA/x9gAcJqbb75ZkvTp/z7VtOrT/rohS9JeFRwP3a7Tx8YhFbwgaSrpckltJX0jqYWkOn/dbUj0EGmfNG/ePIYGYMjWg1u14YYN0nJJn0l65G93WCDpqKR/STooKfscD7RM0i5JNaX+8/qrfd32XMMB4Az8aQ/gNNWrV1fdunX1wWcfnH5qxU5JbkkRKhgbpzr5z7VP/P1WSZUkfSLp5EPskPJW5KlGhxpq0aKFl+oBXEjvub2VXzFfuk3SWkmbTrlxl6QVkm6UVE1SE0nXnuWvsifu20hS64LTqnrP7V18/yUA+A3GBoAzNGvVTBnbMpR7/JSxsV0FRy0aqGB45Ov026S/xkYJSZ0l7Ze0SFKeCoZHeWl7y+36ad9PXu0HcHbp+9I1f8v8gh8k3CjpCkmfSspRwXN6rgpOn7rtPA9yWNJHKjht8sQbzeXm52r+lvk8twGcgbEB4AyHqx0ueOGx85Rf3CGp1om/jqvglKpTb6sqqcwpv3a1Ck6r+kZS6on7d5Tspewat2KcF+sBnMv4FeNlt504gzpU0r2S/pD0tQpOi/pNBT8oCDvHA+RLmqWC06we1mnPeXsIz20AZ2JsADjDpvAT51WcPGKRp4LhUUtSZRWcQnHytuMquGi8ts50twqOcqyU1Ljgr9z8XM3bNM9b6QDOI3Vj6ulvb1tTUmtJiyUtVMEPCOqf5wG+kbRVBUc+rjr9Jp7bAM6GsQHgNIePH9aOsB1Saf01KPao4DSLWif+uZYKjmboxN/dOvvYKHHiL6ngSMcJmw9sVmZ2pmfDAZzX4eOHteXgljNvaK+CIxQ2FfyA4Fx+kfSlCt704daz34XnNoC/Y2wAOM3mg5sLXnTU0l/XZmxXwdGMKifuVEt/DZGTo+NsY2OBpEwVnGKVJulYwS+75damA5vO8gUAvGXzwc1yy33mDaVU8NwurzPfBveko5I+VMEPIR7SOV898NwG8HeMDQCnOZ57vOA/1NZf12acvF7jpFr66+1ut0sqp4LTq061SwVvrXm9Ct5aM0vS/LN8HwDF4qKfc24VXBB+WAWfnVPeS98HQEBibAA4TUl7yYL/cPJIxfYTf506Nqqr4OLSbfrrWo5T5avg3afKSWqngrfQvF7SKv15JOTP7wOgWFz0c26ppI2SbpDU0IvfB0BAYmwAOE39yvVlk61gUNglrVbBTzRPHRR2SVeq4N1rcnTmKVTfSdotqaOkk6872qngJ6JzJeUVfB8AxefP53ZR7JL0PxU83++48N1tsvHcBnAaxgaA04SHhatepXoFg6K6Co5chJ74z6c6eU2HdPrYOKSC6zMaquADwU4KU8H42CNVWVNF4WHnOjkcgDf8+dwurGxJH6jgSGVDSesk/XiWvzb/9SVXV76a5zaA0zA2AJyhU4NOBe/Ff3JEnDzKcaqTt4Wp4DSpk1JVcI53p7M8cBPJ1tCmjM8ztGPHjrPcAYA3/fncLowjKvgMDkn6SgXXbZztr68L7mIPsatj/Y6ezAUQAGxut/ssb01xuoyMDFWoUEGHDh1S+fIXuDIMgN9L35eua8Ze473H75euJpc1ufAdAXgUz20AnlCUbcCRDQBniLgsQh3qdZA9pJA/AS0ke4hdHep14MUIYAjPbQDFjbEB4KwmdJ7glRckEzpP8OhjAigantsAihNjA8BZ1a1UV6M6jvLoY47uOFp1K9X16GMCKBqe2wCKE2MDwDn1aNlDr7d73SOPNaL9CD3T8hmPPBaAS8NzG0BxYWwAOK8Xbn1BE++dqFL2UkU+9cIeYlcpeyml3Jui/7vl/7xUCOBi8NwGUBwYGwAuqEfLHvqx14+qlVvwyX4XemFy8vZ2ddopvV86P/UEfFSPlj2U3i9d7eq0k3Th53aoLVSSdPtVt/PcBlAonr1CDEBA2rdvnx755yPaumarXkh8QRkNMzRv0zxtPrBZbv317tk22XR15avVsX5H9W3Vl3emAfxA3Up19UXXL5S+L13jV4w/73O7xtEa+ir2K+25co/KdSpnsBqAv2BsADivlStX6r777tOvv/4qSWpWrZke7/i4JCkzO1Pdo7rrg1kfaO6cubqt2W18ejDgpyIui1Byx2RJ0uqfV+vadtfqoUcf0kv/95LqV66v8LBwzZgxQ1/9/pXW/L5G1157rT755BO1bNnScDkAX8ZpVADO6e2339aNN96o3bt3//lrx48f//M/h+aFat6b86Rd0pwJcxgaQIBIjk2WdktfvPmFGlVo9Odz+9Tn/+7du3XjjTdq6tSppjIB+AHGBoCzeuGFF/T0008rJydH+fn5f/76qS82JkyYoMzMTEnS5MmTtX379mLvBOBZv/zyi9566y1JUmZmpiZM+OvzM059/ufn5ys7O1v//ve/9eKLLxZ3JgA/wdgAcFY///yzJCk0NPTPXwsJCfnzxcaxY8c0YsSI075m5MiRxRcIwCv+/rweMWKEjh07JqlgbISE/PXS4eS/H3766afiCwTgVxgbAM7qww8/1FdffaUrr7xSUsGLivz8fGVlZUkqOKqxf//+P++fl5enSZMmcXQD8GO//PKLJk+erLy8vD9/bf/+/X8e3cjKylJ+fv6fI6N69er6+uuv9eGHHxrpBeD7GBsAzspms6lhw4bat2+fBg0apC5duig0NFTly5dXdna2RowYIbfbfdrX5ObmyrIsQ8UALpVlWacNDUlyu90aMWKEsrOzVaFCBYWGhqpLly4aOHCg9u7dqwYNGshmsxkqBuDreDcqAOeUlJSksLAwvfLKK6pYsaLGjh2rMmXKKC8vT9dff7327t2r33//XVu3btU//vEPhYSEqG7duqazAVykq6++Wm3atFF+fr5WrFihevXqqWrVqrr88sslSc8884y6dOmicuXK6Y8//tCbb76p5ORkTqEEcE42999/NHkWGRkZqlChgg4dOqTy5csXRxcAwzIyMlS7dm316tVLLpfrnPd7++239fTTT+v48eMKCwsrxkIA3pKdna2SJUtqypQp+ve//33O+0VHR2vixInavn07rw+AIFKUbcBpVADOasKECTp27JgGDx5sOgWAjxo8eLCOHj2qN954w3QKAB/F2ABwhuPHjyshIUFdu3ZV9erVTecA8FE1atRQ165dlZCQcNrb4gLASYwNAGd4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7d+/33QO4HWMDQS80aNHS5L69+9vuAQAAGnAgAFyu91//vkEBDLGBgLakSNHNGrUKPXo0UNVq1Y1nQMAgKpWrapnnnlGo0aN0pEjR0znAF7F2EBAmzRpkg4dOqShQ4eaTgEA4E+RkZH6448/NHnyZNMpgFcxNhCwcnJyFBcXpyeeeEJ16tQxnQMAwJ/q1Kmjxx9/XHFxccrJyTGdA3gNYwMB67333tP27dsVHR1tOgUAgDNER0frl19+0fvvv286BfAaxgYCktvtlsvl0t13361rr73WdA4AAGdo0aKF7rrrLrlcLrndbtM5gFcwNhCQ5s2bpzVr1sjpdJpOAQDgnJxOp1avXq3PPvvMdArgFYwNBCTLstSmTRvddtttplMAADin22+/Xa1bt5ZlWaZTAK9gbCDgfPvtt/r666/ldDpls9lM5wAAcE42m01Op1NfffWVvvvuO9M5gMcxNhBwLMtSw4YNdf/995tOAQDggh544AE1aNCAoxsISIwNBJSff/5Zc+bMUXR0tEJDQ03nAABwQaGhoYqOjtbs2bO1fv160zmARzE2EFBiY2NVrVo1de3a1XQKAACF1rVrV11xxRWKjY01nQJ4FGMDAePXX3/V1KlTNXjwYJUsWdJ0DgAAhVaqVCkNHjxYb7/9tn777TfTOYDHMDYQMBITE1WqVCn17t3bdAoAAEXWp08flSpVSomJiaZTAI9hbCAg/PHHHxo/frz69u2rChUqmM4BAKDIKlSooD59+mj8+PE6dOiQ6RzAIxgbCAjjx4/X8ePHNWjQINMpAABctEGDBikrK0vjx483nQJ4BGMDfi8rK0uJiYn697//rSuvvNJ0DgAAF6169erq2rWrEhMTlZWVZToHuGSMDfi9t99+W3v37lV0dLTpFAAALll0dLT27NmjqVOnmk4BLhljA34tLy9PMTExevDBB9WwYUPTOQAAXLJGjRrpgQceUExMjPLy8kznAJeEsQG/9tFHH2nTpk1yOp2mUwAA8Bin06mNGzdq9uzZplOAS8LYgN9yu92yLEu333672rRpYzoHAACPuf7663XbbbfJsiy53W7TOcBFY2zAb6WlpWnFihUc1QAABCSn06nly5fryy+/NJ0CXDTGBvyWZVm69tprddddd5lOAQDA4+6++241b95clmWZTgEuGmMDfumHH37QF198IYfDIZvNZjoH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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Timesteps: {'W': 0, 'X': 0, 'Y': 0, 'Z': 0, 'WX': 1, 'YZ': 1, 'O': 2}\n" + ] + } + ], + "source": [ + "equality_model.print_structure()\n", + "print(\"Timesteps:\", equality_model.timesteps)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### The algorithm with no intervention\n", + "\n", + "Let's first observe the behavior of the algorithm when we provide an input of the form `BBCD` with no interventions. Here is a visual depiction:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "No intervention:\n", + " defaultdict(None, {'W': array([ 0.28, -0.95]), 'X': array([ 0.28, -0.95]), 'Y': array([-0.45, -0.55]), 'Z': array([ 0.78, -0.83]), 'WX': True, 'YZ': False, 'O': False}) \n", + "\n" + ] + }, + { + "data": { + "image/png": "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TsDY8EBz587Vzp07FRISYjoFAADghqxWq3bs2KF58+aZToETMDY8jMPhkM1m06OPPqp69eqZzgEAALihevXq6ZFHHpHNZpPD4TCdg0zG2PAwP/30k9atWyer1Wo6BQAAIEOsVqvWrl2rZcuWmU5BJmNseBibzaYaNWroqaeeMp0CAACQIc2aNVP16tVls9lMpyCTMTY8yG+//aZFixYpJCREFovFdA4AAECGWCwWhYSEaOHChdq0aZPpHGQixoYHsdvtuueee9S6dWvTKQAAALekdevWKlWqlOx2u+kUZCLGhofYu3evvvjiC/Xv319+fn6mcwAAAG5JtmzZ1L9/f82YMUN79+41nYNMwtjwEOHh4cqXL586dOhgOgUAAOC2vPXWW8qXL58iIiJMpyCTMDY8wPHjxzVx4kT17NlTuXLlMp0DAABwW3LlyqUePXpowoQJOnHihOkcZALGhgeIjY2VxWJRjx49TKcAAADckX++nomNjTVcgszA2HBz58+fV2xsrDp27KiCBQuazgEAALgjhQoVUseOHTVixAidP3/edA7uEGPDzU2YMEFnzpxRv379TKcAAABkin79+unMmTOaOHGi6RTcIcaGG0tOTlZERITatGmje+65x3QOAABApihdurReeeUVhYeHKzk52XQO7gBjw4198cUX2rdvn0JCQkynAAAAZKqQkBDt27dPM2fONJ2CO8DYcFMOh0N2u13NmjVT9erVTecAAABkqho1auipp56S3W6Xw+EwnYPbxNhwUwsXLtTmzZtltVpNpwAAADiF1WrVpk2btGjRItMpuE2MDTdls9lUr149PfLII6ZTAAAAnOLRRx9V3bp1ZbPZTKfgNjE23NDPP/+sZcuWyWq1ymKxmM4BAABwCovFIqvVqp9++klr1qwxnYPbwNhwQzabTRUrVtRzzz1nOgUAAMCpnnvuOVWoUIGjG26KseFmtm3bpnnz5ik4OFg+PvzPBwAAPJuvr6+Cg4M1d+5cbd++3XQObhFfrbqZ0NBQFS1aVK+//rrpFAAAgCzRtm1bFSlSRKGhoaZTcIsYG27k4MGDmjJlivr06aPs2bObzgEAAMgS2bNnV58+fTRlyhQdOnTIdA5uAWPDjURFRSkgIEBdunQxnQIAAJClunTpohw5cigqKsp0Cm4BY8NN/PXXXxo7dqy6deumPHnymM4BAADIUnnz5lW3bt00ZswY/fXXX6ZzkEGMDTcxevRoJSUlqXfv3qZTAAAAjOjdu7cuXbqkMWPGmE5BBjE23EBiYqKio6PVrl07FSlSxHQOAACAEUWLFlW7du0UHR2txMRE0znIAMaGG/jss8907NgxBQUFmU4BAAAwKigoSEePHtWUKVNMpyADGBsuLjU1VaGhoXr++edVvnx50zkAAABGVahQQa1atVJoaKhSU1NN5+AmGBsu7quvvtKuXbtktVpNpwAAALgEq9WqnTt3au7cuaZTcBOMDRfmcDhks9nUuHFj1alTx3QOAACAS6hbt64aNWokm80mh8NhOgc3wNhwYXFxcVq/fj1HNQAAAP7DarVq3bp1+vHHH02n4AYYGy7MZrOpZs2aeuKJJ0ynAAAAuJQnn3xS9913n2w2m+kU3ABjw0X98ssvWrx4sUJCQmSxWEznAAAAuBSLxaKQkBB99913+vXXX03n4DoYGy7KbrerTJkyeumll0ynAAAAuKSXX35ZpUuXlt1uN52C62BsuKA//vhDM2fOVP/+/eXn52c6BwDgZc4nn5elqEV/pvypX4/8qoSkBNNJwDX5+fmpf//++uKLL7Rnzx7TObgGxoYLCg8PV4ECBdS+fXvTKQAALxF/PF69FvZSuZhyKhhWUI4uDg3aP0i1xtZSnv/lUbmYcuq1sJfij8ebTgWu0KFDBxUoUEDh4eGmU3ANjA0Xc+zYMU2aNEm9evVSQECA6RwAgIfbc3qPnpjyhKqOqqrR60Zr9+ndcujKtxJ1yKHdp3dr9LrRqjqqqp6Y8oT2nOa7yHANAQEB6tmzpyZNmqTjx4+bzsF/MDZczIgRI+Tr66u3337bdAoAwMNN2DhBVUZVUdzeOElSiiPlho//5/64vXGqMqqKJmyc4PRGICPefvttWSwWjRgxwnQK/oOx4UISEhI0cuRIderUSQUKFDCdAwBwkkaNGslischisahFixZGGoYtG6ZO33RSYkqiUtJuPDL+KyUtRYkpier0TScNWzbMSYXO1adPn/T/DQIDA03n4A4VLFhQnTp1UmxsrBISuMbIlTA2XMiECRN07tw59e3b13QKAOA/mjVrpvz58+vo0aNX3XfmzBkVLVpU9erVU1paWoaer1KlSpoyZYqCgoIy3DBx4kRVrlxZOXLkUPny5W/7u7it3m6l9x59Txp5jTs/kfTBNX5NufZzvRf3niZunHjTz5mWlpb+Tos5cuRQjRo1NH369Az1fvrpp+nD4L+/jhw5csVjS5cufc3Hde3a9YrHtW3bVlOmTNHDDz+coQa4vn79+uns2bOaOPHm/z4i6/BWRy4iOTlZERERatOmjUqVKmU6BwDwH6NGjVK1atXUt29fff7551fc9+677+rEiRNatGiRfHwy9n28woUL6/XXX8/w5x87dqy6du2qF154Qf369dPy5cvVq1cvXbhwQVarNcPPs2rLKs0dP1fKdoMH5ZH02H9uy339h/dY2ENNyjRRmfxlrvuYgQMH6uOPP1anTp1Up04dzZs3T6+++qosFoteeeWVDLUPHTpUZcpc+Tny5ct31eNq1qyp/v37X3FbhQoVrvj9Aw88oAceeEA//PCDNm7cmKHPD9dWqlQptWnTRhEREerevbuyZbvRv+TIKowNFzF9+nTt379fISEhplMAANdQpkwZDR48WFarVW+++aaeeOIJSdK6des0ZswYBQUF6b777nPK57548aIGDhyop59+WrNmzZIkderUSWlpafrwww/VuXNn5c+fP0PP9XzH52UpYZEjzSFduM6Dsku6hT9KSlqKunzbRYvbLr7m/QcPHlR4eLjefvttxcbGSpI6duyoRx99VMHBwXrppZfk6+t708/TrFkz1a5d+6aPK168+C0NOXiOkJAQTZ06VTNmzFDbtm1N50CcRuUS/jm0/PTTT6tatWqmcwAA19GvXz/VqFFD3bt3V2JiolJTU9W1a1fdc889evfdd7Vt2zYdPnw40z9vXFycTp48qe7du19x+9tvv63z589r/vz5GXqez77+TEfXHpXjKcfNH5wq6VLG+lLSUvT9H9/r9+O/X/P+efPmKTk5+Yp+i8Wibt266cCBA1q9enXGPpGkc+fOKTU19aaPS0pK0vnz5zP8vPAM1atXV/PmzWW32+VwZODfczgdY8MFLFiwQFu3br2lw+AAgKzn5+encePGac+ePfrwww8VGxurjRs3avTo0Tp9+rQqV66sAQMGZPrn/eWXXyTpqu/qP/DAA/Lx8Um//0ZSU1PVr08/WR6wSIVv8uCTkoZL+p+kUElLdXl83ICfj59Grx993f5cuXKpcuXKV9xet27d9PszonHjxsqTJ48CAgL07LPPaufOndd83NKlSxUQEKDAwECVLl1a0dHRGXp+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XO75UJ9Q4sLilM2KiIiI3IHUBix/mrNRjLjEOCIPRLLtxDZOJp3EyLNduAkTjWo2oodfD0a3HX1HrjggIiIiIvbUBiycJog7yNWMq5xIOkF6VjpuZjf8avqVeGdwEREREbkzqQ1o61ZyA8ftknIXquJahVb3t6roMERERETkNlIbsPQ0Z0NERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIc0kqGYYBQEpKikODERERERGR37bcnCA3RyhKiZKN1NRUABo0aFCGsERERERE5G6RmppK9erVi6xjMkqQkuTk5HD+/HmqVq2KyWQqtwBFREREROTOYhgGqamp1K1bFyenomdllCjZEBERERERuVWaIC4iIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhD/D+cTS+SSHjpOQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "setting = equality_model.run_forward(\n", + " {\"W\": reps[0], \"X\": reps[0], \"Y\": reps[1], \"Z\": reps[3]}\n", + ")\n", + "print(\"No intervention:\\n\", setting, \"\\n\")\n", + "equality_model.print_setting(setting)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### The algorithm with an intervention\n", + "\n", + "Let's now see the behavior of the algorithm when we provide the input with an intervention setting **WX** to **False**. First, a visual depiction:\n", + "\n", + "And then the same computation with `compute_A`:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Intervention setting WX to FALSE:\n", + "\n" + ] + }, + { + "data": { + "image/png": "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3bRpUzVt2jQTSgG4M8YG4AZmz54ti8Wir7766ob7HnjgAVksFsXFxd1wX9myZdWoUSNJ0s6dO+Xv76+OHTve8Lg///xTJUqUUMOGDZWampp2+8QtE/Ve3Hu3D4yT9MFNfm289pD34t7TpC2Tbv9cgBdr2bKlChQooBMnTtxw3/nz59Nep2XLlpXFYrnlr7feeuumn+eWr+1I3fz1nHTjw3ltA7gV3o0KcANNmjSRJK1atUpt27ZNu/3ChQvavn27/Pz8tHr16uveUebw4cM6fPiwXnvtNUlS9erVFRwcrBEjRuitt97S448/nvbYd999V6dOndLSpUvl43PtexAHzh1Q76W97yz0GUn+/7qt9P//215Le+mJ8k9wnjdwE6NHj1bNmjXVv39/ffbZZ9fd97///U+nT5/W119/rQMHDig+Pj7d54iNjdX69ev18MMPp3t/hl7bxSU9ks7tvuk/nNc2gJthbABuoGTJkipfvrxWrVp13e1r166Vw+HQyy+/fMN9f//z30NFkgYPHqzPP/9c3bp109atW+Xv76+1a9dq/Pjx6t+/v+rUqZP22G6Lut3xqRWqLukW73CbnJqsbou66dv2397Z8wJeonz58nr//fdltVr11ltv6amnnpIkbdy4UWPHjlVQUJAeeOABPfDAA+l+/LfffqsNGzboueeeU/fu3dN9TIZe23kkpf8p0sVrG8DNcBoV4CaaNGmin376SVeuXEm7bfXq1apRo4ZatmypdevWXXcK1OrVq2WxWNS4ceO023LkyKExY8Zo9+7d+r//+z8lJSWpa9euKlOmjIYNG5b2uJ2ndmrZ3mVKPpEsXcyE+OOSvpKSI5K1rOMyFS5aWJ06ddKZM2du+6GbNm1SixYtVLhwYeXMmVPly5dXp06drntMamqqoqKiVKNGDeXIkUPFihVTt27ddO7cuUyIB7LWgAEDVLt2bfXo0UMJCQlKSUlR9+7ddd999+n999+/6ccdP35c7du3V6lSpfTJJ59cd9/p06e1a9cubf59s5b9tuzOv5HwTz9JmiLJLulDSbFS8vpkLfttmX499estP3TkyJGqUaOGcuXKpQIFCqhevXo3HME5evSoOnXqpGLFiil79uyqUaOGJk+efPe9AIziyAbgJpo0aaJp06Zp/fr1aRddrl69Wo0aNVKjRo10/vx5bd++XbVr1067r2rV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HA7TOQDuEWMDcHNLly7V9u3bZbVaTacAQKawWq3atm2bvv76a9MpAO4RYwNwczabTQ8//LAeffRR0ykAkCkee+wxNWzYUDabzXQKgHvE2ADc2Lp16/Tjjz/KarXKYrGYzgGATGGxWGS1WvXDDz9o/fr1pnMA3APGBuDGbDabqlSpoueee850CgBkqueff16VK1fm6Abg5hgbgJvatWuX5s+fr+DgYPn48FIG4Fl8fHwUHBysefPmaffu3aZzANwlvkIB3FRoaKhKlCihN99803QKADhF+/btVbx4cYWGhppOAXCXGBuAGzp69KimTZumfv36KXv27KZzAMApsmfPrn79+mnatGn6448/TOcAuAuMDcANRUVFKVeuXOrWrZvpFABwqm7duilHjhyKiooynQLgLjA2ADfz559/aty4cXrnnXeUN29e0zkA4FT58uXTO++8o7Fjx+rPP/80nQPgDjE2ADczZswYJSYmqm/fvqZTACBL9O3bV1evXtXYsWNNpwC4Q4wNwI0kJCQoOjpaHTp0UPHixU3nAECWKFGihDp06KCoqCglJCSYzgFwBxgbgBuZOnWqTp48qaCgINMpAJClgoKCdPLkSX366aemUwDcAcYG4CZSUlIUFhamF198UZUqVTKdAwBZqnLlynrhhRcUFhamlJQU0zkAMoixAbiJr776Svv27ZPVajWdAgBGWK1W7d27V/PmzTOdAiCDGBuAG3A4HLLZbHriiSdUr1490zkAYET9+vXVrFkz2Ww2ORwO0zkAMoCxAbiBuLg4bdq0iaMaALye1WrVxo0b9f3335tOAZABjA3ADdhsNtWpU0fNmzc3nQIARj311FN64IEHZLPZTKcAyADGBuDifvrpJ3377bcKCQmRxWIxnQMARlksFoWEhOibb77Rzz//bDoHwG0wNgAXZ7fbVb58eb388sumUwDAJbzyyisqV66c7Ha76RQAt8HYAFzYb7/9ptmzZyswMFB+fn6mcwDAJfj5+SkwMFCff/65Dhw4YDoHwC0wNgAXFh4eroIFC6pjx46mUwDApXTq1EkFCxZUeHi46RQAt8DYAFzUyZMnNXnyZPXp00e5cuUynQMALiVXrlzq3bu3Jk+erFOnTpnOAXATjA3ARY0cOVK+vr7q2bOn6RQAcEk9e/aUxWLRyJEjTacAuAnGBuCC4uPjNWrUKHXp0kUF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TipSpIjpHACACytatKg6deqkmJgYXb582XQO4HIYG8C/TJ48WefOnVNgYKDpFACAGwgMDNTZs2f1ySefmE4BXA5jA/iH5ORkhYeH65VXXlH58uVN5wAA3ECFChX0yiuvKCwsTMnJyaZzAJfC2AD+Yfbs2Tp48KBCQkJMpwAA3EhISIgOHjyoL774wnQK4FIYG8BfHA6H7Ha7WrRooTp16pjOAQC4kQcffFBPPfWUbDabHA6H6RzAZTA2gL988803+uWXX2S1Wk2nAADckNVq1S+//KJvv/3WdArgMhgbwF9sNpvq16+vpk2bmk4BALihZs2aqV69erLZbKZTAJfB2AAkbdiwQd9//71CQkJksVhM5wAA3JDFYlFISIji4uK0ceNG0zmAS2BsALp2VKNSpUpq27at6RQAgBt74YUXVLFiRY5uAH9hbMDr7d69W1999ZWCgoLk6+trOgcA4MZ8fX0VFBSkuXPnas+ePaZzAOMYG/B6YWFhKlq0qP773/+aTgEAeIAOHTqoaNGiCgsLM50CGMfYgFc7duyYPv30U/Xr1085cuQwnQMA8AA5cuRQ3759NXXqVB0/ftx0DmAUYwNeLTo6WtmzZ1f37t1NpwAAPMg777yj7NmzKzo62nQKYBRjA17r/PnzGjNmjLp37678+fObzgEAeJD8+fOrW7duGjNmjC5cuGA6BzCGsQGvNW7cOCUkJKhfv36mUwAAHqhfv366fPmyxo0bZzoFMIaxAa909epVRUVFqX379ipZsqTpHACABypVqpTat2+vyMhIXb161XQOYARjA15p2rRpOn78uIKDg02nAAA8WHBwsI4fP67p06ebTgGMYGzA66SkpCg0NFRt2rRRlSpVTOcAADxY1apV9fzzzys0NFSpqammc4Asx9iA15k/f7727Nkjq9VqOgUA4AWsVqt2796t+fPnm04BshxjA17F4XDIZrPpscceU8OGDU3nAAC8wMMPP6xHH31UNptNDofDdA6QpRgb8Co//PCDNmzYwFENAECWslqtWr9+vX788UfTKUCWYmzAq9hsNtWqVUstW7Y0nQIA8CKtWrVSzZo1ZbPZTKcAWYqxAa/xyy+/6Ouvv1ZISIgsFovpHACAF7FYLAoJCdHSpUu1detW0zlAlmFswGvY7XaVLVtWr776qukUAIAXeu2111S2bFnZ7XbTKUCWYWzA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iAg8PT2ZP39+TYciIiIiN4GHH34YT0/PUnfQriy1Ae1NmzYNT09P1q5dWyX3+933bGRkZFg3DgRo166d3e7aVeHkpZP4L/YnIyejyu7pbnYnPjQeHw+fKrtnTTh9+jSHDx+2ft+zZ09cXFxqMCIRERG5EV26dIkDBw5Yv+/evTv16tVz6DPVBrR15MgRfvnFspav2Wwucm51eXKD332yUZ0iYyMZs2VM1d3voUhGdRpVZfcTERERkaqnNmD53JDDqKrD6E6jmRU8q0ruNfuB2Tf0h0xERETkRqE2oOMo2Shk2v3TePehd3E3u5d7/J7ZyYy72Z3IhyJ5KeglB0UoIiIiIlVNbUDHULJRhNGdRhMfGk+wdzBAqR+4/PPB3sHEh8YrmxURERG5DqkNWPU0Z6MU8UnxRMREsO3YNo4nH8cosF24CRMtGrSgn28/xncZf12uOCAiIiIi9tQGLJ4miDvI5azLHEs+RmZOJm5mN3wb+JZ5Z3ARERERuT6pDWirPLmB43ZJuQHVda1Lh9s71HQYIiIiIlKN1AasOM3ZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHMJclkqGYQCQmprq0GBEREREROT3LT8nyM8RSlKmZCMtLQ2AZs2aVSIsERERERG5UaSlpXHrrbeWWMdklCElycvL4+zZs9SrVw+TyVRlAYqIiIiIyPXFMAzS0tJo0qQJTk4lz8ooU7IhIiIiIiJSXpogLiIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEP8P5oQZwn4Ill+AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "print(\n", + " \"Intervention setting WX to FALSE:\\n\",\n", + ")\n", + "equality_model.print_setting(\n", + " equality_model.run_forward(\n", + " {\"W\": reps[0], \"X\": reps[0], \"Y\": reps[1], \"Z\": reps[3], \"WX\": False}\n", + " )\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice that, in this example, even though the left two inputs are the same, the intervention has changed the intermediate prediction for those two inputs from **True** to **False**, and thus the algorithm outputs **True**, since **WX** and **YZ** are both **False**." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### The algorithm with an interchange intervention\n", + "\n", + "Finally, let's observe the behavior of the algorithm when we provide the base input `BBCD` with an intervention setting **WX** to be the value it would be for the source input `ABCC`." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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3bRpUzVt2jQTSgG4M8YG4AZmz54ti8Wir7766ob7HnjgAVksFsXFxd1wX9myZdWoUSNJ0s6dO+Xv76+OHTve8Lg///xTJUqUUMOGDZWampp2+8QtE/Ve3Hu3D4yT9MFNfm289pD34t7TpC2Tbv9cgBdr2bKlChQooBMnTtxw3/nz59Nep2XLlpXFYrnlr7feeuumn+eWr+1I3fz1nHTjw3ltA7gV3o0KcANNmjSRJK1atUpt27ZNu/3ChQvavn27/Pz8tHr16uveUebw4cM6fPiwXnvtNUlS9erVFRwcrBEjRuitt97S448/nvbYd999V6dOndLSpUvl43PtexAHzh1Q76W97yz0GUn+/7qt9P//215Le+mJ8k9wnjdwE6NHj1bNmjXVv39/ffbZZ9fd97///U+nT5/W119/rQMHDig+Pj7d54iNjdX69ev18MMPp3t/hl7bxSU9ks7tvuk/nNc2gJthbABuoGTJkipfvrxWrVp13e1r166Vw+HQyy+/fMN9f//z30NFkgYPHqzPP/9c3bp109atW+Xv76+1a9dq/Pjx6t+/v+rUqZP22G6Lut3xqRWqLukW73CbnJqsbou66dv2397Z8wJeonz58nr//fdltVr11ltv6amnnpIkbdy4UWPHjlVQUJAeeOABPfDAA+l+/LfffqsNGzboueeeU/fu3dN9TIZe23kkpf8p0sVrG8DNcBoV4CaaNGmin376SVeuXEm7bfXq1apRo4ZatmypdevWXXcK1OrVq2WxWNS4ceO023LkyKExY8Zo9+7d+r//+z8lJSWpa9euKlOmjIYNG5b2uJ2ndmrZ3mVKPpEsXcyE+OOSvpKSI5K1rOMyFS5aWJ06ddKZM2du+6GbNm1SixYtVLhwYeXMmVPly5dXp06drntMamqqoqKiVKNGDeXIkUPFihVTt27ddO7cuUyIB7LWgAEDVLt2bfXo0UMJCQlKSUlR9+7ddd999+n999+/6ccdP35c7du3V6lSpfTJJ59cd9/p06e1a9cubf59s5b9tuzOv5HwTz9JmiLJLulDSbFS8vpkLfttmX499estP3TkyJGqUaOGcuXKpQIFCqhevXo3HME5evSoOnXqpGLFiil79uyqUaOGJk+efPe9AIziyAbgJpo0aaJp06Zp/fr1aRddrl69Wo0aNVKjRo10/vx5bd++XbVr1067r2rV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HA7TOQDuEWMDcHNLly7V9u3bZbVaTacAQKawWq3atm2bvv76a9MpAO4RYwNwczabTQ8//LAeffRR0ykAkCkee+wxNWzYUDabzXQKgHvE2ADc2Lp16/Tjjz/KarXKYrGYzgGATGGxWGS1WvXDDz9o/fr1pnMA3APGBuDGbDabqlSpoueee850CgBkqueff16VK1fm6Abg5hgbgJvatWuX5s+fr+DgYPn48FIG4Fl8fHwUHBysefPmaffu3aZzANwlvkIB3FRoaKhKlCihN99803QKADhF+/btVbx4cYWGhppOAXCXGBuAGzp69KimTZumfv36KXv27KZzAMApsmfPrn79+mnatGn6448/TOcAuAuMDcANRUVFKVeuXOrWrZvpFABwqm7duilHjhyKiooynQLgLjA2ADfz559/aty4cXrnnXeUN29e0zkA4FT58uXTO++8o7Fjx+rPP/80nQPgDjE2ADczZswYJSYmqm/fvqZTACBL9O3bV1evXtXYsWNNpwC4Q4wNwI0kJCQoOjpaHTp0UPHixU3nAECWKFGihDp06KCoqCglJCSYzgFwBxgbgBuZOnWqTp48qaCgINMpAJClgoKCdPLkSX366aemUwDcAcYG4CZSUlIUFhamF198UZUqVTKdAwBZqnLlynrhhRcUFhamlJQU0zkAMoixAbiJr776Svv27ZPVajWdAgBGWK1W7d27V/PmzTOdAiCDGBuAG3A4HLLZbHriiSdUr1490zkAYET9+vXVrFkz2Ww2ORwO0zkAMoCxAbiBuLg4bdq0iaMaALye1WrVxo0b9f3335tOAZABjA3ADdhsNtWpU0fNmzc3nQIARj311FN64IEHZLPZTKcAyADGBuDifvrpJ3377bcKCQmRxWIxnQMARlksFoWEhOibb77Rzz//bDoHwG0wNgAXZ7fbVb58eb388sumUwDAJbzyyisqV66c7Ha76RQAt8HYAFzYb7/9ptmzZyswMFB+fn6mcwDAJfj5+SkwMFCff/65Dhw4YDoHwC0wNgAXFh4eroIFC6pjx46mUwDApXTq1EkFCxZUeHi46RQAt8DYAFzUyZMnNXnyZPXp00e5cuUynQMALiVXrlzq3bu3Jk+erFOnTpnOAXATjA3ARY0cOVK+vr7q2bOn6RQAcEk9e/aUxWLRyJEjTacAuAnGBuCC4uPjNWrUKHXp0kUF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TipSpIjpHACACytatKg6deqkmJgYXb582XQO4HIYG8C/TJ48WefOnVNgYKDpFACAGwgMDNTZs2f1ySefmE4BXA5jA/iH5ORkhYeH65VXXlH58uVN5wAA3ECFChX0yiuvKCwsTMnJyaZzAJfC2AD+Yfbs2Tp48KBCQkJMpwAA3EhISIgOHjyoL774wnQK4FIYG8BfHA6H7Ha7WrRooTp16pjOAQC4kQcffFBPPfWUbDabHA6H6RzAZTA2gL988803+uWXX2S1Wk2nAADckNVq1S+//KJvv/3WdArgMhgbwF9sNpvq16+vpk2bmk4BALihZs2aqV69erLZbKZTAJfB2AAkbdiwQd9//71CQkJksVhM5wAA3JDFYlFISIji4uK0ceNG0zmAS2BsALp2VKNSpUpq27at6RQAgBt74YUXVLFiRY5uAH9hbMDr7d69W1999ZWCgoLk6+trOgcA4MZ8fX0VFBSkuXPnas+ePaZzAOMYG/B6YWFhKlq0qP773/+aTgEAeIAOHTqoaNGiCgsLM50CGMfYgFc7duyYPv30U/Xr1085cuQwnQMA8AA5cuRQ3759NXXqVB0/ftx0DmAUYwNeLTo6WtmzZ1f37t1NpwAAPMg777yj7NmzKzo62nQKYBRjA17r/PnzGjNmjLp37678+fObzgEAeJD8+fOrW7duGjNmjC5cuGA6BzCGsQGvNW7cOCUkJKhfv36mUwAAHqhfv366fPmyxo0bZzoFMIaxAa909epVRUVFqX379ipZsqTpHACABypVqpTat2+vyMhIXb161XQOYARjA15p2rRpOn78uIKDg02nAAA8WHBwsI4fP67p06ebTgGMYGzA66SkpCg0NFRt2rRRlSpVTOcAADxY1apV9fzzzys0NFSpqammc4Asx9iA15k/f7727Nkjq9VqOgUA4AWsVqt2796t+fPnm04BshxjA17F4XDIZrPpscceU8OGDU3nAAC8wMMPP6xHH31UNptNDofDdA6QpRgb8Co//PCDNmzYwFENAECWslqtWr9+vX788UfTKUCWYmzAq9hsNtWqVUstW7Y0nQIA8CKtWrVSzZo1ZbPZTKcAWYqxAa/xyy+/6Ouvv1ZISIgsFovpHACAF7FYLAoJCdHSpUu1detW0zlAlmFswGvY7XaVLVtWr776qukUAIAXeu2111S2bFnZ7XbTKUCWYWzA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iAg8PT2ZP39+TYciIiIiN4GHH34YT0/PUnfQriy1Ae1NmzYNT09P1q5dWyX3+933bGRkZFg3DgRo166d3e7aVeHkpZP4L/YnIyejyu7pbnYnPjQeHw+fKrtnTTh9+jSHDx+2ft+zZ09cXFxqMCIRERG5EV26dIkDBw5Yv+/evTv16tVz6DPVBrR15MgRfvnFspav2Wwucm51eXKD332yUZ0iYyMZs2VM1d3voUhGdRpVZfcTERERkaqnNmD53JDDqKrD6E6jmRU8q0ruNfuB2Tf0h0xERETkRqE2oOMo2Shk2v3TePehd3E3u5d7/J7ZyYy72Z3IhyJ5KeglB0UoIiIiIlVNbUDHULJRhNGdRhMfGk+wdzBAqR+4/PPB3sHEh8YrmxURERG5DqkNWPU0Z6MU8UnxRMREsO3YNo4nH8cosF24CRMtGrSgn28/xncZf12uOCAiIiIi9tQGLJ4miDvI5azLHEs+RmZOJm5mN3wb+JZ5Z3ARERERuT6pDWirPLmB43ZJuQHVda1Lh9s71HQYIiIiIlKN1AasOM3ZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEMo2RAREREREYdQsiEiIiIiIg6hZENERERERBxCyYaIiIiIiDiEkg0REREREXEIJRsiIiIiIuIQSjZERERERMQhlGyIiIiIiIhDKNkQERERERGHULIhIiIiIiIOoWRDREREREQcQsmGiIiIiIg4hJINERERERFxCCUbIiIiIiLiEEo2RERERETEIZRsiIiIiIiIQyjZEBERERERh1CyISIiIiIiDqFkQ0REREREHMJclkqGYQCQmprq0GBEREREROT3LT8nyM8RSlKmZCMtLQ2AZs2aVSIsERERERG5UaSlpXHrrbeWWMdklCElycvL4+zZs9SrVw+TyVRlAYqIiIiIyPXFMAzS0tJo0qQJTk4lz8ooU7IhIiIiIiJSXpogLiIiIiIiDqFkQ0REREREHELJhoiIiIiIOISSDRERERERcQglGyIiIiIi4hBKNkRERERExCGUbIiIiIiIiEP8P5oQZwn4Ill+AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "base = {\"W\": reps[0], \"X\": reps[0], \"Y\": reps[1], \"Z\": reps[3]}\n", + "source = {\"W\": reps[0], \"X\": reps[1], \"Y\": reps[2], \"Z\": reps[2]}\n", + "setting = equality_model.run_interchange(base, {\"WX\": source})\n", + "equality_model.print_setting(setting)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Hand Crafting an MLP to Solve Hierarchical Equality" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before we train a network to solve the hierarchical equality task, first consider an analytical solution where we define a neural network to have weights that are handcrafted to solve the task by implementing the algorithm $\\mathcal{A}$. The network is a two layer feedforward neural network that uses the ReLU function to compute the absolute difference between two vectors. " + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "config = MLPConfig(\n", + " h_dim=embedding_dim * 4,\n", + " activation_function=\"relu\",\n", + " n_layer=2,\n", + " num_classes=2,\n", + " pdrop=0.0,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "config, tokenizer, handcrafted = create_mlp_classifier(config)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The first layer of our handcrafted model computes:\n", + "\n", + "$ReLU(W_1[\\mathbf{a}, \\mathbf{b}, \\mathbf{c}, \\mathbf{d}]) = [max(\\mathbf{a}-\\mathbf{b}, 0), max(\\mathbf{b}-\\mathbf{a}, 0), max(\\mathbf{c}-\\mathbf{d}, 0), max(\\mathbf{d}-\\mathbf{c}, 0)]$\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "W1 = [\n", + " [1, 0, -1, 0, 0, 0, 0, 0],\n", + " [0, 1, 0, -1, 0, 0, 0, 0],\n", + " [-1, 0, 1, 0, 0, 0, 0, 0],\n", + " [0, -1, 0, 1, 0, 0, 0, 0],\n", + " [0, 0, 0, 0, 1, 0, -1, 0],\n", + " [0, 0, 0, 0, 0, 1, 0, -1],\n", + " [0, 0, 0, 0, -1, 0, 1, 0],\n", + " [0, 0, 0, 0, 0, -1, 0, 1],\n", + "]\n", + "handcrafted.mlp.h[0].ff1.weight = torch.nn.Parameter(torch.FloatTensor(W1))\n", + "handcrafted.mlp.h[0].ff1.bias = torch.nn.Parameter(\n", + " torch.FloatTensor([0, 0, 0, 0, 0, 0, 0, 0])\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The second layer of our handcrafted model computes:\n", + "\n", + "$ReLU(W_2ReLU(W_1[\\mathbf{a}, \\mathbf{b}, \\mathbf{c}, \\mathbf{d}])) = [|\\mathbf{a}-\\mathbf{b}| - |\\mathbf{c}-\\mathbf{d}|, |\\mathbf{c}-\\mathbf{d}|-|\\mathbf{a}-\\mathbf{b}|, |\\mathbf{a}-\\mathbf{b}|, |\\mathbf{c}-\\mathbf{d}|,0,0,0,0]$\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "W2 = [\n", + " [1, -1, 0, 1, 0, 0, 0, 0],\n", + " [1, -1, 0, 1, 0, 0, 0, 0],\n", + " [1, -1, 0, 1, 0, 0, 0, 0],\n", + " [1, -1, 0, 1, 0, 0, 0, 0],\n", + " [-1, 1, 1, 0, 0, 0, 0, 0],\n", + " [-1, 1, 1, 0, 0, 0, 0, 0],\n", + " [-1, 1, 1, 0, 0, 0, 0, 0],\n", + " [-1, 1, 1, 0, 0, 0, 0, 0],\n", + "]\n", + "handcrafted.mlp.h[1].ff1.weight = torch.nn.Parameter(\n", + " torch.FloatTensor(W2).transpose(0, 1)\n", + ")\n", + "handcrafted.mlp.h[1].ff1.bias = torch.nn.Parameter(\n", + " torch.FloatTensor([0, 0, 0, 0, 0, 0, 0, 0])\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The third layer of our handcrafted model computes the logits:\n", + "\n", + "$W_3 ReLU(W_2ReLU(W_1[\\mathbf{a}, \\mathbf{b}, \\mathbf{c}, \\mathbf{d}])) = [||\\mathbf{a}-\\mathbf{b}| - |\\mathbf{c}-\\mathbf{d}|| -0.999999|\\mathbf{a}-\\mathbf{b}|-0.999999|\\mathbf{c}-\\mathbf{d}|, 0]$" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "W3 = [[1, 0], [1, 0], [-0.999999, 0], [-0.999999, 0], [0, 0], [0, 0], [0, 0], [0, 0]]\n", + "handcrafted.score.weight = torch.nn.Parameter(torch.FloatTensor(W3).transpose(0, 1))\n", + "handcrafted.score.bias = torch.nn.Parameter(torch.FloatTensor([0, 0.00000000000001]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can now use the causal model of $\\mathcal{A}$ that we created to generate a labeled dataset for the hierarchical equality task and show that our handcrafted network solves the task with perfect accuracy." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "n_examples = 100000\n", + "\n", + "examples = equality_model.generate_factual_dataset(\n", + " n_examples, equality_model.sample_input_tree_balanced\n", + ")\n", + "\n", + "X = torch.stack([example['input_ids'] for example in examples])\n", + "y = torch.stack([example['labels'] for example in examples])" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train Results\n", + " precision recall f1-score support\n", + "\n", + " 0.0 1.00 1.00 1.00 50050\n", + " 1.0 1.00 1.00 1.00 49950\n", + "\n", + " accuracy 1.00 100000\n", + " macro avg 1.00 1.00 1.00 100000\n", + "weighted avg 1.00 1.00 1.00 100000\n", + "\n" + ] + } + ], + "source": [ + "preds = handcrafted.forward(inputs_embeds=X)\n", + "\n", + "print(\"Train Results\")\n", + "print(classification_report(y, preds[0].argmax(1)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Causal abstraction\n", + "\n", + "The theory of **causal abstraction** describes the conditions that must hold for the high-level tree structured algorithm to be a **simplified and faithful description** of the neural network. To perform causal abstraction analysis, we need to align high-level variables in our hypothesized algorithm $\\mathcal{A}$ with sets of low-level variables in the low-level neural network $\\mathcal{N}$. \n", + "\n", + "In essence: $\\mathcal{A}$ is a causal abstraction of a $\\mathcal{N}$ if and only if $\\mathcal{A}$ and $\\mathcal{N}$ provides the same output for all interchange interventions that target aligned variables.\n", + "\n", + "For our handcrafted network, we align the first four neurons in the first feed-forward layer with the high-level variable 'WX' and align the other four neurons in that layer with 'YZ'. Below, we create an IntervenableConfig that allows us to taget the first four and last four neurons of the first layer for an interchange intervention. " + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "config = IntervenableConfig(\n", + " model_type=type(handcrafted),\n", + " representations=[\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_output\", # intervention type\n", + " subspace_partition=[[0, 4], [4, 8]],\n", + " ),\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_output\", # intervention type\n", + " subspace_partition=[[0, 4], [4, 8]],\n", + " ),\n", + " ],\n", + " intervention_types=VanillaIntervention,\n", + ")\n", + "handcrafted = IntervenableModel(config, handcrafted)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next we create a counterfactual equality dataset that includes interchange intervention examples. We first define a function that create an id for the three possible high-level interventions, namely targetting 'WX', targetting 'YZ', and targetting them both." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "def intervention_id(intervention):\n", + " if \"WX\" in intervention and \"YZ\" in intervention:\n", + " return 2\n", + " if \"WX\" in intervention:\n", + " return 0\n", + " if \"YZ\" in intervention:\n", + " return 1\n", + "\n", + "\n", + "data_size = 2048\n", + "batch_size = 16\n", + "dataset = equality_model.generate_counterfactual_dataset(\n", + " data_size,\n", + " intervention_id,\n", + " batch_size,\n", + " device=\"cuda:0\",\n", + " sampler=equality_model.sample_input_tree_balanced,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This dataset has the following components:\n", + "\n", + "* `input_ids`: a regular set of train examples\n", + "* `base_labels`: a regular set of train labels\n", + "* `source_input_ids`: sets additional training inputs sets (here, two sets) for interchange interventions\n", + "* `labels`: a list of labels if interchange interventions are performed with 'source_input_ids'\n", + "* `intervention_id`: a list of intervention sites (here, all `0` corresponding to our key for \"V1\")" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "tensor([ 0.4700, 0.3500, 0.4700, 0.3500, 0.7800, -0.8300, -0.5600, 0.1800],\n", + " device='cuda:0')\n", + "tensor([[-0.1600, -0.9400, 0.6600, 0.2400, 0.0700, 0.9500, 0.0700, 0.9500],\n", + " [ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000]],\n", + " device='cuda:0')\n", + "tensor([0.], device='cuda:0')\n", + "tensor([1.], device='cuda:0')\n", + "tensor([0], device='cuda:0')\n" + ] + } + ], + "source": [ + "print(dataset[0][\"input_ids\"])\n", + "print(dataset[0][\"source_input_ids\"])\n", + "print(dataset[0][\"base_labels\"])\n", + "print(dataset[0][\"labels\"])\n", + "print(dataset[0][\"intervention_id\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To evaluate the model on this dataset, we loop through batches and peform interchange interventions based on the intervention_id. \n", + "* When the id is 0, the first four neurons in the first layer are targetted ('WX' is targetted at the high-level)\n", + "* When the id is 1, the last four neurons in the first layer are targetted ('YZ' is targetted at the high-level)\n", + "* When the id is 2, all of the neurons in the first layer are targetted ('WX' and 'YZ' are both targetted at the high-level) " + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "handcrafted.to(\"cuda:0\")\n", + "for parameter in handcrafted.get_trainable_parameters():\n", + " parameter.to(\"cuda:0\")\n", + "preds = []\n", + "for batch in DataLoader(dataset, batch_size):\n", + " batch[\"input_ids\"] = batch[\"input_ids\"].unsqueeze(1)\n", + " batch[\"source_input_ids\"] = batch[\"source_input_ids\"].unsqueeze(2)\n", + " if batch[\"intervention_id\"][0] == 2: # Intervention on both high-level variables\n", + " _, counterfactual_outputs = handcrafted(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [\n", + " {\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]},\n", + " {\"inputs_embeds\": batch[\"source_input_ids\"][:, 1]},\n", + " ],\n", + " {\n", + " \"sources->base\": (\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " )\n", + " },\n", + " subspaces=[[[0]] * batch_size, [[1]] * batch_size],\n", + " )\n", + " elif (\n", + " batch[\"intervention_id\"][0] == 0\n", + " ): # Intervention on just the high-level variable 'WX'\n", + " _, counterfactual_outputs = handcrafted(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [{\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}, None],\n", + " {\"sources->base\": ([[[0]] * batch_size, None], [[[0]] * batch_size, None])},\n", + " subspaces=[[[0]] * batch_size, None],\n", + " )\n", + " elif (\n", + " batch[\"intervention_id\"][0] == 1\n", + " ): # Intervention on just the high-level variable 'YZ'\n", + " _, counterfactual_outputs = handcrafted(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [None, {\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}],\n", + " {\"sources->base\": ([None, [[0]] * batch_size], [None, [[0]] * batch_size])},\n", + " subspaces=[None, [[1]] * batch_size],\n", + " )\n", + " preds.append(counterfactual_outputs[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [], + "source": [ + "preds = torch.cat(preds)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below, we can see that our handcrafted neural network is a perfect implementation of the high-level algorithm." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " precision recall f1-score support\n", + "\n", + " 0.0 1.00 1.00 1.00 997\n", + " 1.0 1.00 1.00 1.00 1051\n", + "\n", + " accuracy 1.00 2048\n", + " macro avg 1.00 1.00 1.00 2048\n", + "weighted avg 1.00 1.00 1.00 2048\n", + "\n" + ] + } + ], + "source": [ + "print(\n", + " classification_report(\n", + " torch.tensor([x[\"labels\"] for x in dataset]).cpu(), preds.argmax(1).cpu()\n", + " )\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Training an MLP to Solve Hierarchical Equality\n", + "\n", + "We've now seen how to perform causal abstraction analysis on a simple handcrafted neural networks. We turn now to training a neural network to perform the hierarchical equality task with a 4 dimensional vector embedding for each object. We define an input sampler to provide an infinite stream of new entities, rather than relying on a fixed set of vector representations." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [], + "source": [ + "embedding_dim = 4\n", + "\n", + "\n", + "def input_sampler():\n", + " A = randvec(4)\n", + " B = randvec(4)\n", + " C = randvec(4)\n", + " D = randvec(4)\n", + " x = random.randint(1, 4)\n", + " if x == 1:\n", + " return {\"W\": A, \"X\": B, \"Y\": C, \"Z\": D}\n", + " elif x == 2:\n", + " return {\"W\": A, \"X\": A, \"Y\": B, \"Z\": B}\n", + " elif x == 3:\n", + " return {\"W\": A, \"X\": A, \"Y\": C, \"Z\": D}\n", + " elif x == 4:\n", + " return {\"W\": A, \"X\": B, \"Y\": C, \"Z\": C}" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "n_examples = 1048576\n", + "batch_size = 1024\n", + "\n", + "examples = equality_model.generate_factual_dataset(n_examples, input_sampler)\n", + "\n", + "X = torch.stack([example['input_ids'] for example in examples])\n", + "y = torch.stack([example['labels'] for example in examples])\n", + "\n", + "# X = X.unsqueeze(1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The examples in this dataset are 8-dimensional vectors: the concatenation of 4 2-dimensional vectors. Here's the first example with its label:" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(tensor([-0.7200, 0.6300, 1.0000, 0.6900, -0.7200, 0.6300, 1.0000, 0.6900,\n", + " 0.0800, -0.8800, -0.0400, -0.0400, -0.5200, -0.8500, -0.6400, 0.6400]),\n", + " tensor([0.]))" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X[0], y[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The label for this example is determined by whether the equality value for the first two inputs matches the equality value for the second two inputs:" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "left = torch.equal(X[0][:embedding_dim], X[0][embedding_dim : embedding_dim * 2])\n", + "\n", + "left" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "right = torch.equal(\n", + " X[0][embedding_dim * 2 : embedding_dim * 3], X[0][embedding_dim * 3 :]\n", + ")\n", + "\n", + "right" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "int(left == right)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We define a three layer neural network with a ReLU activation function this task:" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "MLPForClassification(\n", + " (mlp): MLPModel(\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " (h): ModuleList(\n", + " (0-2): 3 x MLPBlock(\n", + " (ff1): Linear(in_features=16, out_features=16, bias=True)\n", + " (act): ReLU()\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " )\n", + " (score): Linear(in_features=16, out_features=2, bias=True)\n", + ")" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "config = MLPConfig(\n", + " h_dim=embedding_dim * 4,\n", + " activation_function=\"relu\",\n", + " n_layer=3,\n", + " num_classes=2,\n", + " pdrop=0.0,\n", + ")\n", + "config, tokenizer, trained = create_mlp_classifier(config)\n", + "trained.train()" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [], + "source": [ + "train_ds = Dataset.from_dict(\n", + " {\n", + " \"labels\": [\n", + " torch.FloatTensor([0, 1]) if i == 1 else torch.FloatTensor([1, 0])\n", + " for i in y\n", + " ],\n", + " \"inputs_embeds\": X,\n", + " }\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [], + "source": [ + "from transformers import TrainingArguments, Trainer\n", + "\n", + "training_args = TrainingArguments(\n", + " output_dir=\"test_trainer\",\n", + " evaluation_strategy=\"epoch\",\n", + " learning_rate=0.001,\n", + " num_train_epochs=3,\n", + " per_device_train_batch_size=batch_size,\n", + " per_device_eval_batch_size=batch_size,\n", + " report_to=\"none\",\n", + ")\n", + "\n", + "trainer = Trainer(\n", + " model=trained,\n", + " args=training_args,\n", + " train_dataset=train_ds,\n", + " eval_dataset=train_ds,\n", + " compute_metrics=lambda x: {\n", + " \"accuracy\": classification_report(\n", + " x[0].argmax(1), x[1].argmax(1), output_dict=True\n", + " )[\"accuracy\"]\n", + " },\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This neural network achieves perfect performance on its train set:" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "267ad9a4be754be89e338aa6240214e4", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/3072 [00:00), acc=0.872]\n", + "Epoch: 1: 200it [00:54, 3.69it/s, loss=tensor(0.4646, device='cuda:0', grad_fn=), acc=0.89] \n", + "Epoch: 2: 200it [00:53, 3.71it/s, loss=tensor(0.1925, device='cuda:0', grad_fn=), acc=0.962]\n", + "Epoch: 3: 200it [00:53, 3.71it/s, loss=tensor(0.5047, device='cuda:0', grad_fn=), acc=0.837]\n", + "Epoch: 4: 200it [00:54, 3.70it/s, loss=tensor(0.1448, device='cuda:0', grad_fn=), acc=0.969]\n", + "Epoch: 5: 200it [00:52, 3.81it/s, loss=tensor(0.1444, device='cuda:0', grad_fn=), acc=0.967]\n", + "Epoch: 6: 200it [00:58, 3.40it/s, loss=tensor(0.1562, device='cuda:0', grad_fn=), acc=0.97] \n", + "Epoch: 7: 200it [01:04, 3.09it/s, loss=tensor(0.1703, device='cuda:0', grad_fn=), acc=0.958]\n", + "Epoch: 8: 200it [01:05, 3.07it/s, loss=tensor(0.1553, device='cuda:0', grad_fn=), acc=0.959]\n", + "Epoch: 9: 200it [01:04, 3.10it/s, loss=tensor(0.1505, device='cuda:0', grad_fn=), acc=0.967]\n", + "Epoch: 100%|██████████| 10/10 [09:59<00:00, 59.91s/it]\n" + ] + } + ], + "source": [ + "intervenable.model.train() # train enables drop-off but no grads\n", + "print(\"intervention trainable parameters: \", intervenable.count_parameters())\n", + "train_iterator = trange(0, int(epochs), desc=\"Epoch\")\n", + "\n", + "for epoch in train_iterator:\n", + " epoch_iterator = tqdm(\n", + " DataLoader(\n", + " train_dataset,\n", + " batch_size=batch_size,\n", + " sampler=batched_random_sampler(train_dataset),\n", + " ),\n", + " desc=f\"Epoch: {epoch}\",\n", + " position=0,\n", + " leave=True,\n", + " )\n", + " for batch in epoch_iterator:\n", + " batch[\"input_ids\"] = batch[\"input_ids\"].unsqueeze(1)\n", + " batch[\"source_input_ids\"] = batch[\"source_input_ids\"].unsqueeze(2)\n", + " batch_size = batch[\"input_ids\"].shape[0]\n", + " for k, v in batch.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " batch[k] = v.to(\"cuda\")\n", + "\n", + " if batch[\"intervention_id\"][0] == 2:\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [\n", + " {\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]},\n", + " {\"inputs_embeds\": batch[\"source_input_ids\"][:, 1]},\n", + " ],\n", + " {\n", + " \"sources->base\": (\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " )\n", + " },\n", + " subspaces=[\n", + " [[_ for _ in range(0, embedding_dim * 2)]] * batch_size,\n", + " [[_ for _ in range(embedding_dim * 2, embedding_dim * 4)]]\n", + " * batch_size,\n", + " ],\n", + " )\n", + " elif batch[\"intervention_id\"][0] == 0:\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [{\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}, None],\n", + " {\n", + " \"sources->base\": (\n", + " [[[0]] * batch_size, None],\n", + " [[[0]] * batch_size, None],\n", + " )\n", + " },\n", + " subspaces=[\n", + " [[_ for _ in range(0, embedding_dim * 2)]] * batch_size,\n", + " None,\n", + " ],\n", + " )\n", + " elif batch[\"intervention_id\"][0] == 1:\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [None, {\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}],\n", + " {\n", + " \"sources->base\": (\n", + " [None, [[0]] * batch_size],\n", + " [None, [[0]] * batch_size],\n", + " )\n", + " },\n", + " subspaces=[\n", + " None,\n", + " [[_ for _ in range(embedding_dim * 2, embedding_dim * 4)]]\n", + " * batch_size,\n", + " ],\n", + " )\n", + " eval_metrics = compute_metrics(\n", + " counterfactual_outputs[0].argmax(1), batch[\"labels\"].squeeze()\n", + " )\n", + "\n", + " # loss and backprop\n", + " loss = compute_loss(\n", + " counterfactual_outputs[0], batch[\"labels\"].squeeze().to(torch.long)\n", + " )\n", + "\n", + " epoch_iterator.set_postfix({\"loss\": loss, \"acc\": eval_metrics[\"accuracy\"]})\n", + "\n", + " if gradient_accumulation_steps > 1:\n", + " loss = loss / gradient_accumulation_steps\n", + " loss.backward()\n", + " if total_step % gradient_accumulation_steps == 0:\n", + " optimizer.step()\n", + " intervenable.set_zero_grad()\n", + " total_step += 1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "What's more, is it generalizes unseen test data:" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": {}, + "outputs": [], + "source": [ + "test_dataset = test_equality_model.generate_counterfactual_dataset(\n", + " 10000, intervention_id, batch_size, device=\"cuda:0\", sampler=input_sampler\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 0%| | 0/2 [00:00base\": (\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " [[[0]] * batch_size, [[0]] * batch_size],\n", + " )\n", + " },\n", + " subspaces=[\n", + " [[_ for _ in range(0, embedding_dim * 2)]] * batch_size,\n", + " [[_ for _ in range(embedding_dim * 2, embedding_dim * 4)]]\n", + " * batch_size,\n", + " ],\n", + " )\n", + " elif batch[\"intervention_id\"][0] == 0:\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [{\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}, None],\n", + " {\n", + " \"sources->base\": (\n", + " [[[0]] * batch_size, None],\n", + " [[[0]] * batch_size, None],\n", + " )\n", + " },\n", + " subspaces=[\n", + " [[_ for _ in range(0, embedding_dim * 2)]] * batch_size,\n", + " None,\n", + " ],\n", + " )\n", + " elif batch[\"intervention_id\"][0] == 1:\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"inputs_embeds\": batch[\"input_ids\"]},\n", + " [None, {\"inputs_embeds\": batch[\"source_input_ids\"][:, 0]}],\n", + " {\n", + " \"sources->base\": (\n", + " [None, [[0]] * batch_size],\n", + " [None, [[0]] * batch_size],\n", + " )\n", + " },\n", + " subspaces=[\n", + " None,\n", + " [[_ for _ in range(embedding_dim * 2, embedding_dim * 4)]]\n", + " * batch_size,\n", + " ],\n", + " )\n", + " eval_labels += [batch[\"labels\"]]\n", + " eval_preds += [torch.argmax(counterfactual_outputs[0], dim=1)]\n", + "print(classification_report(torch.cat(eval_labels).cpu(), torch.cat(eval_preds).cpu()))" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "933b0a94e0d88ac80a17cb26ca3d8d36930c12815b02a2885c1925c2b1ae3c33" + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.18" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/tutorials/advanced_tutorials/IOI_Replication.ipynb b/_sources/tutorials/advanced_tutorials/IOI_Replication.ipynb new file mode 100644 index 00000000..90df0e3a --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/IOI_Replication.ipynb @@ -0,0 +1,4512 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Replicating the IOI paper" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Aryaman Arora\"\n", + "__version__ = \"1/24/2023\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "We're going to try to replicate some results of the original IOI paper ([Wang et al., 2022](https://arxiv.org/abs/2211.00593)) using `pyvene`, as a demonstration of path patching and verification of their results." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/frankaging/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [58], line 27\u001b[0m\n\u001b[1;32m 23\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mwarnings\u001b[39;00m\n\u001b[1;32m 25\u001b[0m warnings\u001b[38;5;241m.\u001b[39mfilterwarnings(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mignore\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m---> 27\u001b[0m config, tokenizer, gpt2 \u001b[38;5;241m=\u001b[39m \u001b[43mpv\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcreate_gpt2_lm\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcache_dir\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m/Users/aryamanarora/.cache/huggingface/hub/\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m 28\u001b[0m _ \u001b[38;5;241m=\u001b[39m gpt2\u001b[38;5;241m.\u001b[39meval()\n\u001b[1;32m 30\u001b[0m titles\u001b[38;5;241m=\u001b[39m{\n\u001b[1;32m 31\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mblock_output\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msingle restored layer in GPT2-XL\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[1;32m 32\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmlp_activation\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcenter of interval of 10 patched mlp layer\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[1;32m 33\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mattention_output\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcenter of interval of 10 patched attn layer\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 34\u001b[0m }\n", + "File \u001b[0;32m~/Documents/Code/pyvene/pyvene/models/gpt2/modelings_intervenable_gpt2.py:84\u001b[0m, in \u001b[0;36mcreate_gpt2_lm\u001b[0;34m(name, config, cache_dir)\u001b[0m\n\u001b[1;32m 81\u001b[0m \u001b[38;5;124;03m\"\"\"Creates a GPT2 LM, config, and tokenizer from the given name and revision\"\"\"\u001b[39;00m\n\u001b[1;32m 82\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mtransformers\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m GPT2LMHeadModel, GPT2Tokenizer, GPT2Config\n\u001b[0;32m---> 84\u001b[0m tokenizer \u001b[38;5;241m=\u001b[39m \u001b[43mGPT2Tokenizer\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfrom_pretrained\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mgpt2\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m 85\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m config \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 86\u001b[0m config \u001b[38;5;241m=\u001b[39m GPT2Config\u001b[38;5;241m.\u001b[39mfrom_pretrained(name)\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/transformers/tokenization_utils_base.py:1968\u001b[0m, in \u001b[0;36mPreTrainedTokenizerBase.from_pretrained\u001b[0;34m(cls, pretrained_model_name_or_path, cache_dir, force_download, local_files_only, token, revision, *init_inputs, **kwargs)\u001b[0m\n\u001b[1;32m 1965\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mtokenizer_file\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01min\u001b[39;00m vocab_files:\n\u001b[1;32m 1966\u001b[0m \u001b[38;5;66;03m# Try to get the tokenizer config to see if there are versioned tokenizer files.\u001b[39;00m\n\u001b[1;32m 1967\u001b[0m fast_tokenizer_file \u001b[38;5;241m=\u001b[39m FULL_TOKENIZER_FILE\n\u001b[0;32m-> 1968\u001b[0m resolved_config_file \u001b[38;5;241m=\u001b[39m \u001b[43mcached_file\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1969\u001b[0m \u001b[43m \u001b[49m\u001b[43mpretrained_model_name_or_path\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1970\u001b[0m \u001b[43m \u001b[49m\u001b[43mTOKENIZER_CONFIG_FILE\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1971\u001b[0m \u001b[43m \u001b[49m\u001b[43mcache_dir\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcache_dir\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1972\u001b[0m \u001b[43m \u001b[49m\u001b[43mforce_download\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mforce_download\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1973\u001b[0m \u001b[43m \u001b[49m\u001b[43mresume_download\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mresume_download\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1974\u001b[0m \u001b[43m \u001b[49m\u001b[43mproxies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1975\u001b[0m \u001b[43m \u001b[49m\u001b[43mtoken\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtoken\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1976\u001b[0m \u001b[43m \u001b[49m\u001b[43mrevision\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrevision\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1977\u001b[0m \u001b[43m \u001b[49m\u001b[43mlocal_files_only\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mlocal_files_only\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1978\u001b[0m \u001b[43m \u001b[49m\u001b[43msubfolder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msubfolder\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1979\u001b[0m \u001b[43m \u001b[49m\u001b[43muser_agent\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43muser_agent\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1980\u001b[0m \u001b[43m \u001b[49m\u001b[43m_raise_exceptions_for_missing_entries\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 1981\u001b[0m \u001b[43m \u001b[49m\u001b[43m_raise_exceptions_for_connection_errors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 1982\u001b[0m \u001b[43m \u001b[49m\u001b[43m_commit_hash\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcommit_hash\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1983\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1984\u001b[0m commit_hash \u001b[38;5;241m=\u001b[39m extract_commit_hash(resolved_config_file, commit_hash)\n\u001b[1;32m 1985\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m resolved_config_file \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/transformers/utils/hub.py:429\u001b[0m, in \u001b[0;36mcached_file\u001b[0;34m(path_or_repo_id, filename, cache_dir, force_download, resume_download, proxies, token, revision, local_files_only, subfolder, repo_type, user_agent, _raise_exceptions_for_missing_entries, _raise_exceptions_for_connection_errors, _commit_hash, **deprecated_kwargs)\u001b[0m\n\u001b[1;32m 426\u001b[0m user_agent \u001b[38;5;241m=\u001b[39m http_user_agent(user_agent)\n\u001b[1;32m 427\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m 428\u001b[0m \u001b[38;5;66;03m# Load from URL or cache if already cached\u001b[39;00m\n\u001b[0;32m--> 429\u001b[0m resolved_file \u001b[38;5;241m=\u001b[39m \u001b[43mhf_hub_download\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 430\u001b[0m \u001b[43m \u001b[49m\u001b[43mpath_or_repo_id\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 431\u001b[0m \u001b[43m \u001b[49m\u001b[43mfilename\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 432\u001b[0m \u001b[43m \u001b[49m\u001b[43msubfolder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mNone\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mif\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[38;5;28;43mlen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43msubfolder\u001b[49m\u001b[43m)\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m==\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01melse\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43msubfolder\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 433\u001b[0m \u001b[43m \u001b[49m\u001b[43mrepo_type\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrepo_type\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 434\u001b[0m \u001b[43m \u001b[49m\u001b[43mrevision\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrevision\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 435\u001b[0m \u001b[43m \u001b[49m\u001b[43mcache_dir\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcache_dir\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 436\u001b[0m \u001b[43m \u001b[49m\u001b[43muser_agent\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43muser_agent\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 437\u001b[0m \u001b[43m \u001b[49m\u001b[43mforce_download\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mforce_download\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 438\u001b[0m \u001b[43m \u001b[49m\u001b[43mproxies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 439\u001b[0m \u001b[43m \u001b[49m\u001b[43mresume_download\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mresume_download\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 440\u001b[0m \u001b[43m \u001b[49m\u001b[43mtoken\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtoken\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 441\u001b[0m \u001b[43m \u001b[49m\u001b[43mlocal_files_only\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mlocal_files_only\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 442\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 443\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m GatedRepoError \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m 444\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mEnvironmentError\u001b[39;00m(\n\u001b[1;32m 445\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mYou are trying to access a gated repo.\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[38;5;124mMake sure to request access at \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 446\u001b[0m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhttps://huggingface.co/\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mpath_or_repo_id\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m and pass a token having permission to this repo either \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 447\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mby logging in with `huggingface-cli login` or by passing `token=`.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 448\u001b[0m ) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01me\u001b[39;00m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/utils/_validators.py:118\u001b[0m, in \u001b[0;36mvalidate_hf_hub_args.._inner_fn\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 115\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m check_use_auth_token:\n\u001b[1;32m 116\u001b[0m kwargs \u001b[38;5;241m=\u001b[39m smoothly_deprecate_use_auth_token(fn_name\u001b[38;5;241m=\u001b[39mfn\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__name__\u001b[39m, has_token\u001b[38;5;241m=\u001b[39mhas_token, kwargs\u001b[38;5;241m=\u001b[39mkwargs)\n\u001b[0;32m--> 118\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfn\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/file_download.py:1232\u001b[0m, in \u001b[0;36mhf_hub_download\u001b[0;34m(repo_id, filename, subfolder, repo_type, revision, endpoint, library_name, library_version, cache_dir, local_dir, local_dir_use_symlinks, user_agent, force_download, force_filename, proxies, etag_timeout, resume_download, token, local_files_only, legacy_cache_layout)\u001b[0m\n\u001b[1;32m 1230\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m 1231\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 1232\u001b[0m metadata \u001b[38;5;241m=\u001b[39m \u001b[43mget_hf_file_metadata\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1233\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1234\u001b[0m \u001b[43m \u001b[49m\u001b[43mtoken\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtoken\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1235\u001b[0m \u001b[43m \u001b[49m\u001b[43mproxies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1236\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43metag_timeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1237\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1238\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m EntryNotFoundError \u001b[38;5;28;01mas\u001b[39;00m http_error:\n\u001b[1;32m 1239\u001b[0m \u001b[38;5;66;03m# Cache the non-existence of the file and raise\u001b[39;00m\n\u001b[1;32m 1240\u001b[0m commit_hash \u001b[38;5;241m=\u001b[39m http_error\u001b[38;5;241m.\u001b[39mresponse\u001b[38;5;241m.\u001b[39mheaders\u001b[38;5;241m.\u001b[39mget(HUGGINGFACE_HEADER_X_REPO_COMMIT)\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/utils/_validators.py:118\u001b[0m, in \u001b[0;36mvalidate_hf_hub_args.._inner_fn\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 115\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m check_use_auth_token:\n\u001b[1;32m 116\u001b[0m kwargs \u001b[38;5;241m=\u001b[39m smoothly_deprecate_use_auth_token(fn_name\u001b[38;5;241m=\u001b[39mfn\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__name__\u001b[39m, has_token\u001b[38;5;241m=\u001b[39mhas_token, kwargs\u001b[38;5;241m=\u001b[39mkwargs)\n\u001b[0;32m--> 118\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfn\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/file_download.py:1599\u001b[0m, in \u001b[0;36mget_hf_file_metadata\u001b[0;34m(url, token, proxies, timeout)\u001b[0m\n\u001b[1;32m 1596\u001b[0m headers[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mAccept-Encoding\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124midentity\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;66;03m# prevent any compression => we want to know the real size of the file\u001b[39;00m\n\u001b[1;32m 1598\u001b[0m \u001b[38;5;66;03m# Retrieve metadata\u001b[39;00m\n\u001b[0;32m-> 1599\u001b[0m r \u001b[38;5;241m=\u001b[39m \u001b[43m_request_wrapper\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1600\u001b[0m \u001b[43m \u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mHEAD\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1601\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1602\u001b[0m \u001b[43m \u001b[49m\u001b[43mheaders\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mheaders\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1603\u001b[0m \u001b[43m \u001b[49m\u001b[43mallow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 1604\u001b[0m \u001b[43m \u001b[49m\u001b[43mfollow_relative_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 1605\u001b[0m \u001b[43m \u001b[49m\u001b[43mproxies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1606\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 1607\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1608\u001b[0m hf_raise_for_status(r)\n\u001b[1;32m 1610\u001b[0m \u001b[38;5;66;03m# Return\u001b[39;00m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/file_download.py:417\u001b[0m, in \u001b[0;36m_request_wrapper\u001b[0;34m(method, url, max_retries, base_wait_time, max_wait_time, timeout, follow_relative_redirects, **params)\u001b[0m\n\u001b[1;32m 415\u001b[0m \u001b[38;5;66;03m# 2. Force relative redirection\u001b[39;00m\n\u001b[1;32m 416\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m follow_relative_redirects:\n\u001b[0;32m--> 417\u001b[0m response \u001b[38;5;241m=\u001b[39m \u001b[43m_request_wrapper\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 418\u001b[0m \u001b[43m \u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 419\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 420\u001b[0m \u001b[43m \u001b[49m\u001b[43mmax_retries\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmax_retries\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 421\u001b[0m \u001b[43m \u001b[49m\u001b[43mbase_wait_time\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mbase_wait_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 422\u001b[0m \u001b[43m \u001b[49m\u001b[43mmax_wait_time\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmax_wait_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 423\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 424\u001b[0m \u001b[43m \u001b[49m\u001b[43mfollow_relative_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 425\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mparams\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 426\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 428\u001b[0m \u001b[38;5;66;03m# If redirection, we redirect only relative paths.\u001b[39;00m\n\u001b[1;32m 429\u001b[0m \u001b[38;5;66;03m# This is useful in case of a renamed repository.\u001b[39;00m\n\u001b[1;32m 430\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;241m300\u001b[39m \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m response\u001b[38;5;241m.\u001b[39mstatus_code \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;241m399\u001b[39m:\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/file_download.py:452\u001b[0m, in \u001b[0;36m_request_wrapper\u001b[0;34m(method, url, max_retries, base_wait_time, max_wait_time, timeout, follow_relative_redirects, **params)\u001b[0m\n\u001b[1;32m 449\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m response\n\u001b[1;32m 451\u001b[0m \u001b[38;5;66;03m# 3. Exponential backoff\u001b[39;00m\n\u001b[0;32m--> 452\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mhttp_backoff\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 453\u001b[0m \u001b[43m \u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 454\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 455\u001b[0m \u001b[43m \u001b[49m\u001b[43mmax_retries\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmax_retries\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 456\u001b[0m \u001b[43m \u001b[49m\u001b[43mbase_wait_time\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mbase_wait_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 457\u001b[0m \u001b[43m \u001b[49m\u001b[43mmax_wait_time\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmax_wait_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 458\u001b[0m \u001b[43m \u001b[49m\u001b[43mretry_on_exceptions\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mTimeout\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mProxyError\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 459\u001b[0m \u001b[43m \u001b[49m\u001b[43mretry_on_status_codes\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 460\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 461\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mparams\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 462\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/utils/_http.py:258\u001b[0m, in \u001b[0;36mhttp_backoff\u001b[0;34m(method, url, max_retries, base_wait_time, max_wait_time, retry_on_exceptions, retry_on_status_codes, **kwargs)\u001b[0m\n\u001b[1;32m 255\u001b[0m kwargs[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mdata\u001b[39m\u001b[38;5;124m\"\u001b[39m]\u001b[38;5;241m.\u001b[39mseek(io_obj_initial_pos)\n\u001b[1;32m 257\u001b[0m \u001b[38;5;66;03m# Perform request and return if status_code is not in the retry list.\u001b[39;00m\n\u001b[0;32m--> 258\u001b[0m response \u001b[38;5;241m=\u001b[39m \u001b[43msession\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrequest\u001b[49m\u001b[43m(\u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 259\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m response\u001b[38;5;241m.\u001b[39mstatus_code \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;129;01min\u001b[39;00m retry_on_status_codes:\n\u001b[1;32m 260\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m response\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/requests/sessions.py:589\u001b[0m, in \u001b[0;36mSession.request\u001b[0;34m(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)\u001b[0m\n\u001b[1;32m 584\u001b[0m send_kwargs \u001b[38;5;241m=\u001b[39m {\n\u001b[1;32m 585\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mtimeout\u001b[39m\u001b[38;5;124m\"\u001b[39m: timeout,\n\u001b[1;32m 586\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mallow_redirects\u001b[39m\u001b[38;5;124m\"\u001b[39m: allow_redirects,\n\u001b[1;32m 587\u001b[0m }\n\u001b[1;32m 588\u001b[0m send_kwargs\u001b[38;5;241m.\u001b[39mupdate(settings)\n\u001b[0;32m--> 589\u001b[0m resp \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msend\u001b[49m\u001b[43m(\u001b[49m\u001b[43mprep\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43msend_kwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 591\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m resp\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/requests/sessions.py:703\u001b[0m, in \u001b[0;36mSession.send\u001b[0;34m(self, request, **kwargs)\u001b[0m\n\u001b[1;32m 700\u001b[0m start \u001b[38;5;241m=\u001b[39m preferred_clock()\n\u001b[1;32m 702\u001b[0m \u001b[38;5;66;03m# Send the request\u001b[39;00m\n\u001b[0;32m--> 703\u001b[0m r \u001b[38;5;241m=\u001b[39m \u001b[43madapter\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msend\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 705\u001b[0m \u001b[38;5;66;03m# Total elapsed time of the request (approximately)\u001b[39;00m\n\u001b[1;32m 706\u001b[0m elapsed \u001b[38;5;241m=\u001b[39m preferred_clock() \u001b[38;5;241m-\u001b[39m start\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/huggingface_hub/utils/_http.py:63\u001b[0m, in \u001b[0;36mUniqueRequestIdAdapter.send\u001b[0;34m(self, request, *args, **kwargs)\u001b[0m\n\u001b[1;32m 61\u001b[0m \u001b[38;5;124;03m\"\"\"Catch any RequestException to append request id to the error message for debugging.\"\"\"\u001b[39;00m\n\u001b[1;32m 62\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m---> 63\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msend\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 64\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m requests\u001b[38;5;241m.\u001b[39mRequestException \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m 65\u001b[0m request_id \u001b[38;5;241m=\u001b[39m request\u001b[38;5;241m.\u001b[39mheaders\u001b[38;5;241m.\u001b[39mget(X_AMZN_TRACE_ID)\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/requests/adapters.py:486\u001b[0m, in \u001b[0;36mHTTPAdapter.send\u001b[0;34m(self, request, stream, timeout, verify, cert, proxies)\u001b[0m\n\u001b[1;32m 483\u001b[0m timeout \u001b[38;5;241m=\u001b[39m TimeoutSauce(connect\u001b[38;5;241m=\u001b[39mtimeout, read\u001b[38;5;241m=\u001b[39mtimeout)\n\u001b[1;32m 485\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 486\u001b[0m resp \u001b[38;5;241m=\u001b[39m \u001b[43mconn\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43murlopen\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 487\u001b[0m \u001b[43m \u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrequest\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 488\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 489\u001b[0m \u001b[43m \u001b[49m\u001b[43mbody\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrequest\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mbody\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 490\u001b[0m \u001b[43m \u001b[49m\u001b[43mheaders\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mrequest\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mheaders\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 491\u001b[0m \u001b[43m \u001b[49m\u001b[43mredirect\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 492\u001b[0m \u001b[43m \u001b[49m\u001b[43massert_same_host\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 493\u001b[0m \u001b[43m \u001b[49m\u001b[43mpreload_content\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 494\u001b[0m \u001b[43m \u001b[49m\u001b[43mdecode_content\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 495\u001b[0m \u001b[43m \u001b[49m\u001b[43mretries\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmax_retries\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 496\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 497\u001b[0m \u001b[43m \u001b[49m\u001b[43mchunked\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mchunked\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 498\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 500\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m (ProtocolError, \u001b[38;5;167;01mOSError\u001b[39;00m) \u001b[38;5;28;01mas\u001b[39;00m err:\n\u001b[1;32m 501\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mConnectionError\u001b[39;00m(err, request\u001b[38;5;241m=\u001b[39mrequest)\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/connectionpool.py:703\u001b[0m, in \u001b[0;36mHTTPConnectionPool.urlopen\u001b[0;34m(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)\u001b[0m\n\u001b[1;32m 700\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_prepare_proxy(conn)\n\u001b[1;32m 702\u001b[0m \u001b[38;5;66;03m# Make the request on the httplib connection object.\u001b[39;00m\n\u001b[0;32m--> 703\u001b[0m httplib_response \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_make_request\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 704\u001b[0m \u001b[43m \u001b[49m\u001b[43mconn\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 705\u001b[0m \u001b[43m \u001b[49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 706\u001b[0m \u001b[43m \u001b[49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 707\u001b[0m \u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout_obj\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 708\u001b[0m \u001b[43m \u001b[49m\u001b[43mbody\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mbody\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 709\u001b[0m \u001b[43m \u001b[49m\u001b[43mheaders\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mheaders\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 710\u001b[0m \u001b[43m \u001b[49m\u001b[43mchunked\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mchunked\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 711\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 713\u001b[0m \u001b[38;5;66;03m# If we're going to release the connection in ``finally:``, then\u001b[39;00m\n\u001b[1;32m 714\u001b[0m \u001b[38;5;66;03m# the response doesn't need to know about the connection. Otherwise\u001b[39;00m\n\u001b[1;32m 715\u001b[0m \u001b[38;5;66;03m# it will also try to release it and we'll have a double-release\u001b[39;00m\n\u001b[1;32m 716\u001b[0m \u001b[38;5;66;03m# mess.\u001b[39;00m\n\u001b[1;32m 717\u001b[0m response_conn \u001b[38;5;241m=\u001b[39m conn \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m release_conn \u001b[38;5;28;01melse\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/connectionpool.py:386\u001b[0m, in \u001b[0;36mHTTPConnectionPool._make_request\u001b[0;34m(self, conn, method, url, timeout, chunked, **httplib_request_kw)\u001b[0m\n\u001b[1;32m 384\u001b[0m \u001b[38;5;66;03m# Trigger any extra validation we need to do.\u001b[39;00m\n\u001b[1;32m 385\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 386\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_validate_conn\u001b[49m\u001b[43m(\u001b[49m\u001b[43mconn\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 387\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m (SocketTimeout, BaseSSLError) \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m 388\u001b[0m \u001b[38;5;66;03m# Py2 raises this as a BaseSSLError, Py3 raises it as socket timeout.\u001b[39;00m\n\u001b[1;32m 389\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_raise_timeout(err\u001b[38;5;241m=\u001b[39me, url\u001b[38;5;241m=\u001b[39murl, timeout_value\u001b[38;5;241m=\u001b[39mconn\u001b[38;5;241m.\u001b[39mtimeout)\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/connectionpool.py:1042\u001b[0m, in \u001b[0;36mHTTPSConnectionPool._validate_conn\u001b[0;34m(self, conn)\u001b[0m\n\u001b[1;32m 1040\u001b[0m \u001b[38;5;66;03m# Force connect early to allow us to validate the connection.\u001b[39;00m\n\u001b[1;32m 1041\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mgetattr\u001b[39m(conn, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msock\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m): \u001b[38;5;66;03m# AppEngine might not have `.sock`\u001b[39;00m\n\u001b[0;32m-> 1042\u001b[0m \u001b[43mconn\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mconnect\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1044\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m conn\u001b[38;5;241m.\u001b[39mis_verified:\n\u001b[1;32m 1045\u001b[0m warnings\u001b[38;5;241m.\u001b[39mwarn(\n\u001b[1;32m 1046\u001b[0m (\n\u001b[1;32m 1047\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mUnverified HTTPS request is being made to host \u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;132;01m%s\u001b[39;00m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m. \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 1052\u001b[0m InsecureRequestWarning,\n\u001b[1;32m 1053\u001b[0m )\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/connection.py:358\u001b[0m, in \u001b[0;36mHTTPSConnection.connect\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 356\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mconnect\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[1;32m 357\u001b[0m \u001b[38;5;66;03m# Add certificate verification\u001b[39;00m\n\u001b[0;32m--> 358\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msock \u001b[38;5;241m=\u001b[39m conn \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_new_conn\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 359\u001b[0m hostname \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhost\n\u001b[1;32m 360\u001b[0m tls_in_tls \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mFalse\u001b[39;00m\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/connection.py:174\u001b[0m, in \u001b[0;36mHTTPConnection._new_conn\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 171\u001b[0m extra_kw[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msocket_options\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msocket_options\n\u001b[1;32m 173\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 174\u001b[0m conn \u001b[38;5;241m=\u001b[39m \u001b[43mconnection\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcreate_connection\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 175\u001b[0m \u001b[43m \u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_dns_host\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mport\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mextra_kw\u001b[49m\n\u001b[1;32m 176\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 178\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m SocketTimeout:\n\u001b[1;32m 179\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m ConnectTimeoutError(\n\u001b[1;32m 180\u001b[0m \u001b[38;5;28mself\u001b[39m,\n\u001b[1;32m 181\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mConnection to \u001b[39m\u001b[38;5;132;01m%s\u001b[39;00m\u001b[38;5;124m timed out. (connect timeout=\u001b[39m\u001b[38;5;132;01m%s\u001b[39;00m\u001b[38;5;124m)\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 182\u001b[0m \u001b[38;5;241m%\u001b[39m (\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhost, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtimeout),\n\u001b[1;32m 183\u001b[0m )\n", + "File \u001b[0;32m~/opt/miniconda3/lib/python3.9/site-packages/urllib3/util/connection.py:85\u001b[0m, in \u001b[0;36mcreate_connection\u001b[0;34m(address, timeout, source_address, socket_options)\u001b[0m\n\u001b[1;32m 83\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m source_address:\n\u001b[1;32m 84\u001b[0m sock\u001b[38;5;241m.\u001b[39mbind(source_address)\n\u001b[0;32m---> 85\u001b[0m \u001b[43msock\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mconnect\u001b[49m\u001b[43m(\u001b[49m\u001b[43msa\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 86\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m sock\n\u001b[1;32m 88\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m socket\u001b[38;5;241m.\u001b[39merror \u001b[38;5;28;01mas\u001b[39;00m e:\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "import random\n", + "import pandas as pd\n", + "from tutorial_ioi_utils import *\n", + "import pyvene as pv\n", + "\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " scale_y_reverse,\n", + " scale_fill_cmap,\n", + " geom_text,\n", + " theme_bw,\n", + " xlim,\n", + " ylim,\n", + " scale_x_continuous\n", + ")\n", + "\n", + "# please try not to do this, the plot somehow throw warnings though :(\n", + "import warnings\n", + "\n", + "warnings.filterwarnings(\"ignore\")\n", + "\n", + "config, tokenizer, gpt2 = pv.create_gpt2_lm(cache_dir=\"/Users/aryamanarora/.cache/huggingface/hub/\")\n", + "_ = gpt2.eval()\n", + "\n", + "titles={\n", + " \"block_output\": \"single restored layer in GPT2-XL\",\n", + " \"mlp_activation\": \"center of interval of 10 patched mlp layer\",\n", + " \"attention_output\": \"center of interval of 10 patched attn layer\"\n", + "}\n", + "\n", + "colors={\n", + " \"block_output\": \"Purples\",\n", + " \"mlp_activation\": \"Greens\",\n", + " \"attention_output\": \"Reds\"\n", + "} " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Path patching config\n", + "\n", + "This is taken from the `pyvene` 101 tutorial. Basically, we'll intervene at all positions for a single attention head, and restore the base input for all upstream model components. This will get the direct effect of the intervention on the logits." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def path_patching_config(\n", + " layer, last_layer, \n", + " component=\"head_attention_value_output\", unit=\"h.pos\"\n", + "):\n", + " intervening_component = [\n", + " {\"layer\": layer, \"component\": component, \"unit\": unit, \"group_key\": 0}]\n", + " restoring_components = []\n", + " if not component.startswith(\"mlp_\"):\n", + " restoring_components += [\n", + " {\"layer\": layer, \"component\": \"mlp_output\", \"group_key\": 1}]\n", + " for i in range(layer+1, last_layer):\n", + " restoring_components += [\n", + " {\"layer\": i, \"component\": \"attention_output\", \"group_key\": 1},\n", + " {\"layer\": i, \"component\": \"mlp_output\", \"group_key\": 1}\n", + " ]\n", + " intervenable_config = pv.IntervenableConfig(\n", + " intervening_component + restoring_components)\n", + " return intervenable_config, len(restoring_components)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Dataset + Utils\n", + "\n", + "Just sampling prompts for the IOI task." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "test_distribution = PromptDistribution(\n", + " names=NAMES,\n", + " objects=OBJECTS,\n", + " places=PLACES,\n", + " templates=TEMPLATES,\n", + ")\n", + "\n", + "D_test = test_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\n", + " \"ABB\",\n", + " ],\n", + " source_patterns=[\"DCE\"],\n", + " labels=\"name\",\n", + " samples_per_combination=25,\n", + ") + test_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\n", + " \"BAB\",\n", + " ],\n", + " source_patterns=[\"DCE\"],\n", + " labels=\"name\",\n", + " samples_per_combination=25,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "tokenizer.pad_token = tokenizer.eos_token\n", + "\n", + "def get_last_token(logits, attention_mask):\n", + " last_token_indices = attention_mask.sum(1) - 1\n", + " batch_indices = torch.arange(logits.size(0)).unsqueeze(1)\n", + " return logits[batch_indices, last_token_indices.unsqueeze(1)].squeeze(1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[<===PROMPT=== Then, Justin and Bryan went to the hospital. Justin gave a necklace to>] torch.Size([1, 15]) Bryan\n", + "[<===PROMPT=== Then, Courtney and Thomas went to the hospital. Ashley gave a necklace to>] torch.Size([1, 15]) None\n" + ] + } + ], + "source": [ + "for batch in D_test.batches(batch_size=1):\n", + " print(batch.base, batch.base.tokens['input_ids'].shape, tokenizer.decode(batch.patched_answer_tokens[0][1]))\n", + " print(batch.source, batch.source.tokens['input_ids'].shape, tokenizer.decode(batch.patched_answer_tokens[0][0]))\n", + " break" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We're also implementing the logit diff metric, which checks the difference in logits between the two names in the sentence. Positive logit diff means a correct prediction is more likely (the IO, i.e. non-subject name)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def compute_logit_diff(logits: torch.tensor, batch):\n", + " base_logit = get_last_token(logits, batch.base.tokens['attention_mask'])\n", + " base_label = batch.patched_answer_tokens[:, 1].to(gpt2.device)\n", + " logit_diffs = []\n", + " for batch_i in range(base_logit.size(0)):\n", + " correct_name = base_label[batch_i]\n", + " other_name = tokenizer.encode(' ' + batch.base.prompts[batch_i].s_name)[0]\n", + " logit_diffs.append(base_logit[batch_i, correct_name] - base_logit[batch_i, other_name])\n", + " return logit_diffs" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "They reported a baseline logit difference of 3.56 and a task accuracy of 99.3% for GPT-2 in the paper. Let's check if this holds on our dataset (it pretty much does):" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 10/10 [00:02<00:00, 4.54it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "avg logit diff: 3.7562549114227295\n", + "argmax acc: 0.94\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "with torch.no_grad():\n", + " logit_diffs = []\n", + " argmax_acc = 0\n", + " for batch in tqdm(D_test.batches(batch_size=5), total=10):\n", + " base_label = batch.patched_answer_tokens[:, 1].to(gpt2.device)\n", + " base_logit = get_last_token(gpt2(**batch.base.tokens).logits, batch.base.tokens['attention_mask'])\n", + " src_logit = get_last_token(gpt2(**batch.source.tokens).logits, batch.source.tokens['attention_mask'])\n", + " for batch_i in range(5):\n", + " other_name = tokenizer.encode(' ' + batch.base.prompts[batch_i].s_name)[0]\n", + " correct_name = base_label[batch_i]\n", + "\n", + " # logit diff\n", + " logit_diffs.append(\n", + " base_logit[batch_i, base_label[batch_i]] - base_logit[batch_i, other_name].item())\n", + "\n", + " # baseline accuracy\n", + " argmax = base_logit[batch_i].argmax()\n", + " if argmax == base_label[batch_i]:\n", + " argmax_acc += 1\n", + "\n", + " logit_diff = (sum(logit_diffs) / len(logit_diffs)).item()\n", + " print(\"avg logit diff:\", logit_diff)\n", + " print(\"argmax acc:\", argmax_acc / 50)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Name mover heads\n", + "\n", + "We will replicate figure 3, which identifies heads which directly affect the logits." + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING:root:Detected use_fast=True means the intervention location will be static within a batch.\n", + "\n", + "In case multiple location tags are passed only the first one will be considered\n", + "100%|██████████| 50/50 [00:07<00:00, 6.68it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 0, 'logit_diff': tensor(3.7504), 'accuracy': 0.94, 'kl_div': tensor(-74.3469), 'label_logit': -74.34694038391113, 'label_prob': 0.5380359962582588}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.44it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 1, 'logit_diff': tensor(3.7568), 'accuracy': 0.94, 'kl_div': tensor(-74.4057), 'label_logit': -74.40572700500488, 'label_prob': 0.5395114549994469}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.22it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 2, 'logit_diff': tensor(3.8010), 'accuracy': 0.94, 'kl_div': tensor(-74.4281), 'label_logit': -74.42814888000488, 'label_prob': 0.5384641465544701}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.38it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 3, 'logit_diff': tensor(3.7179), 'accuracy': 0.92, 'kl_div': tensor(-74.5966), 'label_logit': -74.59663963317871, 'label_prob': 0.5215314196050167}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:08<00:00, 5.84it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 4, 'logit_diff': tensor(3.7548), 'accuracy': 0.94, 'kl_div': tensor(-74.4089), 'label_logit': -74.40891792297363, 'label_prob': 0.5398365586996079}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.36it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 5, 'logit_diff': tensor(3.7737), 'accuracy': 0.94, 'kl_div': tensor(-74.4948), 'label_logit': -74.49480590820312, 'label_prob': 0.5443936404585838}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:08<00:00, 6.24it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 6, 'logit_diff': tensor(3.8182), 'accuracy': 0.94, 'kl_div': tensor(-74.4737), 'label_logit': -74.47373725891113, 'label_prob': 0.5551303905248642}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.79it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 7, 'logit_diff': tensor(3.7553), 'accuracy': 0.94, 'kl_div': tensor(-74.4145), 'label_logit': -74.41451263427734, 'label_prob': 0.5396078166365623}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 7.13it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 8, 'logit_diff': tensor(3.7844), 'accuracy': 0.94, 'kl_div': tensor(-74.4013), 'label_logit': -74.40127014160156, 'label_prob': 0.536662351489067}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 7.08it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 9, 'logit_diff': tensor(3.7546), 'accuracy': 0.94, 'kl_div': tensor(-74.4106), 'label_logit': -74.41055702209472, 'label_prob': 0.5401303231716156}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.89it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 10, 'logit_diff': tensor(3.5075), 'accuracy': 0.94, 'kl_div': tensor(-74.2388), 'label_logit': -74.23884353637695, 'label_prob': 0.5428883665800095}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.37it/s]\n", + "WARNING:root:Detected use_fast=True means the intervention location will be static within a batch.\n", + "\n", + "In case multiple location tags are passed only the first one will be considered\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 8, 'head': 11, 'logit_diff': tensor(3.7405), 'accuracy': 0.92, 'kl_div': tensor(-74.6022), 'label_logit': -74.60216705322266, 'label_prob': 0.5177586142718792}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.30it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 0, 'logit_diff': tensor(3.7050), 'accuracy': 0.94, 'kl_div': tensor(-74.6208), 'label_logit': -74.620824508667, 'label_prob': 0.5102730639278888}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.15it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 1, 'logit_diff': tensor(3.7559), 'accuracy': 0.94, 'kl_div': tensor(-74.4151), 'label_logit': -74.41508010864258, 'label_prob': 0.5392078700661659}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.28it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 2, 'logit_diff': tensor(3.7019), 'accuracy': 0.94, 'kl_div': tensor(-74.6157), 'label_logit': -74.61571449279785, 'label_prob': 0.5136157578229904}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:08<00:00, 6.16it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 3, 'logit_diff': tensor(3.7431), 'accuracy': 0.94, 'kl_div': tensor(-74.3672), 'label_logit': -74.3671482849121, 'label_prob': 0.5368358224630356}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.46it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 4, 'logit_diff': tensor(3.7632), 'accuracy': 0.94, 'kl_div': tensor(-74.4501), 'label_logit': -74.45014938354493, 'label_prob': 0.5293045191466809}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.86it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 5, 'logit_diff': tensor(3.7335), 'accuracy': 0.94, 'kl_div': tensor(-74.4766), 'label_logit': -74.47663719177245, 'label_prob': 0.5465028408169746}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:08<00:00, 5.85it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 6, 'logit_diff': tensor(2.7914), 'accuracy': 0.7, 'kl_div': tensor(-76.0374), 'label_logit': -76.03742889404298, 'label_prob': 0.29187622375786304}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 7.05it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 7, 'logit_diff': tensor(3.7026), 'accuracy': 0.94, 'kl_div': tensor(-74.3311), 'label_logit': -74.33110733032227, 'label_prob': 0.5488018499314785}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 7.05it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 8, 'logit_diff': tensor(3.7859), 'accuracy': 0.94, 'kl_div': tensor(-74.8128), 'label_logit': -74.81278228759766, 'label_prob': 0.4744531024992466}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.61it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 9, 'logit_diff': tensor(1.4911), 'accuracy': 0.22, 'kl_div': tensor(-77.3908), 'label_logit': -77.39078643798828, 'label_prob': 0.12255394758656621}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.70it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 10, 'logit_diff': tensor(3.7551), 'accuracy': 0.94, 'kl_div': tensor(-74.3962), 'label_logit': -74.39617370605468, 'label_prob': 0.5393955698609352}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.31it/s]\n", + "WARNING:root:Detected use_fast=True means the intervention location will be static within a batch.\n", + "\n", + "In case multiple location tags are passed only the first one will be considered\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 9, 'head': 11, 'logit_diff': tensor(3.7567), 'accuracy': 0.94, 'kl_div': tensor(-74.4002), 'label_logit': -74.40017051696778, 'label_prob': 0.5373660787940026}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.85it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 0, 'logit_diff': tensor(3.1255), 'accuracy': 0.66, 'kl_div': tensor(-75.9131), 'label_logit': -75.91307647705078, 'label_prob': 0.3100175105780363}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.76it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 1, 'logit_diff': tensor(3.6291), 'accuracy': 0.92, 'kl_div': tensor(-74.7467), 'label_logit': -74.74669570922852, 'label_prob': 0.4808885481953621}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.71it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 2, 'logit_diff': tensor(3.6425), 'accuracy': 0.88, 'kl_div': tensor(-74.8445), 'label_logit': -74.84453872680665, 'label_prob': 0.4534783412516117}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.57it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 3, 'logit_diff': tensor(3.7048), 'accuracy': 0.92, 'kl_div': tensor(-74.5217), 'label_logit': -74.52171600341796, 'label_prob': 0.5153644406795501}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.59it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 4, 'logit_diff': tensor(3.7698), 'accuracy': 0.94, 'kl_div': tensor(-74.6806), 'label_logit': -74.68061622619629, 'label_prob': 0.5424765661358834}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.19it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 5, 'logit_diff': tensor(3.7580), 'accuracy': 0.94, 'kl_div': tensor(-74.3888), 'label_logit': -74.3887621307373, 'label_prob': 0.5407887950539589}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 7.00it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 6, 'logit_diff': tensor(3.4450), 'accuracy': 0.9, 'kl_div': tensor(-75.0385), 'label_logit': -75.0384928894043, 'label_prob': 0.4376738278567791}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.58it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 7, 'logit_diff': tensor(5.1090), 'accuracy': 0.98, 'kl_div': tensor(-72.2116), 'label_logit': -72.21165046691894, 'label_prob': 0.8099988362193108}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.89it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 8, 'logit_diff': tensor(3.7607), 'accuracy': 0.94, 'kl_div': tensor(-74.4309), 'label_logit': -74.43088127136231, 'label_prob': 0.5412813138961792}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.34it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 9, 'logit_diff': tensor(3.7759), 'accuracy': 0.92, 'kl_div': tensor(-74.4457), 'label_logit': -74.44571556091309, 'label_prob': 0.5376637886464596}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.46it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 10, 'logit_diff': tensor(3.1971), 'accuracy': 0.8, 'kl_div': tensor(-75.1706), 'label_logit': -75.17062294006348, 'label_prob': 0.38778901934623716}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.67it/s]\n", + "WARNING:root:Detected use_fast=True means the intervention location will be static within a batch.\n", + "\n", + "In case multiple location tags are passed only the first one will be considered\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 10, 'head': 11, 'logit_diff': tensor(3.7515), 'accuracy': 0.94, 'kl_div': tensor(-74.4513), 'label_logit': -74.4512720489502, 'label_prob': 0.5345661920309067}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.49it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 0, 'logit_diff': tensor(3.7527), 'accuracy': 0.94, 'kl_div': tensor(-74.4928), 'label_logit': -74.49275856018066, 'label_prob': 0.5453835587203503}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.53it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 1, 'logit_diff': tensor(3.6884), 'accuracy': 0.9, 'kl_div': tensor(-74.3526), 'label_logit': -74.35264060974121, 'label_prob': 0.5213113659620285}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.46it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 2, 'logit_diff': tensor(4.2981), 'accuracy': 0.88, 'kl_div': tensor(-74.8699), 'label_logit': -74.86986404418946, 'label_prob': 0.4666699156165123}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.71it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 3, 'logit_diff': tensor(3.7677), 'accuracy': 0.9, 'kl_div': tensor(-74.9174), 'label_logit': -74.91741744995117, 'label_prob': 0.47216988608241084}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.60it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 4, 'logit_diff': tensor(3.7532), 'accuracy': 0.94, 'kl_div': tensor(-74.3741), 'label_logit': -74.37413780212403, 'label_prob': 0.5394928365945816}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:06<00:00, 7.54it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 5, 'logit_diff': tensor(3.7504), 'accuracy': 0.94, 'kl_div': tensor(-74.3879), 'label_logit': -74.38786392211914, 'label_prob': 0.5406103874742985}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.85it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 6, 'logit_diff': tensor(3.7768), 'accuracy': 0.94, 'kl_div': tensor(-74.6573), 'label_logit': -74.65733688354493, 'label_prob': 0.4942662340402603}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.83it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 7, 'logit_diff': tensor(3.7518), 'accuracy': 0.94, 'kl_div': tensor(-74.4400), 'label_logit': -74.44003486633301, 'label_prob': 0.5410507157444954}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.28it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 8, 'logit_diff': tensor(3.7459), 'accuracy': 0.94, 'kl_div': tensor(-74.9492), 'label_logit': -74.94922843933105, 'label_prob': 0.535863026380539}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:08<00:00, 6.13it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 9, 'logit_diff': tensor(3.6901), 'accuracy': 0.94, 'kl_div': tensor(-74.6614), 'label_logit': -74.66142028808594, 'label_prob': 0.4914996309578419}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.31it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 10, 'logit_diff': tensor(4.5615), 'accuracy': 0.96, 'kl_div': tensor(-72.9968), 'label_logit': -72.99680526733398, 'label_prob': 0.7122889611124993}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 50/50 [00:07<00:00, 6.59it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'layer': 11, 'head': 11, 'logit_diff': tensor(3.7668), 'accuracy': 0.94, 'kl_div': tensor(-76.5733), 'label_logit': -76.57328651428223, 'label_prob': 0.507421883046627}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "data = []\n", + "\n", + "with torch.no_grad():\n", + " for layer in range(8, 12):\n", + " intervenable_config, num_restores = path_patching_config(layer, 12)\n", + " intervenable = IntervenableModel(intervenable_config, gpt2, use_fast=True)\n", + "\n", + " for head in range(gpt2.config.n_head):\n", + " eval_labels, eval_preds, logit_diffs = [], [], []\n", + " for batch_dataset in tqdm(D_test.batches(batch_size=1), total=50):\n", + " # prepare\n", + " base_inputs = batch_dataset.base.tokens\n", + " source_inputs = batch_dataset.source.tokens\n", + " labels = batch_dataset.patched_answer_tokens[:, 1].to(gpt2.device)\n", + " pos = list(range(base_inputs[\"input_ids\"].shape[-1]))\n", + "\n", + " # inference\n", + " _, counterfactual_outputs = intervenable(\n", + " {\"input_ids\": base_inputs[\"input_ids\"]}, \n", + " [{\"input_ids\": source_inputs[\"input_ids\"]}, {\"input_ids\": base_inputs[\"input_ids\"]}],\n", + " {\"sources->base\": ((\n", + " [[[[head]], [pos]]]+[[pos]]*num_restores, \n", + " [[[[head]], [pos]]]+[[pos]]*num_restores\n", + " ))}\n", + " )\n", + " logit_diffs.extend(compute_logit_diff(counterfactual_outputs.logits, batch_dataset))\n", + " eval_labels += [labels]\n", + " last_token_logits = get_last_token(counterfactual_outputs.logits, batch_dataset.base.tokens['attention_mask']).unsqueeze(1)\n", + " eval_preds += [last_token_logits]\n", + " \n", + " # metrics\n", + " eval_metrics = compute_metrics(\n", + " eval_preds, eval_labels,\n", + " )\n", + " mean_logit_diff = sum(logit_diffs) / len(logit_diffs)\n", + " data.append({\"layer\": layer, \"head\": head, \"logit_diff\": mean_logit_diff, **eval_metrics})\n", + " print(data[-1])\n" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2024-01-24T23:28:03.019961\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.5.2, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.DataFrame(data)\n", + "df[\"logit_diff\"] = df[\"logit_diff\"].apply(lambda x: x.item())\n", + "df[\"logit_diff_relative\"] = (df[\"logit_diff\"] - logit_diff) / logit_diff\n", + "lim = df[\"logit_diff_relative\"].abs().max()\n", + "df[\"formatted\"] = df[\"logit_diff_relative\"].apply(lambda x: f\"{x:.2f}\")\n", + "plot = (\n", + " ggplot(df, aes(x=\"head\", y=\"layer\", fill=\"logit_diff_relative\")) + geom_tile()\n", + " + scale_fill_cmap(\"RdBu\", limits=(-lim, lim)) + scale_y_reverse(expand=[0, 0])\n", + " + geom_text(aes(label=\"formatted\"), size=8, color=\"black\")\n", + " + theme_bw() + scale_x_continuous(expand=[0, 0])\n", + ")\n", + "print(plot)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/_sources/tutorials/advanced_tutorials/IOI_with_DAS.ipynb b/_sources/tutorials/advanced_tutorials/IOI_with_DAS.ipynb new file mode 100644 index 00000000..d5b39266 --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/IOI_with_DAS.ipynb @@ -0,0 +1,23409 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "551d125e", + "metadata": {}, + "source": [ + "## IOI with DAS" + ] + }, + { + "cell_type": "markdown", + "id": "303cfd3b", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/frankaging/pyvene/blob/main/tutorials/Indirect%20object%20identification%20(IOI)%20circuit%20with%20DAS.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "a8810845", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"12/31/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "862b5e8d", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "This tutorial aims to replicate key findings from previous mechanistic interpretability papers that examine the IOI task using this library. It focuses on identifying alignments for the name position information and the output IO name at various locations within the neural networks.\n", + "\n", + "Additionally, the tutorial seeks to provide new insights into GPT-2's causal mechanisms in solving this task by analyzing how information is stored and processed across different attention heads." + ] + }, + { + "cell_type": "markdown", + "id": "f9a1a307", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "f6d2cbb1", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "f6ca42bf", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import random\n", + "import pandas as pd\n", + "from tutorial_ioi_utils import *\n", + "from pyvene import embed_to_distrib, top_vals, format_token, sigmoid_boundary\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + " LowRankRotatedSpaceIntervention,\n", + " SkipIntervention,\n", + " VanillaIntervention,\n", + " BoundlessRotatedSpaceIntervention,\n", + ")\n", + "from pyvene import create_gpt2_lm\n", + "\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + " scale_y_reverse,\n", + " scale_fill_cmap,\n", + " geom_text,\n", + " scale_fill_gradient,\n", + " geom_point,\n", + " geom_line,\n", + " theme_minimal,\n", + " ylim,\n", + " ggtitle,\n", + " ggsave,\n", + " labs,\n", + " scale_x_discrete,\n", + " geom_histogram,\n", + " scale_fill_manual,\n", + ")\n", + "\n", + "# please try not to do this, the plot somehow throw warnings though :(\n", + "import warnings\n", + "\n", + "warnings.filterwarnings(\"ignore\")\n", + "\n", + "config, tokenizer, gpt2 = create_gpt2_lm()\n", + "_ = gpt2.eval().to(\"cuda\" if torch.cuda.is_available() else \"cpu\")" + ] + }, + { + "cell_type": "markdown", + "id": "ee8dfa3c", + "metadata": {}, + "source": [ + "### Factual recall\n", + "We first check IOI task performance of GPT-2." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "67c757c5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "gpt-2 IOI task accuracy: 0.91\n" + ] + } + ], + "source": [ + "transformers.set_seed(42)\n", + "tokenizer.pad_token = tokenizer.eos_token\n", + "\n", + "def get_last_token(logits, attention_mask):\n", + " last_token_indices = attention_mask.sum(1) - 1\n", + " batch_indices = torch.arange(logits.size(0)).unsqueeze(1)\n", + " return logits[batch_indices, last_token_indices.unsqueeze(1)].squeeze(1)\n", + "\n", + "train_distribution = PromptDistribution(\n", + " names=NAMES[: len(NAMES) // 2],\n", + " objects=OBJECTS[: len(OBJECTS) // 2],\n", + " places=PLACES[: len(PLACES) // 2],\n", + " templates=TEMPLATES_PATH,\n", + ")\n", + "\n", + "D_train = train_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\"ABB\", \"BAB\"],\n", + " source_patterns=[\"ABB\", \"BAB\"],\n", + " labels=\"position\",\n", + " samples_per_combination=50,\n", + ")\n", + "\n", + "total_count = 0\n", + "correct_count = 0\n", + "with torch.no_grad():\n", + " for batch_dataset in D_train.batches(batch_size=30):\n", + " inputs = batch_dataset.base.tokens\n", + "\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(gpt2.device)\n", + " labels = batch_dataset.base.answer_tokens[:, 0].to(gpt2.device)\n", + "\n", + " outputs = gpt2(**inputs)\n", + " logits = get_last_token(outputs.logits, inputs[\"attention_mask\"]).unsqueeze(1)\n", + "\n", + " pred_labels = logits.argmax(dim=-1)[:, -1]\n", + " correct_labels = labels == pred_labels\n", + "\n", + " total_count += len(correct_labels)\n", + " correct_count += correct_labels.sum().tolist()\n", + "current_acc = round(correct_count / total_count, 2)\n", + "print(f\"gpt-2 IOI task accuracy: {current_acc}\")" + ] + }, + { + "cell_type": "markdown", + "id": "7a89af96", + "metadata": {}, + "source": [ + "### Localizing the name position information in the main residual stream and MLP activations\n", + "This section reproduces main results in [this paper](https://arxiv.org/pdf/2311.17030.pdf). To address the IOI task, previous studies have shown that GPT-2 creates representations for a causal variable representing the correct name position (either the first or second name mentioned in a sentence). Our objective is to utilize our library to pinpoint the location of name position information at each layer and across several positions, not just at the last token position." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f07658ea", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "finding name position at: pos->13, layers->0, stream->block_output\n" + ] + }, + { + "ename": "AssertionError", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAssertionError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [5], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m block_out_data \u001b[38;5;241m=\u001b[39m \u001b[43mfind_variable_at\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 2\u001b[0m \u001b[43m \u001b[49m\u001b[43mgpt2\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 3\u001b[0m \u001b[43m \u001b[49m\u001b[43mtokenizer\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 4\u001b[0m \u001b[43m \u001b[49m\u001b[43mpositions\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m13\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m14\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m15\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m16\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m17\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 5\u001b[0m \u001b[43m \u001b[49m\u001b[43mlayers\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m[\u001b[49m\u001b[43mi\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mfor\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mi\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;129;43;01min\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[38;5;28;43mrange\u001b[39;49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m12\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 6\u001b[0m \u001b[43m \u001b[49m\u001b[43mstream\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mblock_output\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 7\u001b[0m \u001b[43m \u001b[49m\u001b[43maligning_variable\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mposition\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 8\u001b[0m \u001b[43m \u001b[49m\u001b[43mdebug\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[1;32m 9\u001b[0m \u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/Documents/Code/pyvene/tutorials/advanced_tutorials/tutorial_ioi_utils.py:704\u001b[0m, in \u001b[0;36mfind_variable_at\u001b[0;34m(gpt2, tokenizer, positions, layers, stream, heads, low_rank_dimension, aligning_variable, do_vanilla_intervention, do_boundless_das, seed, return_intervenable, debug)\u001b[0m\n\u001b[1;32m 699\u001b[0m \u001b[38;5;66;03m# prepare label\u001b[39;00m\n\u001b[1;32m 700\u001b[0m labels \u001b[38;5;241m=\u001b[39m batch_dataset\u001b[38;5;241m.\u001b[39mpatched_answer_tokens[:, \u001b[38;5;241m0\u001b[39m]\u001b[38;5;241m.\u001b[39mto(\n\u001b[1;32m 701\u001b[0m gpt2\u001b[38;5;241m.\u001b[39mdevice\n\u001b[1;32m 702\u001b[0m )\n\u001b[0;32m--> 704\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;28mall\u001b[39m(x \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m18\u001b[39m \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m batch_dataset\u001b[38;5;241m.\u001b[39mbase\u001b[38;5;241m.\u001b[39mlengths)\n\u001b[1;32m 705\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;28mall\u001b[39m(x \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m18\u001b[39m \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m batch_dataset\u001b[38;5;241m.\u001b[39msource\u001b[38;5;241m.\u001b[39mlengths)\n\u001b[1;32m 707\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m heads \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n", + "\u001b[0;31mAssertionError\u001b[0m: " + ] + } + ], + "source": [ + "block_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " positions=[13, 14, 15, 16, 17],\n", + " layers=[i for i in range(12)],\n", + " stream=\"block_output\",\n", + " aligning_variable=\"position\",\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "e1cb1c8d", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AAEAAElEQVR4nOzdd3xUVfrH8e+kkAokEFog0kIIYAFBRDpYFpUqii4CoalgAbuoWNbFukizoVIVUVFpgR92kF6CIAiBUFQIPbRAGinz+yNkmCEzyUwyIcncz3tfs97knnvOM+Q+mckz555rMpvNZgEAAAAAAADwSF6lHQAAAAAAAACAkkMBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFABxRc2aNUsmk0kmk0n16tUr7XDggryfm8lk0ooVK9zad+fOnS19v/rqq27tuyyoV6+e5fnNmjWrtMMBAAAAABiMT2kHAABwj3Pnzmnz5s3as2ePzpw5owsXLigoKEg1atRQ/fr11axZM1WsWLG0wwQAAAAAXGEUAMuoWbNmaciQIfm+v2vXLjVu3NilvsaOHavXX3893/fNZnOR4zOSFStWqEuXLgW28ff3V+XKlXXVVVfp+uuvV69evfSvf/1LXl5MskXJW7lypd59910tXbpU2dnZDtt5eXmpcePG6tq1q3r27KnbbrvNYVvrmZiDBw9mxi4AAAAAlGMUAMuZ2bNn64033nC6fU5Ojj7//PMSjAiSlJ6ervT0dB07dkybNm3Sxx9/rKioKE2fPl3t27cv7fDgobKysjRq1Ch99NFHTrXPyclRfHy84uPj9e233+ro0aMO2/7nP/+xbHfu3JkCIAAAAACUYxQAy5nPP/9c48aNc3pm2a+//qoDBw6UcFTOGzx4sAYPHlzaYRRL9erV811GmZaWphMnTigzM9PyvYSEBHXt2lVLliwpcKZVecGM0bJnyJAhmjNnjs33WrVqpU6dOqlBgwYKDAzU2bNnlZiYqI0bN2rjxo1KT08vpWgBAAAAAKWFAmA5UaNGDR07dkyJiYn69ddfdcsttzh1nPUNB/L6QPG8/fbbdouYFy5c0KpVq/Tf//5Xv/32myQpMzNT/fv31/79+1WpUqUrHCk82XfffWdT/GvQoIE+//xztW3b1uEx586d09KlSzVt2jTt2LHjSoQJAAAAACgDWKCsnLj//vst27Nnz3bqmHPnzmnBggWSJG9vb913330lEhtyVahQQTfffLN+/fVX9enTx/L9kydP6pNPPinFyOCJxo8fb9muVKmSli9fXmDxT5IqVqyo++67Tz///LPWrFlT0iECAAAAAMoIZgCWEwMGDNDkyZOVnZ2t+fPn68MPPyz0bp7z5s1TamqqJOlf//qXatasWaSxT58+rW3btikhIUGnTp2S2WxW1apV1bBhQ910000KCAgoUr9FlZWVpd9++0379u3TyZMnVbVqVV1//fVq2bKlTCbTFY3FHi8vL02ePFkLFy60XDa7bNkyPf300073kZmZqTVr1mj//v06fvy4AgMDVbt2bXXq1ElhYWEux5STk6Pt27dr69atSkpKUlpamgICAhQWFqYGDRqoefPmJXZ32MOHD+u3335TYmKiAgICFBERoU6dOikkJKRExnMHs9ms+Ph47dy5U4mJiUpJSVFwcLCqV6+u1q1bq2HDhqUa36lTp7RhwwbL1wMGDNBVV13lUh8NGjRwd1iFOnbsmNasWaPDhw/r3Llzqlu3rvr371/gMX/88Ye2b9+uY8eOyWw2q2bNmmrTpo0iIyOLFMP58+e1bds27d69W0lJScrKylJoaKjq1q2rdu3auW2mbnp6ulasWKG///5bp0+fVvXq1dWxY0c1atTI4TEpKSlasWKFEhISlJ6erpo1a6pLly5FWn/x5MmT2rhxo/bt26fk5GR5eXkpODhYERERio6OVlRUVJn4fQkAAADgCjGjTJo5c6ZZkuVx5MgR8+233275esaMGYX20b59e0v7efPmmd98802bPguyf/9+82uvvWZu0aKF2cvLy+Y460eFChXMQ4YMMf/9998uP6+6deu61C4nJ8c8fvx4c82aNe3GEhUVZf7hhx+cisMVy5cvtxln5syZTh3XuHFjyzG1atVy6phjx46ZR4wYYa5UqZLd5+jt7W3u0aOHOSEhwan+srKyzBMnTjRfddVVDn+GksxeXl7m1q1bm+fOneuwL+v2y5cvL3TsxMREc+/eve2eP/7+/uahQ4eaz549azabzeZOnTpZ9r3yyitui8FsNptfeeUVyzGdOnVy2C4zM9O8YMEC87333muuUqVKgf9ejRs3Ns+ePduck5PjVAx169Z1+fwpyNatW23i+eijj4rdp9ls+2/l7ONy9n6We/bsMd9xxx1mb29vm2MrV65sN4709HTzO++8Y65Tp47DcZs3b27+6aefnHpeR44cMb/77rvmtm3bmn18fBz26e3tbe7Tp495+/btTvVr7/dUZmameezYsebQ0FC7Y/Tq1ct89OhRm37S0tLMY8aMMQcFBdk9pm/fvubjx487FVN8fLy5V69eBT5PSeaqVauaBw8ebD5x4oRT/QIAAAAo37gEuByJiYmxbFuv7WfPvn37tHr1aklSaGioevbs6dJYzzzzjF5++WVt2bJFOTk5DttduHBBM2fOVIsWLSzr3pWECxcuqGfPnnr66acd3rk0ISFBd9xxh77++usSi8MVVatWtWyfPHmy0PbLli1TZGSkpk6dquTkZLttsrOzFRsbq2uuuUaxsbEF9peenq477rhDTzzxRKE3gsnJydHGjRvd9m/3+++/65prrtHChQvtnj/p6emaMWOGbrjhBiUmJrplzOLatWuX+vTpo6+//lqnTp0qsO3u3bsVExOj/v3768KFC1cowktSUlJsvs7IyLjiMTjr+++/1/XXX6//+7//U3Z2dqHt9+/fr2uvvVbPPvtsgefG1q1bdeutt+rFF18stM/x48frqaee0tq1a5WVleWwXXZ2thYsWKAbbrhB8+bNK7Tfy6Wmpurmm2/WuHHjdPr0abttFi1apPbt2yspKUlS7gzrjh076q233sr3c83z3Xff6eabb9bZs2cLHH/ZsmVq3ry5Fi1aVODzlHJ/J82aNavM5B8AAACAksUlwOVIr169FBISojNnzmjVqlX666+/VL9+fbttrQuE9913n/z8/Io8btOmTXXTTTepSZMmCg0N1YULF7R//34tXbpUO3fulJT7R2yvXr20bds2ly9FdMYjjzyiJUuWSJK6dOmiW265RTVr1tTZs2f1/fff68cff5SU+wf8Aw88oHbt2qlOnTpuj8MVeX/gS5Kvr2+BbRcuXKh77rnH5o/2Dh066JZbblHt2rWVmpqqjRs36rvvvlNaWpoyMjLUt29f/fTTT+rUqZPdPseOHWv5d5Gkq666Sj169FB0dLQqVqyo1NRUHT16VH/88YeWL1/usOjoqoMHD6pbt242BZCoqCj169dPdevW1ZkzZ/Tzzz/rxx9/VEJCgu6///4yd4fh4OBgtW/fXq1atVLNmjUVGBhouaQyNjbWcifdr776SrVq1dKECROuaHzVqlWz+frHH3/U6NGji91vlSpVLJc379u3z/L98PDwIl3qv3//fk2ePFnnzp1TpUqVdNddd6l58+YKCgpSYmKifvrpJ5v2e/fuVYcOHWyK/FFRUerZs6caNmwoLy8v7dy5U19//bWlzRtvvKHg4GA9//zzTsVUv359tW/fXldffbWqVKminJwcHThwQD/++KM2bdokKbdAPWDAADVs2FAtW7Z0+vmOGDFCK1eulJeXl+644w517txZoaGhOnjwoObOnauEhATL83zsscf0xRdf6J577tGmTZssx3Tq1ElVqlTJd8z27dv1wgsv6IMPPrA79pEjR3TvvfdaisHe3t667bbb1LZtW9WqVUteXl46c+aMdu/erfXr1+uPP/5w+nkBAAAA8AClPQUR9tm7BNhsNpsfeughy/deffVVu8fm5OTYXHK4fv16s9lsdukS4P79+5sffvhh859//llgu1mzZpn9/Pwsffbr18/p5+XsJcB5l5CGhYU5vOzzs88+M5tMJssxTzzxRIFxuKIolwD//fffNvFcffXVDtseOHDAHBISYmkbHh5uXrlypd22+/fvNzdr1szStkGDBuaUlJR87c6fP2/29/e3tHv44YfNmZmZDmPIyMgwf/fdd+Zx48Y5bGP9b1DQ5be9evWyafvss8+as7Ky8rX74YcfzMHBwTY/Y5XiJcDbt283N2vWzDxnzhy7/6Z5Dh8+bO7cubOlT5PJVGieuPsS4JycHHPVqlVt/j3Gjx/v9CXJzijKv7XZbHsJcN7j1ltvNR87dqzA4zIzM82tW7e2HFOhQgXz1KlTzdnZ2fnaJicnm++9915LW19fX/O2bdsc9v3ss8+a+/fvb96wYUOBMSxdutTm0t3WrVsX2N7691RevteqVcu8cePGfG0zMjLMPXr0sGk/atQoS85v2rQp3zHp6enmO++803KMj4+Pw0uBX3rpJUu7atWqmbds2VJg7Pv37zc/9dRT5l27dhXYDgAAAIBnoABYRjkqAK5bt86m+GPvD/5ffvnF0iY6OtryfVcKgGlpaU7HOn36dJs/xPNiLex5OVsAzPvD194f1dYGDhxoae/smnvOcLUAmJ2dbe7du7fNMaNHj3bY3rqQERISYt67d2+B/R85csRmjbr3338/Xxvrc6BatWoFFv+c5UxByPr8lGQeMGBAgX0uXLgwX7GotAqAGRkZdotN9pw/f94cHR1t6ffRRx8tsL27C4Bms9n85JNP5vu3a9q0qfmtt94y//7773aLrq5wVwGwWbNmTv0++eijj2yO+/bbbwtsn5WVZe7QoYOl/d133+2wrSu/z6xzR5I5Li7OYdvLf09VqFDBvHXrVoftjx49alOYzzumoOLlkSNHbD5kmTp1qt121v8WkydPdvr5AgAAADAG1gAsZ9q0aaPGjRtLyr28Lm+dP2vWl/9arxvoCn9/f6fbDhkyxHLZYGZmpn799dcijVmQ4cOH64YbbiiwzQMPPGDZPnLkiA4ePOj2OApy4cIF/frrr+ratasWLlxo+b6vr68eeeQRu8ckJibqu+++s3z9+uuvF3qH2Zo1a9qse/bJJ5/ka2N9CWX9+vXl43NlrvafMWOGZTswMFDjx48vsH2vXr102223lXRYTqlQoYK8vJz7lRgUFGRzyekPP/xQUmE5NHbs2Hznys6dOzVmzBhdf/31qlSpktq3b68nn3xSCxYsKHRdw5LyzjvvFPr7xGw2a/LkyZav77nnHvXt27fAY7y9vTVp0iTL14sWLdLx48fttnXl91nXrl3VpUsXy9eu/GwffPBBXXfddQ7316hRQ7fccovN9x566CFdc801Do+pWbOmzTEbN26028465wu60zAAAAAAY6IAWA5ZF/Vmz55ts+/8+fOaP3++JMnLy0sDBw4s8XhMJpPNH8ybN292+xiDBw8utM0NN9xgU8DZvXu32+OQpOeee06RkZE2j4iICFWsWFE333xzvpuhTJ482eEf5N9++61l3b/g4GANHTrUqRisf67btm2zWW9Qyi2+5YmPjy/05gHukrdOoyR1795dNWrUKPQY68JteXLzzTdbtvfu3eu2NRSdFRoaql9//dVhYTw1NVVr1qzRxIkTddddd6lGjRrq1atXid6s53LVqlXTv/71r0Lb/fHHH9q1a5fla2fXM7z++uvVtGlTSbkfPqxcubJogV7G+mfryu8zZ37ftmjRwuVjrr/+esu2o99r1jm/fv36QvsEAAAAYCwUAMuhgQMHWgpd33zzjdLS0iz7vvnmG8udJPNuIHElWBd6Dh065Na+fX19bf4AdsTf319VqlSxfH3mzBm3xpHn+PHj2rdvn80jMTEx391ga9eurW+//VYjR4502NeaNWss2507d3Z6plK1atVUr149y9d5Ny/I07x5c8v2uXPn1Lt3b+3du9epvovq0KFDOnLkiOXrW2+91anjnG1X1lif82azWYcPH77iMVx11VVav369Zs+eXWiOZGVlafHixercubP69++v1NTUEo+vdevW8vb2LrSddR5UrlxZN910k0tj5Lk8D4qqKL/PfH198xX3Cuvb19fXJledOcbR7zXrft58801NmzZNmZmZhfYNAAAAwBgoAJZDderUscxQSU5O1oIFCyz7rC//dWbWXGHOnDmjadOm6d///reuvvpqhYWFqUKFCjKZTDaP119/3XKMu2ebValSpdC76OYJCgqybOcVQktD48aNtXr16kIvY9y2bZtlu0mTJi6NYV0USExMtNlXr149m0trV6xYocaNG6tjx4564403tGbNmnwFy+LKu1tpnmbNmjl1XOXKlRUREeHWWIpr48aNeuaZZ9S1a1fVqVNHFStWlJeXl805f/k5eaVmWV7Oy8tLgwYN0ubNm7Vr1y699957uvfee9WoUSOZTCa7x3z55Zf617/+VeIFosIuZ89jnQdRUVFOX4otFZwHl0tNTdWXX36pmJgYtWjRQtWqVZO/v3++32fWs1Kd/bk6+3vK+ndUUY5x9HvtwQcftGxnZmbqgQceUJ06dTR8+HDNnTu30H8bAAAAAJ6NAmA5ZX0ZcF7Rb//+/Vq1apUkqVKlSurdu3eR+zebzZowYYIiIiL0wAMP6KuvvtKOHTt08uTJQosG6enpRR7XHlfW77JmNpvdGkeemTNnypx7Ax2ZzWalp6crISFBM2fOVHR0tKTcy/RuuOEGbd26tcC+Tp48adn+3//+l68QUdBjw4YNlmPtzQqaNm2aGjRoYPk6JydHq1at0osvvqj27dsrNDRU3bp107Rp03Tu3Lni/aPYiaFatWpOH+tK25KUkJCgzp0768Ybb9T48eO1fPlyHTp0SOfPny/0fHL3eV8UjRs31qOPPqqvvvpKCQkJOnPmjJYuXarhw4fbXCIqSatXr9a4ceNKNJ6KFSs61c46DzZt2uRSHrz99tuWYwua9fv555+rXr166t+/vz777DNt3bpVSUlJysjIKDA2Z3+uRfk9VZRjHJ2Hbdu2zffzPH78uKZPn677779fERERioqK0ujRo0tkmQYAAAAAZRsFwHKqT58+qlSpkiTpl19+0aFDhzR79mzLH4f9+vVTQEBAkft/5JFH9NRTT+n8+fM23zeZTAoLC1NERIQaNmxoeYSGhlralFThrazy8/NTo0aNNHjwYG3dulW33367JCkpKUndunVzeGMCyX2zxuxdzhkREaG4uDiNGjXKZgaR9TE//PCDHnjgAdWvX18ff/xxsWK4fGaSK+ff5cWp0rBz5061a9fO7hp5gYGBqlWrlurXr29z3lsri+d9pUqVdMcdd+jTTz/Vvn37bNa2k6RJkybZLCHgbs7efKYk80DKvRHJoEGDdOLEiXz7qlSpojp16tj8XKtXr27ZXxZ/ro68+OKLWrZsmcNLkffs2aMpU6aoVatWuv3226/4jZIAAAAAlJ4rc2tQuF1gYKDuueceTZ8+XTk5Ofrss8/02WefWfYX5/LfpUuX6qOPPrJ83aBBA40ePVq33HKLGjVqZPeStVdeeUWvvfZakcf0FH5+fpo7d66aNWumw4cP69ixYxo2bJhiY2Pttg8MDLTcPKJKlSo2hVRXODouNDRUkydP1rhx47Rs2TL9/PPPWrVqlc0NF6TcGVgjRozQ33//rTfffLNIMVxeZHSlsHQl1qMriNls1pAhQyw3UzGZTBo4cKD69++vVq1aqWrVqnaPceVS1dJWs2ZNxcbG6rrrrtOePXsk5S4hsGbNmnx3pr3SrAvAAQEBCg8PL1I/9o7btm2bXnjhBcvXNWrU0OjRo9WtWzc1bdpUfn5++Y6ZOXOm0zfkKWu6deumbt26aevWrVq2bJlWrFihdevW5Zvl+/333+uGG27Qhg0bVLdu3VKKFgAAAMCVQgGwHIuJidH06dMl5S76nvcHXmRkpNq1a1fkfqdMmWLZvvrqq7VmzRrLbENHSuqGG+VRSEiI3nnnHQ0YMEBS7p1xf/zxR5s1+fJUrVrVUgB8+OGH9d///rdEYqpYsaL69eunfv36SZKOHj2qpUuXavbs2ZbLxiXp7bff1r333uvUjQkuFxISYvP1iRMnFBkZ6dSx9mZmuYszhcj169dr48aNlq+nT5+uIUOGFHhMeTznAwICNGLECD311FOW7+3atavUC4DWBdaWLVvanJPF9cEHHyg7O1tSbhF08+bNhRYYy+PP9nLNmzdX8+bN9fzzzysrK0sbNmzQt99+q1mzZlme37Fjx/T444/brCMLAAAAwDOVn+kryKdDhw6WyxCtZ3dYrw/oqpycHK1YscLy9dixYwst/knSX3/9VeQxPdG///1vm5t6PPfcc3YvJWzcuLFl2913Ty5IzZo1NWzYMK1cuVIffPCB5ftms1lffvllkfqMioqy+XrHjh1OHXf27FmnL0W0ninm7KzBY8eOFdrm119/tWxHR0cXWvyTyu8537RpU5uv8wrQpakk88D6Z/v44487NbuwvP5sHfHx8VG7du00ceJE7dmzx+Z305IlS9yyBigAAACAso0CYDk3aNAgm69NJlO+77ni5MmTNneHve666wo95sKFC1qzZk2Rx/REXl5eGjNmjOXrrVu3av78+fnaderUybK9cuXKKxLb5R5++GGbGX/x8fFF6qd27dqqVauW5euffvrJqeOcbSfZzjI8fPiwU8esX7++0DbWfTlzzkvS8uXLnWpX1lx+04sqVarYbWe9fl9OTk6JxmSdB3/99Zdb16Yz0s/WGWFhYTaX+WdlZVkuCQcAAADguSgAlnMxMTG67rrrLI+BAwfqqquuKnJ/l89Sc+YOmF9++aVOnTpV5DE9Vf/+/W1+Fq+99lq+f9++ffta1pHbt2+fli1bdkVjzGM9ey8rK6vI/XTv3t2yvWTJkgJvgJIn7zJ2Z1jHaX0XZEc2bNig3bt3F9rO+ufizDmflZVV7JumlJbLi/WX38wkT3BwsGW7pGcJ3nDDDapXr57l6/fff99tfbv6s/3tt9/0559/um38sujy2brFyXkAAAAA5QMFwHKubt262rp1q+Uxe/bsYvVXtWpVm8ssly5dWmD7w4cP65lnninWmJ7Kx8fHZq21bdu25Vtrq1GjRrrrrrssX48YMcKpS1at2StqJCYmOj1ry2w22xQ8inNDAOsbJ6SmpurZZ58tsP2SJUv0/fffO93/jTfeaNmeP39+gXePzczM1GOPPeZUvxEREZbtlStX5rv79eVeeeWVUp01deDAAT3xxBMunyt//fWXpk6davk6KChIHTt2tNvW+jwo6YKYt7e3nn76acvXkyZNsns35oI4Ku5Z/2wL+3127tw5jRgxwqVxy4p//vnH6bbbt2+3+bo4HxoBAAAAKB8oAMKGt7e3unTpYvn6zTffdPiH+NatW9WxY0edOHGiXN0N9UoaPny4wsLCLF/bmwU4fvx4y2WYBw4cUOvWrQu9LDYnJ0dr167V8OHD1bt373z7p02bpiZNmujDDz+03NnWnuzsbD3//PPauXOn5Xs9e/Z05qnZ1aZNG/Xq1cvy9ezZs/XCCy9YbsJg7eeff9b9998vSU6fP/fdd59l+9SpUxoyZEi+S1ql3JuK9OzZU5s2bZLJZCq031tvvdWyffr0aQ0ZMsRuQSkjI0MvvPCC3njjjVI95y9cuKBJkyapQYMGevDBB7V27dpCj/nll1/UqVMnm/XeRo0aZfcuuJJtsXXq1Kn5ikbu9uCDD6pNmzaScp/f7bffrg8++ECZmZkFHrdnzx69+uqrDotY1j/bmTNn6uuvv7bbbv/+/br55pu1a9eucvn7LDIyUoMHD9bq1avtrjeaJz4+3qbY2rp1a9WsWfNKhAgAAACgFHEXYOTz7LPPWmbKpKSkqGvXrurRo4c6d+6skJAQnThxQsuXL9cPP/ygnJwchYeHq2fPnjYzi5ArMDBQo0aN0ssvvyxJ+uOPP7Rw4UL16dPH0qZu3br68ssv1atXL6Wnp+vAgQO67bbb1KxZM916661q2LChgoODlZKSouPHj2vbtm1at26dZfaX9fpp1hISEvTII49o9OjRuvHGG9W6dWvVrVtXISEhSktLU0JCghYvXqx9+/ZZjunatatuv/32Yj3n9957T2vXrrXc2ffNN9/U/Pnz1a9fP9WtW1dnzpzRzz//rB9++EFms1mdOnVSTk6OU3d+bd68uXr06KHY2FhJ0oIFC9S0aVP1799f9evXV0pKin7//XfNnz9fycnJCg8PV/fu3fXJJ58U2G+rVq3UtWtXyw0jvv32W23cuFH33XefoqKilJmZqV27dmn+/PmW9eleffVVy8+1tKSmpurTTz/Vp59+qpo1a+qmm27Stddeq2rVqikoKEjnz5/Xnj179Msvv+S7Kcv111+vF1980WHfMTExln+3Q4cO6dprr1V4eLiqVq1qUyDbunWrW56Lr6+vvvnmG7Vr104HDhxQWlqaHn30Ub3++uvq1q2brrnmGoWGhiojI0OnTp3Szp07tWnTpkIv8X7iiSf06aef6sKFC8rOztZ9992nTz/9VP/6179UrVo1nT59WmvXrlVsbKwyMjIUHByshx9+WO+8845bnteVkpWVpdmzZ2v27NmqXbu22rVrp+uuu05hYWHy9fXV8ePHtW7dOi1dutRyya/JZCp3zxMAAABA0VAARD4dO3bUf/7zH73yyiuScmebLVq0SIsWLcrXtlq1apo/f36prV1XHjz66KN65513LJeVvvbaa+rdu7fNzLTbbrtNy5cv11133aUjR45Iyr2LrjN30vX29i5wf1ZWltasWVPojVpuuukmffvtt4WOV5iIiAgtW7ZMt9xyi86cOSNJ2r17t/773//ma9u4cWPNmTNHAwYMcLr/qVOnaseOHdq/f7+k3Jlb48aNy9euRo0aWrRokZYsWeJUv5999pluuukmS4HvwIEDDosjMTExGjt2bKkVAH19feXj42OzdtvRo0e1YMGCfJeZ29OtWzfNnTtXQUFBDtu0bdtWL774ol5//XXL9w4fPuz0zVeKok6dOtq4caP69OmjdevWSZKOHDmimTNnFnqso1l7DRs21Mcff6xhw4ZZLov/5Zdf9Msvv+RrGxwcrLlz5+rkyZPFeBal79ChQ5o3b57mzZvnsE2FChU0bdo0hx8gAAAAAPAs5e86J1wRL7/8subMmWOzfpY1Pz8/3Xvvvfrjjz9sLhVEfqGhoXrooYcsX2/dutVuMbVNmzbas2ePXn/9dYf/7nkCAgJ022236ZNPPrFb8BkwYIDGjh2r66+/vtACYcOGDTV58mStWrVKoaGhTj6rgrVs2VLbt29Xr1697BZm/P39NXToUG3cuFF16tRxqe/w8HCtXr1a/fr1s3t5r4+Pj/r27astW7aoVatWTvdbu3ZtxcXFqV+/fg6LSZGRkZo1a5ZmzZrl1KXFJaVu3bo6duyYZs6cqXvuuUc1atQo9BgfHx/dcccdWrRokZYtW+bUz3rcuHFauXKlhgwZoqZNm6pSpUolfnlsjRo1tHr1as2dO1ctWrQosK2Xl5duuOEG/fe//9Vff/3lsN3gwYP1f//3f4qOjra739vbW926ddPmzZvVo0ePYsVfWubMmaN+/frZLDlgT4UKFXT33Xdr69atGjhw4BWKDgAAAEBpM5kLWiwIhpeVlaX169frjz/+0NmzZxUaGqratWurY8eOCgkJKe3wPFp8fLy2bNmiEydO6Ny5cwoKClKNGjUUHR2tZs2aOVy77XLnz5/XH3/8ob179+rEiRNKT0+39NWiRQs1adKkRJ/HoUOHtGLFCh06dEgBAQGKiIhQp06d3FJsPHLkiJYvX65Dhw7J29tbERER6tChQ7HXNDt8+LB+++03JSYmSpJq1aqlJk2aqGXLlsWOuaT8/fff2r17t/755x+dOXNGFy5cUHBwsEJCQhQdHa1rr73W5gY/5cXRo0e1du1aHT16VKdPn5afn5+qVKmiRo0a6ZprrnHp95DZbNbmzZu1efNmnTx5UpUqVVJ4eLjatm3rUevg7dmzR/Hx8Tpw4ICSk5NlMpkUEhKiqKgotWrVSpUrVy7tEAEAAABcYRQAAQAAAAAAAA/GJcAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwCoAAAAAAAACAB6MACAAAAAAAAHgwn9IO4Eo4f/68/vzzT+3du1f79u3T3r17dfbsWUnS66+/rmuuucbucdnZ2dq6dat+//13xcfH68iRI0pPT1dwcLAaNGigzp07q1OnTvLyoo4KAAAAAACAsskQBcANGzZo8uTJLh/30Ucf6ccff7R87e3tLT8/P509e1ZbtmzRli1b9PPPP2vs2LEKCAhwZ8gAAAAAAACAWxiiAChJoaGhatiwoSIjIxUeHq4JEyYUekxWVpZCQ0N18803q23btmrQoIG8vLyUnJysxYsX69tvv9X27dv1/vvv65lnnrkCzwIAAAAAAABwjclsNptLO4iSlp2dLW9vb8vX58+fV//+/SUVfAnw7t27Vb9+fVWoUMHu/rlz5+qrr76SJE2fPl3VqlVzc+QAAAAAAABA8Rhi8Trr4p8rGjdu7LD4J0k333yzZXvv3r1FGgMAAAAAAAAoSYa5BLgkVKpUybKdnZ1d7P6SkpKK3QdKn7+/v7y8vJSTk6P09PTSDge44sgBGB05AKMjB2B05IBnCQsLK+0QALegAFgMf/75p2W7bt26pRgJypKAgAB5e3srOzubF3wYEjkAoyMHYHTkAIyOHABQFhniEuCSkJ2drS+//FJS7qXCERERpRwRAAAAAAAAkB8FwCL6/PPPtXfvXvn4+OjBBx8s7XAAAAAAAAAAuygAFsFPP/2k+fPnS5JiYmLUqFGjUo4IAAAAAAAAsI81AF20atUqffDBB5Kkvn37qlevXk4fO2fOHM2dO9fh/rvvvlsxMTHFjhGly8vLy/Lf0NDQUo4GuPLIARgdOQCjIwdgdOQAgLKIAqAL1q9frwkTJignJ0d33nmny8W6lJQUHT9+3OH+1NRUeXt7FzdMlBEmk4mfJwyNHIDRkQMwOnIARkcOAChLKAA6adOmTXrnnXeUnZ2tW265pUjr/gUFBal69eoO9wcGBio7O7s4YaIM8PLykslkktlsVk5OTmmHA1xx5ACMjhyA0ZEDMDpywLNQxIWnoADohN9//11vvfWWsrKy1KlTJz366KMymUwu9zNgwAANGDDA4f6kpCSdPn26OKGiDAgNDZW3t7dycnL4ecKQyAEYHTkAoyMHYHTkgGcJCwsr7RAAt+AmIIXYtm2b3njjDWVmZqpt27Z6/PHHLWs6AAAAAAAAAGWdYWYAJicnW7ZTU1Mt2ykpKTb7AgMD5eOT+88SHx+vcePG6cKFC2rdurWefvpppv8CAAAAAACgXDFMAdDRpbdvvPGGzdevv/66rrnmGkm5d+1NT0+XlFsMHDp0qMP++/Tpoz59+rgpWgAAAAAAAMA9DFMALAqz2WzZPnfuXIFt09LSSjocAAAAAAAAwGWGKQAuXrzY5WMunx0IAAAAAAAAlDfczQIAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9GARAAAAAAAADwYBQAAQAAAAAAAA9mMpvN5tIOArmSkpLc1ldoSBW39QUAAAAAQHlx+swpt/UVFhbmtr6A0sQMQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQAEAAAAAAAAPBgFQAAAAAAAAMCDUQCE4fzzzz96+pmn1ezqpqpUuaKqVQ9TmzY3avy745Wamuq2cZZ9v0x9775LdetdpcCgANWtd5X63n2Xln2/zOk+srKy9PHHU9WpcyfVrFVDwRWDFNW4kUaOHKEdO3a4LVYYCzkAoyMHYHTkAIyM8x+AUZnMZrO5tINArqSkJLf1FRpSxW19eZLYJbGKiRmk5ORku/ujoqK0eFGsIiMjizxGTk6ORox4SDNmznDYZtjQYfroo6ny8nJcg09KSlL3Ht0VF7fJ7n4/Pz9NmTxFw4YNL3KsMB5yAEZHDsDoyAEYGee/cZw+c8ptfYWFhbmtL6A0MQMQhrFlyxb17/9vJScnKzg4WP/97zitWrlaP/74k4ZffOFMSEhQz149dO7cuSKPM/alsZYX/BbNW+iLOV9o3dr1+mLOF2rRvIUkafqM6Xrp5Zcc9pGdna2+d/e1vOD36dNHS5Ys1do16zRp4mRVr15dGRkZGvnwSJc+RYSxkQMwOnIARkcOwMg4/wEYHTMAyxBmAJaszl06a/XqVfLx8dHyX1fopptustk//t3xGjPmOUnSSy+9rFdefsXlMRISEnTtddcoKytLrVq20vLlKxQQEGDZn5qaqq5duyhuc5x8fHz05/Yddj9hnDlzhh548AFJ0sgRI/Xee+/b7N+7d69a33iDkpOTFRkZqT+375CPj4/L8cJYyAEYHTkAoyMHYGSc/8bCDEAgP2YAwhA2btyo1atXSZKGDhma7wVfkp584kk1adJEkvTee1OUmZnp8jhTpkxWVlaWJGnSpMk2L/iSFBgYqEmTJkvKXdNj8uRJdvuZMHGCJKlKlSp6++138u2PjIzUc8+NkZT7BmDhwgUuxwpjIQdgdOQAjI4cgJFx/gMABUAYxKLFiyzbMTGD7bbx8vLSgAEDJUlnzpzR8hXLXRrDbDZrcexiSVJ0dLTatGljt12bNm3UuHFjSdLi2MW6fBJuQkKC4uPjJUn33H2PAgMD7fYTMyjGsr1w0UKXYoXxkAMwOnIARkcOwMg4/wGAAiAMYs2aNZKkoKAgtWzZ0mG7jh06WrbXrl3r0hh//fWXDh8+nK+fgsY5dOiQ/v7778tiXX2pXUfH/dSsWVNRUVFFihXGQw7A6MgBGB05ACPj/AcACoAwiF27cj9Fi2wYWeD6GNHR0fmOcdbO+J2W7caNowtoabs//rJxdsbH221nv5/cTw8PHjyolJQUp2OF8ZADMDpyAEZHDsDIOP8BgAIgDCA9Pd1yg5XadWoX2DY0NFRBQUGSpIMHE10a51DipfZ1ChknIqKOZTvx4EHbfg5Z91NHBYmoEyEp95KDxETX4oVxkAMwOnIARkcOwMg4/wEgFwVAeLxz585ZtoODgwttn/ein3L+vGvjWLUPKmScwItjSNL5yz6tcyVem35cjBfGQQ7A6MgBGB05ACPj/AeAXBQA4fHS09Mt2xV8KxTa3s/PT5KUlp5W9HEqFDxO3hiSlJZmO056eoZb+gHykAMwOnIARkcOwMg4/wEgFwVAeDx/f3/L9oXMC4W2z8jIfdEN8A8o+jgXCh4nbwxJCgiwHcff/9ILeXH6AfKQAzA6cgBGRw7AyDj/ASAXBUB4vIoVK1q2nZkan7eAbmFT9/ONY9W+sEsGUq2m+gdbTd2XXIvXph8X44VxkAMwOnIARkcOwMg4/wEgFwVAeDx/f39VrVpVknQo8VCBbU+fPm150bdenNcZta0W6U0sZBzrRYXrRETY9lPbup+CF/M9mJi7aLDJZCp0kWAYFzkAoyMHYHTkAIyM8x8AclEAhCE0adJUkrR3315lZWU5bLdr1y7LdnR0E5fGaHpxDEnavXtXAS1t9ze5bJymTZrYbWe/n92SpIiICMuCxYA95ACMjhyA0ZEDMDLOfwCgAAiDaNeunaTcKf2bN2922G7lqpWW7bZt27o0Rv369RUeHp6vH3tWrV4lSapdu7bq1at3WaztL8Wz0nE/R48eVUJCQpFihfGQAzA6cgBGRw7AyDj/AYACIAyiV89elu3Zs2fZbZOTk6M5cz6XJIWEhKhL5y4ujWEymdSzR09JuZ8erl+/3m679evXWz5d7Nmjp0wmk83+qKgoNbn4yd83336j1NRUu/3M/my2Zbt3r94uxQrjIQdgdOQAjI4cgJFx/gMABUAYROvWrdW+fQdJ0oyZM7Ru3bp8bSZMnKD4+HhJ0mOPjZKvr6/N/hW/rZCPr7d8fL01dOgQu+OMGjVa3t7ekqTHHx+ttLQ0m/1paWl6/PHRkiQfHx+NGjXabj9PPvGkJOnUqVMaM+a5fPv37dunt99+S5IUGRmp3r372H/iwEXkAIyOHIDRkQMwMs5/AKAACAOZOGGiAgIClJWVpdvv6Ka33n5L69ev1/IVyzVy5AjLi2tUVJTlRddVUVFReuqppyVJcZvj1LFjB82b97Xi4uI0b97X6tixg+I2x0mSnnrqaTVq1MhuP4MGxaht29xLFT786EP1u/ce/fDjD9q4caM++OADdejYXsnJyfLy8tLEiZPk4+NTpHhhLOQAjI4cgNGRAzAyzn8ARmcym83m0g4CuZKSktzWV2hIFbf15Ulil8QqJmaQkpOT7e6PiorS4kWxioyMzLdvxW8rdMstN0uSBg0cpBkzZtrtIycnRw899KBmzrK/X5KGDhmqqVM/lpeX4xp8UlKSuvforri4TXb3+/n5acrkKRo2bLjDPoDLkQMwOnIARkcOwMg4/43j9JlTbusrLCzMbX0BpYkZgDCUHt17aMvvWzV69OOKiopSYGCgQkJC1KplK7355luK27TZ7gu+K7y8vPTpp9O0eHGsevbsqfDwcFWoUEHh4eHq2bOnYmOX6JNPPi3wBV/KfaFZvWq13n/vfbVr115Vq1aVv7+/GjRooOHDhmvjhk284MNl5ACMjhyA0ZEDMDLOfwBGxgzAMoQZgAAAAAAAFA8zAIH8mAEIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAHowAIAAAAAAAAeDAKgAAAAAAAAIAH8yntAHCJyWSSlxc1WQAAAAAAisrb27u0QwDKHJPZbDaXdhDIlZqaqsDAQLf0lZ2V45Z+AAAAAJQvWVnZpR0CUKr8/H1LOwSgzGEGYBmSlpamjIwMt/RVqWJlt/QDAAAAAEB5cvr0abf1FRoa6ra+gNJEAbAMMZvNys7m0zoAAAAAAIqKv6uB/FhwDgAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFABhOP/884+efuZpNbu6qSpVrqhq1cPUps2NGv/ueKWmprptnGXfL1Pfu+9S3XpXKTAoQHXrXaW+d9+lZd8vc7qPrKwsffzxVHXq3Ek1a9VQcMUgRTVupJEjR2jHjh1uixXGQg7A6MgBGB05AKP7559/9Nxzz+ra665WlaohqhVeQ+3a3aQJE951aw788MP36tfvbjVsWF+VKgerYcP66tfvbv3ww/dF7nP79m0Krhgo/4AK8g+ooOEPDHNbvAA8m8lsNptLOwjkSkpKcltfoSFV3NaXJ4ldEquYmEFKTk62uz8qKkqLF8UqMjKyyGPk5ORoxIiHNGPmDIdthg0dpo8+miovL8c1+KSkJHXv0V1xcZvs7vfz89OUyVM0bNjwIscK4yEHYHTkAIyOHDCGrKzs0g6hzFq6dImGDB3sMAcaNWqkhQsWqWHD4uXAw4+M1KxZMx22GTJkqD54/8MCc8Bev506ddAmq5wYMGCgpn06vcixeqpz58+6ra+wsDC39QWUJmYAwjC2bNmi/v3/reTkZAUHB+u//x2nVStX68cff9Lwi28cExIS1LNXD507d67I44x9aazlDW+L5i30xZwvtG7ten0x5wu1aN5CkjR9xnS99PJLDvvIzs5W37v7Wt7w9unTR0uWLNXaNes0aeJkVa9eXRkZGRr58EiXPkWHsZEDMDpyAEZHDsDotm7dogED77fkwH/+85pWLF+pZct+0NChuTPp9uzZo959ehUrB15+5SVL8a958+b6bPbnWr1qrT6b/bmaN28uSZo5c4ZeefVll/r96KMPtSluk6pXr17k2AAYFzMAyxBmAJaszl06a/XqVfLx8dHyX1fopptustk//t3xGjPmOUnSSy+9rFdefsXlMRISEnTtddcoKytLrVq20vLlKxQQEGDZn5qaqq5duyhuc5x8fHz05/Yddj9hnzlzhh548AFJ0sgRI/Xee+/b7N+7d69a33iDkpOTFRkZqT+375CPj4/L8cJYyAEYHTkAoyMHjIMZgPbdfEtXrVmzWj4+Pvr5p1/Vpk0bm/0TJryrF158XpL04otj9dJY1wp0krRnT4JaXN9cWVlZanl9S/3886/5cuDWW2/W5t83y8fHR39s3ebUbMPExES1uP46nT9/Xp9+Ok3Dh+cWLJkBaB8zAIH8mAEIQ9i4caNWr14lSRo6ZGi+N7yS9OQTT6pJkyaSpPfem6LMzEyXx5kyZbKysrIkSZMmTbZ5sZekwMBATZo0WVLumjaTJ0+y28+EiRMkSVWqVNHbb7+Tb39kZKSee26MpNw3wAsXLnA5VhgLOQCjIwdgdOQAjG7Tpk1as2a1JGnw4CH5in+S9PjjTyg6OlqS9MEH7xcpB957/z1LDkyYMMluDkyYMElSbg5MeW+KU/0+/sQonTt3TgMHDlL79h1cjgsAKADCEBYtXmTZjokZbLeNl5eXBgwYKEk6c+aMlq9Y7tIYZrNZi2MXS5Kio6PtvqmQpDZt2qhx48aSpMWxi3X5JNyEhATFx8dLku65+x4FBgba7SdmUIxle+GihS7FCuMhB2B05ACMjhyA0S2OvZQDgwbG2G3j5eWl+/sPkJSbAyt+W+HSGGazWUtiYyVJjRs31o033mi33Y033qioqChJ0pLY2Hw5cLn587/TkiVLVLVqVb35xlsuxQQAeSgAwhDWrFkjSQoKClLLli0dtuvYoaNle+3atS6N8ddff+nw4cP5+ilonEOHDunvv/++LNbVl9p1dNxPzZo1LW8cXI0VxkMOwOjIARgdOQCjyztHgoKCdP311zts18Hq3F23zsUc+PsvHT5yOF8/BY1z6PAh/f3P3w7bnT17Vk899aQk6fXX31TVqlVdigkA8lAAhCHs2pX7KXJkw8gC14fJm/JvfYyzdsbvtGw3bhxdQEvb/fGXjbMzPt5uO/v95H56fvDgQaWkpDgdK4yHHIDRkQMwOnIARrd79y5JUsOGDQvMgbxzSpJ279rl0hi7rM/dqMYFtLTdX9A4L459QUeOHlG7du1tZr0CgKsoAMLjpaenW26wUrtO7QLbhoaGKigoSJJ08GCiS+McSrzUvk4h40RE1LFsJx48aNvPIet+6qggEXUiJOVebpCY6Fq8MA5yAEZHDsDoyAEYnU0O1C74nLLOAVfPqUOHDlm2a9cuOAesz+2DDsZZu3atpk+fJl9fX7035T2ZTCaX4gEAaxQA4fHOnTtn2Q4ODi60fd4Lfsr5866NY9U+qJBxAi+OIUnnL/u02pV4bfpxMV4YBzkAoyMHYHTkAIzO5pyyOmccycuB8yku5oAL526QVRz2cu3ChQt65NGRMpvNGj1qtJo2beZSLABwOQqA8Hjp6emW7Qq+FQpt7+fnJ0lKS08r+jgVCh4nbwxJSkuzHSc9PcMt/QB5yAEYHTkAoyMHYHTW56ZvIeeUJFWocDEH0tILaXnZOBnOj1PB+ty1k2v/G/+O4uPjVbduPb3wwliX4gAAeygAwuP5+/tbti9kXii0fUZG7pvOAP+Aoo9zoeBx8saQpIAA23H8/S+9GShOP0AecgBGRw7A6MgBGJ31uZlZyDklSRcuXMyBAP9CWl42jp/z41ywPncvy7WEhN165523JUkTJ0x0eCdsAHAFBUB4vIoVK1q2nbk0JG8B6cIuXck3jlX7wi6ZSbW61OXyyxBcidemHxfjhXGQAzA6cgBGRw7A6GzOKSduFpOXA8FBLuaAC+eu9U1rrHPNbDbrkUcfUUZGhnr17KU77rjTpRgAwBHHtz8CPIS/v7+qVq2qkydP6lDioQLbnj592vJibL04tTNqWy3km1jIONaLateJiLDtp7Z1P4kKCwtz3E9i7qLZJpOp0EWyYVzkAIyOHIDRkQMwOpscsLrJjD3WOeDqOWV94w/rG4LYY32DkQircTZs2KBVq1ZKktq0uUnz5n2d79i8G5pI0t9//21p06xZMzVrdrVLMQMwDgqAMIQmTZpq9epV2rtvr7KysuTjY//U37Vrl2U7OrqJS2M0bdLUsr17964CWtrub3LZOE2bNLFp17x58wL62S1JioiIsFlIGLgcOQCjIwdgdOQAjC46uonWrFmtffv2FZgDeeeUJDWOjnZtDOtzN2F3AS1t91uPk3Hh0qXBz78wptAxV69epdWrV0mSXnxxLAVAAA5xCTAMoV27dpJyp9pv3rzZYbuVFz9tk6S2bdu6NEb9+vUVHh6erx97Vl18ka5du7bq1at3WaztL8Wz0nE/R48eVUJCQpFihfGQAzA6cgBGRw7A6PLOkZSUFP3+++8O262yOndvusnFHKhXX+G1wvP1Y09e0a52eG3Vq1vPpXEAoCgoAMIQevXsZdmePXuW3TY5OTmaM+dzSVJISIi6dO7i0hgmk0k9e/SUlPvp+fr16+22W79+veXT9Z49espkMtnsj4qKUpOLnx5+8+03Sk1NtdvP7M9mW7Z79+rtUqwwHnIARkcOwOjIARhdzx6XcuCzz2fbbZOTk6Mv5s6RlJsDnTt1dmkMk8mk7j16SMqdSbhhwwa77TZs2GCZadi9Rw+bHOjUsZPS0y4U+Ni1K8HSfsCAgZbvvzT2ZZfiBWAsFABhCK1bt1b79h0kSTNmztC6devytZkwcYLi4+MlSY89Nkq+vr42+1f8tkI+vt7y8fXW0KFD7I4zatRoeXt7S5Ief3y00tLSbPanpaXp8cdHS5J8fHw0atRou/08+cSTkqRTp05pzJjn8u3ft2+f3n77LUlSZGSkevfuY/+JAxeRAzA6cgBGRw7A6G644QbL7NJZs2baLVBPmjTRUpx+5JFH8+XAbyt/k39ABfkHVNDwB4bZHeexRx+z5MCTTz5uNweefPJxSbk58NijjxXreQGAsygAwjAmTpiogIAAZWVl6fY7uumtt9/S+vXrtXzFco0cOcLy5jIqKsryptNVUVFReuqppyVJcZvj1LFjB82b97Xi4uI0b97X6tixg+I2x0mSnnrqaTVq1MhuP4MGxaht29xLdT786EP1u/ce/fDjD9q4caM++OADdejYXsnJyfLy8tLEiZMcrmECWCMHYHTkAIyOHIDRvTv+XUsOdO9xh97539vasGGDVvy2Qo88+rBeePF5SVKjRo30+OgnijRGo0ZReuJi/mz+fbO6dO2kb76Zp82bN+ubb+apS9dO2vx77mX4TzzxpCIj7ecAALibyWw2m0s7COSyvptTcYWGVHFbX54kdkmsYmIGKTk52e7+qKgoLV4Uq8jIyHz7Vvy2QrfccrMkadDAQZoxY6bdPnJycvTQQw9q5iz7+yVp6JChmjr1Y3l5Oa7BJyUlqXuP7oqL22R3v5+fn6ZMnqJhw4Y77AO4HDkAoyMHYHTkgDFkZWWXdghl1tKlSzRk6GCHOdCoUSMtXLBIDRvmz4HfVv6mf/3rVkm5l95O+3S63T5ycnI08uERDi+3l6TBg4foww8+KjAHHPn7n78VHR1VaBxGdu78Wbf1VdCdyIHyhBmAMJQe3Xtoy+9bNXr044qKilJgYKBCQkLUqmUrvfnmW4rbtNnuG15XeHl56dNPp2nx4lj17NlT4eHhqlChgsLDw9WzZ0/Fxi7RJ598WuiLfVhYmFavWq3333tf7dq1V9WqVeXv768GDRpo+LDh2rhhE2944TJyAEZHDsDoyAEY3Z13dtemjZs16rHRatSokSUHWl7fUq+Pe0Mb1m+yW/xzhZeXlz6e+okWLlikHt17KLzWxRyoFa4e3Xto0cLFmvpRwQVwAHA3ZgCWIcwABAAAAFBczACE0TEDEMiPjxwAAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD0YBEAAAAAAAAPBgFAABAAAAAAAAD+ZT2gEAAAAAANxn6ZJdpR0CUKo6dq5V2iEAZQ4zAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAAEAAAAAAAAPRgEQAAAAAAAA8GAUAGE4//zzj55+5mk1u7qpKlWuqGrVw9SmzY0a/+54paamum2cZd8vU9+771LdelcpMChAdetdpb5336Vl3y9zuo+srCx9/PFUdercSTVr1VBwxSBFNW6kkSNHaMeOHW6LFcZCDsDoyAEYHTkAozt+4rBmzR6vx0b3VP8BrRUzuL2eHfNvLVw0UxkZaSUyZkZGmkY+crv63nOt+t5zrUY83K1I/fy+ZZWlj773XKuv533o5kgBeCqT2Ww2l3YQyJWUlOS2vkJDqritL08SuyRWMTGDlJycbHd/VFSUFi+KVWRkZJHHyMnJ0YgRD2nGzBkO2wwbOkwffTRVXl6Oa/BJSUnq3qO74uI22d3v5+enKZOnaNiw4UWOFcZDDsDoyAEYHTlgDIsWUhx1ZFPcCk2Z8oJS087b3R9eq65eeP4D1ap1lVvHnf3ZeC2O/czydbVq4Zr64fcu9ZGenqrHn7xLJ04ctnyv3z0jdG+/h90Wp6fo2LmW2/oKCwtzW19AaWIGoJPMZrNWr16tV155RQMGDNBdd92loUOHasKECdq3b19phwcnbNmyRf37/1vJyckKDg7Wf/87TqtWrtaPP/6k4RffOCYkJKhnrx46d+5ckccZ+9JYyxveFs1b6Is5X2jd2vX6Ys4XatG8hSRp+ozpeunllxz2kZ2drb5397W84e3Tp4+WLFmqtWvWadLEyapevboyMjI08uGRLn2KDmMjB2B05ACMjhyA0e3/K14TJj6r1LTz8vcPVP9/P6Y3xn2uV1/+VLfc3FeSdPjIP3rjzUeUlpbi1nGXLP1CFXz9FBAQVOR+vvzqA504cViVKzPZA4DrmAHohKysLI0fP15r166VJHl5eSkwMFApKSkym83y9vbWyJEjddtttxVrHGYAlqzOXTpr9epV8vHx0fJfV+imm26y2T/+3fEaM+Y5SdJLL72sV15+xeUxEhISdO111ygrK0utWrbS8uUrFBAQYNmfmpqqrl27KG5znHx8fPTn9h12P2GfOXOGHnjwAUnSyBEj9d5779vs37t3r1rfeIOSk5MVGRmpP7fvkI+Pj8vxwljIARgdOQCjIweMgxmA9o19ebDi43+Xt7eP/vufmWrc+Dqb/QsXzdTncyZKct/MuuzsbD3/wv3at3+n7rv3Ef3y6wKdOHHY5RmA+/bt1JgX7pe3t7eGD3teH039j1vj9DTMAATyYwagEz777DOtXbtWXl5eGjJkiL766ivNnTtXs2fP1m233abs7Gx9+OGH2rVrV2mHCgc2btyo1atXSZKGDhma7w2vJD35xJNq0qSJJOm996YoMzPT5XGmTJmsrKwsSdKkSZNt3vBKUmBgoCZNmiwpt7A8efIku/1MmDhBklSlShW9/fY7+fZHRkbquefGSMp9A7xw4QKXY4WxkAMwOnIARkcOwOj27Nmu+PjfJUk3d+2Tr/gnST17xKhO7QaSpKX/94WyslzPgcst/b8vtG//ToWH11PvXkOL1Ed2drY++vhV5eRk664+w1WzpnsvTwZgDBQAC3H27FktXbpUktSzZ0/16dNH/v7+kqSQkBA9+uijuvrqq5WTk6NZs2aVYqQoyKLFiyzbMTGD7bbx8vLSgAEDJUlnzpzR8hXLXRrDbDZrcexiSVJ0dLTatGljt12bNm3UuHFjSdLi2MW6fBJuQkKC4uPjJUn33H2PAgMD7fYTMyjGsr1w0UKXYoXxkAMwOnIARkcOwOg2bvrVst2lSy+7bby8vNSpUw9JUkrKOf25w/76k846fuKwvv76A0nSQw++JF9f3yL1s2Tp5/rrr10Kr1VXfXoXrYgIABQAC/HHH39YPv3s06eP3Ta9e/eWJO3cuVNHjx69UqHBBWvWrJEkBQUFqWXLlg7bdezQ0bKdd8m3s/766y8dPnw4Xz8FjXPo0CH9/fffl8W6+lK7jo77qVmzpqKioooUK4yHHIDRkQMwOnIARhe/a4skyd8vQA0bNHXYrlnTVpbtXRePKapPP31d6Rlp6tSxu65udkOR+jh+/JDlTr8PPjBWvr4VihUTAOOiAFiIEydOSMp9sxQaGmq3TZ06dSzbW7duvRJhwUW7duV+ihzZMLLA9WGio6PzHeOsnfE7LduNG0cX0NJ2f/xl4+yMj7fbzn4/uZ+eHzx4UCkp7luoGJ6HHIDRkQMwOnIARnco8S9JUs2aV8nb23EO1K5d37KdeOivIo+3es0y/b5llYKDKilm0NNF7ueTT8cpIyNdHTvcqWuuubHI/QAABUAn5eTkOLXvwIEDVyIcuCA9Pd1yg5XadWoX2DY0NFRBQbl35jp4MNGlcQ4lXmpfp5BxIiIuFY0TDx607eeQdT91VJCIOhGSci+5SUx0LV4YBzkAoyMHYHTkAIzuwoUMJZ87LUmqWrVGgW2DgyvJ3y937cqTSUW7uuv8+WTNnJm7duX99z9e5Lv2rlq1VFu2rlFQUEUNjil6EREAJAqAhapevbokKS0tzTIb8HLWRb9Tp05dkbjgvHPnzlm2g4ODC22f96Y35fx518axah9UyDiBF8eQpPOXfVrtSrw2/bgYL4yDHIDRkQMwOnIARpeWdukc8/e3v6akNT//3AJgenpqkcb77PN3debsSTWOuk633tK3SH2cO3dWM2f/T5J0f//Rqly5apH6AYA8FAALcc0111guk/jmm2/y7Tebzfruu+8sX6elpV2x2OCc9PR0y3YFJ9bM8PPzkySlpbv2s7QZp0LB4+SNIeU/Z9LTM9zSD5CHHIDRkQMwOnIARpeZecGyXdAl8Hl8fXLPuwsXMgppmd+OnXH6dflCeXv76MEHX5LJZHK5Dym3iHj27Ck1anSNbr3l7iL1AQDWKAAWIiQkRLfffrsk6fvvv9fMmTN14sQJZWVl6Z9//tGbb76pPXv2WF5IivoLHiUn767NknTB6sXfkYyM3Bf6gIuf/BVpnAsFj5M3hiQFBNiO4+9/6Y1scfoB8pADMDpyAEZHDsDorG+ckZWVVWj7zKzc865CBb9CWl52XOYFTf34NZnNZt15R3/VqxvlWqAX/bljk35dvlBeXt566IGX5OXFn+0Aiq/wjz+gwYMH69ixY9q4caMWLFigBQsW2Ozv1q2b9u7dq71791oumbBnzpw5mjt3rsP9d999t2JiYtwTtNk93XiCihUrWraduTQkbwHpwi5dyTeOVfvCLplJtbrUJfiyc+byeK3fTBfYj4vxwjjIARgdOQCjIwdgdAEBl84xZy7rzbg4+9WZy4Wtffvdpzp8+G+FVa2pe/s97FqQF2VmXtDHH78mSbrj9v6qX7/gG+HAPkc38ASMjAKgE3x9ffXiiy9q7dq1+u2333TgwAFlZ2erdu3auu2229S2bVsNGzZMklS7tuMFj1NSUnT8+HGH+1NTU+Xt7e2WmLOzHN+0xGj8/f1VtWpVnTx5UocSDxXY9vTp05Y3vdaLUzujttUi1YmFjGO9qHadiAjbfmpb95OosLAwx/0k5i6abTKZCl0kG8ZFDsDoyAEYHTkAo6tQwU8VK4bo3LkzOnnyWIFtz59PVnpGbgGwalhNl8ZZuGiGJOnaa9sobvNvdtvkFRcz0tO0es0ySVLlSlUsd/hdv+FnHT7yj3y8fRQR0cDSxtrBg/st2wcO7LW0aRR5jWrUIA8kue3vasCTUAB0kslkUrt27dSuXbt8+5KTky03CGncuLHDPoKCgiw3FbEnMDBQ2dnZxQ9WksSlyNaaNGmq1atXae++vcrKynK49seuXbss29HRTVwao2mTppbt3bt3FdDSdn+Ty8Zp2qSJTbvmzZsX0M9uSVJERESBs08BcgBGRw7A6MgBGF2dOg0UH/+7jh49oOzsLHl728+BQ4f+unRM7foujZGVlSlJ+nX5Qv26fGGBbZPPndbESc9Jkpo1bWUpAGZm5vaRlZ2lj6b+p9Ax12/4Wes3/CxJeuTh/1IAvMh9f1dTTITnoADoBitXrpSUO824oDcoAwYM0IABAxzuT0pK0unTp90SU2hI0W4176natWun1atXKSUlRZs3b9aNN95ot93KVSst223btnVpjPr16ys8PFyHDx+26ceeVatXScqdMVqvXr3LYm1/KZ6VK3XvvffZ7ePo0aNKSEgoUqwwHnIARkcOwOjIARhdk+gWio//XekZadq3f6eiGl1rt92OnXGW7ejoFlcqPLiZu/6ullTgLGSgPGE10WI6fvy4vvrqK0nSXXfdxacDZVSvnr0s27Nnz7LbJicnR3PmfC4p9+YvXTp3cWkMk8mknj16Ssr99Hz9+vV2261fv97y6XrPHj3z3TgmKipKTS5+8v3Nt98oNdX+OiWzP5tt2e7dq7dLscJ4yAEYHTkAoyMHYHStb+hq2V6+fJHdNjk5Ofrtt1hJUlBQRV3d7AaXxvjum22FPqpVC5ckVasWbvnea/+ZYemja5dehfbxn1enW9r3u2eE5ftdu/TKFxMA5KEA6IRt27ZpwYIFOnz4sGUqcVpampYvX67nnntOycnJuuaaa9SjR49SjhSOtG7dWu3bd5AkzZg5Q+vWrcvXZsLECYqPj5ckPfbYKPn6+trsX/HbCvn4esvH11tDhw6xO86oUaMtReDHHx+ttLQ0m/1paWl6/PHRkiQfHx+NGjXabj9PPvGkJOnUqVMaM+a5fPv37dunt99+S5IUGRmp3r372H/iwEXkAIyOHIDRkQMwukaNrlGTJtdLkn75dYF27/4jX5vFsbOVeCh3fb0777hfPj62OfDnjk3qe8+16nvPtXrv/bElHzQAuBEFQCecOHFCM2fO1IgRI9S3b1/1799f9913nyZOnKiTJ0+qVatWeuklbs9e1k2cMFEBAQHKysrS7Xd001tvv6X169dr+YrlGjlyhOXNZVRUlOVNp6uioqL01FNPS5LiNsepY8cOmjfva8XFxWnevK/VsWMHxW3OvazgqaeeVqNGjez2M2hQjNq2zV1v8sOPPlS/e+/RDz/+oI0bN+qDDz5Qh47tlZycLC8vL02cOMnhOj6ANXIARkcOwOjIARjd0CHPqUIFf2VnZ+m1cQ9p/oJpSkj4Q9v/3KipH7+mz+dMlCSF16qrnj1iSjlaAHAvk9lsNpd2EGXd4cOHtWzZMu3YsUPHjx9XamqqKlWqpEaNGqlr16666aab3DJOUlKSW/qRWAPQkdglsYqJGaTk5GS7+6OiorR4UawiIyPz7Vvx2wrdcsvNkqRBAwdpxoyZdvvIycnRQw89qJmz7O+XpKFDhmrq1I8LLBonJSWpe4/uiovbZHe/n5+fpkyeomHDhjvsA7gcOQCjIwdgdOSAMSxauKO0QyizNsWt0JQpLyg17bzd/eG16uqF5z9QrVpX5dv3545NeuXVYZKkzp166rFHx7k8/oiHu+nEicOqVi1cUz/83uXjL4+j3z0jdG+/h4vUjyfr2LmW2/piDUB4Cj4qc0J4eLiGDRtW2mHADXp076Etv2/VlPemaNmy/1NiYqIqVKigyIaR6nv33Xrk4UcUGBhYrDG8vLz06afT1OeuuzRt2qeKi4tTUlKSwsLC1KpVKz3wwIO6vdvthfYTFham1atWa9q0T/XlV19p1654paSkKDw8XF27dNVjj41Ss2bNihUrjIccgNGRAzA6cgBGd0Orznr33W+1dOkX+v33lTp56ph8fHxVs+ZVanvTrbq927/l5xdQ2mECgNsxA7AMYQYgAAAAgOJiBiCMjhmAQH4sWgcAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAejAAgAAAAAAAB4MAqAAAAAAAAAgAfzKe0AAKAkmM3m0g4BKFUmk6m0QwAAlJI1yxJKOwSgVHXsXKu0QwDKHGYAAgAAAAAAAB6MAiAAAAAAAEA5ZjKZLI/itLHnf//7n82x33zzTXHDRSmgAAgAAAAAAAC7ZsyYUeDXKB8oAAIAAAAAACCfNWvWaNeuXTbf+/HHH5WYmFhKEaGoKAACAAAAAAAgn+nTp1u2hwwZIknKycnRrFmzSikiFBUFQAAAAAAAANg4d+6c5s2bJ0lq1KiRJk2apICAAEnSzJkzZTabSzM8uIgCIAAAAAAAAGx8/fXXSklJkSQNHDhQlSpVUp8+fSRJ+/fv14oVK0oxOriKAiAAAAAAAABs5F3+azKZNHDgQElSTExMvv0oHygAAgAAAAAAwGLnzp1av369JKlTp06qV6+eJOmWW25R7dq1JUnz58/X2bNnSytEuIgCIAAAAAAAACysZ/dZz/rz8vKyzAZMS0vT3Llzr3hsKBoKgAAAAAAAAJAkZWZm6vPPP5ckBQYG6u6777bZb10QnDFjxhWNDUVHARAAAAAAAACSpMWLF+vEiROSpLvuukvBwcE2+6Ojo9W6dWtJUlxcnLZt23bFY4TrKAACAAAAAABAku2sPuvZfta4GUj5QwEQAAAAAAAAOnTokH744QdJUp06ddS1a1e77e677z5VqFBBkvTFF1/owoULVyxGFA0FQAAAAAAAAGjWrFnKzs6WJA0YMEBeXvbLRlWqVFGPHj0kSSdPntTChQuvVIgoIgqAAAAAAAAABmc2m20u/33rrbdkMpkcPr777jtLW24GUvb5lHYAwJX2zz//6L3339OyZf+ngwcPys/PTw0bNNTd99yjh0c+rMDAQLeMs+z7ZZo27VPFxcXpxIkTqlatmlq1aqXhwx/Q7d1ud6qPrKwsTZ8+TXO//FK7d+/S+fPnFR4erpu73qxHH31MzZo1c0usMJZ//vlH73/wnpb93zIdTMzNgQYNGuqeu+/WSDfmwPffL9O0adMUt9kqB1q20vDhw9WtkBzIyMjQlq1bFBcXp02bNilu0ybt2btHZrNZkpR5IcstMcKYeB2A0ZEDMLrk8ye0Zcf/aX/iZp1LOSlvL1+FVKqhqPpt1bxJN/n6+BWp37Pnjmv6Nw+7dEyl4Goa3u8jh/szszK0decyJfy9TmeSjyk7J1MVg6qqQZ2WatHsDlUKrlakWAF7VqxYof379xfp2J9++kkHDx5URESEm6OCu5jMeX9NodQlJSW5ra/QkCpu68uTxC6JVUzMICUnJ9vdHxUVpcWLYhUZGVnkMXJycjRixEOaMdPxJyDDhg7TRx9NdTidWso9H7r36K64uE129/v5+WnK5CkaNmx4kWP1ZPxqs2/JkljFDI5xnAONorRo0eLi58DIEZpZQA4MHTpMH334kcMcGDZ8mD77bLbD4ykAFs5kMpV2CGUSrwMwOnLAGJ59aEFph1Bm7TsQp2W/TdGFzFS7+0Mrhav3bc8rtFItl/suSgGwbu3r1PdfL9nddzr5iBb8+IbOJB+xu7+Cb6Du6DRKDa5q5XKsnu75tzu5ra+wsDC39VWSrN/7OfpbqLA2AwYM0BdffCFJ6tu3r66++upCx127dq1++uknSdJrr72ml16yfz6j9FEALEMoAJasLVu2qGOnDkpLS1NwcLCee26MOnfqrLT0NM37+mtNmz5NUu4b3w3rN6pixYpFGueFF1/QO++8LUlq0byFnn76aTVo0FD79+/T+PHjtWXrFknSc8+N0evjXrfbR3Z2trre3FVr1qyWJPXp00fDhg1XldAq2rhxo95483UdP35cXl5eWrRosdOfohsJv9ry27Jlizp17ngpB559Tp06d1Z6Wpq+njdP0/NyoFGU1q/fUOQcePHFF/TO/96RJDVv3kJPP/W0GjRsoP379mv8u+O1NS8Hnn1O4xzkwNBhQ/X5559JkipWrKgWLVooISFBR48elUQB0BkUAPPjdQBGRw4YBwVA+46f3K+vloxVVvYF+fr4q/V1fRRR62plZV3Q7v1rtD3hZ0m5RcD7e72tCr4BLvWfnZOl02cPF9pu4x/ztWt/7rl9e6fRatKwQ742FzLT9MWi53Q6Obe/a6JuUeMG7eTjU0EHj/ypjX8sUGZWunx8/HTfneNUvWp9l2L1dBQAXS8AnjlzRrVq1VJ6erp8fHx0+PBhVatW+AzTbdu26brrrpMk1a9fX/v27eN9aBlFAbAMoQBYsjp36azVq1fJx8dHy39doZtuuslm//h3x2vMmOckSS+99LJeefkVl8dISEjQtdddo6ysLLVq2UrLl69QQMClNw6pqanq2rWL4jbHycfHR39u32H3E/aZM2fogQcfkCSNHDFS7733vs3+vXv3qvWNNyg5OVmRkZH6c/sO+fhwRb81frXl16VrZ61evVo+Pj769dfluqmNbQ68++54jXl+jCTppbEv6eUi5sB1za9VVlaWWrZspeW/Ls+fAzd31eaLObB92592c2DevHlKS09Tq5at1KRJE3l5eenmW7pq5cqVkigAOoM3XvnxOgCjIweMgwKgfV8vfUmHjsXLy+Stfne+pvDqjW32b9q+SKs2fS5JatP8HrW9/l63x5CTk61P541USuopVfAN0EP/nmb3kuM1v3+lDVu/lSR1uGGgbriml83+w8d2ad7/vaIcc7bq1Gyqfne85vZYyzMKgK4XAD/88EM98sgjkqQePXpo8eLFTo/dokULbd26VZL0yy+/OLxzMEoXNwGBIWzcuFGrV6+SJA0dMjTfG15JevKJJ9WkSRNJ0nvvTVFmZqbL40yZMllZWbmFiUmTJtu84ZWkwMBATZo0WVLumjaTJ0+y28+EiRMk5d5Z6e2338m3PzIyUs89l1uo2bt3rxYu5E0eCrZx00atXp37SfOQIUPzFf8k6YknnlST6Is58P57RcuB96ZY5cAkBzkwSdLFHJgy2W4//fr1U8ygGDVr1qzAy8MAZ/E6AKMjB2B0R07s0aFj8ZKkq6O65iv+SVKrq3uoSkgdSdKWnf+n7Bz3f+B44PB2paSekiQ1qtfGbvEvOydLW3f+nySpSkgdtbq6R7424TWidXVUbpEl8ehOHT2x1+2xwlimT59u2R40aJBLx1q3t+4HZQt/VcEQFi1eZNmOiRlst42Xl5cGDBgoKXf68/IVy10aw2w2a3Fs7qck0dHRatOmjd12bdq0UePGuW84FscuzvfJS0JCguLjc9+c3HP3PQ4X4o4ZFGPZXrhooUuxwngWL7LOgRi7bXJzYICk3BxYUYQciM3LgcbRanOjgxy4sY0aR+XmQKydHABKAq8DMDpyAEa375+Nlu1mjbrYbWMyealpw9yZYxkXUnTwyJ9uj2Pn3hWW7aaRne22OXjkT2VcSL3YppNMJvt/tje1eh57/9ngthhhPFu3btXvv/8uSQoNDVWPHvmLzgW5//77LbOw58+frzNnzrg7RLgBBUAYwpo1ayRJQUFBatmypcN2HTt0tGyvXbvWpTH++usvHT58OF8/BY1z6NAh/f3335fFuvpSu46O+6lZs6aioqKKFCuMZ81aqxy43nEOdOjonhzoUMC5a73fXg4AJYHXARgdOQCjO3RslyTJ18dfNcIaOmxXp1ZTy/bhY7vdGsOFzDTtPZB7U5tKwdVVp2ZTu+3yYpWkOjUd3+m6ZlhD+VycQXjouHtjhbFYz9q799575efn2p2wq1evrm7dukmS0tPTNXfuXLfGB/egAAhD2LUr91PkyIaRBa4PEx0dne8YZ+2M32nZbtw4uoCWtvvjLxtnZ3y83Xb2+8n99PzgwYNKSUlxOlYYz65duW8kGxaWA42tc2CXw3b2xNvkQP7LaqxZ73c114Ci4HUARkcOwOhOnT0kSQqpVFNeXt4O21WpXPvSMWcS3RpDwl/rlJWVIUlqEtnR4Xq91uNax3M5Ly9vhVSsme8YGJPZbLY8XG3z3nvvWb7/0UcfFWn82NhYSx8PP+za3bBxZVAAhMdLT0+33GCldh3HL6BS7nTnoKAgSdLBg669iB5KvNS+TiHjRETUsWwnHjxo288h637qqCARdSIk5f4iT0zkRR/2WedAYeemTQ4kHiyw7eUSDx2ybNep7dy5mzsO5y5KFq8DMDpyAEaXlXVBaenJkqTgoIJvlujvFyxfH39J0rmUk26NY+fe3yzbTSMd36Qib1xfH3/5+wUV2GfF4KqSpLT0ZGVlu75uJwDjoAAIj3fu3DnLdnBwcKHt8970ppw/79o4Vu2DChknMOjSC/n5yz6tdiVem35cjBfGYXNOBTmfA+fPuzaT4rzNuVvwm9WgoEvrObmaa4CreB2A0ZEDMLoLmWmW7QoXi3sFybsxx4WsdLfFkHz+hBKP5s6SDa/eWKGVajlsm3kxXl9fZ2K91CYz033xAvA8FADh8dLTL70QVvCtUGj7vPUO0tLTCmlZwDgVCh7Hek2FtDTbcdLTM9zSD5DH+tz0LeScki6dV+mllAOAu/E6AKMjB2B02VYz47y8HF8Cn8fb21dS7sxBd4nft1JS7mWXBc3+k2SZyeftTKxWbbKy3RcvAM9DARAez9//0qdiFzILf1HMyMh90xngH1D0cS4UPE7eGJIUEGA7jr//pTeyxekHyGN9bmYWck5Jl84r/1LKAcDdeB2A0ZEDMLq8gp4k5eRkFdo+r2Do41N4wdxZ8XtXWmKJqt+uwLY+F+PNdiZWqzY+3u6LF4DnoQAIj1exYkXLtjOXhuQtIF3YpSv5xrFqX9glM6lWl7oEB9leKulKvDb9uBgvjMPmnEpxPgcKu4z3csE2527Blw+npKRatl3NNcBVvA7A6MgBGF0F30vFYWcu6828eKMOZy4XdsaRE3ssNyFpGNGq0HX9fC/G68wlvZlWz8eZS4YBozp9+rQWLlyol156SXfccYdq1Kghk8kkk8mkFStWlHZ4V0Thc4qBcs7f319Vq1bVyZMndSjxUIFtT58+bXnTa704tTNqWy1SnVjIONaLateJiLDZV7u2dT+JCgsLc9zPxZs0mEymQhfJhnFZ50Bh56ZNDtSJKLDt5erUvrTge+Khghdit77BSATnLkoYrwMwOnIARufjU0H+fhWVnnFO51NOFdg2PeO8pahWMaiqW8Z39uYfeSoGVdXRE3uUmZWu9IyUAguG587n3jAkwL+SZeYggPwWLVqkIUOGlHYYpYoZgDCEJk2aSpL27turrCzHU+l37dpl2Y6ObuLSGE0vjiFJu3fvKqCl7f4ml43TtEkTu+3s97NbkhQREWFZsBuwp8nF82pfYTmw2zoHol0cwzoHdhfY1nq/q7kGFAWvAzA6cgBGVzUkt0B8JvmocnKyHbbLm6knSVVCil9Uzs7J0u79ayRJgf6VVa9Oi0KPsR7XOp7L5eRk6+y5Y/mOAWBfzZo1deedd+rll1/WnDlzSjucK44CIAyhXbvcdTZSUlK0efNmh+1Wrlpp2W7btq1LY9SvX1/h4eH5+rFn1epVkqTatWurXr16l8Xa/lI8Kx33c/ToUSUkJBQpVhhPu7ZWOfC74xxYtdI9ObCqgHNXklavcpwDQEngdQBGRw7A6GrXyP1gMzMrXceS9jlsl3hkp2U7vEbjYo/718HflZ6Re2fr6Ibt5eXlXegxebFKUuLRHQ7bHU3aZ5mtWLt68WMFPNnAgQN15MgRLVmyRP/5z3905513lnZIVxwFQBhCr569LNuzZ8+y2yYnJ0dz5nwuSQoJCVGXzl1cGsNkMqlnj56Scj89X79+vd1269evt3y63rNHT5lMJpv9UVFRltla33z7jVJTU/P1IUmzP5tt2e7dq7dLscJ4evayzoHZdtvk5kDuJ2EhISHqXIQc6JGXA7t3af0GBzmwYb1lpmEPOzkAlAReB2B05ACMrmHd1pbtHXuW221jNudo577cy3X9KgQpotbVxR53594Vlu2mkZ2dOiaiZjP5VQi8ePxvMpvN9vu2eh6RdW8scoyAEXh7F15893QUAGEIrVu3Vvv2HSRJM2bO0Lp16/K1mTBxguLj4yVJjz02Sr6+tmtorPhthXx8veXj662hQ+2vHTBq1GjLL5bHHx+ttLQ0m/1paWl6/PHRkiQfHx+NGjXabj9PPvGkJOnUqVMaM+a5fPv37dunt99+S5IUGRmp3r372H/iwEWtb2it9u1zZ1TMnDlD69bnz4GJEycoftfFHHj0sXw58NtvK+RbwUe+FXw0dNhQu+OMemyUVQ487iAHHpd0MQceG1Ws5wU4i9cBGB05AKOrVa2RatfILSz/mfCrDh/Pv1xJ3J+xOnUmd33KFk3vkLeX7ZL5B4/8qQkz7taEGXfr+5XvFzpmWsY5/XXwd0lSWOhVql61vlOxenv7qnnTOyRJp84kKu7PxfnaHD6+W38m/CpJqlOzqWpWi3SqbwDGxU1AYBgTJ0xUx04dlJaWptvv6KYxY55X506dlZaepnlff61Pp30qKfdT57w3na6KiorSU089rXfeeVtxm+PUsWMHPfPMM2rQoKH279+n//3vf9qydYsk6amnnlajRo3s9jNoUIxmzpqltWvX6MOPPtTRY0c1bNhwhYaEatOmTXr9jXFKTk6Wl5eXJk6cJB8fUhmFm/DuRHXq3FFpaWm6447bNea5MerUubPS09L09bx5mpaXA42i9ERxcuDJp/TO/97R5s1x6tipo555+hk1aNhA+/ft1//G/09b83Lgyacc5sDRo0f1w48/2Hzv2NFjlm3rWR9S7iXOkZG88UXBeB2A0ZEDMLoubYboqyVjlZV9Qd99/1/deN1dqlPramVlX9Du/Wu0ffdPkqTQSuFqdU3PYo+3e/8aZefkrrnp7Oy/PDdc00sJ+9fqdPJhrdr0uc4kH1XjBu3k411BiUf+1IY/5ivHnC0f7wrqfKOxb2wAwDkms6P5xLjikpKS3NZXaEgVt/XlSWKXxComZpCSk5Pt7o+KitLiRbF2CwkrfluhW265WZI0aOAgzZgx024fOTk5euihBzVzlv39kjR0yFBNnfqxvLwcT8JNSkpS9x7dFRe3ye5+Pz8/TZk8RcOGDXfYh5Hxq82+JUtiFTM4xnEONIrSokWL7ebAb7+t0C233iJJGjhwkGZMn2G3j5ycHD004iHNKiAHhgwZqqkfTXWYA9ZjOWPatOmKGRTjdHsj4NJq+3gdgNGRA8bw7EMLSjuEMmvfgTgt+22KLmTav7Q8tFK4et/2vEIr1cq37+CRP/XNslcl5Rb0unV8tMCx5sY+r6Mn9shk8tKD936soMBQl2I9nXxEC358Q2eSj9jdX8E3UHd0GqUGV7VyqV8jeP7twu+27KyC7kSO8uvMmTMKDc3NyeXLl6tz586lG9AVwCXAMJQe3Xtoy+9bNXr044qKilJgYKBCQkLUqmUrvfnmW4rbtLnYs4i8vLz06afTtHhxrHr27Knw8HBVqFBB4eHh6tmzp2Jjl+iTTz4t8A2vlPtCs3rVar3/3vtq1669qlatKn9/fzVo0EDDhw3Xxg2beMMLl3Xv3kO/b96i0aNHK6rRpRxo2bKV3nzjTW3aFOeeHPjkUy1etFg9e1yWAz16KnZxrD75+JNCcwAoCbwOwOjIARhdw6taaVCfd3V9s+4KrRQuHx8/+VUIUo2whurQaoAG9P6f3eKfq06fPaKjJ/ZIkuqGX+ty8U+SQivV0sBe/1OHVgNUI6yh/CoEycfHT6GVw3V9s+4a1Oddin8AnMYMwDKEGYCA+/CrDUbHDEAAMC5mAMLojDAD8NzpND158yzl5OSocliQ/AN9Cz/IA2Rl5Sg5KVVnk1I1+oM71eb2qCL1Y8QZgCyWAQAAAAAAUI789edx7d161Oo7xpsAsS42ocgFQCOiAAgAAAAAAFDemBx+YQi+ft6lHUK5QgEQAAAAAACgXDHL8Cu+GP35u4gCIAAAAAAAQHliMqlYFcCyesUwRb0SQwEQAAAAAACgnCnWDEDrY0u7GFjE52H4GZAuogAIAAAAAABQ3rirAHZ5P+aCdhbVZVXGUijeJSUlWbaTk5Mt22fPnrXZV7lyZfn6et5dlSkAAgAAAAAAlCMmSaaSqqKVSLfu79TV51+tWjW73+/du7fN18uXL1fnzp2LGFXZRQEQAAAAAACgHDFLentt9yId+1y7Je4Nxg3eXlO05wLnUQAEAAAAAAAoR4q1/J9BF88zm0t7scPSRQEQAAAAAACgPHHXDUCKenheEfFiUc3YpbXygQIgAAAAAABAOfN8x6VFOs71CYAFHHCxs/wtXCsJFuW59Hn4RrVs6fJhhkUBEAAAAAAAoFwxFaWS5+oIxT66RGcGGvNK5iKjAAgAAAAAAFDOuL/+VxJ36rXm5nIgBUCXUAAEAAAAAAAoT0wq8RmA7ufueMvb8y9dFAABAAAAAADKEZOKUP4q6/UyFycIlvWnU9ZQAAQAAAAAAChvnKmAlacq2eWxFlYQLE/PrQygAAgAAAAAAFCOZGVmy1TuLgF2USFP72BC0pWJw0NQAAQAAAAAAChHfCp4G34GXO3IqqUdQrlCARAAAAAAAKCcMXkZuwLo7eNV2iGUKxQAyxCTySQvL05gAAAAAACKytvbu7RDuAJMLl8CbHb1LhtlgKmAaY6efgW0u1EALEMCAgIUGBjolr6ys3Lc0g9QXnn8ehgAAAAOvPLuHaUdAlCqKoUElHYIV4aLf/IUVEyD56MAWIakpaUpIyPDLX1VqljZLf0AAAAAAFCenD592m19hYaGuq0vtzKZDb8GoOGfv4soAJYhZrNZ2dnZpR0GAAAAAADlljH+rnb9EmCXlOTVwm4LmwqgKygAAgAAAAAAlDclWf+6vO/iFARLKk7qfy6hAAgAAAAAAFCOmHSF1z13pSB4hcKi/ucaCoAAAAAAAABwHtW3cocCIAAAAAAAQHliusIzAO2Mb1GS6wUWGANVSFdQAAQAAAAAAChvrmT9q6Cx3LleIEoMBUAAAAAAAIBypYTvAlwcV2oNwLL6/MsoCoAAAAAAAADljdHrX0Z//i6iAAgAAAAAAFDeFKMAZioj1TMz1wtfMRQAAQAAAAAAypPSvgmImxSrEFn+n/4VRQEQAAAAAACgvDF4ASwnO6e0QyhXKAACAAAAAACUI9mZ2flnz3l6QfCyq4WP/HOmVMIorygAAgAAAAAAlCM+Fbxl8rZT8fPkJfVMtv+tE1m11EIpjygAAgAAAAAAlDN2lwC87HtmDyoIXv58PWAJxCuKAiAAAAAAAEB540QFzKZJuakGmmz+U2g7OMWrtAMArrR//vlHTz/ztJpd3VSVKldUtephatPmRo1/d7xSU1PdNs6y75ep7913qW69qxQYFKC69a5S37vv0rLvlzndR1ZWlj7+eKo6de6kmrVqKLhikKIaN9LIkSO0Y8cOt8UKYyEHYHTkAIyOHIDRHThwQC+OHaNWrZurVu0w1a1fW527ttfkKROLnQM5OTnatSteX8z9XE8+NVqdu7ZXtRohqhwaqMqhgVq1eqVT/Zw/f15r1qzWlPcmKWbIAF1zXRNLH9dcG12sGOE5TCYXH14mm4frHZT8Izc25T6cOATOM5nN5aYE7PGSkpLc1ldoSBW39eVJYpfEKiZmkJKTk+3uj4qK0uJFsYqMjCzyGDk5ORox4iHNmDnDYZthQ4fpo4+mysvLcQ0+KSlJ3Xt0V1zcJrv7/fz8NGXyFA0bNrzIscJ4yAEYHTkAoyMHjCHlfEZph1BmLVu2VA8+NEzJ5+znQGRkI837er4aNmhYpP7nfjlHIx9+0OH+JbHfq0P7joX2071HN4fFwqsirtL2bbuKFJ9RXMhKcVtfYWFhbuvLnXbGHdLL93/j3k5LozxUjCrenYOaa8iLnd0Xi4djBiAMY8uWLerf/99KTk5WcHCw/vvfcVq1crV+/PEnDb/4xjEhIUE9e/XQuXPnijzO2JfGWt7wtmjeQl/M+ULr1q7XF3O+UIvmLSRJ02dM10svv+Swj+zsbPW9u6/lDW+fPn20ZMlSrV2zTpMmTlb16tWVkZGhkQ+PdOlTdBgbOQCjIwdgdOQAjO6PbVs1ZNggJZ/LzYGXxr6qn35YrsWL/k8xMUMkSXv37lG/e+8qcg5Yz6/x9fXVddc1V7OmVxern9DQKura9RYFBwcXKSZ4JpNKYAJeCc4QNOU9LhujON1yBbBrmAFYhjADsGR17tJZq1evko+Pj5b/ukI33XSTzf7x747XmDHPSZJeeullvfLyKy6PkZCQoGuvu0ZZWVlq1bKVli9foYCAAMv+1NRUde3aRXGb4+Tj46M/t++w+wn7zJkz9MCDD0iSRo4Yqffee99m/969e9X6xhuUnJysyMhI/bl9h3x8WNITBSMHYHTkAIyOHDAOZgDad/sdt2rtujXy8fHRsqU/qXXrG232T54yUS+/8qIkacxzL+j5MWNdHmPz5k2K2xyn61u01DXXXCt/f3+9+dY4vfX2G5KcnwE4c9Z0VQyuqBbXt7TMRrzm2mgdOHiAGYBOMMIMwPi4Q3p5oJtnABamKNWjEizS3TGwuYa80LnkBvAwzACEIWzcuFGrV6+SJA0dMjTfG15JevKJJ9WkSRNJ0nvvTVFmZqbL40yZMllZWVmSpEmTJtu84ZWkwMBATZo0WVLumjaTJ0+y28+EiRMkSVWqVNHbb7+Tb39kZKSee26MpNw3wAsXLnA5VhgLOQCjIwdgdOQAjG7z5k1au26NJGnggJh8xT9JeuzR0WrcOHd9vY+mflikHGjZ8gY99OBI3XBDa/n7+xc53iGDh+nuu/sV+VJkGIPJembdlXjYzNxzok1B7dz0gPMoAMIQFi1eZNmOiRlst42Xl5cGDBgoSTpz5oyWr1ju0hhms1mLYxdLkqKjo9WmTRu77dq0aaPGjRtLkhbHLtblk3ATEhIUHx8vSbrn7nsUGBhot5+YQTGW7YWLFroUK4yHHIDRkQMwOnIARrdkaaxle8D9A+228fLy0n339pcknT17RitX/XZFYgOKxFSGHl5Wjys5LlxCARCGsGZN7qd9QUFBatmypcN2HTtcmo6/du1al8b466+/dPjw4Xz9FDTOoUOH9Pfff18W6+pL7To67qdmzZqKiooqUqwwHnIARkcOwOjIARjd+vXrJOXmQPPm1zts175dB8v2hg3rSjwuoDiu+AxAV2cDlvTsP2YAuoQCIAxh167cT5EjG0YWuD5MdHR0vmOctTN+p2U779IBR6z3x182zs74eLvt7PeT++n5wYMHlZLivnUu4HnIARgdOQCjIwdgdLsTdkuSGtRvUGAONLpYVLY+BiizrtBMu8JuxnH5g1mAZRMFQHi89PR0yw1WatepXWDb0NBQBQUFSZIOHkx0aZxDiZfa1ylknIiIOpbtxIMHbfs5ZN1PHRUkok6EpNxLbhITXYsXxkEOwOjIARgdOQCjS09P18mTuTkQHl5IDoRcygHrcxEoi67oTDsXHldsFmBp/wDKGQqA8Hjnzp2zbAcHBxfaPu8FP+X8edfGsWofVMg4gRfHkKTzl31a7Uq8Nv24GC+MgxyA0ZEDMDpyAEZ3/vylcyooqPAcCAzMywFmlaLsKkJdzuMeVABd43juM+Ah0tPTLdsVfCsU2t7Pz0+SlJaeVvRxKhQ8Tt4YkpSWZjtOenqGW/oB8pADMDpyAEZHDsDoXDmnJMnvYhtXcwC4skzFLICVpeqZufAmKDYKgPB4/v7+lu0LmRcKbZ+RkfsGIcA/oOjjXCh4nLwxJCkgwHYcf/9Lb2QvXLhg068r/QB5yAEYHTkAoyMHYHSXn1OFybjYxtUcAK40k6ksFfGKo2jPw3Oe/5VBARAer2LFipZtZy4NyVtAurBLV/KNY9W+sEtmUq0udQm2unRFyh9vQW96bfpxMV4YBzkAoyMHYHTkAIwuOPjSOZWSUngOpKbm5UBQIS2BUlZg/ctTimOOZwempRZe0MclrAEIj+fv76+qVatKkg4lHiqw7enTpy1veq0Xp3ZGbatFqhMLGcd6Ue06ERG2/dS27qfghYcPJuYumm0ymQpdJBvGRQ7A6MgBGB05AKPz9/dXlSq5OXD4cCE5cOZSDlifi0BZc+FCViE3ySj9Nfrc83D8HJNPc5m+KygAwhCaNGkqSdq7b6+ysrIcttu1a5dlOzq6iUtjNL04hiTt3r2rgJa2+5tcNk7TJk3strPfz25JUkREhGXBbsAecgBGRw7A6MgBGF1042hJ0v6/9heYA3sSEizbjaMal3hcQFFV8PORyctk6EfNiJDS/jGUKxQAYQjt2rWTlHtJy+bNmx22W7lqpWW7bdu2Lo1Rv359hYeH5+vHnlWrV0mSateurXr16l0Wa/tL8ax03M/Ro0eVcPENiquxwnjIARgdOQCjIwdgdG3a3CQpNwe2bv3dYbvVa1ZZtm+88aYSjwsoFhMPOI8CIAyhV89elu3Zs2fZbZOTk6M5cz6XJIWEhKhL5y4ujWEymdSzR09JuZ+er1+/3m679evXWz5d79mjZ76FS6OiotTk4iff33z7jVJTU+32M/uz2Zbt3r16uxQrjIccgNGRAzA6cgBG1/3OHpbtOV98brdNTk6Ovvp6riSpcuUQdezQ6YrEBhSFSQVfHmuIR2n/EMoZCoAwhNatW6t9+w6SpBkzZ2jdunX52kyYOEHx8fGSpMceGyVfX1+b/St+WyEfX2/5+Hpr6NAhdscZNWq0vL29JUmPPz5aaWm2axKkpaXp8cdHS5J8fHw0atRou/08+cSTkqRTp05pzJjn8u3ft2+f3n77LUlSZGSkevfuY/+JAxeRAzA6cgBGRw7A6Fq2vEFtb8qdCfv5nNnauHFDvjbvvT/Zctn5yBEP58uBVatXqnJooCqHBmrkww+WfNBAAcxunklXGuv7MQPwyuIuwDCMiRMmqmOnDkpLS9Ptd3TTmDHPq3OnzkpLT9O8r7/Wp9M+lZT7qXPem05XRUVF6amnntY777ytuM1x6tixg5555hk1aNBQ+/fv0//+9z9t2bpFkvTUU0+rUaNGdvsZNChGM2fN0tq1a/ThRx/q6LGjGjZsuEJDQrVp0ya9/sY4JScny8vLSxMnTpKPD6mMwpEDMDpyAEZHDsDo3nrrf/pXt5uVlpamPn176MknnlHHDp2Ulp6m7777RrNmz5AkRUY20qOP2C9OO+OLubYzDLdv32bZ/vnnn3TgwD+WrxvUb6ibbsp/Cfu+/fu0fv1am++dv3hzkvMpKfnGuOXmW1WjRs0ix4zyxyRTvhnUbmF2fNddtzHl/ae48VMBdIXJbL4SP104IykpyW19hYZUcVtfniR2SaxiYgYpOTnZ7v6oqCgtXhSryMjIfPtW/LZCt9xysyRp0MBBmjFjpt0+cnJy9NBDD2rmLPv7JWnokKGaOvVjeXk5noSblJSk7j26Ky5uk939fn5+mjJ5ioYNG+6wD+By5ACMjhyA0ZEDxpByPqO0Qyizli1bqgcfGqbkc/ZzIDKykeZ9PV8NGzTMt2/V6pXq3qObJKn/vwfoow8/sdtH5dBAp+Nx1M8Xcz/Xw4885HQ/S2K/V4f2HZ1u7+kuZKW4ra+wsDC39eVOu7ce0esPLyr5gS5WjIpSarMUm0qoTndbv2s04PF2JdO5B+ISYBhKj+49tOX3rRo9+nFFRUUpMDBQISEhatWyld588y3Fbdps9w2vK7y8vPTpp9O0eHGsevbsqfDwcFWoUEHh4eHq2bOnYmOX6JNPPi3wDa+U+0KzetVqvf/e+2rXrr2qVq0qf39/NWjQQMOHDdfGDZt4wwuXkQMwOnIARkcOwOhuv/1OrVm9UY88/JgiIxspMDBQlSuHqEWL6/WfV8dp1W/r7Bb/gLLIdCX+d3G9vdzrduXiZcV5a/WV1P/gCmYAliHMAAQAAABQXMwAhNEZZQbgG48sLu0wStVt91yt+5kB6DQWywAAAAAAAChnSmIJwHLF6M/fRRQAAQAAAAAAyhOTrmgF0Nmhrug1poavgLqGAiAAAAAAAEA5csXqfy6OYYnpyt1MGE6iAAgAAAAAAFCOmCW3VwBNlv9zV2dWzDb/cdMYlABdQQEQAAAAAACgHMm7Ma97OnNTP06MYRmK29FecRQAAQAAAAAAyhXXK4Blar6cnWBcrgmWqSdU9nmVdgAAAAAAAABwTd4sQGcfKuMPV59PUep/J06c0FNPPaVGjRopICBAYWFhuu2227Rw4cIi9CZ17txZJpPJqceQIUPyHT948OBCj7v66quLFNvlmAEIAAAAAABQjmRnZTusgJk8bGqc2cHcwNNJKS71s2PHDnXt2lXHjx+XJFWsWFFnzpzRTz/9pJ9++kmjRo3S5MmTXeqzSpUqqlGjhsP9Fy5c0OnTpyVJLVu2dNjO399flStXtrsvLCzMpZgcYQYgAAAAAABAOWLy9nI4Y6y0Z/K5f2ag/efp7eN8SSsjI0M9e/bU8ePHdfXVV2vr1q1KTk5WcnKyxo0bJ5PJpClTpmjmzJlO9ylJ8+fP19GjRx0+nn76aUmSn5+f+vfv77Cfe++912EfK1ascCkmRygAAgAAAAAAlCNeXiaZDP6oXDXQ6X+vTz75RPv371dgYKCWLl2q6667TpIUGBioF198UQ8//LAkaezYscrMzHTbz2n27NmSpB49eqhKlSpu67coKAACAAAAAACUIyY5nhlnmIcLlzrPmTNHkvTvf/9bV111Vb79zz77rEwmkw4fPqzly5e75We0du1aJSQkSJLd9f+uNAqAAAAAAAAA5UkZuDS3TDyccP78eW3atEmS1K1bN7ttrrrqKjVp0kSS9MsvvzjXcSFmzZolSapVq5b+9a9/uaXP4qAACAAAAAAAUK6UgRl4pfxwVnx8vMzm3BuJFHRH3bx9O3fuLN6PRlJaWprmzZsnSRo4cKC8vb0LbP/LL7+oUaNG8vPzU+XKldWyZUu99NJLOnbsWLFjyUMBEAAAAAAAoLwp7dl3ZeHhhCNHjli2w8PDHbbL22fdvqgWLFigs2fPSpIGDx5caPvExET9/fffCgoK0vnz5/X7779r3Lhxatq0qdtmJFIABAAAAAAAKGdKewZeWXg44/z585btwEDHNw7J23fu3Lni/WAky92Eb7zxRsulxfZcf/31+vDDD/XPP/8oIyNDp06d0pkzZzRnzhzVqlVLp06dUu/evS1rCRaHT7F7AAAAAAAAwJXl/FWwuIIOHjyoX3/9VVLhs/9GjRqV73sVK1bU/fffr/bt26tFixY6ffq0Xn31Vc2dO7dYcTEDEAAAAAAAoDwxMQNQTs4ADA4OtmynpqY6bJe3r2LFisX60Xz22WfKycmRv7+/7rvvviL3U7duXT366KOSpKVLlyonJ6dYcVEABAAAAAAAKG9Ke/290n44yXrdv8OHDztsl7evVq1azndux+zZsyVJvXv3VkhISLH6uvHGGyVJycnJOnnyZLH64hJgAAAAAACAcsQkOb0GnlsHLYj5ikRh4ezTj46Olslkktls1o4dOxQdHW233Y4dOyRJTZs2LXJMa9as0Z49eyRJQ4YMKXI/JYEZgAAAAAAAAOVNCc+wM3mZbB+FXZZ7WfuyMgMwODhYrVu3liR9//33dtskJiZq586dkqSbb77Z+c4vk3fzjzp16uiWW24pcj95NmzYICn3suSqVasWqy9mAAIAAACABwkK9ivtEIBSdeFMSmmHUPJcuAtuaSnp+Fzp//7779eGDRv05Zdf6uWXX1ZERITN/nfeeUdms1nh4eHq0qVLkeJJTU3VN998I0kaNGiQvLwKnnNnNpsLfA4HDhzQBx98IEm68847C+2vMMwABAAAAAAAKG9Kew2+0n644MEHH1SDBg2UkpKi7t27a9u2bZKktLQ0vfXWW3r//fclSePGjZOvr6/NsfXq1ZPJZCr0jr7z589XcnKypMLv/itJc+bMUd++fbVw4UIlJSVZvn/+/Hl9+eWXateunU6dOqXg4GC9+uqrzj9ZB5gBCAAAAAAAUM6U9RmAJc6Fp+/n56fFixera9eu2rZtm6677jpVqlRJKSkpys7OliQ99thjxVq3b9asWZKkdu3aqVGjRoW2z87O1vz58zV//nxJuZcq+/n56fTp05Y7/lavXl1fffWVGjduXOS48lAABAAAAAAAKG8MXv9z9fk3a9ZM27dv11tvvaXY2FgdPHhQlStX1vXXX69HHnlEvXv3LnIoBw8e1PLlyyU5N/tPkrp06aJx48ZpzZo12r17t5KSknT27FmFhoaqadOmuuOOO/Tggw+qSpUqRY7LmslsNl/h+7TAEespn8UVGuKeEwQAAAAAgPLk9JlTbusrLCzMbX250+5tR3Q+83CRjp311m43R1N8g8cUbYZby5Yt3RyJ52IGIAAAAAAAQDni4+stZRbxYKPPHDQoCoAAAAAAAAAGYfKiAmhEFAABAAAAAADKE5P02fg9RTu0DN48pCjPpVO3KHEFsPMoAAIAAAAAAJQ3Za+Od2UZ/fm7iAIgAAAAAABAuWIqkzP5riiDP31XUQAEAAAAAAAob0qsAGguoX7zuCtuKoCuoAAIAAAAAABQnphKsP5XTgprRp8A6SoKgAAAAAAAAOVNqVXAnJkheCViowLoCgqAAAAAAAAA5YhJpTkDrowU3spIGOUFBUAAAAAAAIByxCyVWgXQZPk/WSYDlvSqgSg+CoAAAAAAAADliKlE1wB0MKDd79v8RzJfuVIgawC6hgIgAAAAAABAuVLyFcAidX/ZQSVbD6QC6Aqv0g4AuNL++ecfPf3M02p2dVNVqlxR1aqHqU2bGzX+3fFKTU112zjLvl+mvnffpbr1rlJgUIDq1rtKfe++S8u+X+Z0H1lZWfr446nq1LmTataqoeCKQYpq3EgjR47Qjh073Bbr/7N35/FRVXcfx78z2ReWQFgMqxDC6gYWkSUsal0KCIqlKhIBUdBHULHFVkWt2qJVNndBFsUFtBWIiLVVECJGCIILBCKCNAERI4GBbJBknj9ChiyTZZKZTGbO593XfZ5r7plzfpOcXy75zbn3wizkAExHDsB05ABMxvyHPylZBei2zWops7mj0/J9ujtm1JzFbq/H9ZmoUmZmptv6imrazG19+ZPEDxKVkDBeNpvN6fG4uDitWZ2o2NjYWo9RVFSkKVPu0OIliyttM2niJL300suyWiuvwWdmZmr4iOFKSdnq9HhISIgWzF+gSZNuq3WsMA85ANORAzAdOQCTMf/NkXXsqNv6io6Odltf7rQvLVMvPr2xbp14u4BWx2rUoMs769o/XOCeWAzACkAXHTt2TMuXL9f06dN14403asyYMZo8ebL+9re/6ZNPPvF2eKjC9u3bddNNN8pmsykyMlKPP/6ENm1M0scf/0e3nTlxpqWlaeS1I3TixIlaj/PQww85TvgXXXiR3lz+pr7YnKw3l7+piy68SJL02uLX9PCshyvto7CwUNePud5xwh89erQ++GCtNn/+hebNna+WLVsqPz9fU++c6tKniDAbOQDTkQMwHTkAkzH/4Y/qusLPYvHyVsfVgXANKwBd8OWXX2revHnKzs6WJAUHBysgIEC5ubmSpNatW+vVV1+tdf+sAPSsIUOHKClpkwIDA7X+0w269NJLyxx/5tln9MADMyVJDz88S4/MesTlMdLS0nT+BeepoKBAF/e5WOvXb1BYWJjjeE5OjoYNG6qUbSkKDAzUd9/udPoJ45IlizX59smSpKlTpuq5554vc3zv3r3qe8lvZLPZFBsbq+++3anAQG7piaqRAzAdOQDTkQMwGfPfLEasAPw+Uy/9Y1PVjXy9SFZNtWrgZZ117djz6ycWP8AKwBrasWOHnnrqKWVnZ2vo0KF6/vnn9d5772nFihV666239Mgjj2jw4MHeDhOV2LJli5KSin85TpwwscIJX5Luu/c+de/eXZL03HMLdPr0aZfHWbBgvgoKCiRJ8+bNL3PCl6Tw8HDNmzdfUvE9PebPn+e0nzlz50iSmjVrpqeeerrC8djYWM2c+YCk4n8ArFr1vsuxwizkAExHDsB05ABMxvyHPyoqLKp+hZ2v/6+a93fkp9qv1jURBcAayM3N1YIFC1RQUKDrrrtO9957r9q3b+84HhkZqT59+ujmm2/2YpSoyuo1qx37CQm3Om1jtVo1btwtkoov9V6/Yb1LY9jtdq1JXCNJ6tatm/r16+e0Xb9+/dS1a1dJ0prENSq/CDctLU2pqamSpBvG3KDw8HCn/SSMT3Dsr1q9yqVYYR5yAKYjB2A6cgAmY/7DHwUEBhRXdEpvFrO2ljGN3PCdNAcFwBr45JNPlJmZqebNm1Pk81Gff/65JCkiIkJ9+vSptF38oHjH/ubNm10aY//+/Tp06FCFfqoa5+DBg/rxxx/LxZp0tl185f20bt1acXFxtYoV5iEHYDpyAKYjB2Ay5j/8k73iPfQCDNusvn6Nc/2iAFgDGzZskCT1799fQUFB3g0GtbJ7d/GnaLGdY6u8P0a3bt0qvKamdqXucux37dqtipZlj6eWG2dXaqrTds77Kf70MD093XFvSsAZcgCmIwdgOnIAJmP+wz9Vf4ms32+iAOgKj9wp9K9//askqVOnTho3bpwnhqg3p06d0r59+yRJnTt3VkZGhlasWKGvv/5aJ0+eVFRUlM477zxdd911ZS4LRsORl5fneMBKm7ZtqmwbFRWliIgIZWdnKz09w6VxDmacbd+2mnHatWvr2M9ITy/bz8HS/bRVVdq1bSep+JKDjIwMxz8CgNLIAZiOHIDpyAGYjPkPf2ap06Nw7dU9Y8MrXCrqUf9ziUcKgI8++qgsFosef/xxT3Rfr44cOeK4keuhQ4f00ksvKT8/X8HBwQoODtYvv/yiTz/9VJs2bdK9996rgQMHejlilHfixNkbg0ZGRlbbvuSkn33ypGvjlGofUc044RERjv2T5T6tcyXeMv24GC/MQQ7AdOQATEcOwGTMf/itknvh1aED6mdm8UgBsEmTJo5Hkvu60r9I33vvPTVp0kQzZ85U7969ZbVatW/fPj3//PPau3ev5s2bp06dOikmJsaLEaO8vLw8x35wUHC17UNCQiRJuXm5tR8nuOpxSsaQih8yU7affLf0A5QgB2A6cgCmIwdgMuY//FndVgBWzZPrA91VevTk+/dHHrkHYJs2xUue/eE+BKWfylRUVKR77rlHF198sazW4m9dp06d9NBDDyk0NFSnTp3SmjVrvBUqKhEaGurYP3X6VLXt8/OLT7phoWG1H+dU1eOUjCFJYWFlxwkNPXsir0s/QAlyAKYjB2A6cgAmY/7Dr3nwCbuevHef2+KESzyyAvDKK6/Url27lJSUpAkTJnhiiHpT+hdpu3btdNFFF1Vo06xZM8XHx+vjjz/W119/XWlfy5cv11tvvVXp8TFjxighIaHS4y5piBfze0mjRmcfDV6TpfElhevqlu5XGKdU++ouGcgpVRyPLLV0X6oYb+l/TFTZj4vxwhzkAExHDsB05ABMxvw3U1RUlLdD8DiLxbtPwS29WKq8+lqZxwJA13hkBeDUqVMVGhqqN998Uzt37vTEEPWmWbNmjv2qbsJacuyXX36ptE12draOHDlS6ZaTk6OAgAC3bDgrNDRUzZs3lyQdzDhYZdusrCzHSb/0zXlrok2p+ZFRzTilbyrctl27sv20Kd1P1TcfTs8ovmmwxWKp9ibBMBc5ANORAzAdOQCTMf/N5K6/qxv839YeXAFY3cq7Mqv6rGW3+o4FNeORAmBsbKwWLlyooqIiXX755UpMTPTEMPWicePGLn16UFWlOyIiQi1btqx0Cw8PV2FhoVs2lNW9ew9J0t4f9joe6uLM7t27HfvdunV3aYweZ8aQpD17dlfRsuzx7uXG6dG9u9N2zvvZI6l4dWpEuU8PgdLIAZiOHIDpyAGYjPlvHnf9Xd3Q/7b25GW6VW7lCn7eioMlgK7xyCXAf/3rXyVJQ4cO1X/+8x+NGjVKHTp00IABA9S2bdsa3Z9g1qxZngitVi688EKtX7++yk9gSo61bNmy0jbjxo3TuHHjKj2emZmprKys2gdaSlTTZtU3MsiAAQOUlLRJ2dnZ2rZtmy655BKn7TZu2ujY79+/v0tjnHvuuYqJidGhQ4fK9OPMpqRNkorvl9mxY8dysZ59kvTGjRs1duwfnPZx+PBhpaWl1SpWmIccgOnIAZiOHIDJmP/mcdff1ZIUHR3ttr7crh7rX648uMOTDxBB7XlkBeCjjz6qxx57TP/9739lsVhkt9t14MABvfXWW3r66af12GOPVbs1JMOGDZMkpaen66uvvqpw/OjRo9q4sfiX/MUXX1yvsaFmrh15rWN/2bKlTtsUFRVp+fI3JElNmzbV0CFDXRrDYrFo5IiRkoo/PUxOTnbaLjk52fHp4sgRIyusGo2Li1P3M5/8vfveu8rJyXHaz7LXlzn2R107yqVYYR5yAKYjB2A6cgAmY/7DL3n4QR11eXBH/cXlrW++b/JIAVAqviFkyVb+v6vbGpoLLrhAffr0kSTNnz9f27ZtU1FRkSRp//79evLJJ5WXl6dGjRrp2muvraoreEnfvn01cOAgSdLiJYv1xRdfVGgzZ+4cpaamSpLuvnuagoKCyhzf8NkGBQYFKDAoQBMnOn+4zbRp0x33ibjnnunKzc0tczw3N1f33DNdkhQYGKhp06Y77ee+e++TVFxcfuCBmRWO//DDD3rqqdmSii+5HzVqtPM3DpxBDsB05ABMRw7AZMx/+C033kuvIRYSuf+fe3nkEuD169d7oluvmjFjhh566CHt27dPjz32mIKDgxUYGOj4RCYyMlJ//vOfyzw0BA3L3DlzFT94kHJzc3X1NVfpgQf+rCGDhyg3L1crV6zQwkULJRV/6lZy0nVVXFycZsy4X08//ZRStqUoPn6Q/vjHP6pTp87at+8H/eMf/9D2HdslSTNm3K8uXbo47Wf8+AQtWbpUmzd/rhdfelGHfz6sSZNuU1TTKG3dulVP/u0J2Ww2Wa1WzZ07T4GBHkll+BlyAKYjB2A6cgAmY/7DH5VfQeoLXLmUuPrOfO/9e5PF3hCX3DVQp0+f1tq1a7Vx40YdPHhQhYWFatGihfr06aPRo0c7ni5VW5mZmW6KlHsAVibxg0QlJIyXzWZzejwuLk5rVicqNja2wrENn23Q5ZdfJkkaf8t4LV68xGkfRUVFuuOO27VkqfPjkjRxwkS9/PIrslorX4SbmZmp4SOGKyVlq9PjISEhWjB/gSZNuq3SPoDyyAGYjhyA6cgBmIz5b46sY0fd1ldDvQfggf1ZWvzqlpq/wFdqZS5UqPr1b6+rR7j2wB6T8VGBC4KCgjRq1CiNGjXK26GglkYMH6HtX+3QgucWaN26D5WRkaHg4GDFdo7V9WPG6K4771J4eHidxrBarVq4cJFGX3edFi1aqJSUFGVmZio6OloXX3yxJk++XVdfdXW1/URHRytpU5IWLVqot995R7t3pyo7O1sxMTEaNnSY7r57mnr27FmnWGEecgCmIwdgOnIAJmP+w+9UV9TzlaJfaeVjrqIgWHjm1myoGVYANiCsAAQAAAAAoG5MWAG474df9fribWW/6IsFP1eVqmB17tJct9zax3ux+Jh6WwGYkZGhXbt26ejRozp16pTGjx9fX0MDAAAAAAD4jYAAqyxWZxU/P1/jZTm706JlpDcj8TkeLwAuXrxYzz77rONR5yXKFwCffPJJffbZZ2rXrp1ee+01T4cFAAAAAADgs5w/A8OEZYDFzHmn7lH5XUfrKDc3V7/73e80efJk7d69W3a73bE5c/HFF+u///2vli5d6nj8OgAAAAAAAMqyWGq3+ZJq34uPvR9v81gBcPz48Vq3bp3sdrs6dOigP//5z5oyZUql7a+44gq1aNFCkvTBBx94KiwAAAAAAAA/YHF5s1hKb7UvJHpmKxtf9e8HrvBIAfCTTz7RP//5T1ksFt14443as2ePnnzySV155ZWVB2K16oorrpDdbldSUpInwgIAAAAAAPAL7i64eX9zMX5v/wB8jEcKgEuXLpUkderUSUuXLlVQUFCNXnfBBRdIEpcAAwAAAAAAVMHTK/IaesxUAF3jkYeAfP7557JYLBo/fnyNi3+SFBMTI0k6fPiwJ8ICAAAAAADwE56tgFUsAtbmCcOejJEKoCs8UgD8+eefJUldu3Z16XWhoaGSpLy8PLfHBAAAAAAA4C88tUqvihEde+Wf71r/sXhnTF/mkUuAAwICJElFRUUuve7o0aOSpKZNm7o7JAAAAAAAAL/g7eJXyfievFwY7uWRFYCtWrXSvn37tHfvXpdet23bNklSu3btPBEWAAAAAACAHyh5Uq4XI6Dw51M8sgKwf//+stvtWrVqVY1fk52drXfffVcWi0UDBw70RFgAAAAAAAB+wdMPAfGFDTXnkQLgDTfcIEnavn27Fi9eXKPXTJ06VVlZWZKkm2++2RNhAQAAAAAAoAoU6fyTRwqAw4cPV79+/WS32zVlyhT9/e9/18mTJ5223b59u373u9/pzTfflMVi0dVXX62+fft6IiwAAAAAAAC/YLFYPLIVP+zDfZtn40RNWez28s9ucY/09HRdcsklOnz4sCwWi0JCQtSqVSsdOHBAFotFvXv3VkZGho4cOSJJstvtat++vVJSUhQdHe2JkBq8zMxMt/UV1bSZ2/oCAAAAAMBXZB076ra+Gmp9Iv1/x/T28u3eDsOr+vymrS67oou3w/AZHlkBKBU/yOPLL790rATMy8vT//73P5XcpPKrr77Szz//LLvdLrvdrksuuUSbN29usMkFAAAAAADgi7x9rz4uGfY+jxUApeIi4ObNm7V69Wpdd911at68uaPgZ7fbFRkZqd/97ndauXKlvvjiC8XExHgyHAAAAAAAAJ9XXCzz3mW9ntxq+p7y8go89N31T4H1MciIESM0YsQISVJOTo6OHTumyMhINW7cuD6GBwAAAAAA8BsFBUXGr5Y7lX/a2yH4lHopAJYWHh6u8PDw+h4WAAAAAADALwQGWh23WDNV06bUllzhkQLgnj171LVrV090DQAAAAAAYDzD6388BNhFHrkHYI8ePTRs2DCtWLFCp0+zJBMAAAAAAMBtGsDDOhrChprzyApAu92uzz77TJ999pmaN2+uCRMmaPLkyYqNjfXEcAAAAAAAAMawqOThHiYz/f27xiMrAAcPHux40m9mZqaeeeYZde3aVZdffrnee+89FRTwpBYAAAAAAIDasHs7APgcjxQA169fr927d+vee+9V8+bNHcXA9evXa+zYsWrbtq3+8pe/aP/+/Z4YHgAAAAAAwG9Z5P3LbxvChprzSAFQkuLi4vTss8/q4MGDWr58eZlVgUeOHNFTTz2lLl266Morr9T777+vwsJCT4UCAAAAAADgVywWSz1vNS3M1VM8tfie/fLLL5oxY4a6dOmisLAwRUdH67e//a1WrVpVq5/Bjz/+WKNY33vvvSr72bFjh26++Wa1adNGISEhatu2rcaNG6evv/66VnE5Y7Hb7fW2cjQtLU2vvPKKXn/9df3666/FAZwp2bZq1UqTJk3Sbbfdpg4dOtRXSA1KZmam2/qKatrMbX0BAAAAAOArso4ddVtf0dHRbuvLnQ5mHNc/V37j7TC86sKLYhQ/tHON2+/cuVPDhg3TkSNHJEmNGjVSTk6OY0HatGnTNH/+fJdi+PHHH3XuuedKKp4rAQEBTtstWrRIw4cPd3rsrbfe0q233up4iG6TJk10/PhxSVJwcLBef/11jR071qW4nPHYCkBnyq8KjI+Pd6wKPHz4sP72t7+pc+fO+t3vfqc1a9aoqKioPsMDAAAAAADwCd6+/NZqLd68Nb4rSwDz8/M1cuRIHTlyRL169dKOHTtks9lks9n0xBNPyGKxaMGCBVqyZEmtfx5bt27V4cOHnW6VFf927typCRMm6PTp0/r973+vQ4cO6dixYzp06JBuuOEGnTp1SgkJCdq9e3et4ypRrwXAEsHBwbrpppu0YcMGpaamauLEiZKKnx5cVFSkjz76SKNHj1bHjh31j3/8Qzk5Od4IEwAAAAAAoMGp10ttS21W69mt/NfqPR4XKoCvvvqq9u3bp/DwcK1du1YXXHCBJCk8PFwPPvig7rzzTknSQw895FiJVx9mzZqlU6dO6cILL9Sbb76pc845R5J0zjnn6K233tKFF16o/Px8zZo1q85jeaUAWOLLL7/U008/rRUrVjh+gJIcqwIzMjL0wAMPKDY2Vh999JE3QwUAAAAAAGgwvLLqrgHF48oKwOXLl0uSbrzxRrVv377C8T/96U+yWCw6dOiQ1q9f78JPofaOHz+uDz74QJI0Y8YMBQYGljkeGBioGTNmSJLWrFmjEydO1Gm8ei8AnjhxQi+++KIuvPBC9e/fX0uXLlV2drbsdrvOOeccPfLII/r88881bdo0RUVFOS4PHjlypLZs2VLf4QIAAAAAAPi1hlBA9JSTJ09q69atkqSrrrrKaZv27dure/fukqRPPvmkXuJKSkrSqVOnJElXXnml0zYlX8/Pz1dSUlKdxqu3AmBycrImTpyoc845R3fffbe+/fZblTx/5LLLLtM///lPHThwQI888oguvfRSzZs3T+np6XrssccUEBCgwsJCPf744/UVLgAAAAAAQIPlzkt66/sSYvf0V7PvU2pqqqP+1KtXr0rblRzbtWtXrX4ev//97xUVFeV4iu/111+vtWvXVtq+ZJxWrVqpRYsWTtu0aNFCLVu2rFNcJQKrb1J7NptNb7zxhl599VV99913kuT4pkdFRenWW2/VlClT1KVLF6evDw8P18MPP6xff/1VCxYs0LZt2zwZLgAAAAAAgE/w1oo6d6jP2H/66SfHfkxMTKXtSo6Vbu+KrVu3qnHjxgoICNDBgwf1r3/9S//61790ww03aPny5QoODnYaV1UxlRw/cuRIreMq4ZEVgF988YUmTJigmJgYTZs2Td99953jvn6/+c1vtHjxYh08eFDPPvtspcW/0oYMGSJJ+vnnnz0RLgAAAAAAgM+o7/vtNdStJk6ePOnYDw8Pr7RdyTFX7rUXGhqqO++8Uxs3bpTNZtPx48eVk5Oj7777Trfccosk6d1339X//d//VRpXVTHVNi5nPLICcMCAAbJYLI7VfuHh4frDH/6gqVOnqk+fPi73FxYW5u4QAQAAAAAAfFJhoV0uPQXDD52w5Xs7BLVu3VovvPBCha/37NlTr7/+ulq0aKE5c+Zo0aJFmjFjhrp27eqFKIt57BJgu92url27asqUKbr11lvVpEmTWvd13nnnacmSJW6MDgAAAAAAwDdZrb59CbA7BAcH1KhdZGSkYz8nJ0eNGzd22i4nJ0eS1KhRo7oHd8Zf//pXvfTSS8rNzdUHH3xQpgBYElfJuJVxV1weKQCOGTNGU6dO1dChQ93SX0xMjBISEtzSFwAAAAAAgC+zWKyyWKuoANrrL5Z6Veoth4YF1eglpe+xd+jQoUoLgIcOHZIknXPOObWPr5yIiAj17NlTKSkp2rdvn9O4SsatjLvi8kgBcOXKlZ7oFgAAAAAAAKrmAmADVgfW9C1269bNcZu6nTt3qlu3bk7b7dy5U5LUo0cPN0VYtZJxfv75Z2VmZio6OrpCm19++UVHjhxxS1weeQgIAAAAAAAAPKP4IRgWo7eaXgMdGRmpvn37SpI++ugjp20yMjK0a9cuSdJll13mnh+SpOzsbEdh8dxzzy1zbODAgY4nA//73/92+vqPP/5YkhQSEqKBAwfWKRYKgDDOgQMHdP8f71fPXj3UuEkjtWgZrX79LtEzzz5T7bX3rlj30TpdP+Y6dejYXuERYerQsb2uH3Od1n20rsZ9FBQU6JVXXtbgIYPV+pxWimwUobiuXTR16hTHLxHAVeQATEcOwHTkAEzG/Ie/sEvFS+BM3lxw8803S5LefvttpaenVzj+9NNPy263KyYmxqXb2ZU8/LYyjz76qHJzc2WxWDR8+PAyxxo3buz42pw5c1RYWFjmeEFBgebMmSNJGjlyZJ3vAWixVxetG/z0009KTk5WRkaGbDZbhTflzKxZszwdVoOTmZnptr6imjZzW1/+JPGDRCUkjJfNZnN6PC4uTmtWJyo2NrbWYxQVFWnKlDu0eMniSttMmjhJL730sqzWymvwmZmZGj5iuFJStjo9HhISogXzF2jSpNtqHSvMQw7AdOQATEcOwGTMf3NkHTvqtr6cXZbZEBz+yaa1a3Z5eBR3Xkfs/tJTz16t1W9Axxq1zc/PV48ePbRv3z6df/75euONN3T++ecrNzdX8+fP11/+8hfZ7XYtXrxYEyZMKPPajh076sCBA0pISNDSpUvLHBs8eLCuvPJKDR8+XD169FBgYPGd9nbt2qVnnnnG8UDb2267TQsXLqwQ186dO9W7d2+dOnVKY8eO1bx589S6dWsdPnxY99xzj1asWKGQkBDt2LGj0kuXa8qjBcAdO3boT3/6kz755BOXX1uTIqG/oQDoWdu3b1f84EHKzc1VZGSkZs58QEMGD1FuXq5WrlihRa8tklR84v8yeUutq+t/efAvevrppyRJF114ke6//3516tRZ+/b9oGeeeUbbd2yXJM2c+YCefOJJp30UFhZq2GXD9PnnSZKk0aNHa9Kk29Qsqpm2bNmiv/39SR05ckRWq1WrV6/R1VddXatYYRZyAKYjB2A6cgAmY/6bxZQC4IeJqfUyVl2KRp68FWGPXq3Vr3+HGrffuXOnhg0b5rinXuPGjZWdne2oP919991asGBBhddVVQAsOSZJgYGBatKkiXJzc8usKL7pppu0ZMkSx+W+5b311lu69dZbdfr0aVksFjVp0kTHjh2TJAUHB2vZsmX6wx/+UOP3WRmPFQA//PBDjRkzRvn5+dUuiSy5GWPp/6YAWDcUACsaMnSIkpI2KTAwUOs/3aBLL720zPFnnn1GDzwwU5L08MOz9MisR1weIy0tTedfcJ4KCgp0cZ+LtX79BoWFhTmO5+TkaNiwoUrZlqLAwEB99+1Op58wLlmyWJNvnyxJmjplqp577vkyx/fu3au+l/xGNptNsbGx+u7bnY5PGoDKkAMwHTkA05EDMBnz3yymFAAPHvq+Vq/9+qsCN0dTdxf0rt0c7tOnj0vtjxw5otmzZysxMVHp6emKiIhQ7969ddddd2nUqFFOX1NVAfDdd9/Vf//7X23dulU//fSTjh49qsDAQMXExOjSSy/VhAkTanRJ8Y4dO/T000/rs88+czwQZMiQIfrTn/6kCy64wKX3WBmPFAB//fVXde7cWTabTeHh4brvvvs0cOBAXXXVVbJYLHr88cd14YUXav/+/Vq3bp3WrSu+D0JCQoISEhIkFS+jNA0FQM/ZsmWL+g8oPsnfPvl2vfjiSxXaFBUV6YILz1dqaqqaNm2qnw4dVlBQzR4rXuL//u8uvfzKy5KkpE2fq1+/fhXaJCcna+CgAZKcn9Al6bzzeyk1NVXNmjXTj/sPKDw8vEKbp55+Sg8++BdJ0jtvv6MxY25wKVaYhRyA6cgBmI4cgMmY/+YxogB4+IQOHkyr1Wu/2d7wFlydf1FArV7nagHQZB55CMjLL78sm80mi8Wi1atX669//at++9vfOo736tVL11xzje666y598MEHSkpKUuvWrbVs2TJt3brVyOIfPGv1mtWO/YSEW522sVqtGjfuFknSsWPHtH7DepfGsNvtWpO4RlLxY8adnfAlqV+/furataskaU3imgorZNPS0pSaWryU+4YxNzg94UtSwvgEx/6q1atcihXmIQdgOnIApiMHYDLmP/yRpQ5LudzyDA7HU4jr/XkeqCWPFAA//vhjWSwWXXXVVTV6fPKll16qdevWKTAwUH/5y1+0Y8cOT4QFg33++eeSpIiIiCo/IYgfFO/Y37x5s0tj7N+/X4cOHarQT1XjHDx4UD/++GO5WJPOtouvvJ/WrVsrLi6uVrHCPOQATEcOwHTkAEzG/Idfstj17Y7CWm21rfhZrKW2kuJfqa+f+UKt+q/N+yg43TBXZzZUHikA7t69W5J0+eWXOz1eUFDxevPzzz9fY8eOVUFBgdMnowB1sXt38adosZ1jq7w/Rumn6pS8pqZ2pZ59AlPXrlU/naf08dRy4+xKTXXaznk/xZ8epqenKzs7u8axwjzkAExHDsB05ABMxvyHfyopwtXXVoOIHDXAeoqJtYMu8UgBsORpJW3bti3z9ZJ7KJR+GkppQ4YMkSR9+umnnggLhsrLy3PcX7FN2zZVto2KilJERIQkKT09w6VxDmacbd+2mnHatTubGxnp6WX7OVi6n7I5VKGftu0kFV9ykJHhWrwwBzkA05EDMB05AJMx/+HPLBZ3b54vIrp7Q815pABY2aONSx6lXrI0uryS+xtUdhyojRMnTjj2IyMjq21fctLPPnnStXFKtY+oZpzwM2NI0slyn9a5Em+ZflyMF+YgB2A6cgCmIwdgMuY//Fvd777n6QJdVQXGuscPV3ikAHjOOedIko4eLfvknU6dOkmStm/f7vR1e/fuleT8EmGgtvLy8hz7wUHOi9OlhYSESJJy83JrP04lRfDyY0hSbm7ZcfLy8t3SD1CCHIDpyAGYjhyAyZj/8Ft+sILOl2P3RR4pAPbq1UvS2XsBlujbt6/sdrvWrl2rX375pcyx/Px8LVq0SJLUoUMHT4QFQ4WGhjr2T50+VW37/Pzik25YaFjtxzlV9TglY0hSWFjZcUJDz57I69IPUIIcgOnIAZiOHIDJmP/wVxZ5erWeb2yoOY8UAAcNGiS73a5NmzaV+fqNN94oScrOztYVV1yhdevWKS0tTR9++KHi4+P1v//9TxaLRcOHD/dEWDBUyaXnUs2WxpfcQLe6pfsVxinVvrpLBnJKLfWPLLV0X3It3jL9uBgvzEEOwHTkAExHDsBkzH/4q8JCu5xdFlu/Dwapv83Zez1+PK+ybw+c8EgBsKSAt2PHDu3bt8/x9QEDBmjkyJGy2+369ttvNXz4cHXv3l0jRoxQSkqKJCk6OlozZszwRFgwVGhoqJo3by5JOphxsMq2WVlZjpN+6Zvz1kSbUjfpzahmnNI3FW7brl3ZftqU7qfqm/mmZxTfNNhisVR7k2CYixyA6cgBmI4cgMmY//BXAQFWo1bEOXuvkZHVX9aPszxSAOzSpYuWLVumF154ocyyZEl68803dfXVV8tut1fY2rdvr3Xr1qlVq1aeCAsG6969hyRp7w97q7zHZOnL1rt16+7SGD3OjCFJe/bsrqJl2ePdy43To3t3p+2c97NHktSuXTvHDYsBZ8gBmI4cgOnIAZiM+Q+/ZJGsVovRW2BQgLd/Cj7FIwVASbrlllt0xx13qHv3sr/QIiIitHbtWiUlJWnWrFm6/fbbde+99+qtt95SWlqaevfu7amQYLABAwZIKl7Sv23btkrbbdy00bHfv39/l8Y499xzFRMTU6EfZzYlFV8e36ZNG3Xs2LFcrAPPxrOx8n4OHz6stLS0WsUK85ADMB05ANORAzAZ8x9+y9s34PP2xpOAXeKxAmB1+vfvr0cffVQvv/yynn32Wf3hD3+o9ilHQG1dO/Jax/6yZUudtikqKtLy5W9Ikpo2baqhQ4a6NIbFYtHIESMlFX96mJyc7LRdcnKy49PFkSNGnrmfwVlxcXGOwvm7772rnJwcp/0se32ZY3/UtaNcihXmIQdgOnIApiMHYDLmP/yVt+tvDWFDzXmtAAjUp759+2rgwEGSpMVLFuuLL76o0GbO3DlKTU2VJN199zQFBQWVOb7hsw0KDApQYFCAJk6c4HScadOmKyCgeBnyPfdMV25ubpnjubm5uuee6ZKkwMBATZs23Wk/9917nyTp6NGjeuCBmRWO//DDD3rqqdmSpNjYWI0aNdr5GwfOIAdgOnIApiMHYDLmP/yRRcWFZ7dt3vhfHWOGaygAwhhz58xVWFiYCgoKdPU1V2n2U7OVnJys9RvWa+rUKY6Ta1xcnOOk66q4uDjNmHG/JCllW4ri4wdp5coVSklJ0cqVKxQfP0gp24ofeDNjxv3q0qWL037Gj09Q//7Flyq8+NKL+v3YG/Tvj/+tLVu26IUXXtCg+IGy2WyyWq2aO3eeAgMDaxUvzEIOwHTkAExHDsBkzH/4I7euprOW2zy5cs+NY6DmLHa73V7bF0+cONGdsThYLBa99tprHum7IcvMzHRbX1FNm7mtL3+S+EGiEhLGy2azOT0eFxenNasTFRsbW+HYhs826PLLL5Mkjb9lvBYvXuK0j6KiIt1xx+1astT5cUmaOGGiXn75FVmtldfgMzMzNXzEcKWkbHV6PCQkRAvmL9CkSbdV2gdQHjkA05EDMB05AJMx/82Rdeyo2/qKjo52W1/u9MsvJ7X+0x/qZ7BaV43O8FChrkuXaF3Uu41nOvdDdfqoYOnSpR5bdmliARCeN2L4CG3/aocWPLdA69Z9qIyMDAUHByu2c6yuHzNGd915l8LDw+s0htVq1cKFizT6uuu0aNFCpaSkKDMzU9HR0br44os1efLtuvqqq6vtJzo6WkmbkrRo0UK9/c472r07VdnZ2YqJidGwocN0993T1LNnzzrFCvOQAzAdOQDTkQMwGfMffsXusbpaRQ10pV0DDavBqtMKwKo+sagLi8WiwsJCj/TdkLECEAAAAACAujFjBWC2PltfTysAG6jYLtG68KIYb4fhM+q0AnD//v3uigMAAAAAAAA1YJHdi/fAs5xdfudYUlbX64RrEQVLAF1SpwJghw4d3BUHAAAAAAAAasCu+nsKRpWjWJy3qv9yIKrD44IAAAAAAAB8iKefgmup4x32zi4Q9GApkBWALqEACAAAAAAA4GM89VBWd6prIdFbffsjCoAAAAAAAAC+ppb1L4uTPe+pwxrBhhC+D6EACAAAAAAA4GN8YQVg9VjHV18oAAIAAAAAAPgQi6UGC+B8vbJWzdJAX3979Y0CIAAAAAAAgA8pLHSyAtDfKmLl30+5guDJk/n1Foo/oAAIAAAAAADgQwICLLJY/a3iV41yb7dR41DvxOGjKAACAAAAAAD4GL+4BWAdmP7+XUUBEAAAAAAAwIdYLLV5CEitn7frRVW9RyqArqAACAAAAAAA4EPstarlUTAzGQVAAAAAAAAAH1K7FYBV8dbqwNq/B/e+f/9HARAAAAAAAMDHuLf+RTHN31EABAAAAAAA8DGmL4Az/f27igIgAAAAAACAz6EChpqjAAgAAAAAAOBDiu8B6O0o4EsoAAIAAAAAAPgUi/EPwTD9/buKAiAAAAAAAAAqqEuNze6tBwvDKQqADYjFYpHVavV2GAAAAAAA+KyAgABvh1AvPLkCzh1dl/ThqUIgCwBdQwGwAQkLC1N4eLhb+iosKHJLPwAAAAAA+JKoqChvh1AvfKUA5itx+jsKgA1Ibm6u8vPz3dJX40ZN3NIPAAAAAAC+JCsry219NeRiYt0Kaw2lKlf75YEUFl1DAbABsdvtKiws9HYYAAAAAAD4LHP+rq55BazhFsvKBuba5cIN9k01SBQAAQAAAAAAfIjF0pCLerXnynsqKuLWZ66gAAgAAAAAAOBDiorsHn0IiC/Izy/wdgg+hQIgAAAAAACAD7FarcYXAMPDQ7wdgk+hAAgAAAAAAOBjDK//Gf/+XUUBEAAAAAAAwIfU9h6Arj1kw7uqe38UAF1DARAAAAAAAMDnuF4BK1s0O1sNLCkMeq+oRjXP0ygAAgAAAAAA+Ji6F+vOdsBqOv9HARAAAAAAAMDHeLpo54nLhd0ZM0VL11AABAAAAAAA8DmerYBVLLCVvWS4ZgU4T8ZIBdAVFAABAAAAAAB8TP2vgKt8QFbjNXwUAAEAAAAAAHxIbZ8C7Ik4TBzbF1EABAAAAAAA8Dn1XwErKbqVL7554n6B1aMC6AoKgAAAAAAAAD6mvh4CUpNxnBUEWaHXsFAABAAAAAAA8DGeLrDVpf/6KP5RYHSN1dsBAPXtwIEDuv+P96tnrx5q3KSRWrSMVr9+l+iZZ59RTk6O28ZZ99E6XT/mOnXo2F7hEWHq0LG9rh9zndZ9tK7GfRQUFOiVV17W4CGD1fqcVopsFKG4rl00deoU7dy5022xwizkAExHDsB05ABMxvyH/7DIYjF98/bPwLdY7HbvXKmNijIzM93WV1TTZm7ry58kfpCohITxstlsTo/HxcVpzepExcbG1nqMoqIiTZlyhxYvWVxpm0kTJ+mll16W1Vp5DT4zM1PDRwxXSspWp8dDQkK0YP4CTZp0W61jhXnIAZiOHIDpyAGYjPlvjqxjR93WV3R0tNv6cqcTJ/K1a9eRWr22oRXOaluVat06Uh06RLk3GD/GCkAYY/v27brpphtls9kUGRmpxx9/Qps2Junjj/+j286cONPS0jTy2hE6ceJErcd56OGHHCf8iy68SG8uf1NfbE7Wm8vf1EUXXiRJem3xa3p41sOV9lFYWKjrx1zvOOGPHj1aH3ywVps//0Lz5s5Xy5YtlZ+fr6l3TnXpU0SYjRyA6cgBmI4cgMmY//BHJU8CdnVraPzlfTR0rABsQFgB6FlDhg5RUtImBQYGav2nG3TppZeWOf7Ms8/ogQdmSpIefniWHpn1iMtjpKWl6fwLzlNBQYEu7nOx1q/foLCwMMfxnJwcDRs2VCnbUhQYGKjvvt3p9BPGJUsWa/LtkyVJU6dM1XPPPV/m+N69e9X3kt/IZrMpNjZW3327U4GB3NITVSMHYDpyAKYjB2Ay5r9ZTFgBaLPlac8e99UQfFGzZmHq3Lm5S6/55ZdfNHv2bK1Zs0YZGRmKiIhQ7969deedd2rUqFEux2Cz2bRmzRp9/PHHSklJ0YEDB1RYWKjWrVurf//+mjp1qgYNGlTp62+99VYtW7asyjF69uyp7777zuXYymMFIIywZcsWJSVtkiRNnDCxwglfku679z51795dkvTccwt0+vRpl8dZsGC+CgoKJEnz5s0vc8KXpPDwcM2bN19S8T095s+f57SfOXPnSJKaNWump556usLx2NhYzZz5gKTifwCsWvW+y7HCLOQATEcOwHTkAEzG/Ie/qu3KOX/Z7PYil75fO3fuVK9evTRnzhzt3btXQUFBOnbsmP7zn/9o9OjRmj59uss/gz59+uiWW27RG2+8odTUVBUVFSkgIEAHDhzQ22+/rfj4eP3xj3+stp/Q0FC1atXK6eauIjQFQBhh9ZrVjv2EhFudtrFarRo37hZJ0rFjx7R+w3qXxrDb7VqTuEaS1K1bN/Xr189pu379+qlr166SpDWJa1R+EW5aWppSU1MlSTeMuUHh4eFO+0kYn+DYX7V6lUuxwjzkAExHDsB05ABMxvyHP/L+Azi8v4WEBNX4+5Wfn6+RI0fqyJEj6tWrl3bs2CGbzSabzaYnnnhCFotFCxYs0JIlS1z6OZw+fVrnn3++FixYoL179yo3N1cnT57Unj17dN1110mSnnnmGb388stV9jN27FgdPnzY6bZhwwaXYqoMBUAY4fPPP5ckRUREqE+fPpW2ix8U79jfvHmzS2Ps379fhw4dqtBPVeMcPHhQP/74Y7lYk862i6+8n9atWysuLq5WscI85ABMRw7AdOQATMb8hz/y9uq7hrC54tVXX9W+ffsUHh6utWvX6oILLpBUvDL3wQcf1J133ilJeuihh1xaAfz666/r66+/1t13363OnTuf+dlYFBcXp3fffVdDhgyRJP3jH/9wLWAPoAAII+zeXfwpWmzn2Crvj9GtW7cKr6mpXam7HPtdu3aromXZ46nlxtmVmuq0nfN+ij89TE9PV3Z2do1jhXnIAZiOHIDpyAGYjPkPf+Xpopm3eOL9LF++XJJ04403qn379hWO/+lPf5LFYtGhQ4e0fn3NVwBXVai3Wq1KSCherbtv3z5lZWXVPGAPoAAIv5eXl+d4wEqbtm2qbBsVFaWIiAhJUnp6hkvjHMw4275tNeO0a9fWsZ+Rnl62n4Ol+2mrqrRr205S8SUHGRmuxQtzkAMwHTkA05EDMBnzH/7N4vLm7ct2a7K59p6qd/LkSW3dWvxU7auuusppm/bt2zvuA/rJJ5+4+HOoXOn795XcI9RbKADC7504ccKxHxkZWW37kpN+9smTro1Tqn1ENeOEnxlDkk6W+7TOlXjL9ONivDAHOQDTkQMwHTkAkzH/4c+8fQmut7eaSk1Nddxvs1evXpW2Kzm2a9euStu46rPPPpOkah/m8cknn6hLly4KCQlRkyZN1KdPHz388MP6+eef3RYLBUD4vby8PMd+cFBwte1DQkIkSbl5ubUfJ7jqcUrGkKTc3LLj5OXlu6UfoAQ5ANORAzAdOQCTMf/hzxpSkc1b8dbETz/95NiPiYmptF3JsdLt6yIjI8Px8I9bb731zOrGytv++OOPioiI0MmTJ/XVV1/piSeeUI8ePdy2IpECIPxeaGioY//U6VPVts/PLz7phoWG1X6cU1WPUzKGJIWFlR0nNPTsibwu/QAlyAGYjhyA6cgBmIz5D//l6qWytdvKXp5b08KcOy7trclWM6VXyFb2ZO3Sx0qvxK2t06dP68Ybb9TJkyfVoUMH/fnPf3barnfv3nrxxRd14MAB5efn6+jRozp27JiWL1+uc845R0ePHtWoUaOUlpZW55gqvwMq4CcaNWrk2K/J0viSG+hWt3S/wjil2ld3yUBOqaX+kaWW7ksV4y39j4kq+3ExXpiDHIDpyAGYjhyAyZj/8FeeWKFXg1Hre8Aq1f/7rxm73a7JkycrKSlJoaGheuedd9SkSROnbadNm1bha40aNdLNN9+sgQMH6qKLLlJWVpYeffRRvfXWW3WKixWA8HuhoaFq3ry5JOlgxsEq22ZlZTlO+qVvzlsTbUrdpDejmnFK31S4bbt2ZftpU7qfqm/mm55RfNNgi8VS7U2CYS5yAKYjB2A6cgAmY/7Dn3n7Hnze3mqqdIE8Jyen0nYlx0oX4mtj2rRpWrZsmQIDA7Vy5Ur169evVv106NBB//d//ydJWrt2rYqKiuoUFwVAGKF79x6SpL0/7K3yyTu7d+927Hfr1t2lMXqcGUOS9uzZXUXLsse7lxunR/fuTts572ePJKldu3aOGxYDzpADMB05ANORAzAZ8x/+q34uAy69ue/pvfV3GXDp+/4dOnSo0nYlx84555wa9evM/fffr+eff14BAQFavny5RowYUeu+JOmSSy6RJNlsNv3666916osCIIwwYMAAScVL+rdt21Zpu42bNjr2+/fv79IY5557ruMXS+l+nNmUtEmS1KZNG3Xs2LFcrAPPxrOx8n4OHz7suA+Aq7HCPOQATEcOwHTkAEzG/Ie/amir7hpaPCW6deumkgdw7Ny5s9J2Jcd69OhRaZuq/OUvf9Gzzz4ri8WiRYsWaezYsbXqx1MoAMII14681rG/bNlSp22Kioq0fPkbkqSmTZtq6JChLo1hsVg0csRIScWfHiYnJzttl5yc7Ph0ceSIkSr/JKC4uDh1P/PJ37vvvVvpEuVlry9z7I+6dpRLscI85ABMRw7AdOQATMb8h7/y9iW43t5qKjIyUn379pUkffTRR07bZGRkaNeuXZKkyy67zOWfxaOPPqq///3vkqQXX3xRt956q8t9OPPll19KKr4sueR2BrVFARBG6Nu3rwYOHCRJWrxksb744osKbebMnaPU1FRJ0t13T1NQUFCZ4xs+26DAoAAFBgVo4sQJTseZNm26AgICJEn33DNdubm5ZY7n5ubqnnumS5ICAwM1bdp0p/3cd+99kqSjR4/qgQdmVjj+ww8/6KmnZkuSYmNjNWrUaOdvHDiDHIDpyAGYjhyAyZj/8F+WOm9VXdLryc0dscuFh5LcfPPNkqS3335b6enpFY4//fTTstvtiomJ0dChrn0AMHv2bD322GOSpLlz52rKlCk1ep3dbq/y+P/+9z+98MILkqTf/e53slrrVsKjAAhjzJ0zV2FhYSooKNDV11yl2U/NVnJystZvWK+pU6c4Tq5xcXGOk66r4uLiNGPG/ZKklG0pio8fpJUrVyglJUUrV65QfPwgpWxLkSTNmHG/unTp4rSf8eMT1L9/8aUKL770on4/9gb9++N/a8uWLXrhhRc0KH6gbDabrFar5s6dp8BAHuiN6pEDMB05ANORAzAZ8x/+qD5X0TXE2F2J//bbb1enTp2UnZ2t4cOH65tvvpFUXJifPXu2nn/+eUnSE088UeEDgI4dO8pisThd1Td//nz9+c9/llRcCLznnntqHNPy5ct1/fXXa9WqVcrMzHR8/eTJk3r77bc1YMAAHT16VJGRkXr00Udr/mYrYbFXV3JEvSn9A6+rqKbN3NaXP0n8IFEJCeNls9mcHo+Li9Oa1YmKjY2tcGzDZxt0+eXFS4HH3zJeixcvcdpHUVGR7rjjdi1Z6vy4JE2cMFEvv/xKlRX8zMxMDR8xXCkpW50eDwkJ0YL5CzRp0m2V9gGURw7AdOQATEcOwGTMf3NkHTvqtr6io6Pd1pc75eSc0oEDWd4Ow6uiosLVunXNn9i7c+dODRs2TEeOHJEkNW7cWNnZ2SosLJQk3X333VqwYEGF13Xs2FEHDhxQQkKCli5dWuaY1WqV3W6XxWJRy5Ytqxz/X//6V5l7di5dulQTJpxdURwZGamQkBBlZWU5nvjbsmVLvfPOOy6vSnSGjwpglBHDR2j7Vzu04LkFWrfuQ2VkZCg4OFixnWN1/ZgxuuvOuxQeHl6nMaxWqxYuXKTR112nRYsWKiUlRZmZmYqOjtbFF1+syZNv19VXXV1tP9HR0UralKRFixbq7Xfe0e7dqcrOzlZMTIyGDR2mu++epp49e9YpVpiHHIDpyAGYjhyAyZj/8CdFRXbl5GTU6rXh4e3cHE3d5eRUvCy3+tdIrVv3qXH7nj176ttvv9Xs2bOVmJio9PR0NWnSRL1799Zdd92lUaNGuRxDyZo6u92un3/+ucq2p06dKvPfQ4cO1RNPPKHPP/9ce/bsUWZmpo4fP66oqCj16NFD11xzjW6//XY1a+aeBV6sAGxAWAEIAAAAAEDdmLICMDX121q9NiKi4RUAs7NdLwBKUp8+NS8Amo4VgAAAAAAAAIbw5r3/4D0UAAEAAAAAAHxMo0btvR2C29TmvTRtGuaBSPwXTwEGAAAAAAAA/BgrAAEAAAAAAHyIxcKlvKa/f1exAhAAAAAAAMCH2O31Uf2yn9ngD1gBCAAAAAAA4EOKVwB6ughoUd0LgCzTaygoAAIAAAAAAPiY+imtlR2lpuXA+oiN0qJrKAACAAAAAAD4Gi9UwBpU0a1BBdPwUQAEAAAAAADwMV6rf1lK75xZE8itAhs8CoAAAAAAAAC+pkE8BtdS5v95ZWzUCAVAAAAAAAAAH2JRPZS/6jqAh1cFUv5zDQVAAAAAAAAAX+KBCqDF/R2WYXd3RZAKoEsoAAIAAAAAAPgYtxfsPMzX4vU3FAABAAAAAAB8TS3qaQ25BMdzRDyLAiAAAAAAAICPqbqYZ69Rq4akYqR2p1+tvD2qQgEQAAAAAADAh9jtkqXKpwD7Q3ms6vdw+nRhPcXhH6zeDgAAAAAAAAA1Z/WH+l4dBQZR0nIFKwABAAAAAAB8iqWaFYD+eke9s+/ZaqUA6AoKgAAAAAAAAL7EIlVZ/yt/+ayv1gOreI8sgnQNBUAAAAAAAAB/RrXMeBQAAQAAAAAAfAw1PbiCAiAAAAAAAICvMb0CaPr7dxEFQAAAAAAAAB9jMbwCZvr7dxUFQAAAAAAAAF9D/QsuoAAIAAAAAADgQyyi/gfXUAAEAAAAAADwIXbJKxXAyoa012sUZ1ABdQkFQAAAAAAAAB9SvAKw4VTAvBFJQ3r/voACIAAAAAAAgC/xcO3L4qb+7V5ZGghnKAACAAAAAAD4GHcV6TzJkzH6wNtvUCgAAgAAAAAAGKYhFBBZIVh/KAACAAAAAAD4mIZQwKurOr0HP3j/9YkCIAAAAAAAgM8xuwJmZ/mgSygAAgAAAAAA+BC73e4XKwDroqiQAqArKAACAAAAAAD4EKvFUqEAaFo5LDDI6u0QfAoFQAAAAAAAAJ9iUflLgM1bEGjeO64LCoAAAAAAAAC+xtX6l68tEazu/VH/cwkFQAAAAAAAAB/jcv3LBy4ZduU9Uf9zDRdMwzgHDhzQ/X+8Xz179VDjJo3UomW0+vW7RM88+4xycnLcNs66j9bp+jHXqUPH9gqPCFOHju11/ZjrtO6jdTXuo6CgQK+88rIGDxms1ue0UmSjCMV17aKpU6do586dbosVZiEHYDpyAKYjB2Ay5j/8hqXum6X05p4uXd/KxeHSi+ESi53nJjcYmZmZbusrqmkzt/XlTxI/SFRCwnjZbDanx+Pi4rRmdaJiY2NrPUZRUZGmTLlDi5csrrTNpImT9NJLL8tqrbwGn5mZqeEjhislZavT4yEhIVowf4EmTbqt1rHCPOQATEcOwHTkAEzG/DdH1rGjbusrOjrabX250+nTBbIdz6uXsUqKRg2t5hYaGqSIyBBvh+EzKADWwN69e7VlyxZ9//33OnTokGw2m/Lz89WoUSN16tRJ8fHxGjx4cJW/wGuCAqBnbd++XfGDByk3N1eRkZGaOfMBDRk8RLl5uVq5YoUWvbZIUvGJ/8vkLWrUqFGtxvnLg3/R008/JUm66MKLdP/996tTp87at+8HPfPMM9q+Y7skaebMB/TkE0867aOwsFDDLhumzz9PkiSNHj1akybdpmZRzbRlyxb97e9P6siRI7JarVq9eo2uvurqWsUKs5ADMB05ANORAzAZ898sZhQAC3WingqAUu0vF/Zk0TAkNJACoAsoANbAiy++qI8++sjx36GhoZKkvLyzydarVy899NBDCg8Pr/U4FAA9a8jQIUpK2qTAwECt/3SDLr300jLHn3n2GT3wwExJ0sMPz9Ijsx5xeYy0tDSdf8F5Kigo0MV9Ltb69RsUFhbmOJ6Tk6Nhw4YqZVuKAgMD9d23O51+wrhkyWJNvn2yJGnqlKl67rnnyxzfu3ev+l7yG9lsNsXGxuq7b3cqMJBbeqJq5ABMRw7AdOQATMb8N4sxBUBb/RUAG6KQ0EBFRFAArCnuAVgDXbt21aRJk/Tss8/qnXfe0cqVK7Vy5Uq9/vrruuWWW2S1WvXdd99p8eLKl3nDu7Zs2aKkpE2SpIkTJlY44UvSfffep+7du0uSnntugU6fPu3yOAsWzFdBQYEkad68+WVO+JIUHh6uefPmSyq+p8f8+fOc9jNn7hxJUrNmzfTUU09XOB4bG6uZMx+QVPwPgFWr3nc5VpiFHIDpyAGYjhyAyZj/AEABsEYuu+wyXXvtterSpUuZFX5NmzbVDTfcoDFjxkiSNmzY4PiFj4Zl9ZrVjv2EhFudtrFarRo37hZJ0rFjx7R+w3qXxrDb7VqTuEaS1K1bN/Xr189pu379+qlr166SpDWJa1R+EW5aWppSU1MlSTeMuaHSVaUJ4xMc+6tWr3IpVpiHHIDpyAGYjhyAyZj/8FflH6Bh3ObtH4CPoQDoBl26dJEknTp1SidOnPByNHDm888/lyRFRESoT58+lbaLHxTv2N+8ebNLY+zfv1+HDh2q0E9V4xw8eFA//vhjuViTzraLr7yf1q1bKy4urlaxwjzkAExHDsB05ABMxvyHP7I4/q9nN3stX1Ob19VuQ01RAHSD3bt3Syq+N2DTpk29Gwyc2r27+FO02M6xVd4fo1u3bhVeU1O7Unc59rt27VZFy7LHU8uNsys11Wk75/0Uf3qYnp6u7OzsGscK85ADMB05ANORAzAZ8x/+qj5W2Vlr+ZravM7VjfqfaygA1lJ+fr4yMjL0xhtv6P33i++58Lvf/U4WCzOwocnLy3M8YKVN2zZVto2KilJERIQkKT09w6VxDmacbd+2mnHatWvr2M9ITy/bz8HS/bRVVdq1bSep+JKDjAzX4oU5yAGYjhyA6cgBmIz5DwDFeFSQC06ePKmbbrqpwtcDAwM1fPhwjRs3zgtRoTqlL8uOjIystn1ERISys7OVffKka+OUah9RzTjhZ/5hIUkny31a50q8ZfpxMV6YgxyA6cgBmI4cgMmY//BbdVx71JDWLpW7FSY8hAKgC6xWq+MS35ycHJ06dUoWi0XDhw/X6NGjFRAQ4N0A4VRe3tlHowcHBVfbPiSk+DHiuXm5tR8nuOpxSsaQpNzcsuPk5eW7pR+gBDkA05EDMB05AJMx/+HPXCviNaCKXzll30fNq4EN9x01TBQAXRAeHq7XX39dUvEy6yNHjigxMVGJiYn65JNP9OCDD6pHjx5ejhLlhYaGOvZPnT5Vbfv8/OKTblhoWO3HOVX1OCVjSFJYWNlxQkPPnshPnTpVpl9X+gFKkAMwHTkA05EDMBnzH/7NH0tgNX9P5Z+ijapRAKwli8WiVq1a6bbbblPLli21aNEi/eMf/9DLL79c5pOY0pYvX6633nqr0j7HjBmjhISESo+7hDxwaNSokWO/JkvjS26gW93S/QrjlGpf3SUDOaWW+keWWrovVYy3qpN+mX5cjBfmIAdgOnIApiMHYDLmv5mioqK8HYLn2RvWZbzeQAHQNTwExA2uuuoqBQUF6ddff9W2bdsqbZedna0jR45UuuXk5CggIMAtG84KDQ1V8+bNJUkHMw5W2TYrK8tx0i99c96aaFPqJr0Z1YxT+qbCbdu1K9tPm9L9VH0z3/SM4psGWyyWam8SDHORAzAdOQDTkQMwGfPfTO76u7pB/21dD0/ZbehbQCAlLVfw3XKD4OBgxyc1P/30U6XtIiIi1LJly0q38PBwFRYWumVDWd27F1+avfeHvSooKKi03e7dux373bp1d2mMHt3PXv69Z8/uKlqWPd693Dg9und32s55P3skSe3atXM8sQxwhhyA6cgBmI4cgMmY/+Zx19/VDftvawubX14C7TkUAN0gNzdXNptNUtX3Xhg3bpw+/PDDSreRI0cqKyvLLRvKGjBggKTiVZhVrdLcuGmjY79///4ujXHuuecqJiamQj/ObEraJElq06aNOnbsWC7WgWfj2Vh5P4cPH1ZaWlqtYoV5yAGYjhyA6cgBmIz5bx53/V3N39bwJxQAq1FYWFjtdeWrV692fJLUs2fP+ggLLrp25LWO/WXLljptU1RUpOXL35AkNW3aVEOHDHVpDIvFopEjRkoq/vQwOTnZabvk5GTHp4sjR4yUpdyNG+Li4tT9zCd/7773rnJycpz2s+z1ZY79UdeOcilWmIccgOnIAZiOHIDJmP/wR/62ds4f3kNDRwGwGpmZmbr33nv18ccf65dffnF83W63Kz09XS+//LLefvttSdKll16qDh06eCtUVKFv374aOHCQJGnxksX64osvKrSZM3eOUlNTJUl33z1NQUFBZY5v+GyDAoMCFBgUoIkTJzgdZ9q06Y77RNxzz3Tl5uaWOZ6bm6t77pkuSQoMDNS0adOd9nPfvfdJko4ePaoHHphZ4fgPP/ygp56aLUmKjY3VqFGjnb9x4AxyAKYjB2A6cgAmY/7Db9WxAujte/iV3qj+eR4FwBrYt2+fnn/+eU2aNEljxozRuHHjdMMNN+iuu+7Shx9+KLvdrt/85je69957vR0qqjB3zlyFhYWpoKBAV19zlWY/NVvJyclav2G9pk6d4ji5xsXFOU66roqLi9OMGfdLklK2pSg+fpBWrlyhlJQUrVy5QvHxg5SyLUWSNGPG/erSpYvTfsaPT1D//sWXKrz40ov6/dgb9O+P/60tW7bohRde0KD4gbLZbLJarZo7d54CA3mgN6pHDsB05ABMRw7AZMx/+Cd3rAOszwqbL8Tovyx2nptcpdOnT+vLL7/UN998o7S0NGVlZclmsykoKEjNmzdXXFycBg8erN69e9d5rMzMTDdEXCyqaTO39eVPEj9IVELCeMc9G8uLi4vTmtWJio2NrXBsw2cbdPnll0mSxt8yXosXL3HaR1FRke6443YtWer8uCRNnDBRL7/8iqzWymvwmZmZGj5iuFJStjo9HhISogXzF2jSpNsq7QMojxyA6cgBmI4cgMmY/+bIOnbUbX1FR0e7rS93KiwoUl7u6XodszbFI0+W6AKDAhQSSgG8pvhOVSMoKEgDBw7UwIEDq2+MBm/E8BHa/tUOLXhugdat+1AZGRkKDg5WbOdYXT9mjO668y6Fh4fXaQyr1aqFCxdp9HXXadGihUpJSVFmZqaio6N18cUXa/Lk23X1VVdX2090dLSSNiVp0aKFevudd7R7d6qys7MVExOjYUOH6e67p3HPSbiMHIDpyAGYjhyAyZj/QN34w3q7X375RbNnz9aaNWuUkZGhiIgI9e7dW3feeadGjRrl7fA8ihWADQgrAAEAAAAAqBsjVgAW1v8KwIYmMChAISE1X9e2c+dODRs2TEeOHJEkNWrUSDk5OSosLJQkTZs2TfPnz/dIrA0B9wAEAAAAAADwMZ6+A6DTzWJxvnkpnprKz8/XyJEjdeTIEfXq1Us7duyQzWaTzWbTE088IYvFogULFmjJksov3/d1FAABAAAAAAB8iV3yeHnN6eN6K+HWx/u6/wEgr776qvbt26fw8HCtXbtWF1xwgSQpPDxcDz74oO68805J0kMPPaTTp/1zZSUFQAAAAAAAAF/SkJbXeStOFyxfvlySdOONN6p9+/YVjv/pT3+SxWLRoUOHtH79etc69xEUAAEAAAAAAHxMfdQAG/JWUydPntTWrcVP1L7qqquctmnfvr26d+8uSfrkk09c6N13UAAEAAAAAACAX0pNTVXJ82979epVabuSY7t27aqXuOpbzR+XAgAAAAAAAN9S1b37GqIzxTp3+emnnxz7MTExlbYrOVa6vT+hAAgAAAAAAOBL7JLF1wp7NVXT91XDQuHJkycd++Hh4ZW2Kzl24sSJmo3vY7gEGAAAAAAAwKe4d5WcLyriW+ASVgACAAAAAAD4EIvF4nNX9rpbQEDN1rRFRkY69nNyctS4cWOn7XJyciRJjRo1qntwDRAFQAAAAAAAAJ/i6rNwzVX6vn+HDh2qtAB46NAhSdI555xTL3HVNy4BBgAAAAAAgF/q1q2b436JO3furLRdybEePXrUS1z1jQIgAAAAAACAL7G4f7PU4+a2uGsgMjJSffv2lSR99NFHTttkZGRo165dkqTLLrusZh37GAqAAAAAAAAAPsbdNUBfi90VN998syTp7bffVnp6eoXjTz/9tOx2u2JiYjR06NBavKOGjwIgAAAAAACAT+ERuK64/fbb1alTJ2VnZ2v48OH65ptvJEm5ubmaPXu2nn/+eUnSE088oaCgIG+G6jEWu93OrGkgMjMz3dZXVNNmbusLAAAAAABfkXXsqNv6io6Odltf7lRUVKSC00VejcFSah2e3QsFSWuARYGBATVuv3PnTg0bNkxHjhyRJDVu3FjZ2dkqLCyUJN19991asGCBR2JtCHgKMAAAAAAAgE+x6Nvvvq7VK8/vdaF7Q1HZYmBtfPPdjlq9rk+fPjVu27NnT3377beaPXu2EhMTlZ6eriZNmqh379666667NGrUqFrF4CsoAAIAAAAAAMDvtWzZUnPmzNGcOXO8HUq9owAIAAAAAABgilou1qvuZdxfrmHjHoANCPcABAAAAACgbsy4B6BdhQWeuwegO58K7Kmik9VqUUAgz7atKVYAAgAAAAAA+BCL3Fuk8yRfidPfUQAEAAAAAADwNXWqrDWUslwd1gc2lLfgIygAAgAAAAAA+Bx/qID5w3vwDRQAAQAAAAAAfEhN1s35Q2mNh1a4DwVAAAAAAAAAH2KxFG/+zoC3WG8oAAIAAAAAAPgQi8Uii9Uu2Yv3TWO326kOuogCIAAAAAAAgI+xWq3eDsFrLFT/XGbubAEAAAAAAAAMQAEQAAAAAAAA8GMUAAEAAAAAAAA/RgEQAAAAAAAA8GMUAAEAAAAAAAA/RgEQAAAAAAAA8GMUAAEAAAAAAAA/RgEQAAAAAAAA8GMUAAEAAAAAAAA/RgEQAAAAAAAA8GMUAAEAAAAAAAA/RgEQxjlw4IDu/+P96tmrhxo3aaQWLaPVr98leubZZ5STk+O2cdZ9tE7Xj7lOHTq2V3hEmDp0bK/rx1yndR+tq3EfBQUFeuWVlzV4yGC1PqeVIhtFKK5rF02dOkU7d+50W6wwCzkA05EDMB05AJMx/wGYymK32+3eDgLFMjMz3dZXVNNmbuvLnyR+kKiEhPGy2WxOj8fFxWnN6kTFxsbWeoyioiJNmXKHFi9ZXGmbSRMn6aWXXpbVWnkNPjMzU8NHDFdKylanx0NCQrRg/gJNmnRbrWOFecgBmI4cgOnIAZiM+W+OrGNH3dZXdHS02/oCvIkVgDDG9u3bddNNN8pmsykyMlKPP/6ENm1M0scf/0e3nTlxpqWlaeS1I3TixIlaj/PQww85TvgXXXiR3lz+pr7YnKw3l7+piy68SJL02uLX9PCshyvto7CwUNePud5xwh89erQ++GCtNn/+hebNna+WLVsqPz9fU++c6tKniDAbOQDTkQMwHTkAkzH/AZiOFYANCCsAPWvI0CFKStqkwMBArf90gy699NIyx5959hk98MBMSdLDD8/SI7MecXmMtLQ0nX/BeSooKNDFfS7W+vUbFBYW5jiek5OjYcOGKmVbigIDA/XdtzudfsK4ZMliTb59siRp6pSpeu6558sc37t3r/pe8hvZbDbFxsbqu293KjAw0OV4YRZyAKYjB2A6cgAmY/6bhRWAQEWsAIQRtmzZoqSkTZKkiRMmVjjhS9J9996n7t27S5Kee26BTp8+7fI4CxbMV0FBgSRp3rz5ZU74khQeHq558+ZLKr6nx/z585z2M2fuHElSs2bN9NRTT1c4Hhsbq5kzH5BU/A+AVavedzlWmIUcgOnIAZiOHIDJmP8AQAEQhli9ZrVjPyHhVqdtrFarxo27RZJ07Ngxrd+w3qUx7Ha71iSukSR169ZN/fr1c9quX79+6tq1qyRpTeIalV+Em5aWptTUVEnSDWNuUHh4uNN+EsYnOPZXrV7lUqwwDzkA05EDMB05AJMx/wGAAiAM8fnnn0uSIiIi1KdPn0rbxQ+Kd+xv3rzZpTH279+vQ4cOVeinqnEOHjyoH3/8sVysSWfbxVfeT+vWrRUXF1erWGEecgCmIwdgOnIAJmP+AwAFQBhi9+7iT9FiO8dWeX+Mbt26VXhNTe1K3eXY79q1WxUtyx5PLTfOrtRUp+2c91P86WF6erqys7NrHCvMQw7AdOQATEcOwGTMfwCgAAgD5OXlOR6w0qZtmyrbRkVFKSIiQpKUnp7h0jgHM862b1vNOO3atXXsZ6Snl+3nYOl+2qoq7dq2k1R8yUFGhmvxwhzkAExHDsB05ABMxvwHgGIUAOH3Tpw44diPjIystn3JST/75EnXxinVPqKaccLPjCFJJ8t9WudKvGX6cTFemIMcgOnIAZiOHIDJmP8AUIwCIPxeXl6eYz84KLja9iEhIZKk3Lzc2o8TXPU4JWNIUm5u2XHy8vLd0g9QghyA6cgBmI4cgMmY/wBQjAIg/F5oaKhj/9TpU9W2z88vPumGhYbVfpxTVY9TMoYkhYWVHSc09OyJvC79ACXIAZiOHIDpyAGYjPkPAMUoAMLvNWrUyLFfk6XxJTfQrW7pfoVxSrWv7pKBnFJL/SNLLd2XXIu3TD8uxgtzkAMwHTkA05EDMBnzHwCKUQCE3wsNDVXz5s0lSQczDlbZNisry3HSL31z3ppoU+omvRnVjFP6psJt27Ur20+b0v1UfTPf9IzimwZbLJZqbxIMc5EDMB05ANORAzAZ8x8AilEAhBG6d+8hSdr7w14VFBRU2m737t2O/W7durs0Ro8zY0jSnj27q2hZ9nj3cuP06N7daTvn/eyRJLVr185xw2LAGXIApiMHYDpyACZj/gMABUAYYsCAAZKKl/Rv27at0nYbN2107Pfv39+lMc4991zFxMRU6MeZTUmbJElt2rRRx44dy8U68Gw8Gyvv5/Dhw0pLS6tVrDAPOQDTkQMwHTkAkzH/AYACIAxx7chrHfvLli112qaoqEjLl78hSWratKmGDhnq0hgWi0UjR4yUVPzpYXJystN2ycnJjk8XR44YKYvFUuZ4XFycup/55O/d995VTk6O036Wvb7MsT/q2lEuxQrzkAMwHTkA05EDMBnzHwAoAMIQffv21cCBgyRJi5cs1hdffFGhzZy5c5SamipJuvvuaQoKCipzfMNnGxQYFKDAoABNnDjB6TjTpk1XQECAJOmee6YrNze3zPHc3Fzdc890SVJgYKCmTZvutJ/77r1PknT06FE98MDMCsd/+OEHPfXUbElSbGysRo0a7fyNA2eQAzAdOQDTkQMwGfMfACgAwiBz58xVWFiYCgoKdPU1V2n2U7OVnJys9RvWa+rUKY6Ta1xcnOOk66q4uDjNmHG/JCllW4ri4wdp5coVSklJ0cqVKxQfP0gp21IkSTNm3K8uXbo47Wf8+AT17198qcKLL72o34+9Qf/++N/asmWLXnjhBQ2KHyibzSar1aq5c+cpMDCwVvHCLOQATEcOwHTkAEzG/AdgOovdbrd7OwgUy8zMdFtfUU2bua0vf5L4QaISEsbLZrM5PR4XF6c1qxMVGxtb4diGzzbo8ssvkySNv2W8Fi9e4rSPoqIi3XHH7Vqy1PlxSZo4YaJefvkVWa2V1+AzMzM1fMRwpaRsdXo8JCREC+Yv0KRJt1XaB1AeOQDTkQMwHTkAkzH/zZF17Kjb+oqOjnZbX4A3sQIQRhkxfIS2f7VD06ffo7i4OIWHh6tp06a6uM/F+vvfZytl6zanJ3xXWK1WLVy4SGvWJGrkyJGKiYlRcHCwYmJiNHLkSCUmfqBXX11Y5QlfKj7RJG1K0vPPPa8BAwaqefPmCg0NVadOnXTbpNu05cutnPDhMnIApiMHYDpyACZj/gMwGSsAGxBWAAIAAAAAUDesAAQqYgUgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+jAIgAAAAAAAA4McoAAIAAAAAAAB+LNDbAeAsi8Uiq5WaLAAAAAAAtRUQEODtEIAGx2K32+3eDgLFcnJyFB4e7pa+CguK3NIPAAAAAAC+JCCQhTVAeawAbEByc3OVn5/vlr4aN2riln4AAAAAAPAlWVlZbusrKirKbX0B3kQBsAGx2+0qLCz0dhgAAAAAAPgs/q4GKmJdLAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKADCOAcOHND9f7xfPXv1UOMmjdSiZbT69btEzzz7jHJyctw2zrqP1un6MdepQ8f2Co8IU4eO7XX9mOu07qN1Ne6joKBAr7zysgYPGazW57RSZKMIxXXtoqlTp2jnzp1uixVmIQdgOnIApiMHYDLmPwBTWex2u93bQaBYZmam2/qKatrMbX35k8QPEpWQMF42m83p8bi4OK1ZnajY2Nhaj1FUVKQpU+7Q4iWLK20zaeIkvfTSy7JaK6/BZ2ZmaviI4UpJ2er0eEhIiBbMX6BJk26rdawwDzkA05EDMB05AJMx/82Rdeyo2/qKjo52W1+AN7ECEMbYvn27brrpRtlsNkVGRurxx5/Qpo1J+vjj/+i2MyfOtLQ0jbx2hE6cOFHrcR56+CHHCf+iCy/Sm8vf1Bebk/Xm8jd10YUXSZJeW/yaHp71cKV9FBYW6vox1ztO+KNHj9YHH6zV5s+/0Ly589WyZUvl5+dr6p1TXfoUEWYjB2A6cgCmIwdgMuY/ANOxArABYQWgZw0ZOkRJSZsUGBio9Z9u0KWXXlrm+DPPPqMHHpgpSXr44Vl6ZNYjLo+Rlpam8y84TwUFBbq4z8Vav36DwsLCHMdzcnI0bNhQpWxLUWBgoL77dqfTTxiXLFmsybdPliRNnTJVzz33fJnje/fuVd9LfiObzabY2Fh99+1OBQYGuhwvzEIOwHTkAExHDsBkzH+zsAIQqIgVgDDCli1blJS0SZI0ccLECid8Sbrv3vvUvXt3SdJzzy3Q6dOnXR5nwYL5KigokCTNmze/zAlfksLDwzVv3nxJxff0mD9/ntN+5sydI0lq1qyZnnrq6QrHY2NjNXPmA5KK/wGwatX7LscKs5ADMB05ANORAzAZ8x8AKADCEKvXrHbsJyTc6rSN1WrVuHG3SJKOHTum9RvWuzSG3W7XmsQ1kqRu3bqpX79+Ttv169dPXbt2lSStSVyj8otw09LSlJqaKkm6YcwNCg8Pd9pPwvgEx/6q1atcihXmIQdgOnIApiMHYDLmPwBQAIQhPv/8c0lSRESE+vTpU2m7+EHxjv3Nmze7NMb+/ft16NChCv1UNc7Bgwf1448/los16Wy7+Mr7ad26teLi4moVK8xDDsB05ABMRw7AZMx/AKAACEPs3l38KVps59gq74/RrVu3Cq+pqV2puxz7Xbt2q6Jl2eOp5cbZlZrqtJ3zfoo/PUxPT1d2dnaNY4V5yAGYjhyA6cgBmIz5DwAUAGGAvLw8xwNW2rRtU2XbqKgoRURESJLS0zNcGudgxtn2basZp127to79jPT0sv0cLN1PW1WlXdt2koovOcjIcC1emIMcgOnIAZiOHIDJmP8AUIwCIPzeiRMnHPuRkZHVti856WefPOnaOKXaR1QzTviZMSTpZLlP61yJt0w/LsYLc5ADMB05ANORAzAZ8x8AilEAhN/Ly8tz7AcHBVfbPiQkRJKUm5db+3GCqx6nZAxJys0tO05eXr5b+gFKkAMwHTkA05EDMBnzHwCKUQCE3wsNDXXsnzp9qtr2+fnFJ92w0LDaj3Oq6nFKxpCksLCy44SGnj2R16UfoAQ5ANORAzAdOQCTMf8BoBgFQPi9Ro0aOfZrsjS+5Aa61S3drzBOqfbVXTKQU2qpf2SppfuSa/GW6cfFeGEOcgCmIwdgOnIAJmP+A0AxCoDwe6GhoWrevLkk6WDGwSrbZmVlOU76pW/OWxNtSt2kN6OacUrfVLhtu3Zl+2lTup+qb+abnlF802CLxVLtTYJhLnIApiMHYDpyACZj/gNAMQqAMEL37j0kSXt/2KuCgoJK2+3evdux361bd5fG6HFmDEnas2d3FS3LHu9ebpwe3bs7bee8nz2SpHbt2jluWAw4Qw7AdOQATEcOwGTMfwCgAAhDDBgwQFLxkv5t27ZV2m7jpo2O/f79+7s0xrnnnquYmJgK/TizKWmTJKlNmzbq2LFjuVgHno1nY+X9HD58WGlpabWKFeYhB2A6cgCmIwdgMuY/AFAAhCGuHXmtY3/ZsqVO2xQVFWn58jckSU2bNtXQIUNdGsNisWjkiJGSij89TE5OdtouOTnZ8eniyBEjZbFYyhyPi4tT9zOf/L373rvKyclx2s+y15c59kddO8qlWGEecgCmIwdgOnIAJmP+AwAFQBiib9++GjhwkCRp8ZLF+uKLLyq0mTN3jlJTUyVJd989TUFBQWWOb/hsgwKDAhQYFKCJEyc4HWfatOkKCAiQJN1zz3Tl5uaWOZ6bm6t77pkuSQoMDNS0adOd9nPfvfdJko4ePaoHHphZ4fgPP/ygp56aLUmKjY3VqFGjnb9x4AxyAKYjB2A6cgAmY/4DAAVAGGTunLkKCwtTQUGBrr7mKs1+araSk5O1fsN6TZ06xXFyjYuLc5x0XRUXF6cZM+6XJKVsS1F8/CCtXLlCKSkpWrlyheLjByllW4okacaM+9WlSxen/Ywfn6D+/YsvVXjxpRf1+7E36N8f/1tbtmzRCy+8oEHxA2Wz2WS1WjV37jwFBgbWKl6YhRyA6cgBmI4cgMmY/wBMZ7Hb7XZvB4FimZmZbusrqmkzt/XlTxI/SFRCwnjZbDanx+Pi4rRmdaJiY2MrHNvw2QZdfvllkqTxt4zX4sVLnPZRVFSkO+64XUuWOj8uSRMnTNTLL78iq7XyGnxmZqaGjxiulJStTo+HhIRowfwFmjTptkr7AMojB2A6cgCmIwdgMua/ObKOHXVbX9HR0W7rC/AmVgDCKCOGj9D2r3Zo+vR7FBcXp/DwcDVt2lQX97lYf//7bKVs3eb0hO8Kq9WqhQsXac2aRI0cOVIxMTEKDg5WTEyMRo4cqcTED/TqqwurPOFLxSeapE1Jev655zVgwEA1b95coaGh6tSpk26bdJu2fLmVEz5cRg7AdOQATEcOwGTMfwAmYwVgA8IKQAAAAAAA6oYVgEBFrAAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQAAAAAAAAMCPUQAEAAAAAAAA/BgFQBjnwIEDuv+P96tnrx5q3KSRWrSMVr9+l+iZZ59RTk6O28ZZ99E6XT/mOnXo2F7hEWHq0LG9rh9zndZ9tK7GfRQUFOiVV17W4CGD1fqcVopsFKG4rl00deoU7dy5022xwizkAExHDsB05ABMxvwHYCqL3W63ezsIFMvMzHRbX1FNm7mtL3+S+EGiEhLGy2azOT0eFxenNasTFRsbW+sxioqKNGXKHVq8ZHGlbSZNnKSXXnpZVmvlNfjMzEwNHzFcKSlbnR4PCQnRgvkLNGnSbbWOFeYhB2A6cgCmIwdgMua/ObKOHXVbX9HR0W7rC/AmVgC64Pjx43rttdd0xx13aMyYMbr55ps1a9YsJScnezs01MD27dt10003ymazKTIyUo8//oQ2bUzSxx//R7edOXGmpaVp5LUjdOLEiVqP89DDDzlO+BddeJHeXP6mvticrDeXv6mLLrxIkvTa4tf08KyHK+2jsLBQ14+53nHCHz16tD74YK02f/6F5s2dr5YtWyo/P19T75zq0qeIMBs5ANORAzAdOQCTMf8BmI4VgDX0v//9Tw8++KCOHz8uSQoLC1N+fr6KiookSSNGjNDkyZPrNAYrAD1ryNAhSkrapMDAQK3/dIMuvfTSMsefefYZPfDATEnSww/P0iOzHnF5jLS0NJ1/wXkqKCjQxX0u1vr1GxQWFuY4npOTo2HDhiplW4oCAwP13bc7nX7CuGTJYk2+vXg+TZ0yVc8993yZ43v37lXfS34jm82m2NhYffftTgUGBrocL8xCDsB05ABMRw7AZMx/s7ACEKiIFYA1cPr0aT3xxBM6fvy4OnTooPnz52vFihVasWKFxo0bJ4vFosTERP33v//1dqioxJYtW5SUtEmSNHHCxAonfEm679771L17d0nSc88t0OnTp10eZ8GC+SooKJAkzZs3v8wJX5LCw8M1b958ScX39Jg/f57TfubMnSNJatasmZ566ukKx2NjYzVz5gOSiv8BsGrV+y7HCrOQAzAdOQDTkQMwGfMfACgA1si///1vHT58WCEhIZo1a5bOPfdcScX3Xfj973+vq6++WpK0fPlyxy98NCyr16x27Cck3Oq0jdVq1bhxt0iSjh07pvUb1rs0ht1u15rENZKkbt26qV+/fk7b9evXT127dpUkrUlco/KLcNPS0pSamipJumHMDQoPD3faT8L4BMf+qtWrXIoV5iEHYDpyAKYjB2Ay5j8AUACskQ0bNkiS4uPj1aJFiwrHr7/+elksFh09elTffvttPUeHmvj8888lSREREerTp0+l7eIHxTv2N2/e7NIY+/fv16FDhyr0U9U4Bw8e1I8//lgu1qSz7eIr76d169aKi4urVawwDzkA05EDMB05AJMx/wGAAmC1cnNz9f3330uSevfu7bRNixYt1LZtW0nS119/XW+xoeZ27y7+FC22c2yV98fo1q1bhdfU1K7UXY79rl27VdGy7PHUcuPsSk112s55P8WfHqanpys7O7vGscI85ABMRw7AdOQATMb8BwAKgNXKyMhwLMvu0KFDpe1KjqWnp9dLXKi5vLw8xwNW2rRtU2XbqKgoRURESJLS0zNcGudgxtn2basZp127to79jHJz5uDB0v20VVXatW0nqfiSg4wM1+KFOcgBmI4cgOnIAZiM+Q8AxSgAVuPo0bNPD2rWrPIn65Ycy8rK8nhMcM2JEycc+5GRkdW2LznpZ5886do4pdpHVDNO+JkxJOlkuU/rXIm3TD8uxgtzkAMwHTkA05EDMBnzHwCKUQCsRl5enmM/JCSk0nYlx3Jzcz0eE1xT+mcYHBRcbXvHzzLPtZ9lmXGCqx6n9FwqP2fy8vLd0g9QghyA6cgBmI4cgMmY/wBQjAIg/F5oaKhj/9TpU9W2z88vPumGhYbVfpxTVY9TMoYkhYWVHSc09OyJvC79ACXIAZiOHIDpyAGYjPkPAMUqvwMqJJX9RZ6fn1/pY9gdJ4oqfvEuX75cb731VqXHx4wZo4SEhEqPu8RefRNTNGrUyLFfk6XxJTfQrW7pfoVxSrWv7pKBnFJL/SNLLd2XKsZbeg5W2Y+L8cIc5ABMRw7AdOQATMb8N1NUVJS3QwAaHAqA1Sh937+jR49WWgAsuVdgVb9osrOzdeTIkUqP5+TkKCAgoJaRllVYUOSWfvxBaGiomjdvrl9//VUHMw5W2TYrK8tx0i99c96aaFPqJr0Z1YxT+qbCbdu1K9tPm9L9ZCg6OrryfjKKbxpssViqvUkwzEUOwHTkAExHDsBkzH8zuevvasCfcAlwNdq2bSuLxSJJ+t///ldpu5Jj7cr9Ai8tIiJCLVu2rHQLDw9XYWGhWzaU1b17D0nS3h/2qqCgoNJ2u3fvdux369bdpTF6nBlDkvbs2V1Fy7LHu5cbp0f37k7bOe9nj6TieRdR7tNDoDRyAKYjB2A6cgAmY/6bx11/V/O3NfwJBcBqhIWFqUuXLpKkr776ymmbzMxMpZ95fPsFF1xQaV/jxo3Thx9+WOk2cuRIZWVluWVDWQMGDJBUvApz27ZtlbbbuGmjY79///4ujXHuuecqJiamQj/ObEraJElq06aNOnbsWC7WgWfj2Vh5P4cPH1ZaWlqtYoV5yAGYjhyA6cgBmIz5bx53/V3N39bwJxQAa2DIkCGSin8B//LLLxWO/+tf/5LdblezZs103nnn1XN0qIlrR17r2F+2bKnTNkVFRVq+/A1JUtOmTTV0yFCXxrBYLBo5YqSk4k8Pk5OTnbZLTk52fLo4csRIxwrTEnFxcep+5pO/d997Vzk5OU77Wfb6Msf+qGtHuRQrzEMOwHTkAExHDsBkzH8AoABYI1deeaVat26tvLw8Pf7449q/f7+k4gd/vPfee1q7dq2k4hV+gYHcVrEh6tu3rwYOHCRJWrxksb744osKbebMnaPU1FRJ0t13T1NQUFCZ4xs+26DAoAAFBgVo4sQJTseZNm26434T99wzXbm5uWWO5+bm6p57pkuSAgMDNW3adKf93HfvfZKK7y35wAMzKxz/4Ycf9NRTsyVJsbGxGjVqtPM3DpxBDsB05ABMRw7AZMx/AKAAWCNBQUF66KGH1KRJE/3444+aPn26/vCHP2js2LF6/fXXZbfbNXz4cF1++eXeDhVVmDtnrsLCwlRQUKCrr7lKs5+areTkZK3fsF5Tp05xnFzj4uIcJ11XxcXFacaM+yVJKdtSFB8/SCtXrlBKSopWrlyh+PhBStmWIkmaMeN+x+Xl5Y0fn6D+/YsvVXjxpRf1+7E36N8f/1tbtmzRCy+8oEHxA2Wz2WS1WjV37jwKz6gRcgCmIwdgOnIAJmP+AzCdxW63270dhK84duyY/vnPf2rLli3KzMxUaGioOnXqpN/97nfq169fnfvPzMx0Q5TFopo2q76RgRI/SFRCwnjZbDanx+Pi4rRmdaJiY2MrHNvw2QZdfvllkqTxt4zX4sVLnPZRVFSkO+64XUuWOj8uSRMnTNTLL78iq7XyGnxmZqaGjxiulJStTo+HhIRowfwFmjTptkr7AMojB2A6cgCmIwdgMua/ObKOHXVbX1U9iRnwJXxU4IKmTZtq0qRJmjRpkrdDQS2NGD5C27/aoQXPLdC6dR8qIyNDwcHBiu0cq+vHjNFdd96l8PDwOo1htVq1cOEijb7uOi1atFApKSnKzMxUdHS0Lr74Yk2efLuuvurqavuJjo5W0qYkLVq0UG+/8452705Vdna2YmJiNGzoMN199zT17NmzTrHCPOQATEcOwHTkAEzG/AdgMlYANiCsAAQAAAAAoG5YAQhUxD0AAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD8W6O0A4BlZx456OwRjRUVFKSAgQIWFhcrKyvJ2OEC9IwdgOnIApiMHYDpyAEBDxApAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8GAVAAAAAAAAAwI9RAAQAAAAAAAD8mMVut9u9HQTgT5YvX67s7GxFRERo3Lhx3g4HqHfkAExHDsB05ABMRw4AaIgoAAJuds011+jIkSNq2bKlPvzwQ2+HA9Q7cgCmIwdgOnIApiMHADREXAIMAAAAAAAA+DEKgAAAAAAAAIAfowAIAAAAAAAA+DEKgAAAAAAAAIAfowAIAAAAAAAA+DEKgAAAAAAAAIAfC/R2AIC/uemmm5Sdna2IiAhvhwJ4BTkA05EDMB05ANORAwAaIovdbrd7OwgAAAAAAAAAnsElwAAAAAAAAIAfowAIAAAAAAAA+DEKgAAAAAAAAIAfowAIAAAAAAAA+DEKgAAAAAAAAIAfC/R2AIAvOHnypL777jvt3btXP/zwg/bu3avjx49Lkp588kmdd955Tl93+vRpffLJJ/r++++1b98+ZWVlyWazKSgoSC1bttQFF1yg4cOHq3Xr1vX5dgCX1Hb+V+b777/XH//4RxUVFUmSFi5cqFatWrk9bsBd6pIDt912m44cOVJl/9dcc42mTJni1pgBd3LXeeDLL7/Up59+qu+//17Hjh1TRESEWrRooV69eumaa67h30NosGqbA2+99ZbeeeedGo3RsmVLLVq0yG0xA0B5FACBGvjyyy81f/58l1938uRJvfjii47/tlqtCg8PV05Ojg4cOKADBw7oo48+0vTp0zVo0CB3hgy4TW3nvzOFhYV6/vnnHcU/wBe4IwfCw8MVHBxc6TGgIatrDuTn5+sf//iHtmzZIkmyWCwKDw/XiRMndPz4ce3du1fnnnsuBUA0WLXNgbCwMDVt2rTKNseOHZMkxcbG1iIyAKg5CoBADUVFRalz586KjY1VTEyM5syZU+1rgoKCNGLECPXs2VNxcXGKiopSQECACgoKtHv3bi1dulRpaWmaN2+eYmNjdc4559TDOwFcV5v578yqVau0f/9+de3aVXv27HFzlIDn1DUHJk+erMsuu8xD0QGeV9scKCoq0hNPPKGvv/5azZs31/jx49WvXz+FhYWpsLBQhw8f1pYtW9SiRQsPvwOgbmqTA6NHj9bo0aMrPZ6amqqZM2dKEucIAB5HARCogSFDhpQ5KZ88ebJGr4uMjNTkyZMrfD0wMFC9evXSo48+qokTJyovL08bN27U2LFj3RYz4C61nf/lHT58WG+//bZatmypsWPH6q9//au7QgQ8yl05APiquuTABx98oK+//lqNGzfW008/XabQFxAQoDZt2lRZIAEaAk+dBz755BNJxcXF3r17u6VPAKgMDwEBaiAgIMAj/UZGRiomJkaS9Ouvv3pkDKCu3DX/X3zxRZ06dUq33367QkJC3NInUB88dQ4AfEVtc6CwsFD/+te/JEk33XQTq/zgszxxHsjPz9fnn38uqbjAyLkGgKdRAAS8yGaz6dChQ5LEfW/g1z799FPt2LFD/fr1U9++fb0dDgCgHuzYsUNHjx6VxWJRfHy8t8MBGpTk5GRlZ2dL4vJfAPWDS4CBema323Xs2DF9//33evPNN5WXl6fw8HANGzbM26EBHmGz2bR48WKFhYU5vSQeMMH777+vN954QzabTeHh4erYsaP69++vyy+/vNKHgwC+bvfu3ZKKn24aHh6utWvX6j//+Y8OHjyowMBAtWvXTkOGDNFvf/tbBQbyZwnMUnL5b1xcnNq3b+/laACYgDMtUE8WLlyoxMTECl8/55xzdP/991f7hDDAV7322muy2WyaMGECl3/BWP/73/8UHByskJAQ2Ww2ffPNN/rmm2+0bt06zZo1i9yAXyq5yqFx48aaPXu2kpOTZbFYFBERodzcXO3evVu7d+/Wxo0b9eijjyo0NNTLEQP1IzMzU998840ksQgAQL2hAAjUk/DwcDVt2lSFhYU6ceKEJCkmJkaTJ09Wly5dvBwd4Bnbt2/X+vXr1bFjR40cOdLb4QD17pJLLlHPnj3Vq1cvNW7cWJJ09OhR/ec//9GKFSt04MABPfbYY5o7d66CgoK8HC3gXiUPSvjhhx/0/fff6/LLL9ctt9yiqKgo5eXlad26dVq2bJl27dqlRYsW6f/+7/+8HDFQPz799FMVFRUpODiYy+MB1BvuAQjUk5tvvlmvv/663nzzTa1cuVIPP/ywAgMD9dhjj2nOnDkqLCz0doiAW+Xn5+ull16SxWLRnXfeyc2tYaTJkyerf//+juKfJDVr1kxjx47VzJkzJRWvDiy5FAzwJ3a7XZJUVFSkbt26adq0aYqKipIkhYaGavTo0RoxYoSk4sshjx496rVYgfr06aefSir+kCgyMtLL0QAwBQVAwAtCQ0P1m9/8Rk8//bRatmypDRs2aO3atd4OC3Crt956S4cPH9Zvf/tbdevWzdvhAA3OJZdcoh49ekiStm7d6uVoAPcLCwtz7Fe2CnzUqFGSip8Y/O2339ZHWIBX7dq1y3F5QC8GIwAAF01JREFUPA//AFCfKAACXlT64R//+c9/vBwN4D6HDh3SmjVr1KhRI/3+979Xbm5ume3UqVOOtvn5+RW+Bpiia9eukqTDhw97ORLA/Zo1a+bYb9u2rdM2zZs3V3h4uKTi+6IB/q5k9V/z5s114YUXejcYAEbhHoCAlzVv3lyS9NNPP3k5EsB9fv31V8f9LidNmlRl25J7Pl1yySV68MEH6yM8AEA96NChg0vtLRaLhyIBGob8/HwlJSVJkoYOHSqrlfU4AOoPv3EALytZ9VH6MhkAgBn27NkjSWrVqpWXIwHcr/TqpoyMDKdtfv31V+Xk5EiSWrZsWR9hAV6zefNmx3zn8l8A9Y0VgIAHFRYWVvngg+PHjztu/N6zZ8/6CgvwuPPOO09r1qyp9Pi3337rWO23cOFCih/wS3a7vcoVTVu3btWuXbskSX379q2vsIB607p1a/Xo0UO7du3SmjVrNHDgwAptVq1aJUkKDg7W+eefX88RAvWr5PLfbt26qU2bNl6OBoBpKAACNWSz2Rz7JZ/cSVJ2dnaZY+Hh4QoMLE6tV155RVarVfHx8ercubNCQkIcr//qq6/0+uuv69ixYwoICNANN9xQT+8EcF1t5j/gT2qTA6+++qosFov69++vLl26OM4BWVlZ+u9//6sVK1ZIktq3b89KEDR4tT0PJCQk6M9//rN2796t5557TuPGjVNUVJTy8/P14YcfKjExUVLxQ0JKPy0baGjq+m+hX375xfGgG37nA/AGi91ut3s7CMAXVPb0uvKefPJJnXfeeZKkefPmOT7ps1gsCg8Pl8ViUXZ2tkpSLyIiQtOnT1e/fv08EzjgBrWZ/1VhBSB8jbvOAVLxH4slOnXqpAcffFAtWrRwc8SAe9XlPPDxxx/rpZdeUmFhoSwWiyIjI5WTk6PCwkJJ0qBBg3TfffdVedUE4G11/bfQihUr9Oabbyo4OFivv/6645wAAPWFZRqAB40ZM0bt2rXTt99+q0OHDun48eM6ffq0GjdurHbt2umiiy7SFVdcoaZNm3o7VACAm1111VVq0qSJ9uzZoyNHjujEiRMqKipSs2bN1LlzZw0YMEDx8fGsmoXf++1vf6vOnTtr1apV+u6773T8+HGFh4crNjZWV1xxhdNLgwF/U/KB0KWXXkrxD4BXsAIQAAAAAAAA8GM8BRgAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAANTIkCFDZLFYZLFYvB0K3OjRRx91/Fw3bNjglj5L+hsyZIhb+gMAAEDdBHo7AAAAUHPHjh3TvHnzJEkXXnihRo0a5dV4YIZHH31UktSxY0fdeuutXo0FAAAArqMACACADzl27Jgee+wxSVJCQgIFQNSLkjk3ePBgCoAAAAA+iAIgAACAwR599FHHCj93sdvtbu0PAAAAdcM9AAEAAAAAAAA/RgEQAAAAAAAA8GMUAAEA8AE//vijLBaLzj33XMfXli1b5njaaumtsie5fv/997rvvvt0wQUXKCoqSqGhoWrbtq1GjBihpUuXqrCw0C2xvvrqqwoMDJTFYlGrVq2UkpJSoU1eXp5eeeUVDR8+XO3atVNoaKiaNGmiXr16adq0aUpLS6tyDGdPrt22bZsmTJigTp06KTQ0VM2bN9fQoUO1dOlSFRUV1fl9LV261DHm0qVLJUkpKSmaOHGiOnfurLCwMEVHR2vo0KF67bXXajzmsWPHNHv2bA0aNEitWrVScHCwWrZsqYEDB+rvf/+7jh07Vm0fNptNzz77rIYOHeroo1GjRurYsaN+85vfaNKkSXr33Xd16tSpCq+t6inA5Z/6/NlnnzmdcyXfj/Kvq8lTgN9//32NHTtWHTt2VHh4uBo3bqzu3btrypQp2rZtW5WvLckLi8XiuDfhsWPH9Le//U29e/dW06ZNFRERoR49euiPf/yjjhw5Um08AAAAfskOAAAavP3799sl1Whbv359hdc//vjj9sDAwCpf17NnT/vevXsrjWHw4MGOtpV55JFHHG06d+5s//777yu02bBhg71NmzZVxhIQEGD/29/+VqNx1q9fb589e7Y9ICCg0v5GjRplP336dNXf5GosWbLE0d+SJUvsc+fOrXLM/v37248ePVpln2vXrrU3a9asyu9Fs2bN7GvXrq20j5SUFHvr1q1rNDe2bt1a7feytJrOuSVLljh93eDBgyuN+8iRI/ZBgwZV2a/FYrHfeeed9oKCAqd9lM6LhIQE+7Zt2+zt27evtL9WrVrZv/3220pjAgAA8Fc8BAQAAB/QsmVLvf/++zpy5IjuuOMOSdLQoUM1bdq0Cm179epV5r8ffvhhPfHEE5KKV2Zdf/31+u1vf6tGjRppz549WrJkiQ4cOKCdO3dqwIAB+uqrrxQTE+NSfIWFhZo6daoWLlwoSerTp48+/PBDtWzZsky7devW6dprr9Xp06dltVp11VVX6fLLL1ebNm2Ul5enlJQUvf766zp+/Lj+8pe/SJL+/Oc/Vzn2woUL9dZbb6lFixa69dZbdf7558tqtWrz5s1atGiR8vPztWrVKj399NOOPusqMTFR77//voKDgzVp0iQNGDBAAQEB2rZtmxYvXqzjx49r8+bNuvrqq5WUlKTAwIr/5Pr3v/+ta6+9VgUFBZKkSy65RH/4wx8UExOjn376Se+8846Sk5N19OhRXXvttfrggw905ZVXlukjJydHo0aN0uHDhyUVf99Hjx6tNm3aKCIiQllZWUpNTdX69ev19ddfu/w+33//fUnS6NGjJUk9e/Z0zKXSevfu7VK/J0+eVHx8vHbv3i1JatGihSZMmKALLrhAp06d0saNG7V8+XKdPn1aL774omw2m954440q+0xPT9c111yjX375Rddff72uuOIKNWvWTD/++KNeffVV7d27Vz///LPGjh2rHTt2KCgoyKWYAQAAfJq3K5AAAKDmyq94qk5ycrLdarXaJdlDQ0Pt69atq9Dm5MmT9quuusrR79VXX+20r8pWAObk5NhHjhzpOHbFFVfYT5w4UeH1hw4dcqx2a9mypf2LL75wOk5GRoa9V69ejpWAqampFdqUXrWmMyvNjh07VqHdhg0bHKv0oqOj7fn5+U7HrInSKwBL3oOz1WTp6en2Ll26ONr9/e9/r9DmxIkT9latWjnaPProo/aioqIybYqKiuyzZs0qs3rNZrOVafPuu+86jt93331Vxr9z5077kSNHKny9qhWAJUp/n2uiuvZ33nmno02fPn3sv/zyS4U2KSkp9qioKEe7FStWVGhTfmVso0aN7J999lmFdidOnLBfeOGFjnb//Oc/a/Q+AAAA/AX3AAQAwI89/fTTjnvR/fWvf9VVV11VoU1ERITeeecdtW7dWlLxKr2arhY7evSoLrvsMq1Zs0aSdNNNN2nt2rWKjIys0PYf//iHjh49Kkl677331K9fP6d9tmnTRu++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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# these lines are comment out since we have run the experiments.\n", + "# df = pd.DataFrame(block_out_data)\n", + "# df.to_csv(\"./tutorial_data/block_out_df.csv\")\n", + "df = pd.read_csv(\"./tutorial_data/block_out_df.csv\")\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"token position\"] = df[\"pos\"].astype(int)\n", + "df[\"IIA\"] = df[\"acc\"].astype(float)\n", + "df[\"token position\"] = df[\"token position\"].astype(\"category\")\n", + "\n", + "# Use format string to keep two decimal places\n", + "df[\"IIA_label\"] = df[\"IIA\"].apply(lambda x: f\"{x:.2f}\")\n", + "\n", + "block_out_plot = (\n", + " ggplot(df, aes(x=\"token position\", y=\"layer\"))\n", + " + geom_tile(aes(fill=\"IIA\"))\n", + " + scale_fill_cmap(\"Purples\", limits=[0, 1])\n", + " + geom_text(aes(label=\"IIA_label\"), color=\"black\", size=10)\n", + " + ggtitle(\"Main Residual Streams\")\n", + ")\n", + "ggsave(block_out_plot, filename=\"./tutorial_data/block_out_plot.pdf\", dpi=200)\n", + "block_out_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "670a1917", + "metadata": {}, + "outputs": [], + "source": [ + "mlp_activation_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " positions=[13, 14, 15, 16, 17],\n", + " layers=[i for i in range(12)],\n", + " stream=\"mlp_activation\",\n", + " aligning_variable=\"position\",\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "fa8f8add", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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dnQ34CuuuMLY3r9/v8NZgiWZ7U09Dh48aHcZqe2MwJ49e7q8vPzQoUPatWuX8fz111+3u0GFM7YzM4tLdHS03fOffvrJ42Nt28bExPgspktlsVjUtGlTvfbaa9q9e7euv/56Y9+2bdvsbl4DAAAAAPBPFABLub59+9o9t1gsBf4MuebNm6e0tDTj+YoVK+wuQXX3mDZtmnHsli1b9Msvv9j1365dO7vnX3755SXHnH8NupycnEvu05lmzZopLi7OeJ5X9Pvll1/0888/G3/u7vLfw4cP2z3Pv5agI8ePH9evv/7qUZy2PxNf/zyaNm1qdyMNZzd8yW/Lli12MwBbtmzp07h8JTw8XOPHj7f7MwqAAAAAAOD/KACWcv369VPjxo2NR58+ffTPf/6zuMMqkWwv/42Li/OoMGWra9euCgsLc9iflFtAa9CggfF8/Pjxbu92607+teRSUlIuqT93bIt7n332mTIzM+1m/1WvXl033HCDyz7y38DDkzv6Tp061eNinu3PxNc/j9DQUHXq1Ml4PnfuXI/Wc3zvvfeM7TJlyqhz584+jcuXYmNj7Z5f6jkKAAAAACj5KACWcnXr1tX27duNR0JCQnGHVCLt3r1b69evN57fc889XvcRHh6uLl26GM8//vhju+JJQECAHn/8ceP5zz//rBdffLGQEeeqUKGC3aXH+Wcd+pptAfDUqVNaunSp3XqHvXv3drqGX546derYPV+6dKnL9j///LPeeustj2OsW7eusb17926dO3fO42M98fDDDxvbx44dc/s7/P777zV9+nTjedeuXVWrVi2fxuTOgQMHPG5rO5tTsv95AgAAAAD8EwVAmEL+2XqFKQDmP+7o0aP66quv7PY/8sgjatq0qfH8rbfe0pAhQ1zOVPvxxx91zz336I8//nC4v0WLFsb2u+++a9zspSjUr19frVu3Np4//fTTdnHZrhPoTI0aNXTllVcaz0eMGOH08t7vvvtON9xwgzIyMhQQ4NlfR9dee60sFoskKS0tTS+++KJHsww91aNHD7ufwfjx4/Xaa685nKG4fv16de/e3dgXHBys119/3WexeKpjx47q2bOnli9fruzsbKftDh06pIceesh4XqNGDV177bWXI0QAAAAAQDEKdN8EZnfo0KECN0dwp3bt2lq1alXRBOSlnJwczZ4923h+9dVXq1GjRoXq67bbblO5cuWMm67MnDlT3bp1M/YHBQXp008/Vdu2bXXs2DFJuZe3fvrpp+rSpYuuueYaRUZGKiUlRbt27dLq1auNWX1vv/22wzH79++vFStWSMq90USDBg1Up04dVaxY0SiE1axZs0AxsrDi4+OVmJgoSdq7d6/x53FxcWrWrJlHfTzzzDPGWpRHjx5Vs2bN1KtXL1133XUKDw/X4cOHtWLFCq1Zs0ZS7u8kLi5O8+fPd9t3rVq1dNNNNxk/k3feeUcTJ05UvXr1FBwcbLR75JFH9Mgjj3j2om0EBARoxowZatWqlU6ePClJeumll/TJJ5/ozjvvVN26dXX69GmtXLlSy5Ytsyu4vfXWW3bFz8slJydHX375pb788ktVqVJFbdq0UdOmTVWtWjWFhobq77//1ubNm7Vw4UK7dTDffvttjwuvAAAAAIDSiwIg3MrKyrIrBHl6TEnxzTff6ODBg8bz3r17F7qvkJAQde/eXXPmzJEkLVmyRMnJyapSpYrRJiYmRomJibrtttuMu+GeOHFCs2bN0qxZs7we895779VXX31ljGm1WvXHH3/Yzcw7depUoV9Tfnfffbcef/xxnT9/3u7P3d38w1afPn20atUq49LYzMxMzZ071+5y4jwNGjTQggULvJo5N23aNHXs2NH4GWRkZGjnzp12bf766y+P+8svNjZW3333nW655RYdPXpUUu7NMl577TWH7S0Wi95++20NHz680GP6SnJyshYuXKiFCxc6bWOxWPTGG2+oT58+lzEyAAAAAEBxYeoH/J6vLv91dPz58+ftbpKRJyoqSj/99JPefffdAmvi5Xf11VdrzJgxqlmzptM2s2fP1uLFi9W7d2/FxMQoIiLCmP3na5UrV9Ytt9xS4M/vu+8+r/r58MMPNW7cOFWuXNnh/oiICD388MPatm2b1zNMGzRooB9//FGjR4/WDTfcoOrVqyskJMSrPty55ppr9Ntvv+mxxx5TuXLlHLYJCAhQx44dtXHjRv3rX//y6fjemDJlivr16+d27cGAgAB17txZiYmJeu655y5TdAAAAACA4max5r9lJwCf+/nnn7V9+3YdO3ZMGRkZKl++vOrXr6+mTZu6LPz5g4yMDK1bt047duzQ2bNnVaVKFdWpU0cdOnSwu6tySXbu3DmtXbtW+/btU3JyssLDw1WjRg116NBB1apVK+7w7Bw4cEA7duzQ/v37derUKVmtVpUvX15RUVG69tpr7WarAgAAAADMgQIgAAAAAAAA4Me4BBgAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD8WWNwBXA5nz57VL7/8oj179mjv3r3as2ePTp8+LUl64403dPXVVzs8Ljs7W9u3b9fWrVv122+/6ciRI8rIyFBERIQaNGig66+/Xh06dFBAAHVUAAAAAAAAlEymKABu3LhREyZM8Pq4adOmacWKFcbzMmXKKDg4WKdPn9a2bdu0bds2/e9//9PIkSMVGhrqy5ABAAAAAAAAnzBFAVCSIiMjFRUVpejoaNWsWVNjx451e0xWVpYiIyN1ww03qHXr1mrQoIECAgKUkpKiRYsW6bPPPtPPP/+syZMn61//+tdleBUAAAAAAACAdyxWq9Va3EEUtezsbJUpU8Z4fvbsWd13332SXF8CnJSUpPr16ysoKMjh/rlz5+rTTz+VJH300UeqWrWqjyMHAAAAAAAALo0pFq+zLf55o2HDhk6Lf5J0ww03GNt79uwp1BgAAAAAAABAUTLNJcBFoXz58sZ2dnb2JfeXnJx8yX2g+IWEhCggIEA5OTnKyMgo7nCAy44cgNmRAzA7cgBmRw74lypVqhR3CIBPUAC8BL/88ouxXbdu3WKMBCVJaGioypQpo+zsbN7wYUrkAMyOHIDZkQMwO3IAQElkikuAi0J2drY++eQTSbmXCtepU6eYIwIAAAAAAAAKogBYSLNnz9aePXsUGBiohx56qLjDAQAAAAAAAByiAFgI33zzjRYsWCBJ6tevn2JiYoo5IgAAAAAAAMAx1gD00tq1azVlyhRJUq9evdS9e3ePj50zZ47mzp3rdP+dd96pfv36XXKMKF4BAQHG/0dGRhZzNMDlRw7A7MgBmB05ALMjBwCURBQAvbBhwwaNHTtWOTk5uv32270u1qWmpurYsWNO96elpalMmTKXGiZKCIvFwu8TpkYOwOzIAZgdOQCzIwcAlCQUAD30ww8/6J133lF2drZuvPHGQq37Fx4ermrVqjndHxYWpuzs7EsJEyVAQECALBaLrFarcnJyijsc4LIjB2B25ADMjhyA2ZED/oUiLvwFBUAPbN26VW+99ZaysrLUoUMHDR06VBaLxet+4uPjFR8f73R/cnKyTp48eSmhogSIjIxUmTJllJOTw+8TpkQOwOzIAZgdOQCzIwf8S5UqVYo7BMAnuAmIGz/99JPefPNNnT9/Xq1bt9bw4cONNR0AAAAAAACAks40MwBTUlKM7bS0NGM7NTXVbl9YWJgCA3N/LL/99ptef/11nTt3Ti1atNBTTz3F9F8AAAAAAACUKqYpADq79PbNN9+0e/7GG2/o6quvlpR7196MjAxJucXAgQMHOu2/Z8+e6tmzp4+iBQAAAAAAAHzDNAXAwrBarcb2mTNnXLZNT08v6nAAAAAAAAAAr5mmALho0SKvj8k/OxAAAAAAAAAobbibBQAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfowCIAAAAAAAAODHKAACAAAAAAAAfsxitVqtxR0EciUnJ/usr4jIMJ/1BQAAAABAaXH2ZJrP+qpSpYrP+gKKEzMAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARCmc+DAH3rmqWfV+Momqly+qmpWra02rdpp7OhxSktL89k4y5ct1929eiuqbowqhEUqqm6M7u7VW8uXLfe4j6ysLH3w/oe6ocNNqlO9riIjKuuK2Ks0dPAw7fh1h89ihbmQAzA7cgBmRw7AzDj/AZiVxWq1Wos7CORKTk72WV8RkWE+68ufLF38lQb2G6SUlBSH+2NiY/TFos8VFR1V6DFycnI05JGhmjk9wWmbAYP6a/K0SQoIcF6DT05OVo8ud2jL5i0O9wcHB2vcxLEaMKh/oWOF+ZADMDtyAGZHDsDMOP/N4+xJ3xVzq1Sp4rO+gOLEDECYxvZt29Xnvr5KSUlRRESEXnltlFau/U7LVizVwAcGSJJ279qtnt166cyZM4Ue5+WRo4w3/GuaNFbCxzO19vs1Svh4pq5p0liSNOOjmRr14itO+8jOztY9ve413vC79+yuhUu+0JrE1RozfrSqVauqzMxMDR08zKtvEWFu5ADMjhyA2ZEDMDPOfwBmxwzAEoQZgEXrxutv1vp16xUYGKhvVq5Qq+ta2u0fO3qcXnh2pCTphRef18iXX/B6jN27dqvp/zVXVlaWmjZvqv+tXKHQ0FBjf1pamm7q1FlbN29VYGCgtv+y1eE3jAkzEvTIg49Kkh4e/JDGTxpnt3/vnr1q3aKtUlJSFBUdpe2/5PYHuEIOwOzIAZgdOQAz4/w3F2YAAgUxAxCm8MOmzVq/br0kqf/AfgXe8CVp+JOPK65RnCRpyqSpOn/+vNfjTJ44RVlZWZKksePH2L3hS1JYWJjGjh8jKXdNj0kTJjvsZ/zYiZKkSpUq6c233yiwPyo6Sk89M0JS7geAhV8u8jpWmAs5ALMjB2B25ADMjPMfACgAwiQWL1xsbPfp18dhm4CAAN0Xf68k6dSpU1q9crVXY1itVi1etESS1DCuoVq2auGwXctWLRTbMDY3rkVLlH8S7u5du7Xzt52SpF533aGwMMezOfv0ize2F/GmDzfIAZgdOQCzIwdgZpz/AEABECaRuP57SVJ4eLiaNmvitF279u2M7e8TN3g1xv7f9+vI4SMX+mnrsm3e/sOHDuvA/gP5Yk00ttu66Kd69eqKiY0pVKwwH3IAZkcOwOzIAZgZ5z8AUACESSTtTJIkRUU3cLk+RsO4WGN754VjPPXbjp3Gdt63es7Y7s/7hs9RPw3d9JO3/+CfB5WamupxrDAfcgBmRw7A7MgBmBnnPwBQAIQJZGRkGDdYqVWrlsu2kZGRCg8Pl5T7RuqNQ4cOGdu1arsep3ad2sb2wYOH7PYdOnTY435qXejHarXqUL5+gDzkAMyOHIDZkQMwM85/AMhFARB+78yZM8Z2eESE2/bh4bnrbKSmni30OBEXPjg4HcNmLY+zZ+3HOWvbj5t47fvhWz84Rg7A7MgBmB05ADPj/AeAXBQA4fcyMjKN7aCgsm7bBwUHS5LS0zO8GifTbpwgl22DL4whSRn5xsnIuPjcm37S09M9ihPmQw7A7MgBmB05ADPj/AeAXBQA4fdCQi6+MZ47d95t+3OZuW/eoaEhXo0TbDfOOZdtMzMvfkAIyTdOSMjF5970Exoa6lGcMB9yAGZHDsDsyAGYGec/AOSiAAi/V65cOWM79az7qfypqWmSpPBw95cIOBvnrJtFeFPT0ozt/FP7I2z7cROvfT+uLzWAeZEDMDtyAGZHDsDMOP8BIBcFQPi9kJAQVa5cWZL94ryOnDx50riDlu3ivJ6wXVTY3SK8tosK1863uG+tWjU97ufQhX4sFovbRYJhXuQAzI4cgNmRAzAzzn8AyEUBEKYQ1yhOkrR3zz5lZWU5bZe0c9fFY+IaejVGoyvijO1dSbtctLTfnxebo36S3PSTt792ndrGHcsAR8gBmB05ALMjB2BmnP8AQAEQJtG6zXWSpNTUVG3dss1pu7Vr1hrb17Vu5dUY9erXU42aNS70s85l23Vr10uSataqqbr16uaLtfXFdi76+euvv7R71+5CxQrzIQdgduQAzI4cgJlx/gMABUCYRNfuXY3t2QmzHbbJycnR3DmfSJIqVqyoDh07eDWGxWJR125dJElJO5O0ccMmh+02btikpJ1JuXF16yKLxWK3PyY2xvgm8PP5C5Rms7aHrdkJc4ztbj26eRUrzIccgNmRAzA7cgBmxvkPABQAYRLXtmiuNm3bSJJmTk/Qhu83FmgzfuwE7fxtpyRpyLBHVbZsWbv9a1atUWhguEIDw/XgwIccjjP0sSEqU6aMJOnJ4SOUnp5utz89PV1PDh8hSQoMDNTQx4Y47Gf4k49Jkk6cOKHnnx1ZYP++vfs0+u0xkqSo6Ch1500fbpADMDtyAGZHDsDMOP8BgAIgTGT0uHcUGhqqrKwsdb21m959611t3LBJq1eu1tDBw/TChTfXmNgYPX7hTddbMbExemLEcEnS1s1b1an9DZo/7zNt2bxV8+d9pk7tb9DWzVslSU+MGK7omGiH/cT3jdd1rXMvVXh/6vu69+779c3yb/TDps2aNuU9dWzXSSkpKQoICNCYce8qMDCwUPHCXMgBmB05ALMjB2BmnP8AzM5itVqtxR0EciUnJ/usr4jIMJ/15U+WLv5KA/sNUkpKisP9MbEx+mLR54qKjiqwb82qNep8462SpPi+9+uD6f9x2EdOTo4efXiIEmbMchpH/4H9NOW9yQoIcF6DT05OVo8ud2jL5i0O9wcHB2vcxLEaMKi/0z6A/MgBmB05ALMjB2BmnP/mcfak40unC6NKlSo+6wsoTswAhKnc3vU2bdq2UcMeH6qY2BiFhYWpYsWKatq8qV7/92vasDnR4Ru+NwICAvTeB9P0xaLP1aVbF9WoWUNBQUGqUbOGunTroi8XL9C0/0x1+YYv5b7RrFr3nSZMHq/WbVqrcuXKCgkJUf0G9TXwgQFK3LSON3x4jRyA2ZEDMDtyAGbG+Q/AzJgBWIIwAxAAAAAAgEvDDECgIGYAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxwKLOwBcZLFYFBBATRYAAAAAgMIqU6ZMcYcAlDgWq9VqLe4gkCstLU1hYWE+6SsjO80n/QAAAAAAUJqElPHNv6sBf0IBsAT5+++/fTYDMLR8sE/6AQAAAACgNElPyfRZX5GRkT7rCyhOXAJcglitVmVnZxd3GAAAAAAAlFr8uxooiAXnAAAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARAAAAAAAADwYxQAAQAAAAAAAD9GARCmc+DAH3rmqWfV+Momqly+qmpWra02rdpp7OhxSktL89k4y5ct1929eiuqbowqhEUqqm6M7u7VW8uXLfe4j6ysLH3w/oe6ocNNqlO9riIjKuuK2Ks0dPAw7fh1h89ihbmQAzA7cgBmRw7AzDj/AZiVxWq1Wos7CORKTk72WV8RkWE+68ufLF38lQb2G6SUlBSH+2NiY/TFos8VFR1V6DFycnI05JGhmjk9wWmbAYP6a/K0SQoIcF6DT05OVo8ud2jL5i0O9wcHB2vcxLEaMKh/oWOF+ZADMDtyAGZHDsDMOP/N4+xJ3xVzq1Sp4rO+gOLEDECYxvZt29Xnvr5KSUlRRESEXnltlFau/U7LVizVwAcGSJJ279qtnt166cyZM4Ue5+WRo4w3/GuaNFbCxzO19vs1Svh4pq5p0liSNOOjmRr14itO+8jOztY9ve413vC79+yuhUu+0JrE1RozfrSqVauqzMxMDR08zKtvEWFu5ADMjhyA2ZEDMDPOfwBmxwzAEoQZgEXrxutv1vp16xUYGKhvVq5Qq+ta2u0fO3qcXnh2pCTphRef18iXX/B6jN27dqvp/zVXVlaWmjZvqv+tXKHQ0FBjf1pamm7q1FlbN29VYGCgtv+y1eE3jAkzEvTIg49Kkh4e/JDGTxpnt3/vnr1q3aKtUlJSFBUdpe2/5PYHuEIOwOzIAZgdOQAz4/w3F2YAAgUxAxCm8MOmzVq/br0kqf/AfgXe8CVp+JOPK65RnCRpyqSpOn/+vNfjTJ44RVlZWZKksePH2L3hS1JYWJjGjh8jKXdNj0kTJjvsZ/zYiZKkSpUq6c233yiwPyo6Sk89M0JS7geAhV8u8jpWmAs5ALMjB2B25ADMjPMfACgAwiQWL1xsbPfp18dhm4CAAN0Xf68k6dSpU1q9crVXY1itVi1etESS1DCuoVq2auGwXctWLRTbMDY3rkVLlH8S7u5du7Xzt52SpF533aGwMMezOfv0ize2F/GmDzfIAZgdOQCzIwdgZpz/AEABECaRuP57SVJ4eLiaNmvitF279u2M7e8TN3g1xv7f9+vI4SMX+mnrsm3e/sOHDuvA/gP5Yk00ttu66Kd69eqKiY0pVKwwH3IAZkcOwOzIAZgZ5z8AUACESSTtTJIkRUU3cLk+RsO4WGN754VjPPXbjp3Gdt63es7Y7s/7hs9RPw3d9JO3/+CfB5WamupxrDAfcgBmRw7A7MgBmBnnPwBQAIQJZGRkGDdYqVWrlsu2kZGRCg8Pl5T7RuqNQ4cOGdu1arsep3ad2sb2wYOH7PYdOnTY435qXejHarXqUL5+gDzkAMyOHIDZkQMwM85/AMhFARB+78yZM8Z2eESE2/bh4bnrbKSmni30OBEXPjg4HcNmLY+zZ+3HOWvbj5t47fvhWz84Rg7A7MgBmB05ADPj/AeAXBQA4fcyMjKN7aCgsm7bBwUHS5LS0zO8GifTbpwgl22DL4whSRn5xsnIuPjcm37S09M9ihPmQw7A7MgBmB05ADPj/AeAXBQA4fdCQi6+MZ47d95t+3OZuW/eoaEhXo0TbDfOOZdtMzMvfkAIyTdOSMjF5970Exoa6lGcMB9yAGZHDsDsyAGYGec/AOSiAAi/V65cOWM79az7qfypqWmSpPBw95cIOBvnrJtFeFPT0ozt/FP7I2z7cROvfT+uLzWAeZEDMDtyAGZHDsDMOP8BIBcFQPi9kJAQVa5cWZL94ryOnDx50riDlu3ivJ6wXVTY3SK8tosK1863uG+tWjU97ufQhX4sFovbRYJhXuQAzI4cgNmRAzAzzn8AyEUBEKYQ1yhOkrR3zz5lZWU5bZe0c9fFY+IaejVGoyvijO1dSbtctLTfnxebo36S3PSTt792ndrGHcsAR8gBmB05ALMjB2BmnP8AQAEQJtG6zXWSpNTUVG3dss1pu7Vr1hrb17Vu5dUY9erXU42aNS70s85l23Vr10uSataqqbr16uaLtfXFdi76+euvv7R71+5CxQrzIQdgduQAzI4cgJlx/gMABUCYRNfuXY3t2QmzHbbJycnR3DmfSJIqVqyoDh07eDWGxWJR125dJElJO5O0ccMmh+02btikpJ1JuXF16yKLxWK3PyY2xvgm8PP5C5Rms7aHrdkJc4ztbj26eRUrzIccgNmRAzA7cgBmxvkPABQAYRLXtmiuNm3bSJJmTk/Qhu83FmgzfuwE7fxtpyRpyLBHVbZsWbv9a1atUWhguEIDw/XgwIccjjP0sSEqU6aMJOnJ4SOUnp5utz89PV1PDh8hSQoMDNTQx4Y47Gf4k49Jkk6cOKHnnx1ZYP++vfs0+u0xkqSo6Ch1500fbpADMDtyAGZHDsDMOP8BgAIgTGT0uHcUGhqqrKwsdb21m959611t3LBJq1eu1tDBw/TChTfXmNgYPX7hTddbMbExemLEcEnS1s1b1an9DZo/7zNt2bxV8+d9pk7tb9DWzVslSU+MGK7omGiH/cT3jdd1rXMvVXh/6vu69+779c3yb/TDps2aNuU9dWzXSSkpKQoICNCYce8qMDCwUPHCXMgBmB05ALMjB2BmnP8AzM5itVqtxR0EciUnJ/usr4jIMJ/15U+WLv5KA/sNUkpKisP9MbEx+mLR54qKjiqwb82qNep8462SpPi+9+uD6f9x2EdOTo4efXiIEmbMchpH/4H9NOW9yQoIcF6DT05OVo8ud2jL5i0O9wcHB2vcxLEaMKi/0z6A/MgBmB05ALMjB2BmnP/mcfak40unC6NKlSo+6wsoTswAhKnc3vU2bdq2UcMeH6qY2BiFhYWpYsWKatq8qV7/92vasDnR4Ru+NwICAvTeB9P0xaLP1aVbF9WoWUNBQUGqUbOGunTroi8XL9C0/0x1+YYv5b7RrFr3nSZMHq/WbVqrcuXKCgkJUf0G9TXwgQFK3LSON3x4jRyA2ZEDMDtyAGbG+Q/AzJgBWIIwAxAAAAAAgEvDDECgIGYAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH6MAiAAAAAAAADgxygAAgAAAAAAAH4ssLgDAAAAAAD4TrY1u7hDAACUMMwABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EABAAAAAAAAPwYBUAAAAAAAADAj1EAhOkcOPCHnnnqWTW+sokql6+qmlVrq02rdho7epzS0tJ8Ns7yZct1d6/eiqobowphkYqqG6O7e/XW8mXLPe4jKytLH7z/oW7ocJPqVK+ryIjKuiL2Kg0dPEw7ft3hs1hhLuQAzI4cgNmRAzC7Pw78oef+9byaXNVM1SpUV51q/1T7Vh00fswEn+bAiq9XqPed9ym2XpwqhVdRbL049b7zPq34eoXbY48ePaaZHyVoQJ+BavZ/1+ofFWsoMqyyourEqMftPTX9gxlKT0/3WawA/J/FarVaizsI5EpOTvZZXxGRYT7ry58sXfyVBvYbpJSUFIf7Y2Jj9MWizxUVHVXoMXJycjTkkaGaOT3BaZsBg/pr8rRJCghwXoNPTk5Wjy53aMvmLQ73BwcHa9zEsRowqH+hY4X5kAMwO3IAZkcOmEO2Nbu4QyixvlqyTA/0e9BFDkTrs4XzLzkHhj3ymBJmzHLapv/Afpo4bYLDHJjx4UwNH/qEsrNd/x6jY6I059PZuur/rip0rP4q/VSmz/qqUqWKz/oCihMzAD1ktVq1bt06vfzyy4qPj9cdd9yhgQMHauzYsdq7d29xhwcPbN+2XX3u66uUlBRFRETolddGaeXa77RsxVINfGCAJGn3rt3q2a2Xzpw5U+hxXh45yvjAe02Txkr4eKbWfr9GCR/P1DVNGkuSZnw0U6NefMVpH9nZ2bqn173GB97uPbtr4ZIvtCZxtcaMH61q1aoqMzNTQwcP8+pbdJgbOQCzIwdgduQAzO7HbT+q3339jRx4+bWX9O2ab7RkxWL1v1BI3r1rj+7sftcl5cArL75qFP8aX9NYM+ZM1+rElZoxZ7oaX5ObAzOnJ+jVl15zePyxY8eUnZ2toKAgdevZTROmjNfX3y3T+k1rNfvTWbrhpk6SpD2796rLLd106OChQscKwDyYAeiBrKwsjR49WomJiZKkgIAAhYWFKTU1VVarVWXKlNHgwYN18803X9I4zAAsWjdef7PWr1uvwMBAfbNyhVpd19Ju/9jR4/TCsyMlSS+8+LxGvvyC12Ps3rVbTf+vubKystS0eVP9b+UKhYaGGvvT0tJ0U6fO2rp5qwIDA7X9l60Ov11MmJGgRx58VJL08OCHNH7SOLv9e/fsVesWbZWSkqKo6Cht/yW3P8AVcgBmRw7A7MgB82AGoGM3d7xFiesSFRgYqOXfLVPLfDkwfswEjXz2RUnScy8+qxdeet7rMXbv2q1rG7fMzYFmTbR85dcFcuCWTrdq65ZtCgwM1JaffyiQA5PHT9axY8c17IlhqlrV8eyz5/71vCaNnyxJ6tMvXtM+nOp1rP6MGYBAQcwA9MCsWbOUmJiogIAADRgwQJ9++qnmzp2rhIQE3XzzzcrOztbUqVO1c+fO4g4VTvywabPWr1svKXe6ff4PvJI0/MnHFdcoTpI0ZdJUnT9/3utxJk+coqysLEnS2PFj7N7sJSksLExjx4+RlFtYnjRhssN+xo+dKEmqVKmS3nz7jQL7o6Kj9NQzIyTlfgBe+OUir2OFuZADMDtyAGZHDsDsNm/arMR1uRM6+g7oW6D4J0mPPTFMDRs1lCRNm/ReoXJgysSpRg6MHv+uwxwYPf5dSbk5MHnClAJ9DB0+VK+++YrT4p8kvfLGKFWvUV2StOjLxcrJyfE6VgDmQgHQjdOnT2vp0qWSpG7duqlnz54KCQmRJFWsWFFDhw7VVVddpZycHM2cObMYI4UrixcuNrb79OvjsE1AQIDui79XknTq1CmtXrnaqzGsVqsWL1oiSWoY11AtW7Vw2K5lqxaKbRibG9eiJco/CXf3rt3a+VtuMbnXXXcoLMzxbM4+/eKN7UV86IUb5ADMjhyA2ZEDMLsli5Ya23363e+wTf4cWLNqjVdjWK1WLV38lSQpNi5WLZzkQItWLRTTMEZS7rqchbkoLygoSK1at5KU+2/Wv/8+4XUfAMyFAqAbP/74o/HNT8+ePR226dGjhyRpx44d+uuvvy5XaPBC4vrvJUnh4eFq2qyJ03bt2rcztr9P3ODVGPt/368jh49c6Kety7Z5+w8fOqwD+w/kizXR2G7rop/q1asrJjamULHCfMgBmB05ALMjB2B2tjnQxEUOtG3Xxti+lBxo2851DuTtd5QDnjqXefEy1zJl+Kc9ANf4W8KN48ePS8p9o4iMjHTYpnbt2sb29u3bL0dY8FLSziRJUlR0A5frwzSMizW2d144xlO/7bh4CXjet9rO2O7P+4bbUT8N3fSTt//gnweVmprqcawwH3IAZkcOwOzIAZhdXg40iHKdA7E2OZC0c5dXY9ieyw0vzPBzxnZ/kpe5Jknnz5/Xxg2bJEnV/lFNlSpV8roPAOZCAdBDrtZUsN33xx9/XI5w4IWMjAzjBiu1atVy2TYyMlLh4eGScj9IeuPQoYt336pV2/U4tetcLBofzHfXrkOHDnvcT60L/VitVu7+BafIAZgdOQCzIwdgdhkZGfo7+W9JUq3aNV22tc2BQ97mwMGL525ND89dSTr4p/fn7vQPZhivqWevHl4fD8B8KAC6Ua1aNUlSenq6MRswP9ui34kTrL1Q0pw5c8bYDo+IcNs+PDx3nZnU1LOFHifiwocGp2PYrGVz9qz9OGdt+3ETr30/fOsNx8gBmB05ALMjB2B2Z85cPMfCI1yfm5IUdiEHvD2nbM/lCDfj5OWZJK9nr/6+73e9+tJrF8aJMG6IAwCuUAB04+qrrzamiM+fP7/AfqvVqs8//9x4np6eftlig2cyMi6ujREUVNZt+6DgYElSenqGV+Nk2o0T5LJt8IUxJCkj3zgZGRefe9MP5x6cIQdgduQAzI4cgNll2p5TZV2fU9LF8yojw7tzyvbcLevm3A0q5Lmblpam++6K1+nTpyXl3mm4Rs0aXsUJwJwoALpRsWJF3XrrrZKkr7/+WjNmzNDx48eVlZWlAwcO6N///rd2795tFAktFktxhgsHQkIuvrmeO3febfu8xXRDQ0O8GifYbpxzLttm2izYG5JvnLy7THvbT2hoqEdxwnzIAZgdOQCzIwdgdsG259R51+eUdPG8Cgnx7pyyPXfPuzl3zxXi3M3KylKf3n31808/S5IeeHiQ4p3c0RgA8nO++ikM/fv319GjR7Vp0yZ98cUX+uKLL+z233LLLdqzZ4/27NljrBfhyJw5czR37lyn+++8807169fPJzGfV6b7RiZRrlw5Yzv1rPtLWVJT0yRJ4eHuL5FxNs5ZN9P4U9PSjO38l7ZE2PZz9qzdBwnX/bi/nAHmRA7A7MgBmB05ALMrV+7iOZbqwWW9aRdywNtzyvZcdnf5cF6eSXL5b8g8VqtVDw98RMuXrZAk3XHXHRo7cYxX8ZmJsxt4AmZGAdADZcuW1QsvvKDExEStXr1af/zxh7Kzs1WrVi3dfPPNat26tQYNGiTJ9cLKqampOnbsmNP9aWlpKlOmjE9iPp/tk278QkhIiCpXrqy///7bbnFqR06ePGmswWG7OLUnbH/37hahtl1Uu3a+BYJr1bq4MPGhg4dUpUoVp/3kLUxssVjcLpIN8yIHYHbkAMyOHIDZhYSEqFLlSjrx9wm7G3U4YpsDtbzNAZsbjBx2kwO2NxipXcf9ufvEsCf130/mSZJuvuUmfZTwgQICuKDPGV/9uxrwJxQAPWSxWNSmTRu1adOmwL6UlBTjBiENGzZ02kd4eLhxUxFHwsLClJ1N5a4oxDWK0/p167V3zz5lZWUZl2znl7Rz18Vj4pz/Lh1pdEWcsb0raZeLlvb74xrF2e2z7ScpaZcaX9PYaT9JF/qpXae2R98cwrzIAZgdOQCzIwdgdnGN4pS4LlH79rrOgV02OdAwLtbrMfIkJe122dZ2f0M3ufbicy/pw/c/kiS1addGH8+bo7Jl3a/naWa+/Hc1xUT4CwqAPrBmzRpJudOMr7nmGqft4uPjFR8f73R/cnKyTp486ZOYIiLD3DcykdZtrtP6deuVmpqqrVu2qUXLax22W7tmrbF9XetWXo1Rr3491ahZQ0cOH9HaNetctl23dr0kqWatmqpbr26+WFtfbLdmne6+5y6Hffz111/avWt3oWKF+ZADMDtyAGZHDsDsWre5TonrEpWamqptW7bpWic5kHduSpeWA+vWus6B9euc54Ctt998R+NGj5ckNWveVJ8tnMd6lx7w1b+rJbmchQyUJswZvkTHjh3Tp59+Kkm64447+HaghOravauxPTthtsM2OTk5mjvnE0m5N3/p0LGDV2NYLBZ17dZFkpS0M0kbN2xy2G7jhk1K2pmUG1e3LgVuHBMTG2N8e/j5/AVKs1nbxtbshDnGdrce3byKFeZDDsDsyAGYHTkAs+vS7XZje3bCxw7b5M+B9te392oMi8Wi27veJil3JuEmJzmwacMmY6bh7V1vc3ojySkTp+q1l1+XJF151ZX6YukCu7U2AcAbFAA98NNPP+mLL77Q4cOHjanE6enpWrlypZ555hmlpKTo6quvVteuXd30hOJybYvmatM29/LtmdMTtOH7jQXajB87QTt/2ylJGjLs0QLT6tesWqPQwHCFBobrwYEPORxn6GNDjCLwk8NHKD093W5/enq6nhw+QpIUGBiooY8NcdjP8CcfkySdOHFCzz87ssD+fXv3afTbuYv+RkVHqTsfeuEGOQCzIwdgduQAzK55i+Zq3TZ3dumsGbO00UEOTBw3SUm/5RanBw97pGAOrF6riLLlFVG2vB4e+IjDcYY89qiRA08N/5fDHHhq+L8k5ebAkMceddjP7Jlz9OxTz0mSYmKjtejrhapUqZKnLxcACuASYA8cP35cM2bM0IwZMxQQEKCwsDClpqbKarVKkpo3b66nn36aRVhLuNHj3lGn9jcqPT1dXW/tpqeffUrtr++gjPR0zZ/3mT76YLqk3G+dH7/wodNbMbExemLEcI1+Z4y2bt6qTu1v0JP/elINGjTQvn37NPbdsdq+7UdJ0hMjhis6JtphP/F945UwY7a+T/xe7099X0f/OqqBg/qrYmSkNv+wWW+98ZZSUlIUEBCgMePedbqGCWCLHIDZkQMwO3IAZvfu2Ld1Y4eblZ6eru639dRTz45Q+w7tlJ6Roc/++7lmfDhDUm7B7bEnhhVqjJjYGA0f8bjGvDNWW7ds043tb9YT/xquBg3qa9++3zXu3fH6cXtuDgwf8bjDHFi8cImGPjJMVqtV5cuX1ztj31by8WQlH092Om69+nVZBxOASxZrXhULTh0+fFjLli3Tr7/+qmPHjiktLU3ly5dXTEyMOnXqpOuuu84n4yQnO/8L3VusAejY0sVfaWC/QUpJSXG4PyY2Rl8s+lxR0VEF9q1ZtUadb7xVkhTf9359MP0/DvvIycnRow8PUcKMWU7j6D+wn6a8N9ll0Tg5OVk9utyhLZu3ONwfHByscRPHasCg/k77APIjB2B25ADMjhwwh2wrNxZ05qsly/RAvwdd5EC0Pls433EOrF6r227MvZT4/j736f3p7znsIycnR0MfHqZZMx1fbi9J/Qb01aT3JjrMgYcHPqKPZ8/15OUYvvrfUrXv0M6rY/xZ+qlMn/XFGoDwF3xV5oGaNWtq0KBBxR0GfOD2rrdp07aNmjJxir5etlyHDh5SUFCQGkQ30B29emrwkEcUFnZpxdOAgAC998E09ejZXR99OENbNm/R38l/q3KVymrWvJkeeHCgOt/a2W0/VapU0ap132n6hzP030/mKWlnklJTU1WjZg117HS9hgx7VFdcecUlxQrzIQdgduQAzI4cgNnd1uVWbdiaqKmTpmn5suU6dPBwbg5E1VfPO3vq4Ucf8kkOTP1girrf0U0zPpypLZu32uRAUw18cIBuvuVmH70iAPAMMwBLEGYAAgAAALhUzACE2TEDECiIResAAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjFAABAAAAAAAAP0YBEAAAAAAAAPBjgcUdAAAUBausxR0CUKwsshR3CACAYpJtzSruEAAAJQwzAAEAAAAAAAA/RgEQAAAAAACgFLNYLMbjUto48u6779odO3/+/EsNF8WAAiAAAAAAAAAcmj59usvnKB0oAAIAAAAAAKCA9evXa+fOnXZ/tmLFCh08eLCYIkJhUQAEAAAAAABAAR999JGxPWDAAElSTk6OZs6cWUwRobAsVquVW2WWEMnJyT7rKyIyzGd9AaURdwGG2XEXYAAwr3M5mcUdAlCszp3O9llfVapU8VlfRcl2XT9nZR5P2tg6c+aMatSoodTUVMXExGjz5s2qXr260tPT1aBBA+3Zs8fr9QRRfJgBCAAAAAAAADv//e9/lZqaKknq06ePypcvr549e0qS9u3bp1WrVhVjdPAWBUAAAAAAAADYybv812KxqE+fPpKkfv36FdiP0oECIAAAAAAAAAw7duzQhg0bJEkdOnRQvXr1JEk33nijatWqJUlasGCBTp8+XVwhwksUAAEAAAAAAGCwnd1nO+svICDAmA2Ynp6uuXPnXvbYUDjcBKQE4SYggO9wExCYHTcBAQDz4iYgMDtuAnJpNwE5f/68atWqpePHjyssLExHjx5VRESEsX/nzp1q1KiRJKl58+b64YcfLjV8XAbMAAQAAAAAAIAkadGiRTp+/Lgk6Y477rAr/klSXFycWrRoIUnavHmzfvrpp8seI7xHARAAAAAAAACSpOnTpxvbtpf/2uJmIKUPlwCXIFwCDPgOlwDD7LgEGADMi0uAYXZcAlz4S4APHTqkunXrKjs7W7Vr19aBAwcUEFBw7tiJEydUo0YNnTt3TpUrV9bhw4cVFBR0ia8CRYkZgAAAAAAAANDMmTOVnZ1bQI2Pj3dY/JOkSpUqqWvXrpKkv//+W19++eXlChGFxAzAEoQZgIDvMAMQZscMQAAwL2YAwuyYAVi4GYBWq1XR0dHat2+f1+N37txZX3/9tdfH4fJhBiBM58CBP/TMU8+q8ZVNVLl8VdWsWlttWrXT2NHjlJaW5rNxli9brrt79VZU3RhVCItUVN0Y3d2rt5YvW+5xH1lZWfrg/Q91Q4ebVKd6XUVGVNYVsVdp6OBh2vHrDp/FCnP548Afevap53TNlU1UpXw11apaR21btde40eN9nAMrdE+v3oquG6uKYZUUXTdW9/TqreXLVrg9NjMzU5s2bNK0ydM0qN8DanxFE4WXLaewwAiFBUa4PR5whfcBmB05ALP748CfeuHpkWp+VUvVqFhbdf/RQNdfd4MmjJno0xz45utvdP+dfdSo/pWqGlFdjepfqfvv7KNvvv6m0H3+8tOvqhxWTRWCKqlCUCUNHjTEZ/ECq1atKlTxT5K++eYb/fnnnz6OCL7EDMAShBmARW/p4q80sN8gpaSkONwfExujLxZ9rqjoqEKPkZOToyGPDNXM6QlO2wwY1F+Tp01yOp1ayj0fenS5Q1s2b3G4Pzg4WOMmjtWAQf0LHas/YwagY0sXf6VB/R5wmQMLFn3mgxwYpgQXOdB/UH9NnjbRaQ48NOgRzUmY4/T4tKyzhY7PLJgB6BjvAzA7csAcmAHo3LIlX+uh/g8rJeWMw/3RMdGat/BTRUU3KPQYOTk5emzwcM2e4fyzTN+BfTRh6jiXOeCo3xvb3awtP2w1/uy+Pvdq2kdTCh2rv2IGYOFmAMbHx+vjjz+WJPXq1UtXXXWV23ETExP1zTe5Re1XX31VL774oldx4/KhAFiCUAAsWtu3bVen9jcqPT1dERER+tczT6n99e2VkZ6u+fM+0/QPZ0jK/eC7fuNalStXrlDjvPj8Sxr9zhhJ0jVNGuuJp55QgwYNtG/fPo0bPU7bt/0oSfrXM0/p1TdecdhHdna2bu50ixLXJ0qSuvfsroGD+iuyUiX9sOkHvf3m2zp27LgCAgK0YOFn6nxr50LF6s8oABa0fduPusEmB556ZoQ6XN9e6RdyYMaHMyXl5sC6jWsKnQMvPf+ykQONmzTWk08NV/0GDfT7vn0aO3q8fryQA08985RefWOUwz4eGviw5szK/fBRrlw5XdOksXbt2q2jfx2VRAHQExQAC+J9AGZHDpgHBUDHftz2kzpff6uRA088PVztr2+r9PQMfT5vgRI+miUptwi4asO3hc6BUS+8qnHvjpck/d81/6fHRwxT/aj6+n3v75owZpJ+2v6TJOnJp5/Qy697Xix5b/L7eubJ51S1WlUdP3ZcEgVAZygAel8APHXqlGrUqKGMjAwFBgbq8OHDqlq1qttxf/rpJzVu3FiSVL9+fe3du9duHJQcFABLEAqARevG62/W+nXrFRgYqG9WrlCr61ra7R87epxeeHakJOmFF5/XyJdf8HqM3bt2q+n/NVdWVpaaNm+q/61codDQUGN/WlqaburUWVs3b1VgYKC2/7LV4TfsCTMS9MiDj0qSHh78kMZPGme3f++evWrdoq1SUlIUFR2l7b/k9oeLKAAWdNP1N2v9usQLObBcLfPlwLjR440ceP7F5wqdA83+71ojB75ZubxADtzc6RYjB7b9ssVhDnw27zOlp2eoWfOmimsUp4CAAHXudIvWrlmX2w8FQLcoABbE+wDMjhwwDwqAjt3a6XYlrvtegYGBWvbdErVo1cJu/4QxE/XSc6MkSc+OfFrPvfSs12Ps2bVHLa9praysLDVp1kTLvltSIAduu6Grtm3ZpsDAQG36aYNHsw0PHTyklo2v09mzqZr24RQ9Mig3PygAOkYB0PsC4NSpUzVkSO4l5V27dtWiRYs8HrtJkybavn27JOnbb79Vp06dPD4Wlw9rAMIUfti0WevXrZck9R/Yr8AHXkka/uTjimsUJ0maMmmqzp8/7/U4kydOUVZWliRp7Pgxdm/2khQWFqax43O/Ec/KytKkCZMd9jN+7ERJuXdWevPtNwrsj4qO0lPPjJCU+wF44Zee/+UMc8rNgdxZFP0G9i1Q/JOkx598THGNGkqSpk6a5oMcGO0kB0ZLcp0Dd959p/r0i9cVV17h1aUxgDO8D8DsyAGY3ZYftihx3feSpD4D4gsU/yRp2BND1TAuVpI0bfL7hcqBqZPeM3Lg3fFvOcyBd8e/JSk3B6ZOnOZRv0899rTOnDmr+/veq9btWnsdF+DORx99ZGz37dvXq2Nt29v2g5KFf1XBFBYvXGxs9+nXx2GbgIAA3Rd/r6Tc6c+rV672agyr1arFi5ZIkhrGNVRLBx8qJKllqxaKbZj7wWLxoiUFvnnZvWu3dv62U5LU6647FBbmeDZnn37xxvYiPvTCjcULlxjbrnPgPkl5ObDGqzGsVquWLFoqSWoYF+vwg7UktWjVQrENYyRJSxYtdfoNJeBLvA/A7MgBmN2ShV8Z2/H97nPYJiAgQL3je0uSTp86rTWr1no1htVq1VeLl0mSYhvG6NqW1zpsd23LaxUTm/tZ6KvFX7n9LPTl5wv11ZJlqlS5kl5761WvYgI8sX37dm3dmru2ZGRkpLp27erV8ffff78xC3vBggU6deqUr0OED1AAhCkkrs/9ti88PFxNmzVx2q5d+3bG9veJG7waY//v+3Xk8JEL/bR12TZv/+FDh3Vg/4F8sSYa221d9FO9enXjg4O3scJ8vr9wXrnPgYvn3PeJ33s1hm0OuDp3bfc7ygGgKPA+ALMjB2B2Gy6cI+Hh4bqm6TVO27Vtf3F23cbEjV6Nsf/3A0YOtGnfxmXbNhfGOXzoiA7s/8Npu9OnU/TMk89Jkl799yhVqlzJq5gAT9jO2rvnnnsUHBzs1fHVqlXTLbfcIknKyMjQ3LlzfRoffIMCIEwhaWeSJCkquoHL9WHypvxL0s4Lx3jqtx07je28b7Wdsd2f9w23o34auuknb//BPw8qNTXV41hhPnk50MBNDsTa5EDSJeRAw4YNXba13b/zN+/GAQqD9wGYHTkAs0vauUuS1CCqvssciGlo+1lol3dj2HymybvawRnb/btcjPPy86P015G/1LrtdYrvd79X8cBcrFar8fC2zaRJk4w/nzbNs8vS81u8eLHRx6OPPlqoPlC0KADC72VkZBg3WKlVq5bLtpGRkQoPD5eU+0HSG4cOHTK2a9V2PU7tOrWN7YMHD9ntO3TosMf91LrQj9Vq1aF8/QB5cnPgb0ne5oB355R9DtR02bZ2nYtxHDzoXa4B3uJ9AGZHDsDsMjIy9PeFz0I13XxGiYysaOSAt+eU7blbs5brcWzP7fw5kGdD4gbN/DBBZcuW1dhJo7mzKoBLQgEQfu/MmTPGdnhEhNv24eG568ykpnp3l1HbcSIufGhwOobNWjZnz9qPc9a2Hzfx2vfDt95wzO7cjHB9bkqFz4GzZy62Dw93fe6GhV2MI5VzF0WM9wGYHTkAs7P/jOL+s1BYXg54eU6d9eIzV16e5Y5TMNfOnTunxwc/IavVqiGPP6pGVzbyKhYAyI8CIPxeRkamsR0UVNZt+6AL6x2kp2d4NU6m3ThBLtvarqmQkW+cjIyLz73pJz093aM4YT7enJtS4XPA/tx1nWvBwRfj4NxFUeN9AGZHDsDsvDmnpIufU9IzCp8DZd2ME+QiByRp3DvjtfO3JP2z3j/1zMh/eRUHADhCARB+LyTk4pvruXPn3bY/l5n7xh0aGuLVOMF245xz2TYz8+KHg5B844SEXHzuTT+hoaEexQnz8ebclAqfA/bnrutcy8y8GAfnLooa7wMwO3IAZufNOSVd/JwSGlL4HDjvZpxzLnJgd9JujXl7nCTp3XFvO70TNgB4gwIg/F65cuWMbUfT6/NLTU2T5P4SRlfjnHWzCHVqWpqxnf/SlgjbftzEa9+P+8sZYE5256YHl7IUNgciyl1s7+6ysbS0i3GEc+6iiPE+ALMjB2B29p9R3H8WSsvLAS/PqQgvPnPl5VnuOBfjs1qtGj7kSWVmZqpL9y665fbOXsUAwLGTJ0/qyy+/1IsvvqjbbrtN//jHP2SxWGSxWLRq1ariDu+ycH77I8BPhISEqHLlyvr777/tFqd25OTJk8aHAtvFqT1hu6i2uwWDbRfVrp1vcetaNgsGHzp4SFWqVHHaz6EL/VgsFreLZMO8cnOgkv7++4SXOeDdOWWfA4ddtLS/wUjt2t7lGuAt3gdgduQAzC4kJESVKlfSib9P6LCbzygnT54ycsDbc8r23D18yPU4tjlimwM/bPxB69aslyS1vO5affbfzwscm3dDE0k6sP+A0eaKKxvpiquu8CpmwCwWLlyoAQMGFHcYxYoCIEwhrlGc1q9br7179ikrK0uBgY5P/aSduy4eE9fQqzEaXRFnbO9K2uWipf3+uEZxdvts+0lK2qXG1zR22k/ShX5q16nt0YLGMK/cHEjUPjc5sMsmBxpeQg4kJSW5bGu7P66Rd+MAhcH7AMyOHIDZxTVqqMR132vf3t9d5sDuJNvPQrFejdHQ5jPNrqTdLtva7o+1Gcd2mZQXn33Z7Zjr1yZq/dpESdKzI5+mAAi4UL16dTVr1kzNmjVTbGys4uPjizuky4pLgGEKrdtcJyl3yv/WLductlu7Zq2xfV3rVl6NUa9+PdWoWeNCP+tctl23NvdbvZq1aqpuvbr5Ym19sZ2Lfv766y/t3rW7ULHCfK67cF65z4GL59x1ra/zagzbHHB17krSehc5ABQF3gdgduQAzK7VhXMkNTVV27dud9pu3ZpEY7tl65ZejVGvfl0jB9ZfmMXnTOKFol3NWjVUt94/vRoHgPf69OmjI0eOaMmSJXrllVd0++23F3dIlx0FQJhC1+5dje3ZCbMdtsnJydHcOZ9IkipWrKgOHTt4NYbFYlHXbl0kSUk7k7RxwyaH7TZu2KSknbmzn7p26yKLxWK3PyY2xvgm/PP5C5Rms7aNrdkJc4ztbj26eRUrzKdr9y7GtuscmCspLwfaezWGxWJRl265b6RJO3dpk5Mc2LRhkzHDpEu32wvkAFAUeB+A2ZEDMLsu3W8ztuckzHXYJicnR5/O+VSSVKFiBbW/vp1XY1gsFt3W9VZJuTP8ftj4g8N2P2z8wZgBeFvX2+xyoF2Htjp97oTLx0+7thvt7+tzr/Hnz730rFfxAmZSpkyZ4g6h2FEAhClc26K52rRtI0maOT1BG77fWKDN+LETtPO3nZKkIcMeVdmyZe32r1m1RqGB4QoNDNeDAx9yOM7Qx4YYf7E8OXyE0tPT7fanp6fryeEjJEmBgYEa+tgQh/0Mf/IxSdKJEyf0/LMjC+zft3efRr89RpIUFR2l7nzohRu5OZA7oyJh+ixtdJADE8ZO1M7fcv9B9uiwwQ5zICwwQmGBEXpo4MMOx7HPgaec5MBTklznAOBrvA/A7MgBmF2za5upddvcmbCzZ8xx+EXlpHGTjS8pBw99uEAOrF29ThWCKqlCUCUNHuT43H102CNGDvxr+LMOc+Bfw3MLdYGBgXp02COX9sIAwEMUAGEao8e9o9DQUGVlZanrrd307lvvauOGTVq9crWGDh6mFy58uIyJjdHjFz50eismNkZPjBguSdq6eas6tb9B8+d9pi2bt2r+vM/Uqf0N2rp5qyTpiRHDFR0T7bCf+L7xxuWX7099X/fefb++Wf6Nfti0WdOmvKeO7TopJSVFAQEBGjPuXadrmAC23h33rk0OdNe7b43WpiLPgRv12YUc+GzeZ+rU/kYjB4a7yIG//jqq2Qlz7B5Hjx419ufft3fP3kLFC3PhfQBmRw7A7N4a828jB3redqfGvD1OP2z8QWtWrdXjjz6hl54bJUmKjonW0CcK9yVldGy0HntymCRp25ZturnDrfp83gJt3bJNn89boJs73KptFy7Df+zJYYqKifLJawMAdyxWq9Va3EEgV3Jyss/6iogM81lf/mTp4q80sN8gpaSkONwfExujLxZ9rqjogm/Ea1atUecbc6f0x/e9Xx9M/4/DPnJycvTow0OUMGOW0zj6D+ynKe9NVkCA8xp8cnKyenS5Q1s2b3G4Pzg4WOMmjtWAQf2d9mFmVvFXmyNLF3+lQf0ecJkDCxZ95jQHbrkx9/KZ+L736z/T33fYR24ODNUsFznQb2A/TXlvktMcsB3LE+9/9J769DPXIr7uWMSl1Y7wPgCzIwfM4VxOZnGHUGItW/K1Hur/sFJSzjjcHx0TrXkLP1VUdIMC+9auXqcuN+XONr2vz72a9tEUh33k5ORo2COPa87Mj53G0WdAvCZOG+8yB5w5sP8P/V/sNW7jMLNzp7N91perO5Gj9Dp16pQiIyMlSStXrtT1119fvAFdBswAhKnc3vU2bdq2UcMeH6qY2BiFhYWpYsWKatq8qV7/92vasDnR4QdebwQEBOi9D6bpi0Wfq0u3LqpRs4aCgoJUo2YNdenWRV8uXqBp/5nq9s2+SpUqWrXuO02YPF6t27RW5cqVFRISovoN6mvgAwOUuGkdH3jhtdwc2OA0B77fvN5HOTBVC5zkwBeLF2jaf6YU6gMvcKl4H4DZkQMwu1u73KL1W9ZpyOODFR0TrbCwMFWoWEFNmjXRK2+O0tofVjks/nkjICBAU/4zSfMX/le3d73NLgdu73qbPlv0X01+fyKfhQBcVswALEGYAQj4DjMAYXbMAAQA82IGIMzODDMAT545pRue7q2cnBxVqVBJYcGhxR3SZZGVnaXklJNKPn1CU4a+rltbdipUP2acAchiGQAAAAAAAKXIL/uTtG3vrzZ/Yr4JEIs3/q/QBUAzogAIAAAAAABQ2licPjGFoLJBxR1CqUIBEAAAAAAAoDSxyIw1P3tmf/1eogAIAAAAAABQ2liogMFzFAABAAAAAABKG7PX/8z++r1EARAAAAAAAKC0uSwFMF8NUgQ3KfEytOTkZGM7JSXF2D59+rTdvgoVKqhs2bKXHF5JQwEQAAAAAACgVLGUskuAiyJW7/qsWrWqwz/v0aOH3fOVK1fq+uuvL2RMJRcFQAAAAAAAgNLEYtXmVxYU6tDmo+7wcTCXbvOowr0WeI4CIAAAAAAAQKlyCTPqStXMQd+xWovgMuRShAIgAAAAAACAWfii/pdXRDR5Ua00oQAIAAAAAABQyjR/rVfhDvS6AOjiAKezCb0rDBbmtTzeZYCaNWvm9XFmRQEQAAAAAACgNLGohF/KexliK9Gvv+ShAAgAAAAAAFDa+Lz+VdQFNS4XLk4UAAEAAAAAAEqdQhbsim3inJOBqQteFhQAAQAAAAAAShtvC3kl9YrZvLi8LQSW1NdTQlEABAAAAAAAKG08KYCVpiJZ/ljdFQRL02srASgAAgAAAAAAlCLnsrL8/yYYbl7ebwf3Xp44/AQFQAAAAAAAgFIkqGxZ08+Ai63ZoLhDKFUoAAIAAAAAAJQ2AeauAJYJLFPcIZQqFABLEIvFooCAgOIOAwAAAACAUqtMGRMUhiwy/QxAeIcCYAkSGhqqsLAwn/SVkZ3mk36A0srCuyEAADCpMhb+mQdzKx9ZrrhDuDz8fQ1Ad0z+8r3FO0MJkp6erszMTJ/0FVo+2Cf9AAAAAABQmpw8edJnfUVGRvqsL58zewHM7K/fSxQASxCr1ars7OziDgMAAAAAgFLLNP+uLsoZgNai69p3hTsqgN6gAAgAAAAAAFCaFPUagPn7vpSCYFHFSf3PKxQAAQAAAAAASpvLWQBzWhC0qEB1kMJciUQBEAAAAAAAoFQp5tsAW5w+QQlFARAAAAAAAKC0Kc66m+36g9aiXDDQVQzFM2xpRQEQAAAAAACgVLFepgKYxe7/HDfJt9Nq/A9KEAqAAAAAAAAApYnFUrR3Ab4UFuN/inicEvr6SygKgAAAAAAAAKWNT+tfl6uYxszA4kIBEAAAAAAAoLQplTPgfBhzaXz5xYgCIAAAAAAAQGlj9gKY2V+/lygAAgAAAAAAlDZuC2D+UCFzfslwdk72ZYyj9KMACAAAAAAAUIqcyz6vAgU+f6j3FWDzovLVAncd++PyhlLKUQAEAAAAAAAoRYICg2Qp46Di58/32Mj3chvVbFA8cZRSFAABAAAAAABKFSeVPr+cBQhfoAAIAAAAAABQqlhkKZV3AfYdC9VOrwQUdwDA5XbgwB965qln1fjKJqpcvqpqVq2tNq3aaezocUpLS/PZOMuXLdfdvXorqm6MKoRFKqpujO7u1VvLly33uI+srCx98P6HuqHDTapTva4iIyrritirNHTwMO34dYfPYoW5kAMwO3IAZkcOwOz+OPCHnvvX82pyVTNVq1Bddar9U+1bddD4MRN8mgMrvl6h3nfep9h6caoUXkWx9eLU+877tOLrFW6PPXr0mGZ+lKABfQaq2f9dq39UrKHIsMqKqhOjHrf31PQPZig9Pd1nsaIUsvCg/ucdi9Vq9ecrxEuV5ORkn/UVERnms778ydLFX2lgv0FKSUlxuD8mNkZfLPpcUdFRhR4jJydHQx4ZqpnTE5y2GTCovyZPm6SAAOc1+OTkZPXocoe2bN7icH9wcLDGTRyrAYP6FzpWmA85ALMjB2B25IA5ZFu5M6YzXy1Zpgf6PegiB6L12cL5l5wDwx55TAkzZjlt039gP02cNsFhDsz4cKaGD31C2dmuf4/RMVGa8+lsXfV/VxU6Vn+VfirTZ31VqVLFZ3350to9W9RxXP/iDqNYPdYxXmPvfKa4wyg1mAEI09i+bbv63NdXKSkpioiI0CuvjdLKtd9p2YqlGvjAAEnS7l271bNbL505c6bQ47w8cpTxgfeaJo2V8PFMrf1+jRI+nqlrmjSWJM34aKZGvfiK0z6ys7N1T697jQ+83Xt218IlX2hN4mqNGT9a1apVVWZmpoYOHubVt+gwN3IAZkcOwOzIAZjdj9t+VL/7+hs58PJrL+nbNd9oyYrF6n+hkLx71x7d2f2uS8qBV1581Sj+Nb6msWbMma7ViSs1Y850Nb4mNwdmTk/Qqy+95vD4Y8eOKTs7W0FBQerWs5smTBmvr79bpvWb1mr2p7N0w02dJEl7du9Vl1u66dDBQ4WOFaVccc++K+4HvMIMwBKEGYBF68brb9b6desVGBiob1auUKvrWtrtHzt6nF54dqQk6YUXn9fIl1/weozdu3ar6f81V1ZWlpo2b6r/rVyh0NBQY39aWppu6tRZWzdvVWBgoLb/stXht4sJMxL0yIOPSpIeHvyQxk8aZ7d/7569at2irVJSUhQVHaXtv+T2B7hCDsDsyAGYHTlgHswAdOzmjrcocV2iAgMDtfy7ZWqZLwfGj5mgkc++KEl67sVn9cJLz3s9xu5du3Vt45a5OdCsiZav/LpADtzS6VZt3bJNgYGB2vLzDwVyYPL4yTp27LiGPTFMVas6nn323L+e16TxkyVJffrFa9qHU72O1Z+ZYQbguj1b1HHCgMs7aGGqR0VYqBt2/f0a24sZgJ5iBiBM4YdNm7V+3XpJudPt83/glaThTz6uuEZxkqQpk6bq/PnzXo8zeeIUZWVlSZLGjh9j92YvSWFhYRo7foyk3DVtJk2Y7LCf8WMnSpIqVaqkN99+o8D+qOgoPfXMCEm5H4AXfrnI61hhLuQAzI4cgNmRAzC7zZs2K3FdoiSp74C+BYp/kvTYE8PUsFFDSdK0Se8VKgemTJxq5MDo8e86zIHR49+VlJsDkydMKdDH0OFD9eqbrzgt/knSK2+MUvUa1SVJi75crJycHK9jRelmLY4ZdwE2D0/auGrHDMDLjgIgTGHxwsXGdp9+fRy2CQgI0H3x90qSTp06pdUrV3s1htVq1eJFSyRJDeMaqmWrFg7btWzVQrENY3PjWrRE+Sfh7t61Wzt/2ylJ6nXXHQoLczybs0+/eGN7ER964QY5ALMjB2B25ADMbsmipcZ2n373O2yTPwfWrFrj1RhWq1VLF38lSYqNi1ULJznQolULxTSMkZS7LmdhLsoLCgpSq9atJEmnT5/W33+f8LoPlG4W5d4FuEQ8Amwel3lseI4CIEwhcf33kqTw8HA1bdbEabt27dsZ298nbvBqjP2/79eRw0cu9NPWZdu8/YcPHdaB/QfyxZpobLd10U/16tUVExtTqFhhPuQAzI4cgNmRAzA72xxo4iIH2rZrY2xfSg60bec6B/L2O8oBT53LvHiZa5ky/NPefC7/am6WvP8cFf2Yklfi8bcETCFpZ5IkKSq6gcv1YRrGxRrbOy8c46nfduw0tvO+1XbGdn/eN9yO+mnopp+8/Qf/PKjU1FSPY4X5kAMwO3IAZkcOwOzycqBBlOsciLXJgaSdu7waw/Zcbnhhhp8ztvuTvMw1STp//rw2btgkSar2j2qqVKmS132gtLv8M/xcXtYboMs+CxDeoQAIv5eRkWHcYKVWrVou20ZGRio8PFxS7gdJbxw6dPHuW7Vqux6ndp3axvbBfHftOnTosMf91LrQj9Vq5e5fcIocgNmRAzA7cgBml5GRob+T/5Yk1apd02Vb2xw45G0OHLx47tb08NyVpIN/en/uTv9ghvGaevbq4fXx8BNFsK5egdl9hSnoOTmedQCLFwVA+L0zZ84Y2+EREW7bh4fnrjOTmnq20ONEXPjQ4HQMm7Vszp61H+esbT9u4rXvh2+94Rg5ALMjB2B25ADM7syZi+dYeITrc1OSwi7kgLfnlO25HOFmnLw8k+T17NXf9/2uV1967cI4EcYNcWAyecU6X8+qK4qimm1x0ZcPKoBecT73GfATGRkX18YICirrtn1QcLAkKT09w6txMu3GCXLZNvjCGJKUkW+cjIyLz73pJz093aM4YT7kAMyOHIDZkQMwu0zbc6qs63NKunheZWR4d07Znrtl3Zy7QYU8d9PS0nTfXfE6ffq0pNw7DdeoWcOrOOFHLqH+VZKKZ9bCrmdYcl5CqUABEH4vJOTim+u5c+fdts9bTDc0NMSrcYLtxjnnsm2mzYK9IfnGCQm5+PzcuXN2z131Exoa6nGsMBdyAGZHDsDsyAGYXbDtOXXe9bkpXTyvQkK8O6dsz9XzbnLgXCHO3aysLPXp3Vc///SzJOmBhwcp3skdjWEO/rIOXqGLkf7x8i8bCoDwe+XKlTO2U8+6v5QlNTVNkhQe7v4SGWfjnHUzjT81Lc3Yzn9pS4RtP2fPuvzQa9+P+8sZYE7kAMyOHIDZkQMwu3LlLp5jqR5c1pt2IQe8Padsz2V3lw/n5ZkkY81BV6xWqx4e+IiWL1shSbrjrjs0duIYr+KDH3JRACtJM/wuhavZgWcy0pzuQ0GsAQi/FxISosqVK0uyX5zakZMnTxprcNguTu0J20W13S1Cbbuodu18CwTXqnVxYWJ3/eQtTGyxWNwukg3zIgdgduQAzI4cgNmFhISoUuXcu+Ta3qjDEdscqOVtDtjcYOSwh+euJNWu4/7cfWLYk/rvJ/MkSTffcpM+SvhAAQH8c97MMrPOuV/Lzw8erl5jcupJn/9c/Rl/Y8AU4hrFSZL27tmnrKwsp+2Sdu66eExcQ6/GaHRFnLG9K2mXi5b2+/Nic9RPkpt+8vbXrlPbo28OYV7kAMyOHIDZkQMwu7zzbN9e1zmwyyYHGsbFFmoMSUpK2u2yre3+hm5y7cXnXtKH738kSWrTro0+njdHZcu6X88T/i2kbLACLBaHj6K4OUhJewRYLIqqUqe4fw2lCgVAmELrNtdJyr3D1tYt25y2W7tmrbF9XetWXo1Rr349YwHetWvWuWy7bu16SVLNWjVVt17dfLG2vtjORT9//fWXdu/aXahYYT7kAMyOHIDZkQMwO9sc2OYiB/LOTenScmDdWtc5sH6d8xyw9fab72jc6PGSpGbNm+qzhfNY7xIXWSwOH8VdnLscj9zXWty/gNKFAiBMoWv3rsb27ITZDtvk5ORo7pxPJEkVK1ZUh44dvBrDYrGoa7cukqSknUnauGGTw3YbN2xS0s6k3Li6dcn9y8tGTGyM8e3h5/MXKC3N8boGsxPmGNvdenTzKlaYDzkAsyMHYHbkAMyuS7fbje3ZCR87bJM/B9pf396rMSwWi27vepuk3JmEm5zkwKYNm4yZhrd3va1ADuSZMnGqXnv5dUnSlVddqS+WLrBbaxNwUv9z/VApenjwWuA5CoAwhWtbNFebtm0kSTOnJ2jD9xsLtBk/doJ2/rZTkjRk2KMFptWvWbVGoYHhCg0M14MDH3I4ztDHhqhMmTKSpCeHj1B6errd/vT0dD05fIQkKTAwUEMfG+Kwn+FPPiZJOnHihJ5/dmSB/fv27tPot3MX/Y2KjlJ3PvTCDXIAZkcOwOzIAZhd8xbN1bpt7uzSWTNmaaODHJg4bpKSfsstTg8e9kjBHFi9VhFlyyuibHk9PPARh+MMeexRIweeGv4vhznw1PB/ScrNgSGPPeqwn9kz5+jZp56TJMXERmvR1wtVqVIlT18uTCC3SFaI/0rA7D2PH27+owToHQqAMI3R495RaGiosrKy1PXWbnr3rXe1ccMmrV65WkMHD9MLFz5cxsTG6PELHzq9FRMboydGDJckbd28VZ3a36D58z7Tls1bNX/eZ+rU/gZt3bxVkvTEiOGKjol22E9833hd1zr3MoX3p76ve+++X98s/0Y/bNqsaVPeU8d2nZSSkqKAgACNGfeuAgO5oTfcIwdgduQAzI4cgNm9O/ZtIwe639ZTo98eo00bNmn1qjUaNvhxjXz2RUm5BbfHnhhWqDFiYmM0fMTjkqStW7bpxvY367N5n2vr5q36bN7nurH9zcZl+MNHPO4wBxYvXKKhjwyT1WpV+fLl9c7Yt5V8PFm//rLD6SPVzZ234Z+K7tLay/O49HiL+zdQulisVqvzeyrjskpOTvZZXxGRYT7ry58sXfyVBvYbpJSUFIf7Y2Jj9MWizxUVHVVg35pVa9T5xlslSfF979cH0//jsI+cnBw9+vAQJcyY5TSO/gP7acp7k13euSs5OVk9utyhLZu3ONwfHByscRPHasCg/k77APIjB2B25ADMjhwwh2xrdnGHUGJ9tWSZHuj3oIsciNZnC+c7zoHVa3XbjbmXEt/f5z69P/09h33k5ORo6MPDNGum48vtJanfgL6a9N5Ehznw8MBH9PHsuZ68HMNX/1uq9h3aeXWMP0s/lemzvqpUqeKzvnwpcf823fqB45moPuXLipGPC3aDW9+jt25/0red+jFmAMJUbu96mzZt26hhjw9VTGyMwsLCVLFiRTVt3lSv//s1bdic6PDN3hsBAQF674Np+mLR5+rSrYtq1KyhoKAg1ahZQ126ddGXixdo2n+muvzAK+W+0axa950mTB6v1m1aq3LlygoJCVH9BvU18IEBSty0jg+88Bo5ALMjB2B25ADM7rYut2rD1kQNfXyIYmKjL+ZAsyZ67d+vav0P63ySA1M/mKLPF81Xl26358uB27Vg8Wea8h/XBXDAvUJdAFy8lwz7+D8uAfYOMwBLEGYAAgAAALhUzACE2ZllBuDtHw4u1hjyiknFVYZ75Lp79O/bnyim0UsfFssAAAAAAAAoRfJm5xUrq4p3HT4mAHqFAiAAAAAAAECpc/krYLYFP9vt4rm2lAqgNygAAgAAAAAAlDJFP/vO4nGJLX8sVgdbvkb5zzsUAAEAAAAAAEoTi4r/EmAXLA62fD5GyX35JRIFQAAAAAAAgFLF4sX8PH9l9tfvHQqAAAAAAAAApYhFzIAz+cv3WkBxBwAAAAAAAAAvWSwePSyl7OHp6ypMBfT48eMaMWKEYmJiFBoaqipVqujmm2/Wl19+WahfwfXXX+/x6xowYECB4/v37+/2uKuuuqpQseXHDEAAAAAAAIBS5HzOeb+dAefp6zqScsyrfn/99Vd16tRJx47lHleuXDmdOnVK33zzjb755hs99thjmjBhgld9VqpUSf/4xz+c7j937pxOnjwpSWrWrJnTdiEhIapQoYLDfVWqVPEqJmeYAQgAAAAAAFCKBFjKFPtMveJ+lC3j+Zy2zMxMdevWTceOHdNVV12l7du3KyUlRSkpKXr99ddlsVg0ceJEzZgxw6vfw4IFC/TXX385fTz11FOSpODgYN13331O+7nnnnuc9rFq1SqvYnKGAiAAAAAAAEApEhgQoIAAi+OHxY8fNq+zWrnKHv+8/vOf/2jfvn0KCwvT0qVL1bhxY0lSWFiYXnjhBT366KOSpJEjR+r8+fM++z0lJCRIkrp27apKlSr5rN/CoAAIAAAAAABQqlic/5dvppxXa+qV0Ifxemz+88acOXMkSffee6/++c9/Ftj/9NNPy2Kx6PDhw1q5cqVPfkOJiYnatWuXJDlc/+9yowAIAAAAAABQ2lg8e5SA+t0lPxy+Ng+dPXtWP/zwgyTplltucdjmn//8pxo1aiRJ+vbbbwvxyyho5syZkqQaNWqoc+fOPunzUlAABAAAAAAAKGWKew2+kvDwxG+//Sar1SpJLu+om7dvx44dl/y7SU9P17x58yRJffr0UZkyZVy2//bbbxUTE6Pg4GBVqFBBzZo104svvqijR49ecix5KAACAAAAAACUMh5OAPTrhyeOHDlibNesWdNpu7x9tu0L64svvtDp06clSf3793fb/uDBg9q/f7/Cw8N19uxZbd26Va+//rquuOIKn81IpAAIAAAAAABQyhT37Lvifnjq7NmzxnZYWJjTdnn7zpw5U/hfygV5dxNu2bKlcWmxI02bNtXUqVN14MABZWZm6sSJEzp16pTmzJmjGjVq6MSJE+rRo4exluCl8PyeyQAAAAAAACh2Fou8KoL5jtWLtkUbX/G8fvf+/PNPfffdd5Lcz/577LHHCvxZuXLldP/996tt27Zq0qSJTp48qVGjRmnu3LmXFBczAAEAAAAAAEoZS7HckMObWXpFG4unIiIijO20tDSn7fL2lStXrtC/E0maNWuWcnJyFBISot69exe6n7p162ro0KGSpKVLlyonJ+eS4qIACAAAAAAAUKoU7+p79pfiluxVAG3X/Tt8+LDTdnn7atSo4VG/ziQkJEiSevTooYoVK15SXy1btpQkpaSk6O+//76kvrgEGAAAAAAAoJS5nFfAWoz/cRGH1e7/ipynrz8uLk4Wi0VWq1W//vqr4uLiHLb79ddfJUlXXHFFoWNav369du/eLUkaMGBAofspCswABAAAAAAAKE28vhzX+0eAzcNiscjtf/mOK/KbgHhYAIyIiFCLFi0kSV9//bXDNgcPHtSOHTskSTfccEOhfy15N/+oXbu2brzxxkL3k2fjxo2Sci9Lrly58iX1xQxAAAAAAPAjZSxlijsEAEXMYvXxLTaKYDah0y59NEXQm5Dvv/9+bdy4UZ988oleeukl1alTx27/O++8I6vVqpo1a6pjx46FiictLU3z58+XJPXt21cBAa7n3FmtVpc3Mvnjjz80ZcoUSdLtt9/utj93mAEIAAAAAABQmvhqBmDAhcdlmLHn8zG9KAE+9NBDatCggVJTU9WlSxf99NNPkqT09HS99dZbmjx5siTp9ddfV9myZe2OrVevniwWi9s7+i5YsEApKSmS3N/9V5LmzJmjXr166csvv1RycrLx52fPntUnn3yiNm3a6MSJE4qIiNCoUaM8fq3OMAMQAAAAAACglCncGoCXceFAd+xCKcS0QC9eSnBwsBYtWqROnTrpp59+UuPGjVW+fHmlpqYqOztbkjRs2LBLWrdv5syZkqQ2bdooJibGbfvs7GwtWLBACxYskJR7qXJwcLBOnjxp3PG3WrVq+vTTT9WwYcNCx5WHAiAAAAAAAEBp40EFsASV+9ywj7QobiRy5ZVX6ueff9Zbb72lxYsX688//1SFChXUtGlTDRkyRD169Ch033/++adWrlwpybPZf5LUsWNHvf7661q/fr2SkpKUnJys06dPKzIyUldccYVuu+02PfTQQ6pUqVKh47JlsVqtl+sGLXDDdsrnpYqIDPNZXwAAAAAAlBZnT6b5rK8qVar4rC9fSvxjm4KP5xTq2HvXvODjaC7dJ+3fKNRxzZo183Ek/osZgAAAAAAAAKVIUJmykjILdWzpmRUIX6IACAAAAAAAYBKu7jwL/0UBEAAAAAAAoJSJX/dioY4riQXAwryWPtd0VzNxCbCnKAACAAAAAACUMiWwjndZmf31e4sCIAAAAAAAQClikW9n8hXn7WEL/zKoAHqDAiAAAAAAAEBpYjH+xzfd2XVltd/0eZ2Nwl1xoAAIAAAAAABQyhTdJbAWh5slDZcAe4cCIAAAAAAAQKliKbabeVg9uF74csRmKcnVyRKIAiAAAAAAAAA8UhLvIgz3KAACAAAAAACUMqYvxJn85XuLAiAAAAAAAEAp4uN7gHgwnmeDWVWMtxOGSxQAAQAAAAAAShNLyZwBeDnX5SuJr78kCyjuAIDL7cCBP/TMU8+q8ZVNVLl8VdWsWlttWrXT2NHjlJaW5rNxli9brrt79VZU3RhVCItUVN0Y3d2rt5YvW+5xH1lZWfrg/Q91Q4ebVKd6XUVGVNYVsVdp6OBh2vHrDp/FCnMhB2B25ADMjhyAmXH+w59YfP2wWIr+4cN44R2L1ZPbt+CySE5O9llfEZFhPuvLnyxd/JUG9huklJQUh/tjYmP0xaLPFRUdVegxcnJyNOSRoZo5PcFpmwGD+mvytEkKCHBeg09OTlaPLndoy+YtDvcHBwdr3MSxGjCof6FjhfmQAzA7cgBmRw7AzDj/zePsSd8Vc6tUqeKzvnxp65FfNXDRC5fUR3EX0S61GHXfVV30dJsHfBKLGTAD0EunTp3SnDlz9Pjjj+vee+/VnXfeqQcffFBvvvmmvv322+IODy5s37Zdfe7rq5SUFEVEROiV10Zp5drvtGzFUg18YIAkafeu3erZrZfOnDlT6HFeHjnKeMO/pkljJXw8U2u/X6OEj2fqmiaNJUkzPpqpUS++4rSP7Oxs3dPrXuMNv3vP7lq45AutSVytMeNHq1q1qsrMzNTQwcO8+hYR5kYOwOzIAZgdOQAz4/yH/7HIYpGXD/vZeIXowKePgjMEve8GnmMGoBc2btyo8ePHKzU1VZIUFBSkMmXKKD09XZJUvXp1/ec//yl0/8wALFo3Xn+z1q9br8DAQH2zcoVaXdfSbv/Y0eP0wrMjJUkvvPi8Rr7s/bcpu3ftVtP/a66srCw1bd5U/1u5QqGhocb+tLQ03dSps7Zu3qrAwEBt/2Wrw28YE2Yk6JEHH5UkPTz4IY2fNM5u/949e9W6RVulpKQoKjpK23/J7Q9whRyA2ZEDMDtyAGbG+W8u5pgBuEMPLLm0GYCl3b1XddG/rhtU3GGUGswA9ND27dv19ttvKzU1VR07dtTkyZP12Wef6b///a/mzp2rl19+WR06dCjuMOHED5s2a/269ZKk/gP7FXjDl6ThTz6uuEZxkqQpk6bq/PnzXo8zeeIUZWVlSZLGjh9j94YvSWFhYRo7foyk3DU9Jk2Y7LCf8WMnSpIqVaqkN99+o8D+qOgoPfXMCEm5HwAWfrnI61hhLuQAzI4cgNmRAzAzzn/4o6ycLDlaGe+yrONXTI/8r3X/yYPF9vMvjSgAeiA9PV0TJ05UVlaW7rjjDj3xxBP65z//aeyPiIhQs2bNdP/99xdjlHBl8cLFxnaffn0ctgkICNB98fdKyr3Ue/XK1V6NYbVatXjREklSw7iGatmqhcN2LVu1UGzD2Ny4Fi1R/km4u3ft1s7fdkqSet11h8LCHM/m7NMv3thexJs+3CAHYHbkAMyOHICZcf7DH5UtE2i6S2Lzv9b6kbWLO6RShQKgB7799lslJyercuXKFPlKqcT130uSwsPD1bRZE6ft2rVvZ2x/n7jBqzH2/75fRw4fudBPW5dt8/YfPnRYB/YfyBdrorHd1kU/1atXV0xsTKFihfmQAzA7cgBmRw7AzDj/4a8CAgLcPCx++Lj4+iwWSlre4KflgVWrVkmSWrdurbJlyxZvMCiUpJ1JkqSo6AYu18doGBdrbO+8cIynftux09jO+1bPGdv9ed/wOeqnoZt+8vYf/POgsTYl4Ag5ALMjB2B25ADMjPMf/srrm344uGS4JD8cXwpsnhmPvlYkK4W++uqrkqQGDRooPj7eTeuS7dy5c9q3b58kKSoqSgcPHtR///tf/fjjjzp79qwiIyN19dVX64477rC7LBglR0ZGhnGDlVq1arlsGxkZqfDwcKWmpurgn96tJ3Do0CFju1Zt1+PUrnNxqvLBg4fs9h06dNjjfmpd6MdqterQwUNuP2zAnMgBmB05ALMjB2BmnP/wW4WogBVoXhLvCUtVr8gUSQFw1KhRslgseu2114qi+8vq2LFjxkKuhw8f1rRp05SZmamgoCAFBQXp+PHj+u6777R27Vo98cQTatvW9XRvXH5nzpwxtsMjIty2Dw8PU2pqqlJTzxZ6nIjwcNdj2Kzlcfas/ThnbftxE699P3zrB8fIAZgdOQCzIwdgZpz/8GeXXCqj2GYqRVIArFChglJSUhQdHV0U3V9Wtn8hf/bZZ6pQoYKeeeYZNW3aVAEBAdq3b58mT56sPXv2aPz48WrQoIFq1qxZjBEjv4yMTGM7KMj9JdxBwcGSpPT0DK/GybQbJ8hl2+ALY0hSRr5xMjIuPvemn/T0dI/ihPmQAzA7cgBmRw7AzDj/4a8s0oXLeotKUc4O9E3cRfv6/U+RrAGYN7XaH9YhsL0rU05OjoYPH67mzZsrICD3R9egQQONHDlSISEhOnfunBYt4g5MJU1IyMU3xnPnzrttfy4z9807NDTEq3GC7cY557JtZubFDwgh+cYJCbn43Jt+QkNDPYoT5kMOwOzIAZgdOQAz4/yHv7JKRbwEX/7F9mwfHg7udHFCH8YJjxXJDMDOnTtrx44dWrdunQYMGFAUQ1w2tn+R1qlTR02aNCnQplKlSmrfvr1WrFihH3/80Wlfc+bM0dy5c53uv/POO9WvX79LC/iC88p038gkypUrZ2ynnnU/lT81NU2SFB7u/hIBZ+OcdVP8Tk1LM7bzT+2PsO3n7Fm7DwGu+3F9qQHMixyA2ZEDMDtyAGbG+W9OkZGRxR1CkSv6GYAOBrR94mr9QGbmlUhFMgNw8ODBCgkJ0ccff6xff/21KIa4bCpVqmRs165d22m7vH3Hjx932iY1NVXHjh1z+khLS1OZMmV88sBFISEhqly5siT7xXkdOXnypDFz1XZxXk/YLip86KDrcWwXFa6db3HfWrUuXkLurp9DF/qxWCxuFwmGeZEDMDtyAGZHDsDMOP/NyVf/ri7p/7Yu1nv0OrxD74XHZYwDniuSAmB0dLQ++OAD5eTk6MYbb9TixYuLYpjLonz58l59e+CqAh8eHq5q1ao5fYSFhSk7O9snD9iLaxQnSdq7Z59xUxdHknbuunhMXEOvxmh0RZyxvStpl4uW9vvzYnPUT5KbfvL2165TW+FuFhuGuZEDMDtyAGZHDsDMOP/Nx1f/ri7R/7a2uCnCFeUjIN+jmOJgpqF3iuQS4FdffVWS1LFjR33zzTfq0aOH6tatqzZt2qh27doerU/w0ksvFUVohXLNNddo5cqVOnjQ+a3g8/ZVq1bNaZv4+HjFx8c73Z+cnKyTJ08WPlAbEZFh7huZSOs212n9uvVKTU3V1i3b1KLltQ7brV2z1ti+rnUrr8aoV7+eatSsoSOHj2jtmnUu265bu16SVLNWTdWtVzdfrK0vtluzTnffc5fDPv766y/t3rW7ULHCfMgBmB05ALMjB2BmnP/m46t/V0tSlSpVfNaXb12eAphHIzhpVJS3EYH3imQG4KhRo/TKK6/of//7nywWi6xWqw4cOKC5c+fqnXfe0SuvvOL2UZJ06tRJkvTnn39q69atBfafOHFCa9askSQ1b978ssYGz3Tt3tXYnp0w22GbnJwczZ3ziSSpYsWK6tCxg1djWCwWde3WRZKUtDNJGzdscthu44ZNStqZlBtXty4FZo3GxMYY3wR+Pn+B0mzW9rA1O2GOsd2tRzevYoX5kAMwO3IAZkcOwMw4/+GPHN2nw5ePAItFAZc4Q+9iH0UXJzxXJAVAKffuuXmP/M/dPUqaxo0bq1mzZpKkCRMmaMuWLcrJyZEk/f7773rjjTeUkZGhcuXKqXv37sUZKpy4tkVztWnbRpI0c3qCNny/sUCb8WMnaOdvOyVJQ4Y9qrJly9rtX7NqjUIDwxUaGK4HBz7kcJyhjw0x1ol4cvgIpaen2+1PT0/Xk8NHSJICAwM19LEhDvsZ/uRjknKLy88/O7LA/n1792n022MkSVHRUerOmz7cIAdgduQAzI4cgJlx/sNfWXz5X4HLa+Wzh/36gL79D54rkkuAV65cWRTdFqsRI0Zo5MiR2rdvn1555RUFBQUpMDDQ+EYmIiJCzz33nN1NQ1CyjB73jjq1v1Hp6enqems3Pf3sU2p/fQdlpKdr/rzP9NEH0yXlfuv2+IU3XW/FxMboiRHDNfqdMdq6eas6tb9BT/7rSTVo0ED79u3T2HfHavu2HyVJT4wYruiYaIf9xPeNV8KM2fo+8Xu9P/V9Hf3rqAYO6q+KkZHa/MNmvfXGW0pJSVFAQIDGjHtXgYFFksrwM+QAzI4cgNmRAzAzzn/4o0u6C3Bx1c7yj3tJc8AoAHrDYi2JU+5KqPPnz2vp0qVas2aNDh06pOzsbFWtWlXNmjVTz549jbtLFVZycrKPImUNQGeWLv5KA/sNUkpKisP9MbEx+mLR54qKjiqwb82qNep8462SpPi+9+uD6f9x2EdOTo4efXiIEmbMchpH/4H9NOW9yQoIcD4JNzk5WT263KEtm7c43B8cHKxxE8dqwKD+TvsA8iMHYHbkAMyOHICZcf6bx9mTji+dLoySugbgj8d2ath3r3ncvrTMlrN6URG8M/YWPda0TxFG41/4qsALZcuWVY8ePdSjR4/iDgWFdHvX27Rp20ZNmThFXy9brkMHDykoKEgNohvojl49NXjIIwoLu7TiaUBAgN77YJp69Oyujz6coS2bt+jv5L9VuUplNWveTA88OFCdb+3stp8qVapo1brvNP3DGfrvJ/OUtDNJqampqlGzhjp2ul5Dhj2qK6684pJihfmQAzA7cgBmRw7AzDj/4VcslzgDsITyplCZleP8rt4oiBmAJQgzAAEAAAAAuDRmmAG45egvGrH67eIOo1hd+4+r9W6Hp4s7jFLjss0APHjwoHbs2KETJ07o3Llz6tu37+UaGgAAAAAAwG+UDSirAD+cAeiNuhVqFncIpUqRFwCnT5+uMWPGaOfOnXZ/nr8A+MYbb2j16tWqU6eOPvroo6IOCwAAAAAAoNTy7BJgf7ro05LvmbkLoN4qsgJgenq67rzzTn399deSJNsrjR2dpM2bN9eLL74oi8Wip556So0aNSqq0AAAAAAAAEotizy9B67/Fsn895UVjSIrAPbt21fLli2TJNWrV0/33nuvTp48qffee89h+5tuuklVq1ZVcnKylixZQgEQAAAAAADAEZ/cBKSkzQ708vVQAfSK8/uOX4Jvv/1Wn3/+uSwWi+69914lJSXpjTfeUOfOzu92FBAQoJtuuklWq1Xr1q0rirAAAAAAAAD8gsVyqQ9LCXt4GX9x/wJKmSIpAM6cOVOS1KBBA82cOVNly5b16LjGjRtLkn777beiCAsAAAAAAKDUs8iigCJ+5F1m7JuHxecxswagd4rkEuD169fLYrGob9++Hhf/JKlmzdw7uPz1119FERYAAAAAAIBfKOqbAOcvsBXmguEiDZH6n1eKpAB49OhRSVLDhg29Oi4kJESSlJGR4fOYAAAAAAAA/MXlngFnO5qzYuDljIj6n3eKpABYpkwZSVJOTo5Xx504cUKSVLFiRV+HBAD4//buOzyqauvj+G8mgVRKILSAgoTQFQWld1AsgCAqFpSmXqkieK/3CiqW915UmghWpChWrCAgNoqAlIBYgAQQQaoQWkiFJPP+ETKkzExmkpkkc873k2d8Djl79l6TnOXAmn32BgAAAGAYvp4B6FYMJh3bH/mkAFijRg3t27dPe/fu9eh5W7dulSRddtllvggLAAAAAADA/3llF+BiDV/6ykIF1I/4ZBOQ9u3by2az6YsvvnD7OcnJyVq8eLEsFos6duzoi7AAAAAAAAD8nnc36CjkUZQdfUsoNrjPJwXAO+64Q5L0888/a968eW49Z8SIETp9+rQk6d577/VFWAAAAAAAAIZQpMKcGw9r/ofk+SPX830VJzMAPeOTAmDv3r3Vtm1b2Ww2Pfzww/rf//6npKQkh21//vln3XLLLXrvvfdksVh00003qXXr1r4ICwAAAAAAwBAs3vhyUPDzdUHx0izB4n7BEz5ZA1CSPvroI7Vp00bHjh3TpEmT9Nxzz6lGjRr289ddd50OHTqk48ePS5JsNpsuv/xyLViwwFchAQAAAAAAGEJRJ8CVduHMku/A2Y7C8C6fzACUsjfy2LRpk30mYFpamv766y/7IpXbtm3T33//LZvNJpvNpjZt2mjDhg2KjIz0VUgAAAAAAAB+L2f2XlFm4fnqllyvzxB05zZguM1nBUApuwi4YcMGffnll7rttttUtWpVe8HPZrMpPDxct9xyiz7++GP99NNPioqK8mU4AAAAAAAAhuBqc4z8a/KV6KYhxXy4G3vy+eTi/xBNxGe3AOfWp08f9enTR5KUkpKiM2fOKDw8XBUrViyJ4QEAAAAAAAzjgi1DVpPMgHP2KlMz0ko0Dn9XIgXA3EJDQxUaGlrSwwIAAAAAABhCeWugApwUAM2wpp5FUo0wlpDzhE8KgPHx8WrUqJEvugYAAAAAADA9Z2vgFfyuv5cE3X2dcMUnawA2bdpU3bt310cffaQLFy74YggAAAAAAABT8mxdPX//cvy64BmfzAC02Wxas2aN1qxZo6pVq2ro0KF68MEH1aBBA18MBwAAAAAAYCLsgmv21+8pn8wA7NKli32n34SEBE2dOlWNGjVSz5499cknnygjI8MXwwIAAAAAABifRbL64GHJ87Dl+7N3H8WOtbR/B37GJwXAVatWKS4uTo8++qiqVq1qLwauWrVKAwcOVJ06dfTEE0/ozz//9MXwAAAAAAAAhmWx+ebWXmuehzXfn7378M7NwXCXTwqAktSwYUNNmzZNhw8f1qJFi/LMCjx+/LheeOEFxcTEqFevXvr888+VmZnpq1AAAAAAAACMw5J9C2zJPzyZ5efbWIpS/ztx4oQmTJigmJgYhYSEKDIyUjfccIO++OKLIv0a9u/f71asn3zyict+tm/frnvvvVe1a9dWUFCQ6tSpo0GDBumXX34pUlyOWGw2W4ltB7N792698cYbeuedd3Ty5MnsAC7es12jRg0NHz5cDzzwgOrWrVtSIZUpCQkJXusrPCLUa30BAAAAAOAvkk6neK2vyMhIr/XlTfGn9+q/W2aWdhil6obLu+rexre73X7Hjh3q3r27jh8/LkmqUKGCUlJS7BPSxo4dq5dfftmjGPbv368rrrhCUva1EhAQ4LDd3Llz1bt3b4fn3n//fQ0ZMsS+iW6lSpV09uxZSVL58uX1zjvvaODAgR7F5YjPZgA6kn9WYOfOne2zAo8dO6b//ve/io6O1i233KIlS5YoKyurJMMDAAAAAAAo8yySrBaLqR+ebAKSnp6uvn376vjx42revLm2b9+uxMREJSYm6vnnn5fFYtGsWbM0f/78Iv9OtmzZomPHjjl8OCv+7dixQ0OHDtWFCxd055136siRIzpz5oyOHDmiO+64Q+fPn9fgwYMVFxdX5LhylGgBMEf58uV1zz33aPXq1dq1a5eGDRsmKXv34KysLH399dfq37+/6tWrp5deekkpKd6r3gMAAAAAAPg3T2/H9dbGHa4KciUbiyfefPNN7du3T6GhoVq2bJlatGghSQoNDdXEiRM1cuRISdKkSZPsM/FKwlNPPaXz58/r6quv1nvvvadatWpJkmrVqqX3339fV199tdLT0/XUU08Ve6xSKQDm2LRpk1588UV99NFHl+7hluyzAg8dOqR///vfatCggb7++uvSDBUAAAAAAKDM8M42Gi6+PCzy5Z+dZ7H4OkL3LVq0SJJ099136/LLLy9w/l//+pcsFouOHDmiVatWeek35NrZs2f11VdfSZImTJigwMDAPOcDAwM1YcIESdKSJUt07ty5Yo1X4gXAc+fO6dVXX9XVV1+t9u3ba8GCBUpOTpbNZlOtWrX09NNPa/369Ro7dqwiIiLstwf37dtXmzdvLulwAQAAAAAAyhyf32ZbjNKcfbdfH8bn7i3ASUlJ2rJliyTpxhtvdNjm8ssvV5MmTSRJ33//vXd+QYVYt26dzp8/L0nq1auXwzY5309PT9e6deuKNV6JFQA3btyoYcOGqVatWhozZox+++035ew/0qNHD3366ac6cOCAnn76abVr104zZ87UwYMH9cwzzyggIECZmZl67rnnSipcAAAAAACAMsl7t9JaSunhhdjd/Fnt2rXLXn9q3ry503Y553bu3Fmk38mdd96piIgI+y6+AwYM0LJly5y2zxmnRo0aqlatmsM21apVU/Xq1YsVV47AwpsUXWJiot599129+eab+v333yXJ/kOPiIjQkCFD9PDDDysmJsbh80NDQ/Xkk0/q5MmTmjVrlrZu3erLcAEAAAAAAPyCZzfB5n5eWZA3CpsPRzp69Kj9OCoqymm7nHO523tiy5YtqlixogICAnT48GF99tln+uyzz3THHXdo0aJFKl++vMO4XMWUc/748eNFjiuHT2YA/vTTTxo6dKiioqI0duxY/f777/Z1/a677jrNmzdPhw8f1rRp05wW/3Lr2rWrJOnvv//2RbgAAAAAAAB+xd3Zdo5unS1rj6LG6I6kpCT7cWhoqNN2Oec8WWsvODhYI0eO1Nq1a5WYmKizZ88qJSVFv//+u+677z5J0uLFizV69GincbmKqahxOeKTGYAdOnSQxWKxz/YLDQ3VXXfdpREjRqhVq1Ye9xcSEuLtEAEAAAAAAPxSRlaG8xldZWOKX7HkeQlOpgeeSj1VEqG4VLNmTc2ZM6fA95s1a6Z33nlH1apV0/Tp0zV37lxNmDBBjRo1KoUos/nsFmCbzaZGjRrp4Ycf1pAhQ1SpUqUi93XllVdq/vz5XowOAAAAAADAPwVaAt2eAef3nLzMoHJBbj09PDzcfpySkqKKFSs6bJeSkiJJqlChgmfxufDss8/qtddeU2pqqr766qs8BcCcuHLGdcZbcfmkAHj77bdrxIgR6tatm1f6i4qK0uDBg73SFwAAAAAAgD/Lvm3W1apuvlxVrzRdqgZWLOdeQSz3GntHjhxxWgA8cuSIJKlWrVrFiC+vsLAwNWvWTLGxsdq3b5/DuHLGdcZbcfmkAPjxxx/7olsAAAAAAAAUuguuk7M256eMqnHjxvZl6nbs2KHGjRs7bLdjxw5JUtOmTUskrpxx/v77byUkJCgyMrJAmxMnTuj48eNeicsnm4AAAAAAAADANyxyfxOQPA9r6W/44b2Hez+r8PBwtW7dWpL09ddfO2xz6NAh7dy5U5LUo0cPb/yKJEnJycn2wuIVV1yR51zHjh3tOwOvXLnS4fO/+eYbSVJQUJA6duxYrFgoAMJ0Dhz4S48/9m+1aHaNqlaspqhqddShbSdNnzqj0HvvPbFyxUrdOeAuRdeNUaXQCEXXjdGdA+7SyhWOE9uRjIwMvfXGXPXocr0uq1lXEeFV1bRhc40eMUY7d+z0WqwwF3IAZkcOwOzIAZgZ1z+MwyKrlx72L9vFRyl8FTVud917772SpA8++EAHDx4scP7FF1+UzWZTVFSUPFnOLmfzW2cmT56s1NRUWSwW9e7dO8+5ihUr2r83ffp0ZWZm5jmfkZGh6dOnS5L69u1b7DUALbbCovWCo0ePauPGjTp06JASExMLvChHnnrqKV+HVeYkJCR4ra/wCNfbSJvVsqXLNWzwcCUmJjo8H9MwRp8v+VTRDaKLPEZWVpZGPTxaC+YtdNpm6PAhmv3aK7JandfgExIS1K/3bdoau9Xh+aCgIM2YNV1Dhw8pcqwwH3IAZkcOwOzIAZgZ1795JJ32XjHX0W2ZZcG+s/s0+9fXfdJ3Sawe6I27kDtFdVT/6L5utU1PT1fTpk21b98+XXXVVXr33Xd11VVXKTU1VS+//LKeeOIJ2Ww2zZs3T0OHDs3z3Hr16unAgQMaPHiwFixYkOdcly5d1KtXL/Xu3VtNmzZVYGD2Sns7d+7U1KlT7RvaPvDAA3rrrbcKxLVjxw61bNlS58+f18CBAzVz5kzVrFlTx44d07hx4/TRRx8pKChI27dvd3rrsrt8WgDcvn27/vWvf+n777/3+LnuFAmNhgKgb23/ebu6d+6p1NRUhYeH65+PP6bOXTsrLTVViz/+RPPmZidmTMMYrd/0Y5Gr608+8ZSmvjhNknT1NS306GOPqn79+tq3b59mTJ2h7T//Ikn65+OP6dn/e8ZhH5mZmbqh+43asH6DJOnW/rdq2PAhiqhSRVs2b9EL/31Bx4+fkNVq1WdffqJeN/UqUqwwF3IAZkcOwOzIAZgZ17+5mKMA+Kfm+KgAmJ8t/4EH1TtfLjfYKaqD+rlZAJSyi23du3e3r6lXsWJFJScn2+tPY8aM0axZswo8z1UBMOecJAUGBqpSpUpKTU3NM6P4nnvu0fz58+23++b3/vvva8iQIbpw4YIsFosqVaqkM2fOSJLKly+vhQsX6q677nL7dTrjswLg8uXLdfvttys9Pb3QKZE5izHm/jMFwOKhAFhQz643aP269QoMDNS3q75R23Zt8pyfPnWGJv57kiRp4pNPaNLTEz0eY8/uPWp51bXKyMhQy2tb6rtV3ygkJMR+PiUlRdd376VtsdsUGBio7b9vc/gJ48L5C/XwgyMlSf8Y8ZBmvjIjz/k/9v6h9q07KjExUdENorX99232TxoAZ8gBmB05ALMjB2BmXP/mYpYC4Om9p4r03A9SFxd53MIqSJYCB+65O+SOooSjVq1aedT++PHjmjJlipYuXaqDBw8qLCxMLVu21KhRo9SvXz+Hz3FVAFy8eLG+++47bdmyRUePHtWpU6cUGBioqKgotWvXTkOHDnXrluLt27frxRdf1Jo1a+wbgnTt2lX/+te/1KJFC49eozM+KQCePHlS0dHRSkxMVGhoqMaPH6+OHTvqxhtvlMVi0XPPPaerr75af/75p1asWKEVK1ZIkgYPHqzBgwdLyp5GaTYUAH1ny+ZYdW6ffU098NBwvfJqwap+VlaWWrW4TnG74lS5cmX9dXS/ypUr59E4j4wepzdfz57Wu3rdKrVp27pAm00bN6trx+z/ATh6Q5eka65spbhdcapSpYr27I9XaGjB3+dLL0zVUxOfliQt+vBdDbj9No9ihbmQAzA7cgBmRw7AzLj+zYcCoGsfpn7i5WiK766Q24v0PE8LgGbmk01AXn/9dSUmJspisejLL7/Us88+qxtuuMF+vnnz5rr55ps1atQoffXVV1q3bp1q1qyphQsXasuWLaYs/sG3ln651H583+D7HLaxWq26Z9DdkqQzZ85ozao1Ho1hs9m0dMlXkqRGjRs5fMOXpDZtW6tho4bZcS35qsAM2T279yhuV5wkacAdtzl8w89+HYPsx0u+WOJRrDAfcgBmRw7A7MgBmBnXP4yoOLfWWizeeFhkzbUbb3Ef8D2fzBP+5ptvZLFYdOONN7q1fXK7du20YsUKXXfddXriiSfUs2dPXX311b4IDSa1Yf1PkpQ9vbfVNU7bdercyX7804aN6nlDT7fH2P/nfh09cvRiP6635+7UuaN2x+/WkcNHdGD/AdW7ol6uWDfYjzu66KdmzZqKaRijPbv36KcNG92OE+ZEDsDsyAGYHTkAM+P6hyFZpI/TPi3iU4tQcbNlF/0chGH/r72gXYTui/JaOtRqL+b/uc8nMwDj4rI/sejZ0/H/MDMyMgp876qrrtLAgQOztzp3sDMKUBzxcfGSpOgG9V2uj9GocUP7cdzF57hr1844+3HOp3rO5D6f8wmfo34aFdJPzvlDBw8pOTnZ7VhhPuQAzI4cgNmRAzAzrn8YU87sO989rLkf1sJn+lmt2e1ynuPr+BwVJOGcTwqAObuV1KlTJ8/3c9ZQyL0bSm5du3aVJP3www++CAsmlZaWZl9fsXbt2i7bRkREKCwsTFL2G6knDh8+bD+uXcf1OHUuu5Qbhw4dznPu8OEjbvdT+2I/NptNh/P1A+QgB2B25ADMjhyAmXH9w8gsXv7KU/DzdgHR4u1oKf55yicFQGdbG+dspX7kyBGH53PWN3B2HiiKc+fO2Y/DwsMLbR8Wln0dJicnFXmc8It/cXA6Rq61PJKS8o6TlLufQuLN2w+f+sExcgBmRw7A7MgBmBnXP4zMW2v5XZpN59tHwSJhMWMvuR+1IfikAFirVi1J0qlTeXekqV+/viTp559/dvi8vXv3SnJ8izBQVGlp6fbj8uUL38mrfFCQJCk1Nc2jcdLzjOO4CJ4j6OIYkpSWb5y0tEt/9qSf1NRUt+KE+ZADMDtyAGZHDsDMuP5hVBdLap5/ebsI56Xio6WIMwThPp8UAJs3by7p0lqAOVq3bi2bzaZly5bpxIkTec6lp6dr7ty5kqS6dev6IiyYVHDwpTfG8+cvFNr+fHr2m3dISLBH4wTlGee8y7bp6Zf+ghCcb5zg4Et/9qSfkJAQt+KE+ZADMDtyAGZHDsDMuP5hZEW6Nbcsf3n4Wqj/ecYnBcBOnTrJZrPpxx9/zPP9u+/O3lY9OTlZ119/vVasWKHdu3dr+fLl6ty5s/766y9ZLBb17t3bF2HBpHJuPZek5KTCp/InJ2evURkWVvgtAs7GSSpkEd7kXOtg5p/aH567n0LizduP61sNYF7kAMyOHIDZkQMwM65/GFVGVoYc3mjrhbX7yuTDwWtNSE0orR+/X/JJATCngLd9+3bt27fP/v0OHTqob9++stls+u2339S7d281adJEffr0UWxsrCQpMjJSEyZM8EVYMKng4GBVrVpVUt7FeR05ffq0fQet3IvzuiP3osKFLcKbe1HhOvkW961dO8rtfg5f7MdisRS6SDDMixyA2ZEDMDtyAGbG9Q+jKhdQTvk32nBWKDPEw0FRsEpQhDd/pIbnkwJgTEyMFi5cqDlz5uSZlixJ7733nm666SbZbLYCj8svv1wrVqxQjRo1fBEWTKxxk8aSpD/27nO5xmR83O5Lz2ncyKMxmjRtbD/eHb/bRcu853Nic9RPfCH95Jyvc1kd+45lgCPkAMyOHIDZkQMwM65/GFWAxSprrkdArofVoI/cr7FcQOHreuISnxQAJem+++7TP/7xDzVp0iTP98PCwrRs2TKtW7dOTz31lB566CE9+uijev/997V79261bNnSVyHBxNp3aCcp+/bzbVsdb0IjST+uvXTberv2bT0ao94V9VQrqtbFfta5bLvux/WSpKjaUapbL++al+07tL/UzkU/x44d057de4oUK8yHHIDZkQMwO3IAZsb1D6Nydcus1dHsQD98FPY64D6fFQAL0759e02ePFmvv/66pk2bprvuuqvQXY6Aoupzax/78bsL33XYJisrS+8v+kCSVLlyZXXp1sWjMSwWi/r0zb79PT4uXps2bnbYbtPGzYqPi8+Oq2/vAv/TimkYY/8k8NPFnykl19oeub27cJH9uG+/vh7FCvMhB2B25ADMjhyAmXH9w4gsHn5Z8z3K4lf+GAuLE54ptQIgUJKua32tOnTsIElaMG+hNv60qUCbmdNfVtyu7J2rR40ZqXLl8k4nXrt6rUICwxQSGKYHhz3kcJzRY0cpICBAkjR+3ASlpqbmOZ+amqrx47LXuAwMDNTosaMc9jNu/FhJ0qlTp/TEvycVOL/vj32a+sI0SVJ0g2jdyps+CkEOwOzIAZgdOQAz4/qHUXlzZp3VolJ4FHOWIkVAj1AAhGlMnfGiQkJClJGRoT439dVLU17Spo2btWbVGo0eMUYTL765xjSM0SMX33Q9FdMwRo9OGCdJ2ha7Td0799Dijz/R1thtWvzxJ+reuYe2xW6TJD06YZwaxDRw2M+g+wepXfvsWxXeePUN3X3nvfp25bfasjlWr815Xd06dVdiYqKsVqumzXhJgYGBRYoX5kIOwOzIAZgdOQAz4/qHEXn3dlvrpYev5wjaxypezNT/PGOx2Wy2oj552LBh3ozFzmKx6O233/ZJ32VZQoL3trAOjwj1Wl9Gsmzpcg0bPFyJiYkOz8c0jNHnSz5VdIPoAufWrl6rXj1vkiQNuv9evTXvTYd9ZGVlaeQ/Rmnh/HecxjFk2GDNeX22rFbnNfiEhAT1632btsZudXg+KChIM2ZN19DhQ5z2AeRHDsDsyAGYHTkAM+P6N4+k045vnS6KyMhIr/XlTX+d+0uLdi8qvKFXFLlsdJFvKnXXVb9O1192vU/6NqJifVSwYMECny26aMYCIHzvlj43a/PPmzRn1hx9vWKlDh86rPLly6t+g/q6bUB/jRj1sEJDi1c8tVqtev2t19Sv/616e+58bY3dqpMJJ1U1sqpaXdtKDzw4TL1u6lVoP5GRkVq97gfNmztfH33wseLj4pWcnKxaUbXUrXtXjRozUk2bNS1WrDAfcgBmRw7A7MgBmBnXP4zEYsl+lNBoef/oTj2Q2XllTrFmALr6xKI4LBaLMjMzfdJ3WcYMQAAAAAAAiscMMwAPJh3UeyU2A7BsurbaterJDEC3FWsG4J9//umtOAAAAAAAAOAmX92R6dbYF6f42Yp9e3BxgmCaoSeKVQCsW7eut+IAAAAAAACAGyySrCV5n62ToQrsxFuC9UB2tfUM2wUBAAAAAAD4mdKcAehUiYZUBl9/GUYBEAAAAAAAwK9YCs6+K36XvufFGYJef/0GRwEQAAAAAADAz5TJGYCF8WbIfvjySxMFQAAAAAAAAH9iKcIMuLJeMPNwdiAzAD1DARAAAAAAAMCPWOTOJrh+ViArEG5hFcFS3IHYD1EABAAAAAAA8COZWVkObgH2s4JfofK/nrwFv9Ppp0ouFAOgAAgAAAAAAOBHAq1WBViseb5n/PlweQuCkSGRpRSHf6IACAAAAAAA4FcK7gLser6cMbh+xXCFAiAAAAAAAICfKWwX4AIFQT+sCLp6iWwC4hkKgAAAAAAAAH7G0wJY/mJaWawHUtLzHQqAAAAAAAAAfsQiS6EzAAvvIxdb6RQEi/MSivv6zYYCIAAAAAAAgJ/x6i2wlrwFQZtPyoHctFuaKAACAAAAAAD4GV8W0/KX6opTDvRVnBQTPUMBEAAAAAAAwJ9YSvYWWE92GC6pqJhP6BkKgAAAAAAAAH7EotIrgNmUt8hHGc4/UAAEAAAAAADwK8XfBKQYI+f7TunsJ8wmIJ6hAAgAAAAAAOB3SqYAVvgo3lsvEL5DAbAMsVgsslqtpR0GAAAAAAB+KyAgoLRDKBG+nAFXnJ5LbH4gMwA9QgGwDAkJCVFoaKhX+krLTPFKPwAAAAAA+JOIiIjSDsHnLPLu/D9fridYsCDonZIg5T/PUAAsQ1JTU5Wenu6VvkIqBnmlHwAAAAAA/Mnp06e91ldZLiYWp2hXmuvn5Y7bZitOMZASoCcoAJYhNptNmZmZpR0GAAAAAAB+yxz/rvZsE5CyWirL/xo8KQeW1ddUVlEABAAAAAAA8DOuZgD6a3HMk/UDM7PMUOj1HgqAAAAAAAAAfiTLllVg9py/Fv1ccVUQTMlMLslQ/B4FQAAAAAAAAD8SYA1QgMVa4Pve2mCjrMpdEKxcvnJpheGXKAACAAAAAAD4GUe3AOf/npEKggVfrxHnPPoOBUAAAAAAAAA/4075q2BB0IMnl7R8tcrCQiyLL6EsowAIAAAAAADgRyyS5MEuwHme54CtkPMlwtPBi/D6zYwCIAAAAAAAgJ9xtQuw533lZXPwPfg3CoAAAAAAAAB+xVJgF2Dv9l72ebMAagYUAAEAAAAAAPxMSRfAPNlQpCRio/znGQqAAAAAAAAAfqakC4C5x3NWDCzZmCgBeoICIAAAAAAAgB+xWOTTW4DdjqMUi3Bl4OX7FQqAAAAAAAAA/sRWCsU3S+5DJ2O7f5ewF1AB9AQFQAAAAAAAAH9isZTgDDgPBrI39X0lkPKfZygAAgAAAAAA+BnfzQD0Rr/5+yjRqYFwwFraAQAl7cCBv/T4Y/9Wi2bXqGrFaoqqVkcd2nbS9KkzlJKS4rVxVq5YqTsH3KXoujGqFBqh6LoxunPAXVq5YqXbfWRkZOitN+aqR5frdVnNuooIr6qmDZtr9Igx2rljp9dihbmQAzA7cgBmRw7AzLj+YRQWZRcAi/VlyXlY8z0sPng46N8LX3CfxWazUYYtIxISErzWV3hEqNf6MpJlS5dr2ODhSkxMdHg+pmGMPl/yqaIbRBd5jKysLI16eLQWzFvotM3Q4UM0+7VXZLU6r8EnJCSoX+/btDV2q8PzQUFBmjFruoYOH1LkWGE+5ADMjhyA2ZEDMDOuf/NIOu29Ym5kZKTX+vKmk2kntP7v1aUdRqmqXyFGzatcXdph+A1mAMI0tv+8Xffdc78SExMVHh6uZ56brFU//qAV3yzTsAeGSpL27N6j/n0H6Ny5c0Ue5+lJk+1v+Fdf00IL31ugH39aq4XvLdDV17SQJM1/e4EmP/mM0z4yMzM1cMDd9jf8W/vfqi+/+lxrN6zRtJlTVb16NaWnp2v0iDEefYoIcyMHYHbkAMyOHICZcf3DiLwzh85/v+AZZgCWIcwA9K2eXW/Q+nXrFRgYqG9XfaO27drkOT996gxN/PckSdLEJ5/QpKcnejzGnt171PKqa5WRkaGW17bUd6u+UUhIiP18SkqKru/eS9titykwMFDbf9/m8BPGhfMX6uEHR0qS/jHiIc18ZUae83/s/UPtW3dUYmKiohtEa/vv2f0BrpADMDtyAGZHDsDMuP7NxSwzAH86vra0wyhVUaF11DKyTeENczlx4oSmTJmiJUuW6NChQwoLC1PLli01cuRI9evXz+MYEhMTtWTJEn3zzTeKjY3VgQMHlJmZqZo1a6p9+/YaMWKEOnXq5PT5Q4YM0cKFzmcMS1KzZs30+++/exxbfswAhCls2Ryr9evWS5KGDBtc4A1fksaNf0SNmzSWJM155VVduHDB43Fmz5qjjIwMSdL0mdPyvOFLUmhoqKbPnCYpe02PV16e7bCfmdNnSZKqVKmi/77wfwXORzeI1mOPT5CU/ReAL79Y4nGsMBdyAGZHDsDsyAGYGdc/jCjLllXqM/BK+ysrK8ujn9mOHTvUvHlzTZ8+XXv37lW5cuV05swZffvtt+rfv78eeeQRj38PrVq10n333ad3331Xu3btUlZWlgICAnTgwAF98MEH6ty5s/75z38W2k9wcLBq1Kjh8OGtIjQFQJjC0i+X2o/vG3yfwzZWq1X3DLpbknTmzBmtWbXGozFsNpuWLvlKktSocSO1advaYbs2bVurYaOG2XEt+Ur5J+Hu2b1HcbviJEkD7rhNoaGOZ3PeN3iQ/XgJb/ooBDkAsyMHYHbkAMyM6x9GFGANkNViNfUjtFyY2z+v9PR09e3bV8ePH1fz5s21fft2JSYmKjExUc8//7wsFotmzZql+fPne/R7uHDhgq666irNmjVLe/fuVWpqqpKSkhQfH6/bbrtNkjR16lS9/vrrLvsZOHCgjh075vCxevVqj2JyhgIgTGHD+p8kKXt6b6trnLbr1PnS1NyfNmz0aIz9f+7X0SNHL/bT0WXbnPNHDh/Rgf0H8sW6wX7c0UU/NWvWVEzDmCLFCvMhB2B25ADMjhyAmXH9w5jcnylnBMV9bW+++ab27dun0NBQLVu2TC1aZK/JGRoaqokTJ2rkyOzb7idNmuTRDOB33nlHv/zyi8aMGaPo6Oxb+i0Wixo2bKjFixera9eukqSXXnrJ7T59hQIgTCE+Ll6SFN2gvsv1MRo1bmg/jrv4HHft2hlnP875VM+Z3OdzPuFz1E+jQvrJOX/o4CElJye7HSvMhxyA2ZEDMDtyAGbG9Q9jcn87h9K+VdcbX8W1aNEiSdLdd9+tyy+/vMD5f/3rX7JYLDpy5IhWrVrldr+dO3d2es5qtWrw4MGSpH379un06dMeRu1dFABheGlpafYNVmrXru2ybUREhMLCsqcRHzp4yKNxDh8+bD+uXcf1OHUuq2M/PnTocJ5zhw8fcbuf2hf7sdlsOpyvHyAHOQCzIwdgduQAzIzrH8ZlkcVi7ocs7hUGk5KStGXLFknSjTfe6LDN5ZdfriZNmkiSvv/+e+/8ipR3E5mcNUJLCwVAGN65c+fsx2Hh4YW2DwvLXmcjOTmpyOOEh7leiyAs11oeSUl5x0nK3U8h8ebth0/94Bg5ALMjB2B25ADMjOsfRmWRMWb2Fe/LPbt27bKvt9m8eXOn7XLO7dy5s5i/nUvWrMleT7SwzTy+//57xcTEKCgoSJUqVVKrVq305JNP6u+///ZaLBQAYXhpaen24/LlyxXavnxQkCQpNTXNo3HS84xT3mXboItjSFJavnHS0i792ZN+UlNT3YoT5kMOwOzIAZgdOQAz4/qHkZV2+a0sfLnj6NGj9uOoqCin7XLO5W5fHIcOHbJv/jFkyJDsWYsu2u7fv19hYWFKSkrStm3b9Pzzz6tp06Zem5FIARCGFxx86Y3x/PnCF/M8n5795h0SEuzROEF5xjnvsm16+qW/IATnGyc4+NKfPeknJCTErThhPuQAzI4cgNmRAzAzrn8Yl6Xkb7t196ukbgF2U+6Zts521s59LveM3qK6cOGC7r77biUlJalu3br6z3/+47Bdy5Yt9eqrr+rAgQNKT0/XqVOndObMGS1atEi1atXSqVOn1K9fP+3evbvYMTlfARUwiAoVKtiPk5MKn8qfnJwiSQoLK/wWAWfjJBWyCG9ySor9OP/U/vDc/SQl5flLgOt+3N8CHeZCDsDsyAGYHTkAM+P6h5G5OwPOiwOWKSX++t1ks9n04IMPat26dQoODtaHH36oSpUqOWw7duzYAt+rUKGC7r33XnXs2FHXXHONTp8+rcmTJ+v9998vVlzMAIThBQcHq2rVqpLyLs7ryOnTp+07aOVenNcduRcVLmwR3tyLCtfJt7hv7dqXpiQX1s/hi/1YLJZCFwmGeZEDMDtyAGZHDsDMuP4B3/D0NtzSlLvQnpKrcJ5fzrncBf2iGDt2rBYuXKjAwEB9/PHHatu2bZH6qVu3rkaPHi1JWrZsmbKysooVFwVAmELjJo0lSX/s3edy5534uEvTahs3buTRGE2aNrYf7453PT039/mc2Bz1E19IPznn61xWx75jGeAIOQCzIwdgduQAzIzrH0ZkkUpl512rxSqrxVro90pmF2D3fla51/07cuSI03Y552rVqlXk38tjjz2m2bNnKyAgQIsWLVKfPn2K3JcktWnTRpKUmJiokydPFqsvCoAwhfYd2kmSkpOTtW3rz07b/bj2R/txu/aeVenrXVFPtaJqXexnncu2635cL0mKqh2luvXq5ou1/aV2Lvo5duyY9uzeU6RYYT7kAMyOHIDZkQMwM65/GJUHq/IV+cua78tbbb315Y7GjRvb1wzcsWOH03Y555o2bVqk38cTTzyhadOmyWKxaO7cuRo4cGCR+vEVCoAwhT63Xqq6v7vwXYdtsrKy9P6iDyRJlStXVpduXTwaw2KxqE/f3pKk+Lh4bdq42WG7TRs3Kz4uPjuuvr0LLF4a0zDG/kngp4s/czpF+d2Fi+zHffv19ShWmA85ALMjB2B25ADMjOsfxlQS5bXi3d5bVmILDw9X69atJUlff/21wzaHDh3Szp07JUk9evTw+LVOnjxZ//vf/yRJr776qoYMGeJxH45s2rRJUvZtyTnLGRQVBUCYwnWtr1WHjh0kSQvmLdTGnzYVaDNz+suK2xUnSRo1ZqTKlSuX5/za1WsVEhimkMAwPTjsIYfjjB47SgEBAZKk8eMmKDU1Nc/51NRUjR83QZIUGBio0WNHOexn3PjshUBPnTqlJ/49qcD5fX/s09QXpkmSohtE61be9FEIcgBmRw7A7MgBmBnXPwzJUjq3AJephwdFwHvvvVeS9MEHH+jgwYMFzr/44ouy2WyKiopSt27dPPpVTJkyRc8884wkacaMGXr44Yfdep7NZnN5/q+//tKcOXMkSbfccous1uKV8CgAwjSmznhRISEhysjIUJ+b+uqlKS9p08bNWrNqjUaPGKOJF99cYxrG6JHxBXficUdMwxg9OmGcJGlb7DZ179xDiz/+RFtjt2nxx5+oe+ce2ha7TZL06IRxahDTwGE/g+4fpHbts29VeOPVN3T3nffq25XfasvmWL0253V169RdiYmJslqtmjbjJQUGsqE3CkcOwOzIAZgdOQAz4/qH0VhUUnMAy/aXux566CHVr19fycnJ6t27t3799VdJ2YX5KVOmaPbs2ZKk559/vsAHAPXq1ZPFYnE4q+/ll1/Wf/7zH0nZhcBx48a5HdOiRYs0YMAAffHFF0pISLB/PykpSR988IE6dOigU6dOKTw8XJMnT3a7X2cstsJKjigxuX/hxRUeEeq1voxk2dLlGjZ4uBITEx2ej2kYo8+XfKroBtEFzq1dvVa9et4kSRp0/716a96bDvvIysrSyH+M0sL57ziNY8iwwZrz+myXFfyEhAT1632btsZudXg+KChIM2ZN19DhQ5z2AeRHDsDsyAGYHTkAM+P6N4+k0853evVUZGSk1/ryprPnT+uXk7FutfWkUFZW2FR4qap26OWKruT+hj07duxQ9+7ddfz4cUlSxYoVlZycrMzMTEnSmDFjNGvWrALPq1evng4cOKDBgwdrwYIFec5ZrVbZbDZZLBZVr17d5fifffaZ2re/tM7nggULNHToUPufw8PDFRQUpNOnT9t3/K1evbo+/PBDeTor0RE+KoCp3NLnZm3+eZPmzJqjr1es1OFDh1W+fHnVb1Bftw3orxGjHlZoaPGKp1arVa+/9Zr69b9Vb8+dr62xW3Uy4aSqRlZVq2tb6YEHh6nXTb0K7ScyMlKr1/2geXPn66MPPlZ8XLySk5NVK6qWunXvqlFjRqpps6ItTgrzIgdgduQAzI4cgJlx/cNIsmxZCjtSpUjPTal92svRFF/o4QiPn3NGSVIr99s3a9ZMv/32m6ZMmaKlS5fq4MGDqlSpklq2bKlRo0apX79+HseQM6fOZrPp77//dtn2/Pnzef7crVs3Pf/881q/fr3i4+OVkJCgs2fPKiIiQk2bNtXNN9+shx56SFWqFO33nB8zAMsQZgACAAAAAFA85pgBeEZ7f/ujSM9NrX3Gu8F4QcjhykV6XqtWHlQATY4ZgAAAAAAAAH6kODf1Wi1sB2FGFAABAAAAAAD8zPk659xq5856eqUtvY7jtTkl52sY1gyt7atwDIkCIAAAAAAAgEG53gTEpuLNJ4S/oAAIAAAAAADgZywWbxTu/Lf454+7G5cmCoAAAAAAAAB+xeKzApgvbxn2ZswUAD1DARAAAAAAAMCPWOS7Alj+fr1REKRYV/ooAAIAAAAAAPgRmyR55RbgwuUt3rlbDCyB2Ero9RsFBUAAAAAAAAA/YlFprd5XdopuZScS/0ABEAAAAAAAwK/4bg1A90OwSDbfrRcI76IACAAAAAAA4E8s3toFuLhxlF4MpV4A9TMUAAEAAAAAAPyIJdd/fTtG0TE3sGyhAAgAAAAAAOBnvD0DztuT+fJ35/27hZkB6AkKgAAAAAAAAH6mTNwC7AGvFxj97PWXNgqAAAAAAAAAfqWo8//KctGMm4Z9iQIgAAAAAACAn3GvBFiWC375Fbhp2KPWcI0CIAAAAAAAgB+xKcvhPbXGKopdejWOSoFpmWklF4oBUAAEAAAAAADwI1ZZvb4JSFnm6JUGWYJLPA5/RgEQAAAAAADAr1hktVidnjXqanq5C4EBAc5fPwqiAAgAAAAAAOB3nM8ALHjGX0uCrmY5mmcGpDdQAAQAAAAAAPAznpW/KJaZHQVAAAAAAAAAf2KRLA42ASmq0pwfWNRXQUnTMxQAAQAAAAAA/I73SmD+WUzzz6hLCwVAAAAAAAAAP2KxUf6CZygAAgAAAAAA+BlLKZUA89wubMn/jZIrTJbW6/dXFAABAAAAAAD8icWS/SiNoQv9Rgmh/ucRCoAAAAAAAAB+xuwz4Mz++j1FARAAAAAAAMDPlEj5q6izDG2lua8wHKEACAAAAAAA4Hd8VAK0eGF23cXCoS1ngUDqgaWOAiAAAAAAAIAfsUiylNIagJ6wFxJ9EKo/vP6yhAIgAAAAAACAnyl6+assFs6YIuhrFAABAAAAAAD8ikVls5BXVEZ6LWUTBUAAAAAAAAA/Y/pbYJk06BEKgAAAAAAAAH7EZssq/kYdfu6C7UJph+BXKAACAAAAAAD4EavFavoCYJA1qLRD8CsUAAEAAAAAAPyJxcItwGZ//R6ylnYAAAAAAAAA8AQL4MEzzAAEAAAAAADwKxbT3wJs7lfvOWYAwnQOHPhLjz/2b7Vodo2qVqymqGp11KFtJ02fOkMpKSleG2flipW6c8Bdiq4bo0qhEYquG6M7B9yllStWut1HRkaG3npjrnp0uV6X1ayriPCqatqwuUaPGKOdO3Z6LVaYCzkAsyMHYHbkAMyM6x/GYvHio6T5a9z+y2Kz2Zg3WkYkJCR4ra/wiFCv9WUky5Yu17DBw5WYmOjwfEzDGH2+5FNFN4gu8hhZWVka9fBoLZi30GmbocOHaPZrr8hqdV6DT0hIUL/et2lr7FaH54OCgjRj1nQNHT6kyLHCfMgBmB05ALMjB2BmXP/mkXTae8XcyMhIr/XlTWkZqTqedqS0wyhVFcpVUkRQ2fz9lEUUAN2wd+9ebd68WXv27NGRI0eUmJio9PR0VahQQfXr11fnzp3VpUsXl/8DdwcFQN/a/vN2de/cU6mpqQoPD9c/H39Mnbt2VlpqqhZ//InmzZ0vKfuNf/2mH1WhQoUijfPkE09p6ovTJElXX9NCjz72qOrXr699+/ZpxtQZ2v7zL5Kkfz7+mJ79v2cc9pGZmakbut+oDes3SJJu7X+rhg0foogqVbRl8xa98N8XdPz4CVmtVn325SfqdVOvIsUKcyEHYHbkAMyOHICZcf2bixkKgOmZqTqedrS0wyhV4YEVKQB6gAKgG1599VV9/fXX9j8HBwdLktLS0uzfa968uSZNmqTQ0KIX3igA+lbPrjdo/br1CgwM1LervlHbdm3ynJ8+dYYm/nuSJGnik09o0tMTPR5jz+49annVtcrIyFDLa1vqu1XfKCQkxH4+JSVF13fvpW2x2xQYGKjtv29z+AnjwvkL9fCDIyVJ/xjxkGa+MiPP+T/2/qH2rTsqMTFR0Q2itf337P4AV8gBmB05ALMjB2BmXP/mYoYCYFpmmk6UagHQVSmpZG7NzS4AVi2RsYyANQDd0KhRIw0fPlzTpk3Thx9+qI8//lgff/yx3nnnHd13332yWq36/fffNW/evNIOFU5s2Ryr9evWS5KGDBtc4A1fksaNf0SNmzSWJM155VVduHDB43Fmz5qjjIwMSdL0mdPyvOFLUmhoqKbPzP5EMCMjQ6+8PNthPzOnz5IkValSRf994f8KnI9uEK3HHp8gKfsvAF9+scTjWGEu5ADMjhyA2ZEDMDOufxiRN1f/K9rD1VfJxQH3UQB0Q48ePXTrrbcqJiYmzwy/ypUr64477tDtt98uSVq9erX9f/goW5Z+udR+fN/g+xy2sVqtumfQ3ZKkM2fOaM2qNR6NYbPZtHTJV5KkRo0bqU3b1g7btWnbWg0bNcyOa8lXyj8Jd8/uPYrbFSdJGnDHbU5nld43eJD9eAlv+igEOQCzIwdgduQAzIzrH0blughn/C94hgKgF8TExEiSzp8/r3PnzpVyNHBkw/qfJElhYWFq2eoap+06de5kP/5pw0aPxtj/534dPXL0Yj8dXbbNOX/k8BEd2H8gX6wb7McdXfRTs2ZNxTSMKVKsMB9yAGZHDsDsyAGYGdc/DMtiKZGHxcNHScUlC0VAT1AA9IK4uOxPaIKDg1W5cuXSDQYOxcfFS5KiG9R3uT5Go8YN7cdxF5/jrl074+zHOZ/qOZP7fM4nfI76aVRIPznnDx08pOTkZLdjhfmQAzA7cgBmRw7AzLj+YVQldXtv8W8O5hbgsoACYBGlp6fr0KFDevfdd/X5559Lkm655ZbsajfKlLS0NPsGK7Vr13bZNiIiQmFhYZKy30g9cfjwYftx7Tqux6lzWR378aFDh/OcO3z40lbuhfVT+2I/NptNh/P1A+QgB2B25ADMjhyAmXH9w9i8XerzVcHOl6PAXWwV5IGkpCTdc889Bb4fGBio3r17a9CgQQ6ehdKW+7bssPDwQtuHhYUqOTlZyclJRR4n/OJfHJyOkWstj6SkvOMk5e6nkHjz9sOnfnCMHIDZkQMwO3IAZsb1D6Mywjp4/h29/6EA6AGr1Wq/xTclJUXnz5+XxWJR79691b9/fwUEBJRugHAoLS3dfly+fLlC25cPCpIkpaameTROep5xyrtsG3RxDElKyzdOWtqlP3vST2pqqltxwnzIAZgdOQCzIwdgZlz/MDKPCmj+crdivo1xXPGTV1RmUAD0QGhoqN555x1J2dOsjx8/rqVLl2rp0qX6/vvvNXHiRDVt2rSUo0R+wcGX3hjPn79QaPvz6dlv3iEhwR6NE5RnnPMu26anX/oLQnC+cYKDL/35/Pnzef7sqp+QkBC3Y4W5kAMwO3IAZkcOwMy4/mFo/lLU84QHrynLg2IhKAAWmcViUY0aNfTAAw+oevXqmjt3rl566SW9/vrreT6JyW3RokV6//33nfZ5++23a/DgwV6J74LSC29kEhUqVLAfJycVPpU/OTlFkhQWVvgtAs7GSSpkEd7klBT7cf6p/eG5+0lKcvmmn7cf17cawLzIAZgdOQCzIwdgZlz/5hQREVHaIficTTa/vwW4uLJsmaUdgl9hExAvuPHGG1WuXDmdPHlSW7duddouOTlZx48fd/pISUlRQECAVx64JDg4WFWrVpWUd3FeR06fPm3fQSv34rzuyL2ocGGL8OZeVLhOvsV9a9eOcrufwxf7sVgshS4SDPMiB2B25ADMjhyAmXH9m5O3/l1dlv9t7WxjDTN9lbO6vk0eeVEA9ILy5cvbP/E5evSo03ZhYWGqXr2600doaKgyMzO98kBejZs0liT9sXefMjIynLaLj9t96TmNG3k0RpOmje3Hu+N3u2iZ93xObI76iS+kn5zzdS6rY9+xDHCEHIDZkQMwO3IAZsb1bz7e+ne1of5t7f2tfX37gNdRAPSC1NRUJSYmSnK99sKgQYO0fPlyp4++ffvq9OnTXnkgr/Yd2knKnoW5bevPTtv9uPZH+3G79m09GqPeFfVUK6rWxX7WuWy77sf1kqSo2lGqW69uvljbX2rnop9jx45pz+49RYoV5kMOwOzIAZgdOQAz4/o3H2/9u7pM/9vaYpHFk4e/fbn1ukr7l+BfKAAWIjMzU7ZCFpb88ssv7Z8kNWvWrCTCgof63NrHfvzuwncdtsnKytL7iz6QJFWuXFldunXxaAyLxaI+fXtLkuLj4rVp42aH7TZt3Kz4uPjsuPr2liXf/7ViGsbYPwn8dPFnSsm1tkdu7y5cZD/u26+vR7HCfMgBmB05ALMjB2BmXP8AQAGwUAkJCXr00Uf1zTff6MSJE/bv22w2HTx4UK+//ro++CD7jaJdu3aqW7eus65Qiq5rfa06dOwgSVowb6E2/rSpQJuZ019W3K44SdKoMSNVrly5POfXrl6rkMAwhQSG6cFhDzkcZ/TYUfZ1IsaPm6DU1NQ851NTUzV+3ARJUmBgoEaPHeWwn3Hjx0qSTp06pSf+PanA+X1/7NPUF6ZJkqIbROtW3vRRCHIAZkcOwOzIAZgZ1z+MKPtOWe9+lfxrKG68TAH0BAVAN+zbt0+zZ8/W8OHDdfvtt2vQoEG64447NGrUKC1fvlw2m03XXXedHn300dIOFS5MnfGiQkJClJGRoT439dVLU17Spo2btWbVGo0eMUYTL765xjSM0SMX33Q9FdMwRo9OGCdJ2ha7Td0799Dijz/R1thtWvzxJ+reuYe2xW6TJD06YZwaxDRw2M+g+wepXfvsWxXeePUN3X3nvfp25bfasjlWr815Xd06dVdiYqKsVqumzXhJgYFs6I3CkQMwO3IAZkcOwMy4/mE4rm9ULJISuLG3VAuOZmexFXZ/q8lduHBBmzZt0q+//qrdu3fr9OnTSkxMVLly5VS1alU1bNhQXbp0UcuWLYs9VkJCghcizhYeEeq1voxk2dLlGjZ4uH3NxvxiGsbo8yWfKrpBdIFza1evVa+eN0mSBt1/r96a96bDPrKysjTyH6O0cP47TuMYMmyw5rw+W1ar8xp8QkKC+vW+TVtjHe8sHRQUpBmzpmvo8CFO+wDyIwdgduQAzI4cgJlx/ZtH0mnHt04XRWRkpNf68qYLmeeVeKFk1yi05a46OqrfOagu+bLQFxwQqrByFXzWv9HwUUEhypUrp44dO6pjx46lHQq84JY+N2vzz5s0Z9Ycfb1ipQ4fOqzy5curfoP6um1Af40Y9bBCQ4tXPLVarXr9rdfUr/+tenvufG2N3aqTCSdVNbKqWl3bSg88OEy9bupVaD+RkZFave4HzZs7Xx998LHi4+KVnJysWlG11K17V40aM1JNmzUtVqwwH3IAZkcOwOzIAZgZ1z9QPHmKeX46lezEiROaMmWKlixZokOHDiksLEwtW7bUyJEj1a9fv9IOz6eYAViGMAMQAAAAAIDiMcUMwKySnwFY1gQHhCos0P0ZgDt27FD37t11/PhxSVKFChWUkpKizMxMSdLYsWP18ssv+yTWsoA1AAEAAAAAAPxMSa/ZV9a+PJGenq6+ffvq+PHjat68ubZv367ExEQlJibq+eefl8Vi0axZszR//nwf/bZKHwVAAAAAAAAAGNabb76pffv2KTQ0VMuWLVOLFi0kSaGhoZo4caJGjhwpSZo0aZIuXLhQmqH6DAVAAAAAAAAAP1PaM/DKwpe7Fi1aJEm6++67dfnllxc4/69//UsWi0VHjhzRqlWrvPY7KksoAAIAAAAAAJiNpZQfJSQpKUlbtmyRJN14440O21x++eVq0qSJJOn7778vsdhKErsAAwAAAAAA+BFPZ8BdfFLZkj8eH21Ru2vXLuXsf9u8eXOn7Zo3b66dO3dq586dvgmklFEABAAAAAAA8DdlraBXXD56PUePHrUfR0VFOW2Xcy53eyOhAAgAAAAAAOBHcma0OeLxzMAyzuZkaqDNluXW85OSkuzHoaGhTtvlnDt37pwH0fkPCoAAAAAAAAB+xmiFPmecvU4XNVA4QAEQAAAAAADAj1gsRVgD0GACrQFutQsPD7cfp6SkqGLFig7bpaSkSJIqVKhQ/ODKIAqAAAAAAAAA/sZi7gKgu68/97p/R44ccVoAPHLkiCSpVq1axY+tDLKWdgAAAAAAAAAoWTb5bOPdMqVx48ayXCwW7tixw2m7nHNNmzYtkbhKGgVAAAAAAAAAv2Ip9pf14sNfv9wVHh6u1q1bS5K+/vprh20OHTqknTt3SpJ69OhR/F9PGUQBEAAAAAAAAIZ17733SpI++OADHTx4sMD5F198UTabTVFRUerWrVtJh1ciKAACAAAAAAD4EYv9vyXzsF18lOSY7j3c89BDD6l+/fpKTk5W79699euvv0qSUlNTNWXKFM2ePVuS9Pzzz6tcuXJu9+tPLDYbGyeXFQkJCV7rKzwi1Gt9AQAAAADgL5JOp3itr8jISK/15U2ZWRlKzUwu3SBy199KobJUzlpeQQEhbrffsWOHunfvruPHj0uSKlasqOTkZGVmZkqSxowZo1mzZvkk1rKAXYABAAAAAAD8iUWK/3VvkZ7aqEWMl4ORJ5PxHIr/ZU+RnteqVSu32zZr1ky//fabpkyZoqVLl+rgwYOqVKmSWrZsqVGjRqlfv35FisFfUAAEAAAAAACA4VWvXl3Tp0/X9OnTSzuUEkcBEAAAAAAAwCQ82UEXxsEagGUIawACAAAAAFA8plgD0JahtMxUn49TnGKhzccLAwZayikoINinYxgJMwABAAAAAAD8iqXMz+TzdXxl/fWXNRQAAQAAAAAA/ElxJ9eVldoZ96SWGAqAAAAAAAAA/sQiWSxlpYpXDMV5CQZ4+SXJWtoBAAAAAAAAAPAdZgACAAAAAAD4EYtYA8/C7cMeoQAIAAAAAADgR6yWAAVaykkyyK3AHrLZsmSlpOURfloAAAAAAAB+JtBarrRDKD3mq3kWG2sAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEAhOkcOPCXHn/s32rR7BpVrVhNUdXqqEPbTpo+dYZSUlK8Ns7KFSt154C7FF03RpVCIxRdN0Z3DrhLK1esdLuPjIwMvfXGXPXocr0uq1lXEeFV1bRhc40eMUY7d+z0WqwwF3IAZkcOwOzIAZgZ1z8As7LYbDZbaQeBbAkJCV7rKzwi1Gt9Gcmypcs1bPBwJSYmOjwf0zBGny/5VNENoos8RlZWlkY9PFoL5i102mbo8CGa/dorslqd1+ATEhLUr/dt2hq71eH5oKAgzZg1XUOHDylyrDAfcgBmRw7A7MgBmBnXv3kknfZeMTcyMtJrfQGliRmAMI3tP2/Xfffcr8TERIWHh+uZ5yZr1Y8/aMU3yzTsgaGSpD2796h/3wE6d+5ckcd5etJk+xv+1de00ML3FujHn9Zq4XsLdPU1LSRJ899eoMlPPuO0j8zMTA0ccLf9Df/W/rfqy68+19oNazRt5lRVr15N6enpGj1ijEefIsLcyAGYHTkAsyMHYGZc/wDMjhmAZQgzAH2rZ9cbtH7degUGBurbVd+obbs2ec5PnzpDE/89SZI08cknNOnpiR6PsWf3HrW86lplZGSo5bUt9d2qbxQSEmI/n5KSouu799K22G0KDAzU9t+3OfyEceH8hXr4wZGSpH+MeEgzX5mR5/wfe/9Q+9YdlZiYqOgG0dr+e3Z/gCvkAMyOHIDZkQMwM65/c2EGIFAQMwBhCls2x2r9uvWSpCHDBhd4w5ekceMfUeMmjSVJc155VRcuXPB4nNmz5igjI0OSNH3mtDxv+JIUGhqq6TOnScpe0+OVl2c77Gfm9FmSpCpVqui/L/xfgfPRDaL12OMTJGX/BeDLL5Z4HCvMhRyA2ZEDMDtyAGbG9Q8AFABhEku/XGo/vm/wfQ7bWK1W3TPobknSmTNntGbVGo/GsNlsWrrkK0lSo8aN1KZta4ft2rRtrYaNGmbHteQr5Z+Eu2f3HsXtipMkDbjjNoWGOp7Ned/gQfbjJbzpoxDkAMyOHIDZkQMwM65/AKAACJPYsP4nSVJYWJhatrrGabtOnTvZj3/asNGjMfb/uV9Hjxy92E9Hl21zzh85fEQH9h/IF+sG+3FHF/3UrFlTMQ1jihQrzIccgNmRAzA7cgBmxvUPABQAYRLxcfGSpOgG9V2uj9GocUP7cdzF57hr1844+3HOp3rO5D6f8wmfo34aFdJPzvlDBw8pOTnZ7VhhPuQAzI4cgNmRAzAzrn8AoAAIE0hLS7NvsFK7dm2XbSMiIhQWFiYp+43UE4cPH7Yf167jepw6l9WxHx86dDjPucOHj7jdT+2L/dhsNh3O1w+QgxyA2ZEDMDtyAGbG9Q8A2SgAwvDOnTtnPw4LDy+0fVhY9jobyclJRR4n/OJfHJyOkWstj6SkvOMk5e6nkHjz9sOnfnCMHIDZkQMwO3IAZsb1DwDZKADC8NLS0u3H5cuXK7R9+aAgSVJqappH46TnGae8y7ZBF8eQpLR846SlXfqzJ/2kpqa6FSfMhxyA2ZEDMDtyAGbG9Q8A2SgAwvCCgy+9MZ4/f6HQ9ufTs9+8Q0KCPRonKM845122TU+/9BeE4HzjBAdf+rMn/YSEhLgVJ8yHHIDZkQMwO3IAZsb1DwDZKADC8CpUqGA/Tk4qfCp/cnKKJCksrPBbBJyNk1TIIrzJKSn24/xT+8Nz91NIvHn7cX2rAcyLHIDZkQMwO3IAZsb1DwDZKADC8IKDg1W1alVJeRfndeT06dP2HbRyL87rjtyLChe2CG/uRYXr5Fvct3btKLf7OXyxH4vFUugiwTAvcgBmRw7A7MgBmBnXPwBkowAIU2jcpLEk6Y+9+5SRkeG0XXzc7kvPadzIozGaNG1sP94dv9tFy7znc2Jz1E98If3knK9zWR37jmWAI+QAzI4cgNmRAzAzrn8AoAAIk2jfoZ0kKTk5Wdu2/uy03Y9rf7Qft2vf1qMx6l1RT7Wial3sZ53Ltut+XC9Jiqodpbr16uaLtf2ldi76OXbsmPbs3lOkWGE+5ADMjhyA2ZEDMDOufwCgAAiT6HNrH/vxuwvfddgmKytL7y/6QJJUuXJldenWxaMxLBaL+vTtLUmKj4vXpo2bHbbbtHGz4uPis+Pq21sWiyXP+ZiGMfZPAj9d/JlScq3tkdu7CxfZj/v26+tRrDAfcgBmRw7A7MgBmBnXPwBQAIRJXNf6WnXo2EGStGDeQm38aVOBNjOnv6y4XXGSpFFjRqpcuXJ5zq9dvVYhgWEKCQzTg8MecjjO6LGjFBAQIEkaP26CUlNT85xPTU3V+HETJEmBgYEaPXaUw37GjR8rSTp16pSe+PekAuf3/bFPU1+YJkmKbhCtW3nTRyHIAZgdOQCzIwdgZlz/AEABECYydcaLCgkJUUZGhvrc1FcvTXlJmzZu1ppVazR6xBhNvPjmGtMwRo9cfNP1VEzDGD06YZwkaVvsNnXv3EOLP/5EW2O3afHHn6h75x7aFrtNkvTohHFqENPAYT+D7h+kdu2zb1V449U3dPed9+rbld9qy+ZYvTbndXXr1F2JiYmyWq2aNuMlBQYGFilemAs5ALMjB2B25ADMjOsfgNlZbDabrbSDQLaEhASv9RUeEeq1voxk2dLlGjZ4uBITEx2ej2kYo8+XfKroBtEFzq1dvVa9et4kSRp0/716a96bDvvIysrSyH+M0sL57ziNY8iwwZrz+mxZrc5r8AkJCerX+zZtjd3q8HxQUJBmzJquocOHOO0DyI8cgNmRAzA7cgBmxvVvHkmnHd86XRSRkZFe6wsoTcwAhKnc0udmbf55k8Y8MloxDWMUGhqqypUrq+W1LfX8/57TxtgNDt/wPWG1WvX6W6/p8yWfqnff3qoVVUvly5dXraha6t23t75Y+plee/NVl2/4UvYbzep1P+jl2TPVvkN7Va1aVcHBwbqi/hUa9sBQbdi8jjd8eIwcgNmRAzA7cgBmxvUPwMyYAViGMAMQAAAAAIDiYQYgUBAzAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAYWWNoB4BKLxSKrlZosAAAAAABFFRAQUNohAGWOxWaz2Uo7CGRLSUlRaGioV/pKy0zxSj8AAAAAAPiT4ADv/LsaMBIKgGXIyZMnvTYDMKRikFf6AQAAAADAn6Qmpnutr4iICK/1BZQmbgEuQ2w2mzIzM0s7DAAAAAAA/Bb/rgYKYsE5AAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgTOfAgb/0+GP/Votm16hqxWqKqlZHHdp20vSpM5SSkuK1cVauWKk7B9yl6LoxqhQaoei6MbpzwF1auWKl231kZGTorTfmqkeX63VZzbqKCK+qpg2ba/SIMdq5Y6fXYoW5kAMwO3IAZkcOwMy4/gGYlcVms9lKOwhkS0hI8Fpf4RGhXuvLSJYtXa5hg4crMTHR4fmYhjH6fMmnim4QXeQxsrKyNOrh0Vowb6HTNkOHD9Hs116R1eq8Bp+QkKB+vW/T1titDs8HBQVpxqzpGjp8SJFjhfmQAzA7cgBmRw7AzLj+zSPptPeKuZGRkV7rCyhNzACEaWz/ebvuu+d+JSYmKjw8XM88N1mrfvxBK75ZpmEPDJUk7dm9R/37DtC5c+eKPM7Tkybb3/CvvqaFFr63QD/+tFYL31ugq69pIUma//YCTX7yGad9ZGZmauCAu+1v+Lf2v1VffvW51m5Yo2kzp6p69WpKT0/X6BFjPPoUEeZGDsDsyAGYHTkAM+P6B2B2zAAsQ5gB6Fs9u96g9evWKzAwUN+u+kZt27XJc3761Bma+O9JkqSJTz6hSU9P9HiMPbv3qOVV1yojI0Mtr22p71Z9o5CQEPv5lJQUXd+9l7bFblNgYKC2/77N4SeMC+cv1MMPjpQk/WPEQ5r5yow85//Y+4fat+6oxMRERTeI1vbfs/sDXCEHYHbkAMyOHICZcf2bCzMAgYKYAQhT2LI5VuvXrZckDRk2uMAbviSNG/+IGjdpLEma88qrunDhgsfjzJ41RxkZGZKk6TOn5XnDl6TQ0FBNnzlNUvaaHq+8PNthPzOnz5IkValSRf994f8KnI9uEK3HHp8gKfsvAF9+scTjWGEu5ADMjhyA2ZEDMDOufwCgAAiTWPrlUvvxfYPvc9jGarXqnkF3S5LOnDmjNavWeDSGzWbT0iVfSZIaNW6kNm1bO2zXpm1rNWzUMDuuJV8p/yTcPbv3KG5XnCRpwB23KTTU8WzO+wYPsh8v4U0fhSAHYHbkAMyOHICZcf0DAAVAmMSG9T9JksLCwtSy1TVO23Xq3Ml+/NOGjR6Nsf/P/Tp65OjFfjq6bJtz/sjhIzqw/0C+WDfYjzu66KdmzZqKaRhTpFhhPuQAzI4cgNmRAzAzrn8AoAAIk4iPi5ckRTeo73J9jEaNG9qP4y4+x127dsbZj3M+1XMm9/mcT/gc9dOokH5yzh86eEjJycluxwrzIQdgduQAzI4cgJlx/QMABUCYQFpamn2Dldq1a7tsGxERobCwMEnZb6SeOHz4sP24dh3X49S5rI79+NChw3nOHT58xO1+al/sx2az6XC+foAc5ADMjhyA2ZEDMDOufwDIRgEQhnfu3Dn7cVh4eKHtw8Ky19lITk4q8jjhF//i4HSMXGt5JCXlHScpdz+FxJu3Hz71g2PkAMyOHIDZkQMwM65/AMhGARCGl5aWbj8uX75coe3LBwVJklJT0zwaJz3POOVdtg26OIYkpeUbJy3t0p896Sc1NdWtOGE+5ADMjhyA2ZEDMDOufwDIRgEQhhccfOmN8fz5C4W2P5+e/eYdEhLs0ThBecY577JtevqlvyAE5xsnOPjSnz3pJyQkxK04YT7kAMyOHIDZkQMwM65/AMhGARCGV6FCBftxclLhU/mTk1MkSWFhhd8i4GycpEIW4U1OSbEf55/aH567n0LizduP61sNYF7kAMyOHIDZkQMwM65/AMhGARCGFxwcrKpVq0rKuzivI6dPn7bvoJV7cV535F5UuLBFeHMvKlwn3+K+tWtHud3P4Yv9WCyWQhcJhnmRAzA7cgBmRw7AzLj+ASAbBUCYQuMmjSVJf+zdp4yMDKft4uN2X3pO40YejdGkaWP78e743S5a5j2fE5ujfuIL6SfnfJ3L6th3LAMcIQdgduQAzI4cgJlx/QMABUCYRPsO7SRJycnJ2rb1Z6ftflz7o/24Xfu2Ho1R74p6qhVV62I/61y2XffjeklSVO0o1a1XN1+s7S+1c9HPsWPHtGf3niLFCvMhB2B25ADMjhyAmXH9AwAFQJhEn1v72I/fXfiuwzZZWVl6f9EHkqTKlSurS7cuHo1hsVjUp29vSVJ8XLw2bdzssN2mjZsVHxefHVff3rJYLHnOxzSMsX8S+Oniz5SSa22P3N5duMh+3LdfX49ihfmQAzA7cgBmRw7AzLj+AYACIEziutbXqkPHDpKkBfMWauNPmwq0mTn9ZcXtipMkjRozUuXKlctzfu3qtQoJDFNIYJgeHPaQw3FGjx2lgIAASdL4cROUmpqa53xqaqrGj5sgSQoMDNTosaMc9jNu/FhJ0qlTp/TEvycVOL/vj32a+sI0SVJ0g2jdyps+CkEOwOzIAZgdOQAz4/oHAAqAMJGpM15USEiIMjIy1OemvnppykvatHGz1qxao9EjxmjixTfXmIYxeuTim66nYhrG6NEJ4yRJ22K3qXvnHlr88SfaGrtNiz/+RN0799C22G2SpEcnjFODmAYO+xl0/yC1a599q8Ibr76hu++8V9+u/FZbNsfqtTmvq1un7kpMTJTVatW0GS8pMDCwSPHCXMgBmB05ALMjB2BmXP8AzM5is9lspR0EsiUkJHitr/CIUK/1ZSTLli7XsMHDlZiY6PB8TMMYfb7kU0U3iC5wbu3qterV8yZJ0qD779Vb89502EdWVpZG/mOUFs5/x2kcQ4YN1pzXZ8tqdV6DT0hIUL/et2lr7FaH54OCgjRj1nQNHT7EaR9AfuQAzI4cgNmRAzAzrn/zSDrt+NbpooiMjPRaX0BpYgYgTOWWPjdr88+bNOaR0YppGKPQ0FBVrlxZLa9tqef/95w2xm5w+IbvCavVqtffek2fL/lUvfv2Vq2oWipfvrxqRdVS77699cXSz/Tam6+6fMOXst9oVq/7QS/Pnqn2HdqratWqCg4O1hX1r9CwB4Zqw+Z1vOHDY+QAzI4cgNmRAzAzrn8AZsYMwDKEGYAAAAAAABQPMwCBgpgBCAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEAhOkcOPCXHn/s32rR7BpVrVhNUdXqqEPbTpo+dYZSUlK8Ns7KFSt154C7FF03RpVCIxRdN0Z3DrhLK1esdLuPjIwMvfXGXPXocr0uq1lXEeFV1bRhc40eMUY7d+z0WqwwF3IAZkcOwOzIAZgZ1z8As7LYbDZbaQeBbAkJCV7rKzwi1Gt9Gcmypcs1bPBwJSYmOjwf0zBGny/5VNENoos8RlZWlkY9PFoL5i102mbo8CGa/dorslqd1+ATEhLUr/dt2hq71eH5oKAgzZg1XUOHDylyrDAfcgBmRw7A7MgBmBnXv3kknfZeMTcyMtJrfQGliRmAHjh79qzefvtt/eMf/9Dtt9+ue++9V0899ZQ2btxY2qHBDdt/3q777rlfiYmJCg8P1zPPTdaqH3/Qim+WadgDQyVJe3bvUf++A3Tu3Lkij/P0pMn2N/yrr2mhhe8t0I8/rdXC9xbo6mtaSJLmv71Ak598xmkfmZmZGjjgbvsb/q39b9WXX32utRvWaNrMqapevZrS09M1esQYjz5FhLmRAzA7cgBmRw7AzLj+AZgdMwDd9Ndff2nixIk6e/asJCkkJETp6enKysqSJPXp00cPPvhgscZgBqBv9ex6g9avW6/AwEB9u+obtW3XJs/56VNnaOK/J0mSJj75hCY9PdHjMfbs3qOWV12rjIwMtby2pb5b9Y1CQkLs51NSUnR9917aFrtNgYGB2v77NoefMC6cv1APPzhSkvSPEQ9p5isz8pz/Y+8fat+6oxITExXdIFrbf8/uD3CFHIDZkQMwO3IAZsb1by7MAAQKYgagGy5cuKDnn39eZ8+eVd26dfXyyy/ro48+0kcffaRBgwbJYrFo6dKl+u6770o7VDixZXOs1q9bL0kaMmxwgTd8SRo3/hE1btJYkjTnlVd14cIFj8eZPWuOMjIyJEnTZ07L84YvSaGhoZo+c5qk7DU9Xnl5tsN+Zk6fJUmqUqWK/vvC/xU4H90gWo89PkFS9l8AvvxiicexwlzIAZgdOQCzIwdgZlz/AEAB0C0rV67UsWPHFBQUpKeeekpXXHGFpOx1F+68807ddNNNkqRFixbZ/4ePsmXpl0vtx/cNvs9hG6vVqnsG3S1JOnPmjNasWuPRGDabTUuXfCVJatS4kdq0be2wXZu2rdWwUcPsuJZ8pfyTcPfs3qO4XXGSpAF33KbQUMezOe8bPMh+vIQ3fRSCHIDZkQMwO3IAZsb1DwAUAN2yevVqSVLnzp1VrVq1AucHDBggi8WiU6dO6bfffivh6OCODet/kiSFhYWpZatrnLbr1LmT/finDZ6t7bj/z/06euToxX46umybc/7I4SM6sP9Avlg32I87uuinZs2aimkYU6RYYT7kAMyOHIDZkQMwM65/AKAAWKjU1FTt2bNHktSyZUuHbapVq6Y6depIkn755ZcSiw3ui4+LlyRFN6jvcn2MRo0b2o/jLj7HXbt2xtmPcz7Vcyb3+ZxP+Bz106iQfnLOHzp4SMnJyW7HCvMhB2B25ADMjhyAmXH9AwAFwEIdOnTIPi27bt26TtvlnDt48GCJxAX3paWl2TdYqV27tsu2ERERCgsLk5T9RuqJw4cP249r13E9Tp3L6tiPDx06nOfc4cNH3O6n9sV+bDabDufrB8hBDsDsyAGYHTkAM+P6B4BsFAALcerUKftxlSpVnLbLOXf69GmfxwTPnDt3zn4cFh5eaPuwsOx1NpKTk4o8TvjFvzg4HSPXWh5JSXnHScrdTyHx5u2HT/3gGDkAsyMHYHbkAMyM6x8AslEALERaWpr9OCgoyGm7nHOpqak+jwmeSUtLtx+XL1+u0Pbl7b/LtEJa5pWeZ5zyLtvmvpbS8o2T+5rzpB+uPThDDsDsyAGYHTkAM+P6B4BsFABheMHBl94Yz5+/UGj78+nZb94hIcEejROUZ5zzLtump1/6C0JwvnGCgy/92ZN+QkJC3IoT5kMOwOzIAZgdOQAz4/oHgGzOV0CFpLz/A05PT3e6DXu6/Y3C+f94Fy1apPfff9/p+dtvv12DBw8uYqR5XVB64Y1MokKFCvbj5KTCp/InJ6dIksLCCr9FwNk4SYUswpuckmI/zj+1Pzx3P0lJea5B1/24vtUA5kUOwOzIAZgdOQAz4/o3p4iIiNIOAShzKAAWIve6f6dOnXJaAMxZK9DV/2iSk5N1/Phxp+dTUlIUEBBQxEjzupDplW4MITg4WFWrVtXJkyfzLM7ryOnTp+07aOVenNcduRcVLmwR3tyLCtfJt7hv7dpRefqJjIx02s/hi/1YLJZCFwmGeZEDMDtyAGZHDsDMuP7NyVv/rgaMhFuAC1GnTh1ZLBZJ0l9//eW0Xc65yy67zGmbsLAwVa9e3ekjNDRUmZmZXnkgr8ZNGkuS/ti7TxkZGU7bxcftvvScxo08GqNJ08b2493xu120zHs+JzZH/cQX0k/O+TqX1bHvWAY4Qg7A7MgBmB05ADPj+jcfb/27mn9bw0goABYiJCREMTExkqRt27Y5bJOQkKCDBw9Kklq0aOG0r0GDBmn58uVOH3379tXp06e98kBe7Tu0k5Q9C3Pb1p+dtvtx7Y/243bt23o0Rr0r6qlWVK2L/axz2Xbdj+slSVG1o1S3Xt18sba/1M5FP8eOHdOe3XuKFCvMhxyA2ZEDMDtyAGbG9W8+3vp3Nf+2hpFQAHRD165dJUlr167ViRMnCpz/7LPPZLPZVKVKFV155ZUlHB3c0efWPvbjdxe+67BNVlaW3l/0gSSpcuXK6tKti0djWCwW9enbW5IUHxevTRs3O2y3aeNmxcfFZ8fVt7d9hmmOmIYx9k8CP138mVJyre2R27sLF9mP+/br61GsMB9yAGZHDsDsyAGYGdc/AFAAdEuvXr1Us2ZNpaWl6bnnntOff/4pKXvjj08++UTLli2TlD3DLzCQZRXLoutaX6sOHTtIkhbMW6iNP20q0Gbm9JcVtytOkjRqzEiVK1cuz/m1q9cqJDBMIYFhenDYQw7HGT12lH29ifHjJig1NTXP+dTUVI0fN0GSFBgYqNFjRznsZ9z4sZKy15Z84t+TCpzf98c+TX1hmiQpukG0buVNH4UgB2B25ADMjhyAmXH9AwAFQLeUK1dOkyZNUqVKlbR//3498sgjuuuuuzRw4EC98847stls6t27t3r27FnaocKFqTNeVEhIiDIyMtTnpr56acpL2rRxs9asWqPRI8Zo4sU315iGMXrk4puup2IaxujRCeMkSdtit6l75x5a/PEn2hq7TYs//kTdO/fQttjsW8kfnTBODWIaOOxn0P2D1K599q0Kb7z6hu6+8159u/Jbbdkcq9fmvK5unborMTFRVqtV02a8ROEZbiEHYHbkAMyOHICZcf0DMDuLzWazlXYQ/uLMmTP69NNPtXnzZiUkJCg4OFj169fXLbfcorZti7/uQkJCgheizBYe4Xi3YrNbtnS5hg0ersTERIfnYxrG6PMlnyq6QXSBc2tXr1WvnjdJkgbdf6/emvemwz6ysrI08h+jtHD+O07jGDJssOa8PltWq/MafEJCgvr1vk1bY7c6PB8UFKQZs6Zr6PAhTvsA8iMHYHbkAMyOHICZcf2bR9Jpx7dOF4WrnZgBf8JHBR6oXLmyhg8fruHDh5d2KCiiW/rcrM0/b9KcWXP09YqVOnzosMqXL6/6DerrtgH9NWLUwwoNLV7x1Gq16vW3XlO//rfq7bnztTV2q04mnFTVyKpqdW0rPfDgMPW6qVeh/URGRmr1uh80b+58ffTBx4qPi1dycrJqRdVSt+5dNWrMSDVt1rRYscJ8yAGYHTkAsyMHYGZc/wDMjBmAZQgzAAEAAAAAKB5mAAIFsQYgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAYWWNoBwDeSTqeUdgimFRERoYCAAGVmZur06dOlHQ5Q4sgBmB05ALMjB2B25ACAsogZgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMzGKz2WylHQRgJIsWLVJycrLCwsI0aNCg0g4HKHHkAMyOHIDZkQMwO3IAQFlEARDwsptvvlnHjx9X9erVtXz58tIOByhx5ADMjhyA2ZEDMDtyAEBZxC3AAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAAks7AMBo7rnnHiUnJyssLKy0QwFKBTkAsyMHYHbkAMyOHABQFllsNputtIMAAAAAAAAA4BvcAgwAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBBZZ2AIA/SEpK0u+//669e/fqjz/+0N69e3X27FlJ0v/93//pyiuvdPi8Cxcu6Pvvv9eePXu0b98+nT59WomJiSpXrpyqV6+uFi1aqHfv3qpZs2ZJvhzAI0W9/p3Zs2eP/vnPfyorK0uS9NZbb6lGjRpejxvwluLkwAMPPKDjx4+77P/mm2/Www8/7NWYAW/y1vvApk2b9MMPP2jPnj06c+aMwsLCVK1aNTVv3lw333wzfx9CmVXUHHj//ff14YcfujVG9erVNXfuXK/FDAD5UQAE3LBp0ya9/PLLHj8vKSlJr776qv3PVqtVoaGhSklJ0YEDB3TgwAF9/fXXeuSRR9SpUydvhgx4TVGvf0cyMzM1e/Zse/EP8AfeyIHQ0FCVL1/e6TmgLCtuDqSnp+ull17S5s2bJUkWi0WhoaE6d+6czp49q7179+qKK66gAIgyq6g5EBISosqVK7tsc+bMGUlSgwYNihAZALiPAiDgpoiICEVHR6tBgwaKiorS9OnTC31OuXLl1KdPHzVr1kwNGzZURESEAgIClJGRobi4OC1YsEC7d+/WzJkz1aBBA9WqVasEXgnguaJc/4588cUX+vPPP9WoUSPFx8d7OUrAd4qbAw8++KB69Ojho+gA3ytqDmRlZen555/XL7/8oqpVq+r+++9X27ZtFRISoszMTB07dkybN29WtWrVfPwKgOIpSg70799f/fv3d3p+165devzxxyWJ9wgAPkcBEHBD165d87wpJyUlufW88PBwPfjggwW+HxgYqObNm2vy5MkaNmyY0tLStHbtWg0cONBrMQPeUtTrP79jx47pgw8+UPXq1TVw4EA9++yz3goR8Clv5QDgr4qTA1999ZV++eUXVaxYUS+++GKeQl9AQIBq167tskAClAW+eh/4/vvvJWUXF1u2bOmVPgHAGTYBAdwQEBDgk37Dw8MVFRUlSTp58qRPxgCKy1vX/6uvvqrz58/roYceUlBQkFf6BEqCr94DAH9R1BzIzMzUZ599Jkm65557mOUHv+WL94H09HStX79eUnaBkfcaAL5GARAoRYmJiTpy5Igkse4NDO2HH37Q9u3b1bZtW7Vu3bq0wwEAlIDt27fr1KlTslgs6ty5c2mHA5QpGzduVHJysiRu/wVQMrgFGChhNptNZ86c0Z49e/Tee+8pLS1NoaGh6t69e2mHBvhEYmKi5s2bp5CQEIe3xANm8Pnnn+vdd99VYmKiQkNDVa9ePbVv3149e/Z0ujkI4O/i4uIkZe9uGhoaqmXLlunbb7/V4cOHFRgYqMsuu0xdu3bVDTfcoMBA/lkCc8m5/bdhw4a6/PLLSzkaAGbAOy1QQt566y0tXbq0wPdr1aqlxx57rNAdwgB/9fbbbysxMVFDhw7l9i+Y1l9//aXy5csrKChIiYmJ+vXXX/Xrr79qxYoVeuqpp8gNGFLOXQ4VK1bUlClTtHHjRlksFoWFhSk1NVVxcXGKi4vT2rVrNXnyZAUHB5dyxEDJSEhI0K+//ipJTAIAUGIoAAIlJDQ0VJUrV1ZmZqbOnTsnSYqKitKDDz6omJiYUo4O8I2ff/5Zq1atUr169dS3b9/SDgcocW3atFGzZs3UvHlzVaxYUZJ06tQpffvtt/roo4904MABPfPMM5oxY4bKlStXytEC3pWzUcIff/yhPXv2qGfPnrrvvvsUERGhtLQ0rVixQgsXLtTOnTs1d+5cjR49upQjBkrGDz/8oKysLJUvX57b4wGUGNYABErIvffeq3feeUfvvfeePv74Yz355JMKDAzUM888o+nTpyszM7O0QwS8Kj09Xa+99posFotGjhzJ4tYwpQcffFDt27e3F/8kqUqVKho4cKAef/xxSdmzA3NuBQOMxGazSZKysrLUuHFjjR07VhEREZKk4OBg9e/fX3369JGUfTvkqVOnSi1WoCT98MMPkrI/JAoPDy/laACYBQVAoBQEBwfruuuu04svvqjq1atr9erVWrZsWWmHBXjV+++/r2PHjumGG25Q48aNSzscoMxp06aNmjZtKknasmVLKUcDeF9ISIj92Nks8H79+knK3jH4t99+K4mwgFK1c+dO++3xbP4BoCRRAARKUe7NP7799ttSjgbwniNHjmjJkiWqUKGC7rzzTqWmpuZ5nD9/3t42PT29wPcAs2jUqJEk6dixY6UcCeB9VapUsR/XqVPHYZuqVasqNDRUUva6aIDR5cz+q1q1qq6++urSDQaAqbAGIFDKqlatKkk6evRoKUcCeM/Jkyft610OHz7cZducNZ/atGmjiRMnlkR4AIASULduXY/aWywWH0UClA3p6elat26dJKlbt26yWpmPA6Dk8H8coJTlzPrIfZsMAMAc4uPjJUk1atQo5UgA78s9u+nQoUMO25w8eVIpKSmSpOrVq5dEWECp2bBhg/165/ZfACWNGYCAD2VmZrrc+ODs2bP2hd+bNWtWUmEBPnfllVdqyZIlTs//9ttv9tl+b731FsUPGJLNZnM5o2nLli3auXOnJKl169YlFRZQYmrWrKmmTZtq586dWrJkiTp27FigzRdffCFJKl++vK666qoSjhAoWTm3/zZu3Fi1a9cu5WgAmA0FQMBNiYmJ9uOcT+4kKTk5Oc+50NBQBQZmp9Ybb7whq9Wqzp07Kzo6WkFBQfbnb9u2Te+8847OnDmjgIAA3XHHHSX0SgDPFeX6B4ykKDnw5ptvymKxqH379oqJibG/B5w+fVrfffedPvroI0nS5ZdfzkwQlHlFfR8YPHiw/vOf/yguLk6vvPKKBg0apIiICKWnp2v58uVaunSppOxNQnLvlg2UNcX9u9CJEyfsG93w/3wApcFis9lspR0E4A+c7V6X3//93//pyiuvlCTNnDnT/kmfxWJRaGioLBaLkpOTlZN6YWFheuSRR9S2bVvfBA54QVGuf1eYAQh/4633ACn7H4s56tevr4kTJ6patWpejhjwruK8D3zzzTd67bXXlJmZKYvFovDwcKWkpCgzM1OS1KlTJ40fP97lXRNAaSvu34U++ugjvffeeypfvrzeeecd+3sCAJQUpmkAPnT77bfrsssu02+//aYjR47o7NmzunDhgipWrKjLLrtM11xzja6//npVrly5tEMFAHjZjTfeqEqVKik+Pl7Hjx/XuXPnlJWVpSpVqig6OlodOnRQ586dmTULw7vhhhsUHR2tL774Qr///rvOnj2r0NBQNWjQQNdff73DW4MBo8n5QKhdu3YU/wCUCmYAAgAAAAAAAAbGLsAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAADALV27dpXFYpHFYintUOBFkydPtv9eV69e7ZU+c/rr2rWrV/oDAABA8QSWdgAAAMB9Z86c0cyZMyVJV199tfr161eq8cAcJk+eLEmqV6+ehgwZUqqxAAAAwHMUAAEA8CNnzpzRM888I0kaPHgwBUCUiJxrrkuXLhQAAQAA/BAFQAAAABObPHmyfYaft9hsNq/2BwAAgOJhDUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAD+wf/9+WSwWXXHFFfbvLVy40L7bau6Hs51c9+zZo/Hjx6tFixaKiIhQcHCw6tSpoz59+mjBggXKzMz0SqxvvvmmAgMDZbFYVKNGDcXGxhZok5aWpjfeeEO9e/fWZZddpuDgYFWqVEnNmzfX2LFjtXv3bpdjONq5duvWrRo6dKjq16+v4OBgVa1aVd26ddOCBQuUlZVV7Ne1YMEC+5gLFiyQJMXGxmrYsGGKjo5WSEiIIiMj1a1bN7399ttuj3nmzBlNmTJFnTp1Uo0aNVS+fHlVr15dHTt21P/+9z+dOXOm0D4SExM1bdo0devWzd5HhQoVVK9ePV133XUaPny4Fi9erPPnzxd4rqtdgPPv+rxmzRqH11zOzyP/89zZBfjzzz/XwIEDVa9ePYWGhqpixYpq0qSJHn74YW3dutXlc3PywmKx2NcmPHPmjP773/+qZcuWqly5ssLCwtS0aVP985//1PHjxwuNBwAAwJBsAACgzPvzzz9tktx6rFq1qsDzn3vuOVtgYKDL5zVr1sy2d+9epzF06dLF3taZp59+2t4mOjratmfPngJtVq9ebatdu7bLWAICAmz//e9/3Rpn1apVtilTptgCAgKc9tevXz/bhQsXXP+QCzF//nx7f/Pnz7fNmDHD5Zjt27e3nTp1ymWfy5Yts1WpUsXlz6JKlSq2ZcuWOe0jNjbWVrNmTbeujS1bthT6s8zN3Wtu/vz5Dp/XpUsXp3EfP37c1qlTJ5f9WiwW28iRI20ZGRkO+8idF4MHD7Zt3brVdvnllzvtr0aNGrbffvvNaUwAAABGxSYgAAD4gerVq+vzzz/X8ePH9Y9//EOS1K1bN40dO7ZA2+bNm+f585NPPqnnn39eUvbMrAEDBuiGG25QhQoVFB8fr/nz5+vAgQPasWOHOnTooG3btikqKsqj+DIzMzVixAi99dZbkqRWrVpp+fLlql69ep52K1as0K233qoLFy7IarXqxhtvVM+ePVW7dm2lpaUpNjZW77zzjs6ePasnnnhCkvSf//zH5dhvvfWW3n//fVWrVk1DhgzRVVddJavVqg0bNmju3LlKT0/XF198oRdffNHeZ3EtXbpUn3/+ucqXL6/hw4erQ4cOCggI0NatWzVv3jydPXtWGzZs0E033aR169YpMLDgX7lWrlypW2+9VRkZGZKkNm3a6K677lJUVJSOHj2qDz/8UBs3btSpU6d066236quvvlKvXr3y9JGSkqJ+/frp2LFjkrJ/7v3791ft2rUVFham06dPa9euXVq1apV++eUXj1/n559/Lknq37+/JKlZs2b2aym3li1betRvUlKSOnfurLi4OElStWrVNHToULVo0ULnz5/X2rVrtWjRIl24cEGvvvqqEhMT9e6777rs8+DBg7r55pt14sQJDRgwQNdff72qVKmi/fv3680339TevXv1999/a+DAgdq+fbvKlSvnUcwAAAB+rbQrkAAAwH35ZzwVZuPGjTar1WqTZAsODratWLGiQJukpCTbjTfeaO/3pptuctiXsxmAKSkptr59+9rPXX/99bZz584VeP6RI0fss92qV69u++mnnxyOc+jQIVvz5s3tMwF37dpVoE3uWWu6ONPszJkzBdqtXr3aPksvMjLSlp6e7nBMd+SeAZjzGhzNJjt48KAtJibG3u5///tfgTbnzp2z1ahRw95m8uTJtqysrDxtsrKybE899VSe2WuJiYl52ixevNh+fvz48S7j37Fjh+348eMFvu9qBmCO3D9ndxTWfuTIkfY2rVq1sp04caJAm9jYWFtERIS93UcffVSgTf6ZsRUqVLCtWbOmQLtz587Zrr76anu7Tz/91K3XAQAAYBSsAQgAgIG9+OKL9rXonn32Wd14440F2oSFhenDDz9UzZo1JWXP0nN3ttipU6fUo0cPLVmyRJJ0zz33aNmyZQoPDy/Q9qWXXtKpU6ckSZ988onatm3rsM/atWtr8eLFCggIUGZmpl5++WWXMVSpUkWffvqpKlWqVOBcly5ddPvtt0uSEhIStGXLFrdelzvmzp1bYLalJNWpU0cfffSRrNbsv2bNnDmzwNp78+fP199//y1Juvnmm/X000/nWWtPyp6t+cwzz9h/Z3///bfmzZuXp83evXvtx8OHD3cZb9OmTVWtWjU3X53vnDhxwv46QkND9emnnyoyMrJAu1atWum1116z/3nKlCmF9v3yyy+rc+fOBb4fHh6u//3vf/Y/1+3KLwAAC+ZJREFUr1ixoiihAwAA+C0KgAAAGFR6erqWLVsmKbsAMnLkSKdtK1WqlOf8Z599Vmj/f/31lzp06KCffvpJkjR+/HgtWrTI4a2VNptN77zzjiSpXbt26tSpk8u+GzdurNatW0vKvlXWlfvvv19Vq1Z1ev7666+3H//+++8u+3JX48aN1adPH6fnr7nmGvu4f//9t9atW5fnfO6f7+OPP+5yrNy3Lef/vYSFhdmPC9swo6xYvny50tLSJEkDBw5U3bp1nba98847FR0dLUn6+eef9eeffzptGxkZqfvuu8/p+W7dutlvxfbWdQAAAOAvWAMQAACD+uWXX5Seni5J6tChQ55ikSO9evXSU089JUnauHGjy7a//vqrbrrpJh05ckQWi0VTp07V+PHjnbbfuXOnTp48KUmKiIjQF198UWj8AQEBkqQ///xTaWlpCg4OdtiuXbt2LvupU6eO/fj06dOFjuuOnj17utUmp3i5efNmde/eXVJ2MXTz5s2SsmfAdezY0WU/Ob+75ORkbdmyRVlZWfbZhT179pTFYpHNZtOIESO0d+9e3X333WrcuHFxXp5Pbdq0yX58ww03uGxrsVh0ww032GcCbty4Mc9O2Lldd911DtdazBEUFKTIyEgdO3bMa9cBAACAv6AACACAQR09etR+3LBhw0Lb526T+7mOdO7cWWfPnlW5cuW0YMEC3XPPPS7b79+/3368fPlyLV++vNB4cjt16pTTjUkc3T6aW1BQkP04Z+ZZccXExHjU5siRI/bjxMREpaSkSJKio6PtxTxnrFarGjRooF9++UWpqak6c+aMqlSpIklq0qSJJk2apOeee07Jycl69tln9eyzz6pWrVpq3769OnXqpBtvvFGNGjUqysv0CV9dl4VdB9Kla8Fb1wEAAIC/4BZgAAAM6ty5c/bjwmb/Scqzbl/u5zqSs3NtRkaGvZjlypkzZwpt40r+NfRyK6yA5gvu/Dxzt8n98/T09yK5/t08++yzWrJkidq3b2//3tGjR/Xpp59q3Lhxaty4sTp27Jhn5l1p8tV1WRrXAQAAgL/gb0oAABhUhQoV7MfJycmFtk9KSnL4XEdWrFih8PBw2Ww2PfTQQ3r99dddts9dxBk/frxsNptHj3r16hUaf0ly5+eZu03un6envxep8N9Nnz59tH79eh07dkyLFy/W+PHj1apVK/vGIuvXr1enTp303XffuTWeL/nyugQAAIBjFAABADCoWrVq2Y/37NlTaPvdu3fbj53dbpujU6dOWrlypSpWrCibzaaRI0dq9uzZTtvnXofv4MGDhcZS1uXefdedNrl/nhUrVrTPfNu3b599l2ZnsrKy9Mcff0iSQkJCVLlyZadta9Soodtvv13Tpk1TbGys9u/frzvuuEOSdOHCBT366KOFxu1rvrwuAQAA4BgFQAAA/Eju2xxtNpvLtldffbV9zbN169YVeqtu7t1227RpU2gs7du317fffqvKlSvLZrNpzJgxmjlzptNYKlWqJElatWqVfXMSf/Xtt98W2ib3bLvcP0+LxaLrrrtOUvYMuPXr17vsZ/369fZZcNddd51Ht7pefvnleu+991StWjVJ2bvfFuV27JyZhIVdc+7I/bP45ptvCm2f+2ftznUJAACAgigAAgDgR3LfSlvY7ZPly5dX7969JWXfRvnqq686bZuYmGjfaVWSBgwY4FY8rVu31vfff2/flOLRRx/VSy+9VKBdQECA7r33XklSQkKCpk+f7lb/ZVVcXJyWLVvm9Pwvv/xiL1zVrFmzwE6/uX++L7zwgsuxpkyZ4vB57ipXrpxq165t/3PO+o2eyLnu3L1l2ZVbbrnFvqPzhx9+qAMHDjhtu3jxYvtMymuuucbpDsAAAABwjQIgAAB+pEqVKvaZdNu3by90RtY///lP+4yxJ598Ms8svxwpKSm655577Dus3nzzzbrqqqvcjqlly5b64Ycf7Luw/utf/9J///vfAu2eeOIJ++2rkyZN0syZM13e/pqcnKy5c+fqgw8+cDuWkjR8+HDt3LmzwPePHDmigQMHKjMzU5I0btw4lStXLk+bIUOGqEaNGpKkZcuW6bnnnnM4xnPPPWffMblGjRoaOnRonvOzZs3S4sWLXW6Ssn79ev3666+Ssm/Fdme33PxyCm9xcXFKTU31+Pm5RUZGavjw4ZKyr73bb79dJ0+eLNDu559/1sMPP2z/83/+859ijQsAAGBmgaUdAAAA8EyPHj302Wef6Y8//tCdd96p2267TZUrV7bfptm6dWv7jLw2bdroiSee0PPPP6+0tDTddNNNuv3223XDDTeoQoUK2r17t+bNm6f9+/dLyi4yvfXWWx7H1KJFC61atUo9evTQ8ePHNXHiRF24cEFPP/20vU3t2rX18ccfq0+fPkpPT9ejjz6qV199Vf3791fTpk0VHh6uc+fO6c8//1RsbKx++OEHpaWlOS2OlabbbrtNn3/+uVq1aqUhQ4aoffv2CggI0LZt2/T222/bb7Nt06aNJkyYUOD54eHhWrhwoW655RZlZmbqqaee0ooVKzRw4EDVqlVLx44d04cffqiffvpJkhQYGKiFCxcW2ARj27ZtWrhwoSpVqqRevXqpZcuWql27tsqXL6+///5ba9as0ZIlS+yF1ieeeKJIr7dnz5769ddflZycrD59+uj+++9XtWrV7NfclVdemWeWYWGmTJmi77//XnFxcYqNjVWTJk00fPhwXXXVVTp//rx+/PFHvfvuu/bC5qBBg+xrGQIAAKAIbAAAwK/88ssvttDQUJskh49Vq1YVeM6zzz5rCwwMdPocSbamTZva9u7d63TcLl262Ns6s3PnTlvNmjXt7SZNmlSgzZYtW2yNGjVyGUvOIyAgwPbWW28V6OPpp592+XpzW7Vqlb3t008/7bKtK/Pnz7f3M3/+fNvMmTNtAQEBTmNv166d7eTJky77/Oqrr2wREREufwYRERG2r776yuHzhwwZ4tbPsVy5crbnn3/eYR/u/CwPHz5sq1GjhtP+58+fn6d9zve7dOni9LUfP37c1rFjR5dxWywW24gRI2wZGRkO+/jzzz/tbQcPHux0rBx169a1SbLVrVu30LYAAABGwgxAAAD8zFVXXaWff/5Z06dP19q1a/XXX38pJSXF5e3ATz75pAYOHKjXX39d3333nf766y+lpqYqMjJS11xzjW6//XYNGjRIgYHF+6tBkyZNtGbNGnXv3l2HDx/W888/rwsXLuRZx+7aa6/Vzp079dlnn+nLL7/Upk2b9Pfffys5OVnh4eG67LLLdOWVV6pr167q27evatasWayYfOWRRx5Rhw4dNGfOHK1Zs0ZHjx5VaGiorrzySt13330aOnRooRt23HLLLdq3b59ee+01LVu2TPHx8Tpz5owqV66shg0b6pZbbtHIkSOd7vz72muv6a677tKqVasUGxur3bt368SJE8rIyFDFihUVExOjrl27avjw4YqJiSnya42KitK2bds0bdo0fffdd/rzzz+VlJRUrE1BqlWrph9//FGfffaZPvzwQ23cuFEnTpxQYGCgoqKi1LVrVz344IO69tprizwGAAAAsllsxfmbGwAAgEksWLDAvgbf/PnzNWTIkNINCAAAAHATm4AAAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYOwCDAAAAAAAABgYMwABAAAAAAAAA6MACAAAAAAAABgYBUAAAAAAAADAwCgAAgAAAAAAAAZGARAAAAAAAAAwMAqAAAAAAAAAgIFRAAQAAAAAAAAMjAIgAAAAAAAAYGAUAAEAAAAAAAADowAIAAAAAAAAGBgFQAAAAAAAAMDAKAACAAAAAAAABkYBEAAAAAAAADAwCoAAAAAAAACAgVEABAAAAAAAAAyMAiAAAAAAAABgYBQAAQAAAAAAAAOjAAgAAAAAAAAYGAVAAAAAAAAAwMAoAAIAAAAAAAAGRgEQAAAAAAAAMDAKgAAAAAAAAICBUQAEAAAAAAAADIwCIAAAAAAAAGBgFAABAAAAAAAAA/t/3o4N+Bk0rzUAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# df = pd.DataFrame(mlp_activation_data)\n", + "# df.to_csv(\"./tutorial_data/mlp_activation_df.csv\")\n", + "df = pd.read_csv(\"./tutorial_data/mlp_activation_df.csv\")\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"token position\"] = df[\"pos\"].astype(int)\n", + "df[\"IIA\"] = df[\"acc\"].astype(float)\n", + "df[\"token position\"] = df[\"token position\"].astype(\"category\")\n", + "\n", + "# Use format string to keep two decimal places\n", + "df[\"IIA_label\"] = df[\"IIA\"].apply(lambda x: f\"{x:.2f}\")\n", + "\n", + "mlp_activaiton_plot = (\n", + " ggplot(df, aes(x=\"token position\", y=\"layer\"))\n", + " + geom_tile(aes(fill=\"IIA\"))\n", + " + scale_fill_cmap(\"Greens\", limits=[0, 1])\n", + " + geom_text(aes(label=\"IIA_label\"), color=\"black\", size=10)\n", + " + ggtitle(\"MLP Activations\")\n", + ")\n", + "ggsave(mlp_activaiton_plot, filename=\"./tutorial_data/mlp_activaiton_plot.pdf\", dpi=200)\n", + "mlp_activaiton_plot" + ] + }, + { + "cell_type": "markdown", + "id": "e131c4f4", + "metadata": {}, + "source": [ + "### Localizing in across multiple tokens at layer 7, one layer earlier than layer 8" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b442fe48", + "metadata": {}, + "outputs": [], + "source": [ + "block_out_across_tokens_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]],\n", + " [7],\n", + " \"block_output\",\n", + " aligning_variable=\"position\",\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "617bce83", + "metadata": {}, + "source": [ + "### Localizing in different streams" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0b106423", + "metadata": {}, + "outputs": [], + "source": [ + "attn_input_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"attention_input\", debug=True\n", + ")\n", + "block_input_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"block_input\", debug=True\n", + ")\n", + "mlp_input_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"mlp_input\", debug=True\n", + ")\n", + "mlp_act_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"mlp_activation\", debug=True\n", + ")\n", + "attn_out_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"attention_output\", debug=True\n", + ")\n", + "mlp_out_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"mlp_output\", debug=True\n", + ")\n", + "attn_value_out_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"attention_value_output\", debug=True\n", + ")\n", + "block_output_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [i for i in range(12)], \"block_output\", debug=True\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "723d6862", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin(\n", + " {\n", + " \"block_output\",\n", + " \"attention_input\",\n", + " \"attention_output\",\n", + " \"attention_value_output\",\n", + " }\n", + " )\n", + "].copy()\n", + "stream_labels = {\n", + " \"block_output\": \"Block Output\",\n", + " \"attention_input\": \"Attention Input\",\n", + " \"attention_output\": \"Attention Output\\n(After Head Mixing)\",\n", + " \"attention_value_output\": \"Attention Value Output\\n(Before Head Mixing)\",\n", + "}\n", + "df.loc[:, \"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df.loc[:, \"IIA_formatted\"] = df[\"IIA\"].map(custom_format)\n", + "other_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Name Position w/ A Single DAS Direction\")\n", + ")\n", + "\n", + "ggsave(\n", + " other_locations_plot, filename=\"./tutorial_data/other_locations_plot.pdf\", dpi=200\n", + ")\n", + "other_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "0660c1d4", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# all_streams_df = pd.DataFrame(\n", + "# block_output_data+attn_out_data+\n", + "# mlp_out_data+attn_value_out_data+\n", + "# mlp_act_data+mlp_input_data+\n", + "# block_input_data+attn_input_data\n", + "# )\n", + "# all_streams_df.to_csv(\"./tutorial_data/all_streams_df.csv\")\n", + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin({\"mlp_output\", \"mlp_input\", \"mlp_activation\"})\n", + "].copy()\n", + "stream_labels = {\n", + " \"mlp_output\": \"MLP Output\",\n", + " \"mlp_input\": \"MLP Input\",\n", + " \"mlp_activation\": \"MLP Activations\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "all_mlp_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Name Position w/ A Single DAS Direction\")\n", + ")\n", + "\n", + "ggsave(\n", + " all_mlp_locations_plot,\n", + " filename=\"./tutorial_data/all_mlp_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "all_mlp_locations_plot" + ] + }, + { + "cell_type": "markdown", + "id": "ec1e2720", + "metadata": {}, + "source": [ + "### Localizing in each individual head at layer 7 and 8\n", + "We further investigate whether any heads in the 7th and 8th layers specialize in name position information. Note that we consider each head individually in this analysis. Therefore, if the name position information is distributed across tokens, it would not be detectable in this context." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ed8bc7ed", + "metadata": {}, + "outputs": [], + "source": [ + "head_attn_value_out_data = []\n", + "for h in range(12):\n", + " _head_attn_value_out_data = find_variable_at(\n", + " gpt2, tokenizer, [17], [7, 8], \"head_attention_value_output\", [h]\n", + " )\n", + " head_attn_value_out_data.extend(_head_attn_value_out_data)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9ff1ce53", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.DataFrame(head_attn_value_out_data)\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"acc\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + theme_minimal()\n", + " + ylim(0, 1)\n", + ")\n", + "\n", + "print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "0484e997", + "metadata": {}, + "source": [ + "### Localizing with group of heads using rankings of missing out head IIA\n", + "When examining each individual head, localizing the name position information was not possible. Why is this? The information is likely distributed across multiple heads. To further investigate, let's perform an additional check by localizing in the concatenated head representations, leaving only one head out at a time. We leave one head out to determine if omitting specific heads results in significant drops in IIA." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "efae847a", + "metadata": {}, + "outputs": [], + "source": [ + "layer = 7\n", + "\n", + "head_attn_value_out_mo_data = []\n", + "for i in range(12):\n", + " print(\"evaluating grouped IIA without head\", i)\n", + " _head_attn_value_out_mo_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=list(set([i for i in range(12)]) - {i}),\n", + " )[0]\n", + " _head_attn_value_out_mo_data[\"mo_head\"] = i\n", + " head_attn_value_out_mo_data += [_head_attn_value_out_mo_data]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "565aed2f", + "metadata": {}, + "outputs": [], + "source": [ + "head_rank_list = []\n", + "anchor_acc = 0.48\n", + "for data in head_attn_value_out_mo_data:\n", + " head_rank_list += [(data[\"mo_head\"], anchor_acc - data[\"acc\"])]\n", + "head_rank_list = sorted(head_rank_list, key=lambda x: x[1], reverse=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dd2ec29b", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.DataFrame(head_attn_value_out_mo_data)\n", + "df[\"mo_head_cat\"] = pd.Categorical(\n", + " df[\"mo_head\"], categories=df[\"mo_head\"].unique(), ordered=True\n", + ")\n", + "head_drop_plot = (\n", + " ggplot(df, aes(x=\"mo_head_cat\", y=\"acc\", fill=\"mo_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Leave-One-Out (LOO) Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"head {i}\" for i in df[\"mo_head\"]])\n", + ")\n", + "\n", + "ggsave(\n", + " head_drop_plot,\n", + " filename=f\"./tutorial_data/layer_{layer}_head_drop_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_drop_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "df643ee6", + "metadata": {}, + "outputs": [], + "source": [ + "head_attn_value_out_cumulative_data = []\n", + "current_heads = []\n", + "for i in head_rank_list:\n", + " current_heads += [i[0]]\n", + " print(\"evaluating grouped IIA adding head\", i[0])\n", + " _head_attn_value_out_cumulative_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=current_heads,\n", + " )[0]\n", + " _head_attn_value_out_cumulative_data[\"adding_head\"] = i[0]\n", + " head_attn_value_out_cumulative_data += [_head_attn_value_out_cumulative_data]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "649efc83", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.DataFrame(head_attn_value_out_cumulative_data)\n", + "df[\"adding_head_cat\"] = pd.Categorical(\n", + " df[\"adding_head\"], categories=df[\"adding_head\"].unique(), ordered=True\n", + ")\n", + "\n", + "head_acc_plot = (\n", + " ggplot(df, aes(x=\"adding_head_cat\", y=\"acc\", fill=\"adding_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Cumulative Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"+ head {i}\" for i in df[\"adding_head\"]])\n", + ")\n", + "\n", + "ggsave(\n", + " head_acc_plot, filename=f\"./tutorial_data/layer_{layer}_head_acc_plot.pdf\", dpi=200\n", + ")\n", + "head_acc_plot" + ] + }, + { + "cell_type": "markdown", + "id": "a30c7613", + "metadata": {}, + "source": [ + "### Localizing the correct IO name with vanilla causal abstraction (no training)\n", + "We can further localize the correct IO name in the output streams. We use vanilla interchange intervention, so there is no training just activation swap." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "b2cf193e", + "metadata": {}, + "outputs": [], + "source": [ + "attn_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_input\",\n", + " aligning_variable=\"name\", # now we are localizing the IO name\n", + " do_vanilla_intervention=True, # we avoid learning DAS for this since outspace is large here.\n", + " debug=False,\n", + ")\n", + "block_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_input\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "mlp_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_input\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "mlp_act_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_activation\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "attn_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_output\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "mlp_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_output\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "attn_value_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")\n", + "block_output_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_output\",\n", + " aligning_variable=\"name\",\n", + " do_vanilla_intervention=True,\n", + " debug=False,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "ebe8298c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAACWAAAAJYCAYAAADmY91UAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AAEAAElEQVR4nOzdd5gkVfmw4efdQA5LzrDiGEAExISCsKCYHTGPCuNiziKfEQMYf5hzDqyj6JhxMIuw5gCiAiphlJxhyWkX9nx/nGqmprdDdU/P9Ozuc19XX11VferU6VSnuuut90RKCUmSJEmSJEmSJEmSJElS5+b0uwGSJEmSJEmSJEmSJEmStLoyAEuSJEmSJEmSJEmSJEmSumQAliRJkiRJkiRJkiRJkiR1yQAsSZIkSZIkSZIkSZIkSeqSAViSJEmSJEmSJEmSJEmS1CUDsCRJkiRJkiRJkiRJkiSpSwZgSZIkSZIkSZIkSZIkSVKXDMCSJEmSJEmSJEmSJEmSpC4ZgCVJkiRJkiRJkiRJkiRJXTIAS5IkSZIkSZIkSZIkSZK6ZACWJEmSJEmSJEmSJEmSJHXJACxJkiRJkiRJkiRJkiRJ6pIBWJIkSZIkSZIkSZIkSZLUJQOwJEmSJEmSJEmSJEmSJKlLBmBJkiRJkiRJkiRJkiRJUpcMwJIkSZIkSZIkSZIkSZKkLhmAJUmSJEmSJEmSJEmSJEldMgBLkiRJkiRJkiRJkiRJkrpkAJYkSZIkSZIkSZIkSZIkdckALEmSJEmSJEmSJEmSJEnqkgFYkiRJkiRJkiRJkiRJktQlA7AkSZIkSZIkSZIkSZIkqUsGYEmSJEmSJEmSJEmSJElSlwzAkiSpByLizRGRitur+t2eXouInxTP7e6I2Lvf7ZF6LSIWlr7DKSIW9rtNkhQRS0v7pWP73Z7ZJiJ+Wjo+eWC/29MLEbG49J5f2Md2lPvERf1qx3Swz59+M73viogNI+KqYnuXRMQG071NSZIkSZKkevP63QCtPSJiK+AhwNbAlsB84HrgKuBvKaVL+tg8rWEi4t7AHsA2wBbAjeTP2rkppbP72TateSJiO+Dtxez/gC9WXG8LYE/gPsDmwEpgGfAf4PSU0p09aNs6wAHAQmAr4BrgQuC3KaXlHVT1NuAJ5ODtTwAHTrVtkiRJ3YqIp5CPTQC+mVI6q8t6tgceTP7dsCVwK/l3w//Iv1NTD5oraRqllG6NiPeRf6fsCLwFeGd/WyVJkiRJktY2BmBpWkXExsBrgGcADwKiRdnLgG8BS1JK/5qZFqqKiFgAHFla9PGU0g3TtK3yCY6vpZQWd7DuxsBRwHOA3VqUuwj4AfCBlNJVXTa1SnsuBHapW7x/SukPFddfCFxQWvTclNJob1qnHnsPsFEx/b6U0opmBSPiQeTP6OOAvWi+X7w9Ik4A/i+l9L9OGxQR6wPvAl5EDu6qtywivgIck1K6vV19KaV/RMQPgacDB0TEoSmlEztt1+omIs4jB8gB7JNS+nuX9SwGji8tOiiltHRqreuqHXsDhxazN6SUPj7TbZBmmyIzxzGlRfdKKV3Yh3YsAhYVsxemlJbMdBs0PWbyWHptERFzgQ8VsyvJxzydrL8O8ErgMGAfmh+PXRURJwHHpZT+22VztZYo9uOnVih6J3AT+bfe34DvA6emlFZOW+PWDl8gB15tB7whIj6XUrqiz22SJEmSJElrEYcg1LQphuD6H/A+Wv+pXbMD8AbgrIj4ekTsNM1NVHULyCcma7cF/WxMIxFxOHA+cCwtgq8KuwCvB86PiDdMc9PqvX+Gt6dpVmRbe0ExeznwjRZl3wecAbwZ2JvW+8X1gRcD/4yIwzps0y7A6cAbaRx8RbH8jcDpRfkqPlSafldEtNuvr9Yi4n5MBF9d2m3w1SyzNxP78iP72hJJ9RYx8f1c3NeWqNcWMMuPpVdDhwH3K6Z/mFIar7piRDyenG30Y+TMV62OZ7YhH4/9OyI+EBHzu2yvVLYuOTPtw4BXACcDf3WY76kpsgd/sphdHzi6j82RJEmSJElrITNgqeeKP6W/ABxR99CtwFLyFZ7XALcD2wI7A48lD48F+Q/ww4Dr8OSwKmiQuQLy8JZjwDnA1eRgk3sDg8D2RZmNgQ9FxG7AS1NKd89Acw+IiMenlH4+A9vSzHgrE/3pZ9sM67dh3fxNwO+Bv5KHurmbHPBzKBOBPxsBIxGxMqX0zXaNKTLBnQTsXlr8H+DbwGXkITmeA9y/eGx34KSI2C+ldHOrulNKf46IPwP7kodOfCpwYrs2rcaeUpr+cd9aIUlaa6WUFvW7DbNNEQD+ttKij3Ww7ouBzwNzS4tvBX4CnAlcCWxCvmDjyeTfDwDrAG8CHhgRz0wp3db1E2ijyH63ZLrqryqltEYH2s+Qq4FGx9cbAFsz+XP4YOC3EXFISukvM9G46dTHfdfnyf8NrAe8JCLel1K6sk9tkSRJkiRJaxkDsNRTxZ/h32FieCPIgTDvBz6dUrqjxbp7Ae8gD1coVRIR7wLeWVp0GzkL1scbDQNXZGZ7PvlEzRbF4heS94cvqC8/Td4fEb9IKaX2RTWbRcRW5M8T5OCp41sULzuVfHLgxEYBWxHxFuD/AR8gB6UG8LmI+HWFYTM/ADywNP8h4M3lz1vxvfkgOesgRfnjgFdVaPtXyAFYkINkT6ywzuqqHIB1Ut9aIUmSyp7MRKD6fzoY3vuFwJdKi+4CPgq8O6V0a4NVjoyIJwGfJV80BPAE4McR8RiHi1MFb242nGxErAs8ivwfyAHF4o3JF148sM1FHWoipXRDRHyf/BttXeDl5P8HJEmSJEmSpp1DEKrXjmJy8NX5wINSSh9uFXwFkFL6Z0rpmcAjgYunr4laU0TEgcDbS4tuBA5IKX2oUfAVQEppZUrp68BDgEtKDw13Osxbh8pBMw8CnjWN29LMeTH56mqAX6WULm9T/u/AwSmlg1NK32l2YqX4nH4IeFdp8SbAK1tVHhH3KtpUc1JK6U31wX4peyOTszq9pFi/nW8DdxbTB0bEAyqss9qJiM2A/YrZ24BT+tgcSZI04dWl6a9VWaEYVvhTpUXLgcGU0pubBF8BkFL6CXn43n+WFh+EQ5tpilJKd6aUTgYeDfyq9NB9gcf0p1VrjPJ+4WURMbdpSUmSJEmSpB4yA5Z6JiIGgP8rLboWODCldEUn9aSU/hQRDwEOrLjd+cD+5OEhtiKn+L8C+F1K6epOtt1iG9uQT8RvT74q9aKKQ4HNAR4BDJCHW7wd+HlK6bwW62xKvhJ2B/KwedcDFwC/aRfEVqE9A+TAo63IwRy3FHX/PaV0Sat1Z5viff8aE4GkCTg0pfS3KuunlC6MiMeSA2JqATSfiYifpZSu63mD83CI+zKRmeg9EfH96Rj2MCLmAXsAu5E/dxuQg9OuAv6YUrqsR9sJ8uf7fsV2bgZOTyn9ucU6c4t19gI2BZYBf0spnTbFtuxFfm23IWeLuhL4c0ppfCr1VnB4afoH7QqnlCqdJCw5DngdsFkx/0RWHW6z7BXA/NrmyFm0WjmKnEWCYr1XkIfXaSqldHNE/Kq03jDw5jbbWR09gYlhYU6e6v63V4r+6FHATuT2XQ6c2mlf28P27ET+Tm9DHmLzauBfwF97keWv6BMPJPe/mxX1jzQLsi3W2ZG8v90GWEAOoLsY+OdU9gkR8WDyvnU7cv95HrlvvrPlio3r2og8jOf9gC3Jx+TXAxcBf0gp3dRtO+u2M4/8+t2bnPXxOuAM8n63q/cnIu4PPIz8OtxIfm2X9mo4ruk8DppuEbEQeDj5+3k3OdD71yml6/vUnvuSh7Tahjx82lXkY74ze1R/V8fH06HISLk/+XO5Kfl3yHnk79NdPah/fXLQzULyMfQ15OOMf0217ulUfF9rn4G55M/AmSmlf/So/p7vYypsczsmB6e0Pf4qHE8+Jq55aUrpZ1VWTCldX/xuOIs8bBzAMcWx/H8qbv8e3fRtFesN8sVMu5Pfj6vIF0T9oV+Zd4uh3vchD4F9O3l/fmpK6ZYu6lqX3Hfen/w+rEfuIy4jP8dre9XumZRSuisijgEOKS3eD/hplfWL3/gPIA+buTH5uOda8nfx31Po7+9F/u+gto9fDtwAXAicNR3HnhGxPfBQcsa5TchZ6m4iH2v8K6V0YcWqTiV/NjYj/059LFDp+y5JkiRJkjQlKSVv3npyAz5HPuFfuz1nmre3GfBx8sm/1OB2NzljyUMq1re0tO6xxbIB4CfkP/7Kdd9QWm9R+bFiWQCvJ594q2/XkU22v3exreVNns8txfPdtMPXaR3yVeLjTeqt3f4NvAVYt7Tukjbr1N8u7MH7Wq5vSYtyh9WV/WKX23tbXT1H9/AzemGp3s+ThzMrb+vFbdZfWFd+qEXZ9cnDLIyR/6Ru9T6dBjy54nOob8PCYvlzgf82qf+fNPjekYd4bPSdSORAuAd1+PquC7yxRZ21eh/Tq/e0bvt71m1r22nazk9K27iuTdnzSmWXVqz/N6V1zq24zotL61zUo+c5VKrzBmBui7Lb1r32d9Fi30g+QXdHqXzbzz/wrarf1YrPb3Fdmxe1KLu0VO7Y0nP+DrCiwed8JTkzWdPPIJP3R1VuS9o8n6cV369m619OHtJyToXXZkn9dsnBAt+se99qtwUN6phD3gee2eZ5XQi8D9isQR0L68ouLJY/kXzSvVF91wOvq/gZ2JYc9PiHJu9j+fP8A2CPLj5bFxbLghyAeUWTbZwLPLbDz/CDgT83qe8G8vCn6zT4vC2uWP/eTMNxUMVtH9vova/wXVpcLLsP8Avyd7HR+/lZYOMWdXby3bxnv9CkrjnAi5jcH9TfzqficTpdHB8Dvywt+02H78W2dfW+tE35RcDvyMf9jZ7rdeShqtetsO3y52BpsWwd8gUm1zep/zRa/NagB8fSjd6DCs/lueTvebPtXEzOqtm0r53pfUwHn5HXlrZzTsV19q9r3y+73Pbz6+pp+vuDKfRtjV7ziu/5xU3ejwuAI4pyC+seW9iiznK5RZ2UIwfq/rFJe24D3gPMr/C8FgAvA04mB3A1+0yvBH4N7Ffx9ar8OnT4GVlUV+/iiuut38FnK8jBWl8lH2+12qdcUnxn2r7WpfqfSN63tdtfjQPvaVHP0lLZY9tsc1/yfzeN+tHy7VLg0xTHG23q/EZpvZFevL/evHnz5s2bN2/evHnz5s2bN2/tbg5BqJ6IiM3JwRU156aUvj2N29sL+A85M8wmTYrNIV+p/peIeGMX23g8+arRJzKRBaXKevPJw3p9lHylb5V13gH8rdjW/CbFNiQ/3zMj4t4V692VHAzzKfKV6a3sRj7BtF2VumeB15amV5L/xO/Gx8gBSzWvKq7m77mU0knAn0qLjomI9ZqV79CjyX8yP4V8hXIrDwFOioiPFFfKdyQiPkw+ebRrkyJ7Ar+NiEcW5SMivkA+EdXsO7E3sDQiHlSxDbuSAy0+2KLOWr2/ioj3Vam3Q08sTZ+bUrpyGrYBObNYzYbNChVXv9+ntOhXzcrWmTTkScX9y9LS9M4RsUfFbVWtc1PyUJ3NLKqbn0vOmNPMvuSAPcgn6X/XqiHFPuDxxWwiBxr0TUTsQw52ehaNs5cG8GzgdxGx7TS3ZYOI+BE5QGjvFkW3I58g+0VEbNCiXKNt7EPuu57LxPvWqvxW5Pf0G0xkGWxmF/KwUXtVbMvbyH16s8/4AuDjEfHpCtW9AfgIOTtJq35mLjnA7bSIeHaVdpZFxDrkYNwPk4NZGrkv8NOIeE7FOp8P/IWc3amRTcnZ834TEe36oEb1T8tx0EyIiMeR2/5Y8nex3lxydsFfRkTTfXiP2rIlOcDvy0zuD+oNAKMRMdLpsEwVj49PKE0/KiJ27mATQ6V6lwPfbdKOuRHxeXKWk/2h6e/azcnD+f6l2FdUVgxF+1vyBQoLmhR7CPlzf0AndU+XiFg3In5IPk67b4uiOwGfIR97bdrhNnq+j+lQ+fhracV1Xls3f2w3G04pnUAOYKw5vPgd3FanfVsnIuKz5Pd8pyZFFgJfrdhX9aI9i8n98iOaFFmfPIz89yrsgw4jX8jyaCayFjfcLHAw+TfIkZ20d5aofx2aDotJ7g9/CRxB+9/uOwKfAH4eEQvaNSIi3kU+7n1Iu7Lk/xdeU6Fcu22+iNx3HUTjfrRsB3KAf5Vjy6Wl6cd387tXkiRJkiSpUw5BqF45iPxHas1XpmtDxXAqpzIxJBfkq6y/R85KsCn5z9fHk0/GzAE+GBErUkofr7iZXckn+TYmB+f8APgH+Y/QHZk8PEC9jzBxYuB08h+YlwIbkYdfuL3u+XyYycOELS/W+SN5eLYtyMNsPLZ4fGfyiZ69U4thFiLifuQ/vssnm64nn0j+Z1H3JuQhHBYV9/WuImc5mkc+aV1zETk7Qb1Lm7WnlyJia/LQBDUnpy6HUEwp3RYR3wZeUizanhxUcPqUGtncW5n4M3hHcvaBj/Z4G8vI7/0Z5CFNlpOvuH8kk4dVO4r8Xn6yg7pfxMTn9XTgJPKwHwvIwV8HFo+tD5xQDDvyZuClxfK/FetcSv6uDpbW2QRYEhH7pBZDMxaBRr9j8km/88gnA/9LDsjbHXhOqczREXFLSqk8TOpUlfcDv+9hvfXuVZq+qkW5+sCTpkNB1vlT3fwDya9jUyml8Yi4konX9xDg7Irba1bnlRFxLnlINsj7pWbfw0VNlv24Qvl/pJRubNOcRzFxsv1vqU/D+xW2IX+2tyX3Rz8kf7dvJX82nk8+sQo5qOJz5OCdeheS99sbMzF80l3kfUAjq3zWiqF/fkkeFqfmWuBH5H7lVnIf9XQmPo+PAX4QEU9IKaVWT7SwGfB98vO+g7y/+BP5uW/LRCbBWpu2Kh4vB+TcCvwc+GvRvg2Lxx9F7oerOoyJ4N7/FM/zf+QAoYeRT6KvUzz+qoj4ZUpprGLdF5D3G2eT99lzyK/dY5no39YDvhER/00Vh9ctfIaJIUJPJWcNuZK8z308E8cTc4EvRcQfUkpN+++IeDQ5gLZ8cvjP5O/bleQhFB9HPhbcl5ztqbLpOg6aIbuR+9CNyf3t98lDcN5ZPHYYE9+3fYH3kjOk1qvtczdn4vj2DnL/2siy+gURsQX5M3W/0uJLgROBc4o2DZADOWsB1IeTj0tf1vQZTlb1+PgH5H3R+uST6c8lZ0ir4vml6Z+mBsM3FifRR4FnlhbfQt5XnsbE/uLJTASA7AWcHBEPS9WGDZ1DzoT4cHLg7s/IwVjXkY+tDyW/p5ADAb4REbunVYdVm7Fj6eJ1+R4T33/IQdzfJQfx3kUOJh0if68gB6/9KiL2Tyktr7ipnu5jOlEEf5WD3doefxUBPo8vLTovpfTHKTRjCTmTIuT99MHk172Vjvq2ThRD172itOgu8j70t0X9uwDPIO+TXkX+PTidFpEzDM8jf85/wERGvj3J+51aoO4gOVPzJyrWfTn5Pf8nuX9fSf7ttojcB0H+7n4sIv7XQZ88G+xbN39WxfXuJAcvnUbuM24mH8M+iLyfql2sdjA5Y9bTm1UUEU8mZwysuYm8X/0Hud+ZR9537EH+HjYL+KusuLDuC0wE0d5JPr44jTzUa5C/P7uTjz9bBZbWK+8ftiL/xv/71FosSZIkSZLURr9TcHlbM27kP03LqeEfPE3bmUP+g7G8rWNoMMQR+UTrtaVydwAPaFH3UlZNcf9LYOs2bVrUYL07gOdWeD6Ddev9DtilSdnHMHm4xdEW9a7LqkNDfRbYpMU6+5BP0Ozc4LGFdXUtnMbPUnk7S5qUeVpduTdMcZvPqqvvyB49lwtLdX6+tPznpeXX0GRYogave6shCJ9cfDcGaTHEBPlP63+W6rwN2KJF+fo2rCQPnbW4Sfm31pX/FPlE0HLgBU3WqR8G8tAW7ZlHzsJSK3sn+cRxo33AxuQTtLWyy4EH9ui9jbrv42un6fuwA5OHVfp2i7JH172Ou1TcRv17/NaK6/2itE7T/VGHz/fzpTp/3KLcOUWZ8mtzeovyS0vlPlyhHR8plX9nj57b4rrXeVHF9tae40+BrRqUXY98Irdcd9PPOV0Ma1Ra96N12/kssFGDckEeHrRc9uUt6l1SVzaR+7Bd27QnitelvN73aD0U432BL9FgiKIG34W7yfuv19B4H7MXORijVv6MNu39ADkz0MPalHsi+URnrd6/dPDZqn1ermn2GSOf/C4P8fPRFnWvz+ThZlcAw03KPpkciFP/3Vzcov5pOQ7q4vt5bF07FrYoe2GD1/v4Jt+FzZg8jNNyWve55XYs7fA5fL+07krySfRVhmgiBw1+rO75Pr5FvUvryiaqHR+X+98zKz6H+9Zt5xlNyr22rtz3gS2blH0+k4e1PK7i6197b/8L7NmkfP3xS9NjAaZwLE3FYbyAl9dt44/ADg3KbU4OKCuXfW+Lehc3eF16so/p9EYeCrXc7obvTd06D6pb59NTbMND6+r7eJNySxp8d9r2bQ1e8wtblHtA3ef7Mhr8Dif/hq59vuuH62z6Wawr1/D9blCuVv/7abwP2pkczFwrfxUwr0XdryL39QfRYlhjcrDkRaV6L21Tb9ffyTbv3aK6ehdXWGdDJvcVt9K6r9ioeK4vp8GwzKVym5KHqC635wktyv+2VO6PNNmvlsrvC3ypxeNLS/Ud26TMSKnMue3eB3Lw1xdpMaxv3ef+tlL9TY9FvXnz5s2bN2/evHnz5s2bN2/eenVzCEL1Sjkb0XKqX7HZqUPJWXxqPp5SeldKaWV9wZTS74rytcfWZeJq5Sr+BQymlK7uop0vSSl9q1WBYoirz5QWnQ48JqXUMBtJSulkcqBQzXMi4gFNqn8lk4eG+kBK6ZUppZualCeldEZK6VkppYtbtXuWeFjdfCeZQRqpX/+hDUv1Ti1QBnLmkP/XomxVJ6eU9kspjaWUVjQrlFI6j5yZ4Jpi0frkkzxVBfkE45Imjx/H5CuLX03OgPDqlNLXmqzzfvKV1TWthqt5MZPf/+ellL7QZB9wM/nEa224uflMvqp7Ku7N5OFP/92jeuu9nsnDKn2nRdlypqyVNM+cUu8yJvaT0HxoyXr/Kk13klWolaWl6f0bDUtTDLFXy/DyD3JmIoC9Gw2jVAzzWc4qsLS+TANPKU2fVKH8dJpDPin31JTSNfUPppTuIA8BXM7q9bxeNyIidgeOLC36VNGv1Gd7IWUfIn+3a97ZwfCuVwOHpJT+16bcoeSsfjXfAp6dWgwHmlI6L6X0kpTSHyq0Yw45wPdTTfYx/yQHmtU8qMg+2cwxKaXnp5T+2mqjKaWfMjmzz8Mi4sEV2ltr813AE1NKS5vU/3XycI01Qy3qW8zkfcL/SymNNKn3x8ALS+1oaZqPg2bKHODElNIRTb4L15P7oVpWx/lMfm97ohgWsJzV5A0ppXenBhmNUkrLU0qvJw9XVtPJMM5Vj4/Ln7EHRkS74UFhcvarG2mQ1bDI9FXOZjkGPDM1yYaW8pBxryotel1RRztzijYcnFI6s0nd72PykLbPrVDvtCgyFJbfxwuAJ6WUVjkWSCktI39e/lla/MYiw2w7vd7HdKo8PPFKckB2O73+3XAmORi1purvhqp9WyfeycSwrXcDT0kNMiamlFamlI4lB7pP939Ac4BPpJSObrIPuph8PF+zNXl4wWa+klJ6Ykrp1EZ9canev5AzndW2uQPw1I5bP0MiYv2IuG9EvJT826k85N9RKaXrWqx+G3CflNLnU0o3NCuUcsbX5zH52PeVTdqzDpP/Z3l5s/1qqf4/p5Re0qpMBYtK029MKV3YZptnp5ReWvzOa6n4vJT3Eb36vSJJkiRJktSUAVjqlW1K05c1+rO1R15emr4aeEerwiml35OvPq55ckTsWHFbbypObHfqtOLEQzvPJA/XAjkY54jUZkiUlNIvmRwM8NL6MkXAwutKi84C3l6hPauT+hNE41Os7wImB6Bs06xgL6SUzmDyUCVHRcSWU6yz8mc1pXQV8OnSosd1sKmzUkqfa1F3Imd4KTszpfTFDtapP1EG3DO0Tvmz/d2U0vdbNTbloQyPLC16asUTjO3cu26+qyEwWykCLsrP90zyMC7NlAPCbk4pNRraaBVFwN6tpUUbNytbp/ycF0ZEL44plpamN2XyidaaRXXla+vMJWc+rLcvOQAX8snJ3zUoc48igOY+xeylKaW/tyo/Q17TJrByGTkDTE3D79AUvZYcgAk5q8QbW5SteTcTwZ7bMTmwrZV3tTvpVziqNH0V8IpWJ2e78G/aD4v0LSZ/f5q+9h3up08hD+1V08l++ssppdPalPlSaXq7iGg2jNALS9PnMDlgahUppW9TfUjWaTkOmmF3kQONmyoCn39TWjQd388jS9OnpZSqDG18FBNBJA+JiEb720aqHh//nJyJtub5zQqWlINHv9fk8/AS8pB/kIMQXlwcRzSVUvoSuQ+FnDVwuEJbAP6vWUBgSfm79KAOAk177RnkoP6aN6cGwzfWpJRuJ2f3q1mHPMx0Fb3cx3SqfPx1dcXfnD393VB8LstDKlb93VC1b6skIjZncoDRV4vfGK0cTR6ibjotI2fEbaro48qBaL3qO//D5N8UnfSd0+X4iEj1N/L+61zy8Hu1485xciD5F1pVWATUVfq/pfgtdExp0aMbXeBA3n+Ul59fpf4eKA8pPx3bLP9eqf/9JkmSJEmS1HMGYKlXNi9N39i01BRExPrkoQdqvtko20AD5WCRuVT7I/Ya8vBa3agSfAWTrwb/dUrp7C7qb3S18EOAXUrzH68aiLEa2bxufkqfueLEXTk7WH390+EdTGTE2Jg2Jyqmwa9L01Uzq8DkjAbN1AesVFmnfMLoXhExv0GZvYD7l+bbBUYA9wS81TJUzQcOqLJeG/UnEq/oQZ33iIgF5CFDaidy7wZe1eYk80al6U6DR29vUk8rl5em55MDbKakyFx0bmnRQQ2KLSpNn8rkoK125f9RZANopRwktEr2lT44p8jq0M6fS9OtsjB1rAh+fHZp0efbBcrAPSepv1ta1CrDRc3d5KCmdm3aBti/tOiLFd7bTo1UCOy4nclZZHr52ne7n15SocxpTA48XqXdEbEZkzNyfL04kduL7cP0HQfNpJMbZRhqYDq/n5uRM1vWVO0brwJ+VVpU5bWsfHxcHHuWszY+t9iXNBQRDwMGSovqg7lryp+bb6YGmQGbKB+LVP3cNMvcWVZ+b9clD2vWD08qTV8D/LDdCilnCy5ns3xixW0tqVCm7T6mS+Xjr6rHXj393dCgjiq/Gyr1bR06kIkAc6jwvhRBeT/qcTvqfafoG9uZrv1it31nv51Oznz7vXYFu/AH8rDtkLMf796gzG118/s2KDMdytudjm2Wf6/sPA31S5IkSZIkTWIAlnqlnDGlSlBUN/ZhIhgB8pX1baWUTmciAwdUyzzw14onGRv5U8Vy5RT/lZ5LoTx00W4RUR8ssX/d/Ikd1L26qM/Qc2vDUp3pJgNQ11JK5zL5RMkrO8jO1gtXlaY3L4Zpq6Ll0FkN6u5mnSBnP6q3X2n6Rqp/1+rb0IshJhfUzfdsv1cEn32XyVdp/1+R0a+V8nvYaRbCcjDN+hXXqX/Ojd6zbiwtTS9q8HhtWS2bVdXy9XU3M9sCsKoEX8HkE0wLetyG3YHNSvPd9llVvnvntMraUjITfV2/X/vyfnGHiuusYHJAa0NFRpFlpUULGhSrP3H9mwZlGqlabrqOg2ZSvz8jkF/HcmDTdH4/Oz0+Lgc97UzjLIU15QxZl9LgcxQRGwPloQyn87lelFoMZ1pyed38gsot6q3y75tfd3DxxU9L0/s0yYxT1st9TDfK9VQ99poNvxuq9m2dKO+j76D6/qjqPrpb/d4vdtN3Tqergf82uF3M5M/wQ8gZHv8YEQt72YBiv13OvrbK61IMZVjO+Pe1iFjUy3Y08Y/S9Mci4mmtgnW7UH6Ne/VbRZIkSZIkqSkDsNQr5aEMNpymbdynbv6sDtY9szRdX08j/+2g7o7XjYjtgK1Ki/7TQf3lP5XnsGrWmd1K0xcWQ1OtaeqHzujFZ65cx3QPzVHzLiYyFa3H5OEhuhIRcyLi4Ij4VET8PiIuj4hbGwx7UT/EQ9U/pKucjKw/sVUfkFVlnUbv6Z6l6fM6HGqs3IZeBLqVg5RW9GrYs+KEw/HAY0qLx4BjK6xeznq1ToebLmdQqJK1oFG5DRqW6tzS0vT+5ZPBEbEtE1kS/pFSujGldDUT+9C9I2LTUvn1mHw1fbnuVRSZZGpBIbcxOYtCv1T5zsHk71Cv++E96+a77bOqfPeq9r/lvm45nR0TVDUtr31EbBARz42Ir0XE3yPimoi4o8F+ujyEV9V99LJWw1V22O571c1Xfd//R5sg0Gk+DppJs+37eU1K6boO1p2u7ycAKaU/MXmYsYbDEBb7+eeUFn2rSb+6B5N/v3b7udm6SabNskrvbUqpyvHLtCqGAC4HbXf7G2kD2ges9HIf043y8VfVbJ+z4XfDVH5bNlPeR5/fQXBkJ9+bbkxX3zk/Ip4SEV+KiL9GxFURcXuDvrOc2W82BNy8OaU00OC2S0ppY/J/E+9h4vO8L/Cbop9sKyIeEBHviYhfRMRFEXFjRNzd4HUpf7ebvS7loQ93Ak6NiP9ExAcj4onlY+weKm9zU/Jw6xcWv2WfHhFbNVmvqvLvlV79VpEkSZIkSWpqXvsiUiXLmLhydUHzYlOyWd181SFH6svW19PIVAJwqqy7Rd38T6ZwoeeCFnVX/QN8dVMfVLaAyUMIdqQIetmkRf3TIqV0SUR8FjiqWLQ4Ij6UUjqvm/qK4Xu+SB6qr1NVM2B1OrRdt+s0+kKUP9sPLU4mdGNBl+uVlU8+tssW0YlPMvkE9VLgORVPqpWv8K76ftaUT2hWzShRf/K66gnZdpaWpjchZz88rZhfVHrs1Lp1diOfmD+AnEEA8kmsWnBZLWNWK09g4tjo5CKDR7/NhjbU91m3dtlnLahQpmr/W25TJwEBnejVvmviwYjDgY8wOfioiuncR0Pjdi+om7+hSkUppZURcSOtn+N0HgfNpJ5/RrpQfi23mua+sZvj4xPIwy4DPCsiXpNSqg/QewywTd06jdR/bv41xc9Nq98SvfwuTbdN67bb7W8kyL+TLm5Rvt+vS3lfX/W/jEa/G6aqHIhS5XfDdFzcsaA03Ul2rV5n4qo3HX3n44HPsmpgcDudHg/PuJTSOPDOiPgFcAr5Ioqdgc8AT2+2XhGg9elWZVpo9rp8iJxhtDwc6f2L2xuBlRFxOvnikJGU0iVdbHuSlNK3IuIg4CWlxTsDry5uKSLOBn4CfC2ldE6Hmyj/XpmOY0VJkiRJkqRJzIClXilfVb59havKu1G+MvauDk+2lq+wrTJUTdVhO1ZRcciPXl49Wn8l50wMB9lvV9fN37thqeruxeT9YZWMTb3yf0yclJlHvgK6Y8UQEUtpHHx1M3mYj/8xMezFRXVl+nHCsFO9+t704urn8j5lTkR0mnFqFRHxPvKJhprTgMEOgoDKQYgbRUSlE5NFuW4ywNUPVdiLIX0ohnw6t7RoUZPppU2mm5X/R0rpxjabLw8/eFLTUmufmfzuVe1/V7u+LiLeBIzQODBpGXnYtfLwROW+rh/76PJ+7a4OM/21GwZ1Oo+D1jaz8ftZVh6GcDNyoGu955Wmz04p/bNJXX5uGqvPHnRbB+vW9939HNKzinJ7qwbX9PR3Q0Ssy+SMcVV+N3T927KF8j66k6GnOx2muq8i4rnk4JtGwVc3Apcxue+sHxZ0tZBS+gPwldKiQyOiYebuIvjqdzQOvrqTfBHWBUx+XcqfwYbHFMX/GIPA62j8Os4hD3f6XuC/EfGJDoaxbyql9FLgcGC8wcNBHnr2LcC/I+KEImNtVeXfKz35rSJJkiRJktSKGbDUK6cBjyim1yX/SXZGj7dRPsE6LyLmdxCEVT4xMRtO1NafGLmM7q8or1+vHDwx20+idOu0uvkHMzkbTqce3Kb+aZNSujYiPsLEEHPPiojjUkp/r1pHRKwPfI2JP5iXk4dz+AFwRkpplexgEXEvJg8LtDoof29up/sTLL04MVOfXW4r8ve4KxHxFuDo0qKzgcenlDrJmHBBaXoueaiR+kC7RnZkcgBi1c9FfRBJLzPuLWViqMGDyFfkw0RAVX02q6Wl6YNK04ualFlFEYj2+GI2kU/2Kavvs6ZjKKVOrVZ9XUTsCby/tOgq4BPAz4F/p5TubLDOEcBXZ6aFDZX7jnkRsW6jdjaxcZvHp/M4aG1Tfi1X0Dp7USuX9qAtq0gpnVdkTHlIsej5wI9qjxfHME8rrdIs+xWs+rm5kNwfdGM6AmL6pf63TSfBZfXBW7Phd1Ir5WONqpkEG/1uOH4KbdiTyVl1Zux3Q51JgfcdrNdu/zxrFENPf4GJ49SbyFmfTgLOTCmtEmxYZFM6ZcYa2VsnAa8opgN4LKsOGw85Y245kPAk8vHCn4sLGVYREReRM0u1VGTd/WREfIZ8TH0IObvsQ5j8/+F84LXk4b8PaZDZsCMppW9ExAnk/5QeV2xzXyYHWgY5YHefiHhESumGClWX9xNranZwSZIkSZI0ixiApV75LfkPuJqD6H0AVv1wCVtRPZCi/MfbdA+7UMV1dfMvSCn9ehrq3rZHdc42v6+bfyzw4SnUd0jd/B+mUFc3PkrOfLQl+Y/l99M4Q0QzhzLxh/pK4IkVPk8LOmvirFD+bP8tpfSovrVk1cCmHegyACsiXkPOhFZzPnBISqnToTDrh+S4N9UCsOozQVQd2mP70vSylFIvT9ouBV5WTO8fEXPJ+/FaUNakwMKU0tUR8W9gd2CviFhADsrYt67OVvZn4nvxt5TSFVNo/5qmvs+6f8Vsj9Op3KbNOwzK7odXMTFc6ZXAg1NK7Y5hFkxri9q7tm5+Jxpnp5gkIjZh8rC+jUzncdDapvxaXpVSGuhbS5r7BhMBWE+JiE1K+/BBJgJCEvDNFvXUf24ek1KaDQGh/XYT+fivFqTSyRCn9WVnw++kVsrHNTtUXOef5MCyWpBS/XF/p/r9u6GmvI/eqYP1dmxfZNY4gon9w23Afimls9uss2BaWzS9Lqybv299gYjYHnhGadG7U0rHVKh7QScNKQKxTi5uRMRGwMHAc4FnMvFf4gHkoLFPdFJ/k20m4I/FrZZt7gDg2eTg3drFRvcHjgFeX6Ha8u+VKr+LJEmSJEmSpsQhCNUrp5Iz0tS8aBq2UX/Sb88O1i2XbXQV6Uy7nMlXmFc9gVDFv0vTCyNi8x7WPSuklK4G/lZa9OiI6OTEwz0iYgPgOaVFVwCVs0/1QpHlqJwZ5fERcUAHVRxcmv5lxZPYjYbxmO3Kw9L18jvTjX+TT3bWNBwipJ0iw035hMXF5BPK3VyhfWbd/CMallpVfbmzKq5Xfs7tToZ1amlpemNytopFTR6vXzaHiavm1y2W1WfMasThB5s7t25++4alZla5r1uHnHlzNivvpz9eIfgK+r+frt8XPKjientXKDOdx0Frm/L3c6tpGgZ8qkaZyFS1HpOHzXp+afp3KaVWGbzq90V+boBieNBy9spufyPdxhSyec6Q8vHG+hHR9jNQBJL8orTovhGx3xTasLg0fQf9y7ZU3kfvEBFVA++q7stng3LfOVIh+Ar633dORf3QgI2G9zuoVO5G4H1tK83/B7QLjG4ppXRLSmkspfRc8m+Hcvax5zVZbUpSSnemlH6VUnoJ8AAmD/f53IrVTOfvFUmSJEmSpFUYgKWeKDK1fK20aLeIeGaPN3MGk4cLeVyVlSLiwUy+uvsvvWxUN4rMIeWrpQ/sYfX1QQaH9qDO+qwis2Hf8cnS9BzgHV3W83om/yH9mT5ldvkscElp/v3NCjZQDob4Z8V1DmpfZNb5TWn6Xt0G3fVCke3pvNKiPTqtIyKeDXyZiZMoV5KDr7oaPiqlNM7kQNWqGR7K5c4v6qmi/Jz/1rRUF4oAtPKJ9kVUD8BqVP4fKaUb22x2bQnAKu/Pq+7L/8bkYJle9lndqs+EeGg/GtGB1XE//R8mD3F1aMX12pab5uOg1Vk3389y37gukzP/zQoppasosqgUng/3BAU8vrS81fCDtXrKfcPq9LmZ7mPp8u+bRxfD6lZRzrj6tyJYaTarP96oevz1ybr5KhmDVhERz2dyQMc3Ukr1mdlmyp/r5g+tuF7VcrPB6th3TsXCuvn6TJQw+TU5p+LQfz19TVJKpwNfLC3arZf1N9nmBUzOGLxNuwvNioy45SDNnv5ekSRJkiRJamQ2BFFozfERJp9c+GxEbNNNRRGxZX0AV0rpdiZfYfy8IhV+Oy8vTddfAd1P3y1NPycituxRvX9j8lXwR3ZwEqaZ+qHFpnQFbY+MMjlg6cURsaiTCiLi/sDbSotuBr4w5ZZ1IaV0J/Cu0qL9gCdVXL18tXSjK6UnF47YFDi8eutmjdOYPDTHq/vUjprflqYf0rRUAxHxJPKQTLV++Dpy8NVUM/SdWJo+ICJaZuYqHi9nW/tRlY0UmeN2Ly36TbOyU7C0NL2IiYCqu2iczapZ+frHVhER92PihOqlKaUZzYI3w8r780r78iJY5sTSolf1skHdKDIhlj93LymGvputOt1PH0gXgZ29VARifKe06JkRsWurdYpjmRdW3MR0HQetzrr5fl7J5IDEfveNzXyjNH1wRGwHPAuoZexazuTPRDPlMi+JiHV61L7pNt3H0j8pTW/J5CxjDRVZoMr7mZ80KztbFEF45QD4SsdfKaXfMjlI7ZCIeEEn246Ircm/d2vuAj7WSR29VATBlI8bj2r3my8iHsPqlQGr075zVzobxn22eWrdfH12W+jwNSlMR79Q/h5O9b+GbrZZZbsPLU2vZNXgfUmSJEmSpJ4zAEs9U2RNeWtp0VbAbyJi507qiYhHkIOI9m/wcDk4ZmvgPRXqKp8IPCmlNFuG1vg6E8N8bAh8LSLmdlJBRKzyp2sxDEl5SLMH0uZ1aqfIHHNDaVFfTwoDFFf7LgZSsSiAEyNinyrrR8QuwC+B9UuLX51SanSl8UxZwuTMDm+vuF45EO3xEdFu3/4ZYNMO2jUrFMEAHy4tOrIIUqis0XdmCn5emn5k1WGfikDB7zFx0vkm4HEppX/1oE2fZyIQNpj8ejVSPpG4Avhcxe08kon2r2B6ht9ZWppeBNyvmD6jGLZzkpTSNUwMS7cXk7PALK0vX6ec/WrWn4CeootK05tGxI4V1/sAE/vbh0fEW1sVrhfZuu1LduSjpeltgc9FRP3wPbNFeT/dMrg2IjYmf5dng88x8b6vA3wjItZvVLA48b+E6v3LtBwHrebK38/7dBBcdFxp+tkRUXVoJgAiYm4PgvXbOZGJIavmAENMHn7wpyml6yvU80kmhj3fiVUzG7XVj8/NDBxLf5/J2XKOK7K/NFS8Bp8qLVoOfLXHbZou5eOvRR2s90ImPjsAX4yISsE6EbEZ+XdD+eKi96SU/t1klZny2dL0/Wlx3FcEPX5p2lvUW530nfPJn+GO+pHZIiIeBRxRWnQbjS8cK78me7T7ryUiXkKF70lEbF4cf1RVHvr5oqalWm9zgw6Gzqzf5m00zhBWVv6deFqRtV2SJEmSJGlaGYClXvsok7Nk3A/4e0S8vt2J14jYKyK+C/wRaPZH4onF4zVHRsQ7GgWcFFd1/4iJz/mdVA9omXZFANErmDix+UTg1xFx31brRcR6EfHUiPgF8OYmxT5PHrKx5i0R8ZlW2UGK1//bLf7E/Wtp+o0RsbBVO2dCSukUJg9FsCnwu4h4Q7NgmCII4HBykF95CLsTUkoj09fa9ooAo/JQittWXPVXpen7AR9tdBI7IjaJiOPJJzxXdt3Q/voiE0OurAP8LCJe1S74KSLuExHHAl0N79fEL4Fbi+kNaBw0Wt+OhwJjTFyxfivwxJRST4bESCn9l8knUAcj4gP1QSnF9+CDTA48+kpKqZw9r5XysIW/bhQQ1QNLS9PrN1nebJ055KG4IGc+bJQxq+zJpek1efhByEFq5Uwsx1XJHJVSOpvJAU/vL/qVdsO/bBkRLwPOBh7RTYNbtGkM+HFp0fOA77TKvhkR946Iz0fEI3vZlgrK++kjIuI5jQoV2Tt+TT6R3vf9dErpDCafsH8E8OeIeGytnyn2J/uTswI+CbgaaHuSc5qPg1ZXpzHxemwAvKdKsFBK6SfkAJyar0fEMRGxYav1ImLHiPh/wH+BqsGYXSmG7j2xtOg1TO43v0EFRbDtm0qLXhYR34uIHZqtA/ccAz0/Iv5EDv7qh2k7li6+T+VjyHsBP4mI7evLFsFE32dyJqQPFq/t6uCHpen9ImflbKsIlnpdadE6wFhEHNfquxIRTwT+QQ7urvkt8L7KLZ4+nyH3rzWvi4jvR8SetQXFPnOI/PlbSB5ednVR7jsfU+yvVlH0+z8iB9z0ve/sRPEb5T3k51r+PfOBlNINDVY5lXxsCznY7BuNgi0jYk5EvIaJiyvavS57AhdFxHujfQbdpwEvLi0aa1N3M1sDF0bEJyJi7zbb3A84urTox8WFZ62Uf6/8sGkpSZIkSZKkHpqpVOFaS6SUUkQ8mxwksbhYvDn5pO17IuIUcuDLNeSAqG3IwVaPJZ8oaFf/yog4ghyAsVmx+N3AcyPie+SrLzcFDiIPP1AOQnlLjzLM9ExK6aQiKKQ29NyBwDkR8RtyivzLgDvIz2lHYG/yyc/aSYI/Nal3efFH++/Jf2wCvBIYiogfk08iXE8e/uS+xXZrV+I3O5m5hPw+Qf6D9n8RcQn5av7aycLLU0pPbPvEeyil9LYitqT2h+wGwIeAoyNijHyS4Rry5+Xe5KEd6k9GjQAvmpEGt/c9cvBcpUxehRPJQzLUTlq/jjy0yvfIQ/ZtQL5i+BnkYWkAjiV/d1YrKaUVEfEs4A/kfcf6wKeBt0XEz4GzyJ/tdcn7nt3Jw0/cr3GNU2rLrRHxI3LQB8Ch5JMirRwHlK8uT+SsL51s+vkppb+0ePxNwKOYGCLwTcCTI+LbwOXADuSTz/cvrfMvOgtkKA9tVOmkeadSSldGxLms+t61eo2Xkvd1Zf8oMo80VJyI3q+YvY0c/LLGKvqHbwIvLRY9n5wx50ImstMAjKWU3lm3+lvI+5JaX/BKYHHx3TuNvK8FWAAMkE/uP4TpzUZxBDkwu3ay8JnAEyLip+STzdeR94G7koM9HlaUG53GNjXyMeAl5BP+c4HRyFkpfsFEH/VIclDkuuQguc8yOdCkX/4f+fij9trtSW73HRFxDbAF+TWGvE9bTD7hWwvOq50oXsV0HQetrlJKl0XEr5j4jr0JeG3x/byzVPTzKaX6LGkvJH/v9iJ/xo4lB2P8nHxcsaxYvhl5v/pgJgeUzIRvMNFnlo/7b2RyMGVLKaVPR8SDmMhy+wxywPHJ5M/EleTh4RaQA072JmdFrGUU68tw00z/sfQXyAHFtUxBjyR/n74D/J38muxBPgYoD/l5GlPMljvDfgtcSt4nrA88jorBFSmlLxXBo58hB2vPIx//vDoifgL8E7iKfKy2C3mffO+6an4FPK24cKKviuPi55CH5K29p08Hnh4RN5KHV9+GicCe68h9UXkotr4/jxa+TM6wXetPPlz81zBG7h82Ie/LnkZ+z+4G3gscM/NNbeoDEdHoIrD55Oe1UYPHfkCTAL/i+PhrTOz/HgWcFxHfYiIY797k3yW1Y+ivAo8mf6Zb2Qx4G/l31b/I+9Nzyf3HHPLFS4cwOaD+GuCDbeptZQPgteS+7r/kY7p/kbNbJfLv9gOAxzAx/OIdTA44XUXkDK+1IQgT8M0ptFGSJEmSJKkyA7DUcymlFeTsDqeTT/7U/gzekPwn9lOarFqzEjiePNxRo/rPi4iDycNP1LJc7EbzP+ES8OaU0scrPoUZlVJ6d0RcQR4GZF3yH4uLqDakRquTmucXGT5+ykRgzubAcHHrtJ3fKq4AP6xYFOQAmHLGrAWd1tsLRRDW+eQ/f2vDGGwGvKDNqreQ/6T/YEoptSk7I4ogxqOZPLxKu3XuKoKSfsPEe7A7UB88Afn78F7y0E+rXQAWQErp0oh4GPlkW+0EwHZMHrajmV5fFf8VJk4mPzMijmpzQq4+EGUjGp94aaXh8F81KaWbIuJJwM+YCLLanYkAh3rnAE9OKd1UZeORh/kcKGavZ3qvKF/K5ACsu5h80rBR+SrLyp7AxPHQySmlOyq2bXX2VvJ3pzaUy3wmAphq/lG/UrGveTI56LEWwLUBxcneCtvt+UnelNK1RVaEk4CHF4s3BJ5V3GaFlNJ/i0xgX2EiM+eji1u9W8j7lS1mqHktpZRuiYjHA19j8jHcekzOJHkz8IKU0s9ictbTlvuW6ToOWo29ghxoWju+Wo/JAbPQIENmse/fHzgBGCwWbwY8t7i1MxNZY35FzpC2dd3y76WU7mxQvqmU0ouK4KV3kL9T88n78ypDyvXlczPdx9LFMeQzgO8w8RnYmNYXGfwBeFKRQWu1UFyQczwTv/2eQwfHIimlzxefnU+TA/Qg9xvPLm7NLCfvp46eTa9XSunfEfFo4FtMBN9DDlwtDwl7Hjkop/67Xun4rx9SSjcUFxWdxERm04cxERBctgJ4Nfl5zqYArK1ZdZ/XzO3kYMgPtfk9cSSTg2i3IgcxNfJL4FXk4/1OPKC4tXIl8PiU0nUd1t3MvVk14LHezcAzUkrntSn3bCYCtn6ZUrqkVWFJkiRJkqRecQhCTZuU0mfIGSfeRr7qul2AyyXkoKvdUkovTild0aLuf5CDrj5J/hOukZXkE1gPTyl9qLPWz6yU0pfIQVJfJGcBaOVa8h/sg0wefq9Rvf8lX2H/RvLr28pZ5CwXl7eo73DyyddR4HzySeLZEri0hBwU8m7ylbqtXAx8ArhPSukDsyX4qial9AtyMFUn65xJvsr3Vy2K/ZMcaNMoMGu1klK6ipzN5nnk/UsrK8nZHd5BhUx7HbbjFPJ3B/IV2lVO/E67lNKF5CxqHyEHSTVyffH4PkX5qsoncr+UUrqtacmpW1o3/7diGKuGiuGT6jMd1tdRrxxQUjkDy+ospbSMfPLy5eRAvUvJJ/2qrLsipfQycgDXT8knpFsZJ5+wflhKqd1QkF0p3vdHkj+b7U7IjZODw9vtN3qu6KeeSPOToHeTg28fnFKaVUNhppSuTykNkjPrfIeccfROcuaL08kBv7ullGpBEAtKq7c7rpm246DVUTEU7F7AG8gZ+a4kZ/uosu4tKaWnkj9nv6N9UNXZ5MyMu6WUejlEb7P23QV8u8FDJ3RZ37HkQNJv034fdik5APJgpilzYxXTfSydUrqz+AwcRuv94SXkYJUDW2WJnMU+x0T/c2hEdBSwWgzbeX/yb592/cHV5M/OA1JKb5hNwVc1xe+AB5GDo2v7jeXkz/2p5KxX+6SU/sNEFmnIn73pGEa6Z1JKvyIf8/+1RbE/AI9KKX1xZlrVE3eTs9+dR+5XXwFsn1L6v2Jf2VTKQ3/vD3ye5sdhl5H/A3h8xYsL/k4O7Po1kzOiNrIM+Diwe0rpnxXqbuYK8mf2x7Tv+28lX6S3e/GZaKf8e+UT3TVPkiRJkiSpczHL4g60BouIrcgBIluTs2LNI//peAX5pPqlXda7Djn1/q5FvbcWdf4mpXT11Fs+syJiHhNDpm1JHi7lZvIf6P8Gzus2YCgiHkgehmVrckaFm4ALgDNSSk0Dr1ZHETFAPim3DTnz143kEyjnFicp1lgRURtqazvy1eBXAP9MKf27rw2bRhGxLTkAY1vyiaU7yScHzgfOSindMI3bPpw8jCXAT1JKT56ubXWj2EceSM7ysCU5eOFC8j6yo5OIEbER+aTtAvJrPNDtvns2KPa315CfTwJ2aBX8q1UVn4n9yBlcaifAbyD3LWenlC7rQ5sGyP3oNuQMczeTA2//kVK6YKbbUy/ymKMPLm5bkPviy4E/ppSu7GfbeqF4/c8vLdq5k8wT03kctLYphljdnxwgvAU5i+AN5EDEs4rgxTVCkXXtkeRA6y3JGSdvIgcL/ms2fPf7ISJ2J+9rtiFffHU1cGZK6Yy+NqwHIuIrTAzD9saU0oenUNcOTLxOtd+TVwP/Jf9OnYkMcTMiIl4MfKmY/V9KqV3GoVkjIh5AHk50a3KQ0BXAXzu8kGCNUgQfHkje980jB9+NA3/q9nMbEfPJw5Xeh9x/bMTEb6uzyMdTPQ1EjIg55Avs7kceXnRjcp91PfAf8vew0kUfRTbIWtD/2cCeHjdIkiRJkqSZYgCWJElTEBFzyUEB9yUH8TygyDCwxomIo8hZswA+nVJ6TT/bM1URsYicGQLg9JTSQ/vXGmnNEBGvJmc9A7g2pbRVq/KS1I3igoNzyUEnlwK7ppRW9LdVs19EfA94RjH7/ZTSM/vZHqnXImKMiQy3z0wpfb+f7ZEkSZIkSWsXhyCUJGkKUkp3k4c3BAjgLX1szrQpsou8vpi9BXh/H5vTK+XhB2fVkG/S6igi1gNeW1r0i361RdKarRius5bJaUfysItqISLuDzy1tOjn/WqLNB0iYg+glo34dOAHfWyOJEmSJElaCxmAJUnSFKWUvgP8tpg9rBjyZ03zSvIJToD3rSFD9ZUDsH7ct1ZIs1hEzI2IB1coNx/4MnnIopqvTFvDJCkHwF9fTB9TBIuvVSJix4jYvkK5bYDvkDOGQR5m8dvT2TapD95HviAmAa916EFJkiRJkjTT5rUvIkmSKngZMFRM70QelnBNshx4F3A38LE+t6UnUkr37XcbpNXAfOD0iPgl8HXg1JTSZbUHI2IT4BDgaGCf0no/TimdiiRNk5TSdRHxPGDfYtFC8rCEa5M9gBMjYpQcUPWnlNINtQcjYgfg6cBbge1K6x2TUrp5JhsqTaeI2BA4A/g7cGlK6U99bpIkSZIkSVoLhReESZIkSWqkGFbw9rrFN5GzzmwAbMGqWXXPBw5cQzLlSdKsFRGPB35WWpSA68gZrjYFFjRY7UfA01NKK6e9gZIkSZIkSdJaxCEIJUmSJDWTyJnvyjYBdgG2YtXfEz8G9jP4SpJmxIq6+QC2JO+jF9Q9thz4MPAMg68kSZIkSZKk3jMDliRJkqSmImIr4KnAAcADycOsblw8vAy4FFgKfDel9Nd+tFGS1lYRcT/gKcB+wP3JQw1uSA7Oug44DzgF+HpK6eJ+tVOSJEmSJEla0xmAJUmSJEmSJEmSJEmSJEldcghCSZIkSZIkSZIkSZIkSeqSAViSJEmSJEmSJEmSJEmS1CUDsCRJkiRJkiRJkiRJkiSpSwZgSZIkSZIkSZIkSZIkSVKXDMCSJEmSJEmSJEmSJEmSpC4ZgCVJkiRJkiRJkiRJkiRJXTIAS5IkSZIkSZIkSZIkSZK6ZACWJEmSJEmSJEmSJEmSJHXJACxJkiRJkiRJkiRJkiRJ6pIBWJIkSZIkSZIkSZIkSZLUJQOwJEmSJEmSJEmSJEmSJKlLBmBJkiRJkiRJkiRJkiRJUpcMwJIkSZIkSZIkSZIkSZKkLhmAJUmSJEmSJEmSJEmSJEldMgBLkiRJkiRJkiRJkiRJkrpkAJYkSZIkSZIkSZIkSZIkdckALEmSJEmSJEmSJEmSJEnqkgFYkiRJkiRJkiRJkiRJktQlA7AkSZIkSZIkSZIkSZIkqUsGYEmSJEmSJEmSJEmSJElSlwzAkiRJkiRJkiRJkiRJkqQuGYAlSZIkSZIkSZIkSZIkSV0yAEuSJEmSJEmSJEmSJEmSumQAliRJkiRJkiRJkiRJkiR1yQAsSZIkSZIkSZIkSZIkSeqSAViSJEmSJEmSJEmSJEmS1CUDsCRJkiRJkiRJkiRJkiSpSwZgSZIkSZIkSZIkSZIkSVKXDMCSJEmSJEmSJEmSJEmSpC4ZgCVJkiRJkiRJkiRJkiRJXTIAS5IkSZIkSZIkSZIkSZK6ZACWJEmSJEmSJEmSJEmSJHXJACxJkiRJkiRJkiRJkiRJ6pIBWJIkSZIkSZIkSZIkSZLUJQOwJEmSJEmSJEmSJEmSJKlLBmBJkiRJkiRJkiRJkiRJUpcMwJIkSZIkSZIkSZIkSZKkLhmAJUmSJEmSJEmSJEmSJEldMgBLkiRJkiRJkiRJkiRJkrpkAJYkSZIkSZIkSZIkSZIkdckALEmSJEmSJEmSJEmSJEnqkgFYkiRJkiRJkiRJkiRJktQlA7AkSZIkSZIkSZIkSZIkqUsGYEmSJEmSJEmSJEmSJElSlwzAkiRJkiRJkiRJkiRJkqQuGYAlSZIkSZIkSZIkSZIkSV0yAEuSJEmSJEmSJEmSJEmSujSv3w2Q1naXX375jsAlxexO22+//aX9bI+0NluxYsVRwCbATfPnz/9ov9sjrW3sE6XZwf5Q6i/7Q2n2sE+U+ss+UZod7A8lSZKqMQBLkqQJRwE7AJcB/pkgSVpb2R9KkpTZJ0qSZH8oSZJUiUMQSpIkSZIkSZIkSZIkSVKXDMCSJEmSJEmSJEmSJEmSpC4ZgCVJkiRJkiRJkiRJkiRJXZrX7wZoegwODm4GHAg8uHTbunj4oLGxsaV9apokSZIkSZIkSZIkSZK0xjAAa831VOD4fjdCkiRJkiRJkiRJkiRJWpMZgLVmuxL4W3E7D/hGf5sjSZIkSZIkSZIkSZIkrVkMwFpzfX1sbGxJbWZwcHBB/5oiSZIkSZIkSZIkSZIkrZnm9LsBmh5jY2N397sNkiRJkiRJkiRJkiRJ0prOACxJkiRJkiRJkiRJkiRJ6pIBWJIkSZIkSZIkSZIkSZLUJQOwJEmSJEmSJEmSJEmSJKlLBmBJkiRJkiRJkiRJkiRJUpfm9bsBWr1dfvnlO/a7DWuAbcvTl19+ed8aIq3tNt9887nF5NxrrrnG/Zs08+wTpVnA/lDqO/tDaZawT5T6zj5RmgXsD9VP22+//aX9boMkSVUZgKWpuqTfDVjDnNbvBkhrs2XLltUmt8X9m9Rv9olSn9gfSrOK/aHUR/aJ0qxinyj1if2h+iz63QBJkqpyCEJJkiRJkiRJkiRJkiRJ6pIZsDRVO/W7AWuAbZm4guuhwJV9bIu0Vtt8881PI38nr1y2bNlD+90eaS1knyjNAvaHUt/ZH0qzhH2i1Hf2idIsYH8oSZJUjQFYmhLHXp66yy+/vDx7pa+p1D8rVqy4u5i82++iNPPsE6XZwf5Q6i/7Q2n2sE+U+ss+UZod7A8lSZKqcQhCSZIkSZIkSZIkSZIkSeqSGbDWYIODg1uWZjcpTW9a99iNY2NjK2aoWZIkSZIkSZIkSZIkSdIawwCsNds1TZafWDd/ELB0WlsiSZIkSZIkSZIkSZIkrYEcglCSJEmSJEmSJEmSJEmSumQGrDXY2NhY9LsNkiRJkiRJkiRJkiRJ0prMDFiSJEmSJEmSJEmSJEmS1CUDsCRJkiRJkiRJkiRJkiSpSwZgSZIkSZIkSZIkSZIkSVKXDMCSJEmSJEmSJEmSJEmSpC4ZgCVJkiRJkiRJkiRJkiRJXTIAS5IkSZIkSZIkSZIkSZK6ZACWJEmSJEmSJEmSJEmSJHXJACxJkiRJkiRJkiRJkiRJ6pIBWJIkSZIkSZIkSZIkSZLUJQOwJEmSJEmSJEmSJEmSJKlLBmBJkiRJkiRJkiRJkiRJUpcMwJIkSZIkSZIkSZIkSZKkLhmAJUmSJEmSJEmSJEmSJEldMgBLkiRJkiRJkiRJkiRJkrpkAJYkSZIkSZIkSZIkSZIkdckALEmSJEmSJEmSJEmSJEnqkgFYkiRJkiRJkiRJkiRJktSlef1ugCRJkiRJkiRJkiTNtJGh8WcBrwL2AtYBxoETgI8Njw6s6LCuDYHXAs8A7gusD1wHnA58cXh0YKzBOouAU9tU/Yrh0YHPd9IWSZI08wzAkiRJkiRJkiRJkrRWGRka/zjwOuAu4BTgFuBg4APAU0aGxh87PDpwe8W6tgB+C+xe1PNH4AZgAHgS8KSRofFPDo8OvK5JFVcBP2/y2LlV2iBJkvrLACxJkiRJkiRJkiRJa42RofFDycFXtwAHDo8OnFEs35IcjLU/8B7gDRWrfCc5+OpvwGOHRweWlbb1ROBHwGtHhsa/NTw68OcG658zPDqwuLtnI0mSZoM5/W6AJEmSJEmSJEmSJM2go4v742rBVwDDowPXAq8sZl89MjS+acX6Di7uP1AOvirq/CkTwww+osv2SpKkWc4ALEmSJEmSJEmSJElrhZGh8R2Ahxaz36x/fHh04PfAJcC6wBMrVntHxXLXViwnSZJWMw5BKEmSJEmSJEmSJGlt8aDiftnw6MAFTcqcDuxUlP1WhTp/BjwEePPI0PivGwxBeBBwJTDWZP1tRobG3wnsQA7mOgf4yfDowMUVti1JkmYBA7AkSZIkSZIkSZI0q40MjT8LeBWwF7AOMA6cAHxseHRgRYd1bQi8FngGcF9gfeA6ctDNF4dHB1YJkhkZGt8deCmwD7AQ2BII4DLgN8DHh0cHzurmuWnG3au4bxXcdEld2XY+ADwMeBxw0cjQ+B+AG4AB4MHAH4AXDY8O3Nhk/fsD76pbdtfI0PingDcNjw7cVbEdkiSpTxyCUJIkSZIkSZIkSbPWyND4x4HvAPsBfwV+DuxMDno5ZWRofP0O6tqiqOP9wP2APwE/IAdSPQn40cjQ+CcarPpI4HXkgK0LgJOAk8nJDl4InDEyNP7cLp6eZt7Gxf2tLcrcUtxvUqXC4dGBW4GnAB8GNiQHYj2HHHx1HfmzclmDVW8EPg4cCGxXrLsn8DEgAa8HPlulDZIkqb/MgCVJkiRJkiRJkqRZaWRo/FBy4NMtwIHDowNnFMu3BE4B9gfeA7yhYpXvBHYH/gY8tsFQcT8CXjsyNP6t4dGBP5fWOxnYbXh04Jy69s0BjgI+BHx5ZGj858OjA9d3/ES1WhsZGt+O/NnZE3g7edjCq8mftfcCxwCHjgyNP2p4dODm2nrDowN/B/5eV91ZwFEjQ+O/B74PvGRkaPyzw6MD/5j2JyJJkrpmBixJkiRJkiRJkiTNVkcX98fVgq8AhkcHrgVeWcy+emRofNOK9R1c3H+gHHxV1PlT4NRi9hF1j11YH3xVLF85PDrwYeB/wAbkgDDNbrUAqA1blNmouL+pYp1fAx4KvGN4dOD9w6MDFwyPDtw6PDpwGvBkclDVXlQPFGR4dOAHwD+K2adUXU+SJPWHAViSJEmSJEmSJEmadUaGxncgB7UAfLP+8eHRgd8DlwDrAk+sWO0dFctdW7FczV3F/Z0drqeZd2Fxv1OLMrXHLmxRBrjnc3pIMfut+seHRwdWAN8rZh9TqYUT/lPc79jhepIkaYYZgCVJkiRJkiRJkqTZ6EHF/bLh0YELmpQ5va5sOz8r7t88MjS+efmBYgjCg4ArgbGqjRwZGn8pcF/ykHN/blNc/Vcb8m+LkaHxezUp85Di/owmj5ftXJpuljHrxuJ+8yaPN7NFcX9zy1KSJKnv5vW7AZIkSZIkSZIkSVIDteCYi1uUuaSubDsfAB4GPA64aGRo/A/ADcAA8GDgD8CLhkcHbmy08sjQ+AbAZ4vZTYE9inWvAp41PDpQdcg69cnw6MClI0Pjp5Gzqz0PeF/58ZGh8f3JGbDuBH5aocrLStMPB37VoMy+xX2zQMJVFJm1HlXM/rXqepIkqT/MgCVJkiRJkiRJkqTZaOPi/tYWZW4p7jepUuHw6MCtwFOADwMbkgOxnkMOvroOOJnJATX11gFeUNwOJQdf/Q8YGh4d+F2VNmhWeH9x/5aRofF9agtHhsa3YCLA7tPlQLyRofGnjQyNnzMyNP7rckXDowMXA6cVs58YGRpfWH58ZGj8MPJnDOqG0hwZGn/dyND4lvWNGxka3xM4CVgf+C/wo86eniRJmmmRUup3G7QaW7FixVHAUf1ux+ospTR35cqV2wLMmTPnyoi4u99tktZi2wJzgbvJacYlzSD7RGnWsD+U+sj+UJpV7BOlPrJPFMBZ379h47NPvHGTLXZdZ/lj37XdNY3K/P2b129yzs9u2njr3da989FHb3ttuzpvW3bXnN9+9Ootb7xsxfzdn7zpTQv32/C29RbMXXnDJcvnnfndGza9+j93rrvpDvNXPOad216zzgZzWp5Eu/36u+Zc97/l888+8cZNrr9w+Tr3PWTjWx48vHnDzFmrsTW2Pzzt+Os2HT/llo1iLmx9v/XunLturLzmnDvWW3F7ii12XWf5wUdvc828dSdyWYyfcvMGpx2/bLMNNp9791M/seOk1+L6i5bPO+W4q7ZafsvKOXPmw+YL171z3Y3nrLzpihXzb77irnkAOz1sg9v2e/WW10fEPet996UXb3/3nSk23XH+ig23nHcXAbdec9e8Gy5ZMZ8E62829+5Fb9z62gU7rXPXTL0us8n8+fN37HcbJEmqyiEINVWbADv0uxGrs4hg7ty5tdlt+9kWSfeYi/s2acbZJ0qzjv2h1Af2h9KsZJ8o9YF9ogDW3TgHv9x9d1qHJvvilXfnGKl1N5q7brMyZX/50nVcf9EK9h5awG5P2nQTisxZW91nPQ560zb8/J1XcOMlK+af+7Obtn/gMxa0rGv9zeax44Pnsd1e6/PLY6/gvF/dvNG2D1xvox0etEEHz3K1scb1hw89Ygu22X09zvvVzSy74M51V94NG209j4X7bcj9Hr/JOnPnxaTnO2deDpyKOau+Fgt2ns8Br9+K8V/fwrX/vZPrL16+7sq7EutsMIdtH7ge9z5wI3Z++IYbAJM+HHs8dVOuOe9Obrxsxfyrz7lj/l13JuavP4et7rMuO+yzPgMHbzx3/vpztpnml0KSJPWAAViaqptonYpXbXgllzSrrLFXc0mrA/tEadawP5T6yP5QmlXsE6U+sk8UwPoL5q4HbHHbtXevBK5oVOaWq+/aAlhv/QVzbwFaZp+69dq75lx59h3bAez88A2vJO/j7zFnXrDDg9bf+MZLVmxy+Zm3L3/gMxY0zLpVb+68YOeHbrjRDRfdsOnFf77tth0etMH1VdZbTazR/eHOD9+QnR++YaWyux6wEbsesNGkZctvWxnjp9y84X+X3rLhLVfddc9517nzI+2y74a33/exG9+yxa7rrmhW525P2pTdntRt6yVJ0mziEIRSn11++eU7ApcUszttv/32l/azPdLabMWKFZeSr1y6zNTG0syzT5RmB/tDqb/sD6XZwz5R6i/7RAGMDI2XPwe7Do8OXNCgzMXATsDzhkcHvtWmvkcAfyxmNx0eHbipQZnXAR8HzhkeHditg7a+Avgs8OPh0YGnVF1vtrM/bG5kaPz+wM+AhW2KvgX44PDogCdlJUlag81pX0SSJEmSJEmSJEmaWcOjA5cCpxWzz6t/fGRofH9y8NWdwE8rVFke0ePhTcrsW9yvEuzVxqOL+/M6XE+roZGh8Z2BU2gffAVwHPD6aW2QJEnqOwOwJEmSJEmSJEmSNFu9v7h/y8jQ+D61hSND41uQM04BfHp4dODG0mNPGxkaP2dkaPzX5YqGRwcuZiKg6xMjQ+MLy4+PDI0fBjynmP1m3WNHjgyN71TfuJGh8Q1GhsbfDjwDuAs4vsPnp9XTx4HtOij/wfrPmyRJWrPMa19EkiRJkiRJkiRJmnnDowMnjgyNfxJ4LfDnIqjqVnLGqQXAH4B31K22KXA/YL0GVb4QOBXYDfjPyND4n4Fri/kHFGW+AZxQt96RwEdHhsb/A5wL3EEOwNkL2Iycheslw6MDZ3f7XLV6KALxntrhanOBlwFv7X2LpKmJiIXA4mJ2aUppad8aI0mrMTNgSZIkSZIkSZIkadYaHh14HTkz1Z+ARwJPBC4F3gIcPDw6cHsHdZ0N7AF8gDxc4EOBQ4GtgV8AzxkeHTh8eHQg1a16NDACJOAA4NnAPsCFwIeB3YdHB77e3TPUauYFdHeO9YUjQ+PR68ZIPbAQOKa4LeprSyRpNWYGLEmSJEmSJEmSJM1qw6MD3wG+U7HsEmBJednI0Ph65KCp55AzV90FnA28Hji1QcBVfZ3fpG5YQq1eRobG5wEb1t02aLCsXZk9u2zC1sAmwI3tCkqSpNWPAViSJEmSJEmSJElaY40Mjb8EOA7YvO6hhwLPIw9F+MLh0YE/z3jjdI8iO9T6dB8Y1a7MOjP3bJqa3+8GSJKk6WEAliRJkiRJkiRJktZII0Pjbwfe06bYbsCpI0PjTxoeHThlBpq12mqSRarTwKhmj28AzJYh+u4Cbi1ut5WmbwV2Be7dRZ3LgRt61D5JkjTLGIAlSZIkSZIkSZKkNc7I0Pgg7YOvatYDfjgyNL7b8OjA5dPYrGlVl0VqyoFRG209b5u7VyTuumPl9ituT8uZXRmcbmdyYFT5Vh801VG54dGB5c02OjI0/gjgj1209/vDowN3dbGeVElEzAGGyMOtPog87GUA1wHXAucBpwLfTildFxGLivmyYyLimAbV3yuldGGxncXA8cXyI1JKSyJiH+ClwMHkYV43qj1W18ZNgRcDTwB2B7Ygf+8uAH4JfDqldFmb57kjMAgcQB4SdCfyPvxG4L/AKcBnU0qXtKnnQmAX4KKU0sKIWKd4Ds8D7kPel/4XOAH4TErp1tK62wCvAJ4GLATmAP8Cvgx8JaXUclhbSWsmA7AkSZIkSZIkSZK0JnpLh+U3AV4OvHMa2nKPkaHx+fQmY1SjMj3NInXL1ffECwWdB1+Vs0hVDYqqWua24dGBlV0+ran6M/B3coBLJz47DW2RAIiILYAfA/s2eHj74rYn8EzyfuLDPdz2m4D3A3PblHsW8HlWHQ52HWAzYB/gyIh4eUrpa03qWEQOsGq0n9uiuD0MOCoiXplS+krF57At+fV7cN1Dexa3Z0bEY1NKN0TEvsCJwDZ1ZR9e3A6OiOcbhCWtfQzAkiRJkiRJkiRJ0hplZGh8b+ARXaz60pGh8feQg42mOtReszKrSxapW3d55IZPXmeDORvEXG4+7xc3f7hF2VUCp1plkVqdDY8OpJGh8TcBP6dNwEnJicAfpq1REnyJieCrS4BR4HzgevJ+5z7kfeKjSuucTc7gtAcT2QK/Xaxb7+om2302OZvVLcAI8FdgBTm71ZW1QhHxEuAL5MCp5cCPgN8CV5GzZe1Pzjy1HrAkIpanlL7VYHvrFXWcS87e9W9ydq+7gG3JWbEOJQd1fSkirkop/bhJ22vmA98nB1/9ivx9vZY83OirgB2BhwIfj4hjgV+Qs2MtKZ7D7cXjryiWPxc4Gfhqm+1KWsMYgCVJkiRJkiRJkqQ1zcFdrrcNOThgtqjPItXLbFK3t8sitWLFikvJQWQ37XvENu/u8XNbbQ2PDpw8MjR+BHkYtnZBWL8Gnj88OmA2HE2LiNgaeGox+0fg0SmlO5qU3QrYEiCldC1wYkTcUCpyTkrpxA42/wTy0IaHpJQubrLNPYFPkwOnzgcGU0rn1BU7PiI+TA5c2h74QkT8IqW0rK7cf4C9U0r/bNKeT0XE3uQgqa2Bj0bET9pko9qePGzii1JKk4KmIuJ44B/k4K7DgL3IAWaLUkp/LxUdjYifkL/vAEdhAJa01jEAS5IkSZIkSZIkSWuaTWdwW7VAp14OsbdGZ5FaEwyPDnx9ZGj8AuAdwGMbFLmUPOzgR3wfNc12BeYU0yc0C74CSCldA1zTw20nYKhZ8FXhWHJGqjuAJ6aUxpu07T8RsRj4JbAx8BLgA3VlLgIuatmglP4REUcDXyZn/nok7TPQfbk++Kqo66qI+DTwXnKw5d7k5/v3BmVPiYhfA48GHhARO6WULmmzXUlrEAOwJEmSJEmSJEmStKa5ZQrrfoqcpaVK4FTbLFJacw2PDvweeNzI0Ph9gCcDW5CHIzsT+Nnw6MBd/Wyf1hq3lqYfPMPb/n2jYKSaiFjARHauHzYLvqpJKf0qIq4gZ6R6HHUBWJ20qzS9L+0DsD5Vsa6rgO+2KPs7cgAW5GEYDcCS1iIGYEmSJEmSJEmSJGlN86cu17sRePPw6MDtvWyM1mzDowPnAx/rdzu01vo3cBmwA/DCiJgLfAn4c0rp7mne9u/aPL4fE9m57oyIQyvUeTM5AGv3ZgWKYQYPAx5BznK1CbBuk+I7ttnercDZLR6/sjT9t5RSq6DbctnN2mxX0hrGACxJkiRJkiRJkiStaf5APqG+R4frHW/wlaTVSUrp7oh4KfADchDSC4rbTRHxF/L+8GTgjyml1OPNX9rm8YWl6cXFrarN6xdExDzgM+ThCaNiPZu0eXxZm9flztL0dW3qKpddr01ZSWuYOe2LSJIkSZIkSZIkSauP4dGBBHykw9WWk0/sS9JqJaX0U+AhwPfI+zLIgUeHAMeSh9H7b0Qc1uNNtwtYXTCFuuc3WPYJ4KXk4KsVwEnAO4AjgGcDTytuLyutM7fNdjoZRtYhZyU1ZQYsSZIkSZIkSZIkrYm+BjweeE6FsglYPDw6MD69TZKk6ZFSOht4VkRsSB76b1/gUcVtXeBewNcj4t4ppXfNULNuKU2/NqX0qW4rioidgJcXs5cBB6WUzm9S9gHdbkeSumUGLEmSJEmSJEmSJK2J5gG7Vii3DHj68OjAt6a5PZI07VJKt6aUfplSendK6RBgK3KWqJq3RcS2M9Sc8hCFO02xrscwEd9wXLPgq8K9prgtSeqYAViSJEmSJEmSJElaE70deGgx/RHgncC/yAFXVwF/AF4I7DQ8OnBiPxooSdMtpXRzSum9wI+KRfPJ2bFqysPqRY83/ztyhkHIGQmnohw01i5b4ROmuC1J6phDEEqSJEmSJEmSJGmNMjI0/ghyABbAX4C3Do8OrADe079WSVJfXVCaLscJlIcJ3LCXG0wpXR0RPwOeCDwwIp6bUuo22+CtpemBZoUiYlfgBV1uQ5K6ZgYsSZIkSZIkSZIkrTFGhsY3Br5BPg92G3B4EXwlSWuciHhcRLw+IjZrUWZr4BmlRf8sTZcDs/bpdfuAtwHLi+kvR8RzWxWOiM0j4qiIeEzdQ6eVpt8QEVs0WHdn4CR6HEgmSVWYAUuSJEmSJEmSJElrko8DuxbTRw6PDpzfx7ZI0nTbDvgo8IGIWAr8GfgfObPVFsCewHOBWoDWd1JK9+wXU0rXR8QZ5OCrgyLiC8DJwM2lbfwmpXR7N41LKf0jIl4GfAXYAPhmRLyJHCh1PnA7sCk5q9XDgAPIcQyH19Xzp4j4C/BwYBfgnIj4IvAfYC55WMXDycFXS4DF3bRXkrplAJYkSZIkSZIkSZLWCCND408DXljMjgFf7mNzJGkmpOJ+PnBIcWvme8ARDZYfDfyYHD/w0uJWdi/gwq4bmNKSiLgC+CqwPbB3cWvmTuDaBsuHgFOK9mxZtLvep4CPYQCWpBlmAJYkSZIkSZIkSZJWeyND49sBXypmrwZeMjw6kFqsIklrghHg38BjyNmhdiMHOa1PHob1YnJWrK+nlH7TqIKU0i8i4hHAa4FHkrNqbdDLRhbb2BV4HvBE4MHAVsB65GxbF5KHRjwFOCmldEODOi6MiAcBRwJPJ2fNArgS+CPwlZTS0ohY2Mu2S1IVBmBJkiRJkiRJkiRptTYyNB7kzCpbFIteODw6cHUfmyRJMyKllIDTittU6jkdGK5Qbgl5iL9utnEncHxx60pK6UbgXcWtWZkLgWhTz8KK22tbV6nsErp8bSSt/ub0uwGSJEmSJEmSJEnSFL0SeHwx/bnh0YGf9LMxkiRJWruYAatHBgcHtwLeAgwCOwK3AmcAnx0bGzuxi/qWAgdWLL5kbGxs0li9g4ODS4AXtFnvX2NjY3t02jZJkiRJkiRJkqTZYmRofDfgw8XsecAb+tgcSZIkrYUMwOqBwcHBB5DHot26WHQzsAA4BDhkcHDwk2NjY6/rsNplwFUtHl8H2KyY/luLcncANzZ57NoO2yRJkiRJkiRJkjRrjAyNrwOcAKwH3AU8f3h04Lb+tkqSJElrGwOwpmhwcHBdYIwcfHU2cNjY2Ng/BwcHNwBeD7wHeO3g4OA/xsbGKo9lOzY29vQ22z0aeB9wJ/DNFkW/PTY2trjqdiVJkiRJkiRJklYj7wIeVEwfOzw6cHo/GyNJkqS105x+N2AN8FJgV+A24EljY2P/BBgbG7ttbGzsfcBni3LvHRwcnN/D7daGFzxpbGxsWQ/rlSRJkiRJkiRJmvVGhsYfBby5mP0DcFwfmyNJkqS1mAFYU3dYcf+tsbGxixs8/kEgAdsDB/Vig4ODg48E7lvMVs6qJUmSJEmSJEmStCYYGRrfFPg6EMAtwOHDowN397dVkiRJWlsZgDUFg4ODGwEPLWZ/3qhMEZT1n2L20T3a9OLi/grgFz2qU5IkSZIkSZIkaXXxKWCXYvo1w6MDF/SzMZIkSVq7zet3A1Zzu5GvrAA4u0W5s4Hdi9uUDA4Org88u5j9+tjYWLurOR49ODh4PrAzcAcwDvwU+PTY2NhVU22PJEmSJEmSJEnSTBoZGn82cHgx+33ga31sjiRJkmQGrCnarjR9eYtytce2a1GmqqcBmxbTSyqU3xFYCNwKbATsA7wd+Pfg4GCvMnJJkiRJkiRJkiRNu5Gh8R2BzxezVwAvGx4dSH1skiRJkmQA1hRtVJq+rUW52mMb92CbRxT3fxkbG/tPi3JnAK8kp99dd2xsbHNgAXAY+QfJ5sCJg4OD9+1BmyRJkiRJkiRJkqbVyND4HPLF6ZsVi44YHh24rn8tkiRJkjKHIFyNDA4O7gQcXMwuaVV2bGzskw2W3QycMDg4+Hvg7+QfKMcCz+u2TZdffvmO3a6re2xbnr788lbJ1CRNp80333xuMTn3mmuucf8mzTz7RGkWsD+U+s7+UJol7BOlvrNP1CrW2yxedMf16dEA8zfgqwe+d4N/eZ5ietkfqp+23377S/vdBkmSqjIAa2puKU1vANzUpNwGxf3NU9zeMDlr2R3AaLeVjI2NXTQ4OPhp4B3AkwYHB+eMjY2t7LK6S7pthxo6rd8NkNZmy5Ytq01ui/s3qd/sE6U+sT+UZhX7Q6mP7BOlWcU+Udxy+UqW35xHGtxwm+Bhr1/vhcAL+9uqNZ/9ofos+t0ASZKqcgjCqSlfcrN9i3K1x66Y4vZeUNyfODY2dsMU6/pLcb8JsMUU65IkSZIkSZIkSZoWd69InH3Cnay8C2IuPOD56zJ3HeMyJEmSNHuYAWtqzgESOfr6AcV8Iw8o7v/d7YYGBwf3A+5TzB7fbT3TYKd+N2ANsC0TV3A9FLiyj22R1mqbb775aeTv5JXLli17aL/bI62F7BOlWcD+UOo7+0NplrBPlPrOPlH3+P27b3/7ilt5GcA6G8f7N9lxzuf63aa1hf2hJElSNQZgTcHY2Ngtg4ODfwUeDjwe+H59mcHBwR2B3YvZX09hc0cU95cCJ0+hnpqHF/c3A9d1W4ljL0/d5ZeXE6lxpa+p1D8rVqy4u5i82++iNPPsE6XZwf5Q6i/7Q2n2sE+U+ss+UTUjQ+MHAy8tZn9z5w3pndtvv/3drdZR79gfSpIkVeMQhFN3QnH/3MHBwUbZoN5EzpB1OXBqNxsYHBzcAHhWMTsyNja2sk35lnl3BwcHdwZeVcz+pF19kiRJkiRJkiRJM21kaHwz4Gvk8yw3AS8YHh0w+EqSJEmzjhmwpu6LwJHArsCPBwcHDx8bGztzcHBwfeB1wKuLcm8fGxtbUV5xcHDwQmAX4GtjY2OLW2zj6cAmxfSSCm06bHBw8FDg68Dvx8bGri22txHwFOCDwObALcCxFeqTJEmSJEmSJEmaaZ8FdiymXzk8OnBRPxsjSZIkNWMA1hSNjY3dOTg4OAicAuwJ/HNwcPAmYENgblHsU2NjY8dPYTOLi/s/jI2NnV+h/Fxy0NbTAQYHB28B7gQ2YyLr2dXA0NjY2LlTaJckSZIkSZIkSVLPjQyNPw8YKmZHgW/2sTmSJElSSw5B2ANjY2P/Ah4IfAwYB9YFbgROBp42Njb22m7rLoY1PKiYXVJxtVOBtwM/A/4HrAQ2Ba4Hfge8FdhtbGysqyERJUmSJEmSJEmSpsvI0Pgu5OxXAJeSs1+lPjZJkiRJaskMWD0yNjZ2NXBUcau6zsIKZS5hIpNW1XovAt7XyTqSJEmSJEmSJEn9NjI0Phf4GvnCcoAXDI8OXN/HJkmSJEltmQFLkiRJkiRJkiRJs8X/Aw4spj8yPDpwSj8bI0mSJFVhAJYkSZIkSZIkSZL6bmRofG/gvcXsWcDb+tcaSZIkqToDsCRJkiRJkiRJktRXI0Pj6wMnAPOB5cDzh0cH7uxvqyRJkqRqDMCSJEmSJEmSJElSvx0H7F5Mv2V4dOCsfjZGkiRJ6oQBWJIkSZIkSZIkSeqbkaHxxwKvLWZ/DXyij82RJEmSOmYAliRJkiRJkiRJkvpiZGh8C2BJMXsDsHh4dGBl3xokSZIkdcEALEmSJEmSJEmSJM24kaHxAL4IbFcsetnw6MClfWySJEmS1BUDsCRJkiRJkiRJktQPLwCeXkx/fXh04Dv9bIwkSZLULQOwJEmSJEmSJEmSNKNGhsZ3BT5VzF4EvKaPzZEkSZKmxAAsSZIkSZIkSZIkzZiRofF5wAiwEZCA4eHRgRv72ypJkiSpewZgSZIkSZIkSZIkaSa9GdivmP7A8OjAb/vZGEmSVmcRkYrbon63RVqbGYAlSZIkSZIkSZKkGTEyNP4Q4Nhi9u/AMf1rjSRpdRAR+5aCjC6KiJZxDhGxKCKOjYjFbcodWZTbu5ft7ZWIOLRo36H9bkuvRcTS4v1c0u+29FLxfh0bEQv73RbNPAOwJEmSJEmSJEmSNO1GhsY3BE4A5gF3AIcNjw4s72+rJEmrgSNK0zsDB7cpv4gc4Lu4Tbkji3J7d9esaXcouX2Htil3bnG7bZrbo/aOKW4L+9wO9YEBWJIkSZIkSZIkSZoJHwLuW0y/cXh04N/9bIwkafaLiPWB5wAJ+GKxeHHfGjQLpZTuX9z+2u+2SGszA7AkSZIkSZIkSZI0rUaGxp8IvKKY/TnwmT42R5K0+ngasCnwR+C95ECsp0XEJn1tlSTVMQBLkiRJkiRJkiRJ02ZkaHxr4Phi9jrghcOjA6mPTZIklYwvHtpjfPHQZ8YXD505vnjowuL+M+OLh/bod9uYyHb1jZTSJcBvgA2AZ9cXjIiFEZHIQ8ABHBgRqe62KCKOLcrtUpQ7vq7MhQ3qnhsRL4qIkyPimohYHhFXRMQPImJRo4YX20rFtoiI3SLiG8V6d0bEeEQcFxEbNVoPeEGx6AUNnsfCUvl7nluTdmwREe+PiLMi4pbidlZEvC8iNu9l23shIpYW2z42IuZExKsj4oyIuDUiboiIX0XEQU3WXVh+jSJi94j4ZtHuOyLivIh4V5FZreW2q7SvtGxJ7bUqnFr3fi3t7tXQ6mRevxsgSZIkSZIkSZKkNdPI0HgAXwK2Lha9dHh04Io+NkmSVBhfPLQlMAI8ocHDDwReOb546GfA4QNLRq+b0cYBEbET8GhgBfCdYvHXgUXAEcCX61a5G7gK2AjYsFhvWV2Z5cAtRbmtyElrbgJuL5W5pq4dWwNjwMOLRQm4GdiWnKHraRHx7pTSMTQREY8BfkQOHruRHKtxb+DN5ECxA1JKK0ptvIqc+Ws94I5infrn2lZE7E3OPLlNsei24n6P4vbCiHhcSunMHrW9l+aRX/cnkd/LO8mvyWOAgyLiGSmlH7VY/xHkY5ANye9xAPcB3gk8JSIOTind0KO23kh+z2qv8/Xk97Gm/nOoNZAZsCRJkiRJkiRJkjRdXgwMFtNfHR4d+EE/GyNJyorgq9/ROPiq7AnA78cXD20x/a1axTA5puFnKaVaAMv3yAFJj4yI+5QLp5QuSSltC3y4WPTHlNK2dbc/ppQ+XJS7pCj3uroyD63VGRHzgB+Sg69+DxwErJ9S2hTYAngHOTjonRHxzBbP5TvAj4F7pZQWAJsAbyUHc+0LvKj0PP5YtO/bxaJvN3gel9BGRGxKDmDaBjgfODCltGFKacPiefyPHEQ21mZIx8pt77FXkoOongNslFLaGNgLOBuYC3wmIua2WP9zwL+BvYr3ayNyVrHbgAcVj/dESul1xXtW8/S69+vpvdqWZi8DsCRJkiRJkiRJktRzI0Pj9wE+Xsz+Dziyb42RJNUbAe5fsez9yZmnZtri4v4btQUppZvIQUXlx6fTYcAjgb8Ch6SUlqaU7izasiyl9F5yRiVK942cDgyllC4s1r01pXQc8JPi8VWGVOyBVwE7kTN+HZJS+m3tgZTSUuCx5MxfuwCvaFFPP9oOsBnw1JTSd1JKy4ttn8nE+74DsF+L9e8EHl/L7pVSWpFSGgFeVjw+FBG7T0vLtVYyAEuSJEmSJEmSJEk9NTI0Pp98wnwDYCVw+PDowM39bZUkCWB88dADaZ/5qt4TxhcP7TEd7WkkIvYHBshDu51U93AtGOzwiJjumIcXFvefSind0aTMCcX9AyNi2yZljksppQbLTyzup+O1rQVGfS2ldFH9gyml/5ID8SBnmWqmH20H+F1K6ff1C1NKfwMurbDtz5cyp5WdANRej2dNrYnShHn9boAkSZIkSZIkSZLWOG8DHlZMv294dOCP/WyMJK1pxhcPNQqImW5njS8e6mrFgSWj0eEqi4v77zcIfPo5cA05u9NjgF921ag2iuHtan3ZxyPiw63KF3YGrmyw/LQm5S8r7jfrsHktRcQ6TAQnndKi6MnkjFB7RsT8lNKKBmVmtO0Vtlvb9o5ttr200cKUUoqI3wKHA/t03TqpjhmwJEmSJEmSJEmS1DMjQ+P7Am8vZk8D3tPH5kiSVjMRsQET2Zu+Uf94SukuYLSYXTyNTdkcWLeY3gLYpsWtZoNGFaWUmmWBrAWX9Tp5zubA3GL6shblapmk5hbrrKIPba9plTmztu35Lcq0et61x7buqEVSC2bAkiRJkiRJkiRJUk+MDI1vRD5ZPhe4DThseHSgUTYNSZKaeQawcTF9SkTL5FmHRsSmKaUbp6Edc0vTj0gp/XkatiFpDWEGLEmSJEmSJEmSJPXKx4B7F9NHDY8OnNfPxkiSVktHdFB2feA509SO64C7i+mdp2kb02UZE23foUW5HYv7u4t11iTbV3js6rrldxX367VYd9OuW6Q1mhmwJEmSJEmSJEmSNGUjQ+OHAi8uZn8MfLF/rZGkNdvAktGWaaFaGV889BnglV2s+pmBJaOv7na7VUTEQmBRMXsAcFaL4m8EjiYPQ1juc1bWqmuzuZblUkorIuI0YF/gycB32tTXa1WfxypSSssj4ixgb+DRwA+aFH1McX9mSmlNy1h5ILC0fmHklGoHFLNn1D18fXG/Iw1ExIbAbi22mcjvV9ffT62+zIAlSZIkSZIkSZKkKRkZGt8W+FIxew3w4uHRgdTHJkmSmvvcDK/XiReQg1cuSCn9LqV0Q7Mb8K1inUdExP1KddxU3C9os60q5b5a3A9FxCNbVRYRm7XZXqeqPo9magFjwxGxSgaviLg3MFzMjna5jdnsFRGxoMHyIWBhMf3dusdqAX+PjYhGWbBeD6zbYptTfc+0GjMAS5IkSZIkSZIkSV0bGRoP8gnqLYtFLxoeHbiqj02SJLUwsGT0bOBnHa72s4Elo/+ajvbUFJmJXlDMfq9d+ZTS2UBtqNvFpYfOLu53j4iHt6iiVu7pEdFsWLnjgd8D84FfRMRrI2KLUps3i4gnR8S36X0QU619+0fEfbpY/7PAJcBGwK8iopb1iYg4EPgFeQjHi5iZ4LqZth7w84jYAyAi5kfEYUwEjI+mlP5dt853yVmstgJGImLrYt1NI+JtwLHADS22WXvPntskgEtrMAOwJEmSJEmSJEmSNBWvAJ5QTH9heHTgpH42RpJUyTBwTsWy5wCHT2Nbag4E7lVMtw3Aqit3eETU4h+WAucD84A/R8R1EXFhcdu3tO6XycE2+wPXRsRlRZnf1wqklO4CngqcQg5k+gRwTURcHxE3AcuAk4Bn0/v4ix8C1wGbA+dGxNWl59FwiLyylNKNRduvBu4L/CYibomIW8mv0b2BK4HBlNLNPW77bPAKYA/grIi4AbgZ+DqwIfD34vFJUkr/AT5czD4LuCoirie/z+8F3gn8s8U2a8FdzwJujIhLivdrTcwwpjoGYEmSJEmSJEmSJKkrI0Pj92fiROX5wP/rY3MkSRUNLBm9lhx41C4T1s+A/QeWjF43/a26J4vVxSmlv1Zc5/vF/Q7AIXBP0NSjgSXAxcDGwC7F7Z6sRCmlpeQApVPJwTnbFmUmBTellJYBjwGeAZwIXAFsQM6K9T/gB8DLyUFYPZNSuo4clPZdcqDUZqXnMa9iHX8HHgAcB/ybPLwjwL+A/wP2SCmd2ct2zyJ/Ah5Gzkx2O/m5nw+8G9ivGMZyFSmlNwEvBc4A7ijW+y3wlJTS+1ttMKX0NeCIYtt3kD+Xu5A/W1rDRUoOvy310+WXX74jOfUjwE7bb7/9pf1sj7Q2W7FixaXkA6HL5s+f3/bKAUm9ZZ8ozQ72h1J/2R9Ks4d9otRf9omrh5Gh8XXIJxj3Ae4GHjk8OlD1hLlWA/aH0tphfPHQHuQAokcBmwA3Ab8DPjfdww5KvRQRC4ELitl7pZQu7F9rtLapFBUpSZIkSZIkSZIk1TmGHHwF8C6DryRp9TSwZPRs4NX9bockrc7MgKUpWbFixVHAUf1ux+ospTR35cqV2wLMmTPnyoi4u99tktZi2wJzyVfrXdnntkhrHftEadawP5T6yP5QmlXsE6U+sk+c/a769x3rnHLcVVuRYPN7rbP8kGO2vWbO3Gi/olY39ofqG7OuSeqUGbDUT2bA0lRtQk49qy5FBHPnzq3NOvarNDvMxX2bNOPsE6VZx/5Q6gP7Q2lWsk+U+sA+cXZbcftK/vKlayHBvPWCR75qy3XmzA33lWs2+0NJkqQWDMDSVN0EXNbvRqzOvJJLmlW8mkvqI/tEadawP5T6yP5QmlXsE6U+sk+c3f761es2u/XauzcA2Htos+s33mb+bf1uk6aN/aEkSVIFDkEo9dnll1++I3BJMbvT9ttvf2k/2yOtzVasWHEp+Squy0xtLM08+0RpdrA/lPrL/lCaPewTpf6yT5y9RobGnwl8t5j9IfCM4dEBTzatoewPJUmSqpnT7wZIkiRJkiRJkiRp9hsZGt8B+EIxeyXwUoOvJEmSJAOwJEmSJEmSJEmS1MbI0Pgc4Hhg82LREcOjA9f2sUmSJEnSrGEAliRJkiRJkiRJktp5DXBIMf3p4dGBn/ezMZIkSdJsYgCWJEmSJEmSJEmSmhoZGn8A8IFi9hzgzX1sjiRJkjTrGIAlSZIkSZIkSZKkhkaGxtcFTgDWBe4Cnj88OnBbf1slSZIkzS4GYEmSJEmSJEmSJKmZ9wB7FdPvGB4dOKOfjZEkSZJmIwOwJEmSJEmSJEmStIqRofFFwBuK2d8BH+pfayRJkqTZywAsSZIkSZIkSZIkTTIyNL4AGAECuBkYHh4duLuvjZIkSZJmKQOwJEmSJEmSJEmSVO8zwE7F9KuGRwcu7GNbJEmSpFnNACxJkiRJkiRJkiTdY2Ro/LnA84rZ7wDf6GNzJEmSpFnPACxJkiRJkiRJkiQBMDI0vjPwuWL2MuAVw6MDqY9NkiRJkmY9A7AkSZIkSZIkSZLEyND4HOBrwKbFosXDowPL+tgkSZIkabVgAJYkSZIkSZIkSZIAjgIWFdMfGx4dOLmPbZEkSZJWGwZgSZIkSZIkSZIkreVGhsb3At5fzJ4NHN3H5kiSJEmrFQOwJEmSJEmSJEmS1mIjQ+PrAScA84HlwGHDowN39LdVkiRJ0urDACxJkiRJkiRJkqS12/8BDyimjx4eHfhnPxsjSZKqi4hU3Bb1uy3S2mxevxsgSZIkSZIkSZKk/hgZGj8EOLKYPRX4WP9aI0nSqiJiX+BPxezFwL1SSitblF8ELAIuTCktaVHuSGABcGJK6R+9aGsvRcShwN7AP1JKJ/a1MdMoIrYDXgY8Drg3sCmwDDgP+CnwxZTS9dO07QVMHAd9PKV0w3RsZyoiYm/gUOCGlNLH+9oYtWQGLEmSJEmSJEmSpLXQyND45sCSYvYG4AXDowNNT2hLktQnR5SmdwYOblN+EXAMsLhNuSOLcnt316xpdyi5fYe2KXducbttmtvTcxHxGmCc/Dz3BTYHbgW2Bg4AjgPGI+LZ09SEBcW2jymmZ6O9ye07sr/NUDsGYEmSJEmSJEmSJK1lRobGA/gCsH2x6BXDowOX9LFJkiStIiLWB54DJOCLxeLFfWvQLJRSun9x+2u/29KJiHg38ElgA2ApObBuvZTS5sWyJwN/JwdljUbEi/vUVKkSA7AkSZIkSZIkSZLWPocDzyymTxgeHRjtZ2MkSWriaeQh6f4IvJcciPW0iNikr63SlETEE4C3F7NfAA5OKZ2aUroLIKV0Z0rpJ+SsWD8GAvh0ROzVlwZLFRiAJUmSJEmSJEmStBYZGRq/F/DpYvYS4NV9bI4kSa0sLu6/kVK6BPgNOTvSKkPSRcTCiEjk4doADoyIVHdbFBHHFuV2KcodX1fmwgZ1z42IF0XEyRFxTUQsj4grIuIHEbGoUcOLbaViW0TEbhHxjWK9OyNiPCKOi4iNGq0HvKBY9IIGz2Nhqfw9z61JO7aIiPdHxFkRcUtxOysi3hcRm/ey7R34ADmo6kzg1Sml1KhQSmk5OWj8SmBd4D0N2nph0dbFzTbWqExELAUuKBW7oO41XlIqe2yxbGkxf3hE/CkibipuSyPiKU22vbDR+1alTPH6H1/M7tLgc9D0OWvmGYAlSZIkSZIkSZK0lhgZGp8LjAAbk7OIDA+PDtzQ10ZJktRAROwEPBpYAXynWPz14v6IBqvcDVwF3FrMryjmy7flwC3F9Mqi3E11Za6pa8fWwB+ALxft2QK4HdiWnKHr1Ih4V5vn8hjgdOD5wPrAPODewJuBX0XE/FLx5UU77ijm72jwPO5utb3SdvcG/gW8FdiDHPQUxfTRwL8iYs8etr1Kmx4JPLCY/UAt61UzKaUbmAgcf3JE7NDJ9lpYBlxbmr+Wya/xjY1WioiPko+lHkZ+HzYCDgTGIuKYRutMwVXkzyfkz2v95+D2Hm9PU7BaB2BFxCYR8fJ+t0OSJEmSJEmSJGk18SZg/2L6Q8OjA0v72BZJkloZJsc0/CyltKxY9j1yQNIjI+I+5cIppUtSStvC/2fvvuMjq8o/jn+eZLO9L1vYXXpAFhakdwFFUUQHBIFRICxVepFVig0RAXUpooA/iiwBJEh1AFFBihSlqAhbREfawi7be0l9fn+cM2QYJskkmWSyu9/363Vft51z7nMnN7kLefIcpsRDL7j7mJzlBXefEtvNiu3OyWmza2ZMM+sFPAjsDjwHfBro5+5DCIlY3yMken3fzDJT++bzW8JUepu5+1BgMCEpygnT7J2YdR8vxPjuiYfuyXMfs2iDmQ0BUsBo4L/Afu4+wN0HxPt4k5BElmpjSseCYy/Qp+O6KcZXiIfi2oB923m9vNz9MGDXrEO75nzG5+TptgNwHqGC1wh3HwZsSEjIArjEzD5fjPhijGOATByz8jwH97TWX7rXWpmAFcvd3QHMAa4vdTwiIiIiIiIiIiIiIiI9XXUyvTNwadz9F/D9EoYjIiLSlklxfWfmgLsvozlpZxJd7xhgL+Al4HPu/rS718ZYFrn7ZTS/T1t7r74CJN397dh3pbtfCTwaz39sSsUiOAPYiFDx63Pu/pfMCXd/GjiQUEFpE+C0VsYpduzbxPX/3H1FgX1mEiqDZfcvhSHALe5+YazMhbvPJTyLT8Q2H5smUdYPa00ClpmNM7PvmFka+DPwdUJ5OxEREREREREREREREWlFdTLdn/AL7F5ALXB0VU1lbWmjEhERyc/M9gEqCdPAPZxzOjMN4bFm1tU5DyfE9S/cfU0Lbe6K6+3MbEwLba50d89z/KG4ntjB+FqTSYy63d3fyT3p7v+juXLTUa2MU+zYh8f1wkI7uHsTsDjujmjn9Yrt8twD8fPJHN/VzDbt1oikR+jRCVhm1svMvmpmvwfeJvxVxmY0z0vaQCh1JyIiIiIiIiIiIiIiIi37KbB13P52VU3l9FIGIyIi0oZJcX1/nsSnPwDzCdWdPttVAZhZObBb3L3WzD7ItwAvZ3XbuIXhXm7h+PtxPawIIX/IzHrTnBj1ZCtNM1WbtjezihbadGvsPdy77v5WC+deIOSwAOzYTfFID9Kr1AHkY2YTCfOEHk1z9qJlNXmVkIl5l7vP797o8kskEiOBC4EEMB5YCfwDuCGVSj3UgfE2BVr6xs12RCqVuq+VcXYAvgXsD2xAeBE9DfwslUr9q71xiYiIiIiIiIiIiIjI2qU6mT6IMA0RwJ+AX5YwHBERkVaZWX+aqzfdmXve3RvMrAY4i5Co9acuCmU40CduF1p1qX++g+6+vIX2meSyYuduDAfK4/b7rbR7L67LY5+5uQ26IPZFcV1wJatY6SyT6LWotbZdrMXP0t1rzWwBMAYY1X0hSU/RYypgmdkgM/uGmb1ImHf8bELCUKbalRN+cH7S3Xdy92t7UPLVtsA04JuEMoj1wFDgc8CDiUTi5528xALCD7p8S0tlDkkkEl8nzEX7dWAsYf7WcYTEtpcSiURrZQRFRERERERERERERGQtV51MjwR+HXcXAcdX1VQ2lTAkERGRthwODIrbT5qZ5y6E5CuAQ81sSBfFUZ61vae7WwHL010Uy7pkZlxvYWYDC+wzAegdt2cUPySRzit5ApaZ7Wdm1cAc4AZgF5qTruqA+7Oav+Dur3d/lC1LJBJ9gBQhg3EasEMqlRoMDAa+S0gcOzuRSBzficvsmkqlxrSw5J2CMSaF3QZUAL8FxqZSqaGERKx7CT+cbk8kElvn6y8iIiIiIiIiIiIiImu36mTagJsIlRgAvlFVUzm7hCGJiIgUoj2/W+8HdFXhkYVAY9xuaWrBnmoRzbGPa6Xd+LhupPsqS2WmRCwjzDBWiEPj2oFncs5lpv3r20r/YiXpjW3pRJz2cYO4Oy/rVEPWdksxdlUSoXSjkiRgmdlYM7vYzP5L+OY6mlCKL5N49RKhFO6G7n5EKWJsh1OAzYFVwMGZaf1SqdSqVCr1Y0JSGcBliUSipTlTu8KlhCSrV4GjU6nUnBjXHEJFrFcJ5RIv7caYRERERERERERERESk+5xA8y8sp1bVVN5XwlhERETaZGabAvvH3X0J0861tFwe203KGSZT6dHauFyr7dy9Hng57n6prdi7QKH38THuXgdkitsc0ErTz8b1a/F+u5y7v0AobgNwgZm1OoWhmQ0Fzoy7j7p77jSAi+N6PHmYWSVhBrN8squCFvI5bxKf0Xz2onk6xn/kiQ9aiBHYtZVrdvg5kO7VrQlYZna4mT0KvAP8iJC4lEm6eh+4Epjg7nu4+43uvrjl0XqMY+L67lQq9W6e8z8lZGGOBT7dHQElEokhNL8ArkqlUtkZlcT9q5qbJwYhIiIiIiIiIiIiIiLrjOpkuhL4edx9GzindNGIiIgU7DhC/sBb7v6suy9paQHujn32NLNPZI2xLK6HtnGtQtplpvFNmtlerQ1mZsPauF57FXofLfltXFeZ2ccqeJnZFkBV3K3p4DU66sK43h74pZnlTS6KVaXuIFTzrAO+l6dZJtGspWpaF7ZwHJo/Yyj8c74o90CMP3Odl939ncw5d18JvBV3D8nTtw9wbgExqkpWD9fdFbDuBb5AmCvVgDXAb4DPAxu7+8Xu/kY3x9RhiURiIM2ZiH/I1yYmZWXmMG0ts7SY9qF5/tM/ttAmc7xPbC8iIiIiIiIiIiIiIuuA6mS6F+GXlQMIVROOraqpXNZ6LxERWV9dl05OvC6dvP66dPK169LJt+P6+uvSyYndGUdMYjku7rZZtdHdpwH/ibuTsk5lqittY2a7tzJEpt1hZtZScsttwHNABfBHMzvbzEZkxTzMzL5kZvdQ/CSmTHz7mNmWHeh/AzALGAg8bmb7Zk6Y2X6EnIF+hAI6N3Yy1nZx90eBK+LuN4A/m9n+ZlYe4+ttZgcDfyUUn3HgbHd/Nc9w98T1dmb281gxCzMbZWbXAccSZjTLF8cSQrEgCIlq5W2Evgw4xcwuzzwzZjaakKj3+dgmX5JYJsaTzez4mHSFmW0L/J5Wpjak+TkYYmaHtxGflFBJpiAkfHP8Ghjt7se4++Pu7iWKpTMm0FzmbVor7T78Ad/B6/w2kUgsTiQStYlE4r1EInF/IpE4uJX2mevMTaVS8/M1iMfn5bQXEREREREREREREZG138XAHnH7iqqayudKGYyIiPRM16WTG1yXTv6eUEHodGA7YJO4Ph14/bp08vfXpZMjWhmmmPYDNovbhU6bm2l3rJll8h+eBv5LmA7ub2a20MzejsseWX1vIeQu7AMsMLP3Y5sP35vu3kCoWvQkIZHp58B8M1tsZsuARcDDwJEUP//iQWAhMBx4w8zmZd1HS1PZfcjdl8bY5wFbAc+Y2QozW0n4jLYAPgAS7r68yLG3yd0vBr4JrCbMJvYUUGtmC+OxR4CdgCXA0e7+fy2M80eaq32dDSw2s8WEezsdOAnImzcR3RzX5wIrzOyd+BlPydP2n8A1hCpYC81sETCH5gTAS2I8ua4kPJN9CLkyK8xsKSGX5JM0Jx7mu7804esFcJ+ZLcl6Dr7ayn1JNytVAhbA8cDLZnZxvnJ3a4kNs7Znt9Iuc27DVtq0ZlfC16oRGAccBjySSCR+m0gkeudpn7lOazEVIy4REREREREREREREelBqpPp3YHvx92/Az8sYTgiItJDXZdObgA8CxzURtODgOe6KQlrUly/6+4vFdjn/rgeB3wOPkyaOgCYCrwLDCIklm0C9M10dPenCQlKTwHLCdPcbQJ8JLnJ3RcBnwUOBx4iJNz0J1TFehN4ADiVkIRVNO6+kJCUdi8hmWhY1n30KnCMfwLbEhKAZtBcYGY6oQLVRHd/rZhxt4e7XwNsCVwKvERIthoELCBUHrsY2MLd725pjOgY4ALCPdYScit+D+zr7ne00fdHwPmE5KpGYGPCZ7xBCzF/k5Aw9Qrh67ACeIaQyJb3310xGW5vQlWy9wiJf8uBW4EdaZ5GsSWHAdcB/yM8w5nnYGAb/aQbFfRNWUQXEBKvto77WxEe5kvN7BnCD8D73T1v+bceKPthbi3mzLlB7Rh7DeGbrwZ4NZVKLQdIJBLbEj7HY4EjCD+ATmkhrrY+x47EJSIiIiIiIiIiIiIiPVB1Mj0QuBMoJ1SOOKaqprK+tFGJiEgPVU3z7+3bsjVhatsvdl044O6T+OhUgoX0+QfNSUXZx2cRchPa6v8woYJVW+2ckGj1QDtiezpfbO1p4+7TaSOxy93busYCQsWmi1pr1564Cm1T4LXeB34Ql46OUQ/8NC75zm/aSt8m4Oq4FHq9asL3UHtinA+cEZd8WnsOFgPnxEV6qG5NwHL3nwE/M7O9CGXejiDMP27A/nG5wczuB6rd/cnujK8nSaVSH5DnGy+VSk0HqhKJxHxCOb6TEonEValU6o3ujhFg9uzZbZY2lDaNyd6ePbutwmUi0lWGDx+emde5fP78+fr5JtL99E4U6QH0PhQpOb0PRXoIvRNFSk7vxA7o1Y8rG1ZTCdBvhP1o7+/0W6H/jy+dofehlNLYsWPfK3UM66rr0sntaLvyVa6DrksnJ55dWTOtK2ISEVnbdXcFLADc/QXgBTM7G0gCJ9A8F/kAQnWnY81sFnBXKWIs0Iqs7f7Ashba9Y/rYs6b+n3gNKAf8CUgOwErE1f/3E5dENesTvSVj3u51AGIrM8WLVqU2RyDfr6JlJreiSIlovehSI+i96FICemdKNKj6J1YgPnTGmhYHbZHTChjh5P6XA5cXtKgZK2n96GUWKcr66zLrksnvQSXff26dLJDHc+urNHXU0TWaWWlvLi7r3D3W9x9L8K8o9cA8wkvUwM2Ai7M6jLRzLpjbtlCZf/JzdhW2mXOzSnWhVOp1ErCvKwAm7cQV2sxdUlcIiIiIiIiIiIiIiLSvWqXOzN+WwdAxQDY5qg+mOn33CIisvYzs5vMzM3sq10wtpnZqWb2ipmtjNdxM9u/2NeSzjGzp+PX5pIeEMv+mWeliGNumvX8bVqscTvLzLY2s0Yz+1upY1kblKQCVj7uPhM438wuABKEqlifJ8xTnnlwDwcOMbPHCPNpPhzn8iyVfxNiM0IC2b9baLdtXM/ojqCyrjM6kUhskEqlFuQ2SCQSI4FRRYhro070lWAMzX/BtSvwQQljEVmvDR8+/GXC9+QHixYt2rXU8Yish/ROFOkB9D4UKTm9D0V6CL0TRUpO78QCNdY7L/x49dTGOg4A6DvUTuwz2P5U6rhk3aD3oYiUkplNIOQNTAfuL6D9Hwg5BgAnu/stbXS5kOZqkfXA3LhdZ2Y7AIcCS9z92nYF3s3M7GlgP+B2d5/URtupwHHAM+6+f1fHVmoxmemtrENT3f34NvrcApyYdWizLghtreDu/zaze4GjzOxwd2/z+3B91mMSsDLcvQF4AHjAzMYCx8clU+WpAvhyXBabWY27n1mKWFOp1IpEIvESsDvwBfL80E8kEuOBbeLun4t17UQiMYDmxK63ck4/B9QBvQkvmHzTOB4Y17WxfYdo7uXOmz07u5AaH+gzFSmd+vr6xrjZqO9Fke6nd6JIz6D3oUhp6X0o0nPonShSWnonFq46mT4VQvIVcPNXrtri16WMR9Yteh+KSIldQSjYcpm7t1ptyMzGAZ/LOjQJaCsB69y4vgb4dsxVyIw3CfgB8A5wbTtilp7tq2Z2pruvzHfSzPoDR+Qed/dLgEtim92AN4ocV33WmKUsQpTPZcBRwOVm9rvs7xP5qB6XgJXN3WcDPwZ+HMv8nQQcBvSNTYYDpwElScCK7iIkYH0tkUhcmkqlcue//jahQtZs4KlCB00kEpZKpVp7iVwC9CNU4Hok+0QqlVqWSCQeIXxW30wkEjWpVCrzD2QSiUQv4JvNzVPLC41LRERERERERERERER6hupk+hPA1XE3TfP/+xcRkXXc2ZU1HZ5r9rp08nrg9A50vf7syppu+d28mVUChwALKaD6FVAFlAH3EIqn7G1mle6ebmH8UTTPGPVrJZWsF94BNiHMvFbdQpvDgMFZbT/G3V8Cti5mYO7+frHHLBZ3n2ZmfwX2BA4GflfikHqsslIHUCh3f9rdjwE2JCRc/aPEIWXcBLwJDAAeSSQS2wMkEol+iUTiQpqTw76bSqU+kqmYSCTeTiQSnkgkpuYZ9+lEInFxIpHYPiZMZfpsk0gkfg1MjoduTaVS+aY+/D6hCtZOwF2JRGJM7D8GuDMer43tRERERERERERERERkLVKdTFcQ/n9/P6AROLaqpnJFaaMSEZG1xI3d3K8jTorre929kIpAk+L6FuDenGP59Mva1vtz/XBHXB/XSpvMuZYStNZXv4nrk1pttZ5baxKwMtx9qbvf4O67EJKIri9lPKlUqhZIAPOA7YF/JRKJpcByQklEA36RSqVua+fQmxCqf/0LWJ1IJBYkEomVhPltM3OS/gY4o4W4Mu3qCeXgZicSicXAnLhfB0xqIXlLRERERERERERERER6tu8Du8TtH1XVVP6tlMGIiMja4+zKmmnAY+3s9tjZlTXTuyKeXGZWRnMizD0FtN8L2IowK9WThARlgKo4Vnbb/c3MgbezDr9lZh6XqfF85vf7m2SdyyyT8sSwpZndaGb/MbNVZrbczF41sx+Y2ZAW4n46jneJmfUxs++Y2Wuxr5vZ0LbuvSuY2YZm9jMzmxZjWWVmM8xsipmNaaFPfzM72szuivewyMzWmNnbZnaHme1UwHWPMLNn4zWXmtkLZnZ0EW/tYWAR8Gkz2zjP9TcCPhPbPJJ7Pqvd/plnIef4AWbWFM8d1kLfQ+L5JjM7MOv4plnP16Y5fSbF42/H/T3M7CEzmxc/4+lmdpGZVbQSc5mZnWFm/zCzlWa20Mz+bGYHx/Nvt/RsR78lzM52kJlt2NJ11ndrXQJWNnd/1d3PLnUcMdlpO8LcsGmgD7AUeAL4SiqV6kiM3yJU1/onsAAYFI+nCZmZn0mlUkenUqm6VuL6DbAbcDch8ao/4aXzG2C3VCpV04G4RERERERERERERESkhKqT6b2Bi+Pui4Q/6BYREWmPKqDQYh3/Bo7twlhybQ+MARoI77m2ZAqY3O3uTcBfCFPIbQQckNO2DphL+B18xoJ4bC7h9/xzgWXxXFPWucyyOntAMzuRUEjlVGBLQqJKH+CTwCXAP81si1bi7xtjvowwDV1j27fcNWJCzn8IM3JtC1QQis5MAM4HXjez3fJ0PZKQ+Pb12I/YbxPgGOBFM2vxGTKzqwlJPvsQZh9rAnYH7jSzKZ2/MyB87WtiXFV5zmemsbw7tm0Xd/8zzVND32xm47LPx+S1W+Lude7+p/ZeI36GzxKKBPUmPGfbAJfHuPP1qQAeAn4J7Bj7GPBp4BEzazOfxd3nAf8Fyvn495REvdpuIoVIpVLzCHOrFzy/eiqV2rSVc/fSXBqxM3G9SvghJyIiIiIiIiIiIiIia7nqZHow4Q+1y4CVhKkHG0oblYiIrG3OrqxZcF06uQ/hnXJQK00fA449u7JmYfdEBsCn4nq6u69uraGZ9SMk/wDcBeDubmZ3EZKVJwGPZ9q7+wvAmFhl6K14eFd3fztr2HNiJaDbgFnuvmkr1/8icDMhKetS4BZ3/8DMehGKpfycULHyATPbMSaI5TqDkGyWBB509zoz24Twnu82ZrYDcD8h6WoKYTaydwjJOhOBnwEHAg+Z2dbuviyr+2Lgp8ADwKvuXmtmRkhI+y4hge8mM3vG3d/NuW4SOC/u3gj8wN3nm9lw4DuExK+lRbrN24HTCclWl+Wcq8pq01EXA58lJN/dbmafi8+jAVOBDYBpwIUdGHskIYHrV8Bl7j43Vkm7FDgLONzMvuDuf8jpdyHwZUJi4HeAX7r7cjMbDVxJ+FoXMs3nS4RKc/vSXGVOsqzVFbBERERERERERERERETWM9cCm8Xtc6tqKv9bwlhERGQtdnZlzcKzK2u+SJjt6XrgNcLUfK/F/YlnV9Z8sZuTryBUPiLG0ZbDgcHADHf/Z9bxTILIV8xscDGDyzCzcuAXhASlY9z9Mnf/AMDdG2Ky1+cJs1VtDxzawlADgaPc/R53r4v933H3QpJish1lZh+0tgBHtdL/WkJ1pMnu/i13f9uDJnd/jZDE8xqwIXBSdkd3/527X+DuL7p7bTzm7v4fwnSSjxMqfR2f3S8mJl0ad+9z99PdfX7sv8jdzyckLuWdxrG93P0lYCawpYWpKzNxZKaxnOHuL3di/DpCgZzVhEpRk+OpswnPQi1wtLuv6cDw/YFqdz/L3efG6y2Js8a9Htscmd3BzAYC3467V7j7Fe6+PPadC5xAmLazfwHXfzWu9+hA7OuFbq2AZWZdUSrP3V2VvEREREREREREREREZJ1WnUwfTvMvLn8H3FrCcEREZB1xdmXNNODMUseRZcO4nl9A20lx/ZGKPO4+08z+DuxMSDq6uWjRNdsP2Bz4n7s/mK+Buy8ys8cIiS4HEipE5XqtI9PR5dE3Lu1mZpsT7mclcEO+NrEy132EZLIDaZ5ur1WxAtTvgc8Be+ec/iShShaEafTyuYzmr3Mx3E6o/DQJeCEem5R1rlPcfYaZfYsw5d9lMfHtynj6opjM1lFXtHD8d4REyok5xw8kJPjVA1flidXN7ApCclhbMtN2bthqq/VYd1fAsqx1MRcREREREREREREREZF1VnUyPRa4Ke7OBU6uqqn0EoYkIiLSVTaI68WtNTKzjYFPE6ZWuytPkzvi+vg854ohU0FpfIFVpzZuYZy/Fime293dWltoOcEocy99gHdauZdMRaeP3YuZjTezn5jZ381siZk1mpmbmQPXxGZjc7rtHNdLcyqYfcjd/wfMKvAzKMSdQBNwpJn1NbO+hMpRTRRpaj13vx54FOgNVBMS454gVBnrqEXu/mYL596P62E5x3eM6xnuvqiFvn8lTIHZ5vXjeriZaba9PEpROUoJUyIiIiIiIiIiIiIiIgWqTqbLgNuA4fHQCVU1lYVUBREREVkbZao41bbR7jhC0Zm/uPu7ec7fDUwB9jSzreJ0eMWUqQTUBxhdQPuWpnnrCe/0zL30ogP3Ymb7AY8Qqi1lLAPWEBLk+hGmihyQM87IuJ7dxvXeBzYqIK42ufv7ZvYEoTrUoYQcliHAH929rTja4yTgXaACWAEc5+6dSZ5f3sq5zJSGFTnH2/x8Y2WzBcCYNq6fuUYZ4Zlf3Ub79U63ZqW5e1kXLOXdeQ8iIiIiIiIiIiIiIiLd7AzCLwkBbqiqqfx9KYMRERHpYplKO7nVfHIdF9f7ZiotZS+EipGZojSTuiDOTK7CH9uqPBWX/VsYp7ELYmuvzL28UeC9bJrpaGYVhMpRA4HphKkGB7j7EHcf7e5jgG9mmnfjPbUmUwlsEkWcfjBHFc0JUQNprka1tsr8IcAqd1fyVR4qCyYiIiIiIiIiIiIiItJDVSfT2wA/jbtvAN8qYTgiIiLdYUFct5iAZWb7Alu0Y8xju2DatLlx3dLUgmuTzL2MM7P2FsHZExgft7/s7k+4+6qcNi1V1cpU/9qwhfMZ49oZU1seJFTo+hzw2bj9ULEGN7MdgB/F3dfj+tdmNqpY1yhQm5+vmfUGRhQwVub7cUGrrdZjSsASERERERERERERERHpgaqT6d7AXYSpmBqAY6pqKnN/oSkiIrKumRnXm7XSZlJc/56QGNLSMgZYRUgQ+mw7YmiK69YqNr0Q11ubWXuSwXqizL0MBPZrZ99M8tVCd3+rhTafbuH43+N6qJl9Ml8DM9ucIk0/mBErON1LyJkpA35brKpOZtYP+A3QG3gM2IPwTI8Cbi3GNdrhn3G9rZm1lNC4Jx+fujCfzPfjzFZbrceUgCUiIiIiIiIiIiIiItIzXQrsELd/UFVT+UoJYxEREekuz8X1rvlOmtkA4Ii4e4+7L2llmUtIggE4vh0xLIvrIa20eRJ4h5CkdU1rFbbMrMLMBrbj+t3K3d+gOQnrpzGJKC8Lsj+XpXE93MxG5mn/aeCAFq77KvDfuHtxC5f8Tiuhd8bPgavi8vMijvszYAKh+tTxsRrY0UA98CUzO7WI12rLn4AVhASrb7bQ5oICx9otrp/tbFDrKiVgiYiIiIiIiIiIiIiI9DDVyfR+wLfj7vPAT0oYjoiISHd6nlCBariZVeY5/1VCpaY6IFXAePfH9aE5iUOtmRbXQ8zs8HwN3L0eOD3G+mXgj2a2RyYRy8zKzGwbM7sQ+A/NSdU91ZnAamBn4Fkz+6yZ9cqcNLMtzOxM4DXC/WY8T6gyZkCNmW0W2/cxs2MI0/0tauW634/rI83sl2a2Qew/zMx+BpxAc5JX0bj76+4+OS7T2u7RNjM7CDgj7p4YEwBx938C34vHrzKzTxTjem1x9xWEBDOAi83sgkwioJmNNrNbCZXhWq2wGp/pnePuM10V79pOCVgiIiIiIiIiIiIiIiI9SHUyPQSoJvwiczlwbFVNZWNpoxIREeke7r4QeCLuHpynSaaS1Z/dfUkBQz4C1BKm9E0WGEMaeDru3mdmS8zs7bh8Navd74FjCIlLnwX+CqwyswXAGmA6cAWwKeCFXLtUYpLQl4GFhGSbx4n3YmZrgDTwC2AiWfcSvwYXxd3PAG+a2VLCv2HuAN4CftjKdWuAa+LuGcBcM1sELAAmExKIXi3KTXahWP3rtrj7K3d/OKfJzwjJS/2BO82skGn/iuHHhKk6y4ArgSXx851D+F46j/BZQ3hm89kXGATMorlSmuTo1gQsM2vsgqWhO+9BRERERERERERERESki/0S2Dhun1VVU/lWKYMREREpgZvj+uvZB2N1pX3j7n2FDOTuywlTsQFMakcMhwHXAf8jJG9tEpePTCXo7ncDWxKSW14lJHsNJSQg/Q24GtjH3Z9vx7VLwt3/TLiX7xJiX0G4lzXAP4AbgM8Dd+f0u47weWWqYZUDbwA/APYifBatXfebwJFZ/XsBLwLHuPvkotxc17sFGE247/NzT7p7E1BFqOa1C3BJdwQVK7UlgLOBfxEqxwH8GTjI3a+nearNJS0Mk/k+vC3eh+Rh7t2XZGlmTYRMSCvisO7u5UUcT6RbzZ49ezwhUxRgo7Fjx75XynhE1mf19fXvAeOA9ysqKsaXOh6R9Y3eiSI9g96HIqWl96FIz6F3okhprc/vxOpkOknzLzXvA46sqqns0RUzZN2l96GIlEqsDvQuMAbYyt3/W+KQRNZJcZrPzPfXJu7+bs75PsBsYDBQ6e7vdHOIa41STEFYzOQrERERERERERERERGRdUJ1Mr0RcGPcnQOcquQrERFZH8WqPZfG3bWlApLI2ujCuP53bvJVdCIwHLhVyVet69YELHcv64JF1a9ERERERERERERERGStVp1MlwFTCdP8AEyqqqlcWLKARERESu9mQmWeSWamKnwiHWRm95nZl81sWNaxSjO7iZBgBfCzPP0qgAsI00Je0h2xrs16lToAERERERERERERERER4VzgM3H751U1lX8qYSwiIiIl5+4NZnY88DlgY2C9mZJYpMgOBQ4HMLPlhJnrBmadv8ndf52n30bAbcDr7v5BVwe5tlMCloiIiIiIiIiIiIiISAlVJ9PbA1fE3RnARSUMR0REpMdw9+eB50sdh8ha7lTgC8D2wGigLzAbeAm4xd0fzdfJ3d9Ela8KpgQsERERERERERERERGREqlOpvsCdwG9gXrg6KqaytWljUpERERE1hXufgtwS6njWNeVlToAERERERERERERERGR9diPgYlx+ztVNZWvljAWERERERHpACVgiYiIiIiIiIiIiIiIlEB1Mn0A8M24+zRwdemiERERERGRjlICloiIiIiIiIiIiIiISDerTqaHA7fH3aXAcVU1lY0lDElERERERDpICVgiIiIiIiIiIiIiIiLdqDqZNuBGYFw8dHpVTeW7JQxJREREREQ6QQlYIiIiIiIiIiIiIiIi3eto4Mi4fXdVTeVvShmMiIiIiIh0jhKwREREREREREREREREukl1Mr0pcH3cfQ84o3TRiIiIyNrOzDwu+5c6lp7MzDbN+qw2LXU8su5RApaIiIiIiIiIiIiIiEg3qE6my4FqYDDgQFVVTeXi0kYlIiLSs5nZHlmJM++YWat5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DhGRtZmmIBQRERERERERERERkU4ZVPbOLwAWN33ic+fNvP3rmePnz7ylcnHTllcDjFn69vxtrtnzFeCPwAnvHTBr2FMXLeKFb83uyCUfrKqp/FjH82befuy8xp1va6Svkq9ERERERKTbqAKWiIiIiIiIiIiIiIh0ys8nfP2i02Y88oXFTVvv8EHj7nedNP3Jn5c3NvmKst1HNtKPwXUfsN3Nm4zM6rJy9ag1H6wu32iLxvKljUATUJE95rMXzP1wu758KADL+w7n2Qvm0ljhBz89/YPlg8veueraCUdfkmk3r3Gn2xvpSzmrvZE+Y74x4w/pfPEOsDlnXT3h+MeK9gGIiIiIiMh6TQlYIiIiIiIiIiIiIiLSaXteuvVOr5/12l1LBm5w2KryURt4WTl9G5ey4TtzqLx3Y8rre60BHgXuAR5dutWy62hki9j9eKCaOHNHU1kTyytGf+wajfRleUVfgH44DOT98R89388y66VNlVt8bICoX/n8TwBKwBIRERERkaJQApaIiIiIiIiIiIiIiHRIdTJtwA7AUcCR2/1i+80+2mKDOtjgD4Skq4eraiqXZ85UUXkScBIANVCdTC9dtO28qe9+auWIuRuMBfoAUEYdoxfNZuPn+i0Z8drok6tqKu9rHr/yI1ermVhphUVe2XYTERERESkad58KTC1xGCJdRglYIiIiIiIiIiIiIiLSLtXJ9ERC0tVRwJY5pxuAxwlJV7+rqqlc0tZ4k2feVLHy+xv+cHHThBG555rozZzhmzInwdChh75xyWszn3x4yoRTajt/FyIiIiIiIsWhBCwREREREREREREREWlTdTL9CZqTrrbJOd0EPAXUAA9W1VQuLHTcyTNvshU+7tUlTZ/IHfNjljR9YlsvK58xeeZNlVMmnOLtCF9ERERERKTLKAFLRERERERERERERETyqk6mNweOBJLAJ3NOO/AsodLV/VU1lXM7co16Bl5WSPJVxtKmys37lC/5JXBGR64nIiIiIiJSbErAEhERERERERERERGRD1Un0xsRkq6OAnbN0+SvhKSre6tqKmd39norm8ae1t4+K5rGV6EELBERERER6SHMXRV6pePq6+u/CXyz1HGszdy9vKmpaQxAWVnZB2bWWOqYRNZjY4ByoBH4oMSxiKx39E4U6TH0PhQpIb0PRXoUvRNlvbJqUUPZO39d2f/d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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "all_streams_df = pd.DataFrame(\n", + " block_output_data\n", + " + attn_out_data\n", + " + mlp_out_data\n", + " + attn_value_out_data\n", + " + mlp_act_data\n", + " + mlp_input_data\n", + " + block_input_data\n", + " + attn_input_data\n", + ")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin(\n", + " {\n", + " \"block_output\",\n", + " \"attention_input\",\n", + " \"attention_output\",\n", + " \"attention_value_output\",\n", + " }\n", + " )\n", + "].copy()\n", + "stream_labels = {\n", + " \"block_output\": \"Block Output\",\n", + " \"attention_input\": \"Attention Input\",\n", + " \"attention_output\": \"Attention Output\\n(After Head Mixing)\",\n", + " \"attention_value_output\": \"Attention Value Output\\n(Before Head Mixing)\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "other_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 1)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Correct IO Name (20) w/ Interchange Intervention (Original Basis)\")\n", + ")\n", + "ggsave(\n", + " other_locations_plot,\n", + " filename=\"./tutorial_data/IO_name_other_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "other_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "c4a2be4c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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/tBHh196K7rrnPidw7570V9eddr+qo2x76JPvuWe235741EDtZt774SuOf+96Ngl5y395f6oa7Qy7w7eindf9Ja7nnHv32w5qP92jest1y198+V/uX8qY6xbdvWySVuOW7XunpO3DXC1L1l08+Qt026bf8iF51y4Y3/Uxti3/L0X/N0vfv/+Nwx0vWXq5uTYbx151pKzLrt2/1Q2epl7B2fFFcsXrDv1nrtXH7VrwLs3HfffM+5b9rL3HLk/6gKAoXjUJ2Y5YJyYnvBVkvysn3a79500suXQn0s/cvYPBxO+SpLVR+2asPHk+34x0jUxPqy48rLfvfu0gcNXSdI5schtz7z/DSuuufjVI18Z48GOBWvuHkz4KknuOXnb9F1HrLt7pGtifFjxrotfP5jwVZJsOSi557R737viymVP2A+lMQ48csp9tw4mfJUktz15w1GXXnfO90a6JsaH5e+94AODCV8lyfpD6+KB3/nl15ZfuXyAPxnDwJZfufygB37nl18bKHyVJHVbkVtOW/P05e+94AP7ozbGvkuvO+d7gwlfJcnqI3e1bzjlvltHuibGhxVXLjv1ntMGDl8lv7re8toV77rYCoAMi53z194xmPBVktxz0vZpOxesuWuka2J8WHHNxa++7ZkDh6+SZOv05O7T7n33iiuXPXk/lMY4sOHk+24bTPgqSW5/0saFl/79OT8Y6ZoAYKgEsA5cc3s9X9VPu9375vbThhG0/IrlM+994kO/PZQ+vzxhx9QV777oHSNVE+PHjvkP/WNft33bm52Timw+Zs27R64ixosVV1329LufsHFIc89dT9iwwEUZhsOmY9dcPZiLgb9qPyPZOfehz4xgSYwTK6698JL7HrNj8lD63PfEdU8RgmE4rH3sg68dTPjqV+3ndrfVMzZ9agRLYpzoPnjjZ9bO7R709aO6rcjaxz742pGsifFh+ZXLD7rvieueMpQ+9z5mx+QV11540UjVxPixc95Dn+rrtm97bT+pyKZj11w1chUxXqy48rLfvesJG4a0Qs5dT9g4b8WVlz11pGpi/Nh87Jprd04a/O8cm2ckO+av++QIlsQ4seLai86/94QdU4bS594nrnvy8iuWzxyhkgCgKQJYB67en3DZ2k+73fv8UadFumdu/OSWQX0e6TdtOWrdXw1/NYwny69cftCqEzccPdR+952w9WAr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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin({\"mlp_output\", \"mlp_input\", \"mlp_activation\"})\n", + "]\n", + "stream_labels = {\n", + " \"mlp_output\": \"MLP Output\",\n", + " \"mlp_input\": \"MLP Input\",\n", + " \"mlp_activation\": \"MLP Activations\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "all_mlp_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Correct IO Name (20) w/ Interchange Intervention (Original Basis)\")\n", + ")\n", + "ggsave(\n", + " all_mlp_locations_plot,\n", + " filename=\"./tutorial_data/IO_name_all_mlp_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "all_mlp_locations_plot" + ] + }, + { + "cell_type": "markdown", + "id": "2bb2269d", + "metadata": {}, + "source": [ + "### Localizing the correct IO name with DAS (20 names only with 20 dimension DAS)\n", + "We now localize the IO name with DAS. To make things easier, we restrict the dataset to contain 20 distinct names. Training and evaluation share the same set of names. We use a fixed dimension size of 20 for DAS training. Everything else is kept the same as previous experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3a681eed", + "metadata": {}, + "outputs": [], + "source": [ + "attn_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_input\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\", # now we are localizing the IO name\n", + " debug=False,\n", + ")\n", + "block_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_input\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "mlp_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_input\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "mlp_act_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_activation\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "attn_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_output\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "mlp_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_output\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "attn_value_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_value_output\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")\n", + "block_output_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_output\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=False,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "6c1128f5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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paamZmyl4xFZ2eiaKNI36HooUlm6Hor0HbomilRWX7om1sfp+vibgWvh73HEtUl0U6XiEelNuh6KSKWE6kBvA6OBjZ1zr1U4JJEVUpjms/j9Wtc593az/QOAqcAqQOSce6uXQ1xuVGIKwu5MvhIREREREREREREREekR9XG6Jn76nbXCppOUfCUiItLzQtWec8Pq8lIBSWR5dGZY/qd58lXwdWAU8GclX7WtVxOwnHNVPfBQ9SsREREREREREREREelW9XE6Argb2DBsmlCbRL+vXEQiIiIrnT/hK/OMNzNV4RPpJDP7q5l9ycxGlmyLzOyP+AQrgF+20K8GOAM/LeQ5vRHr8qxfpQMQERERERERERERERHpS+rjdDBwB7BV2HQpcEHFAhIREVkJOeeWmtlxwL7AOkDFpiQWWc4dAhwOYGZz8TPXDS3Z/0fn3F9a6DcOuAp4yTn3fk8HubxTApaIiIiIiIiIiIiIiEhQH6c1wI3AbmHTNcD3apPIVS4qERGRlZNz7lHg0UrHIbKcOxE4ANgSWBMYCEwFngKudM79o6VOzrk3UOWrsikBS0REREREREREREREBKiP0yrgL8AXw6a/A1+vTaLGykUlIiIiItJ5zrkrgSsrHceKrqrSAYiIiIiIiIiIiIiIiFRafZwa8Gvg6LDpYeCI2iRqqFxUIiIiIiKyPFACloiIiIiIiIiIiIiICJwFnBqevwBka5NoYQXjERERERGR5YQSsEREREREREREREREZKVWH6cnAueH1deBA2qTaFblIhIRERERkeWJErBERERERERERERERGSlVR+nRwCXh9X3gH1rk+j9CoYkIiIiIiLLmX6VDkBERERERERERERERFYMuTT+CnAysBXQH0iB64BL6qKkodxx/rXo99sNrVqNWY1TmNn49tMudSOBZcBbwP3Ar+qiZHKZMW0FPA3UAK/XRUlU3Fcfp/sB1wIGzAL2r02iN8uNU0REREREBFQBS0REREREREREREREukEujS8FbgI+CzwF3AWsA/wceCCXxoPKHWt243uff2PpYyxyc6ii3xvAbcBDwCjgFKCQS+M9y4ipP1BPCz9Ir4/TncO4NcAC4KDaJHqp3BhFRERE+gIzc+GxZ6Vj6cvMbL2S12q9SscjKx4lYImIiIiIiIiIiIiISJfk0vgQ4FRgHrBTXZTsXxclhwMb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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# all_streams_io_name_df = pd.DataFrame(\n", + "# block_output_data+\n", + "# attn_out_data+mlp_out_data+\n", + "# attn_value_out_data+mlp_act_data+\n", + "# mlp_input_data+block_input_data+attn_input_data\n", + "# )\n", + "# all_streams_io_name_df.to_csv(\"./tutorial_data/all_streams_io_name_df.csv\")\n", + "all_streams_io_name_df = pd.read_csv(\"./tutorial_data/all_streams_io_name_df.csv\")\n", + "all_streams_io_name_df[\"IIA\"] = all_streams_io_name_df[\"acc\"]\n", + "df = all_streams_io_name_df[\n", + " all_streams_io_name_df[\"stream\"].isin(\n", + " {\n", + " \"block_output\",\n", + " \"attention_input\",\n", + " \"attention_output\",\n", + " \"attention_value_output\",\n", + " }\n", + " )\n", + "].copy()\n", + "stream_labels = {\n", + " \"block_output\": \"Block Output\",\n", + " \"attention_input\": \"Attention Input\",\n", + " \"attention_output\": \"Attention Output\\n(After Head Mixing)\",\n", + " \"attention_value_output\": \"Attention Value Output\\n(Before Head Mixing)\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "other_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 1)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Correct IO Name (20) w/ DAS (Learned Basis)\")\n", + ")\n", + "ggsave(\n", + " other_locations_plot,\n", + " filename=\"./tutorial_data/DAS_IO_name_other_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "other_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "69636ded", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# all_streams_df = pd.DataFrame(\n", + "# block_output_data+attn_out_data+\n", + "# mlp_out_data+attn_value_out_data+\n", + "# mlp_act_data+mlp_input_data+\n", + "# block_input_data+attn_input_data\n", + "# )\n", + "# all_streams_df.to_csv(\"./tutorial_data/all_streams_df.csv\")\n", + "all_streams_io_name_df = pd.read_csv(\"./tutorial_data/all_streams_io_name_df.csv\")\n", + "all_streams_io_name_df[\"IIA\"] = all_streams_io_name_df[\"acc\"]\n", + "df = all_streams_io_name_df[\n", + " all_streams_io_name_df[\"stream\"].isin({\"mlp_output\", \"mlp_input\", \"mlp_activation\"})\n", + "].copy()\n", + "stream_labels = {\n", + " \"mlp_output\": \"MLP Output\",\n", + " \"mlp_input\": \"MLP Input\",\n", + " \"mlp_activation\": \"MLP Activations\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "all_mlp_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Name Position w/ DAS (Learned Basis)\")\n", + ")\n", + "\n", + "ggsave(\n", + " all_mlp_locations_plot,\n", + " filename=\"./tutorial_data/DAS_IO_name_all_mlp_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "all_mlp_locations_plot" + ] + }, + { + "cell_type": "markdown", + "id": "3213917d", + "metadata": {}, + "source": [ + "### Head's Query Representations to Trace Name Mover Head\n", + "To use the name position information to copy the IO name, responsible heads need to take in name position information, and process it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0104da84", + "metadata": {}, + "outputs": [], + "source": [ + "layer = 9\n", + "head_query_output_mo_data = []\n", + "for i in range(12):\n", + " _head_query_output_mo_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_query_output\",\n", + " heads=sorted(list(set([i for i in range(12)]) - {i})),\n", + " debug=True,\n", + " )[0]\n", + " _head_query_output_mo_data[\"mo_head\"] = i\n", + " head_query_output_mo_data.append(_head_query_output_mo_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "2cf16bb5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "layer = 9\n", + "# df = pd.DataFrame(head_query_output_mo_data)\n", + "# df.to_csv(f\"./tutorial_data/layer_{layer}_head_query_output_mo_data.csv\")\n", + "df = pd.read_csv(f\"./tutorial_data/layer_{layer}_head_query_output_mo_data.csv\")\n", + "df[\"mo_head_cat\"] = pd.Categorical(\n", + " df[\"mo_head\"], categories=df[\"mo_head\"].unique(), ordered=True\n", + ")\n", + "head_query_output_mo_plot = (\n", + " ggplot(df, aes(x=\"mo_head_cat\", y=\"acc\", fill=\"mo_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Leave-One-Out (LOO) Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"head {i}\" for i in df[\"mo_head\"]])\n", + " + ggtitle(\"Name Position for Each Head (Query) Before Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_query_output_mo_plot,\n", + " filename=f\"./tutorial_data/layer_{layer}_head_query_output_mo_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_query_output_mo_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a720164", + "metadata": {}, + "outputs": [], + "source": [ + "head_attention_value_output_mo_data = []\n", + "for i in range(12):\n", + " _head_attention_value_output_mo_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=sorted(list(set([i for i in range(12)]) - {i})),\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=True,\n", + " )[0]\n", + " _head_attention_value_output_mo_data[\"mo_head\"] = i\n", + " head_attention_value_output_mo_data.append(_head_attention_value_output_mo_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "a51eb417", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# df = pd.DataFrame(head_attention_value_output_mo_data)\n", + "# df.to_csv(f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_data.csv\")\n", + "df = pd.read_csv(\n", + " f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_data.csv\"\n", + ")\n", + "df[\"mo_head_cat\"] = pd.Categorical(\n", + " df[\"mo_head\"], categories=df[\"mo_head\"].unique(), ordered=True\n", + ")\n", + "head_attention_value_output_mo_plot = (\n", + " ggplot(df, aes(x=\"mo_head_cat\", y=\"acc\", fill=\"mo_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Leave-One-Out (LOO) Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"head {i}\" for i in df[\"mo_head\"]])\n", + " + ggtitle(\"IO Name for Each Head (Value) after Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_attention_value_output_mo_plot,\n", + " filename=f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_attention_value_output_mo_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fe82670f", + "metadata": {}, + "outputs": [], + "source": [ + "head_attn_value_out_cumulative_data = []\n", + "current_heads = []\n", + "for i in [9, 6, 8, 3, 2, 7, 0, 1, 4, 11, 5, 10]:\n", + " current_heads += [i]\n", + " print(\"evaluating grouped IIA adding head\", i)\n", + " _head_attn_value_out_cumulative_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=sorted(current_heads),\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=True,\n", + " )[0]\n", + " _head_attn_value_out_cumulative_data[\"adding_head\"] = i\n", + " head_attn_value_out_cumulative_data += [_head_attn_value_out_cumulative_data]" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "f2412fc6", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# df = pd.DataFrame(head_attn_value_out_cumulative_data)\n", + "# df.to_csv(f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_data.csv\")\n", + "df = pd.read_csv(\n", + " f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_data.csv\"\n", + ")\n", + "\n", + "df[\"adding_head_cat\"] = pd.Categorical(\n", + " df[\"adding_head\"], categories=df[\"adding_head\"].unique(), ordered=True\n", + ")\n", + "\n", + "head_acc_plot = (\n", + " ggplot(df, aes(x=\"adding_head_cat\", y=\"acc\", fill=\"adding_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Cumulative Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"+ head {i}\" for i in df[\"adding_head\"]])\n", + " + ggtitle(\"IO Name for Cumulative Head (Value) after Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_acc_plot,\n", + " filename=f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_acc_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "edf2fca5", + "metadata": {}, + "outputs": [], + "source": [ + "layer = 10\n", + "head_query_output_mo_data = []\n", + "for i in range(12):\n", + " _head_query_output_mo_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_query_output\",\n", + " heads=sorted(list(set([i for i in range(12)]) - {i})),\n", + " debug=True,\n", + " )[0]\n", + " _head_query_output_mo_data[\"mo_head\"] = i\n", + " head_query_output_mo_data.append(_head_query_output_mo_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "4e36df68", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "layer = 10\n", + "# df = pd.DataFrame(head_query_output_mo_data)\n", + "# df.to_csv(f\"./tutorial_data/layer_{layer}_head_query_output_mo_data.csv\")\n", + "df = pd.read_csv(f\"./tutorial_data/layer_{layer}_head_query_output_mo_data.csv\")\n", + "df[\"mo_head_cat\"] = pd.Categorical(\n", + " df[\"mo_head\"], categories=df[\"mo_head\"].unique(), ordered=True\n", + ")\n", + "head_query_output_mo_plot = (\n", + " ggplot(df, aes(x=\"mo_head_cat\", y=\"acc\", fill=\"mo_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Leave-One-Out (LOO) Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"head {i}\" for i in df[\"mo_head\"]])\n", + " + ggtitle(\"Name Position for Each Head (Query) Before Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_query_output_mo_plot,\n", + " filename=f\"./tutorial_data/layer_{layer}_head_query_output_mo_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_query_output_mo_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d05b7eb7", + "metadata": {}, + "outputs": [], + "source": [ + "head_attention_value_output_mo_data = []\n", + "for i in range(12):\n", + " _head_attention_value_output_mo_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=sorted(list(set([i for i in range(12)]) - {i})),\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=True,\n", + " )[0]\n", + " _head_attention_value_output_mo_data[\"mo_head\"] = i\n", + " head_attention_value_output_mo_data.append(_head_attention_value_output_mo_data)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "8ca0ab50", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAB9AAAAGQCAYAAAD2sPsvAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AACbQElEQVR4nOzdd7hkRZn48W/NMCJDGhBwGFCQBZUgRswK5oCWirqKccyuARVX190fq+jK6hows2ZABEwoljmCWUERXIJZEBmykoMDU78/6rT33J7uvp3O7Xt7vp/n6ae7T9epU3377dPnnvdUVcg5I0mSJEmSJEmSJEnShm7JpBsgSZIkSZIkSZIkSdJCYAJdkiRJkiRJkiRJkiRMoEuSJEmSJEmSJEmSBJhAlyRJkiRJkiRJkiQJMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJgAl0SZIkSZIkSZIkSZIAE+iSJEmSJEmSJEmSJAEm0CVJkiRJkiRJkiRJAkygS5IkSZIkSZIkSZIEmECXJEmSJEmSJEmSJAkwgS5JkiRJkiRJkiRJEmACXZIkSZIkSZIkSZIkwAS6JEmSJEmSJEmSJEmACXRJkiRJkiRJkiRJkgAT6JIkSZIkSZIkSZIkASbQJUmSJEmSJEmSJEkCTKBLkiRJkiRJkiRJkgSYQJckSZIkSZIkSZIkCTCBLkk9hRBuF0J4RwjhFyGEv4UQbg4h5Op21KTbp/ELIZxc+4wPnXR7NH61zzeHEPZrcDv/W9vO/k1tZ76FEFbX3te5k27POIUQloQQflW9t6tDCKsm3aZRhBBuGUJ4UQjhGyGEC0MIN9bjf9Lt0/BCCIfWPsuT+1zn1iGEN4YQfhJCuDyEcNOgdWj6eNwjSZIkSdL6Npp0A6RBhRA2AvYBdgJuDdwSuAS4GDgl53zZBJunKRJCeCJwDLDJpNsiaXEJIdwZeEH19Ic5569Msj3qT855XQjhEOCLwGbAW4FnTbZVwwkhrAS+Aew96bYsNiGEzYG7A7sBK4BbANdSjjX/BJyVc756Yg0cQgjh/sCJwK0m3BRJkiRJkqQFzwS65k0IYTVwZG3Rg3LOJw+w/p2B1wKPArbqUuzmEMJPq+0cmXNeN1xr52zLfsBJbYt/DeyVc765zzoOBd5QPb0x53zLcbVPowsh3I71k+dXAH8FWr32Lp7nZjWqS1wP6uic8+qRGyMAqlEOnt16nnMOQ9RxLuWCI4Dv5Zz3G0fbNKd3Akurx2+ovxBCWAFcSLkADODknPODRtlYCOFE4HHV07XADjnnS0epc0OVc04hhNOAuwHPCCG8K+f8y0m3awhHMTt5/ndK3N3UXrA6Rtu5enryIMdn0ySE8EDg1cD+zHx/O1kXQvgN8F0g5Zy/OR/tG1YIYQvgBGYnz68BLgVax8oXjHmb9wBObVv8sJzztwes5/HAXaqnp+ecT+xzvZ2B1a3nOedDB9nuYlP9rryytujdOecrJtIYSZIkSZKmgAl0LXhVL6DDgecy97QDS4H7VbeXhxBemHM+peEmttyR0kvtyLkKalF4CTPJ80uBA3LOP5xgeyQtEiGEfYGHVE9/nnP+bv31nPMVVcL7qdWifUMIO+Wczxtye9sCj64t+orJ85G9HTgeCMCbgMdOtjmDCSHsBTyitugNwNtyzjd0WWU1sG/t+cnNtGxhqkY3ei/wL32usgTYvbo9CVjZUNPG5ZnAdtXj6yn7ni/lnJscxv85HZatBgZKoAOPZ+ZCsqMpvej7sTOzL146dMDtLjYrmP1+j6Jc+ClJkiRJkoZgAl0LWpUU+BplGM26s6rl5wPXAauqMo8ANq7K3Bk4OYTw5HkcOvfQEMJxOecb52l7as6Da4/ftYEmzy8BBh2idqp65UtD+s/a43d3KXMkMwn0QLkA67+G3N7TgGVtdWs0nwXeAewAPCaEcNdF1gu9PqLBb3POb5pYSxaHI4FntC37OfA94I+UY80tgR2Be1a3xTRyUP2Y5picc2pyYyGEjYEDO7z0hBDCFjnnq5rcvgbjyDSSJEmSJK3PBLoWrBDCppQeUHvUFp8FvCjn/KMu62wN/A/w/GrRJsCJIYT952l4zdsCLwbeMw/bUrN2qT0+Y2KtmKx/yzkfNelGSItJCOFOzPQ+/xtl2OROvg38hZKQg9ES6Ktrjy8BvjpkParknG+uplD4f9WiVzD777zQ+RvWpxDCE5mdPP8j8Myc8497rLM5ZZj35wN7NtvCsZjveHg8M9MtXUmZNuBWwHLgKcBH5qENkiRJkiRJQ5trOGxpkt7L7OT5t4F7dEueA+Sc/5pzfgHlhGZrWMqNgKNDCNs01tLZvW7/I4SwWYPb0vzYovb4uom1QtJi87La4093GzI757wO+ERt0a4hhPsNurEQwt7MzA8M8Mmc83pzXGsoR9cePzWEcKuuJRcef8P696+1x1cBD+qVPAfIOV+dc/5UzvmhlGmDFrr5jofVtccnAJ/u8pokSZIkSdKCZA90LUghhIdT5jxvOQt4XI+5O2fJOX8shLAjM/MdrqQMo9s+POe4HEZJ+EOZY/JVDN+TsKcQwlbA3sDtga0pQ/9eDvwB+EnO+foxbWcLYD9Kr/rNKT0lT8o5/2WOtu0H/BNlPvoLgG/nnC8aoR3LgftX7diWcnL7z8DJOedBhxcfxMgXGIUQbgvcF7g1ZajXS4BfAz+rkmej1r8EuA+wKyXGrwe+nnP+7ah1Ny2EsCul195OlPi6DrgMOA04e9R5WUMIm1CSGjtR4mZdVf/ZwGk5578PWe+tgQcAt6HE+BrK9+LCUdq7kIUQbk+ZIuPWwC0oFwz9Muf8qyHr25iyD7sjZX95S0pP7QuAH+WcLxuxvXvX2ns58CfgeznntaPU2+e2Nwb+ubbo83OschTwH7Xnq4GuF4l1sbpDneuZr9+OSQsh3IayX7w1sCllv3sWcMqg+5Wc8+9CCGcCe1Gmh/ln4H/H2+Kige/F0vG2sH/Vb9M9gTtQPoe1wIXAD3LOF4xpG7tTpupZRXmvP8s5f3+IerYG7lVb9Mmc858HqSPn/Mchtju2OO3TvMVDCGEH4OG1RZ8EbgBeUj2/bwjh9ovhWKWumlbq/sD2lOH8LwN+S/l+jnzRUnXc8iDK3O1bAJcCP805nzVq3U0KIdyRmd/cpZRjhF/lnE8fU/0bAftS/re4FeV36zTgFw19VyRJkiRJKnLO3rzNy41ykj/Xbvv1KPvtWrl1wP2H2N4yysnIVj03Abcd03vZr+293JvSw6b1/ErgVnPUcWit/A1zlL0dZU7d04Cb27Zdv90IfBzYqc/3UW/DydWyTYEjgGs71H8T8DFgs7Z6VgAfAv7eYZ2bgQ8Cmw74N94FOJ6SFO70Xm+g9A5cOabPdOcef9dOt5N71PUIytyp3da9BDgEuOWgsVYtC5SLNM7vUPcrxxjXq8fxt621+WFVfK6Z4297PnAQsGyI7ewJfK5H3GTgGsr8xvfqUsfJtbKHVstWAp+hJILa61tH6V03llhsa8tR7Z//EHWc20/ctq2zBHgeJTnQ7e/4O+Apfda3AngRZd/e67NZB3wHuN8Q7/M+wC+71Hsx8G9AqMr29Vs0RBtird6r+olh4Ae1da4ENhlgextV7621/s/bXm/qt2N1bd1z+4zfo/qse+e2tu3c53pP6PH5Z8p+56XAkgE/0zfX6vj+uGKlie8Fs/dd/dxWD1i+5/eFcjHUWyiJv27v43vA3fv8+6y3XeCRVTy3133ikJ/BndvqefE4P+Mm45QOx3A9/n5z3bp+j4d4j/9eq/d8Zva7v6st/+856th5iNhcPeT3YL2/XVtb9qPsp7vtQy8HXg9sPMxnRrkw7S2UC2Y61X8qZQSubnUeNepnTYfjnj7ey4HAb3ps58+UiyaW9lHX6vb2UY4bX025+KZT/b8BHt7k99WbN2/evHnz5s2bN2/evG3YN4dw14ITQtiTmfljofRg/uGg9eTS2/C/a4uWMnto3XE7hHJyDUrPkdeNse63A28C7krvntG3AJ4D/DKEsO+gG6l61/4M+BfKPJXtllJGBvhWCOGW1Tq3pSSLX0i5aKHdEkqC4IshhE6vd2rH84BzgKdSeuF1sjFlzuCzQwj37KfepoXiA8DXKb1xutmWMkLBadVICYNsYxnwZeBwZuZOXgw2Bb5Jic/t5yi7I/Ae4OshhBX9biCEcAjwK+CJdI+bVlueRInzfuq9GyXh8WQ6j9wSKD1TfxBCWNlvexeqarqLHwEfBXbrUXRX4FMhhE+EEObq3fgMyoU0D6H3ZxOABwPfDyG8coA2Px/4IbOHMq/bDngrZT/U5Og7j649/nHur9f7UbXHW1DmDu7XoyjvrVNdME+/HZMUQlgeQvgipbf/XXoU3R54P/CNamSTfp1ce3yfEMKWAzeyu0a/F/MphHAPygU3rwO6TZkTgAcCp4QQXjzENg4BvkqJ53HZtO35xmOs+x/mIU4XktW1x8flnHP1+Nja8mdVIxUsWCGEpSGEDwInUXqed2vv1sAbgZ9VvdQH2cZWwPcp35sVXYrdA/heCOGBg9TdlBDCxiGELwDHUUY06eY2wAeAkwfdb4YQbgEk4B2UCxg7uT3w1RDCUwapW5IkSZKkfjmEuxai/dueHzlCXZ+n9Ohrnbh5NPDaEerrKud8TgjhGGZOHL4shPDuPKbhSmvOBn5CSTD/jZL42IXyd2vNGb8VJVG0d+5/KNKlwKcoPXhvBE6stnMNJVH2TGCHquy9gTeEEN5MOZn9T9U6X6zWubpa9mzK8KpQEgSvpCR0ugohvAx4X23ROkri9fuUnpZbUE7Ax6rNW1ES+vfMOf+mz/fayVrKUMYt/1R7vIbSO7Cu0+f6PmaGKIWZv+NPKUOU3x54CjOJ790pCZF75Jz/2mc738lMku7nwFcow+tvBtytQzsXohspCdpTKX/Hqyknju9KSR625mp9MKVX7AFzVRhCeA+l13rdKcC3mOmpvxLYhxKLm/TZ1ltTTuKupPQo/gKl9+O1lN69T6f0lIPyPflfSg/DRama4/mHlKGXW/5CieNfUz67XSkXE+xSvf5MSty9qM/NrKm2cQZlCNx1lP3EfpTha6EkKt4VQvhjzjnN0eZHU0bAqCc3vgd8rap/R8pFFXcCHsvM1B5NeFjtcb8Xfn2GMgVIK1n2bMroG/14du3x3ykJjW6a+u2YmGrY828yew7qyyi/RWdQvqe3pexD7lS9/lDg8yGER9USe738mBKjSyjHzQ+m7AfGbRzfiwuY+R3bjtIjHMo+9pIO5f9UK78DM0n8vwHdfpPW+40JIdybsq/drLb4l5Tjgz9T/m53plxotKJ6H0eEEK7KOfeK2boDgJdXj8+jHN/9rnp+ezpf9NePS9ueP5xyAdfYzFOcdlI/ptmJmf/7LqHERF3X6XkGEUK4L7OTqp9se/yG6vEOlP3lN7pUVT8m6yeWofxGw8z3YBNmjkFh9t+jbr3juRBCoBwTP6m2+BrK8cCp1bZWAo+hjH4CJca/XR2P3thlW3VLKPv6e1EuwP0a5Vj3csqFlo+nHG9Die9PhhD2yDlf01bPxdV724jyObecRxk5qt3Qn3X1d/kc5X23XE0Z1eeX1fb2olwAe6vq9ftTjtPvn/ufPucDtW2cRBml4yLK/3OPZGaKgKXAR0IIP8o9ppiSJEmSJGkok+4C723DudHnEO6UE4r1ctuMuN2v1OpaB2w1hveyX1sb710t34mSYGot/1CPOg6tlZtrCPdjKSeT9pyj3LMpQ5u36v30HOXrbVhX3Z8N7Nah7BaUhGSr/DXAR6rHZwG7dlhnS2YPZX4psFGP9tyd2cPAnw3s1aXsXSknAVtlf8yAQ/PO8beZM1bbyj+ybZ1fA7t3KLcJ6w+3+ckBYi1Xn/GB43qvPba1eox1b0Y5mftiYEWPcltShkOvt+NRc9T9lLbyfwYe1KP85pQLHd7c5fWTa3W1hmz9KrBth7K3BL7Utv07jfHvNitWhqzj3FodJ89Rtj4VxTrKsLS36FDuFsC72t73I3vU+9Lqb/igXt9TSiLhvFqdf5ljn7EZs6cyuAF4UodygdLDr/6Z9v397vPvfKu2euMA6x5dW+8mYFUf62zN7N+bz3Yo09Rvx+pa2XP7jN+j+vxb7Nz2d9y5R9nD28oeQdsUI7XP/zVtZfseqpvZwxS/dRzx0uT3Ypi/PUMM4VyttwUlEd9a90rgCV3KbkdJhrXK/hXYvkfd7b99mXIR3nr7pBE+g0BJZte38WqqYcfHtI1G4pQ5hnBvK3turezqcb23Dtv5SG07Z3R4/Se11z/VZ50D70eq9far/y0HfB8HtX0OJ9Dl/xHKhXT1Y9eu+4i2z6z1W/QHYO8u5f9fWzsO6lH3zm1ldx7g/fb1/accw9W38WNghw7ltqZcEFAv2/GYqyq/usPf5VK6/6/4TGb+b8nA4U3FtDdv3rx58+bNmzdv3rx523BvC3roPG2w6sNx/znnfNmI9f2i9jhQhkJsRM75PMpwrC3PDSHsOoaqn5dzfmnO+aw5tn80s3tAP2GAIaUDpdfZQ3POv2t/Med8FfCC2qJNgedTToA/NOf8+w7rXNm2zjbMHp6/3QeYGQb+XOABOeczOxXMOf+SkrRu9Wa5D2U440l5W+3xlcAjcs7ntBfKOV9PGQb/67XFTw8h3GWAbb0g59xvD9WF4jrKhRkfzDlf0a1QFTNPY/awyS/pXPofPfveW1t0MSVuTuqxjatzzkfknA/po91LKL3NHpdzbu+pSM75Bkry8cra4qf1Ue+CE0J4JLN7+/9rzvlNuUOPsZzz33POr2J2j+f/6lH9x3LOj845n5RzXtetUM75Z8z+Xu8APK5HvS9j9lQGL805f65DvTnn/Fbg3fQeynwU7cNKnz3AukfWHi+lJAfmciDlQoaWozqUmY/fjokIIexBGdWk5X0555fk9Xtntj7/tzN7WpfXDzCcf/3vd7eBG9tdU9+L+fQfzIzC8XfKhTRf6FQw53wJpVdp63hhK+DgAbb18Zzzazrtk4aVc86UC1jq3gGcGUL4txDCXfuYoqKreY7TiaqGnP/n2qJPdih2TO3x4waZpmW+VCOxvKW2KFEuzOr4/0jO+VjKxTAtr6jqmMsSyrHDg3POv+pS92GU+ddbDuyj3kZUx1v13/k/AfvnDiNt5TKq0gGUERZaXhNC2K69bAdLKBeSPTrnfHKnAjnnY5gdX0/to15JkiRJkgZiAl0LSjU0YH3+wPWSskNor+PWY6izl8MovbOhDKf4plErrJJ0/TqSmWEql1GGm+3XYTnnNT3acQbQntA+LOd8YY91fsns5EPH+cqrIWDvVVv00pzz5b0aWyXXP1Rb9MJe5ZtSDVl6p9qiw6qLKTqqEiUvowxR2tLXfNzAqdWJw/lwZAghD3hb0aminPO6fpMeOeebmRnmFeAhPRIYz2D2HNCv6PW3H9LLc4+5rKsTxSfUFnWM8XEY4vPIzB7StZdX1h6fmnM+vI91DmYmju8RQug4N/Eg+7DqwpP6XLmP6FH8ObXHv6AM+d/L6ym9TZvwT23PBxlO9nuUZETLs/tYZ3Xt8YXMvigHmNffjkk4iHLhF5S/9Wv6WOdNzAzZvT1lSP9+nF973P45D63B78W8qBKm9d/d9+Scf9JrnZzztcC/1RatDiEs61a+5gYamoIHeDPrD++9B/BWypQdV4UQfhhCODyE8IQQwtYD1D2fcTppT2RmCpZ1dJ5S4tPM/GbckoWZ+HwBM1MCXAc8v7rQoquc80eAVhL8lsCz+tzWW/o4ZvlI7fFdJ3hBxRMpF8K2/FvO+W/dClcXjL68tugWwPP63NZHc86nzlGm/nfZPoRwmz7rliRJkiSpLybQtdBsQel913Jlt4IDaK9jkBOfA6t6WL27tuipIYQ7N7nNtu1nyhCpLXcfYPV+ErO/bHveqYdRu9Nqj+/QpUz9JOrvc85f7aNemN3m/UIIk9iv7V97fBNzJ/HIOf+BMidqy6O7lW0zX8nzSfsRZXhqKMPe79GlXH1+0vMo83CO06+r3p9z+WntcbcYX7BCCFsxM6co9DkHcM75Ysrcxy29RpgYxHdqjzvuw0IIt2f2XLsf6yPJcTUlgdOE+sn7vw2YHG3vBbt7CGGfbuWrXq310VQ+WV14MrQRfzvmVXWxXb2n6wdzH3MOV2Xq+4h+47V+Ydltqu1Pwpzfi3n2cEov8pb3divY5ovMzFe9DWXu6Ll8da6L6oZVJQEfTBltpJPllPnLX0WZe/3iEMIXQwj79qp3AnE6aatrj0/u0jP5csrQ3i3PaS+zANSPR4/rNPpMF/Xj4X4/s/bRDzqpH19szMyID/Otfqx7KdBxpIm6nPMPmH0Rbb/Hukf1UeZUyoUaLYvu2EuSJEmStLCZQNdCs3nb82vHUGd7He3baMI7KEObQ+l5dNg8bLPu4trjHfpc57wq+T9I3ecOsc6KLmXuV3u8Xk/KHk5npjfTFkzmBFq9x/HPBzjJX79IYMc+h0zu2btvzC6h9Mob5DZSEq+lSgbWewqvF8fVxRL3qS1KvYZBHlI/yXOYnWBbMeY21A36efyBclHHXO7LTC9JGOw7eErtcdek74D62Ye1b+tbHUut75tzFxnKitrj9YZn7kNrHvSWXr3QV7c9P7JToSEM89sxCXswO3HbdLzWP89llIt6JmGhfT713+0zc859jbpQ7d/rF9b18zk0+tuXc/4zcG/K9+60OYpvBETg5BDCcVVP/E7mO04nJoSwM/Cg2qJeF1fWLwS8Zwhh90YaNYQQwubMHlGoyc/svJzzRX2Uax8ZakXfLRqv+rHud3LO/RxbwOxj3bv1MSXCWub+DrZG8PhrbdGKPtsjSZIkSVJfFsWcetqgXN32fNMx1NleR/s2xi7nfGUI4a3MzIu9fwjhfjnnH41SbzU89pMoPVvuBKykJI17DX+6ZZ/V93MSD2ZfkHBx11Ld1+n2mdZPWK43d3g3Oee1IYS/MjM0/46DrD8mu9Ue/98A67XPeXl75v4c2oeZbdK/5ZyPGnelIYQ9KT287gnckXLSczN6X9TVKY5XtS3/xZiaWDfM92Ic+62Ocs67DrpOCOFc5h7Gfe/a40sH7OlZ3w/s2LVUacsyylzOkdLrdCfKPuyWPVbrtg+r9z6/AfjjnC0t2qehGJd6UnWQodMByDmfG0I4iZmh0w8MIRzcPvVBlXx4Rm3RKdXw3l01/NsxCXu3PR9kn993vNZc3/Z8OWVo57EY8/diPtU/h0F/dwf9HBr/7asuwPoE8IkQwh2AhwH3p8x7vyuzLzJqOZAyKsGDO0z1Md9xOknPZubvcz2zpzVp9yXK6FCtGH4OzQ3PP6i9mH0sMuxntl0IYVmv6V/o8/gi53xt26AXjR1jdFNdsFifvmLYY93llIt//tyj/F/n+LvVXcvMsPLz/neRJEmSJE03E+haaK6i9GBt9U5YMYY6208y/7VjqfF7H/AKZnqJvQV44DAVVcOAvgp4IyXROIheJ+DrBk74DLnOeiegQwibUYalbPlACOEDQ9QNk+mBUu9h1u9Qn53KbtWx1GyNXwDSlBDC9sD7gQOGWL1THN+q7Xm/ye5BDBPji1H9b7ltNXf6MFZ0eyGE8EjgCOB2A9bZbR9W39blA4w+MMh3dBD1E/7DHl8dxUwCfWvgMZQho+seTpkXuaVr7/N5+u2YhPbvfnuCqV8r+izXfqFBv8mdOTXwvZhP9c/hyU3sN2rm9bcv5/wb4DeU3yxCCFtQkulPAJ7GzBzZVMsPAd7QVs18x+nQQgg7AN/ro+h7c86zhuqv9jP1ETO+lHO+ii5yzjeGED4LPL9a9IwQwr+POg3FmLR/ZmeNMGPDCnr/3gx7fDGJKSS2bNvuqMe6vRLoi+nvIkmSJEmaYibQtaDknHMI4VJK7ziY3dthWO09NvvtNT2SnPMNIYQ3AR+qFj0ghPConPPXeq3XxQeAf+m0GeBySm+fei/FrZlJxi6GE0rj7EnXbSjVJtV7vQzSK7F9eoE5E1wDDJm5oFTJ8x/Q+Tt9I/A3ShzXk6A7MfM71SmO26djGGbYbBXj+g52/P6FEA6kDOnbaZSBKymfXf2k+SaUEQZ6qX/v2nsI9zK2nsNt6t/nYZObJ1D2963YXs36CfTVtcc3AJ/qUd+0/nY0Gq8dtA/ZPo7pZZr6Xsyn+fwcJvrbVyWEvwp8NYTwn5TPrT7P9StDCG/NOdf3RfMdp6NYRn/H3Ft3WLYvsy8A6TV8e8sxzCTQt6eMwPCVPtZr2mI/Hm1Ke+/uRo91JUmSJElaCEygayE6FXhs9fi2IYRtcs6X9VphDnevPc7Az0eoa1AfB17DTBL/sBDC13POfffSCiHsz+wEyB+B9wDfBn7XaZjDEMIbgdcP3er5134i7mKGT4ZOoof2NcycdB3khGn7CclpTgC/l9kn579E+X78tNscoCGE84Db9qiz/bP2pOzw6t/BtfTuHdbLenMghxBWUi4kaiUJr6L06vwS8Kuc83on4kMIDwK+O8e26iflB5mTuqmkRj2ObxVCCIPs6wFyzteFED7NTGLpUSGE7XLOl8A/hmKPtVW+mHO+olNdU/7b0R4zTQ/vvW3t8eXjuJCpwe/FfKq38SqGH93hkjG0Zd7knC8KITwWOIOZKVy2oMwJ/+1a0fmO00l5TtvzNESv7dUsjAR6+2d2LmVkrGEsygseu2g/PvVYV5IkSZI09UygayH6ITMJdCjD1R43TEUhhE0oQ2u2nJNz/tsIbRtIzvmmqqfS8dWiuwL/DHx6gGoOqj0+E7hfr6ExKysGqH8huILZQ/f/v5zzxybXnIH9jZkE+ra9CrZpLztvsTmfQgirgCfWFr0p59w+1G0nK+Z4vX2e7pUdS6kf9b/lxcPMtd7Dc5jpUX0dZR821zzkK/qo94ra461DCEv6HMZ9kO/oIM6rPb5FtZ1hEoNHMpNA34gyXPS7q+dPZXbv9q7Dt7MwfjuGGdK7n4sh2r/7d2x4dI56r+/zupYaTFPfi/lU/xxSzvmZE2vJPMs5Xx9C+CDwztriOzI7gT7fcTq0nPO5DDHqRAhhc+BJY2hCDCFsnXOer2mWumn/zB6ac57WCx8GcRVlhKDWBT8e60qSJEmSpl6nISOlSftq2/P2ni2DeCKlV1DLJHq3fBo4vfb8v0IIfV28EkJYAuxXW/TmPhIgMPhcqhNV9dL8XW3RDt3KLlC/rz3ee4D12sv+rmOpxe9BzJyYvxI4bK4VQghbM/u728kaZidR796lnOb2m9rjbUMI7XM+j+LBtcef6CNJCP3tw35be7wJsEuf7dmrz3KDan9fu3UsNYec84+Z/d6e3eXxBcC3OtWxgH476r05++2xeOs+yvym7XnTw5rXP8t+4rcfTX0v5lP9c1hsv9vjcHbb8/bfrPmO00n4Z2Z/t/8w4K3Vu/sWlIuFJq39M9sQ43o91cVpf6wtGvZY9zrKb5ckSZIkSQueCXQtONVJ5JNqix4SQrh/t/LdVAmgf68tupkyH+y8qpLD/6+2aDf6vyjgVpSTii1nzLVCCOEWlGFEF5vv1R7vO7FWDOdntcd3DyHcqs/1HlV7fH7O+cIxtmkhqScNfp1z/nvXkjMeNFeB6oTuj2uLYpU41ODq37+NgXuPse765z/nPqwy5+dPme6j7mF91v3wPssN6tfMHlZ+lET9UbXHdwkh7B1CuAOzP5dP9Ohxv1B+O66oPe43edhP7P2C2cMAN/2bsWfbtsehqe/FsOpD+ve7H63vN+4VQth4jO1ZDNrfb3vv6fmO00lYXXt8es5510FuzO6xv5rOhonN9vXo5/gg53wxs5Poi+kza5+WY9zHQ/Vj3Yf0ezEws491f5FzHnZIfEmSJEmS5pWJBi1Ub689DsAHQwiDzlv7H8AeteefyTmPa+jVgeScv0oZmr7l9cwehreb9uE0+1nnQGDrPpu2kHy29vhBIYQ9u5ZceOojG2wEPG+uFUIItwMe0aWOaVOP435iGOBlfZarx81OjGco2Q1ONQ99fR/V79+/HwN9/iGEXZh9wr2jnPNvmT1qw5wXJoUQNqP0mBy7Kpn9o9qie4xQ3Scow+W2rGZ273OYnWRvt1B+O+o96e88V4I1lImTnzVXpdUw2CfWFr10qNb1IYSwG7OHTv9el6IDV117PLbvxQjqid65Rv9o+TpwdfV4OfDcsbZo4Wu/4GTWUN/zGaeTUH036he4DjI9Uad17h5CuFOHMsPEZvt6g6xbP654QXVx0WIw7PvtV/04dRvggLlWCCHcj9kXk03zsa4kSZIkacqYQNeClHP+GnB0bdGewBf77d0UQngeUJ9j+WLgFeNr4VDqveF3ZP1kSCeXM3sI3P17Fa7mmn57rzILVc75O8DPq6cB+EQIYdNB6ggh9JucHauc80+AX9UW/UcIYadu5ateUO8D6sNkf7Ch5i0E59ce7xVCuG2vwiGEFzB7+Olejgcuqj1/b6+/vXp6a+3xP4cQDhxk5RDC0i490uqf/1z7sGXAx4GlfW7247XH+4QQVs9R/lCamwMdSkKxZb9hK8k5XwB8s7bo6UB9fukfVxcQdLNQfjvqPRb7uXjhFcDufdb9P8zMsX6vEMK/9yrcLhT9HFPUe6BexOx9/Sia/F4Mo36BYV+jJ+ScrwA+VFv03yGEfj8/YHK/27Xt3zaE8K4QQj9TB9TXux3w4tqia4Hvdyg6X3E6Cavbng+TQP8CUB+Vpr1OGCI2O6w3yLrvBa6vHt+mej6QScR1zvlKZo/6Me7pSk4ALqs9f2sIYUW3wtXf4H21RX9n9m+2JEmSJEkLmgl0LWQvZ/Ywig8FflH1ZugohLB1COHDwEeY6d11M7A653xpYy3tQ875h8ye331lH+vczOzh7P89hNBxOMkQwl0oJ2+3ZXbPxcXkxcCN1eO7AT8JIezTa4UQwkYhhIeGED4LvL/pBvbwb7XHWwJfr4ZcnqU6ofgRZidMPplz7ncI38XoJGbmOV0KfLLTSdcQwpIQwsuB/60WzRnHOecbmd1b+tbAD0II+3VbJ4SwaQjhxSGE/+qr9RuInPNXKCfIW44JIbxhrgtZQgg7hhBeTel9uWOHIvV5uh9ale1Uz62BL1ISlv3uw94P/KX2/IMhhPV6xVVJqNcArx6g7mGcWHu8a5VkG9ZRtcfbMftvexQ9LJTfjpzzr5k9PPk7O40uUvvuv4OZZONcdZ8JHF5b9N8hhA+EEHr2og8hbBNCeBFlLvP79LGp+tQAJ1bTsoxDk9+LYdQvdtgvhPDEakSAubyZmZ7XK4AfhhCeMtdw2SGEO4cQDgdOGaq143ML4JXAH0MIHw4h3HeuFUIID6GMRLB5bfF7q9+jWeYxTudV9fnWR4s4Jef8p0HrqS7C+EZt0TM6XIhVj81/CiEc1M/w4VXd9QuNDg0hzHkBVfX/wmtri14UQvhcCKHnfOghhC1CCE8PIfwEeOpc22lI/fv0mhDCzuOquJp+5z9ri24HfKW6AGuWEMJWlOOJu9YWv23S/4tJkiRJkjSIfucuk+ZdzvnqEMIDKT36Widg9qScnD0T+BqlB9f1wPaU4XIfwew5KW8AnpJzrvcKnKT/RxmCtZ+T0i1vYybZuinw3RDCl4CTKT1NtqXMi/oIykUxa4DE7J5Ri0LO+RchhBcDH6O8lzsBp4QQTqG83/MovSo3p3zmd6acWN6qquLo9jrnS8756yGEDzAzROsdgdNDCF8AfkqJ090oJ1VvU1v1T8BB89nWAfxPCOGQAde5Kud8t/qCnPNFIYSjmRne9wHAb0MIx1OSAwD/BDweaF108HHgIZRh2XvKOZ8QQng3JQkC5e97UgjhZ5RevH+hJJ5WAnenJMQ2ZYLxsoA9F9iV8t1aSumx/YoQwteB0yhz/C6lfOfuQPl73nmOOj9KGYGjlTB6Rwjhnyn7qQsow8zeHXgC5bt9MyUp94b1q5ot53xNtc9IlH3GxsAJIYSTKb8RlwE7AE+stfO/gUHjui855z+FEH4MtJJwjwfeNWR1JwJ/Y2b/1nI9/fX0XCi/HW9i5sKMbSkXwh1HmcP+JmBnyt+pNeXKG4A39ln36yi/E6157V8CrK7i9VSglaxZQYnru1KOFfrqyV31/H10bdEn+2xXPxr7XgwpUb7fW1P+Pp8DrgghXED5nFqen3NujRZDzvnKEMITKRdsbFWt/ylKovibwDnAVcAmlGGf9wLuxcy+fSJT63SwHHgBZcjui4DWyDKXUnqXb0b5DX8I5Vi07jTgsB51NxqnE/JQZl/UM0zv8/q6j60eb0f5zqXa6z+lXFDbOj54D3BYCOHPzJ73+/U55/p6UC42+u/q8UOAi0II5zIz9QDAz3POz6+vlHN+fwjhrswctzwRiCGEb1Ni4yLK92IFZR92F+DelAsyYPbIDPPpKGbibG/KhSHnU/b5rYt/1uScH73+qn35EPAYZn5b7gv8OoTwGeCXlL/JXpRj3W1q650KeNGiJEmSJGlRMYGuBS3nfEnVk/TdlCHPWz2a9mLuoQn/D3hRNbz2gpBzPj2E8GkG6JmSc/5+CKGeUFgCPK66tbuUMidhk/OkNirnfFQI4XJKoqI1f+M9q9tcbp67SKNeTvl8/qV6fkvKvMLdhsL+NfCwnPPf5qFtw9iuug3iyi7LX8nsZOu2dL9w4JuUCxF+3e9Gc86vCiFcAbyemf3Evaqb+pRzviqEcH/gWCBWi7eidxzXrddDNud8RQjhqcCXmLnAqdt3ei1lRIHf0meiMOf8laqn5oeY+ez3o/MQ6omyL20kgV75GDMJ9KcwZAI953xjdZHJS9pe+nzO+ao+1l8Qvx0558+HED7ITGJ+Y8p89e1z1mfKBRufoM8Ees75phDCYygjEbywWryc8l7mnJ+XuX8z9qckTqHsj37cT7v60fT3Yoj2XBvKFAifpiS7oSQHV7QV3aztOTnnM0II96Z8v1pJzl3o72KMSf9ur6Uk/er/E62kXLjwhD7W/zrwtJzztd0KzEOcTkL9+5uBz4xQ1xcpFwa14u451BLoOeccQngW5aKo1gUnmzFz0U1Lp17976Qk+x9cPV9Cic26Kzo1Kuf8vCr5/J/Vesso+8h+9pMT+cxyzseHEB4NPKNaFIDbVreWFSPUn6sLZj7DzDHC5sDzeqz2I2D/qge7JEmSJEmLhkO4a8HLOV+Vc34upTfO8XQ50VVZR+kZ8kLgrgspeV7zn8zuzTWnnPObKCfDzu9S5EbKSe8755x/1qXMopFz/hKlR/LbmemZ1c1VlJOvT2Om9/dE5OIllJOrp/Uoehkl0XvXnPNfepSbGjnnq4H7U+Z673YS9QLgNcAjc843DLGNN1KG/v8ys3ultbsaOI4h5jXdEOScr8k5P47SC/AHzD1s9JmU+dN3zzn/uUud36J8/r2Ga/4R8ICc84eHaPNHKSMbnN6lyKWUXqCPzzkPtP8dwnHM7LfuFUIYZR7aIzssO6rflRfQb8dLgFfR/ff7bOCxVXsHknNem3N+EWU0kq/Sff/S8nvKvLz3zDn/YI6y9aTQe8c4fDvQ/PdiiPZ8idJT+u1Vm/5Kn8crOeffUnq8voTZw2Z3spYybcDBlF67E5NzPo8y9cdzgM8CF/ex2k2UWHtczvlR/VwE13CczqtqCpbH1xb9aJRjmZzzNcye4mj/9qHWc86nUC6cPRT4IWUfO2dCtkraPhx4OmVUj3MpIwr0O1XEoZTvxKeZmRe9m79QLqB6MOMdrWIgOednUnr0fwr4HXANfb7fPuu/sTpGeAa9v+vnUy782bean12SJEmSpEUljPlcoNS4at7D1vCf21F6+V5KGU7xlGmeX6967/em9OLdkjK87wXA96u5HqdONQfrXSgnTreh9Nq6BriQMjTsOfOQEBtKNffkfSi92TYGLqH0YvxpznmxzlM/shDCrSjz+d6O0uvvIkqy4Cfj+ruEELagJFRvA9yKcqL9EkrM/DLn3CvBrppqLtP7A6sof8ubKInQ3wP/N+g+t5oD+96U/fd1lO/yKTnnc8fU3jtTLrjaDricMk3CyfP5mYcQ/pMydDnAB3LOL5uvbXdpz4L47aiGRN+X0kt5M8pnf1bO+dQxbmMz4H6UHpe3qhZfQYmDM3POF/RZz06Uub2XUo4xbterl/Gomv5ezLfq9++elPezgvKeLqcMxf1/Tf4tR1W1/Q6U48wVlGG5r6HE0a+BX+WcrxtxG2OJU82fav91X8qxyzaUfcNVlGkIzhpmDvhpEELYgzLC0K0pF+dfQvmO9LqQVJIkSZKkBc8EuiRJ0hhVF3CcSxn+/jrgtjnnyyfaKA0khPBeyrQcAP+ac37nJNsjSZIkSZIkaf44hLskSdIYVXOUv7V6uhw4aILN0YCq4aOfWz39C3DEBJsjSZIkSZIkaZ6ZQJckSRq/d1OGuQd4VfucvlrQDgE2rR6/Juc819zHkiRJkiRJkqbIRpNugCRJ0rTJOf89hPBM4JHVol0oc2lrAQshLAEuAt4IXJ1z/tSEmyRJkiRJkiRpnjkHuiRJkiRJkiRJkiRJOIS7JEmSJEmSJEmSJEmACXRJkiRJkiRJkiRJkgAT6JIkSZIkSZIkSZIkASbQJUmSJEmSJEmSJEkCTKBLkiRJkiRJkiRJkgSYQJckSZIkSZIkSZIkCTCBLkmSJEmSJEmSJEkSYAJdkiRJkiRJkiRJkiTABLokSZIkSZIkSZIkSYAJdEmSJEmSJEmSJEmSABPokiRJkiRJkiRJkiQBJtAlSZIkSZIkSZIkSQJMoEuSJEmSJEmSJEmSBJhAlyRJkiRJkiRJkiQJMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJgAl0SZIkSZIkSZIkSZIAE+iSJEmSJEmSJEmSJAEm0CVJkiRJkiRJkiRJAkygS5IkSZIkSZIkSZIEmECXJEmSJEmSJEmSJAkwgS5JkiRJkiRJkiRJEmACXZIkSZIkSZIkSZIkwAS6JEmSJEmSJEmSJEmACXRJkiRJkiRJkiRJkgAT6JIkSZIkSZIkSZIkASbQJUmSJEmSJEmSJEkCTKBLkiRJkiRJkiRJkgSYQJckSZIkSZIkSZIkCTCBLkmSJEmSJEmSJEkSABtNugGLRYxxW+B1QAR2BK4FTgOOSCmdOER9GwH7AncH7lHd71K9/MaU0qFzrH834HHAA4E9gK2rNp0DfLFq11Vd1t0Z+FMfzXxySulzfZSTJEmSJEmSJEmSpEXPBHofYox7At8FtqsWXQ2sAB4GPCzG+N6U0isGrHZH4NtDtufpwCdrizJwJbAlcO/q9i8xxkellM6eo7rLgJu7vHbDMO2TJEmSJEmSJEmSpMXIBPocYowbA4mSPD8TeEZK6YwY43LgVcB/AQfFGE9PKR05YPVXA78EflHdDgV27WO9ZcD1wPHV7UcppetjjJsCTwTeCdwW+HKMcc+U0vU96tonpXTugO2WJEmSJEmSJEmSpKljAn1uL6QMrX4dsH9K6c8AKaXrgMNijNsDLwXeHGP8ZEppbZ/1/hnYMqWUWwtijK/pc92fALuklC6qL0wpXQt8IsZ4PqXH/O2AJwOf6LNeSZIkSZIkSZIkSdpgLZl0AxaBZ1T3x7eS523eRhlCfRXwoH4rTSmtqyfPB5FS+k178rzt9ZOA86qndx9mG5IkSZIkSZIkSZK0oTGB3kOMcTNgn+rp1zuVqZLq51RPHzIf7erTZdW9owxIkiRJkiRJkiRJUh9Mrva2OxCqx2f2KHcmsEd1m7gY49bAXtXTXu0G+EyMcTdgOXAp8DPg4ymlrzTYREmSJEmSJEmSJElacOyB3tv2tcdrepRrvbZ9jzLz6fXAxsDVwOfmKLsPJQ5uBnYADgC+HGP8TIzxFo22UpIkSZIkSZIkSZIWEBPovW1We3xdj3Kt1zZvsC19iTHuD7y8evr6lNKlHYrdABwBPBDYIqW0ZUppOaXX+jFVmScD72+6vZIkSZIkSZIkSZK0UDiE+xSJMd4FOI5yYcSJwHs6lUspXQS8tMPys4BnxRgvBQ4Gnh9jfGdK6TdNtVmSJEmSJEmSJEmSFgoT6L1dU3u8HLiqS7nl1f3VzTanuxjj7sA3gS2Ak4EDU0p5yOpeD/wLsAnwGGDoBPqaNWuGbYMkSZIkSZIkSZIk9bRq1aowzvocwr23+rznq3qUa712YYNt6SrGuBvwHWBb4KfAY1NKNwxbX0rpWuCs6ukuo7dQkiRJkiRJkiRJkhY+e6D39msgAwHYs3reyZ7V/dnz0ai6GOMuwHeB7YFfAo9KKV3Te615dZtJN2DKrQROrR7vA1w0wbZoehhXaoJxpXEzptQE40pNMK7UBONKTTCu1ATjSuNmTKkJxpWaYFwtYibQe0gpXRNjPAW4F/BI4IT2MjHGHYE9qqffmcfmEWPcCTgJ2BE4E3h4SumKMdS7KTMXBfxplLpWrVr1l1Hbo+7WrKkPksBF/r01DsaVmmBcadyMKTXBuFITjCs1wbhSE4wrNcG40rgZU2qCcaUmGFeLm0O4z+3Y6v7AGGOn3tSvpfRQX0NJZs+LGOMOlJ7nt6XMUf7QlNJlfa471zwAh1LmP8/Al0dopiRJkiRJkiRJkiQtGvZAn9uHgVdS5gL/cozxmSmlX8UYNwFeAbysKndISmltfcUY47nATsDRKaXV7RXHGLcEltUWLa3ul8cYt6ktvy6ldF1tve0ovd13Af4APCSldPEA7+nkGOM3KMnxs1NKN1X17gH8K/CcqtzHUkrdhq2XJEmSJEmSJEmSpKliAn0OKaUbY4yR0tt7b+CMGONVwKbMJLzfl1I6cojqvwjs22H5a6pbyxspvcJbXgzcoXq8HfCL0sSOfpxSOqBt2U7AYdXtphjjlZQe58trZY4DXjr3W5AkSZIkSZIkSZKk6WACvQ8ppbNijHcCXgc8FrgNcCVwGvCBlNKJ89yk+tD7m1e3brbusOw1wEOBfYDtqzI3Ab8HfgIcmVKat+HoJUmSJEmSJEmSJGkhMIHep5TSJcDB1a3fdXae4/X9hmzLoczukT7o+p8FPjvs+pIkSZIkSdNizy8emifdhgXo/Ek3YCE463GHhkm3QZIkSfNvydxFJEmSJEmSJEmSJEmafibQJUmSJEmSJEmSJEnCBLokSZIkSZIkSZIkSYAJdEmSJEmSJEmSJEmSABPokiRJkiRJkiRJkiQBJtAlSZIkSZIkSZIkSQJMoEuSJEmSJEmSJEmSBJhAlyRJkiRJkiRJkiQJgJBznnQbNMXWrl17MHDwpNsxrXLOS9etW7cSYMmSJReFEG6edJu0+BlXaoJxpXEzptQE40pNMK7UBONqvO7y1cN2mHQbtDCd/uj/d8Gk27DYub/SuBlTaoJxpSYYV/Nr2bJlO46zvo3GWZnUwRaA/4g2JITA0qVLW09XTrItmh7GlZpgXGncjCk1wbhSE4wrNcG4kuaN57RG5P5K42ZMqQnGlZpgXC1uJtDVtKsAr9ZtiFcwqQnGlZpgXGncjCk1wbhSE4wrNcG4GjuTpOrGc1ojcn+lcTOm1ATjSk0wrhY3h3CXFrE1a9bsCJxfPb3NqlWr/jLJ9mg6GFdqgnGlcTOm1ATjSk0wrtQE42q89vzioZ4cU0dnPe7QMOk2LHburzRuxpSaYFypCcbV4rZk0g2QJEmSJEmSJEmSJGkhMIEuSZIkSZIkSZIkSRIm0CVJkiRJkiRJkiRJAmCjSTdgsYgxbgu8DojAjsC1wGnAESmlE4eobyNgX+DuwD2q+12ql9+YUjq0z3ruArwG2A/YBrgUOBl4e0rpjDnWXQa8HHg6sFu1+LfAscD7U0pr+3w7kiRJkiRJkiRJkrTo2QO9DzHGPYEzgYOBXYG1wArgYcAXYozvGaLaHYFvA/8DPJmZ5Pkg7XoacArwNGAVcD2wAyUhfkqM8Sk91t0M+AHwTuBuwLLqdnfgcOB7McZNB22TJEmSJEmSJEmSJC1WJtDnEGPcGEjAdpQk+l1SSlsAWwCHABk4KMb4nCGqvxr4PvAu4BnA7wdo157AkZSk92eAVSmlFZRE+meBWwBHxxjv2KWKDwH3Aq4ADgCWV7cDqmX3AY4Y8P1IkiRJkiRJkiRJ0qJlAn1uL6T0Dr8O2L81LHpK6bqU0mHMJJnfXA2J3q8/A1umlPZNKR2cUjqWMix8v95ESZKfDjw9pXRh1a4LKT3STwc2rsrNEmPcGziwevr8lNIXUkq5un0BeEH12jNjjHsN0CZJkiRJkiRJkiRJWrRMoM/tGdX98SmlP3d4/W2UXuirgAf1W2lKaV1KKQ/ToBjjlsBjqqfvTCnd1Fb3TZSh2avicfO2Kp4OBEqP98932MQJ1WuBkoyXJEmSJEmSJEmSpKlnAr2Hap7wfaqnX+9Upkqqn1M9fch8tAu4P6X3OcA3upRpLd+4Kl/34FaZTkn8atk3q6fz9Z4kSZIkSZIkSZIkaaJMoPe2O6UXNpT5z7tpvbZHs835h9Z2Lk4pXdqpQLX8krbyxBgD5X1Bf+9p9x5lJEmSJEmSJEmSJGlqmEDvbfva4zU9yrVe275HmXFqbadXm+qv19u1ObBpH+u3Xtu86okvSZIkSZIkSZIkSVPNBHpv9cTxdT3KtV5rn2u8Ka129WpT/fV6uwZ9T+3rS5IkSZIkSZIkSdJU2mjSDdB0W7NmzY6TbsOUW1l/vGbNXIMSSH0xrtQE40rjZkypCcaVmmBcqQnGlTQPPK81Fu6vNG7GlJpgXKkJxtU8WrVq1V/GWZ8J9N6uqT1eDlzVpdzy6v7qZpvzD612Le9ZqnO72t/TXOu2rz+o80dYV4M5ddIN0FQyrtQE40rjZkypCcaVmmBcqQnGldQcz2uNl/srjZsxpSYYV2qCcdW8MM7KTKD3Vr8cZBXdE+irqvsLm23OP7Tatapnqc7tupqSRN9sjvVbr12dUrqmRzlJkiRJ6mi/oz496SZoATp59VMm3QRJatzLz33zpJugBep9Ox8y9LpHX/H8MbZE0+TZKz466SZI0lQxgd7br4FMuWphz+p5J3tW92fPR6Nq27l1jHGblNJl7QVijNsC27W3K6WUY4znAPsw0+5OWq+dM2JbbzPi+uptJTNXLu0DXDTBtmh6GFdqgnGlcTOm1ATjavzsuadO/D9xdO6vxst9lboZZX9lXKkb40pN8PhqNB5bqQnG1SJmAr2HlNI1McZTgHsBjwROaC8TY9wR2KN6+p15atoPgb8DtwAeARzboczDq/sbq/J136V8WR/RYxut9Ud6T+Oec0Cztc2ZcZF/b42DcaUmGFcaN2NKTTCupPnhd2t07q+k+THSd+vc8bVD02WkuLpifO3QdPFYYDQeW6kJxtXitmTSDVgEWsnpA2OMna7iei2lh/oa4KT5aFBK6Srgy9XTg2OMS+uvxxg3Ag6eKZ7a5zA/jtKzfrcY4xPa648xHgDsVpXplJyXJEmSJEmSJEmSpKljD/S5fRh4JbAL8OUY4zNTSr+KMW4CvAJ4WVXukJTS2vqKMcZzgZ2Ao1NKq9srjjFuCSyrLWolwpfHGLepLb8upXRd2+qvBx4D3A04Nsb4ypTSRTHGlcC7q+U3VuVmqdp/PPA04GMxxnVAajULaE2YckxK6az1/ySSJEmSJEmSJEmSNH3sgT6HlNKNlKTyJcDewBkxxiuBq4G3UHqfvy+ldOQQ1X8RuLR226ta/pq25a/t0K6zgOcAa4GnAGtijH8DLqye/x1YnVLqNm/7i4CfAVsBJwLXAtdVj7cCfgK8ZIj3JEmSJEmSJEmSJEmLkgn0PlTJ6jsB7wJ+D2wMXAl8G3hCSumgCbXrOOCewPGUxPlyylDyxwH3TCl9qse61wAPAF4NnAbcDNxUPT4Y2DeldG2jb0CSJEmSJEmSJEmSFhCHcO9TSukSSmL54LnK1tbZeY7X9xutVZBSOp0yFPsw664FDq9ukiRJkiRJkiRJkrRBswe6JEmSJEmSJEmSJEmYQJckSZIkSZIkSZIkCTCBLkmSJEmSJEmSJEkSYAJdkiRJkiRJkiRJkiTABLokSZIkSZIkSZIkSQBsNOkGSNJC8ahd/jVPug0L0PmTbsBC8LU/viNMug2S1LS9X/Uufwdn8zew8qt3vcrfQUmSJEmStMGwB7okSZIkSZIkSZIkSZhAlyRJkiRJkiRJkiQJcAh3NWzt2rUHAwdPuh3Taptttlm6bt06AJYsWXLq2rVrb55wk6SptHbt2r9Mug2LnfsrjZsxJc0ffwc1bsbU6PwdlOaH+ys1wbhSE4yr0XhspSYYV/Nr2bJlO46zPhPoatoWwA6TbsS0CiGwdOnS1tOVk2yLNOXcj43I/ZXGzZiS5pW/gxo3Y2pE/g5K88b9lZpgXKkJxtUIPLZSE4yrxc0Eupp2FXDBpBsxrXLOS9etW7cSYMmSJReFELyCaTQeaKob92Mjcn+lcTOmGuHvoLoZ5XfQuFInHluNyN/BsXNfpW78DVQTjCs1weOrEXhspSYYV4ubCXQ1atmyZYcDh0+6HdNqzZo1OwLnV0/3WbVqlUP1jCZPugFamMY9/MuGyP2Vxs2YaoS/g+poxN9B40rr8dhqdP4Ojp37KnXkb6CaYFypCR5fjcZjKzXBuFrclky6AZIkSZIkSZIkSZIkLQQm0CVJkiRJkiRJkiRJwiHc+xZj3BZ4HRCBHYFrgdOAI1JKJ45Q7zLg5cDTgd2qxb8FjgXen1Ja22Gd/YCTBtjMziml82rr7wz8qY/1npxS+twA25EkSZIkSZIkSZKkRcse6H2IMe4JnAkcDOwKrAVWAA8DvhBjfM+Q9W4G/AB4J3A3YFl1uztl3vDvxRg37bDq34GL57i1Eu8XARf0aMZlPeq4YZj3JUmSJEmSJEmSJEmLkT3Q5xBj3BhIwHaUJPozUkpnxBiXA68C/gs4KMZ4ekrpyAGr/xBwL+AK4LnAidXyxwMfB+4DHAE8u75SSunHwMoebd4EuBDYEvhkSummHm3YJ6V07oDtliRJkiRJkiRJkqSpYw/0ub0Q2AW4Dtg/pXQGQErpupTSYZQEN8Cbq+HY+xJj3Bs4sHr6/JTSF1JKubp9AXhB9dozY4x7DdjmJ1CS5wBHDbiuJEmSJEmSJEmSJG2QTKDP7RnV/fEppT93eP1tQAZWAQ8aoN6nAwH4PfD5Dq+fUL0WgKcNUC/A6ur+1JTSWQOuK0mSJEmSJEmSJEkbJIdw76Gao3yf6unXO5VJKf05xngOsAfwEOCbfVb/4Or+Gyml3KHeHGP8JmXO9YcM0OYda+WP6nc9SZIkSZIkSZIkaVTrLrr9enmvDc3K2V2Yz1930YQassAsWfnbMOk29MMEem+7U3qAQ5n/vJszKQn0PfqpNMYYqrr7qbfVjn49izKywI3A8X2U/0yMcTdgOXAp8DPg4ymlrwywTUmSJEmSJEmSJEla9BzCvbfta4/X9CjXem37HmXqNgc2HaDezave8P14dnX/xZTS3/oovw8lDm4GdgAOAL4cY/xMjPEWfW5TkiRJkiRJkiRJkhY9E+i91ZPW1/Uo13pt84bq7avuGOP9gNtXT4/sUfQG4AjggcAWKaUtU0rLgb2AY6oyTwbeP9c2JUmSJEmSJEmSJGlaOIT7dFld3a8BvtWtUErpIuClHZafBTwrxngpcDDw/BjjO1NKvxm2QWvWrNlx2HXVl5X1x2vW9BrQQNKw3JeNhfsrjZsxJc0Tfwc1bsbUWPg7KM0D91dqgnGlJhhXI/PYasxW2n1XXTS1v1q1atVfxlmfCfTerqk9Xg5c1aXc8ur+6iHr7ab+Ws+6Y4ybAP9cPf1ESunmPtvSyeuBfwE2AR4DDJ1AB84fYV0N5tRJN0CaYu7Lxsv9lcbNmJKa5e+gxs2YGi9/B6XmuL9SE4wrNcG4Gh+PraRmNbW/CuOszGtAeqtfZrSqR7nWaxf2We/VzCTR+6n36pTSNT3KQZm7fIvq8VF9tqOjlNK1wFnV011GqUuSJEmSJEmSJEmSFgt7oPf2ayBTrlrYs3reyZ7V/dn9VJpSyjHGc4B9auv2qvecPqpdXd3/ZJQh1xtwm0k3YMqtZOaKuH2AiybYlmnglZrqxn3Z6NxfadyMqfHzd1DdjPI7aFypE4+tRufv4Hi5r1I3/gaqCcaVmuDx1Wg8tho/91fqZlHsr0yg95BSuibGeApwL+CRwAntZWKMOwJ7VE+/M0D136XsiB/Ro8zD+6k3xngb4MHV06MGaEO3+jZlJnn/p1HqGvecA5qtbS6Wi/x7S83wuzU691caN2NKmj9+vzRuxtTo/B2U5sdI361zx9cOTZeR4uqK8bVD08VjgdF4bDV+67wEQV0slu+XQ7jP7djq/sAqUd3utZQe6muAkwao9zhK7/bdYoxPaH8xxngAsFtV5tj219s8m/JZXg98eq4NxxjnmgfgUMr85xn48lz1SZIkSZIkSZIkSdI0sAf63D4MvJIyF/iXY4zPTCn9Ksa4CfAK4GVVuUNSSmvrK8YYzwV2Ao5OKa2uv1bVcTzwNOBjMcZ1QGqtCny0enxMSuksent2df+FlNKVfbynk2OM36Akx89OKd1UtXcP4F+B51TlPpZS6jZsvSRJkiRJkiRJkiRNlUWVQA8hbAE8Lef8wfnaZkrpxhhjpAy5vjdwRozxKmBTYGlV7H0ppSOHqP5FwD9Rhog/kdKDPAC3rF7/CfCSXhXEGO8P7Fo97bcNOwGHVbebYoxXUnqcL6+VOQ54aZ/1SZIkSZIkSZIkSdKityiGcA8h7BdCOAa4EPjAfG+/6gF+J+BdwO+BjYErgW8DT0gpHTRkvdcADwBeDZwG3AzcVD0+GNg3pXTtHNWsru7PpyT5+/EaSs/6XwKXAZtXy38PHAM8OKX09JTS3/usT5IkSZIkSZIkSZIWvQXbAz2EsAMlOfwc4HatxZR5ueddSukSSlL74AHW2bmPMmuBw6vbMO16PvD8Adf5LPDZYbYnSZIkSZIkSZIkSdNqQSXQQwgbAY8Hngs8jJke8qG6vwn42vy3TJIkSZIkSZIkSZI07RZEAj2EsBfwPODpwK1ai2tFTgc+ARybc750flsnSZIkSZIkSZIkSdoQTCyBHkLYHHgapbf5PVqLa0Uy8C3gNTnn/5vn5kmSJEmSJEmSJEmSNjDznkAPIexL6W1+ALBJa3F1/3fgS8ATq+c/NnkuSZIkSZIkSZIkSZoP85JADyGsAlYDzwF2aS2uFTkFOBr4VM75byGEdfPRLkmSJEmSJEmSJEmSWhpNoIcQnkgZov3hwJLW4ur+AuAY4Oic82+abIckSZIkSZIkSZIkSXNpugf6ZylzmbeS5tcDX6D0Nv92zjk3vH1JkiRJkiRJkiRJkvoyX3OgZ+BI4JU552vmaZuSJEmSJEmSJEmSJPVtvhLoUOY/v18I4RjgkznnP8/jtjUha9euPRg4eNLtmFbbbLPN0nXr1gGwZMmSU9euXXvzhJskTaW1a9f+ZdJtWOzcX2ncjClp/vg7qHEzpkbn76A0P9xfqQnGlZpgXI3GY6vxWzrpBmjBamp/tWzZsh3HWV/TCfR/oyTO71g9vz3wX8CbQgjfA44CTsg5X9dwOzQ5WwA7TLoR0yqEwNKl//gpWjnJtkhTzv3YiNxfadyMKWle+TuocTOmRuTvoDRv3F+pCcaVmmBcjcBjK2leLYr9VaMJ9Jzz24G3hxDuCzwfeDKwKWVO9P2q2xEhhBOAT+Scv9tkezQRVwEXTLoR0yrnvHTdunUrAZYsWXJRCMEr40azKHbcmgj3YyNyf6VxM6Ya4e+guhnld9C4UiceW43I38Gxc1+lbvwNVBOMKzXB46sReGzVCPdX6mZR7K/mZQj3nPOPgR+HEA4Cngo8F7h39fKmwDOBZ4YQzgeOnY82aX4sW7bscODwSbdjWq1Zs2ZH4Pzq6T6rVq1yqJ7R5Ek3QAvTuId/2RC5v9K4GVON8HdQHY34O2hcaT0eW43O38Gxc1+ljvwNVBOMKzXB46vReGw1fuvcX6mLxbK/ms850Mk5XwN8FPhoCGF3Sq/0ZwDbVkVuA7yutspeIYRb5Zwvn892auF72JInu/Nd3/lzF5l+31r32TDpNkhS0+5z4Dv9HZzN38DKT45/tb+DkiRJkiRJ0giWTGrDOedzcs6vpgzj8CTgq8A6yvDurZPCTwTWhBBODCEcEEJYNpnWSpIkSZIkSZIkSZKm3cQS6C0555tyzp/POT8G2An4T+BPlER6AJYBjwU+C1wYQnj/xBorSZIkSZIkSZIkSZpa8zqE+1xyzmuAw4DDQgj7UYZ4PwC4ZVVka+BfgJfNd9tijNtShpePwI7AtcBpwBEppRNHqHcZ8HLg6cBu1eLfUuaCf39KaW2X9Y4Cnj1H9WellPYa97YlSZIkSZIkSZIkaRpNvAd6Nznnk3POzwC2pyTMT5tUW2KMewJnAgcDuwJrgRXAw4AvxBjfM2S9mwE/AN4J3I3S234ZcHfgcOB7McZN56jmBuDiLrfLGt62JEmSJEmSJEmSJE2NBdUDvZOc85XAEcARIYS7AM+dz+3HGDcGErAdJYn+jJTSGTHG5cCrgP8CDooxnp5SOnLA6j8E3Au4gvK+TqyWPx74OHAfynvv1dP80yml1QNud1zbliRJkiRJkiRJkqSpsWB7oHeScz4953zQPG/2hcAuwHXA/imlMwBSStellA6jJJkB3lwNid6XGOPewIHV0+enlL6QUsrV7QvAC6rXnhlj7DoM+zAmuW1JkiRJkiRJkiRJWqgWVQJ9Qp5R3R+fUvpzh9ffBmRgFfCgAep9OhCA3wOf7/D6CdVrAXjaAPUu9G1LkiRJkiRJkiRJ0oJkAr2Hap7wfaqnX+9Upkqqn1M9fcgA1T+4uv9GSil3qDcD3xyi3oW+bUmSJEmSJEmSJElakBqdAz2EcHMD1eac83zN3b47pRc2lPnPuzkT2KO6zSnGGKq6+6m31Y5uHhJj/B1wW+AGSs/xrwLvTyld3PC2JUmSJEmSJEmSJGlqNN0DPdTux3mbL9vXHq/pUa712vY9ytRtDmw6QL2bV73hO9kR2Bm4FtgMuBtwCHB2jLFT7/FxbluSJEmSJEmSJEmSpsZ8DOE+nwnvcasnjq/rUa712uYN1dup7tOAlwA7ARunlLYGVlDmbL8Q2Bo4McZ4+wa2LUmSJEmSJEmSJElTp9Gh0HPOzrHekJTSezssuxo4Nsb4Q+CXwFbAocDT5rd1M9asWbPjpLatDZMxpyYYV2Oxsv54zZpeg6BIGpb7KzXBuNK4GVNj4bGVNA/cX6kJxpWaYFyNzGOrMVtpdlBdNLW/WrVq1V/GWd98zSW+WF1Te7wcuKpLueXV/dVD1ttN/bV+6yaldF6M8f3AfwL7xxiXpJTWzce2Ozh/hHWlYRhzaoJxNV6nTroB0hRzf6UmGFcaN2NqvDy2kprj/kpNMK7UBONqfDy2kprV1P5qrCOiew1Ib/XLjFb1KNd67cI+672amUR2P/VenVK6pke5Tn5W3W8B3Gqety1JkiRJkiRJkiRJi4490Hv7NZApVy3sWT3vZM/q/ux+Kk0p5RjjOcA+tXV71XtOP/Uu0G3fZsT1u/GKOnUzSswZV+qmqX3ZhmQlM1fw7gNcNMG2TAP3V+rG30E1wbjSuHlsNTqPrcbLfZW68TdQTTCu1ASPr0bjsdX4ub9SN4tif2UCvYeU0jUxxlOAewGPBE5oLxNj3BHYo3r6nQGq/y5lR/yIHmUePkS9Lfeq7q8GLp/nbf/DuOcckOZizKkJxtXo2uaOusi/qdQMv1tqgnGlcTOmRuexlTQ/RvpunTu+dmi6jBRXV4yvHZouHguMxmOr8VvnJQjqYrF8vxzCfW7HVvcHxhg7XRXxWkoP9TXASQPUexyld/tuMcYntL8YYzwA2K0qc2zbaz3H8Y8x3hZ4afX0K7X5z0fetiRJkiRJkiRJkiRNq0Z7oIcQbm6g2pxzns+e8x8GXgnsAnw5xvjMlNKvYoybAK8AXlaVOySltLa+YozxXGAn4OiU0ur6a1UdxwNPAz4WY1wHpNaqwEerx8eklM5qa9MzYoyPB44BfphSuqza3mbAY4G3AVtT5jo/tP0NjbhtSZIkSZIkSZIkSZpKTSeiAzNziC9KKaUbY4yRMuz53sAZMcargE2BpVWx96WUjhyi+hcB/0QZbv1E4HrK3+qW1es/AV7SYb2lwAHVjRjjNcCNwFbMjCpwCfDUlNJvxrxtSZIkSZIkSZIkSZpK8zGE+6JNnrdUvbDvBLwL+D2wMXAl8G3gCSmlg4as9xrgAcCrgdOAm4GbqscHA/umlK7tsOpJwCHA14A/AuuALYG/AT8A/h3YPaXUdUj5EbYtSZIkSZIkSZIkSVOp0R7oOeepmWM9pXQJJbF88ADr7NxHmbXA4dWt33rPAw7rt/w4ty1JkiRJkiRJkiRJ02pqEtySJEmSJEmSJEmSJI3CBLokSZIkSZIkSZIkSZhAlyRJkiRJkiRJkiQJMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJgAl0SZIkSZIkSZIkSZIAE+iSJEmSJEmSJEmSJAGw0aQboOm2du3ag4GDJ90ObTjWrl37l0m3QdPHuBrdNttss3TdunUALFmy5NS1a9fePOEmSVPJ/ZWaYFxp3Iyp0XlsJc0P91dqgnGlJhhXo/HYavyWTroBWrCa2l8tW7Zsx3HWZwJdTdsC2GHSjdAGxXhTE4yrEYUQWLr0H4fOKyfZFmnKub9SE4wrjZsxNSKPraR54/5KTTCu1ATjagQeW0nzalHsr0ygq2lXARc0UO+i+IJpIkaJN+NK3TSxH9ug5JyXrlu3biXAkiVLLgoheCXvaNxfqRt/B9UE40rj5rHViDy2Gjv3VerG30A1wbhSEzy+GoHHVo1wf6VuFsX+ygS6GrVs2bLDgcMbqDo3UKemwIjDdBhX6mjcw79siNasWbMjcH71dJ9Vq1Y5tNho3F+pI38H1QTjSuPmsdXoPLYaO/dV6sjfQDXBuFITPL4ajcdW47fO/ZW6WCz7qyWTboAkSZIkSZIkSZIkSQuBCXRJkiRJkiRJkiRJknAI977FGLcFXgdEYEfgWuA04IiU0okj1LsMeDnwdGC3avFvgWOB96eU1nZZ727A44AHAnsAW1dtOgf4YtWuq7qsuzPwpz6a9+SU0uf6fjOSJEmSJEmSJEmStIjZA70PMcY9gTOBg4FdgbXACuBhwBdijO8Zst7NgB8A7wTuBiyrbnenzBv+vRjjph3WezrwC+D1wH7AtsA1wBbAvYG3AP8XY9yjj2ZcBlzc5XbDMO9LkiRJkiRJkiRJkhYjE+hziDFuDCRgO0oS/S4ppS0oyepDgAwcFGN8zhDVfwi4F3AFcACwvLodUC27D3BEh/WWAdcDH6ck8TdNKW0FbA48m5IUvy3w5RjjJnO0YZ+U0souty8P8Z4kSZIkSZIkSZIkaVFyCPe5vRDYBbgO2D+l9GeAlNJ1wGExxu2BlwJvjjF+stuQ6+1ijHsDB1ZPn59S+kLt5S/EGJcCnwWeGWN8e0rpzNrrPwF2SSldVK8zpXQt8IkY4/nAd4HbAU8GPjHYW5YkSZIkSZIkSZKkDY890Of2jOr++FbyvM3bKL3QVwEPGqDepwMB+D3w+Q6vn1C9FoCn1V9IKf2mPXne9vpJwHnV07sP0CZJkiRJkiRJkiRJ2mDZA72Hao7yfaqnX+9UJqX05xjjOcAewEOAb/ZZ/YOr+2+klHKHenOM8ZuUOdcfMlDDi8uAnfAzliRJkiRJkiRJHfzg3F3Xy09s4M7/w7mTbsLC8ICdfx8m3QZpUkyu9rY7pQc4lPnPuzmTkkDfo59KY4yhqrufelvt6FuMcWtgrz7qB/hMjHE3ytzrlwI/Az6eUvrKINuUJEmSJEmSJEmSpMXOIdx72772eE2Pcq3Xtu9Rpm5zYNMB6t286g3fr9cDGwNXA5+bo+w+lDi4GdgBOAD4cozxMzHGWwywTUmSJEmSJEmSJEla1Eyg91ZPWl/Xo1zrtc0bqrfvumOM+wMvr56+PqV0aYdiNwBHAA8EtkgpbZlSWk7ptX5MVebJwPv72aYkSZIkSZIkSZIkTQOHcJ8iMca7AMdRLow4EXhPp3IppYuAl3ZYfhbwrBjjpcDBwPNjjO9MKf1m2DatWbNmx2HXlYZhzKkJxtVYrKw/XrOm1wAskobl/kpNMK40bsbUWHhsJc0D91dqgnGlJhhXasIocbXS7rvqoqn91apVq/4yzvpMoPd2Te3xcuCqLuWWV/dXD1lvN/XXetYdY9wd+CawBXAycGBKKffZnnavB/4F2AR4DDB0Ah04f4R1pWEYc2qCcTVep066AdIUc3+lJhhXGjdjarw8tpKa4/5KTTCu1ATjSk0wrtSEpuIqjLMyrwHprX4J96oe5VqvXdhnvVczk0Tvp96rU0rXdCsUY9wN+A6wLfBT4LEppRv6bMt6UkrXAmdVT3cZth5JkiRJkiRJkiRJWkzsgd7br4FMuWphz+p5J3tW92f3U2lKKccYzwH2qa3bq95zuhWIMe4CfBfYHvgl8KheyfYJuE1D9Xrlk7oZJeaMK3XT1L5sQ7KSmd5R+wAXTbAt08D9lbrxd1BNMK40bh5bjc5jq/FyX6Vu/A1UE4wrNcG4UhOMKzVhUfw/aAK9h5TSNTHGU4B7AY8ETmgvE2PcEdijevqdAar/LuWf3Ef0KPPwXvXGGHcCTgJ2BM4EHp5SumKANnQUY9yUmeT9n0apa9xzDkhzMebUBONqdG3zcl7k31Rqht8tNcG40rgZU6Pz2EqaHyN9t84dXzs0XUaKqyvG1w5Nl1Hi6g/njrEhmiqjxNU6L+9UF4vlfxeHcJ/bsdX9gTHGTldFvJbSQ30NJZndr+Movdt3izE+of3FGOMBwG5VmWM7vL4DJQl/W8oc5Q9NKV3Wz4ZjjHPNA3AoZf7zDHy5nzolSZIkSZIkSZIkabGzB/rcPgy8kjIX+JdjjM9MKf0qxrgJ8ArgZVW5Q1JKa+srxhjPBXYCjk4pra6/VtVxPPA04GMxxnVAaq0KfLR6fExK6az6ujHG7Si90ncB/gA8JKV08QDv6eQY4zcoyfGzU0o3VfXuAfwr8Jyq3MdSSt2GrZckSZIkSZIkSZKkqWICfQ4ppRtjjJHS23tv4IwY41XApsDSqtj7UkpHDlH9i4B/ogwRfyJwPaU3+y2r138CvKTDei8G7lA93g74RWliRz9OKR3Qtmwn4LDqdlOM8UpKj/PltTLHAS8d4L1IkiRJkiRJkiRJ0qLmEO59qHqA3wl4F/B7YGPgSuDbwBNSSgcNWe81wAOAVwOnATcDN1WPDwb2TSld22HV+ue2OXDrHretO6z/GkrP+l8Cl1V1UL23Y4AHp5SenlL6+zDvS5IkSZIkSZIkSZIWI3ug9ymldAklqX3wAOvs3EeZtcDh1a3feg+lzFM+lJTSZ4HPDru+JEmSJEmTsNNH354n3YYF6PxJN2AhOO/5rwmTboMkSZKk6WAPdEmSJEmSJEmSJEmSMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJgAl0SZIkSZIkSZIkSZIAE+iSJEmSJEmSJEmSJAEm0CVJkiRJkiRJkiRJAkygS5IkSZIkSZIkSZIEwEaTboCm29q1aw8GDp50O7ThWLt27V8m3QZNH+NqdNtss83SdevWAbBkyZJT165de/OEmyRNJfdXaoJxpXEzptQE40pNMK7UBONKTTCu1IRR4mrpOBuiqdLU/mrZsmU7jrM+E+hq2hbADpNuhDYoxpuaYFyNKITA0qX/OHReOcm2SFPO/ZWaYFxp3IwpNcG4UhOMKzXBuFITjCs1wbhSExZFXJlAV9OuAi5ooN5F8QXTRIwSb8aVumliP7ZByTkvXbdu3UqAJUuWXBRCsAf6aNxfqRt/B9UE40rjZkypCcaVmmBcqQnGlZpgXKkJxpWasCjOtZtAV6OWLVt2OHB4A1XnBurUFBhxmA7jSh2Ne/iXDdGaNWt2BM6vnu6zatUqhxYbjfsrdeTvoJpgXGncjCk1wbhSE4wrNcG4UhOMKzVhlLhaZ1ypi8Vyrt0EuiRJDXrovv/tweL6zp+7yPT79vf+I0y6DZIkSZIkSZKk2ZZMugGSJEmSJEmSJEmSJC0EJtAlSZIkSZIkSZIkScIh3Dd4McZtgdcBEdgRuBY4DTgipXTiBJsmSZIkSZIkSZIkSfPKHugbsBjjnsCZwMHArsBaYAXwMOALMcb3TK51kiRJkiRJkiRJkjS/TKBvoGKMGwMJ2I6SRL9LSmkLYAvgECADB8UYnzO5VkqSJEmSJEmSJEnS/DGBvuF6IbALcB2wf0rpDICU0nUppcOAI6pyb44xLptQGyVJkiRJkiRJkiRp3phA33A9o7o/PqX05w6vv43SC30V8KB5a5UkSZIkSZIkSZIkTYgJ9A1QjHEzYJ/q6dc7lamS6udUTx8yH+2SJEmSJEmSJEmSpEkygb5h2h0I1eMze5RrvbZHs82RJEmSJEmSJEmSpMkzgb5h2r72eE2Pcq3Xtu9RRpIkSZIkSZIkSZKmggn0DdNmtcfX9SjXem3zBtsiSZIkSZIkSZIkSQvCRpNugKbbmjVrdpx0G7RhMebUBONKTTCu1ATjSk0wrjRuxpSaYFypCcaVmmBcqQnGlZowSlyttPuuumhqf7Vq1aq/jLM+E+gbpmtqj5cDV3Upt7y6v3qEbZ0/wrrSMIw5NcG4UhOMKzXBuFITjCuNmzGlJhhXaoJxpSYYV2qCcaUmGFdqQlNxFcZaWc55nPVpEYgx3gM4tXq6e0rp113KfRr4Z+DLKaXHDrOtNWvWGGCSJEmSJEmSJEmSGrFq1aqxJtDtgb5h+jWQKVdj7Fk972TP6v7sEbZ1mxHW1dxWMnMxxD7ARRNsi6aHcaUmGFcaN2NKTTCu1ATjSk0wrtQE40pNMK40bsaUmmBcqQnG1SJmAn0DlFK6JsZ4CnAv4JHACe1lYow7AntUT78z7LbGPeeAZluzZk396UX+vTUOxpWaYFxp3IwpNcG4UhOMKzXBuFITjCs1wbjSuBlTaoJxpSYYV4vbkkk3QBNzbHV/YIyxUy/x11J6qK8BTpq3VkmSJEmSJEmSJEnShJhA33B9GPgjsCnw5Rjj3gAxxk1ijK8DXlaVOySltHZCbZQkSZIkSZIkSZKkeWMCfQOVUroRiMAlwN7AGTHGK4GrgbdQep+/L6V05ORaKUmSJEmSJEmSJEnzxwT6BiyldBZwJ+BdwO+BjYErgW8DT0gpHTTB5kmSJEmSJEmSJEnSvNpo0g3QZKWULgEOrm6SJEmSJEmSJEmStMEKOedJt0GSJEmSJEmSJEmSpIlzCHdJkiRJkiRJkiRJkjCBLkmSJEmSJEmSJEkSYAJdkiRJkiRJkiRJkiTABLokSZIkSZIkSZIkSYAJdEmSJEmSJEmSJEmSABPokiRJkiRJkiRJkiQBJtAlSZIkSZIkSZIkSQJMoEuSJEmSJEmSJEmSBJhAlyRJkiRJkiRJkiQJMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJAGw06QZIi0GM8WRgX+CNKaVDJ9qYMYox7gecBJBSCpNtzYbFmFITjCs1wbhSE4wrNcG4UhOMK42bMaUmGFdqgnGlYRg3aoJxpUkwgS5pJDHGbYHXARHYEbgWOA04IqV04gSbpkUmxrgV5UDo7rXbdtXLD0opnTyhpmkRizHeBjgAeDBwZ2B7YC1wHvBt4D0ppT9OroVajGKMd6f87u0D7AZsCywHLgd+CRwHHJdSWjexRmpqxBi/SIk3gKNTSqsn2BwtMjHG1cCRfRTdNqV0WcPN0RSKMW4HHATsD9wOuAVwEXA6kFJKR02scVo0Yox5gOKrU0pHN9YYTZUYYwCeBjwTuCuwNXAD8Efgm8C7U0oXTK6FWoyquHoS8HzgbsAWwCXAycDhKaVfTq51WojGdc4zxvgE4F8ocbcpcD7wJeAtHstveEaNqxjj3YB719bdk5Iz/l5Kab9mWr24OIS7pKHFGPcEzgQOBnalJKVWAA8DvhBjfM/kWqdF6HHAF4BDgEcx84MvDaVKnp8HvJuSfNqJcrLkFsAelJO9Z8YY/3lSbdSi9QLg9ZR91a6UfzD+Dqyslh0DfDfGuMXEWqipEGN8EjPJc2kU64CLe9y84EcDizFG4DfA/wPuAmwM3ERJpD+Bclwv9aPX/uliyoX6Lb+Y99ZpUYox3hL4KvBJ4BGUcwzXAZsAewP/CpwTY3zQxBqpRSfGuAz4THV7OLAVZR+1A/AM4JQY4/Mm10ItUCOf84wxvh/4POW8+wrKefjdKOflz4wx7j6uxmrRGDWuPg98AHgupdORHa7bmECXNJQY48ZAouyYzwTuklLagnLV5SFABg6KMT5ncq3UInQR8BXgTZR/PKRRLK3uvw4cSOldtyWlp/C+wK8oJ08+GWO802SaqEXqp5R/UvcBtkgpbZZS2gy4NfAfwM2UGHvn5JqoxS7GuCXwXuBK4NcTbo4Wv/NTSit73P466QZqcYkxPhT4HOUE7jHAXimlTar/CbcCHk0ZkUWa0xz7p5XAj6uiP08pnTnJtmpROQR4ZPX4UOBW1f+Dt6QkPn8PbA58Ksa4yURaqMXoLZTe5zcDrwG2TCltTbmY+iOUBNSHYoz3mVwTtUANfc4zxvgC4KWU8+2HUM5DbEG5gPFMyrmIFGO8xTgbrEVhlHPpf6eMovhRysgGnx9v0xY/ryiQNKwXArtQrt7dP6X0Z4CU0nXAYTHG7Sk/7G+OMX4ypbR2ck3VInFMfYjHGOOKyTVFU+JvwN1SSqfXF6aUbgK+H2N8OPB/lOG3X0W54lKaU7fhaFNKlwBviTFuSumN9/QY40v8DdSQ3kaZduJlwJOBO062OZJUxBg3Az4OLAPellL6t/rrKaUrgK9VN2kkMcYdgYdUT4+aYFO0+Dy9uj86pfTG1sLq/8FvxRifQhnRYDvggcA35r+JWkyqaSxfVj19d0rpHa3Xqv8FXxhjvD3lYuq3AQ+Y/1ZqgRr6nGeVFH9T9fQDKaXDWq+llM6IMT4GOJsyOt7zgSPG0WAtCqOeS989pXRzbX3PObQxgS4NKMa4BHgJJdFyB8pwKacC/51SOmmOdZ8IrKb0WNua0qPo58CHU0pf6LLOnYB/phzM70S5ovF64Bzgs8D/ppRu6LHN7YA3AI+l/FNwCeVExpu6rdOn1hVNx7eS523eRvk7rQIeRJlbSh0YU0X9B1ujM64gpXQlZf7Nbq9fHGP8KvBsylw/moNx1bdTqvtNKO/14oa3t6gZVx23cX/KVAGnAv9LSaBrAMaVmmBc/cNq4DbABcB/jljXBs2Y6suzKCNo3oijGvTFuPqH7av7n3d5/XTKtBMbAZuNuK2pZ1wB5WKejavH7+hS5p2UBPr9Y4y7pJT+OML2Fj3jphjxnOdDKO8jU863t9d9XozxeOB5lPP1U59AN66KUc+ley5+bg7hLg1mI8qw5e8D9qLMFbgl8FDK1auP67RSjHHTGOOXKEPcPYYyrMr1wDaU4aQ+H2M8MsYYOqz+JcrQLA+k9JK8jjJM3n2Aw4EfxBg377LdOwBnUH5QblO1d2tK7/HTgH8a7O3/o97NKD8yUIZGXk+VVD+nevqQTmUEGFNqhnHVv8uqey8qnJtx1b/7VvfXUv4xUnfG1frbuAVl+Md1wItTSs5NPTjjSk0wrma0Lqb+XErp7yPUs6Ezpvrz7Oo+pZT+1tA2polxNeNP1f09urx+F8rfax09LrwWYFy17FTdX5lSuqhLmXNqjx825HamhXEzHg+u7s9OKZ3fpUxrBI17xzIi3jQzrjRvTKBLg3kJZcf4FGCzlNLmwJ0pc40sBT4QY1zaYb2PU3bMZwIR2LSad2kLyjDnV1OufHp1h3VPBp4J7JBS2rSaV2dTylBUF1L+EXhr+0oxxmWUK6BWAn8BHlFtdzNKj/BrGX5u1t2B1o9Jr/nHWq/tMeR2NgTGlJpgXPVv3+reuRTnZlz1EGNcHmO8Y4zxMMpceADvSynlcW5nChlX6/sPynDtH0gpnTaG+jZExtX6to0xnhZjvLa6/TbG+OGqN4X6Y1yVum8J3K16elqM8Q4xxk/GGC+KMd4YYzwvxnhUjNH/AedmTM0hxnhf4PbV0yPHXf+UMq5mfKi6f3aM8fUxxq2r7W4UY3wo8Onq9Q+klP4wwnY2BMZV0frfrldOpX5x/p5DbmdaGDfj0Tqm6uccfGD6p/4yrjRvQs6e05PmEmM8mZkkywNSSj9se/3uzAwJtW9K6fu11/YDTqJc+bpPSunyDvU/FTge+CuwMvU5V2qM8X7ADylXPW2byvzjrdeeARwD3AzcPaV0Rtu6raufNgZIKXW6uqrbdiPwxerplimlq7qUexfwSuAXKaVuV/xukIypvtqygjKHNcCDUkonj1LfhsC4GkyM8fFAa3imR6WUOo6osaEzrnq2YQUz+6m6tcAHgNekMsei2hhXXbe/O6UH1GXAHVNKV1fLT6b8vY5OKa0etN4NhXHVcdurmUk6ZeAKyjC1y6plNwOvS7U5PDWbcbXedu8A/Lp6ehjwKmA5pQfPWspJSCjDbT8zpfTZfuveUBhT/Ysxfpgypcka4LbJoUa7Mq46bnspZZjtVzDTCeQqStJjKfAbygWvHxik3g2JcbXedp8CfKp6ulPqMKVljPEA4ITq6QkppSf1W/+0MG76assK+jznGWM8Dbgr8K6U0sFdymxJOc4HeGxK6cujtG8hMq76assKRjiXHmN8N+U383sppf1Gacu0sAe6NJgftO+cAVJKv6BcRQRl6JC651b3H++0c658jnKCYWsGmIc3pfQjyo/jcsrQU3WtA7SvtO+cq3V/Q7kCahj1uaGu61pq5rWOQ5gIMKbUDONqDjHG2wIfrp5+0eR5X4yr9a2jzG9+MdCa7yoD7wX+x+R5X4yrSixDxX0YuAXwylbyXEMxrmasAQ4F7gTcMs30lngw8DNKAuHtMcanjbCNDYVxVWxVe/zvlGTU/pQeQFtSTvD+nHIi8OgY465DbmdDYEz1EGPchNK7DOAYk+d9M65m1r8Z+FfgZZS2Q7nIp9UzcTmwWSxz6ao346o4CWhNXfLv7S9Wx/Ovqy3a0M+HGjfj0ToP3885eJj+uDOuNG82mruIpJpTe7x2AbAjs08owMw8qK+OMb6sx/qtXiC3BX5afyHG+GTKkCB3o8yzccsO669qe97a0Z/cY5snMTN/nSbDmFITjKseqisyv0Rp4x+ZOZBWb8ZVm1RGYFlZtTNQ5sR7RXVbHWN8fKd/7DSLcTXjhcD9ga/ZY3NkxlUlpfRN4Jtty9YCJ8UYHwh8D7g38D8xxk+llNYNs50NhHFVLGl7/OwqzgBIKZ1ejVj2O8rFGq+iDIup9RlTvR3AzIgGR42x3mlnXM20aTvKiGP3BT5JGSb3d8B2wKOBN1OG3L0LcOAw29iAGFdASumSGOMHgYOAF8cYrwbeTxnC+Q7Am4B9KCOyLKNccL0hM27UBONK88YEujSYXj2BWj3PlrUt3766X9HnNpa3HsQYNwI+Azyh9vrfgcuBVq+2bSknLjZtq2fb6v6CHtvq9Vov19QeL6f0Ouik9V7sQdWdMaUmGFddxBg3A74G7E3plfewlNJfx1X/lDOuekhlrvNzgVfFGM8F3g18KsZ4+/oQXlqPcVXatT3wP5QhkHv9Q6/+GFd9SCn9Pcb4/4DvUE403RX4RRPbmhLGVVH/O5xdT563pJQujDEeRxl6+6FDbmdDYEz1trq6/2lK6de9CmoW42rGJyhJk6NSSs+pLf8TZY7csym/gU+NMX4ipfS1EbY17YyrGa8FdgYi8JrqVvchStLsHswMqb2hMm7Go3UefnmPMvXXpv08vHGleWMCXWpea2ioA1NKn+pZcn0vYGbn/CbKVdfnVifpAYgxnk854TW2eYH7sKb2eBXdE+itq64ubLY5G5xpjClN3tTHVYxxOfAVSk+7S4GHppT+OKn2bCCmPq66+BAlGboD8Chm5sDTeExjXL0F2BL4b+CS6mKfutZ73qj22nX2Fh6raYyrfvys9ngXTKCP2zTGVf1/wV5JzdZrt2mwLRuiaYyp9cQYb0OZagLsfT4fpi6uYoy7A4+onr6zU5mU0kkxxl9SehM+jnKhtcZn6uIKIKV0Y4zx8cATKb1R96TkWH4DfDSldEKM8byq+G/ns21TYirjZkRrKBe6tvdurqu/5nn49RlXGooJdKl5F1OG/bjtEOs+ubr/RErpDe0vxhiXAtt0WfdSyo6714/rDkO0CcrJkEz5UdiT7idO9qzuzx5yO+psGmNKkzfVcVXNofgl4IHA3yg9z88ZtV7NaarjqpuU0g0xxsur7f9TU9vZgE1jXO1c3f9Hdevm6dUNykmU04fcntY3jXGlyZu6uEopXR5jvIhqCpM+5LmLaABTF1NdPIvSk+t6YNAT3RrcNMbVHrXHvS6a/iMlgb7zkNtRd9MYV8A/Rh/7XHVrb9s2zLznn4yynQ3U1MbNCM4G9mfmPHsnrdcyvS9w3FAZVxrKkrmLSBrRj6v7xwyx7o7Vfbe5Pe5N5/k2YKb3yL496t9viDaRUroGOKV6+shOZWKMOzLzD8t3htmOupq6mNKCMLVxFWPcmDL33YMpI2Y8MqV0xih1qm9TG1e9VD2EW0N1XdOrrIayQcaVGrehxtW9ao//1OB2NlTTGlffqu7v2KNM67VzR9iO1jetMdVudXV/YkrpyjHWq86mMa7qo/T0Spi0Xus2sqKGN41x1Y8Dq/uLgG83uJ1ptaHGTS/fre73rM63d9IaceOnKaVr56FNi41xpaGYQJea9/Hq/gExxif3Khhj3KptUesfxfVOTMQYl1CGDenms9X9Y2KMd+qw/m7MXEE1jGOr+wOr4dXavZbSQ30NcNII29H6pjWmNFlTGVcxxmWUq8IfAVwLPDqldErvtTRGUxdXMcalMca5huV6FTNzbn1/mO2op6mLq5TSfiml0O0GfK8qenRt+enDbEtdTV1czbWvqn4j/6t6egFw2jDbUU9TF1eVo6v7PWKMj2h/Mca4PfC06ulXRtiO1jetMVWv6/7ArtXTI8dRp+Y0jXF1eu3xizsViDHegzJXNcye0kTjMY1x1VOMcSfg9dXTt6WUbupVXh1tcHHTh+9SLsgIwGvaX6zOy7cu3PjkPLZrMTGuNBSHcJcallL6Vozx08BTgGNjjHsCH04prYF/9FK7J+UEw72BvWqrfwu4B/DCGOMpwPEppbUxxl2BdwD3oySENu2w6c8A/wbcCfhKjPF5wLdTSjnG+EDKP6I30v0Kqbl8GHglZa7EL8cYn5lS+lU1TPIrgJdV5Q5JKa0dchvqYIpjqjXUVcsWtcdbtr12pXE1XtMYV9UwSsdRrjC9HnhsSulHg9aj4U1jXFHmcv18jPEI4JsppT9X7yVQ/qF6KfCSquznU0pnDrEN9TClcaUJm9K42ql6Tx8FvpVSOrd6LxtVbfpv4L5V2X9LKa3rWIuGNqVxRUrpOzHGrwGPAo6KMT4X+EZKaV2M8c7AR6p2/RV41zDbUGfTGlNtVlf35+NodvNiGuMqpfSnGOPXKaMmvjzG+Hfg8JTSRdV5q0cD76HMi3slZU5bjdE0xlXV7gdRhv3/IvCnlNLN1Xt5PPBWylDOJ1HiSwOa1rip2j7UOc+U0t9jjK+nnIt/eYzxQuA9KaXrY4x7A8dU7+n3lON+tTGugA7n0mOMy4HltUWtdixrW3fthjoikD3QpfnxHOB4Sm+0NwAXxBiviDFeQRkm6jvA84CN29Z7B/CHar2jgeuqdX5HSQi9GLis0warHeKTKVeo3Qb4JnBNjPEaSi+mzYBXD/uGUko3AhG4BNgbOCPGeCVwNfAWylVx70specV4M6YupiqX1m5/qC0/se21+424HXU2bXF1P+BJ1eMlwPExxou63YbchuY2bXEFZe7pjwDnxRivjzFeClxHmZvspZTfwC9T5u9UM6YxrjR50xhX96ScbPtTbX91LXAyJXm+FnhVSunY7lVoRNMYVwBPB35JmQv9q1X9V1J6fe4D/A14QkrpwhG3o/VNa0y1TuTW5xr1wp75M41x9RzgLMr/gq8BLowxXk35HfwcZd7Zq4AnpZQuH2E76m4a42qnqn2/A26MMf61ei/HUGLqq5SL991/DW8a4wZGOOeZUvoIcATlXMNbgKuq464zKOflLwZiSunvI7ZxmhlX63ttW5kXVcvv27b8iyO2cdEygS7Ng5TS9SmlpwEPpeyo/0y5oueWlKuqvwIcTNt8GCmlv1Kuevpf4C9ABm6g7AD3TSkdNcd2fwPcpbb+RpReAB+mXC35h64r9/e+zqJcQfUuylVuG1Ou3P025WTJQaPUr+6mNaY0WVMYV/XjnI2BW89xUwOmMK7WUK5a/hAlcXAFsAK4GfgN5cTJI1NKj3XuseZMYVxpAZjCuLoYOAj4FPBrSsJgRdW204F3A3ullN49ZP3qwxTGVav+v1XtezXwc+Am4BbAbymxdaeUktOYNGBaY6pyADO9p3q2R+M1jXGVUrqI0mvw5ZQLxy6v3s+1wK8oSZG9UkrOU92QaYwr4IeU86C/oFwstilwISXBdEBKaX//DxzNlMbNyFJKL6X8Tn6bkvDdmHI+/nDKcdc5E2zegmdcaRgh5zzpNkiSJEmSJEmSJEmSNHH2QJckSZIkSZIkSZIkCRPokiRJkiRJkiRJkiQBJtAlSZIkSZIkSZIkSQJMoEuSJEmSJEmSJEmSBJhAlyRJkiRJkiRJkiQJMIEuSZIkSZIkSZIkSRJgAl2SJEmSJEmSJEmSJMAEuiRJkiRJkiRJkiRJgAl0SZIkSZIkSZIkSZIAE+iSJEmSJEmSJEmSJAEm0CVJkiRJkiRJkiRJAkygS5IkSZIkSZIkSZIEmECXJEmSJEmSJEmSJAkwgS5JkiRJkiRJkiRJEmACXZIkSZIkSZIkSZIkwAS6JEmSJEmSJEmSJEmACXRJkiRJkiRJkiRJkgAT6JIkSZIkSZIkSZIkASbQJUmSJEmSJEmSJEkCTKBLkiRJkiRJkiRJkgSYQJckSZIkSZIkSZIkCTCBLkmSJEmSJEmSJEkSYAJdkiRJkiRJkiRJkiTABLokSZIkSZIkSZIkSYAJdEmSJEnSlAsh/GcIIYcQzg8hbDLp9iw0IYSfVX+foybdlg1FCOGo6m+eQwg7T7o9TQgh7Fd7j4dOuj1NCSFsFUK4tHqfL590e5oUQlhd+0xXT7o9Gk4I4U4hhJurz3G/SbdHkiRpITKBLkmSJLWpnRzOk26Legsh7BtCeGcI4echhAtDCH8PIVweQji7SlA9JYRwi0m3c9IW6t8phLAihHBodXt8Q9vYCfj36ul/5pyv71CmnhQ6agzbDCGE/UMIR4QQfhVCuLj6m19SPf/fEMJjQghD/U/eQP2vre6fFUK4zzBt6tLOc4dJEg+73oZo3LGroRwGbAP8HvhgpwLVd/b2IYSnVfvik0MIV9U+u5OH2XAIYftq//mLap9+XQjhD9V+/YF9rL9zbR+83zBtmA8el41Xzvn/gE9UT98fQlg6yfZIkiQtRBtNugGSJEmSNKgQwp2B9wD7dnh56+q2O/Bs4E8hhNfmnD83j01cEBbB32kF8Ibq8dHAiQ1s47+ATYA/Acc0UP8sVRLqXcBdOry8bXW7E/Bi4FchhFfmnE+aZP055++FEH4APAB4W3UvaQ4hhNsDL6ieviXnvLZL0XcAB495248DjgS2antpl+r27BDCh4CX5pxv7lLNzszsgwFOHmcbtaD9N/AsYE9gNfCxibZGkiRpgTGBLkmSJGlRCSFE4HhgebXoauBLwE+AS4AtKSeEnwDcFrgd8NkQwpuB1+ecN4gebP6dIISwO/D06uk7eySRxrW9FwEfAFq9+S6jXBRwGnA55YKFuwKPB7YD9ga+FUJ4ac75QxOu/38oifP7hxAekXP+xpxvWNKhlHNra+h9gU57D9+rgfOBPYbZaAjhQcBngNbIIV8BEnAtcDfgeZR9/IuADPzLMNvR9Mo5/y6E8HngScDrQwif6HEBiCRJ0gbHBLokSZKkRSOEcH/gBGb+l/kUcFDO+dIOZV9D6fF3GCV5cQhwDSVRONX8O/3DqylTl11Dw73PQwhPZfbwze8BDsk5X9Oh7MGUnvGvovzNPxhCuCLn/OlJ1Q98Df5/e/cdLklVJn78+4JEBQZEQCQMJvghShBdWV1hEEkqKgqiILBI0DWAEV39KSDmuIqooCwSFCXIoiygiIAkUREQkSgjgiiSYcjw7h+nmq7pqU739g0z8/08z3luVfepU6eqq87tp98653Aj5WGKDwAG0KUequkFdqxWv9sn+HglZeSI3wK/A66hjAwy8OgTtf0uARxBO3j+7sw8pJbl2Krn+TnAKsDbI+L4zDxr2H1pgfctSgB9Dcq1fOzUVkeSJGn6cA50SZIkSfOFiFiOEghuBYUPA97SFBQGyMxHMvNzlCFKWw6OiBdPbE2nluepiIgZtHufn5yZ90zgvmZSznPLRzNzv6bgNkBmzsnM9wEfrb18eLf5vie6/Gqbx2k/ZLBFRKzdLa8koPTubvUs/16vjJl5WGa+LzO/n5lXj3OEjz0oQ68D/KQjeN7a3zXAO2svHTyO/WnBdRZwU7X8rqmsiCRJ0nRjAF2SJEmaQBGxQUT8V0RcFhF3RMRDEfG3iDg1IvaIiJ6jQkXx0og4KCJ+HhE3RcSDEfFAtXxKVc7iXbZftNpfRsS9EbF0U76ObRaPiNuqbW7vUfaSEbFPRPw0Iv5a1evuiLgiIr5WzQ07Su8AnlEtX0npUd03CJGZ36f01oMSVD6wKV9EHFkdc7YCjRExKyJ+FBE3Vp/drRHxv9XcswNZAM/T2a3z1K/MiDigdk43q70+s9r+hlr23Wp5s2m7Ib0JWLJaPnGMZQzqw8Ay1fKZmfnpQTaq8v2iWl0G2H+Kym+pn6fdBtnHVKvauJ0j4viImB0RcyLivoi4OiIOj4iNByhjmYjYKSK+HRG/qdrqRyLiroi4sipn4AdKImKpiPhQVdbdVdt7ZUR8PiJWH98RD28C27atIuLHEXFL1a7dGBEnRcSWY6znayLiqIi4rjpn90fEDRFxTERs0WO7U2rH96k++3hzLe8fI2KpMdZ1EeCt1eplmXn9WMoZo51qy1/uke9kYHa1vElErNl6IyI2q9rgeg/4T3Rpg2f2qkxEPDcivh4R11Sf2V0RcWFE7Btdvj9Mhep/8Wur/7sXRMQ/q/v83oi4NiKOjohX9th+vdo5+fmA+9y0ts1xPfKtEhEfj4jzIuLvEfFwlO9hF0TExyKic577zu3n+r8cEYtExK4RcXqU74qPRMP/7Oq7wUnV6kvCB6ckSZLaMtNkMplMJpPJZDLVEmW+0KT6bXGMZSwBfBd4vF5eQ7oCeGaPco7os30r/Ql4TpcyvlDLt8sAdX9dLf+hXfJsSum11KtOjwIfGdFnEpQ5Zltl7zTk9qtX9Wltv05DniNr768FfK3P8R0ywH4XxPN09qD3B2V+4FZZm9VenzngdT3XdkMeyxnV9o8DK/TJu3ttf0cOuZ8ZwAO17V8y5Pb/Wtv2AWC5ySy/4fq5s8p71Qiux9m1fc8c9XbAepS2r9819HVg0S5lLN5xfnulbwFP6lP3ZwLX9ijjdmBz5m5vBj43Y7l2GXHbRumMcXifMr4KbFZbP6BHeasDFwxw/k8Alm7Y/qm029nHgFld9vMs4J7avbDeOM77JrV6/dcYy6ifn7MH3GaZ6hizOpbG67qW/5u1fby9y777pZm17erX2+6Uhwju77HtBcCyYz3Ptf0+UeY4yvjzgMd7MvCULmWcS/v/StfvbrX836+V2+26fA9l7vpedboD2KrHfs6u5V2eMnz/POV02fb1tTwfHu9nZTKZTCaTybSgJOdAlyRJkkYsSq/y0yk/UEMJaB4HXE75oXk1YHvgZcDzgHMjYsNsHmJ7aeBh4Dzg18B1lB/NlwCeXZXzAmAd4LSI2CjnHar6e5Q5jaH82H1Mn0OoD+V9VMPxbQP8D7AY5Ufk04EzgZspPX43rspYDvh0RJCZn+mzz36eDzy9Wr6Pdo+pgWTmXyPiLKDVu2wL4KoemxwMvIUSyDuaEqRbDHgFsAslgPTOiLggS8/teSwk52msbqX8aL8S8O3qtV9SAnudrhi28ChzBG9arV6bmXeMpZIDejntnu7XZOZFw2ycmRdExLXAc6py/g346SSWX8+bEXExsCWwdkTMzMzZw+xvskTEhpQgUatn/q+AU4G/UO7PF1ACfCtThiZenDLkdqdFKOflH5Te+pdR2uwHKIGojSlzAy9fbX8P8KEudZpBGRJ5zeqlmygPQf2pque2lAeUTqj2MxXG3bZR5vLes1p+jDJv8tnAQ8AGwNuAfSmB8Z6qHvm/pt1u/Z4SwLyO0m6uTWknnwm8AXhyRGybmdkqIzNvj4hdKJ/fIsAxEbF+Zt5W289ilP/DrevlvZk5dNtSs1Vteah7cpzWpT2a5O8z87E++X8DvL1afn7t9SsobfB6wCer135IOUedbu1S9taU+bPvB75R7at1Dbyd8r9tE+CLwN596jkZlgbuotyjv6e0FfcDy1LaizdRrsPXUu7bHRvK+CalDQ1gL+Aj3XYWEStSvqNBabt/2ZDnYNpTbcyhtA0XUh60WYFyX76B0v78NCI2z8xf9TnOYyn/N/4I/AC4nnLdb9olf/363Rr4bJ/yJUmSFg5THcE3mUwmk8lkMpmmW2KcPZ2Az9TKOAxYsku+99TyHdMlz8uB5XvsKyjDO7fK+ViXfJdU7z8KPL1HeStQfgBP4OqG959O+WE3KQGnxt6wlCHE/1Db5zw9mYc8p++oHeNZYyzjgFoZxzW8fyRz99Y6DliiId8utTyXd9nXgnyezh70/qBLD/Ta+zNr7x85nmPvKPdfauUeNUD+3cdaD+BztW2PGGN969feZyez/D6f2VAjGDSUNbtW1sxRbUcJhF1fvT8HeE2XcpajBMtaZW3RkGdRYBtgkR71eSrtHtKPAmt2yfft2r7OBZZpyPNG5h7lYahzM5Zrl9G2bS+lPbLKfcDLGvI8nXlHBjigIV90nNe9uuxzCUogsFXWnl3yHVTL85OO975Ye+/E8VzXVXmn1crr2xO5Sxmb1co4e8Btdu33eXfkn1XLf2afOszzGfW53pISiH9GQ751gHurPA8DK4/zfD+xz3GUsQ2wWI/3lwZ+XNtX07W9OOV/egK39Cnv/bWy3t/w/ta1e+nCpvNY5Xsp7ZETbqBhFAzm7oGewCH0GZ2gY/vZtNvTgbczmUwmk8lkWpCTc6BLkiRJIxQRKwH7VatnZubemflgU97M/BpleE+AnSLiGQ15zs3MO7vtL4vPUnqoQ/d5i1s9yRelBEm62ZHyAzGU3omdPkgJsgO8Mbv0hs3Mm4EdKL0TF6X0RhyP1WrLV4+xjHpP6nnOdYdrgN0y86HONzLzGEqPSYDnN31uLDznabqq97SciB70dRN9zif7M/1TbfkFY9xfkxu6zK88T6Ldg7ubPSk9kgH2ycyfNGXKzLsp91drVI73N+R5LDNPy8zHu+0sM2+nPTJHYxsaEU+jBBehBA53zMx7G8o6gdKDe6qMt217PyXwDbB/Zp7XmSEzb6H05u3XO/o1lB7KUIK3hzdlquq6G+35vOf5HCsH0v5f+OqI2BcgIrYG3le9fiPt3vPj0WpjHs7MP4+gvEHNqC3f1i1Tze1dth2FR4Htq/9jc8nMqyi90qGMcNB1DvvJUt3nj/R4/37KdTanemme71OZ+TBleh6AVYDteuyy1ev+IcpIQJ0+RbmX/gm8quk8Vvs8n/Y1P5PSI72XS4D3ZP/RCepa7f7SlKkOJEmSFnoG0CVJkqTRehPt4Za/MED+1o+qi1KG6hyrVtDg2RHx1Ib3v0/5sRvKMO7dtIJESUcAPSKi9v6F2WcY0eoH9Iur1a165R3ACrXlu8ZYRn27pnNUd2hTgKnm57Xl9epvLGTnabqaWVueyOHbYeLP+WR/pvXzNXOM+5torcDWzbQfQmpUBb9PrVY3q4b3H1pmXgf8vVp9SUOWV9F++Oj7mfn3hjwtX6b0PJ0K42nblqAcJ8DdwHe6FZKZlwM/61OX1uf4EM3TN9TLe5jSCx1gnYhYoyHPY8DOQOuhs89HxLaU/7NBCejv3OuhtEFExOLAqtXquMoag6fUlhsfzuvwQG15ma65xuanmXlNj/e7XkvTVZYpcP5QrTbd51BGFmrdv03TQhARmwHPrVZPzNp0AtX7zwc2qla/k/2nGal/h+v3PeEbvR4I6mJ+aPclSZImlXOgS5IkSaP18tryyhHxuj756z381m3KUM2pvj1l7twNKD/cL0P3B2JXY+5eZ2TmrRFxOvBqSs/CDTLz0o79PJt2b8BzM/MvHeWuSzv4ducAxwbtHohrRcSS3XrjT0MX9nn/ptry8h3vLUznabqqB51v75pLTerna4WuuYa3D93nUu50GPC0pjciYllKOwhlCOXtyjMrPbWC5ksCa9EwKkFErEp5uOgVlHt4eUpvzCarNbz24tryL3pVJjNviYgrmZqg4njatvVpPyRwfp9APJTzsE2P91v/L/8BbD7A51ivz7qU3uRzycwbI2JP4MSqrqfW3j6wqcf8GMyg3Qt/YW5fxnMtTYmIWJ7ykMXWlPvvqcCTaX+edU33OZk5OyJOozxMskVErJWZN3RkqwfWv91QTP274qIDfk+4j3LtNX5XrOk3R3qTiWr3JUmS5lsG0CVJkqTRmllbPqpbpi7m+dEyItYGTqL/D6Z1y3Z5/ShKAB1KD+lLO97fpSNvp5m15W2rNIwVgL8BRMTLgBV75D2vo8dWvXfUjCH327Rdv6BHv6Fx64GjJTvem1lbXtDP03RV72U8zzDaIzbR53yyP9N7astLjXF/TX6WmbMHyRgRX+3x9uq0Hx7amDJn8TCa2tl9KL3CuwXMOzW1savWlq8boIzrmJoA+njatrEcY6OIeDLttm0NRvA5tmTmSRHxTeAdtZfPpgyZPQqT2b50uq+23Pn5NKnfw6Ou63iupUkXEa+lDL8+6Mgq3b5LARxKCaAHsBfwn7X9rAi8vlq9KjPPbdh+Zm35QwPWp6VfgPumPu83mah2X5Ikab5lAF2SJEkarRnj2Hbx+kpELAecRTto8TdKb7o/UXrsPUh7GNGdKMPHQxkOvskplOFmlwfeHBEf7JgjszW0+/3A8Q3bzxj0QLqoH9/BwKY98s6iBDxa6j8Irz3G/a9TW26ca7RmPMMrzxjHtjB/nafpqh646RUEGYWJPueT/ZkuV1t+oGuuqTNjnNt3trM7AN+qvXQhcA5wA2WY8vq11OoZ39TG1ofWvn+Aeszpn2VCjKdtG+UxzhhHPaDjc2xwdcf6iWMY1rqbyWxfOt1VW+71cFVLPVh8V7dMYzRV0xAMLSI2AU6g/Tvo5cCZlIc87qR8plm9dzDwPHpPe3k6MJsSCP/3iPh4ZraGWN+d9kMWTb3PYYTfFTtl5lja7ene7kuSJE06A+iSJEnSaNV7hy2bmePp8fUu2sHzY4E9qnlg5xERL+1XWGY+FBE/ogwtugqwJXBabftnVllP7lLv+rF9OTPfP9BRjMb5teUXRcTi3c5FD5vUlkcxjG83nqe2bg9zTLTJHI62fs773odd9DrnE11+p3rAbaLnjx+L+v11Uma+YZzlfbr6+xjw+sz8SbeMEXH4gPUapCf7kwfIM92M8hjrZV2SmS8cW5XmFRHrA5/rePkzEXFGZl47gl3cSQkeL8LkD3ddfzBgrQHy1/N0PlSwMDmI9m+g78zMQ7tljIiP9issMx+PiG8Dn6F8n9qOMloQlB7pUB5y7DYSUf36365XuzNJpnu7L0mSNOl6PU0pSZIkaXj13qKrj7OsLau/jwLv7hMIHeSHdJj7x9xduyx3+8F3ZMeWmZtlZvRIZ3ds8gfKfMdQekG+niFExGqUuY1bfj7myve3oJ+nJ3pfRkS/XqCD9JCcCPX5aCc6wHUuJVAC8NyI+JdhNq56Rj63Wn2QeeevnejyO9XP1+xh9jVJ6j3ox3V/RcRawLOr1ZP7BM+Xpfe1VK/Xs7vmGi7PdDOyY8zMu2kHERvnmh6Lamj442j3AD6h+vsU4AcDtFl9ZeYjtM/FZAfQr6Td83vDiOj3kNKLastXTEyVpreIWAzYrFr9Xa/geWXmgEV/F2h9L9un2tcs2u3t8ZnZLRg9yu+KozDd231JkqRJZwBdkiRJGq1zasvbjLOsVaq/t2fmnd0yRcSStH8c7ikzLwBaPfBeGxHLRMQSwI7Va7dQhjVtcillSGOAWdV2kyIzE/h67aWPDRkI+QTt3tCnZeZE9sS7lAX7PNWvxWf0KW+TPu/XhwCOPnmH8Yfa8v8bYbnzyMy7mPuhk4OGLOLA2vJ/V4HFSSu/wbq15cuG3NeEy8zbgD9WqxtFxMrjKG6V2nK/Ob23ovdvKBfXljfvVVBEPJ0Jvi4nyOW0H6B56QBt2yv6vN/6f7lSRIyqB/rXaE9ZcERm7kC7Z/ALKT2GR6HVxiwWEc8aUZl9VaPDtEalWAZ4Wbe8EbEI5bptOa0h20S1wdPJirR7n/e8zyPiRQz44Fdm/pP2AxqvjIiZwN61LN2Gb4fRflcchVa7Pwe4fiorIkmSNF0YQJckSZJG6zjaAYb3RcR4euC25o9dqer92M2+zD38Zj9HV3+XAnYAXk17Ps5jO+ZFf0L1+rHV6orA+4bY5ygcSpkHHmA94KuDbBQRbwL2rFYfBQ4YdcXqFoLz9Mfa8hY9ynsFsH6f3daHsR3lkNaX0Z7Hdage22P0WdrHsmVE7D/IRlW+V1ar9zLvsNOTVX7dS2rLFw2ynynwvervogz/QEFdfY7urr2lq4dQPtanrP+l3Rv1LX0C+/sxddMbjFlmPkQ5TihzJu/RLW9ErEd7FJVuvldbPjgixhXAjYidanW6CnhPtbwncGO1/N6I2Ho8+6nU743JaGPqjqst95oi5HW0R6e5KDNnN+SZqDZ4OhnoPq8c2Of9Tt+s/gbwEWD7av2PmXl+8yYA/I72iACvGmQanolSPdDT6gX/m27fASVJkhY2BtAlSZKkEcrMmyg94KDMX35GRDyzxyZExPrVXJqdftPKAnyqy7ZvBj45ZDWPBrJa3pXBhm9v+TRwV7V8cETsV/VyaxQRT46IPat6jkvVc3YnSnAX4B0RcUy3hxQi4kkR8QHawWyAj2XmxU35R2xBPk/1XowfjYinNZT5PPpfS1TD27Z6RG8w3gBardyHgV9Wq8+JiAkdZjkzb2DunoefjYgvVcNJzyMilo6IL1AC4y17ZeZfpqL82nYBvLhavbpf/in0DdrDDO8dEZ+rhmluFBGLR8SOEfHOjreuoh1A3K4a7r5z26WAY4AX9KpQ1Rv1yGp1WeC4iHhKQ3mvZ/IfqhmlL9H+//G5LudsZeCH9H9I4ATg19Xy1sBRTeesVu6iEbF1RMzzMEM1HH/r/+hDwE6ZOQegGsFlZ8o89wF8b5wjFwCcXlue7AD6EbQfCHhNw3VNRDyHcp+0/P8uZdWnu9hoNNWbXjLzHuCaavWFEfHGzjzVtfUVhuwNnpnn0R6NYG+gNeJLr97nrdFiPtzaPXByRHR9IK2q46oRcUBE9GyLxqB+D58x4rIlSZLmW0/qn0WSJElaeEXEwQNmvSUzWz9W/yel5+2WlB+kr4qIUyhzD99CeZB1RUrv4NZ8mY9RzaFZcwilN92TgHdFxEaUgMPNwMrAaylD5N4HnAK8YZCKZubsiDgX2BR4ebVvgEsz8w/dt4TMvDkidgR+Qplj9ivAf0TEjylzs95HGVZ2LWBjylDGS9L9x/uhZOavqh+/vw8sTQmKvKY6vxcB/6QEr9al9ARbs7b5p4HPj6IeA9RzgT1PmfnbiDirqvOawO8j4lvA1dUx/RvwFuAR4H8o12kvv6jq8CzgRxFxEuXhg1aQ7uIe88j2chKwbbU8CzhxwO02HOK+PzUzLwTIzB9ExHKU+3ZRSpD0rdVnfglwB2We2Q0ox7tSVcZjwLsy84e9djTR5VfWp/QsBvjxAPmnRGbeHxHbUeaHnwF8CNglIk6gjD5wD+W6X53SBm9Bud6/21HOwxFxaLX9YsA5EXEkZTj2OZT7Y7eqnF8Aa9N7vu79KYHgNSjTalwZEd+lBOqXoQTntqdMg3AZA069MZ1k5vkR8XVK7+5lgHMj4hjKkNQPUa6/PSnX4km0e+Q2lZUR8QbgQso53oXSG/d4Sg/dOyjt4qqUa/OVwNMon8UT92hEPAn4AeUzBvhgZs41/UBmnhcRB1F6GK9ECdZvXQUyx+K3lCD2GvQZsr+q4wzgAx0v19vdtRranUsy86SO18jMByPibZTRABYDDql61Z9CuW43onwGrXv58MxsnJolM++MiEuqbWZVD/OdSRmxouWczHygafupMMbvZV+ljM4C5f/MDynX7J2UXuk7U6ZVuIJyHQ8zpcA3a2VDGf3k6C55n5CZp0bExymjaKwI/DwifkV5OGM25X/oDEq786+U0UGC7tPsjNXLa8vTtt2XJEmadJlpMplMJpPJZDKZaokSuBs2XdpRxmLAFyk/gA6y/ewuddmjTxm3UQL1B9Re22yAY9yjoaz3DnGONqYEhQY5tkeBPUf8GW1A+fF7kP3/GXjjAGUeWdtmZp+8u9fy7r4wnaeq3NWBa3uUdfug1yWlZ++cHmX1vZ67lLsscH9VxslDfJ7DpP0aypoFXDrg9pcBs4Y8rgkrnzKaRWvbdUZw/c0e9J4ay3aUhy4uGvBcPA4c2FDG4pRRFXptezZlmoxWvWb3qVO/e2Nzhmhvhrh2j+ySZ+B9MUDbRnkI7Dt9ztlXKQ8ItNYP6LHPlSjB4EHvuyM7tv9s7b1TeuxnEeZuDz84zuv7U7WyNuiTd+YQx9fz86yV+XpKALhXGYcBi/YpZyt6f8+YWcvb9/rocsw9j2WAcz3suUtq38sogefv9sl/OeWhtrNbrw1Yt2UoD+20yvnvIY9tV8rDIoMc0z3A8xvKGKrOHeflxmrbi8bzGZlMJpPJZDItaMkh3CVJkqQJkJmPZOYHKD2bDqL0Pv87ZY7cBym9yH9J+eF/FtA4zHtmHkEZHvZY4CbKj9x3UAJonwRekJk/G0MVj6cEF1sepfRWHkhm/pbSO3MHyvDG11J+2H2MMiT3FZQegfsAq2Xmd8ZQx177vzQzN6UEaL4C/B74B+X83EnpDX008GZKIPCEUe5/iHoukOcpM/9K6bH4CUqQdg7lerqK0nt94OsyMy8HNqQMefsn2sH0cckybO8x1eq2EfHU8ZY54H5/STmeVwPfonzGt1Husdsoc8gfBmwHbFjln/LyqykG3lqt/iIzrxqmXlMhM6/PzJdQAoDfoYzucBfl/rqXcj2eBOwLPCszP9FQxsPAq4C3UXq0301pp2+m9ATdDdg8M28ftE6Uh0L2p4wMcC/lmr6K8lDVBpl51tiOeHrIzMczc09Kj/pTgFsp5+wmSg/WrTNzvyHKuzUzt6UMJX0I5f/b7ZTPcQ5wPfBTypDX62Xm7q1tq2GvP1St/g349171pvQ0bo1o8amI2HjQejb4Nu2pMnbtlXEiZOaPKf9fPkk5Z3dRvl/cQGnXN8vMvbPPnNaZeQbl3B9NOdf398o/P8ribZSRes6gXF+PUL6XnQO8C3hxlukyhi37XsqDPC09h29v2P4oymgE76Zc53+l9GJ/hNKmX0xp63cAVsk+IwUNaRbt+c8PGWG5kiRJ873IHPfvEpIkSZIkTTsRsTYlqLoIsG9mfm2KqzRtRcS2wKnV6jaZeXqv/JKgGr5+Z8qDSWtUD2RoIRIRK1GC3osDl2fm+lNcpYFFxI8ogfm/Uh4yemSKqyRJkjRt2ANdkiRJkrRAysyrKaM3AHwwIpaYyvpMc/tXf883eC4N7CBKL/SVgb2muC6aGm+jBM+hzIc+X4iIZwPbV6sHGTyXJEmamz3QJUmSJEkLrIhYkzI0/FLYC71RRLyc9tzQL8vMC6a4StJ8IyIOBd5BGUL+WZn54BRXSZMkIlagTM/wNMrUAGtk5pyprdVgIuIIypQHVwLrZ+ajfTaRJElaqNgDXZIkSZK0wMrMvwCfqVY/EhFLT2V9pqkvVH+PMnguDe2jlLmqVwX+Y4rrogkWEZtGxDYRsRdwLiV4DvCZ+Sh4vh6wW7X6ToPnkiRJ87IHuiRJkiRJkiT1ERGzgTU7Xj4PmGUgWpIkacHxpKmugCRJkiRJkiTNRx4EbgCOA75k8FySJGnBYg90SZIkSZIkSZIkSZJwDnRJkiRJkiRJkiRJkgAD6JIkSZIkSZIkSZIkAQbQJUmSJEmSJEmSJEkCDKBLkiRJkiRJkiRJkgQYQJckSZIkSZIkSZIkCTCALkmSJEmSJEmSJEkSYABdkiRJkiRJkiRJkiTAALokSZIkSZIkSZIkSYABdEmSJEmSJEmSJEmSAAPokiRJkiRJkiRJkiQBBtAlSZIkSZIkSZIkSQIMoEuSJEmSJEmSJEmSBBhAlyRJkiRJkiRJkiQJMIAuSZIkSZIkSZIkSRJgAF2SJEmSJEmSJEmSJMAAuiRJkiRJkiRJkiRJgAF0SZIkSZIkSZIkSZIAA+iSJEmSJEmSJEmSJAEG0CVJkiRJkiRJkiRJAgygS5IkSZIkSZIkSZIEGECXJEmSJEmSJEmSJAkwgC5JkiRJkiRJkiRJEmAAXZIkSZIkSZIkSZIkwAC6JEmSJEmSJEmSJEmAAXRJkiRJkiRJkiRJkgAD6JIkSZIkSZIkSZIkAQbQJUmSJEmSJEmSJEkCDKBLkiRJkiRJkiRJkgQYQJckSZIkSZIkSZIkCTCALkmSJEmSJEmSJEkSYABdkiRJkiRJkiRJkiTAALokSZIkSZIkSZIkSYABdEmSJEmSJEmSJEmSAAPokiRJkiRJkiRJkiQBBtAlSZIkSZIkSZIkSQIMoEuSJEmSJEmSJEmSBBhAlyRJkiRJkiRJkiQJMIAuSZIkSZIkSZIkSRJgAF2SJEmSJEmSJEmSJAD+D4wNBTEHtV1bAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# df = pd.DataFrame(head_attention_value_output_mo_data)\n", + "# df.to_csv(f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_data.csv\")\n", + "df = pd.read_csv(\n", + " f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_data.csv\"\n", + ")\n", + "df[\"mo_head_cat\"] = pd.Categorical(\n", + " df[\"mo_head\"], categories=df[\"mo_head\"].unique(), ordered=True\n", + ")\n", + "head_attention_value_output_mo_plot = (\n", + " ggplot(df, aes(x=\"mo_head_cat\", y=\"acc\", fill=\"mo_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Leave-One-Out (LOO) Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"head {i}\" for i in df[\"mo_head\"]])\n", + " + ggtitle(\"IO Name for Each Head (Value) after Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_attention_value_output_mo_plot,\n", + " filename=f\"./tutorial_data/layer_{layer}_head_attention_value_output_mo_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_attention_value_output_mo_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "afa2d05e", + "metadata": {}, + "outputs": [], + "source": [ + "head_attn_value_out_cumulative_data = []\n", + "current_heads = []\n", + "for i in [2, 6, 10, 3, 0, 11, 4, 1, 8, 9, 5, 7]:\n", + " current_heads += [i]\n", + " print(\"evaluating grouped IIA adding head\", i)\n", + " _head_attn_value_out_cumulative_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [layer],\n", + " \"head_attention_value_output\",\n", + " heads=sorted(current_heads),\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " debug=True,\n", + " )[0]\n", + " _head_attn_value_out_cumulative_data[\"adding_head\"] = i\n", + " head_attn_value_out_cumulative_data += [_head_attn_value_out_cumulative_data]" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "2b22bed7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 1000 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# df = pd.DataFrame(head_attn_value_out_cumulative_data)\n", + "# df.to_csv(f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_data.csv\")\n", + "df = pd.read_csv(\n", + " f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_data.csv\"\n", + ")\n", + "df[\"adding_head_cat\"] = pd.Categorical(\n", + " df[\"adding_head\"], categories=df[\"adding_head\"].unique(), ordered=True\n", + ")\n", + "head_acc_plot = (\n", + " ggplot(df, aes(x=\"adding_head_cat\", y=\"acc\", fill=\"adding_head\"))\n", + " + geom_bar(stat=\"identity\", position=\"dodge\", width=0.9)\n", + " + labs(x=f\"Cumulative Head Index ({layer}th Layer)\", y=\"IIA\")\n", + " + theme_minimal() # Add axis labels\n", + " + theme(figure_size=(10, 2)) # Use a minimal theme\n", + " + theme(legend_position=\"none\")\n", + " + scale_x_discrete(labels=[f\"+ head {i}\" for i in df[\"adding_head\"]])\n", + " + ggtitle(\"IO Name for Cumulative Head (Value) after Self-Attention\")\n", + ")\n", + "\n", + "ggsave(\n", + " head_acc_plot,\n", + " filename=f\"./tutorial_data/DAS_IO_layer_{layer}_head_attn_value_out_cumulative_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "head_acc_plot" + ] + }, + { + "cell_type": "markdown", + "id": "5b848660", + "metadata": {}, + "source": [ + "### Use Boundless DAS to find information\n", + "Instead of starting with a fixed number of DAS dimension, we can also use Boundless DAS (Wu et. al., 2023) to dynamically find a good dimension by learning the boundary. Here, we use Boundless DAS to find alignments for the name position information variable as well as the correct IO name variable. Very similar results, yet alignments with the IO name seems to be consistently better." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4310e73e", + "metadata": {}, + "outputs": [], + "source": [ + "attn_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_input\",\n", + " aligning_variable=\"position\", # now we are localizing the IO name\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "block_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_input\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_input\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_act_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_activation\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "attn_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_output\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_output\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "attn_value_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "block_output_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_output\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "7b94d268", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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AAAAAAAAAAAAQIJIwAIAAAAAAAAAAAAAAACABJGABQAAAAAAAAAAAAAAAAAJIgELAAAAAAAAAAAAAAAAABJEAhYAAAAAAAAAAAAAAAAAJIgELAAAAAAAAAAAAAAAAABIEAlYAAAAAAAAAAAAAAAAAJAgErAAAAAAAAAAAAAAAAAAIEEkYAEAAAAAAAAAAAAAAABAgkjAAgAAAAAAAAAAAAAAAIAEkYAFAAAAAAAAAAAAAAAAAAkiAQsAAAAAAAAAAAAAAAAAEkQCFgAAAAAAAAAAAAAAAAAkiAQsAAAAAAAAAAAAAAAAAEgQCVgAAAAAAAAAAAAAAAAAkCASsAAAAAAAAAAAAAAAAAAgQSRgAQAAAAAAAAAAAAAAAECCSMACAAAAAAAAAAAAAAAAgASRgAUAAAAAAAAAAAAAAAAACSIBCwAAAAAAAAAAAAAAAAASRAIWAAAAAAAAAAAAAAAAACSIBCwAAAAAAAAAAAAAAAAASBAJWAAAAAAAAAAAAAAAAACQIBKwAAAAAAAAAAAAAAAAACBBJGABAAAAAAAAAAAAAAAAQIJIwAIAAAAAAAAAAAAAAACABJGABQAAAAAAAAAAAAAAAAAJIgELAAAAAAAAAAAAAAAAABJEAhYAAAAAAAAAAAAAAAAAJIgELAAAAAAAAAAAAAAAAABIEAlYAAAAAAAAAAAAAAAAAJAgErAAAAAAAAAAAAAAAAAAIEEkYAEAAAAAAAAAAAAAAABAgkjAAgAAAAAAAAAAAAAAAIAEkYAFAAAAAAAAAAAAAAAAAAkiAQsAAAAAAAAAAAAAAAAAEkQCFgAAAAAAAAAAAAAAAAAkiAQsAAAAAAAAAAAAAAAAAEgQCVgAAAAAAAAAAAAAAAAAkCASsAAAAAAAAAAAAAAAAAAgQSRgAQAAAAAAAAAAAAAAAECCSMACAAAAAAAAAAAAAAAAgASRgAUAAAAAAAAAAAAAAAAACSIBCwAAAAAAAAAAAAAAAAASRAIWAAAAAAAAAAAAAAAAACTo/wHIXZ/g0xm5YQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# all_streams_io_name_df = pd.DataFrame(\n", + "# block_output_data+\n", + "# attn_out_data+mlp_out_data+\n", + "# attn_value_out_data+mlp_act_data+\n", + "# mlp_input_data+block_input_data+attn_input_data\n", + "# )\n", + "# all_streams_io_name_df.to_csv(\"./tutorial_data/all_streams_boundless_das_df.csv\")\n", + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_boundless_das_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin(\n", + " {\n", + " \"block_output\",\n", + " \"attention_input\",\n", + " \"attention_output\",\n", + " \"attention_value_output\",\n", + " }\n", + " )\n", + "].copy()\n", + "stream_labels = {\n", + " \"block_output\": \"Block Output\",\n", + " \"attention_input\": \"Attention Input\",\n", + " \"attention_output\": \"Attention Output\\n(After Head Mixing)\",\n", + " \"attention_value_output\": \"Attention Value Output\\n(Before Head Mixing)\",\n", + "}\n", + "df.loc[:, \"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df.loc[:, \"IIA_formatted\"] = df[\"IIA\"].map(custom_format)\n", + "other_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Name Position w/ Boundless DAS\")\n", + ")\n", + "\n", + "ggsave(\n", + " other_locations_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_other_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "other_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "5d54e10f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_boundless_das_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin({\"mlp_output\", \"mlp_input\", \"mlp_activation\"})\n", + "].copy()\n", + "stream_labels = {\n", + " \"mlp_output\": \"MLP Output\",\n", + " \"mlp_input\": \"MLP Input\",\n", + " \"mlp_activation\": \"MLP Activations\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "all_mlp_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Name Position w/ Boundless DAS\")\n", + ")\n", + "\n", + "ggsave(\n", + " all_mlp_locations_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_all_mlp_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "all_mlp_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "091b0a6f", + "metadata": {}, + "outputs": [], + "source": [ + "attn_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_input\",\n", + " aligning_variable=\"name\", # now we are localizing the IO name\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "block_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_input\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_input_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_input\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_act_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_activation\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "attn_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_output\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "mlp_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"mlp_output\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "attn_value_out_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")\n", + "block_output_data = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [i for i in range(12)],\n", + " \"block_output\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "92640e82", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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YEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXDGBJkiRJkiRJkiRJkiRJUpcMYEmSJEmSJEmSJEmSJElSlwxgSZIkSZIkSZIkSZIkSVKXZvV7AtLqbtGiRdsA1xe7286dO/eGfs5HWp0tXbr0aGAD4J7Zs2d/tt/zkVY3XhOl6cHrodRfXg+l6cNrotRfXhOl6cHroSRJUmcMYEmSNOpoYGvgRsD/mSBJWl15PZQkKfOaKEmS10NJkqSOuAShJEmSJEmSJEmSJEmSJHXJAJYkSZIkSZIkSZIkSZIkdckAliRJkiRJkiRJ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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# all_streams_io_name_df = pd.DataFrame(\n", + "# block_output_data+\n", + "# attn_out_data+mlp_out_data+\n", + "# attn_value_out_data+mlp_act_data+\n", + "# mlp_input_data+block_input_data+attn_input_data\n", + "# )\n", + "# all_streams_io_name_df.to_csv(\"./tutorial_data/all_streams_io_name_boundless_das_df.csv\")\n", + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_io_name_boundless_das_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin(\n", + " {\n", + " \"block_output\",\n", + " \"attention_input\",\n", + " \"attention_output\",\n", + " \"attention_value_output\",\n", + " }\n", + " )\n", + "].copy()\n", + "stream_labels = {\n", + " \"block_output\": \"Block Output\",\n", + " \"attention_input\": \"Attention Input\",\n", + " \"attention_output\": \"Attention Output\\n(After Head Mixing)\",\n", + " \"attention_value_output\": \"Attention Value Output\\n(Before Head Mixing)\",\n", + "}\n", + "df.loc[:, \"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df.loc[:, \"IIA_formatted\"] = df[\"IIA\"].map(custom_format)\n", + "other_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 1)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Correct IO Name (20) w/ Boundless DAS\")\n", + ")\n", + "\n", + "ggsave(\n", + " other_locations_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_IO_name_other_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "other_locations_plot" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "1a271fa5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 300, + "width": 1200 + }, + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "all_streams_df = pd.read_csv(\"./tutorial_data/all_streams_io_name_boundless_das_df.csv\")\n", + "all_streams_df[\"IIA\"] = all_streams_df[\"acc\"]\n", + "df = all_streams_df[\n", + " all_streams_df[\"stream\"].isin({\"mlp_output\", \"mlp_input\", \"mlp_activation\"})\n", + "].copy()\n", + "stream_labels = {\n", + " \"mlp_output\": \"MLP Output\",\n", + " \"mlp_input\": \"MLP Input\",\n", + " \"mlp_activation\": \"MLP Activations\",\n", + "}\n", + "df[\"stream\"] = df[\"stream\"].replace(stream_labels)\n", + "\n", + "\n", + "def custom_format(x):\n", + " return f\"{x:.2f}\"\n", + "\n", + "\n", + "df[\"IIA_formatted\"] = df[\"IIA\"].apply(custom_format)\n", + "all_mlp_locations_plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"IIA\", color=\"stream\"))\n", + " + geom_line()\n", + " + geom_point(size=2)\n", + " + geom_text(\n", + " aes(label=\"IIA_formatted\"), nudge_y=0.01, size=8, va=\"bottom\", show_legend=False\n", + " )\n", + " + theme_minimal()\n", + " + ylim(0, 0.72)\n", + " + theme(figure_size=(12, 3))\n", + " + ggtitle(\"Correct IO Name (20) w/ Boundless DAS\")\n", + ")\n", + "\n", + "ggsave(\n", + " all_mlp_locations_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_IO_name_all_mlp_locations_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "all_mlp_locations_plot" + ] + }, + { + "cell_type": "markdown", + "id": "81ae49c5", + "metadata": {}, + "source": [ + "### DAS and Boundless DAS weight matrix and head importance\n", + "DAS-based methods learn a subspace that is a linear combination of axes in the original basis. Will the learned linear combination (i.e., the learned weights) interpretable by showing head's importance when applied on top of the attention value output stream before the head mixing? In this section, we investigate this question for both DAS as well as Boundless DAS when aligning with the name position variable as well as the IO name variable." + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "id": "97b3dc75", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "finding name position at: pos->17, layers->8, stream->attention_value_output\n" + ] + } + ], + "source": [ + "_, boundless_das_intervenable = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [8],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"position\",\n", + " do_boundless_das=True,\n", + " return_intervenable=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "b1f867f7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2023-12-31T14:40:32.676900\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.7.3, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "intervention = boundless_das_intervenable.interventions[\n", + " \"layer.8.repr.attention_value_output.unit.pos.nunit.1#0\"\n", + "][0]\n", + "boundary_mask = sigmoid_boundary(\n", + " intervention.intervention_population.repeat(1, 1),\n", + " 0.0,\n", + " intervention.intervention_boundaries[0] * int(intervention.embed_dim),\n", + " intervention.temperature,\n", + ")\n", + "learned_weights = (intervention.rotate_layer.weight * boundary_mask)[\n", + " :, : math.ceil(intervention.intervention_boundaries[0] * 768)\n", + "]\n", + "headwise_learned_weights = torch.chunk(learned_weights, chunks=12, dim=0)\n", + "\n", + "sampled_weights = [w.cpu().data.flatten().numpy() for w in headwise_learned_weights]\n", + "\n", + "# Assuming your_list is your 2D list where each sublist is a NumPy array\n", + "df = pd.DataFrame(\n", + " [\n", + " (f\"Head {i}\", value)\n", + " for i, sublist in enumerate(sampled_weights)\n", + " for value in sublist\n", + " ],\n", + " columns=[\"Group\", \"Value\"],\n", + ")\n", + "df[\"Group\"] = pd.Categorical(\n", + " df[\"Group\"], categories=[f\"Head {i}\" for i in range(12)], ordered=True\n", + ")\n", + "\n", + "# Plotting\n", + "boundless_das_weight_plot = (\n", + " ggplot(df, aes(x=\"Value\", fill=\"Group\"))\n", + " + geom_histogram(bins=30)\n", + " + facet_wrap(\"~Group\", ncol=3)\n", + " + theme( # Arrange in a grid with 3 columns\n", + " legend_position=\"none\", subplots_adjust={\"wspace\": 0.25, \"hspace\": 0.25}\n", + " )\n", + " + labs(x=\"Value\", y=\"Count\")\n", + ")\n", + "ggsave(\n", + " boundless_das_weight_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_weight_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "print(boundless_das_weight_plot)" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "id": "08306c23", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "finding name position at: pos->17, layers->8, stream->attention_value_output\n" + ] + } + ], + "source": [ + "_, das_intervenable = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [8],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"position\",\n", + " return_intervenable=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "ad25e21c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2023-12-31T14:40:49.383469\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.7.3, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "intervention = das_intervenable.interventions[\n", + " \"layer.8.repr.attention_value_output.unit.pos.nunit.1#0\"\n", + "][0]\n", + "learned_weights = intervention.rotate_layer.weight\n", + "headwise_learned_weights = torch.chunk(learned_weights, chunks=12, dim=0)\n", + "\n", + "sampled_weights = [w.cpu().data.flatten().numpy() for w in headwise_learned_weights]\n", + "\n", + "df = pd.DataFrame(\n", + " [\n", + " (f\"Head {i}\", value)\n", + " for i, sublist in enumerate(sampled_weights)\n", + " for value in sublist\n", + " ],\n", + " columns=[\"Group\", \"Value\"],\n", + ")\n", + "df[\"Group\"] = pd.Categorical(\n", + " df[\"Group\"], categories=[f\"Head {i}\" for i in range(12)], ordered=True\n", + ")\n", + "\n", + "# Plotting\n", + "das_weight_plot = (\n", + " ggplot(df, aes(x=\"Value\", fill=\"Group\"))\n", + " + geom_histogram(bins=30)\n", + " + facet_wrap(\"~Group\", ncol=3)\n", + " + theme( # Arrange in a grid with 3 columns\n", + " legend_position=\"none\", subplots_adjust={\"wspace\": 0.25, \"hspace\": 0.25}\n", + " )\n", + " + labs(x=\"Value\", y=\"Count\")\n", + ")\n", + "ggsave(das_weight_plot, filename=\"./tutorial_data/DAS_weight_plot.pdf\", dpi=200)\n", + "print(das_weight_plot)" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "id": "3991be4d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "finding name position at: pos->17, layers->9, stream->attention_value_output\n" + ] + } + ], + "source": [ + "_, boundless_das_intervenable = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [9],\n", + " \"attention_value_output\",\n", + " aligning_variable=\"name\",\n", + " do_boundless_das=True,\n", + " return_intervenable=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "id": "e1dbc750", + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2023-12-31T14:41:05.795249\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.7.3, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "intervention = boundless_das_intervenable.interventions[\n", + " \"layer.9.repr.attention_value_output.unit.pos.nunit.1#0\"\n", + "][0]\n", + "boundary_mask = sigmoid_boundary(\n", + " intervention.intervention_population.repeat(1, 1),\n", + " 0.0,\n", + " intervention.intervention_boundaries[0] * int(intervention.embed_dim),\n", + " intervention.temperature,\n", + ")\n", + "learned_weights = (intervention.rotate_layer.weight * boundary_mask)[\n", + " :, : math.ceil(intervention.intervention_boundaries[0] * 768)\n", + "]\n", + "headwise_learned_weights = torch.chunk(learned_weights, chunks=12, dim=0)\n", + "\n", + "sampled_weights = [w.cpu().data.flatten().numpy() for w in headwise_learned_weights]\n", + "\n", + "# Assuming your_list is your 2D list where each sublist is a NumPy array\n", + "df = pd.DataFrame(\n", + " [\n", + " (f\"Head {i}\", value)\n", + " for i, sublist in enumerate(sampled_weights)\n", + " for value in sublist\n", + " ],\n", + " columns=[\"Group\", \"Value\"],\n", + ")\n", + "df[\"Group\"] = pd.Categorical(\n", + " df[\"Group\"], categories=[f\"Head {i}\" for i in range(12)], ordered=True\n", + ")\n", + "\n", + "# Plotting\n", + "boundless_das_weight_plot = (\n", + " ggplot(df, aes(x=\"Value\", fill=\"Group\"))\n", + " + geom_histogram(bins=30)\n", + " + facet_wrap(\"~Group\", ncol=3)\n", + " + theme( # Arrange in a grid with 3 columns\n", + " legend_position=\"none\", subplots_adjust={\"wspace\": 0.25, \"hspace\": 0.25}\n", + " )\n", + " + labs(x=\"Value\", y=\"Count\")\n", + ")\n", + "ggsave(\n", + " boundless_das_weight_plot,\n", + " filename=\"./tutorial_data/Boundless_DAS_IO_name_weight_plot.pdf\",\n", + " dpi=200,\n", + ")\n", + "print(boundless_das_weight_plot)" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "id": "855cd01e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "finding name position at: pos->17, layers->9, stream->attention_value_output\n" + ] + } + ], + "source": [ + "_, das_intervenable = find_variable_at(\n", + " gpt2,\n", + " tokenizer,\n", + " [17],\n", + " [9],\n", + " \"attention_value_output\",\n", + " low_rank_dimension=20,\n", + " aligning_variable=\"name\",\n", + " return_intervenable=True,\n", + " debug=True,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "id": "3a50ed9d", + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2023-12-31T14:41:22.615864\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.7.3, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "intervention = das_intervenable.interventions[\n", + " \"layer.9.repr.attention_value_output.unit.pos.nunit.1#0\"\n", + "][0]\n", + "learned_weights = intervention.rotate_layer.weight\n", + "headwise_learned_weights = torch.chunk(learned_weights, chunks=12, dim=0)\n", + "\n", + "sampled_weights = [w.cpu().data.flatten().numpy() for w in headwise_learned_weights]\n", + "\n", + "df = pd.DataFrame(\n", + " [\n", + " (f\"Head {i}\", value)\n", + " for i, sublist in enumerate(sampled_weights)\n", + " for value in sublist\n", + " ],\n", + " columns=[\"Group\", \"Value\"],\n", + ")\n", + "df[\"Group\"] = pd.Categorical(\n", + " df[\"Group\"], categories=[f\"Head {i}\" for i in range(12)], ordered=True\n", + ")\n", + "\n", + "# Plotting\n", + "das_weight_plot = (\n", + " ggplot(df, aes(x=\"Value\", fill=\"Group\"))\n", + " + geom_histogram(bins=30)\n", + " + facet_wrap(\"~Group\", ncol=3)\n", + " + theme( # Arrange in a grid with 3 columns\n", + " legend_position=\"none\", subplots_adjust={\"wspace\": 0.25, \"hspace\": 0.25}\n", + " )\n", + " + labs(x=\"Value\", y=\"Count\")\n", + ")\n", + "ggsave(das_weight_plot, filename=\"./tutorial_data/DAS_IO_name_weight_plot.pdf\", dpi=200)\n", + "print(das_weight_plot)" + ] + }, + { + "cell_type": "markdown", + "id": "d996329f", + "metadata": {}, + "source": [ + "**Findings:** DAS learned weights map very well to head importance! In the plot above, we can see that Heads 6 and 10 have many non-zero entries, indicating that these neurons contribute significantly to aligning with the name position information. Boundless DAS shows a less salient result, suggesting that it learns a more distributed representation." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.ipynb b/_sources/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.ipynb new file mode 100644 index 00000000..53d727ca --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/IOI_with_Mask_Intervention.ipynb @@ -0,0 +1,457 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "a84a6b93", + "metadata": {}, + "source": [ + "## IOI with Masked Interventions" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "85342a5b", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"01/31/2024\"" + ] + }, + { + "cell_type": "markdown", + "id": "e15a59bf", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "This tutorial analyzes the IOI task with a new type of trainable intervention, masked interchange intervention" + ] + }, + { + "cell_type": "markdown", + "id": "d32b1cb3", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "213a933b", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "9decbfe0", + "metadata": {}, + "outputs": [], + "source": [ + "import sys\n", + "sys.path.append(\"../..\")" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "380028cc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import random\n", + "import pandas as pd\n", + "from tutorial_ioi_utils import *\n", + "import pyvene as pv\n", + "\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + " scale_y_reverse,\n", + " scale_fill_cmap,\n", + " geom_text,\n", + " scale_fill_gradient,\n", + " geom_point,\n", + " geom_line,\n", + " theme_minimal,\n", + " ylim,\n", + " ggtitle,\n", + " ggsave,\n", + " labs,\n", + " scale_x_discrete,\n", + " geom_histogram,\n", + " scale_fill_manual,\n", + ")\n", + "\n", + "# please try not to do this, the plot somehow throw warnings though :(\n", + "import warnings\n", + "\n", + "warnings.filterwarnings(\"ignore\")\n", + "\n", + "config, tokenizer, gpt2 = pv.create_gpt2_lm()\n", + "_ = gpt2.eval().to(\"cuda\")" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "2616301d", + "metadata": {}, + "outputs": [], + "source": [ + "train_distribution = PromptDistribution(\n", + " names=NAMES[: len(NAMES) // 2],\n", + " objects=OBJECTS[: len(OBJECTS) // 2],\n", + " places=PLACES[: len(PLACES) // 2],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[:2],\n", + ")\n", + "\n", + "test_distribution = PromptDistribution(\n", + " names=NAMES[len(NAMES) // 2 :],\n", + " objects=OBJECTS[len(OBJECTS) // 2 :],\n", + " places=PLACES[len(PLACES) // 2 :],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[2:],\n", + ")\n", + "\n", + "aligning_variable = \"position\"\n", + "aligning_stream = \"block_output\"\n", + "aligning_pos = 17\n", + "aligning_layer = 8\n", + "\n", + "batch_size = 20\n", + "eval_every = 5\n", + "initial_lr = 1e-4\n", + "n_epochs = 50\n", + "\n", + "if aligning_variable == \"name\":\n", + " # we hacky the distribution a little\n", + " train_distribution = PromptDistribution(\n", + " names=NAMES[:20],\n", + " objects=OBJECTS[: len(OBJECTS) // 2],\n", + " places=PLACES[: len(PLACES) // 2],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[:2],\n", + " )\n", + "\n", + " test_distribution = PromptDistribution(\n", + " names=NAMES[:20],\n", + " objects=OBJECTS[len(OBJECTS) // 2 :],\n", + " places=PLACES[len(PLACES) // 2 :],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[2:],\n", + " )\n", + "else:\n", + " train_distribution = PromptDistribution(\n", + " names=NAMES[: len(NAMES) // 2],\n", + " objects=OBJECTS[: len(OBJECTS) // 2],\n", + " places=PLACES[: len(PLACES) // 2],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[:2],\n", + " )\n", + "\n", + " test_distribution = PromptDistribution(\n", + " names=NAMES[len(NAMES) // 2 :],\n", + " objects=OBJECTS[len(OBJECTS) // 2 :],\n", + " places=PLACES[len(PLACES) // 2 :],\n", + " prefix_len=2,\n", + " prefixes=PREFIXES,\n", + " templates=TEMPLATES[2:],\n", + " )\n", + "\n", + "D_train = train_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\"ABB\", \"BAB\"],\n", + " source_patterns=[\"ABB\", \"BAB\"]\n", + " if aligning_variable == \"position\"\n", + " else [\"CDD\", \"DCD\"],\n", + " labels=aligning_variable,\n", + " samples_per_combination=50 if aligning_variable == \"position\" else 50,\n", + ")\n", + "D_test = test_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\n", + " \"ABB\",\n", + " ],\n", + " source_patterns=[\"BAB\"] if aligning_variable == \"position\" else [\"DCD\"],\n", + " labels=aligning_variable,\n", + " samples_per_combination=50,\n", + ") + test_distribution.sample_das(\n", + " tokenizer=tokenizer,\n", + " base_patterns=[\n", + " \"BAB\",\n", + " ],\n", + " source_patterns=[\"ABB\"] if aligning_variable == \"position\" else [\"CDD\"],\n", + " labels=aligning_variable,\n", + " samples_per_combination=50,\n", + ")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "73234357", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 50/50 [00:17<00:00, 2.78it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'accuracy': 0.58, 'kl_div': tensor(-77.9607, device='cuda:0')}\n", + "bits turned on: tensor(534.7392, device='cuda:0', grad_fn=)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "def calculate_loss_with_mask(logits, labels, intervenable, coeff=1):\n", + " loss = calculate_loss(logits, labels)\n", + " for k, v in intervenable.interventions.items():\n", + " mask_loss = coeff * torch.norm(v[0].mask, 1)\n", + " loss += mask_loss\n", + " return loss\n", + "\n", + "config = pv.IntervenableConfig({\n", + " \"component\": aligning_stream, \"layer\": aligning_layer,\n", + " \"intervention_type\": pv.SigmoidMaskIntervention,\n", + " },\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, gpt2)\n", + "pv_gpt2.set_device(\"cuda\")\n", + "pv_gpt2.disable_model_gradients()\n", + "\n", + "total_step = 0\n", + "optimizer = torch.optim.Adam(\n", + " pv_gpt2.get_trainable_parameters(), lr=initial_lr\n", + ")\n", + "target_total_step = int(len(D_train) / batch_size) * n_epochs\n", + "temperature_start = 1e-2\n", + "temperature_end = 1e-7\n", + "temperature_schedule = (\n", + " torch.linspace(\n", + " temperature_start, temperature_end, target_total_step\n", + " ).to(torch.bfloat16).to(\"cuda\")\n", + ")\n", + "pv_gpt2.set_temperature(temperature_schedule[total_step])\n", + "scheduler = torch.optim.lr_scheduler.LinearLR(\n", + " optimizer, end_factor=0.1, total_iters=n_epochs\n", + ")\n", + "\n", + "for epoch in tqdm(range(n_epochs)):\n", + " torch.cuda.empty_cache()\n", + " for batch_dataset in D_train.batches(batch_size=batch_size):\n", + " # prepare base\n", + " base_inputs = batch_dataset.base.tokens\n", + " b_s = base_inputs[\"input_ids\"].shape[0]\n", + " for k, v in base_inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " base_inputs[k] = v.to(gpt2.device)\n", + " # prepare source\n", + " source_inputs = batch_dataset.source.tokens\n", + " for k, v in source_inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " source_inputs[k] = v.to(gpt2.device)\n", + " # prepare label\n", + " labels = batch_dataset.patched_answer_tokens[:, 0].to(\n", + " gpt2.device\n", + " )\n", + "\n", + " assert all(x == 18 for x in batch_dataset.base.lengths)\n", + " assert all(x == 18 for x in batch_dataset.source.lengths)\n", + " _, counterfactual_outputs = pv_gpt2(\n", + " {\"input_ids\": base_inputs[\"input_ids\"]},\n", + " [{\"input_ids\": source_inputs[\"input_ids\"]}],\n", + " {\n", + " \"sources->base\": aligning_pos\n", + " },\n", + " )\n", + " eval_metrics = compute_metrics(\n", + " [counterfactual_outputs.logits], [labels]\n", + " )\n", + " loss = calculate_loss_with_mask(\n", + " counterfactual_outputs.logits, labels, pv_gpt2\n", + " )\n", + " loss_str = round(loss.item(), 2)\n", + " loss.backward()\n", + " optimizer.step()\n", + " scheduler.step()\n", + " pv_gpt2.set_zero_grad()\n", + " pv_gpt2.set_temperature(\n", + " temperature_schedule[total_step]\n", + " )\n", + " total_step += 1\n", + " \n", + "# eval\n", + "eval_labels = []\n", + "eval_preds = []\n", + "with torch.no_grad():\n", + " torch.cuda.empty_cache()\n", + " for batch_dataset in D_test.batches(batch_size=batch_size):\n", + " # prepare base\n", + " base_inputs = batch_dataset.base.tokens\n", + " b_s = base_inputs[\"input_ids\"].shape[0]\n", + " for k, v in base_inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " base_inputs[k] = v.to(gpt2.device)\n", + " # prepare source\n", + " source_inputs = batch_dataset.source.tokens\n", + " for k, v in source_inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " source_inputs[k] = v.to(gpt2.device)\n", + " # prepare label\n", + " labels = batch_dataset.patched_answer_tokens[:, 0].to(gpt2.device)\n", + "\n", + " assert all(x == 18 for x in batch_dataset.base.lengths)\n", + " assert all(x == 18 for x in batch_dataset.source.lengths)\n", + " _, counterfactual_outputs = pv_gpt2(\n", + " {\"input_ids\": base_inputs[\"input_ids\"]},\n", + " [{\"input_ids\": source_inputs[\"input_ids\"]}],\n", + " {\n", + " \"sources->base\": aligning_pos\n", + " },\n", + " )\n", + " eval_labels += [labels]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + "eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "for k, v in pv_gpt2.interventions.items():\n", + " mask = v[0].mask\n", + " temperature = v[0].temperature\n", + " break\n", + "print(eval_metrics)\n", + "print(\n", + " \"bits turned on: \", \n", + " torch.sigmoid(mask / torch.tensor(temperature)).sum()\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "9ba4df72", + "metadata": {}, + "outputs": [], + "source": [ + "bit_map = torch.sigmoid(mask / torch.tensor(temperature)).tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "485e7a0b", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABkAAAAGQCAYAAAD2lawGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAB7CAAAewgFu0HU+AACi0UlEQVR4nOzdd3xUVf7/8fckISEJhN6kg7CoFKUoNgSBdQFRKWJD0bXurgLqrg11dW2r36+KbVdXXRUBWUURFdsiIIIgSkdQuhQpgYSEkgSS3N8f/DLfmWTKuXfuTZm8no+HDzNzP+ecz23nHubM3OuzLMsSAAAAAAAAAABAHEmo6AQAAAAAAAAAAADcxgQIAAAAAAAAAACIO0yAAAAAAAAAAACAuMMECAAAAAAAAAAAiDtMgAAAAAAAAAAAgLjDBAgAAAAAAAAAAIg7TIAAAAAAAAAAAIC4wwQIAAAAAAAAAACIO0yAAAAAAAAAAACAuMMECAAAAAAAAAAAiDtMgAAAAAAAAAAAgLjDBAgAAAAAAAAAAIg7TIAAAAAAAAAAAIC4wwQIAAAAAAAAAACIO0yAAAAAAAAAAACAuMMECMrVm2++KZ/PJ5/PpzZt2lR0OqgiOG7MPfTQQ/5t1bdv37BxbNP/U7IdfD6f5s2bV9HpxL2cnBz97//+r/r27avGjRurRo0aHIuoErZu3RrUX2zdurWiU6p2+vbt69/+Dz30UEWnA0OcOwAAAKhISRWdAAAAqB7WrVunQYMG6ZdffqnoVAAAAAAAQDXABAj83nzzTV133XVR41JTU1WnTh2deOKJ6tWrly677DKdccYZruaydetWvfnmm/7XfMuv8rn88sv1n//8R9Lxb9Bv3rw5pm9vf/jhhxo2bJj/9cSJEzVu3LhY00Q1sWLFCn344YeSpLp162r8+PEVmg/KKi4u1siRI4MmP1JTU9WkSRMlJiZKklq0aOG4/oceekgPP/yw//WWLVsq5Bcl8+bN8/+SqE2bNrr22mvLPQegvPTt21dff/112OXJyclKTU1Vo0aN1Lx5c3Xq1Em9evXS+eefr7Zt25ZjpgAAAACqKyZAYFteXp7y8vK0e/duLViwQM8++6wGDBigf/3rX679Y3br1q1BH2QxAVL5XHfddf4JEMuyNGnSJD344IOO6wuc8KpRo4auuuqqWFNENbJixQp/n9G6dWsmQCqhzz77TGvXrpV0fNL0X//6l6699lolJcXXUGTevHn+Y/G8885jAgTV2tGjR3X06FHl5ORo48aN+vrrr/XKK69Ikk4//XSNHTtWl19+uX8SFAAAAADcxjNAENYJJ5yg9u3bB/3Xrl07NWnSRD6fLyh29uzZOuecc7Rp06aIdV577bWyLEuWZXH/3ypu4MCBQd/WnjRpkuO69u3bp08//dT/+sILL1TDhg39rzlu3Mc2/T8l28GyrIjPTUFs5syZ4/974MCBuuGGG+Ju8gPxrU2bNkH9Bc+sCZaUlFRm3Ni6dWtlZGSUGTdK0pIlSzR69Gidfvrp+vHHH43amDdvnn/78+WYqoNzBwAAABWJCRCENWXKFG3cuDHov02bNmn37t06ePCgZsyYoS5duvjjf/31V91www0VmDHKU0JCgq6++mr/602bNmnBggWO6poyZYqOHTvmf803poH4s3nzZv/f3bp1q8BMAHihefPmZcaNW7duVU5OjgoLC7V69Wq9+uqrGjRoUNCEyLJly3TGGWfo22+/rcDsAQAAAMQrJkDgSHp6ui655BItWrQoaBJk3rx5/lucIP6Vnqh46623HNUTWK5JkyYaPHhwLGkBqIRyc3P9f6elpVVgJgDKW0JCgjp37qwbbrhBn376qX788Uf17t3bv/zw4cO65JJLtGXLlgrMEgAAAEA84t4TiEl6erruvfdeXXnllf73Fi5cqJNPPrkCswpv+fLlWr16tX799VfVrFlT3bp1U58+fSLee/qHH37Q0qVLtX//ftWpU0ddunTROeeco4QE+/OH27dv1+rVq7Vlyxbl5OQoJSVFDRo0UJcuXXTaaac5qjOUrVu36rvvvtOOHTuUmJio1q1bq3///srIyHCl/hIdO3bU2WefrYULF0qS3n33XT3//PNKTU01rmP16tVavny5//VVV13lym1x8vLytHTpUq1du1bZ2dkqLCxUenq6mjVrphNPPFFdu3ZVjRo1Ym7HDXv27NHq1au1ceNGHThwQAkJCWrQoIE6deqk008/vdLk6bbs7GytWrVK69evV1ZWlizLUoMGDdS+fXudeeaZto6jilBcXKzFixfr559/1t69e1WzZk01adJEZ511llq1auVKGzk5OZo3b562bdumvLw8NWnSRH369CnXhwf/9NNPWrp0qfbs2aOioiI1adJEXbt21amnnmqrnqKiIm8SdFlJ/7l9+3YlJiaqZcuW6t+/v+rVq1ch+axfv96//Y8ePaomTZrotNNOU9euXV2pf8+ePVq4cKF+/fVXHTx4UK1btw66ppenzMxMLViwQLt27VJOTo4aNmzov864dV2YO3eutm7dqtzcXDVq1Ei9e/fWKaec4kL25pYuXao1a9Zo165dqlWrljp27KjzzjtPKSkpjurLzMzU3Llzg47Zs88+W02bNnU5c/ecdNJJmj9/vq655hpNmzZN0vH1uOaaa/TNN9942va2bdu0ePFibd++XUVFRerQoYMGDBig2rVrhy2zZcsWLViwQDt37lRKSoratWungQMHxjSZW5WO92PHjvnH0FlZWSooKFBaWpqaNGmi9u3bq1u3bp5ds48dO6YFCxZo06ZNyszMVO3atdWsWTOde+65aty4sStt7NmzR998843/mDjhhBPUr18/NWvWzHZdubm5+uGHH/Tzzz/rwIEDko7/e6l58+bq2LGjTjnlFNfG+wAAADBkAf/fG2+8YUny/zd37lyjcmvXrg0q99hjjxm10bp16zLLzzvvvKC6ov133nnnlakj1Dr897//tbp27RqyjjZt2liff/55mXo+/vhjq1OnTiHLtG3b1po9e7bR9lm0aJH1pz/9yWrbtm3Edalfv7718MMPWwcPHjSqN3Bb/fWvf7Usy7J+/vlna+DAgZbP5ytTf82aNa0//elPxvWbeu2114LamTJliq3yd9xxR1D51atXl4mJdtwEys7Otm677TYrIyMj4vZOTU21hgwZYv3www8h6xkzZow/dsyYMUbrsmXLlqA2tmzZEjZ29erV1l133WWddNJJEfNMT0+3br/9dmvv3r1GOfz1r3+NeH6UMNmmgdvAyX+hbN682frb3/5mnXbaaVZCQkLYssnJydZ1111nbd26NeL6tm7d2lZOofal3X7vyJEj1sMPP2w1bNgwbDs9e/a0/vvf/0aty7JCH2u5ubnWTTfdZKWmpoasf+DAgdb69euN6ndq6tSpVseOHcOuY8uWLa2XXnrJKiwsDFuH3f0Ti8BjP9r5F5jXG2+8YVmWZa1fv9767W9/G7L/TExMtP7whz9Yubm5Yeu0e36U9NuhFBUVWa+99prVoUOHsOVPPPFEa9q0aUbbJtT1YsOGDdbgwYOtxMTEoHrr1KljWZZlDRw40P9enz59jNopsWvXrqB6X3nllYjxc+fOtc4555ywfULJ9TE/Pz9q26H6wIKCAuuee+6x6tatG/Z8/f7776PWbdrHh4ubNWuW1blz55A51K1b15o4cWLUHALt2rXLuuyyy6ykpKQy9SUlJVkjR460fv31V8uynF3TTAQeW9Guz6EcPny4zDaJ1A+HOpZN4zZv3mz97ne/C3mc1a5d23r66afL1LN27dqgc6F0meeff972OleV492yLCsvL8964IEHrEaNGkXsz2rUqGH17dvX+vLLL0PWY2d8VCIrK8saN25c2PFcQkKC1a9fP+N1CXVM7Nq1y7r00ktDnkM+n88aNWqUtWvXLqP6d+zYYV199dVWzZo1I26r2rVrW5deeqm1ceNGo3oBAAAQOyZA4Od0AmT16tVB5SL9A74iJkCee+65iB+0Ssc/3Jo+fbq/jkcffTRq2zVq1Ag5cVJagwYNbK1T165dre3bt0ett/Q/5L766quoH/pLsjp27Gj8jzkTubm5Vlpamr/+3/72t8Zljx07ZjVp0sRftkePHiHjTCdAtmzZYvsD12effTZkXV5PgPTo0cNWnq1atQo5OVRaZZ8AGTFihK066tWrZ82bNy/sepT3BMgvv/wScVKg9H9jx461iouLI9ZZ+ljbsmWLURuNGjWy1q5dG7FuJ/Lz861LLrnEeB3POecc68CBAyHrqioTIJ9//rlVu3btqPn17t3bOnToUMg67Z4f4T68zczMtHr37m1cz9VXXx1xEsqyyl4vPvvss7DrWzIB8uabb/rf8/l81i+//GKyGyzLsqxnn33WXzY5OdnKysoKGVdYWGjdfPPNxuvarVu3qJPBpfvArKws64wzzohad1pamvX1119HrDuWCZBHH3005ORa6f/+9Kc/GW3j1atXR5yELfmvWbNm1sqVKyvtBIhlHf/CSWDOQ4YMMWrPzgTI/PnzrXr16kXdXuPGjfPX8eWXXwaNb8L998ADDxitZ1U73vfv32+ddtpptvq1wO0XyO4EyIoVK4LGh5H+S0hIsJ566qmI9VlW2WNi6dKlVtOmTaPWf+KJJ0YdNy9dutTo+Ar8b8aMGVFzBgAAgDu4BRZitnjx4qDXgc8Esat58+Zq37698vLy9Ouvv/rfb9++fdj4SP773//q73//u4qLi9WpUycNHz5cbdu21ZEjRzR79mx9/PHHko7fmuX3v/+9zj33XH322We6//77JSmoTF5enmbPnq2PPvpI0vGf5F977bVav359xNsmlEhMTFTv3r11+umnq3Xr1qpTp44OHTqk1atX68MPP9TevXslSatWrdKIESO0cOFC41sg7Nq1S5dffrlyc3OVmpqqESNGqFevXkpJSdG6des0bdo07dmzR9Lx26n89re/1XfffefK7Qpq166tESNG6O2335YkzZ49Wzt37oy6byTp888/9+clxfbwc8uyNGrUKP3yyy/+93r06KGBAweqTZs2qlmzpnJzc/XLL79o6dKlWrBggQoLCx235xafz6fu3burd+/eat++verWrau8vDz99NNP+vjjj7V161ZJx2/ZMXToUK1cudL1W5mFU3JrC1M7d+5Ufn6+cfzJJ5+sM888UyeddJLq1auno0ePavPmzZo1a5b/WULZ2dm6+OKLtWrVqpC3lWrTpo2SkpJ08OBB/zmUlJSk1q1bh10np/bt26c+ffoEHWMtW7bUZZddpo4dO+rIkSNatGiRPvzwQxUUFEiSnn/+efl8Pk2cONGojSNHjujiiy/W+vXrVbNmTV100UXq3bu36tSpo507d+rdd9/VmjVrJP3f7WK+++47126nYVmWRo4cqU8++cT/Xu3atXXppZfqtNNOU1JSktasWaNp06Zp//79kqQFCxZo4MCBWrBggZKTk4PqK9k/UvDxUa9ePdWvX9+VnGO1bt06jR07VgcPHlTjxo01YsQInXLKKf7+c/Lkyf5ja/Hixbr//vv17LPPlqmn5FzJyspSdna2JKlmzZph+8JQ679//36dc845+vnnn/3vtWjRQpdccok6deqklJQUbdy4Ue+9957/ofJvv/22UlNT9corrxit7+bNm/Xcc8/p4MGDysjI0PDhw3XqqacqPT1dO3bs0H//+19J0vDhw/WHP/xBeXl5sixL77zzju6++26jNqZMmeL/e/DgwSFvH2ZZli6//HJNnz7d/16tWrV00UUXqVevXsrIyNDu3bv1ySefaNGiRZKklStXasCAAVqyZInR7aKKi4t1xRVX6LvvvlNiYqIGDRqkPn36qEGDBsrMzNSHH37oH8McOXJEo0eP1tq1a1WrVi2j9TQ1efJkPfDAA5KO3/rp4osvVrt27XTs2DEtWbJE77zzjo4ePSpJeumll/Tb3/5WF110Udj69uzZo4EDB2rf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yScHffP+nnvucfWXIN27d9dll13mfz1jxgz98Y9/DHmsrV27Vr/73e+Cvrn6P//zP67l4pXk5GQ98sgj/tdbtmzRkCFDQt4CLjs7WyNGjAh6BsFdd90V9Muq6qpXr17+vuDIkSN64IEHjD68HDJkiEaMGOF/ffXVV+vhhx/W4cOHI5bbsWOHnn76abVv397zB13XqlVLl1xyif/1Cy+8oAULFvhfm06qN2rUKOhXCa+88opGjhwZ9fkIubm5mjJlis4888ygD86rk9TUVD3zzDP+1/v27dOZZ56p119/PehYWb9+vX7/+9/rvvvuU0JCQplnUZS34uJi/fjjj3r99dc1ePBgnXzyyUFjklq1amnmzJlx+YFwVTzeH3zwQfXo0UOTJk3yP88ulPz8fN14443+sYJ0fBLCqUsuuURnnXWW//XEiRP1yCOPhPwV7MKFC3XxxRf7l6WkpOjRRx913LZT/fr107Bhw/TFF18E/eqztJ07d+qmm27yv27WrFnMXxgDAACAmaToIaiurrrqKv831gIdPXpU+/btU15eXpllY8eO1TXXXONK+9dee63/vtBfffWVmjZtqjZt2qh27dr+mJ49e+q1115zpT231ahRQ3fccYcefPBBSce/7XjyySfr8ssvV/fu3VWjRg1t27ZNn3zyif85AQMHDlR+fr6++eYbW23deOONmjFjhn788Ud16dJFI0eO1Omnn67k5GT99NNPeuedd7R7925/fJcuXTRhwgT3VjaElJQUXXHFFfrnP/9ZZlngr0PcYlmW5s2bp7lz5yojI0Nnn322evTooWbNmik9PV0HDhzQqlWrNGPGjKB/qE+YMCHsN5YffPBB/weSmZmZ6tGjh6688kr16tVLSUlJ2rp1qz788EP/w2Uffvhh/fWvf42a69133+0/T/bs2aMePXpoxIgROvPMM5Wenq5ff/1VX375pebPny/p+P7q1KmT3nvvvZi2kR179+4Neli7z+fTqFGjbNWxcePGoNd33XWX/5cfhw8f1vnnn6+hQ4eqb9++qlu3rjIzMzV37lx98cUXKi4u1gknnKCLLroo6PYW4SQnJ+vKK6/Uv/71L0nHb7v27rvvqk2bNkG/PLnooov0t7/9zdZ6lHjxxRe1ePFi/7c9X375ZX366ae67LLL1KFDB+Xl5WnRokWaMWNG0MTIuHHjgp6dUJndfPPN+uSTT/z76dtvv1WnTp00atQonXbaaUpKStKaNWs0bdo07du3z1+uV69eUb+pW100b95cAwcO9P8y8qmnntLzzz+vNm3aKCUlxR93yy236JZbbgkq++9//1sbN27UypUrVVRUpIceekjPPfecfve736l79+6qX7++ioqKlJ2drZ9//llLly7VypUry3X9Ro8eralTp0o6PklWok6dOrZuq3jrrbdq+fLl/m9vv//++/roo480YMAAnXnmmWratKmSkpJ04MABbd26VStWrNDixYv9v6gJ/KZ4dXPFFVdowYIF/mcz7d+/XzfccINuueUWNWnSREeOHAm6zt11113atWuXfv75Z0ny7Dk9O3fuLPMg68LCQh04cEC5ublhfzVX8kH7ySef7ElelUFVPN6XLVumMWPG6JZbbtGZZ56pXr16qXnz5srIyNChQ4e0du1azZgxQ7t27fKX+f3vfx/TfkxISNAbb7yh3r17+4/hBx98UO+8845Gjhyp1q1bKycnR3PnztVnn30WNOHw97//PegLJuWluLhYH374oT788EM1bNhQZ599trp3767GjRsrNTVV+/fv1w8//KCZM2fqyJEj/nJPPvlkhd0KFgAAoLphAgRhmT74WZLq1aunJ598UjfeeKNr7d95552aPXu25syZI+n4PzA2b94cFBP4C4PK6N5779WCBQv8H4QdPHhQr776asjY7t27a+rUqRo5cqTtdpo2bapp06bpkksuUW5urt5++229/fbbIWM7dOigL774IuTkltuuu+66MhMgaWlptj9Itys3N1efffZZ0MOZQ/njH/+o+++/P+zy4cOH65ZbbvF/AF9QUKA33nhDb7zxRlCcz+fTQw89pGuuucZoAuTqq6/WvHnz/B+EFBQUaOrUqf4PFQO1a9dOH3zwQYV8qzHQ4cOHQ/66yI4+ffoETRIVFxdr5syZZZ4hJB3/xuwHH3wQdR8GeuKJJ7Ro0SL/LSaOHTtW5tYwp556quP8GzZsqPnz52vgwIH+yaFt27ZF/HXHbbfdpmeffdZxm+XN5/Pp/fff16hRo/TRRx9JOt5vRXruy9lnn61Zs2YpOTm5vNKs9P75z3+qX79+/tvI5Ofn66effgqKCZyULpGRkaEFCxboqquu8m//7OxsvfPOO0a3xCqPD9MGDhyoxo0ba+/evUHvjxw5MmiCx8Tr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Y2OdIPF0AkSSJk+erEGDBmn+/PmyLEtz587V3LlzQ8aWPPz8vPPO09tvv+11atDxbV5yUcdxJtsjXIyTbRk4qApXV6R6TePsxJu2F+n9aLm4sb52Y53kFS0/p+sRqQ2nx6CT/eZ2XbG0ZWdZtP0US/4mcSbbLNqxYLLeXrdtEh9LLrH0pyblTcraPXZMlFe/40ZbXrUdKsbpNoz13K/o/WHnXI7lnHFz39qJcRLvZr12zlk3x2FO8qqoY8F0mWnbdut0a/+ZtFU6xo0+vXQZN64bbq63W/vLydgp1nGx07adjEu82Iam5Zweh15f07zo403bi/UccHNsGi3OzWubm2MnO9vEtO1Y6jepx4u8nMaEirN77XXj2ujV+nhx/TN53+vzz819G21ZeYwhnNTrpP144PV6e/7wh9TUVM2ZM0dPPvmkmjZtKsuywv7XrFkz/c///I+++uorpaamep0aAAAAAAAAAACIU57/AkSSEhIS9Je//EW33367vv32W3333XfatWuXDh48qNq1a6tZs2Y644wzdNZZZykpqVxSAgAAAAAAAAAAcaxcZxuSkpLUp08f9enTpzybBQAAAAAAAAAA1Yznt8ACAAAAAAAAAAAob55OgOzatUs9evRQjx499NlnnxmV+fzzz9W9e3f16tVL+/fv9zI9AAAAV40dO7aiUwAAAAAAAP+fpxMgU6dO1fLly7Vlyxb179/fqMz555+vbdu2admyZZo6daqX6QEAAAAAAAAAgDjl6QTInDlz5PP5NGTIECUnJxuVSU5O1oUXXijLsvTf//7Xy/QAAAAAAAAAAECc8nQCZPXq1ZKk008/3Va5nj17BpUHAAAAAAAAAACww9MJkL1790qSmjVrZqtckyZNJEl79uxxPScAAAAAAAAAABD/kjytPClJx44dU0FBga1yR48elSRZluVFWiHl5ORo+vTpWrJkifbv36+UlBS1b99egwcPVu/evW3Xd+TIEX333XdasWKFNm7cqL1796q4uFj16tVTp06dNGjQIJ1yyilhy0+cOFFz5syJ2EarVq304osv2s4NAAAAAAAAAIB45+kESKNGjbRt2zb9/PPPtsr99NNPkqSGDRt6kVYZ27Zt04QJE5STkyNJSk1N1eHDh7VixQqtWLFCQ4cO1Y033mirzttvv127du3yv05OTlZCQoL27t2rvXv3av78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jv9S+YorrlDt2rUlHf+c4LTTTtNdd90l6fitAH/88Ud/uQMHDvg/Nxg9erQuuOACJSUd/01G586dde+998rn8+nHH3/UDz/8UKbd999/X4cPH1b9+vU1YcIENWvWTNLx/vymm25Sz549ZVmWJk2aFDZ3JkBQLZWctH369FGjRo3KLB8xYoR8Pp+ysrK0evXqcs4OACpWenq62rVrF3Z5vXr11KNHD0nSpk2bgpatWrVK2dnZ8vl8Gj58eJmyjRs3Vp8+fST9X18ciP4ZQHWydu1affnll+rQoYP/w7Fw6F8BILqvvvpK+/btU4MGDcpMckRCHwsAkWVnZ0uSTjzxxJDL27Ztq8TEREny39pKkr799lsdPXpUaWlpGjx4cJlyHTp08N8yq3T/almW5s+fL0kaNGiQ0tLSypQfOXKkJGnDhg3auXNnyNyYAEG1k5eXpw0bNkg6fnuXUBo1aqQWLVpIklauXFluuQFAVVHyq5CioqKg91etWiVJatmyZch//EnSaaedJkn6+eefgwZG9M8AqpNjx47pxRdflM/n0x//+EclJET+pxn9KwBEV/Lh2VlnnVXmNlWR0McCQGRNmjSRJG3cuDHk8i1btqioqEgJCQn+X8FJ/9e/nnzyyUG3xQpU0r+W7h+3b9/un3gJ17/+5je/8U+MhOtfmQBBtbNjxw7/g31bt24dNq5k2fbt28slLwCoStasWSOpbD9a0mea9K+WZQXd657+GUB18t5772nHjh0aMmSI2rdvHzWe/hUAIjt69Kg2b94sSWrfvr127Nihp59+Wtdcc42GDx+u66+/XhMnTtS2bdvKlKWPBYDILrjgAknSnDlzNG3aNB08eFDS8S9FrlixQk899ZSk47cRLLlNlWSvf83JyVFubq7//cD+OvB2hoESExP9E8zh+lcego5qJysry/93/fr1w8aVLCuZaQQAHLd48WL/tz769+8ftKykjzXpX6XgPpb+GUB1sX37dk2fPl3169c3vkUL/SsARLZ3717/8zV+/fVX/fOf/1RBQYGSk5OVnJyszMxMzZkzR998841uv/12nXPOOf6y9LEAENmFF16ozMxMffzxx5o6daqmTp2qtLQ05efnq7i4WM2bN9fNN9+sIUOGBJUr6fPs9K8ld5woKVurVq2wvx4JLB+uf2UCBNVO4E9VI508Jcvy8vI8zwkAqorM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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 800 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Convert the list to a DataFrame\n", + "df = pd.DataFrame({'Value': bit_map, 'Index': range(len(bit_map))})\n", + "\n", + "# Create a barplot\n", + "plot = ggplot(df, aes(x='Index', weight='Value')) + geom_bar() + \\\n", + " ggtitle('Bitmap Visualization of Intervening Dimensions') + \\\n", + " theme(figure_size=(8,2))\n", + "\n", + "print(plot)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "968049e5", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/advanced_tutorials/Interventions_with_BLIP.ipynb b/_sources/tutorials/advanced_tutorials/Interventions_with_BLIP.ipynb new file mode 100644 index 00000000..6f895660 --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/Interventions_with_BLIP.ipynb @@ -0,0 +1,1197 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "92f4cb49-4783-4df0-a4e8-e4b6f6604053", + "metadata": {}, + "source": [ + "# Intervening on Vision-Language Models\n", + "\n", + "This is a quick tutorial for running interventions on the decoder component of BLIP for visual question answering (support for the text/image encoders TBD). This is partially based on an earlier paper I was on, [\"Towards Vision-Language Mechanistic Interpretability: A Causal Tracing Tool for BLIP\" (Palit et al., 2023)](https://arxiv.org/abs/2308.14179)." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "5b0594d1-5c40-4c73-9e44-eaff19c2d683", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Aryaman Arora\"\n", + "__version__ = \"12/27/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "83f5c64d-5591-47b2-9ae7-e479470379c5", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "de032ff0-cbb7-4b9a-8f60-27e937e3f39c", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "a89edbd1-0821-4d1e-b1e1-3694451d3733", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "import pandas as pd\n", + "\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " VanillaIntervention, Intervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene import create_blip\n", + "from pyvene.models.blip.modelings_blip import BlipWrapper\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")\n", + "from plotnine.scales import scale_y_reverse, scale_fill_cmap\n", + "from tqdm import tqdm\n", + "from PIL import Image\n", + "import requests\n", + "from functools import partial" + ] + }, + { + "cell_type": "markdown", + "id": "623307c7-3237-46eb-b74c-65e214203140", + "metadata": {}, + "source": [ + "## Load model and test inference\n", + "\n", + "We'll load BLIPForQuestionAnswering and use a special `BlipWrapper` to enable easy access of decoder logits; this doesn't modify the model's computations in any way." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "8d6ebae3-6916-40c9-8775-928e368043c9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "BlipWrapper(\n", + " (model_vis): BlipVisionModel(\n", + " (embeddings): BlipVisionEmbeddings(\n", + " (patch_embedding): Conv2d(3, 768, kernel_size=(16, 16), stride=(16, 16))\n", + " )\n", + " (encoder): BlipEncoder(\n", + " (layers): ModuleList(\n", + " (0-11): 12 x BlipEncoderLayer(\n", + " (self_attn): BlipAttention(\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " (qkv): Linear(in_features=768, out_features=2304, bias=True)\n", + " (projection): Linear(in_features=768, out_features=768, bias=True)\n", + " )\n", + " (layer_norm1): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n", + " (mlp): BlipMLP(\n", + " (activation_fn): GELUActivation()\n", + " (fc1): Linear(in_features=768, out_features=3072, bias=True)\n", + " (fc2): Linear(in_features=3072, out_features=768, bias=True)\n", + " )\n", + " (layer_norm2): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n", + " )\n", + " )\n", + " )\n", + " (post_layernorm): LayerNorm((768,), eps=1e-05, elementwise_affine=True)\n", + " )\n", + " (model_text_enc): BlipTextModel(\n", + " (embeddings): BlipTextEmbeddings(\n", + " (word_embeddings): Embedding(30524, 768, padding_idx=0)\n", + " (position_embeddings): Embedding(512, 768)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (encoder): BlipTextEncoder(\n", + " (layer): ModuleList(\n", + " (0-11): 12 x BlipTextLayer(\n", + " (attention): BlipTextAttention(\n", + " (self): BlipTextSelfAttention(\n", + " (query): Linear(in_features=768, out_features=768, bias=True)\n", + " (key): Linear(in_features=768, out_features=768, bias=True)\n", + " (value): Linear(in_features=768, out_features=768, bias=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (output): BlipTextSelfOutput(\n", + " (dense): Linear(in_features=768, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " (crossattention): BlipTextAttention(\n", + " (self): BlipTextSelfAttention(\n", + " (query): Linear(in_features=768, out_features=768, bias=True)\n", + " (key): Linear(in_features=768, out_features=768, bias=True)\n", + " (value): Linear(in_features=768, out_features=768, bias=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (output): BlipTextSelfOutput(\n", + " (dense): Linear(in_features=768, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " (intermediate): BlipTextIntermediate(\n", + " (dense): Linear(in_features=768, out_features=3072, bias=True)\n", + " (intermediate_act_fn): GELUActivation()\n", + " )\n", + " (output): BlipTextOutput(\n", + " (dense): Linear(in_features=3072, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " )\n", + " )\n", + " )\n", + " (model_text_dec): BlipTextLMHeadModel(\n", + " (bert): BlipTextModel(\n", + " (embeddings): BlipTextEmbeddings(\n", + " (word_embeddings): Embedding(30524, 768, padding_idx=0)\n", + " (position_embeddings): Embedding(512, 768)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (encoder): BlipTextEncoder(\n", + " (layer): ModuleList(\n", + " (0-11): 12 x BlipTextLayer(\n", + " (attention): BlipTextAttention(\n", + " (self): BlipTextSelfAttention(\n", + " (query): Linear(in_features=768, out_features=768, bias=True)\n", + " (key): Linear(in_features=768, out_features=768, bias=True)\n", + " (value): Linear(in_features=768, out_features=768, bias=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (output): BlipTextSelfOutput(\n", + " (dense): Linear(in_features=768, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " (crossattention): BlipTextAttention(\n", + " (self): BlipTextSelfAttention(\n", + " (query): Linear(in_features=768, out_features=768, bias=True)\n", + " (key): Linear(in_features=768, out_features=768, bias=True)\n", + " (value): Linear(in_features=768, out_features=768, bias=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " (output): BlipTextSelfOutput(\n", + " (dense): Linear(in_features=768, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " (intermediate): BlipTextIntermediate(\n", + " (dense): Linear(in_features=768, out_features=3072, bias=True)\n", + " (intermediate_act_fn): GELUActivation()\n", + " )\n", + " (output): BlipTextOutput(\n", + " (dense): Linear(in_features=3072, out_features=768, bias=True)\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " (dropout): Dropout(p=0.0, inplace=False)\n", + " )\n", + " )\n", + " )\n", + " )\n", + " )\n", + " (cls): BlipTextOnlyMLMHead(\n", + " (predictions): BlipTextLMPredictionHead(\n", + " (transform): BlipTextPredictionHeadTransform(\n", + " (dense): Linear(in_features=768, out_features=768, bias=True)\n", + " (transform_act_fn): GELUActivation()\n", + " (LayerNorm): LayerNorm((768,), eps=1e-12, elementwise_affine=True)\n", + " )\n", + " (decoder): Linear(in_features=768, out_features=30524, bias=True)\n", + " )\n", + " )\n", + " )\n", + ")" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "device = \"cuda:0\" if torch.cuda.is_available() else \"cpu\"\n", + "config, processor, blip = create_blip(\n", + " cache_dir=\"/nlp/scr/aryaman/.cache/huggingface/hub\" # change to your local dir\n", + ")\n", + "blip = BlipWrapper(blip)\n", + "blip.to(device)" + ] + }, + { + "cell_type": "markdown", + "id": "ceacfe2a-6059-4b20-ab6a-a036340a4ae6", + "metadata": {}, + "source": [ + "Now testing some QA on a simple image." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "21595cd9-c753-4acc-9129-590c817102d4", + "metadata": {}, + "outputs": [ + { + "data": { + "image/jpeg": "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", + "image/png": "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", + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "img_url = \"http://images.cocodataset.org/train2017/000000458864.jpg\"\n", + "raw_image = Image.open(requests.get(img_url, stream=True).raw).convert(\"RGB\")\n", + "raw_image" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "c94c1c2f-d051-4606-9a1f-9b2015fac033", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "what is the color of the shirt \n", + "----\n", + "torch.Size([1, 9])\n", + "torch.Size([1, 1, 30524])\n", + "red 2417 10.64493 61.74%\n", + "white 2317 9.11390 13.35%\n", + "pink 5061 8.10488 4.87%\n", + "green 2665 7.13710 1.85%\n", + "blue 2630 6.71536 1.21%\n", + "gray 3897 6.63115 1.12%\n", + "black 2304 6.52738 1.01%\n", + "brown 2829 6.42861 0.91%\n", + "maroon 22222 6.03666 0.62%\n", + "multi 4800 5.35350 0.31%\n", + "what is the color of the animal \n", + "----\n", + "torch.Size([1, 9])\n", + "torch.Size([1, 1, 30524])\n", + "brown 2829 11.42929 88.94%\n", + "red 2417 6.36936 0.56%\n", + "reddish 14182 5.54194 0.25%\n", + "dark 2601 5.49398 0.24%\n", + "tan 9092 5.24055 0.18%\n", + "light 2422 5.15968 0.17%\n", + "brownish 19437 4.64057 0.10%\n", + "orange 4589 4.52101 0.09%\n", + "rust 18399 4.26794 0.07%\n", + "it 2009 4.12371 0.06%\n" + ] + } + ], + "source": [ + "def top_vals(tokenizer, res, n=10):\n", + " \"\"\"Pretty print the top n values of a distribution over the vocabulary\"\"\"\n", + " probs = res.softmax(-1)\n", + " top_values, top_indices = torch.topk(res, n)\n", + " for i in range(len(top_values)):\n", + " tok = format_token(tokenizer, top_indices[i].item())\n", + " print(\n", + " f\"{tok:<20} {top_indices[i]:>10} {top_values[i]:>10.5f} {probs[top_indices[i]]:>10.2%}\"\n", + " )\n", + "\n", + "\n", + "question = \"what is the color of the shirt\"\n", + "print(question, \"\\n----\")\n", + "inputs = processor(raw_image, question, return_tensors=\"pt\").to(device)\n", + "print(inputs[\"input_ids\"].shape)\n", + "\n", + "out = blip(**inputs)\n", + "print(out[\"decoder_logits\"].shape)\n", + "top_vals(processor, out[\"decoder_logits\"][0, 0])\n", + "\n", + "question = \"what is the color of the animal\"\n", + "print(question, \"\\n----\")\n", + "inputs = processor(raw_image, question, return_tensors=\"pt\").to(device)\n", + "print(inputs[\"input_ids\"].shape)\n", + "\n", + "out = blip(**inputs)\n", + "print(out[\"decoder_logits\"].shape)\n", + "top_vals(processor, out[\"decoder_logits\"][0, 0])" + ] + }, + { + "cell_type": "markdown", + "id": "39385935-31a7-482a-8a80-955ca4184a3e", + "metadata": {}, + "source": [ + "## Vanilla intervention\n", + "\n", + "Let's see at what transformer blocks and position we can swap activations in order to make the model tell the colour of the shirt instead of the animal." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "522ef638-f410-4f0d-b10d-9ec74522525e", + "metadata": {}, + "outputs": [], + "source": [ + "def simple_position_config(model_type, intervention_type, layer):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " intervention_type, # intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " ),\n", + " ],\n", + " intervention_types=VanillaIntervention,\n", + " )\n", + " return config\n", + "\n", + "\n", + "base = processor(raw_image, \"what is the color of the animal\", return_tensors=\"pt\").to(\n", + " device\n", + ")\n", + "sources = [\n", + " processor(raw_image, \"what is the color of the shirt\", return_tensors=\"pt\").to(\n", + " device\n", + " )\n", + "]" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "ada2d0a6-c33c-43be-8787-98fd2fbaff8a", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:15<00:00, 1.32s/it]\n" + ] + } + ], + "source": [ + "data = []\n", + "with torch.inference_mode():\n", + " for layer_i in tqdm(range(12)):\n", + " for pos_i in range(9):\n", + " config = simple_position_config(\n", + " type(blip), \"block_output\", layer_i\n", + " )\n", + " intervenable = IntervenableModel(config, blip)\n", + " _, counterfactual_outputs = intervenable(\n", + " base, sources, {\"sources->base\": ([[[pos_i]]], [[[pos_i]]])}\n", + " )\n", + " logits = counterfactual_outputs[\"decoder_logits\"][0, 0]\n", + " # top_vals(processor, logits, n=1)\n", + " logits = logits.softmax(-1)\n", + " p_brown = logits[2829]\n", + " p_red = logits[2417]\n", + " data.append(\n", + " {\n", + " \"layer\": layer_i,\n", + " \"pos\": pos_i,\n", + " \"p(brown)\": p_brown.item(),\n", + " \"p(red)\": p_red.item(),\n", + " }\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "43ecf650-b39b-448b-a6fd-76a09cf992b7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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gH61cOHCfOxjH0uSnHvuuWlubq7zRLV1/vnnZ/z48Zk3b14+9alP1XucjQiAAAAAAPSrT33qU1m8eHFGjRqV888/v97j1NwWW2yR97znPUmSz372s3nxxRfrPNH6BEAAAAAA+s3SpUvzhS98IUnyV3/1V9lyyy3rPNHA+Nu//dtUKpUsXbo0X/ziF+s9znoEQAAAAAD6zQ033JCXXnopSTJt2rT6DjOAdt999xx22GFJki984Qtpb2+v80R/JgACAAAAlFhnd7l94okncu6552bPPffMmDFj0tzcnEMPPTSf+cxn0trausnjrb0T7pZbbpmjjjpqk/uufd21+7300kv5+Mc/nkMPPTSTJk1KQ0NDl8f44Q9/mHe84x3ZfffdM27cuDQ1NWXXXXfNmWeemTvuuKPb7/+2227LKaecku222y6jRo3K5MmT89a3vjU//elPu32MtU499dQkyR//+McezVBrw+o9AAAAAACDx7e+9a28613vSktLS8f3Wlpact999+W+++7Ll7/85cyYMSM777zzRs+dO3du/ud//idJcvjhh6exsbHbr/t///d/OfnkkzNr1qxN7jd79uy87W1vy7333rvRtmeffTbPPvtsbrjhhpx66qm5/vrr09TU1Olx2tvb87d/+7e59tprNzr+7Nmz873vfS/nn39+Tj755G6/h3Vj5S233JJjjz2228+tJQEQAAAAgCTJb37zm1xxxRVZtWpV3v72t+foo4/O6NGj8+ijj+arX/1q5s6dm8cffzxvfOMb83//93+ZMGHCes+/7bbbOh4feuih3X7dF198MSeddFJmz56dN73pTTnhhBOyzTbb5Pnnn8+8efM69ps9e3Ze+9rXZu7cuUmS17zmNTn55JOz++67p6GhIU888USuv/76PP3007n55puzbNmy/PjHP06lUtnoNS+88MKO+NfY2JgzzjgjRx11VEaOHJkHHnggX/nKV3LVVVdl9uzZ3X4f+++/f5qamtLS0pIZM2Z0+3m1JgACAAAAkCT50Y9+lKampsyYMWOjU28/8IEP5Pjjj8+9996bZ555JhdffPFGN7u47777Oh6/9rWv7fbrPvLII2lsbMz06dNzxhlndLpPtVrN2972tsydOzeNjY35whe+kLPPPnuj/f7xH/8xZ511Vm666abMmDEjX/nKV/Lud797vX3uueee/Md//EeSZMyYMZkxY0Ze//rXd2x/+9vfngsvvDBTpkzJLbfc0u330djYmIMPPjj//d//nT/84Q95/vnns+2223b7+bXiGoAAAAAAdLjiiis6ve7eFltske985zsZO3ZskjXX+ps/f/56+zz88MMdj/faa68eve4555zTZfxL1lzzb+1pv5dddlmn8S9JRo4cma9//evZZZddkiSf/vSnN9rn05/+dKrVapLk4x//+Hrxb63tttsu3/rWt3p0GnOSvOpVr+p4/NBDD/XoubUiAAIAAACQZE3k6yqsJckOO+zQEelaW1vzwx/+cL3tzz77bMfjiRMn9ui1zzvvvE1u//rXv55kTeDb3L4jRozI6aefniR5/PHH17uuYGtra2699dYkyYQJEzZaHbiu/fffv8fX8Vv3fa/796OenAIMAAAAQJLk9a9/fUaNGrXJfY455ph86UtfSpL8+te/zrve9a6ObQsXLkySNDU1bfY469p+++2z2267bXKfX/ziF0mSbbbZJj/72c82e8xFixZ1PJ45c2YmT56cJHnwwQezcuXKJGtuVDJy5MhNHufoo4/OT37yk82+3lpbbrllx+O1fz/qTQAEAAAAIEmyxx579GifOXPmrLettbU1STJu3Lgeve6OO+64ye3Lli3LggULkiSzZs3KKaec0qPjrxvi1p1599133+xzu7PPusaPH9/xePny5T16bq04BRgAAACAJGtuiNGTfV5++eX1tq1dTbdkyZIeve7o0aM3uf2ll17q0fE2tHbFX5IsXbq043FTU9Nmn9udvyfrWrx4ccfjzb2vgWIFIAAAAABJ1qy068k+G67023LLLfPcc89l+fLlWbFiRY9OA96UtTceSZIDDzwwv/nNb/rlWC0tLZvdvzt/T9b14osvdjzu6XUQa8UKQAAAAACSJE899VSP9tl+++3X27brrrt2PO7P699NmDChI9w999xzfTrWDjvs0PG4p++3O9Z932vvRFxvAiAAAAAASZK777674zp+Xbnjjjs6Hr/2ta9db9t+++3X8fixxx7r19mOPPLIJMm8efP6tAJw//337zhV+Z577tns+73zzjt7dPyZM2d2PD7ggAN6PmANCIAAAAAAJFlzrb1rr722y+1z587NDTfckGTN9f6mTp263vZDDz204/F9993Xr7NNmzat4/Gll16aarXaq+OMHDkyxx9/fJI11+v76le/2uW+jzzySH760592+9irV6/uiJO77LJLttlmm17N2N8EQAAAAAA6XHzxxfnFL36x0feXLFmSv/7rv+648cc73/nObL311uvtc+yxx6ZSqSTp/wB42mmndaw4nDFjRt7xjnesd0OPDbW1tWXGjBm5/PLLN9p20UUXdcx58cUX5957791onxdeeCFve9vb0tbW1u0ZH3rooY7rCr75zW/u9vNqzU1AAAAAAEiSTJ06NbfffnumTJmS//f//l+OPvrojB49OjNnzsxXvvKVzJkzJ8maa/19/OMf3+j522yzTQ4//PD88pe/zC9/+cusWrUqw4cP75fZKpVKbr755rzuda/L7NmzM3369Nx66635q7/6qxx00EGZOHFiVqxYkTlz5uTBBx/M7bffnvnz5+foo4/OpZdeut6xDj/88Jx77rn53Oc+l5dffjlHHHFEzjzzzBx55JEZOXJkHnjggVx77bVZuHBh3vrWt+aWW27p1ozrhtNTTjmlX953fxAAAQAAAEiSHHTQQfn//r//L+985ztzww03dJzuu64999wzM2bMyPjx4zs9xjve8Y788pe/zMKFC3Prrbfm5JNP7rf5dthhh/zv//5vzjrrrPzkJz/JokWL8uUvf3mTz9lxxx07/f5nPvOZLFu2LF/5yleyevXqfO1rX8vXvva19fY5//zzc/LJJ3c7AN58881J1twc5ZhjjunWcwaCU4ABAAAA6PDXf/3X+e1vf5u///u/zx577JGmpqZMmDAhhxxySD796U/nwQcf3OTdbd/+9renubk5SXL99df3+3yTJk3Kj3/849x7770555xz8upXvzpbbrllGhsbM2bMmLziFa/I1KlTc8UVV+SRRx7ZKOqt1dDQkGuvvTY/+clPcuKJJ2bSpEkZMWJEdtxxx5xyyimZMWNGPvvZz3Z7rt///ve55557kiTvfe9709jY2A/vtn9YAQgAAADAevbcc898/vOf79Vzx4wZk/e973356Ec/mltvvTXz58/f6FqBa/X2Rh7JmhuOrHvTkd467rjjctxxx3W5/aijjurWnF/60pdSrVYzZsyYvPe97+3zXP3JCkAAAAAA+tVFF12UCRMmZOXKlfnEJz5R73FqbvHixfnSl76UJLnggguy5ZZb1nmi9QmAAAAAAPSr5ubmfOhDH0qSXH311Xn++efrPFFtXXXVVVmyZEkmTZqUf/iHf6j3OBsRAAEAAADodxdeeGH22muvLF++PB/72MfqPU7NzJs3L5/85CeTJB//+MczYcKEOk+0MdcABAAAAKDfDR8+PI899li9x6i5SZMm5eWXX673GJtkBSAAAAAAFJgVgAAAAAAl1t273DJ0WQEIAAAAAAUmAAIAAABAgTkFGAAAAKBEFs5bmj8++WJGjh5e71EGXHt7e0aMHJbd9tu23qMMKAEQAAAAoET+5bSb8vAvZ9V7jLppHNaQHy36UEaPGVHvUQaMAAgAAABQIsNHDkulUtl4Q0nuA9LeVk3bqrZ6jzGgBEAAAACAsumk/633vSLFwPK2zg4CIAAAAECJVNJ5/9top95trJOeJb3B+A5qqRQBcP78+bn33nvz0EMP5dlnn83ChQszbNiwbL311nn1q1+dE044Idtu2/OLP77wwgs5++yzN7vfxRdfnMMPP7w3owMAAAD0r0plzVehFO399K/CB8D58+fn3e9+d6rVP5fgpqamrFy5MrNnz87s2bNz22235YILLsjrX//6Xr/O+PHj09DQ0Om2ESPKc1FJAAAAYHArZP9jkwofANvb25MkBx54YKZMmZJXv/rVGT9+fNra2vLYY4/ly1/+cp599tlceeWV2XHHHbPLLrv06nU+/elPZ5tttunHyQEAAABqYeAKYG9fpfbX6CtXAe18yVqBjB07Np/5zGdy2WWX5Ygjjsj48eOTJI2Njdl3333zr//6r5kwYUJWr16d73//+3WeFgAAAKC21q4AHIivHne2Pz2n5nP1wvz583PRRRdljz32yOjRo7PVVlvl2GOPzX/913/17oDrWLlyZa6++uocddRRmTRpUkaOHJkdd9wxU6ZMyeWXX57ly5f36fiFXwE4ZsyY7Lbbbl1ub25uzkEHHZSf/exn+f3vfz+AkwEAAADUQW/CXF9fb13VNd/aaJXfgC7K69kaw0cffTRTpkzJvHnzkiTjxo3LSy+9lNtvvz233357zjvvvFx11VW9muTJJ5/MCSeckCeeeCJJMmzYsIwdOzZ//OMf88c//jF33XVXzjrrrOy44469On5SghWA3bF2VWBbW1udJwEAAACosUpSqVTq+pVKJZWGDb4G8vV7UBtbW1tz4oknZt68edl3333zwAMPZMmSJVmyZEkuv/zyVCqVfO5zn8t1113X49+K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5JN53/vel4MPPrh3Q3aDAAgAAABQJmuvvTdUDVR4rLFHHnkkn/zkJ7PtttvmYx/7WE1fSwAEAAAAKJFKKjnptK179dwf3Lygn6fpuxNP3arHz5k586EcdNBBm91v7NixHY9bWloyfvz4TvdraWlJkowbN65br9/e3p6zzz47q1atypVXXpkJEyZ063m9VdcA2NbWlkcffTSrV6/OnnvumTFjxtRznEGvUqmkoWEoJ3oAAADouVpdF62/DPb5NrRwYUuSsZvdrzM1v3nIILPudf/mzJnTZQCcM2dOkmS77bbr1nGvv/76/M///E+OOOKInHDCCeudapwkK1euTJJUq9WObSNHjszw4cN7/B6SGgXAZcuW5bbbbkuS/MVf/EUmT5680T7XX399LrrooixcuDBJMmrUqJx//vn56Ec/Wrr/MXXX6NGjN3m++WDUtrq93iMAAAAwxDU3N9d7hC41NjYO6vk6M7qpDzmoZMlmr732SqVSSbVazaOPPpq99tqr0/0effTRJMnee+/dreM+++yzSZJf/OIXm1w1OGvWrI7tn/nMZ3LBBRd0f/h11CQAfve738073/nONDY25umnn95o+4wZM3LWWWd1/A1MkuXLl+fjH/94li1blquuuqoWYw15y5cvT2tra73H6JHx42q7hBUAAIDiW7RoUb1H2Mj48ePT2NiYtra2LFmypNN9BmsYHDNmVG79/sJOt1U3c4ONwbho60f/1fl72dC6o3/wn47q1nPGjh2bQw45JPfdd19mzJiRU089daN9nnvuucycOTNJcvTRR3fruAOtJueT3nHHHUmSQw45JDvttNNG2y+++OIka5YxHnDAATn55JMzbty4VKvVXH311XnwwQdrMdaQV61W09bWNqS+AAAAoK/q/bPt5n7eLdLPxJVKcb9664wzzkiS3HjjjZk9e/ZG2z/xiU+kWq1m++23zxvf+MZuHfOyyy5LtVrt8utf/uVfkiQ777xzx/d6u/ovqVEAnDlzZiqVSo444oiNtj3wwAN5+OGHU6lUcu655+b//u//csstt+T+++/PmDFjUq1W89WvfrUWYwEAAACUXr1D3GD46on3vOc92W233bJs2bJMnTo1Dz30UJI1Z2peccUV+fznP58kufzyyze6Rt8uu+ySSqWSs846qz9+63qtJqcAL1iw5o4we+6550bbfvrTn6554WHD8uEPf7jj+6985Stz2mmn5etf/3ruueeeWowFAAAAUHprIlj/nMq7uVOGa20gzkgeOXJkfvCDH2TKlCl56KGHcsABB2T8+PFZtmxZx0rPc889N+985ztrP0wv1WQF4NoA2NmdUX75y18mSQ499NBsueWW62075JBDkqTT6wYCAAAAMLgMpZV8fbHPPvvk4YcfzoUXXpjdd989ra2tmTBhQo455ph873vfy+c+97mBG6YXarICsL19zZ1fFy9evNG2e++9N5VKJW94wxs22rb11lsnyUa3PgYAAACgfwx0PBuUevH+J02alCuvvDJXXnllt5+z9m6/PXXZZZflsssu69VzO1OTALjllltm7ty5+cMf/rDe9x944IG8+OKLqVQqed3rXrfR85YvX54kGTFiRC3GAgAAACCVfjsFuCe6e7pw6eNkDdTkFOD9998/1Wo13/nOd9b7/te//vU1L9rQkNe//vUbPW/WrFlJku22264WYwEAAABQJ4PttN4yqckKwJNOOikzZszI448/ntNPPz3Tpk3Lb37zm1x99dWpVCo55phjMmHChI2ed//99yfp/OYhAAAAAPRd/UNbJUmd7x5SMjUJgO985ztz5ZVX5sknn8y3v/3tfPvb306SVKvVNDY25p//+Z83ek5LS0vuuOOOVCqVjpuBAAAAANDfKunVRfB6+2qdvtT636z33YSLrianAI8YMSK33XZbXvOa16RarXZ8NTU15Ytf/GIOO+ywjZ5z0003paWlJUkyZcqUWowFAAAAUHqD8U69g3GmIqnJCsAk2WWXXfKb3/wmv/nNb/LUU09lzJgxOfzww9Pc3Nzp/qNGjcq//Mu/pFKpdBoIAQAAAOi72kSwWlc1SwT7omYBcK2DDjooBx100Gb3e/vb317rUQAAAABI0tdgN/Cr6Jwy3Bc1D4AAAAAADC5D/TTYoT7/QBvQAPjCCy9k7ty5efnllzNu3Lhsv/32mTRp0kCOAAAAAFBqZb0OXpnVPADOmjUrV111VW655ZbMmjVro+2TJ0/OaaedlvPOOy877bRTrccBAAAAKLUXFyzPhqfUFjkIOl24RncBXuu6667LPvvsk89+9rOZNWvWencEXvs1a9asXHnlldl7773zta99rZbjAAAAAJRe88RRpborbud3AS74m95AzVYAXnfddfmbv/mbVCqVVKvVVCqVvOpVr8orX/nKjB07NkuXLs3vfve7PP7446lWq1m2bFn+5m/+Jkly1lln1WosAAAAgFIbNqwxDQ3lCmBlV5MAOHfu3Jx77rkdv/67v/u7/OM//mMmT5680b6zZ8/OFVdckS996Utpb2/Pueeem+OOOy7bbrttLUYDAAAAKLWervobaqfQFn1FY2/U5BTga665Ji0tLalUKvnP//zPXHPNNZ3GvyTZaaedcvXVV+faa69NkrS0tOSaa66pxVgAAAAApNKjr0plw6/OT6ut/9ea+br3vsqlJgHwtttuS6VSybHHHpt3vetd3XrOWWedleOOOy7VajUzZsyoxVgAAAAApddfoW3wfXX/PZRNTQLg008/nSQ5+eSTe/S8k046ab3nAwAAANDP6r5SbxB81fv3YIDVJAC+/PLLSZKJEyf26Hlr91+6dGm/zwQAAAAASTLELmvYZzW5CciWW26ZF154Ic8880yPnvfss88m6Xk4BAAAAKB7KllzGm+Zle3d12QF4L777ptqtZpvfOMbaW9v79Zz2tra8o1vfCOVSiX77rtvLcYCAAAAKL26n347CL7KpiYB8MQTT0ySzJw5M+973/tS3cz9oqvVav7+7/8+jzzySJI/XwsQAAAAgP5V3/g2OO4mXDY1CYDvfve7s+OOOyZJ/vM//zMHHnhgbrjhhsybN2+9/ebPn58bbrghBx10UP7zP/8zlUolO+64Y9797nfXYiwAAAAA1pwEXPOvzd+pt/N9Bma+cqnJNQBHjRqVm2++OVOmTElLS0seeuihvOMd70iSjBs3LmPGjMmyZcs6bhaSrFkFOGbMmNxyyy0ZOXJkLcYCAAAAILVdBdfXY699/mZOKO3ji9Tw2INQTVYAJsnBBx+ce+65J3vvvXeq1WrH15IlS/L8889nyZIl631/v/32y69+9ascdNBBtRoJAAAAoPRqe1pvLVcQOgW4t2qyAnCt/fffPw899FBuvfXW3HLLLbnvvvsyd+7cvPzyyxk3bly22267vPa1r82pp56a448/PmW/Aw0AAABA7fXuNNj6Z5uNB6jpKsECqWkATNZU4KlTp2bq1Km1fikAAAAANqNIq+CK8j5qreYBEAAAAIDBo729fTPhrAhVzdLAdQ1IAHzxxRfzwx/+ML/+9a8zZ86cjlOAt99++7z2ta/N1KlTs+WWWw7EKAAAAACltnjxihJchm1z769cgbCmAfDll1/OxRdfnK997WtpbW3tdJ8vfelLGTlyZN71rnfliiuuyNixY2s5EgAAAECpbbnlmMz545J6j1FnRQ+g66tZAJw1a1amTJmSZ555JtXNXJFxxYoV+cIXvpDbbrstP/vZz7LTTjvVaiwAAACAUivSNQDpnpoEwJUrV+a4447L008/nSQZO3ZszjjjjBxzzDHZY489MmbMmCxbtixPPfVU7rjjjtxwww15+eWX8/vf/z7HHXdcHnjggQwfPrwWowEAAACUW+9uAswQVpMAeM011+Txxx9PpVLJoYcemu985zvZfvvtN9pv//33z1vf+tb88z//c/76r/8699xzTx5//PFcc801Of/882sxGgAAAECpVf70B+XRUIuDfutb30qSbLfddvnJT37Safxb13bbbZcf//jHHfvddNNNtRgLAAAAgPz5NOD++MoAf/XLzCVTkwD4xBNPpFKp5F3velfGjx/freeMGzcuf/M3f5NqtZonnniiFmMBAAAA0J/1r1JJZYC/FMCeq9k1AJNkn3326dHz9t577yTJqlWr+n0mAAAAAErbwEqtJisAd9xxxyTJ8uXLe/S8tfvvsMMO/T4TAAAAAAN+xu5GX3+eon5zlU1NAuCb3vSmVKvV/OxnP+vR8+68885UKpUce+yxtRgLAAAAgH4+Bbh3pwynNqf2OgW4UzUJgOeee25Gjx6dG2+8MXfffXe3nnP33XfnpptuSlNTU84999xajAUAAABQepXUo/tt7tp++l8t1SQAvvKVr8x1112XYcOG5fjjj88111zTcV3ADa1atSpf+MIX8pa3vCXDhw/Pddddlz322KMWYwEAAACQpFLrP3oc+DbYv+Z/lEulWq1W+/ug//Zv/5Yk+d///d/86Ec/SqVSyRZbbJHXv/712WOPPTJmzJgsW7YsTz31VO6+++689NJLSZKpU6fmoIMO2uSxP/zhD/f3uEPGggUL6j1CjzVvMbHeIwAAQI+0t/f7j0hAHy1esqjeI2ykubk5jY2NaWtry6JFnc+31VZbDfBU3XPbTx7P83Nfrsmx+3t1Xf9XqzVOP+M1GTGyJvfGHZRqEgAbGhrWnLu9jmq1utH3NvX9rrS1tfV5vqFKAAQAgNoTAGHwEQD7109n9EcArOcaur7/c/r/vb1cAbBm77SzrthVa+xug+xJKAQA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+eSTmTNnTpYsWZLW1taMGzcuu+22W4444ogceeSRaWjw36mgHl566aX86Ec/yv3335958+Zl1apVaW5uzq677prXvva1Ofroo+s9IpRCtVrNPffck9tvvz2///3v09LSki222CL77rtvTjrppLziFa+o94hQKEuXLs0jjzySp556Kr///e/z1FNPZfHixUmSj370o9lvv/06fV5bW1seeOCB/Pa3v81jjz2WuXPnZsWKFRk7dmx22223HHXUUf7dlrqrVKvVar2HgIEwa9asXHLJJR3/AB89enRaW1vT3t6eJDnhhBNy9tln13NEKI1rrrkmM2bM6Pj1qFGjkiQrVqzo+N6+++6bSy+9NE1NTQM+H5TZfffdl89+9rNZtmxZkmTEiBFpbGzM8uXLkyTbbrttvvzlL9dzRCiF1atX51Of+lR+9atfJUkaGhrS1NSUZcuWpVqtprGxMe9973tz7LHH1nlSKI4777wzV111VafbNhUAP//5z+enP/1px68bGxszcuTItLS0dHxvv/32y6WXXprRo0f379DQTVYAUgqrVq3K5ZdfnsWLF2fnnXfO+9///uy6665pbW3N97///dxwww354Q9/mF133TXHHHNMvceFwttzzz2zww47ZO+9984OO+zQEfleeuml3H777bnhhhvyyCOP5Ktf/WrOOeecOk8L5fHAAw/k4x//eFavXp03vvGNOfXUUzN58uQka1ZFPPHEE3n88cfrPCWUw/XXX59f/epXaWhoyLRp0/KXf/mXGTVqVF566aVMnz49P/3pT3PNNddk8uTJ2Wuvveo9LhRGc3NzXvGKV2T33XfP9ttvnyuvvHKzz1m9enWam5tz9NFH57DDDstuu+2WhoaGLFmyJD/4wQ/y3e9+Nw8//HA+//nP5x/+4R8G4F3AxqwApBR+9KMf5ctf/nJGjhyZa665JltvvfV627/4xS/mxz/+cSZOnJhrr702w4Zp41BP06dPz7e//e2MGDEiN910k88kDIDly5fn7//+77NgwYK89a1vzVlnnVXvkaC0Fi9enHe9611ZtWpVTj755LzrXe/aaJ8PfehDeeSRR7L33nvniiuuqMOUUDxtbW1pbGzs+PXSpUvz9re/PcmmVwA+8cQT2XXXXTNixIhOt3/zm9/MTTfdlCT5yle+stHPozAQnIBOKfz85z9PkhxxxBGd/sP2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7I+G2kG6wsEwmc2itEW5acnY70C+D1O3NfuS/Xq+r9fRtfu67uu57ufo4b37uj4z0tHRkXfffTdNTU2ZMGHCsJ/Z3NxcaC9ZsuS0/gMHDmTOnDn5/vvvkyQzZ87MnXfemerq6pxzzjnp6OjIm2++mX379qWlpSW9vb1pbW1NSUnJsJ+5bdu2PPfccykpKUl9fX2uv/76lJeXp7OzM1OnTj2TrwwAgP/HSgYGBgb+6UUAAJxN+/fvz7Rp05Ik9fX1Wbt27Un9X3/9dcrKylJdXT3sHB988EHq6urS19eX2traIbfevvzyy3n88ceTJK+88koeeeSRIef6/fffU1VVlcOHD2fixInp7u5OWVlZoX9gYCBz587N9u3bU1pamtdeey2NjY1DztPQ0JD169cnSV5//fUsXrz4pDEff/xxbrzxxsLfkyZNSltbW6644ophnxUAgH83ZwACAJzisssuGzH8S5Kbb745TzzxRJLkww8/THd392ljGhoaCttwB7/hd6qWlpYcPny4cM/g8C85cebff7b9PvPMM0OGf0lSVlaWdevW5dJLL02SvPjiiyM+Q5KsXr1a+AcAUOQEgAAAf9F1111XaH/xxRen9U+YMCELFy5MkrS3t2fbtm1DzjM4HHzwwQdP61+3bl2SEwHfo48+OuKaxo4dm3vvvTdJsnfv3nR1dQ079pJLLkldXd2I8wEA8O/nDEAAgGF89tlneeedd7Jjx47s27cvv/32W44fPz7k2O+++27I60uXLs2aNWuSnAj6rr322pP6Ozo6snXr1iQnqgDX1NScNscnn3ySJKmsrMxHH330p+vu6ekptL/55pthz/ObO3fuiGcEAgBQHASAAACnOHLkSO6777689957o77n119/HfL61VdfndmzZ2fnzp3ZsGFDmpqaMn78+EL/nxX/6O3tzaFDh5IkXV1dmT9//qjXlCQ///zzsH1Tpkw5o7kAAPh3EgACAJzinnvuSWtra5KkvLw88+bNy8yZMzN58uScf/75GTPmxE+o9vb2PPXUU0mS/v7+YedbunRpdu7cmaNHj+att97KsmXLkpwo2vGf7b0XXnjhkOHeL7/88l89yx9//DFs37hx4/6ruQEA+HcQAAIADPL5558Xwr/LL788W7ZsyUUXXTTk2HPPPXdUcy5cuDDLly9PT09PmpubCwHg4OIfixYtytixY0+7t6KiotC+6qqr8uWXX57R8wAAgCIgAACDbNmypdB+/vnnhw3/kuTbb78d1Zzjxo1LQ0NDkmTPnj2Fir6rV69OkpSUlAxZ/CNJxo8fXwgBhztnEAAARiIABAAY5Icffii0q6urRxy7adOmUc/70EMPFQpuNDc3Z+/evYXiHrW1tZk+ffqw995www1Jkh9//NEbgAAAnDEBIADAIOXl5YV2Z2fnsOO2b99+RgFgTU1NbrrppiTJhg0b8sILLxT6hir+MVh9fX2hvWLFigwMDIz6cwEAQAAIADDI7NmzC+2VK1fm2LFjp43ZvXt3FixYcMZB3MMPP5wk6evry5o1a5IklZWVqaurG/G+BQsWZM6cOUmSzZs35/7778+RI0eGHd/f35/Nmzfn2WefPaP1AQBQnBQBAQAY5K677srUqVPT1dWVXbt2ZcaMGVm8eHGqq6vT19eXrVu3Zv369Tl+/Hjq6+sLVXxH44477sjkyZNz8ODBwrUHHnjgT4uJlJSUpKWlJddcc00OHDiQt99+O++//37uvvvuzJo1KxdccEGOHTuWgwcP5quvvkpbW1t++umn1NbWZsWKFX/5uwAAoDgIAAEABikrK8vGjRtz66235tChQ+nq6srTTz990pjS0tKsWrUqc+bMOaMAcMyYMWlsbMzKlSuTnAj2GhsbR3VvVVVVdu3alYaGhmzatKlQUXgkU6ZMGfXaAAAoXrYAAwCcYtasWdm9e3eWL1+eGTNm5LzzzktFRUVqamqyZMmS7NixI08++eRfmvuWW245qT1t2rRR3ztp0qS0trZm+/btWbZsWa688spMnDgxpaWlKS8vz/Tp03P77bdn1apVaW9vz9q1a//SGgEAKC4lA06RBgA4ax577LE0NTUlSTZu3Jj58+f/wysCAKDYCQABAM6S3t7eXHzxxenp6UlVVVX279+fMWOcyAIAwN/LFmAAgLPkpZdeSk9PT5Jk2bJlwj8AAM4KbwACAPxNuru7s2fPnhw9ejRbt27Nq6++mv7+/lRWVqazszMVFRX/9BIBAPgf4N/OAAB/k7a2tixatOika6WlpXnjjTeEfwAAnDW2AAMAnAWVlZW57bbb8umnn2bevHn/9HIAAPgfYgswAAAAABQxbwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBETAAIAAABAERMAAgAAAEAREwACAAAAQBH7P6rRQ7wDYSjWAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.DataFrame(data)\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"pos\"].astype(int)\n", + "df[\"p(brown)\"] = df[\"p(brown)\"].astype(float)\n", + "df[\"p(red)\"] = df[\"p(red)\"].astype(float)\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\"))\n", + " + scale_y_reverse()\n", + " + geom_tile(aes(fill=\"p(red)\"))\n", + " + scale_fill_cmap(\"Purples\")\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "69ab50f5-5720-4c89-8046-271de338fc87", + "metadata": {}, + "source": [ + "## Causal tracing\n", + "\n", + "This replicates the Gaussian interventions from [\"Locating and Editing Factual Associations in GPT\" (Meng et al., 2023)](https://arxiv.org/abs/2202.05262) that were also used on BLIP in the paper I linked at the start, i.e. this is a full port into pyvene of the original code for causal tracing on BLIP." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "23d522e1-2d6c-4e0a-b67c-3208210a7df6", + "metadata": {}, + "outputs": [], + "source": [ + "class NoiseIntervention(Intervention):\n", + " def __init__(self, embed_dim, **kwargs):\n", + " super().__init__()\n", + " self.interchange_dim = None\n", + " self.embed_dim = embed_dim\n", + " self.noise_level = 1.0\n", + "\n", + " def set_interchange_dim(self, interchange_dim):\n", + " self.interchange_dim = interchange_dim\n", + "\n", + " def set_noise_level(self, noise_level):\n", + " self.noise_level = noise_level\n", + "\n", + " def forward(self, base, source):\n", + " # sample gaussian noise\n", + " mean = torch.zeros_like(base[..., : self.interchange_dim])\n", + " stdev = torch.ones_like(base[..., : self.interchange_dim]) * self.noise_level\n", + " noise = torch.normal(mean, stdev)\n", + "\n", + " # interchange\n", + " base[..., : self.interchange_dim] += noise\n", + "\n", + " return base\n", + "\n", + " def __str__(self):\n", + " return f\"NoiseIntervention(embed_dim={self.embed_dim})\"\n", + "\n", + "\n", + "def make_noise_intervention(noise_level):\n", + " def func(args, proj_dim, subspace_partition):\n", + " intervention = NoiseIntervention(args)\n", + " intervention.set_noise_level(noise_level)\n", + " return intervention\n", + "\n", + " return func\n", + "\n", + "\n", + "def corrupted_config(model_type, noise_level):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_input\", # intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " ),\n", + " ],\n", + " intervention_types=make_noise_intervention(noise_level),\n", + " )\n", + " return config\n", + "\n", + "\n", + "def restore_corrupted_config(model_type, layer, noise_level):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " 0, # layer\n", + " \"block_input\", # intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " ),\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " \"block_output\", # intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " ),\n", + " ],\n", + " intervention_types=[\n", + " make_noise_intervention(noise_level),\n", + " VanillaIntervention,\n", + " ],\n", + " # mode='serial'\n", + " )\n", + " return config" + ] + }, + { + "cell_type": "markdown", + "id": "65f15d55-e975-4fcf-9b33-d58a5de1b648", + "metadata": {}, + "source": [ + "### Varying levels of noise" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "a303239e-2d45-46fa-b319-ad9a23a25b17", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 88.95%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 59.44%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.79s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 11.18%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.79s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 5.78%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 4.00%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.79s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 5.99%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob: 4.40%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "base = inputs\n", + "data = []\n", + "with torch.inference_mode():\n", + " for noise_level in [0.1, 0.5, 1.0, 2.0, 5.0, 10.0, 20.0]:\n", + " for layer_i in tqdm(range(12)):\n", + " for pos_i in range(9):\n", + " config = restore_corrupted_config(\n", + " type(blip), layer_i, noise_level=noise_level\n", + " )\n", + " intervenable = IntervenableModel(config, blip)\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " [base, base],\n", + " {\n", + " \"sources->base\": (\n", + " [\n", + " [[0, 1, 2, 3, 4, 5, 6, 7, 8]],\n", + " [\n", + " [\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " ]\n", + " ],\n", + " ],\n", + " [\n", + " [[0, 1, 2, 3, 4, 5, 6, 7, 8]],\n", + " [\n", + " [\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " ]\n", + " ],\n", + " ],\n", + " )\n", + " },\n", + " )\n", + " logits = counterfactual_outputs[\"decoder_logits\"][0, 0].softmax(-1)\n", + " p_brown = logits[2829]\n", + " data.append(\n", + " {\n", + " \"layer\": layer_i,\n", + " \"pos\": pos_i,\n", + " \"p(brown)\": p_brown.item(),\n", + " \"noise_level\": noise_level,\n", + " }\n", + " )\n", + " df = pd.DataFrame(data)\n", + " avg_p = df[df[\"noise_level\"] == noise_level][\"p(brown)\"].mean()\n", + " print(f\"average prob: {avg_p:.2%}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "28b08515-7994-41bf-b665-a315e038881d", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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jeyYjx1zsgs7Xp9Ahfo87Hbd7Pi1tFM+drw+EteoIXbKx47XJ1DhOA87XTs7fi3tlI8dr4/ENWqIHfOxW06xav78+Tpy5IgkadKkSeFNBnVyOBz69a9/rYceekhLlizR5s2bddpppzU+bhByAwAAAAAAQBB9+umn3qfx3nfffZKkzZs3a+rUqTrttNOUkpKi9PR0DRkyRE8++WSDdwz+v//3/yRJzZs39/vpvvn5+XrooYc0YMAAZWRkKCUlRT179tR///d/68cff6x338mTJ3vPY9euXZKkd999V5dffrk6duyoxMTEatuqeuedd/SrX/1KnTp1ksvlUlpamk4//XTddNNN+u677+o85iOPPOI95uLFi2sds3XrVu8YwzC0YMGCWsfl5ubK4XDIMAz98pe/rLZt165d3v0rn9x75MgRzZ49WwMGDFCzZs2qXavc3Nx6r1WlK664wvvxyy+/7NM+DTIBAAAAAABgK8uWLTMlmZLMP/3pT+brr79uulwu7+dOfvXo0cPctWtXrbH27dvnHXfJJZc0eOzKseecc465bt06s2PHjnUet1mzZuZHH31UZ6xJkyZ5x27evNm84oorao2zc+dO7z65ubnmsGHD6jymJNMwDPPmm282Kyoqahzzm2++8Y77wx/+UGtezz//fLV4119/fa3jXn/9de+Y5557rtq2nTt3erdNmjTJ/O6778zMzMw6c27durW5bt26Bq+/x+MxmzVrZkoyTzvttAbH+4JbgAEAAAAAAGzsu+++05w5c1ReXq6rr75aI0eOVHJystavX6+XXnpJ+/fv16ZNmzRixAitWrVKTZs2rbb/xx9/7P14yJAhPh/36NGjuvTSS7V7924NHz5c48ePV+vWrZWTk6P58+dr9erVOnLkiMaNG6fPP/9cgwYNqjfetGnT9OGHH6pjx476zW9+ox49eqikpETffvutEhMTJZ1Yq3D48OHatGmTJKlly5aaMmWK+vbtq7KyMn3++efKzs5WeXm5nnvuOR07dkyvvvpqteMMHDjQuwblJ598UmsuJ3/el3FZWVl1ntuePXt04YUXKi8vT1dccYVGjx6tjIwM7dq1Sy+88IK2bdumAwcO6Fe/+pVWr16t+Pj4OmMZhqHBgwfrX//6lzZv3qxdu3apU6dOdY73SVDaiAAAAAAAAAiaqjMAJZkul8tctmxZjXH5+fnmL37xC++43/72tzXG3HTTTd7tS5cubfDYOmnm2iOPPFJjTEVFhXnLLbd4x/Ts2dN0u901xlWdASjJHDdunFlcXFznsW+++Wbv2IEDB5p5eXk1xvz73/8209PTvePeeOONGmPGjh1rSjKdTqd55MiRGttbtWplSjLPOussb5zaZlB269bNlGS2b9++xraqMwAlmU2aNDE/++yzGuOOHz9u9uvXzzvu7bffrvP8K/3pT3/yjl+wYEGD4xvCGoAAAAAAAAA2N2fOnFrX7mvWrJnefPNNpaamSjqx1l9eXl61MevWrfN+3KNHD7+Oe/nll+uuu+6q8Xmn06mnnnpK//Vf/yVJ2rBhgz744IN6Y7Vv316vvvqqkpKSat2el5enl156SZLkcrn09ttvq0WLFjXGDRw40PtEY+nEtTlZ5Ww9t9utzz77rNq277//3rse37333uudjXfyLMC9e/dq69atkqQRI0bUe26S9NRTT2n48OE1Pp+amqqHH37Y+/cPP/ywwVinn3669+O1a9c2OL4hNAABAAAAAABsrFmzZrrhhhvq3N6+fXtdc801kqTS0lL94x//qLa96gM2MjIy/Dp2bc2/Sg6HQ9OnT/f+/a233qo31rXXXuttVNbmn//8p0pKSiRJv/rVr9SxY8c6x1555ZU69dRTJUmrVq3Szp07q22vertuXbf7pqSkKCsrS4MHD6533MnxatOiRQv9+te/rnP7iBEjFBd3YiW+77//vt5YUvWvU20PSPEXDUAAAAAAAAAbGzp0aJ2z5iqNGjXK+/G3335bbdvhw4clnZhV11CcqtLS0rzNsUCOe7Jhw4bVu/2bb77xfnzeeefVO9YwjGpjvv7662rb+/Tpo+bNm0uSli5dWm1bZWNv2LBhio+P9zb3li1bVus4qeEG4KBBg7wNvtokJiZ6ZzPm5+fXG0uSN3fp569fY9AABAAAAAAAsLFu3br5NWbfvn3VtpWWlkqSmjRp4tdxTz31VBmGUe+YFi1aqFmzZrUe92QdOnSod/v+/fu9H3fv3r3B/KqOqbqvdKJBWHnL9Pr16723/Ho8Hn3++eeSfm7qVd7e+8MPP2jz5s3eGJUNwS5dutQ7G1FSrbcqn6zyQSeVsxzrk5aW5v24uLi4wfENoQEIAAAAAABgYykpKX6NOX78eLVtlY2nY8eOBf24VccVFBTUOy45Obne7VXz9uXYVW8nPvmcpZ8bfKZpept5q1at8s7Aq9x+1llneWdGVs762759u3JycqqNq4/DEdwW29GjR70fN3TdfEEDEAAAAAAAwMYKCwv9GnPyTL/K20mLi4t9mn3mz3GrjqtvfT9fVM3bl2NXbTjWNrux6oM7Km8Drmzwpaenq3///pJONEjPOuusatur3v7rywNAgu3QoUPej/1dt7E2NAABAAAAAABsbNu2bX6NadeuXbVtnTt39n7sz3py27dvl2ma9Y45dOiQjhw5Uutx/dW2bVvvx5VP363Pli1bvB/XduzTTz/dG/Pkxt65555bbdZeZZPv008/lWmafq3/Z4WqX6dOnTo1Oh4NQAAAAAAAABv74osvvOv41WXJkiXej88888xq28444wzvxxs3bvT5uMeOHWvwwR71HddfVff/17/+1eD4xYsXN3jsysbe9u3btX37di1fvlxSzaZe5d8PHjyotWvX6tNPP5V0oonYpk0b308iSDZs2OD9uG/fvo2ORwMQAAAAAADAxo4cOaIXX3yxzu379+/X/PnzJZ24nXXs2LHVtg8ZMsT7cdUn7fri8ccfr3Obx+PR3LlzvX8fP368X7FPdtFFF3nX4nv99de1e/fuOse++eab3lmP/fv3rzbLsaqqt+/OmTPHe9vwyQ3AwYMHe29h/stf/qIff/yx1nGhUvWpxlW/foGiAQgAAAAAAGBzM2bM8D69tqpjx47pyiuv9D4EY8qUKWrZsmW1Meedd573ab7+NgDfeuutak2+Sh6PR3fccYd3hmCvXr100UUX+RX7ZC1atNB1110nSSoqKtL48eOrrYVXadWqVbrpppu8f//jH/9YZ8yqDbz/9//+n6QTtxr37Nmz2ri4uDgNGzas2riT9w8V0zS91/W0005r8AnEvohrdASETNV72wEgVnTv3t3vfaiXAGIR9RIAfBNIvQy3sWPHavHixcrKytJVV12lkSNHKjk5WRs2bNDf/vY37du3T9KJtf4eeeSRGvu3bt1aZ599tpYvX67ly5ervLxc8fHxDR63X79+OnbsmKZPn673339f48ePV6tWrbRnzx7Nnz9fq1atknRi1uG8efOC8iTcOXPmaOnSpdq0aZP+/e9/6/TTT9d1112nPn36qKysTF988YVeffVVlZWVSZImTpyoX/7yl3XG69Klizp27Kjdu3eroqJCUt0P9RgxYoQ+/PBD7ziHw6Fzzz230efkrzVr1nifAnzZZZcFJSYNQAAAAAAAABsbOHCgfv3rX2vKlCmaP3++93bfqk477TR99NFHSktLqzXGb37zGy1fvlyHDx/WokWLNG7cuAaP27RpU7366qu6+OKL9dlnn+mzzz6rdcwbb7yhQYMG+X1etUlNTdXnn3+uyy+/XMuXL1deXp7mzJlTY5xhGLrpppv0zDPPNBhzxIgRPs3qO/nzffv2DcoTeP319ttvez+eNGlSUGJyCzAAAAAAAIDNXXnllfrPf/6j3//+9+rWrZtcLpeaNm2qwYMH64knntCaNWvqfVrs1VdfrfT0dEnSK6+84vNxe/furVWrVumBBx5Q//791axZMyUnJ+u0007T9OnTtXHjRp1//vmNPb1qWrZsqS+++EJvv/22fvnLX+qUU05RUlKSUlNT1b17d91444369ttv9dxzz8npdDYYr64Hfpysf//+3mtU3zgreTwevfrqq5KkkSNHqkePHkGJa5gNPc8ZtsEtGgBiEbe0AYBvqJcA4JtIuQX4008/9d6q+qc//Un33Xdfo2POmjVLDz30kBISErR3794aawUi/P75z39611L88MMPNWbMmKDEZQYgAAAAAABADJg+fbqaNm2qsrIyPfroo+FOB7WoXMPx7LPPDlrzT6IBCAAAAAAAEBPS09M1c+ZMSdKzzz6rH3/8McwZoarPP/9cn3/+uQzDCHqDlgYgAAAAAABAjLj99tvVo0cPFRcXa/bs2eFOB1X893//t6QTD2w566yzghqbpwADAAAAAADEiPj4eG3cuDHcaaAW33zzjWWxmQEIAAAAAAAARDFmAAIxIDc3V59//rlWrVql7du36/Dhw3I6nWrdurUGDhyoK664Qu3atQs4fkVFhRYuXKglS5bohx9+kCR16NBBo0aN0mWXXaa4OEoNgMjw0UcfeRders+7776rpk2b+h2fegkgUhw/flxr1qzRli1bvK/8/HxJ0pNPPql+/fo1GOOLL77Q+++/ry1btqikpEStWrXSL37xC11zzTUB1dCqtm3bptdff11r1qzR0aNH1bRpU/Xr10+/+tWv1LVr10bFBuzi3HPPlWma4U4DUYJ3mUCUy83N1VVXXVXtH46UlBSVlpZq9+7d2r17txYtWqQZM2Z4HzHvj+LiYk2fPt07hTwhIUGSvG8UP/vsMz322GNKTk4OzgkBQAg4HI56fzg1DMPvmNRLAJHkyy+/9OkXInV56qmn9O6770o6UVOTkpK0d+9evfnmm1qyZImefPJJdezYMaDYS5Ys0SOPPKKKigpJJ97bHjx4UEuWLNFnn32mP/zhD8rKygo4dwCIRjQAgSjn8XgkSYMHD9b555+vgQMHqmnTpnK73fr+++/19NNPa8eOHZo9e7Y6duyoLl26+BX/iSee0MaNG5Wamqq77rpLQ4cOlSQtX75cjz76qNavX6//+Z//0R//+MegnxsAWKVly5Z6/fXXgxqTegkg0mRkZKh79+7q3r27OnTo4PPDAj744AO9++67MgxD1157rcaPH6+kpCRt27ZNs2fP1s6dO3X33Xdr3rx5io+P9yunnTt36tFHH1VFRYXOPfdc3XLLLWrevLkOHTqkZ555Rp999pnmzJmjrl27KjMzM5DTBoCoRAMQiHKpqal64YUXatwK4XQ61bdvXz322GO67rrrdOTIEb355puaMWOGz7G3b9+uTz75RJJ05513atiwYd5tw4YNk8fj0X333afFixfrqquuUufOnYNzUgAQYaiXACLN6NGjNWbMGO/fCwoKfNqvvLxc8+bNkySNGzdOEydO9G7r2rWrZs+erSlTpuiHH37QokWLNG7cOL/ymjdvnsrLy9W1a1fNmjVLTqdTktS8eXPdc889+uGHH7Rt2za99NJLuu+++/yKDdhBaXG53BWecKcRNq4mieFOIWrRAASiXGpqar3roGRkZOjMM8/Uxx9/rC1btvgVe8mSJTJNU+3bt9fw4cNrbB8+fLjat2+vH374QUuWLNENN9zgd/4AEA2olwAiTWVjzV//+c9/dPjwYRmGoauuuqrG9jZt2igrK0v//Oc/tWTJEr8agAUFBfr6668lSVdeeWWNHJ1Op6688krNnj1bX331lYqKiuRyuQI6DyAc9m49pEm9npG7PHYbgL+eNVzXPTAq3GlEJZ4CDMC7zpXb7fZrv1WrVkmSBg0aVOt6WIZh6L/+678knXgzCACxinoJIFZU1ruOHTuqVatWtY4ZNGiQJGnDhg0qLi72Ofa6detUXl5eLUZdscvLy7Vu3TqfYwN2kJ9bKI/blOEwqr+M2HkVHisL95chajEDEIDWrFkjSX7dcmaapnbv3t3gfpXbcnJyGpEhAITW0aNHdeONN2rPnj2SpBYtWqhv3766/PLL/V4rlXoJIJbs2rVLkm/1zjRN5eTk6LTTTvMpdmUtTU9PV7NmzWod06xZM6Wnpys/P1+7d+/WmWee6XvygF35/+wxoAZmAAIxbvny5dq8ebMk6YILLvB5v6KiIpWUlEg6seZKXSq3FRUV+fUbXgAIp5KSEm3btk3x8fGqqKjQ3r17tWjRIt1www164403/IpFvQQQSw4fPizJt3pXdbwvDh06JOnEL2XqUxm/cjwQKQyZMgzF/AvWYAYgEMMOHDigJ554QpJ09tlna/DgwT7vW/WH06SkpDrHVd1WVFSk5OTkADIFgNBo3ry5Jk+erOHDh6tDhw7eBuC6dev017/+VRs3btTzzz+v5s2ba9Qo39anoV4CiCWVNc+feudv7MTE+h8SULndn9iAHZiiAwbrMAMQiFEFBQWaOXOmjhw5onbt2umuu+4Kd0oAEHaDBg3SpEmT1LlzZ8XHx0uS4uLi1L9/fz311FPq2bOnJOmFF16QxxO7C3QDAIDgC/fMO7u8YA0agEAMKi4u1owZM7Rjxw61aNFCjz32mNLS0vyKUXVmSuWtbbWpuo2nsAGIZPHx8bruuuskSXl5edq6datP+1EvAcSSyppnRb2rjF1aWlrvuMrt1FJEJMu7a0F8WZYfrEADEIgxJSUl+sMf/qANGzaoWbNmevzxx9WuXTu/47hcLu+bsPrWV6ncVnU8AESq008/3fvx/v37fdqHegkglviy/l7VbRkZGT7Hrlz77+DBg/WOq4xf3zqEgF1ZPsPOUeXV2Bj0/yIKDUAghpSWlmrmzJlau3atmjRposcee0wdO3YMKJZhGN59K5/2VpvKbZmZmQEdBwAiHfUSQCzxp94ZhuFXzauMnZ+fr6NHj9Y65siRI8rPz682HogoQZ6kV+/LcdLLu82of6yVOcEyNACBGFFWVqZ77rlHq1atUkpKih555BF17dq1UTH79+8vSVq5cmWdY/79739LkgYMGNCoYwGAHWzcuNH7cdu2bX3ej3oJIFZU1rBdu3YpLy+v1jGVtbBnz55+zXg+44wzvOuzfvvtt/XGjo+P1xlnnOFzbMAWDMkI5/+MypeqfPzTK4T/gzVoAAIxoKKiQvfdd59WrlyppKQkPfzww9VuYwvUyJEjZRiG9u7dqy+++KLG9s8//1x79+6VYRg+Py0TAMLFNM16t1dUVOill16SdOI2tG7duvkcm3oJIFb0799fGRkZMk1Tr7/+eo3tubm5Wrp0qST5Xe9SUlI0ZMgQSdKbb74pt9tdbbvb7dabb74pSTrrrLNYAxCRKZQzAH96GYYhw3HS66fGXzjygTVoAAJRzu1268EHH9SKFSuUmJio2bNn+/Xb0KuuukojRozQnDlzamw79dRTlZWVJUl67LHHtHz5cpmmKdM0tXz5cj3++OOSpNGjR6tz587BOSEAsMiBAwf0u9/9Th988IF+/PFH7+fdbrdWr16tadOmaf369ZKkG2+8UQ5H9bdR1EsA0ebo0aPe17Fjx7yfLygoqLatoqLCuy0+Pl5TpkyRJL3zzjt67bXXvA/l2L59u/74xz+qpKRE7du310UXXVTjmB999JFGjBihESNGVKvFlaZMmaL4+Hht3bpVDz30kA4fPixJOnz4sB566CFt3bpV8fHxuvbaa4N6LYBQqD4Lz+JXlWZfrbf1/nS778kNQatfNACtExfuBABY6/vvv9dnn30mSfJ4PHrggQfqHb9w4UK/4k+fPl379u3Txo0bdc899ygxMVGmaaqsrEyS1KtXL02bNi2g3AEg1DZt2qRNmzZJkhISEpScnKyioiKVl5dLkuLi4vTb3/5Wo0eP9js29RJApBk3blytn7/nnnuq/f3JJ59Uv379vH8fO3astm3bpvfee09//etf9dJLLykpKUmFhYWSpPT0dD300EPe23n90blzZ91111165JFHtGzZMn366adKSUlRQUGBpBMNyD/84Q+sp4qIZEqWNMCMYMQ9eX+z2h+IADQAgShX9Za28vJy76LIwZKcnKynn35aCxcu1JIlS7R3715JUrdu3TR69Ghddtlliouj1ACwv/T0dE2dOlXr16/Xtm3bdOTIERUUFCgpKUkdO3ZUv379dMkll+iUU04JKD71EkAsmTZtmgYOHKj33ntPW7duVXFxsdq3b6+zzjpLV199tZo1axZw7FGjRqlTp05asGCB1q5dq6NHj6pFixbq27evrrrqqkavcw2EiyHzxJNwgxDJckZdR2pcSzA454/aGGZDC97ANrZs2RLuFAAg5Lp37+73PtRLALGIegkAvgmkXobC+q/36I7zXg54f7v0zhrTZLr0t4N082PnBy0X/IxfMwMAAAAAANhANMyAa9QpRMH52xUNQAAA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ZUv9+te/liS99957PscNNxqAjfTpp59KkoYPH66WLWsu0n/FFVfIMAwdPnxY69atC3F2AAAAAAAg2jXurlvj51fl/4y6Xrbo/6lHjx4yfjrI+vXr6xxXua1nz54+xT106JByc3MlSV26dKlzXOW2Xbt2+RTXDrgFuBGKi4u1detWSSeeElObli1bqkOHDtqzZ4/WrFmj/v37hzJFAAAAAAAQIR79zfKA9gtawy2IjbtAzmXMNX01cGDD41JTUzV48GB98803+uijj3TFFVfUGLN3715t2LBBkjRy5Eifju9w/DxPLicnp85xldvquvXYjpgB2Ah79+71Plq+Y8eOdY6r3LZnz56Q5AUAAAAAACKQJQ8BiaCXHx3Ia665RpK0YMGCWvstjz76qEzTVLt27TRixAifYqanp3t7OC+++KLcbneNMceOHdOCBQskSWeeeabP+YYbDcBGOHz4sPfjjIyMOsdVboukp8MAAAAAAIDQCV2frb5bfBt6haAH6KMbb7xRXbp0UWFhocaOHau1a9dKOnG35pw5c/SXv/xFkvTggw8qPj6+2r6dOnWSYRiaPHlyjbi/+93vJEnfffedLr30Um3YsEEej0cVFRX69ttvNWbMGG/D8bbbbgvgKx0e3ALcCCUlJd6PExMT6xxXua24uNjynAAAAAAAQITypwMWFhbn50f4xMREvf/++8rKytLatWvVt29fpaWlqbCw0Dtzb+rUqZoyZYpfKdx5551atWqV3njjDS1atEiLFi1SUlKS3G63ysvLJZ24VXj27NkaNWqUX7HDiRmAAAAAAAAANhDuO3DD/fJXr169tG7dOt1+++3q2rWrSktL1bRpU40aNUrvvPOOnn76ab9jOp1Ovf7663r33Xc1btw4tW/fXh6PR06nU126dNFvfvMbrVixQjNmzPA/4TBiBmAjVH0cdGlpqVwuV63jSktLJUnJycn1xsvOztZrr71W5/YJEybo6quv9jtPT81b1gEgpNLT0/0aX7n4btVFeK08npcZ2G4AEEz+1DDqJYBYFsp6GRqBdcHsOmcwoH8qAjj/Vq1aae7cuZo7d67P+/jy9N5LL71Ul156qd/52BUNwEaouu7f4cOH62wAVq4V2FBxKiws9D5uujZFRUVyOp1+5+mpZdFKAAilQGqXdGJ9klAez13hCWg/AAimQGoY9RJALAplvQyJ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9FmB1dV/y3D+4aIQ5hJbLG0AHj9+XDNmzND/+3//T6WlpbWO+b//+z8lJibq2muv1Zw5c5SammplSpZyOBz1NvhY4xAAAAAAANTG6XREWbOvYSefb7P05PAkEgMsawDm5OQoKytLO3fulNnAKpAlJSX63//9X3388cf65JNPdMopp1iVlqVatGihF198MdxpAAAAAACACNTQElvWLpYSWrWdqZPlGSxjSQOwrKxMY8aM0Y4dOyRJqampuuaaazRq1Ch169ZNKSkpKiws1LZt27RkyRLNnz9fx48f1/bt2zVmzBitXr1a8fHWrgcBAAAAAABgKw3MAKyxOdI6gjE2w9FOLGkAPvfcc9q0aZMMw9CQIUP05ptvql27djXG9enTR5dffrnuueceXXnllfryyy+1adMmPffcc7rtttusSA0AAAAAAMCGDBn+dsiirqEWdSdkG5bMrXzjjTckSW3bttWHH35Ya/OvqrZt2+qf//ynd9zrr79uRVoAAAAAAAC2ZBimjJ+eBByMl8L0anTesIQlMwA3b94swzB07bXX+vzU2yZNmui6667TAw88oM2bN1uRluWOHj2qadOm6YcffpAkNW/eXL1799bYsWPVqVOn8CYHAAAAAABsLLgdMHppqMqyNQAlqVevXn7t17NnT0lSeXl50HMKhdLSUu3cuVMpKSkqKSnRvn37tG/fPi1ZskSTJk3SZZddFu4UAQAAAACATcV60y7Wz99KljQAO3TooK1bt6q4uNiv/SrHt2/f3oq0LJORkaEJEyborLPOUrt27RQfH6+Kigpt2LBBr7zyirZs2aJ58+YpIyND55xzTrjTBQAAAAAANhTOW2B/fp6IoZOfLhKytOgAWsaSNQBHjx4t0zT1ySef+LXf0qVLZRiGzjvvPCvSskz//v01YcIEdezY0fv04ri4OPXp00cPP/ywTjvtNEnSyy+/LI/HE85UAQAAAACAXQVzEUA/X4b3pSofn3iFLA86gJaxZAbg1KlT9dJLL2nBggW64YYbNGzYsAb3+eKLL/T666/L5XJp6tSpVqQVFvHx8Zo4caLuueceHTx4UDt27FDXrl1rHZudna3XXnutzlgTJkzQ1Vdf7X8SkfZYcABRJz093a/xDoej2p9WH8+LegnABvypYdRLALEslPUyJML6EIyTDxyeQs9DQKxjSQOwe/fumjdvniZN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IiJCSUlJ6t27t4YNG6b+/fubXarp4uLitHDhQr399tv6+OOPdfToUXk8HiUlJWnAgAGaMGFCnTOzrezss8/WuHHj9M033yg7O1vFxcVyOp0688wzNWLECF1yySVmlxi0Tn2k9KeffqqzbWPW9A0U42XtGC8bjvGydoyXgQu28RJoKTZffQtQIGj8fAdXoDYlJSW67777tGfPHrVv316LFi1Sly5dTmt366236sCBA7r22mt111131dhXYWGh/9GB+fPnN/gvE88995xWrlypM888U4sXL6613bRp05SRkaHrrrtOd9xxR4P6Rmjp3bu32SUAAAAAhvN4vCoqdJtdhqkiI8MV44g0uwxLsvZ8YCAElZaW6oEHHtCePXuUkJCgJ554osbwT2rY+nunHmvM4xVVa/+5XK4621X1H6r/egsAAAAA/9OSa+0F4xeMQgAIWIjb7dasWbO0c+dOtWnTRgsXLqxz4eiqY1W7Adek6pjNZlP37t0bXEtV33l5ecrPz6+xzcmTJ5WXl1etPQAAAACEpDqezzRnd2DjvmpTUcFDqkYhAAQsoqysTA8++KC++uorxcbG6rHHHlNKSkqd51StLXP48OFqu9Cdavv27ZKkvn37KiYmpsH1pKamKiIiQpK0bdu2OvuOiIjwL8oLAAAAACEpgMCstar9fVaYXZplEQACFuDxePTwww9r+/btio6O1p///GedffbZ9Z53wQUXKDExUT6fTytWrDjteHZ2tjZv3ixJjd6pLzY21r/A9xtvvCGv11vtuNfr1RtvvCFJGjx4sBwOR6P6BwAAAABrsclmq+3L/Fl7xn5Vvk97OHvVGoUAEGjlvF6v5s6dq61btyoqKkrz589v8Gy6iIgI3XzzzZKkNWvWaNmyZXK7Kxed/e677/THP/5RpaWlSkpK0pgxY047f/369Ro+fLiGDx+uH3/88bTjN998syIiInTgwAHNmzdPubm5kqTc3FzNmzdPBw4cUEREhKZOnRro2wcAAACAEFDTenlW+oLR2AW4FWEXYNRkx44dmjFjhqTKQC8uLq7O9qtXrz7te88884zWrl0rSbLb7YqOjlZRUZEkyel06umnn65xjb7169frsccekyQtX75cnTt3Pq3Npk2b9Nhjj8nj8chmsyk2NlaFhYX+eh944AGNGDGi4W8YIYddgAEAABAKPJ4KlRSXmV2GqSIi7YqOjjC7DEtibiXQyp2a4ZeXl/s31WiMGTNmaMCAAVq7dq0OHDigkpISJSUlafDgwZo0aZISEhICrm/UqFE644wztHz5cu3cuVP5+flq3769+vXrpxtuuKHedQoBAAAAIBQYNheuJSbYNdPUMuYCGocZgK0IMwABhCJmAAIAACAUeD0VKikJ8RmAEXZFMQPQEMwABAAAAAAACAqtYbqekTUyB9AoBIAAAAAAAABBoGXirzqucuohnhe1FAJAAAAAAAAAswXbhrhm1BJM799iwswuAAAAAAAAAOYjf7MuZgACAAAAAAAEgRYP4GynX7Had1p431gCSOMQAAIAAAAAAJjNJxkagQXSdQ0BoSTWB2yFCAABAAAAAADMZsAagIbFif9/x+SArQcBIAAAAAAAQBBobY/AtrZ6QxmbgAAAAAAAAAAWxgxAAAAAAACAoFDHnDqrTLer87lhq7zJ4EMACAAAAAAAEARq23PDUup4jz5fhSR7i5USSngEGAAAAAAAAKbzsauIYZgB2IokJiYafg2n0ym73S6v16u8vDzDr1cfu90up9OpvLw8eb1es8uRxD2qT7DdH4l7VJ9guz9S9XsEAAAAhAKbQmQGYB3sduapGYUAEAAAAAAAwHQ2sQYejEK0CgAAAAAAAFgYMwABAAAAAADMZuMRYCZAGocZgAAAAAAAAICFMQMQAAAAAADAbKZtgduQaXdsz9vaEQACAAAAAACYzbQ9QKqHezbZ5DMr8OMRYMMQAAIAAAAAAJjOJluQJGBm1REs79+KWAMQAAAAAAAg1Jk2AxEtgRmAAAAAAAAAwaAFArh6L1FLA1YBbN1sPp9pq0xaSn5+vlauXKlt27bpxIkTioqKUq9evXTVVVdp0KBBzXINl8sV0HnOhMRmuT5gFFdOkeHXaNfeYWj/Npux/0/tdnsM7d/rqTC0f3d5YaPaO51O2e12eb1e2e12g6oCAAAAgkdFhc+wv5cb8WnFiDApLMwmezgPqxqBGYDNIDMzU7Nnz1Z+fr4kKSYmRkVFRfr666/19ddf6+qrr9a0adNMrhIAAAAAAASrZn8C1+BJCv7emVfWKhAANlF5ebnmzp2r/Px89ejRQ/fcc4+Sk5Pldru1du1aLV26VOvWrVNycrJGjRpldrkAAAAAACBYBZzZmbh4X61BYwDBIGsQGoZ5lU303nvv6ccff1RUVJQeeughJScnS5KioqJ03XXXafTo0ZKk9PR0eTzGPsIHAAAAAABaM1uAX8HIKu/DGggAm+jDDz+UJA0dOlQdOnQ47fjEiRNls9mUm5urXbt2tXB1AAAAAACgtag3IrO18q963h87jRiHALAJSkpKdODAAUlS//79a2zToUMHde3aVZK0Y8eOFqsNAAAAAAC0IqEwQa6e92fwsoUhjTUAm+DIkSOq2kS5R48etbbr0aOHsrKylJWV1VKlAQAAAACAVsRms8keTgIGYzADsAlyc3P9rxMTE2ttV3UsLy/P8JoAAAAAAACAUxEANkFpaan/dVRUVK3tqo6VlJQYXhMAAAAAAABwKgJAAAAAAAAAwMJYA7AJoqOj/a/dbrccDkeN7dxutyQpJiamzv7S09O1bNmyWo/feOONmjRpUuMLZRcdACZzOp2Nah8WFlbtvwAAAACAwBEANsGp6/7l5ubWGgBWrRVY3wfgoqIiZWdn13q8uLhYdru90XV6PRWNPgcAmlMgY5dUuRAyAAAAAKBpCACboGvXrrLZbPL5fMrMzFTXrl1rbJeZmSlJ6tatW539xcbGqmPHjrUedzgc8nq9AVTKB2gA5mrs2BUWFuYfXwkBAQAAAKBpCACbICYmRmeeeab279+vL7/8UoMHDz6tjcvlUlZWliSpX79+dfaXlpamtLS0Wo+7XK6AdhJ2JtS+QzEAtITGjl1Op1N2u10VFRUBzx4EAAAAAFRicaUmuuyyyyRJH3/8sXJyck47vnr1avl8PiUmJio1NbWFqwMAAAAAAECoIwBsoiuuuEKdO3dWaWmpHn30UR06dEhS5cYfK1eu1Ntvvy2pcnZfeDgTLgEAAAAAANCybD6fjz1imygzM1OzZ89Wfn6+pMq1+kpLS1VRUbn5xtixY3Xrrbc2+Toulyug83gEGMHOlVNk+DXata95k57mYvQ6dW63x9D+jd4syF1e2Kj2VY8Ae71eHgEGAAAAgCYiAGwmJ0+e1KpVq7Rt2za5XC5FR0erZ8+eGjNmjAYNGtQs1yAAhFURANaPABAAAAAAECgCwFaEABBWRQBYPwJAAAAAAECgWAMQAAAAAAAAsDACQAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACws3OwCADSd0Xv5eL3GbhDRvkOsof1L0oP3vm1o/488PtrQ/qOiDB6uo4zt3n3S2P4BAAAAALVjBiAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBhBIAAAAAAAACAhREAAgAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWFm52AWg4u91udgkAEBDGLwAAAAAwDwFgK+J0OgM6z+upaOZKAKBxAh2/CA4BAAAAoOkIAFuRvLy8gM6Lb9O2mSsBgMZp7PgVHx8vu90ur9dLCAgAAAAATUQA2Ip4vV6zSwCAgDB+AQAAAIB52AQEAAAAAAAAsDACQAAAAAAAAMDCbD6fz2d2EWgYl8sV0HnOhMRmrgRoXhUVxg9DRm+GExFp7Dp1brfH0P4jDa7/ZH7j1gB0Op2sAQgAAAAAzYQZgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBhBIAAAAAAAACAhREAAgAAAAAAABZGAAgAAAAAAABYWLjZBbSEnJwcbd26VTt37tThw4eVm5ur8PBwdejQQeeff76uvvpqde7cudH9Hj9+XNOmTau33cyZMzVkyJBASgcAAAAAAACaxPIBYE5Ojm655Rb5fD7/9xwOh8rKypSVlaWsrCy99957mjFjhi699NKArxMfH6+wsJonVEZGRgbcLwAAAAAAANAUlg8AKyoqJEn9+/fXiBEjdP755ys+Pl5er1d79+7V4sWLdfjwYT311FPq2rWrzjjjjICu8+STT6pTp07NWDkAAAAAAADQdJZfAzAuLk5PP/20Hn74YQ0dOlTx8fGSJLvdrnPPPVePPPKI2rZtK4/Ho7Vr15pcLQAAAAAAANC8LB8AxsbGqmfPnrUedzqdGjBggCTpu+++a6myAAAAAAAAgBZh+QCwIapmBXq9XpMrAQAAAAAAAJqX5dcAbIjdu3dLknr06BFwH48//riOHTsmt9uttm3bqnfv3ho1apQGDhzYXGUCAAAAAAAAjRbyAeBnn32mjIwMSdLIkSMD7ufAgQNyOBwKCwvTiRMntHXrVm3dulVDhgzRPffco4iIiOYqGQAAAAAAAGiwkA4Ac3Jy9Nxzz0mSLr74Yv9agA0VGRmpq666Sr/85S+VnJwsh8MhScrMzNSqVav0wQcf6NNPP1VsbKymT5/e7PUDAAAAAAAA9bH5fD6f2UWYobCwULNmzdLhw4fVuXNnPfnkk2rTpk2zXuPll1/W2rVrZbPZ9Nxzz6lr165N6s/lcgV0njMhsUnXBYxWUWH8MOT1VBjaf0Sk3dD+3W6Pof1HGlz/yfy8RrV3Op2y2+3yer2y242tDQAAAACsLiRnAJaUlOiRRx7R4cOHlZiYqD/96U/NHv5J0k033aR3331XZWVl2r59e70BYHp6upYtW1br8RtvvFGTJk1qfCEhGfECCCZOp7NR7cPCwqr9FwAAAAAQuJALAN1ut/70pz9p3759atu2rR599FF17tzZkGtFR0ere/fuysjI0PHjx+ttX1RUpOzs7FqPFxcXBzQTxuiZT8VFZYb274iNNLR/mM9mM/4axcXG/jmN8Rm7zqfR9+j/GfiCof0v/zqwZRBsLfGHAwAAAAAsLqQCQLfbrUcffVTffPON4uLi9Kc//UndunUzuyy/2NhYdezYsdbjDodDXq83gJ75AA3AXI0du8LCwmSz2eTz+QgBAQAAAKCJQiYALC8v1/z587Vz5045HA49/PDDSk5ONvSapaWlyszMlCR16tSp3vZpaWlKS0ur9bjL5VJeXuPW0ZJYAxCA+Ro7dlWtAVhRUcEagAAAAADQRCGxuJLH49GCBQv01VdfKTo6Wg899JB69+7d5H7r2z9l+fLlKisrk81m08CBA5t8PQAAAAAAAKCxLD8D0Ov16oknntD27dsVGRmpOXPmqG/fvg0+/5ZbblF2drZGjBihGTNmVDs2a9YsXXDBBRo4cKC6d+/un6WSmZmpNWvWaPPmzZKkX/3qV03eARgAAAAAAAAIhOUDwL1792rLli2SKmfsPfHEE3W2X7JkSYP7zsnJUXp6utLT02W32+VwOFRWVia32+1vM2zYMN12222BFQ8AAAAAAAA0keUDwFMf0y0vL9fJkyebre8pU6Zox44dOnDggPLy8vTTTz/JbrfrF7/4hc466yyNHDlS5513XrNdDwAAAAAAAGgsm6++hewQNFwuV0DnGb0JSHFRmaH9O2IjDe0f5muJYaggv9TQ/mNiIgzt3+jNvKcOXmxo/3/ddEOj2ldtAuL1etkEBAAAAACaKCQ2AQEAAAAAAABCFQEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBhBIAAAAAAAACAhREAAgAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGHhZheA1s8RG2lo/z6fz9D+JclXYew1bGE2Q/svyC81tP99GScM7b9Ht7aG9i9JRcXlhvafFBNhaP//74y3DO3/+c03G9q/11diaP8AAAAAgNoxAxAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIxNQFoRu91udgkAEBDGLwAAAAAwDwFgK+J0OgM6z+upaOZKAKBxAh2/CA4BAAAAoOkIAFuRvLy8gM6Lb9O2mSsBgMZp7PgVHx8vu90ur9dLCAgAAAAATUQA2Ip4vV6zSwCAgDB+AQAAAIB52AQEAAAAAAAAsDACQAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACyMABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALAwAkAAAAAAAADAwggAAQAAAAAAAAsjAAQAAAAAAAAsjAAQAAAAAAAAsDACQAAAAAAAAMDCbD6fz2d2Ea3d5s2btWjRonrbpaenKz4+PuDruFyugM5zJiQGfE20DhUVxv4Ye8q9hvYfHm78v0VUGDzUhYUZ+x68ngpD+y8uLjO0/wqVNKq90+mU3W6X1+uV3W43qCoAAAAACA3hZhdgJWFhYXUGfDabrQWrAQAAAAAAAAgAm1X79u310ksvmV0GAAAAAAAA4McagAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYawA2o/z8fM2YMUNHjx6VJLVr107nnnuuxo4dqzPOOMPc4gAAAAAAABCSmAHYjNxutw4dOqSIiAh5vV4dO3ZMGzZs0IwZM7RmzRqzywMAAAAAAEAIYgZgM0hMTNSNN96owYMHq0uXLoqIiJDH49GePXu0ZMkS7d+/X6+++qoSExM1bNgws8sFAAAAAABACLH5fD6f2UVYWXl5uWbNmqV9+/apffv2eumllxQWFtjES5fLFdB5zoTEgM5D61FRYeyPsafca2j/4eHGT0auMHioC/TnuqG8ngpD+y8uLjO0/wqVNKq90+mU3W6X1+uV3W43qCoAAAAACA3MADRYRESE0tLS9OCDD8rlcungwYNKSUmpsW16erqWLVtWa1833nijJk2a1PgiiHgBmMzpdDaqfVWganSwCgAAAAChgACwBfTp08f/+scff6w1ACwqKlJ2dnat/RQXFwc0E8bomUMAUJ9AZ/HZbLZmrgQAAAAAQg8BYBCJjY1Vx44daz3ucDjk9QbyKCYfoAGYq7FjV1hYmGw2m3w+HyEgAAAAADQRAWAL2Ldvn/91p06dam2XlpamtLS0Wo+7XC7l5eU1+vqsAQjAbI0du6rWAKyoqGANQAAAAABoIhZXaqL69lDxeDxaunSpJKldu3bq1atXS5QFAAAAAAAASCIAbLLs7Gzdd999eu+993T8+HH/971er3bv3q1Zs2bp22+/lSRNnjyZBe0BAAAAAADQongEuBns379f+/fvlyRFRkYqOjpaxcXF8ng8kqTw8HBNnjxZl112mYlVAgAAAAAAIBQRADZRQkKCbr31Vu3du1eHDh1Sfn6+ioqKFBUVpW7duik1NVWjR49WUlKS2aUCAAAAAAAgBNl89S1ih6DhcrkCOo9NQKyvosLYH2NPeSC7TzdceLjxj8ZXGDzUGf14v9dTYWj/xcVlhvZfoZJGta/aBMTr9bIJCAAAAAA0EQvSAQAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFsQswYAFG7+UTGWXsUHHyZOM2iAhEfHy04dcwkrfC2E1A4uKiDO2/oND432MAAAAAQM2YAQgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBhBIAAAAAAAACAhREAAgAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGHhZheAhrPb7WaXAAABYfwCAAAAAPMQALYiTqczoPO8nopmrgQAGifQ8YvgEAAAAACajgCwFcnLywvovPg2bZu5EgBonMaOX/Hx8bLb7fJ6vYSAAAAAANBEBICtiNfrNbsEAAgI4xcAAAAAmIdNQAAAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALAw1gAELMBub91ZfkJCjNklBL2wMJuh/f/0U6mh/cvY8gEAAAAAdWjdqQEAAAAAAACAOhEAAgAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWFi42QW0hF//+tcNbvv73/9eI0eObHD748ePa9q0afW2mzlzpoYMGdLgfgEAAAAAAIDmEBIBYEJCQp3HS0tLVVpaKklKSUkJ+Drx8fEKC6t5UmVkZGTA/QIAAAAAAACBCokAcMmSJXUef+ihh/T1118rJSVFPXr0CPg6Tz75pDp16hTw+QAAAAAAAEBzC/k1AF0ul3bu3ClJjXr0FwAAAAAAAGgNQj4AfP/991VRUaGIiAgNGzbM7HIAAAAAAACAZhXyAeAHH3wgSbrooosUFxdncjUAAAAAAABA8wqJNQBrs3fvXh09elSSNGrUqCb39/jjj+vYsWNyu91q27atevfurVGjRmngwIFN7hsAAAAAAAAIREgHgJs3b5YkJSYm6vzzz29yfwcOHJDD4VBYWJhOnDihrVu3auvWrRoyZIjuueceRURENPkaAAAAAAAAQGOEbADodrv1n//8R5I0fPhw2e32gPqJjIzUVVddpV/+8pdKTk6Ww+GQJGVmZmrVqlX64IMP9Omnnyo2NlbTp09vtvoBAAAAAACAhgjZNQC3bt2q4uJiSU3b/dfpdOr222/XOeec4w//JKl79+66++67NW7cOEnSxo0bdeTIkaYVDQAAAAAAADRSyM4ArHr8t0+fPuratath17npppv07rvvqqysTNu3b6/zWunp6Vq2bFmtx2+88UZNmjSp8UX4Gn8KADQnp9PZqPZhYWHV/gsAAAAACFxIBoA5OTnatWuXpKbN/muI6Ohode/eXRkZGTp+/HidbYuKipSdnV3r8eLi4oAeVfZ6Khp9DoDgEhlp7HBtdP92e2BBns1ma+ZKAAAAACD0hGQA+MEHH6iiokKRkZH65S9/aXY5frGxserYsWOtxx0Oh7xebwA98wEagLkaO3aFhYXJZrPJ5/MRAgIAAABAE4VkAFj1+O+gQYMUGxtr6LVKS0uVmZkpSerUqVOdbdPS0pSWllbrcZfLpby8vEbX4ExIbPQ5ANCcGjt2OZ1O2e12VVRUBLxJEwAAAACgUsgtrrRnzx798MMPkprn8V+fr+4F9pYvX66ysjLZbDYNHDiwydcDAAAAAAAAGiPkZgBWzf5r3769+vXr16BzbrnlFmVnZ2vEiBGaMWNGtWOzZs3SBRdcoIEDB6p79+7+mSqZmZlas2aN/3q/+tWvDN1sBAAAAAAAAKhJSAWAbrdbn376qSRpxIgRzbK7ZE5OjtLT05Weni673S6Hw6GysjK53W5/m2HDhum2225r8rUAAAAAAACAxgqpAHDLli0qLi6WVBkANocpU6Zox44dOnDggPLy8vTTTz/JbrfrF7/4hc466yyNHDlS5513XrNcCwAAAAAAAGgsm6++RewQNFwuV0DnsQkIALPlncxtVPuqTUC8Xi+bgAAAAABAE4XcJiAAAAAAAABAKCEABAAAAAAAACyMABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALAwAkAAAAAAAADAwggAAQAAAAAAAAsjAAQAAAAAAAAsjAAQAAAAAAAAsDACQAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACws3OwCYLy8k7kNbut0OmW32+X1epWXl2dgVQ1jt9vldDqVl5cnr9drdjmSuEf1Cbb7I3GP6hNs9wcAAAAA0LyYAQgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFsYmIK2I3W639PXqqiEYaqlJMNQVzPcoWGriHjWshmCoBQAAAADQ/Gw+n89ndhEAAAAAAAAAjMEMwFYkLy/P8GvEx8fLbrfL6/WqoKDA8OvVx263Kz4+XgUFBfJ6vWaXI4l7VJ9guz8S96g+wXZ/pOr3iJmJAAAAANA0BICtSEt/MA+WIECqrCWY6qkSTDUF4z0KxnqCsaZgEYz3BwAAAADQdGwCAgAAAAAAAFgYawCimvT0dBUVFSk2NlZpaWlmlxOUuEd14/7Uj3tUP+4RAAAAADQfAkBUc9VVVyk7O1sdO3bUO++8Y3Y5QYl7VDfuT/24R/XjHgEAAABA8+ERYAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACyMABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALCze7AASXSZMmqaioSLGxsWaXErS4R3Xj/tSPe1Q/7hEAAAAANB+bz+fzmV0EAAAAAAAAAGPwCDAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBh4WYXgOCQn5+vlStXatu2bTpx4oSioqLUq1cvXXXVVRo0aJDZ5ZkqIyND27Zt04EDB3Ts2DEVFBTI7XarTZs26tmzp4YOHaphw4YpLIw8/eTJk3rrrbe0fft2ZWdnq7y8XE6nU8nJybr44os1cuRIs0s0jc/n06effqqNGzfqu+++U3FxsRISEnTuuedq3Lhx6tWrl9klGqqwsFC7d+9WRkaGvvvuO2VkZCg/P1+SNG/ePKWmptZ4ntfr1ddff60vv/xSe/fu1Q8//KDS0lLFxcWpZ8+euuyyy/j5AwAAAIB62Hw+n8/sImCuzMxMzZ492/9hPCYmRm63WxUVFZKkq6++WtOmTTOzRFM9//zzWr9+vf/X0dHRkqTS0lL/984991zNmTNHDoejxesLFp9//rmeeeYZFRUVSZIiIyNlt9tVUlIiSercubMWL15sZomm8Xg8euKJJ7RlyxZJUlhYmBwOh4qKiuTz+WS323XHHXfo8ssvN7lS42zevFmLFi2q8VhdAeCzzz6rDRs2+H9tt9sVFRWl4uJi//dSU1M1Z84cxcTENG/RAAAAAGARzAAMceXl5Zo7d67y8/PVo0cP3XPPPUpOTpbb7dbatWu1dOlSrVu3TsnJyRo1apTZ5ZqiT58+SkpKUt++fZWUlOQP+U6ePKmNGzdq6dKl2r17t1555RVNnz7d5GrN8fXXX+uxxx6Tx+PR8OHDNXHiRHXv3l1S5cyvffv26dtvvzW5SvMsWbJEW7ZsUVhYmCZPnqzRo0crOjpaJ0+eVHp6ujZs2KDnn39e3bt311lnnWV2uYZxOp3q1auXUlJS1KVLFz311FP1nuPxeOR0OjVy5EgNHjxYPXv2VFhYmAoKCvTmm29q5cqV2rVrl5599ln94Q9/aIF3AQAAAACtDzMAQ9xbb72lxYsXKyoqSs8//7w6dOhQ7fiLL76od955R4mJiXrppZcUHk5m/HPp6el6/fXXFRkZqRUrVoTcPSopKdFdd90ll8ula665RlOmTDG7pKCSn5+vqVOnqry8XOPHj9fUqVNPazNr1izt3r1bffv21YIFC0yo0nher1d2u93/68LCQk2aNElS3TMA9+3bp+TkZEVGRtZ4fNmyZVqxYoUk6eWXXz5tDAMAAAAAsAlIyPvwww8lSUOHDq3xg/PEiRNls9mUm5urXbt2tXB1rcOZZ54pSSorK9NPP/1kcjUtb/PmzXK5XGrXrp1uuukms8sJOjt27FB5ebkkacKECTW2GT9+vCRpz549+vHHH1uqtBZ1avjXGH369Kk1/JNUbV3JjIyMgK4BAAAAAFZHABjCSkpKdODAAUlS//79a2zToUMHde3aVVJlkIHTVT3aGh0drYSEBHOLMUFViDx48GBFRESYW0wQysnJkSTFxsbK6XTW2KbqZ0yqfJwaDRcfH+9/7fV6TawEAAAAAIJXaD2riGqOHDmiqifAe/ToUWu7Hj16KCsrS1lZWS1VWtBzu93KycnRBx98oDVr1kiSxowZI5vNZnJlLausrEwHDx6UJPXq1UtHjhzRv/71L+3YsUOFhYVyOp1KTU3VNddc418TMFRVbapT37HMzMyWKMcydu/e7X9d1zgGAAAAAKGMADCE5ebm+l8nJibW2q7qWF5enuE1BbNT1yw7VXh4uMaOHau0tDQTqjJXdna2PB6PJOnYsWN64YUX5Ha7FRkZqcjISOXk5Oj999/XJ598orvvvluXXnqpyRW3vI4dO0qqnHGbk5NT46P2p4Z+p/5com5er1fLly+XVPmocLdu3UyuCAAAAACCE48Ah7DS0lL/66ioqFrbVR0rKSkxvKZgFhYWpoSEBCUkJPjXJLPZbBo7dqwmTpwY8BpnrVlhYaH/9cqVK+VwOPTQQw/p9ddf14oVK/TMM88oJSVF5eXleuaZZ3Ts2DETqzVHamqqf2OYN95447TjPp9Pq1at8v861H/OGuO1115TRkaGwsPDdeutt5pdDgAAAAAELQJAoIEcDoeWLFmiJUuW6I033tDf//53XX311Vq3bp2mT5+uPXv2mF1iizt1E/GKigrNmDFDF154ocLCKoeWnj17as6cOYqOjlZZWZnefPNNs0o1TUJCgkaPHi1JWr9+vV599VXl5OTI4/Ho+++/15///GcdOHDAHxKG2mPkgdq4caNWr14tSZo8ebJ/Mx4AAAAAwOl4BDiERUdH+1+73W45HI4a27ndbklSTExMi9TVGthsNnXq1Em33HKLOnbsqJdeekkLFy7Uiy++WOdsSqs59c9Et27ddMEFF5zWJjExUUOHDtWGDRtCdiOZKVOm6Pjx49q2bZvWrFnjXzeyypVXXqmMjAxlZGQoNjbWpCpbj08++UTPPfecpMqdyseNG2dyRQAAAAAQ3JgBGMJOXfevrnXHqo7VtoNpqLvyyisVERGhEydO6IsvvjC7nBZ16p+hU3ey/bmqY1U74oaaiIgIzZ49WzNnztSgQYPUpUsXderUSf3799cDDzygO++8U/n5+ZKkpKQkk6sNbp999pmeeuopVVRUaMyYMZo8ebLZJQEAAABA0GMGYAjr2rWrbDabfD6fMjMzaw1wqjYoYIH9mkVGRqpNmzbKzc3VDz/8YHY5LSo+Pl5Op7PBG8SE8uOtNptNQ4YM0ZAhQ047VlBQ4A9H+/Tp09KltRrbt2/X448/Lq/Xq1GjRrHuHwAAAAA0EDMAQ1hMTIx/3awvv/yyxjYul0tZWVmSpH79+rVYba1JSUmJCgoKJIXmY9Lnn3++JOnIkSO1tqk6VrUjLqr7+OOPJVXOsq26n6juyy+/1IIFC+TxeDRs2DBNnz49pANlAAAAAGgMAsAQd9lll0mqDCBqejxz9erV8vl8SkxMVGpqagtXZz6v11tto4uarF27Vh6PR5J0zjnntERZQWXEiBGSpKysrBqD5NzcXH/AdeGFF7Zoba1Bdna2VqxYIUm65pprQnI36frs3LlT8+fPV3l5uQYPHqwZM2b4N5oBAAAAANSPT1Ah7oorrlDnzp1VWlqqRx99VIcOHZJUufHHypUr9fbbb0uS0tLS/LuUhhKXy6W7775bGzZsqBaQ+nw+ZWVl6cUXX9Ty5cslSZdccol69OhhVqmm6devnwYMGCBJWrRokb744gtVVFRIkg4dOqR58+aptLRUbdq0CdnNGnbu3Kk1a9bo2LFj8nq9kipnjn7wwQeaOXOmCgoKlJqaqquvvtrkSo1VUFDg/yosLPR/v6ioqNqxqkBdkvbu3au5c+eqrKxMF110ke677z5CUgAAAABoJJuvvulNsLzMzEzNnj3bvwmBw+FQaWmpP8QZO3ZsyK61dfz4cU2bNs3/68jISEVHR6u0tFRlZWX+7w8cOFB/+MMfqu2sHEoKCws1Z84cHTx4UFLlfQoPD1dxcbEkKS4uTrNmzdK5555rZpmm2bx5sxYtWiRJCgsLk8PhUFFRkX926YUXXqj777/f8n9+fv3rXzeo3bx58/wzjmfPnq1du3ZJktq0aVNn+DdhwgRNmDCh6YUCAAAAgMWE3pQunKZ79+7661//qlWrVmnbtm1yuVyKjY1Vz549NWbMGA0aNMjsEk2TmJio+++/Xzt37tT+/fuVl5engoICRUREKCkpSb1799awYcPUv39/s0s1VVxcnBYuXKi3335bH3/8sY4ePSqPx6OkpCQNGDBAEyZMULt27cwu0zRnn322xo0bp2+++UbZ2dkqLi6W0+nUmWeeqREjRuiSSy4xu8Sgdeq/Uf300091ti0pKTG6HAAAAABolZgBCAAAAAAAAFgYawACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAAAAAAAAWRgAIAAAAAAAAWBgBIAAAAAAAAGBhBIAAAAAAAACAhREAAgAAAAAAABZGAAgAAAAAAABYGAEgAAAAAAAAYGEEgAAAAAAAAICFEQACAAAAAAAAFkYACAAAAAAAAFgYASAAAAAAAABgYQSAAAAAAAAAgIURAAIAgFbt8OHDstlsstlsmjJlitnlAAAAAEGHABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALAwAkAAAGB5+/fv11NPPaUJEybozDPPVFxcnCIjI9WxY0cNHTpUc+fOlcvlqvX83/zmN/6dhj/99NMGXXP48OH+c/bu3Vtru3Xr1um3v/2tUlJS1KZNGzkcDiUnJystLU2bNm2q8xoffvih/xoPP/ywJOnAgQO69957dc455yghIaHaMQAAAISmcLMLAAAAMNKSJUs0efLkGo/l5OQoJydHn3zyiRYuXKhly5ZpzJgxp7W74447tHLlSknS4sWLNWTIkDqvuW/fPn344YeSpKFDh+rss88+rU1WVpauv/56bd269bRjhw8f1uHDh7V06VJNnDhRS5YskcPhqO+tKj09XbfeeqtKSkrqbQsAAIDQQQAIAAAsrbi4WDabTf369dPQoUN11llnKTExUZJ05MgRbdq0SevXr1dBQYEmTpyoLVu2qH///tX6GDFihPr06aN9+/bpjTfe0KJFi5SQkFDrNRcvXux/fdttt512PCsrSxdffLF++OEHSdIFF1yg8ePHKyUlRWFhYdq3b5+WLFmigwcPatWqVSoqKtI777wjm81W6zW3bNmiefPmyWazafLkyfrlL3+p2NhYZWRkqHv37o25ZQAAALAYm8/n85ldBAAAQKAOHz6s5ORkSdLkyZP1j3/8o9rxb775RlFRUUpJSam1j02bNmncuHEqLi7WyJEja3z09plnntHdd98tSfrLX/6i3/3udzX25Xa7lZSUpBMnTqhdu3Y6evSooqKi/Md9Pp+GDBmirVu3ym6364UXXtC0adNq7GfKlClasWKFJOnvf/+7brnllmptPvzwQw0fPtz/644dO2rjxo0677zzan2vAAAACD2sAQgAACztnHPOqTP8k6RRo0bpnnvukSRt3rxZR48ePa3NlClT/I/hnjrD7+dWrVqlEydO+M85NfyTKtf8q3rs9+GHH64x/JOkqKgo/fOf/9QZZ5whSXryySfrfA+S9Le//Y3wDwAAAKchAAQAAJB06aWX+l9/9tlnpx1PSEjQDTfcIEnavXu3tmzZUmM/p4aDt95662nH//nPf0qqDPj+7//+r86aIiMjdeONN0qSvv32W2VmZtbatkePHho3blyd/QEAACA0sQYgAAAICf/5z3+0fPlybdu2TQcPHtRPP/2k8vLyGtseOXKkxu/fcccdeuWVVyRVBn2DBw+udnzfvn366KOPJFXuAty7d+/T+vj4448lSZ06ddL7779fb915eXn+13v27Kl1Pb8hQ4bUuUYgAAAAQhcBIAAAsLTCwkKlpaVp7dq1DT6noKCgxu9feOGFGjhwoLZv367XX39dixYtUtu2bf3H69v8o6ioSC6XS5KUmZmpCRMmNLgmScrNza31WNeuXRvVFwAAAEIHASAAALC066+/Xu+8844kKTY2VmPGjNEFF1ygLl26yOFwKDy88q9Du3fv1oMPPihJ8nq9tfZ3xx13aPv27SopKdFrr72m6dOnS6rctKPq8d4OHTrUGO6dPHmySe+lrKys1mMxMTFN6hsAAADWRQAIAAAs69NPP/WHf6mpqdqwYYM6d+5cY9uIiIgG9XnDDTfo3nvvVV5enhYvXuwPAE/d/OPmm29WZGTkaefGxcX5X/fv319ffPFFo94PAAAAEAg2AQEAAJa1YcMG/+v58+fXGv5J0qFDhxrUZ0xMjKZMmSJJ2rVrl39H37/97W+SJJvNVuPmH5LUtm1bfwhY2zqDAAAAQHMjAAQAAJb1448/+l+npKTU2fbdd99tcL+33367f8ONxYsX69tvv/Vv7jFy5Ej16tWr1nOHDRsmScrOzmYGIAAAAFoEASAAALCs2NhY/+uMjIxa223durVRAWDv3r01YsQISdLrr7+uhQsX+o/VtPnHqSZPnux/PWfOHPl8vgZfFwAAAAgEASAAALCsgQMH+l8/8sgjKi0tPa3Nzp07de211zY6iLvzzjslScXFxXrllVckSZ06ddK4cePqPO/aa6/VxRdfLElav369fvvb36qwsLDW9l6vV+vXr9fcuXMbVR8AAABQhU1AAACAZV1zzTXq3r27MjMz9d///ld9+vTRLbfcopSUFBUXF+ujjz7SihUrVF5ersmTJ/t38W2IX//61+rSpYuOHTvm/97UqVPr3UzEZrNp1apVuuSSS5SVlaX09HS9/fbb+s1vfqMBAwYoMTFRpaWlOnbsmHbs2KGNGzcqJydHI0eO1Jw5cwK+FwAAAAhdBIAAAMCyoqKitHr1al155ZVyuVzKzMzUQw89VK2N3W7XggULdPHFFzcqAAwPD9e0adP0yCOPSKoM9qZNm9agc5OSkvTf//5XU6ZM0bvvvuvfUbguXbt2bXBtAAAAwKl4BBgAAFjagAEDtHPnTt17773q06ePoqOjFRcXp969e+u2227Ttm3bNHPmzID6vvzyy6u9Tk5ObvC5HTt21DvvvKOtW7dq+vTpOv/889WuXTvZ7XbFxsaqV69eGjt2rBYsWKDdu3frH//4R0A1AgAAADYfK08DAAAEZMaMGVq0aJEkafXq1ZowYYLJFQEAAACnIwAEAAAIQFFRkbp166a8vDwlJSXp8OHDCg9ndRUAAAAEHx4BBgAACMBTTz2lvLw8SdL06dMJ/wAAABC0mAEIAADQAEePHtWuXbtUUlKijz76SM8++6y8Xq86deqkjIwMxcXFmV0iAAAAUCP+qRoAAKABNm7cqJtvvrna9+x2u15++WXCPwAAAAQ1HgEGAABopE6dOmn06NH65JNPNGbMGLPLAQAAAOrEI8AAAAAAAACAhTEDEAAAAAAAALAwAkAAAAAAAADAwggAAQAAAAAAAAsjAAQAAAAAAAAsjAAQAAAAAAAAsDACQAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACyMABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALAwAkAAAAAAAADAwggAAQAAAAAAAAsjAAQAAAAAAAAsjAAQAAAAAAAAsDACQAAAAAAAAMDCCAABAAAAAAAACyMABAAAAAAAACyMABAAAAAAAACwMAJAAAAAAAAAwMIIAAEAAAAAAAALIwAEAAAAAAAALIwAEAAAAAAAALCw/w8C0OWwmjEtCwAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.DataFrame(data)\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"pos\"].astype(int)\n", + "df[\"p(brown)\"] = df[\"p(brown)\"].astype(float)\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\"))\n", + " + scale_y_reverse()\n", + " + geom_tile(aes(fill=\"p(brown)\"))\n", + " + scale_fill_cmap(\"Purples\")\n", + " + facet_wrap(\"noise_level\")\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "99c57ecc-f4c4-459b-a391-7c8fde5818b4", + "metadata": {}, + "source": [ + "### Sampling noise and running repeatedly" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "4b729f90-4840-47c2-ac2e-1f5aa19b05bd", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 9.13%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 7.91%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 7.51%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 8.36%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.79s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 9.84%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 8.33%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 8.20%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 7.92%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 8.24%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 12/12 [00:21<00:00, 1.78s/it]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "average prob so far: 8.59%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "base = inputs\n", + "data = []\n", + "with torch.inference_mode():\n", + " for i in range(10):\n", + " for layer_i in tqdm(range(12)):\n", + " for pos_i in range(9):\n", + " config = restore_corrupted_config(\n", + " type(blip), layer_i, noise_level=1.0\n", + " )\n", + " intervenable = IntervenableModel(config, blip)\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " [base, base],\n", + " {\n", + " \"sources->base\": (\n", + " [\n", + " [[0, 1, 2, 3, 4, 5, 6, 7, 8]],\n", + " [\n", + " [\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " ]\n", + " ],\n", + " ],\n", + " [\n", + " [[0, 1, 2, 3, 4, 5, 6, 7, 8]],\n", + " [\n", + " [\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " pos_i,\n", + " ]\n", + " ],\n", + " ],\n", + " )\n", + " },\n", + " )\n", + " logits = counterfactual_outputs[\"decoder_logits\"][0, 0].softmax(-1)\n", + " p_brown = logits[2829]\n", + " data.append(\n", + " {\n", + " \"layer\": layer_i,\n", + " \"pos\": pos_i,\n", + " \"p(brown)\": p_brown.item(),\n", + " \"iteration\": i,\n", + " }\n", + " )\n", + " df = pd.DataFrame(data)\n", + " avg_p = df[df[\"iteration\"] == i][\"p(brown)\"].mean()\n", + " print(f\"average prob so far: {avg_p:.2%}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "a8e5abf3-fc91-4feb-9f9e-18844460011c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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fh1//PFRzhIAAsNFQIAISU1N9d2vqKhodFxlZeVR4wEAQOwpLy/XLbfcoi1btqht27b6wx/+oMzMzGinBcAgy7LUsWNHXXPNNbrqqqt08OBB3XvvvU1+ngeAWEQDEIiQ2rX9pKbX9yssLJTU9DqBAAAguioqKnTrrbdq7dq1atWqlR555BF17tw52mkBCKOzzz5biYmJKiws1JdffhntdAAgIDQAgQjJycnxXS1s69atjY7btm2bJKlbt26RSAsAAASosrJSt912m1atWqWMjAz94Q9/4H0biANJSUnKysqSJO3atSvK2QBAYGgAAhGSmpqqfv36SZKWLVvW4JiCggJt375dkjR06NCI5QYAAPxTVVWlO++8U8uXL1daWpoeeugh9erVK9ppAYiA8vJyHThwQBLL9QBoeWgAAhE0adIkSdLixYuVn59/1PZ58+bJ6/Wqbdu2GjJkSKTTAwAATaipqdE999yjZcuWKSUlRb///e913HHHRTstAAa43W55vd4mx7z22muqqamRJA0aNCgSaQGAMTQAgQiaMmWKOnfurIqKCv2///f/9P3330s6fCrRyy+/rDfffFOSdMkllyghgYt0Ay1RcXGx73bw4EHfv5eUlNTbVvsDBICWwe126/7779fSpUuVnJysBx98kKuAAjZSUFCgK6+8UgsXLtTevXt9/+71erV9+3bNnTtXf//73yVJY8eOVY8ePaKUKQAEx/I292sOxIyNGzdGOwUYsHXrVt18880qKiqSJKWlpam8vFwej0eS9JOf/ETXXXddNFOEAX369An4MdS4PYwfP96vcY899pgGDx4c3mQQNtR4/Fm5cqVuuOEGSVJiYqLS09ObHL9gwYIIZIVwocbjz549ezRt2jTf35OSkpSamqry8nJVVVX5/v3EE0/UnXfeySnALVwwNQ60dEwxAiKsR48e+tvf/qaXX35ZS5cuVX5+vtLT09W7d2+de+65GjNmTLRTBAAAR6j7O/Pq6mrfL/IA2EObNm101113afny5Vq/fr327dun4uJiJSYmqmvXrurXr58mTZqkESNGRDtVAAgKMwBbEH6rCLQczBwA7I0aB+yNGgfsjRmAiEesAQgAAAAAAADYGA1AAAAAAAAAwMZoAAIAAAAAAAA2RgMQAAAAAAAAsDEagAAAAAAAAICN0QAEAAAAAAAAbIwGIAAAAAAA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44rXGg9n3CP3Ybfvmdr9cFxm9hep/cRynbfkGq/dD5//Qt9fpPbDcSEYL730kg4cOCBJmjFjRnSTQaMcDod+8Ytf6IEHHtCHH36oDRs2qG/fvqHHNZAbAAAAAAAADProo498V+O95557JEkbNmzQrFmz1LdvX6WlpSk7O1ujRo3SY4891uwZg3//+98lSW3atAn46r5FRUV64IEHNHToULVu3VppaWnq37+/fvOb32jPnj1NPnbmzJm+49i2bZsk6c0339TUqVPVrVs3JScn19tW1xtvvKGf/exn6t69u1wulzIzM3Xcccfpqquu0jfffNPoPh966CHfPhctWtTgmE2bNvnGWJalefPmNTguPz9fDodDlmXppz/9ab1t27Zt8z2+9sq9Bw4c0IMPPqihQ4eqVatW9Z6r/Pz8Jp+rWuedd57v/j/+8Q+/HtMsLwAAAAAAAGLKkiVLvJK8krx3332395VXXvG6XC7fvx1569evn3fbtm0Nxtq1a5dv3Nlnn93svmvHjhs3zrt69Wpvt27dGt1vq1atvO+9916jsWbMmOEbu2HDBu95553XYJytW7f6HpOfn+8dO3Zso/uU5LUsy3v11Vd7a2pqjtrnl19+6Rt36623NpjXU089VS/eZZdd1uC4V155xTfmySefrLdt69atvm0zZszwfvPNN96cnJxGc+7QoYN39erVzT7/Ho/H26pVK68kb9++fZsd7w9OAQYAAAAAAIhh33zzjWbPnq3q6mpdeOGFmjhxolJTU7VmzRo999xz2r17t9avX6/x48dr+fLlysrKqvf4999/33d/1KhRfu+3uLhY55xzjrZv366TTz5Z559/vjp06KC8vDy99NJLWrFihQ4cOKBzzz1Xn3zyiYYPH95kvBtuuEHvvvuuunXrpl/+8pfq16+fKioq9NVXXyk5OVnS4bUKTz75ZK1fv16S1K5dO1188cUaNGiQqqqq9Mknnyg3N1fV1dV68skndfDgQb344ov19jNs2DDf2pL//ve/G8zlyH/3Z9yECRMaPbYdO3bozDPPVEFBgc477zydeuqpat26tbZt26ann35amzdv1t69e/Wzn/1MK1asUGJiYqOxLMvSiBEj9MEHH2jDhg3atm2bunfv3uh4vxhpIwIAAAAAAMCYujMAJXldLpd3yZIlR40rKirynnjiib5xV1555VFjrrrq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njxZW7ZskSSlp6froosu0qRJk9S7d2+lpaWptLRUmzdv1ocffqiXXnpJhw4d0vfff6/JkydrxYoVSkxksS0AAAAAABBHmpkBeNTmltYRjLMZjrEkLA3AJ598UuvXr5dlWRo1apRee+01de7c+ahxJ5xwgqZOnao777xTF1xwgT7//HOtX79eTz75pK6//vpwpAYAAAAAABCDLFmBdshs11Cz3QHFjLDMrXz11VclSZ06ddK7777bYPOvrk6dOulf//qXb9wrr7wSjrQAAAAAAABikmV5Zf33SsAmborSLeS8ERZhmQG4YcMGWZalSy65xO+r3mZkZOjSSy/Vfffdpw0bNoQjrbArLi7WDTfcoB9++EGS1KZNGw0cOFBTpkxR9+7do5scAAAAAACIYWY7YPTSUFfY1gCUpAEDBgT0uP79+0uSqqurjecUCZWVldq6davS0tJUUVGhXbt2adeuXfrwww81Y8YM/eQnP4l2igAAAAAAIEbFe9Mu3o8/nMLSAOzSpYs2bdqk8vLygB5XO/6YY44JR1ph07p1a02bNk0nnXSSOnfurMTERNXU1Gjt2rV64YUXtHHjRj3//PNq3bq1xo0bF+10AQAAAABADIrmKbD/u56IpSOvLhKxtOgAhk1Y1gA89dRT5fV69e9//zugxy1evFiWZem0004LR1phM2TIEE2bNk3dunXzXb04ISFBJ5xwgn7/+9+rb9++kqR//OMf8ng80UwVAAAAAADEKpOLAAZ4s3w31bl/+BaxPOgAhk1YZgDOmjVLzz33nObNm6fLL79cY8eObfYxn376qV555RW5XC7NmjUrHGlFRWJioqZPn64777xThYWF2rJli3r16tXg2NzcXL388suNxpo2bZouvPDCZvfppccIhEV2dnaT2x0OR70/TcevRY0D4RErNS5Jh4org9oHgMbFUo27a7zNDwIQMH/rPGZF9SIYR+44Oq9TXAQkfMLSAOzTp4+ef/55zZgxQ2eeeaYeeughXXbZZUpKSjpqbHV1tZ599lndcsstSkxM1PPPP6/evXuHI62oqZ0BKEl79uxptAFYWlqq/Pz8RuOUlZXJ6XQ2u78ajzvwJAE0y5/6kw7/tiyc8alxIDxipcYBhEcs1bi7piaofQBoWkt/r7W8EZr/5tfrXCNjvPwCo6UKSwPw3nvvlXT4VOB//vOfmjVrlu68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lCnq06eP2Sk2qry8XHv27FFeXp6+/vpr5eXlqbS0VJL0+OOPKzs7u9Hneb1eff755/r000+1d+9effvtt6qurlZqaqp69+6tyy+/PCSvT+o8ulipxqXorPNoq/FARNv8t2jLN5axC3AUYXYQED2YAQhYW7hnAObn52vBggX+NzXJyclyu92qq6uTJE2ePFmzZs0Ka07BevbZZ7Vx40b/50lJSZKk6upq/9cuuOACLVy4UE6nM+z5Beuf//ynnnrqKVVU1O/mmJCQIIfDoaqqKklSly5dtGzZMjNTDJjH49GTTz6prVu3SpLsdrucTqcqKirk8/nkcDh055136sc//rHJmZ5ty5YtWrp0aaPHmmsOPPPMM9q0aZP/c4fDocTERFVWVvq/lp2drYULFyo52ZjdKqnz6KpzK9W4FL11Hk01HoiaGo9KTlS2fOL3RHITrrUNp2RngtLSkkKSS6xjBiAAAEAEq62t1aJFi1RaWqrMzEzdc889ysrKktvt1uuvv64VK1Zo/fr1ysrK0vjx481ON2D9+/dX9+7dNWDAAHXv3t3/5v/kyZPavHmzVqxYoT179ujFF1/U7NmzTc62dT7//HP95je/kcfj0RVXXKFp06apV69ekupnq+zbt09fffWVyVkGbvny5dq6davsdrtmzJihq6++WklJSTp58qRyc3O1adMmPfvss+rVq5fOO+88s9M9i8vlUp8+fdS3b19169ZNS5YsafE5Ho9HLpdL48aN04gRI9S7d2/Z7XaVlZVp3bp1WrVqlXbv3q1nnnlG999/f9A5UufRVedWq3Epuus8Gmq8NQJv5kVy2+9//W+WgbUCo2NU0YkZgFGE2UFA9GAGIGBt4ZwB+Pe//13Lli1TYmKinn32WXXs2PGM488995zeeOMNZWRk6IUXXlBcnDX+vpubm6vXXntNCQkJWrlyZdSMq6qqSj//+c9VXFys6667TjNnzjQ7paCUlpbq1ltvVW1tra699lrdeuutZ50zf/587dmzRwMGDNDixYtNyLJpXq9XDofD/3l5ebmmT58uqfnZQfv27VNWVpYSEhIaPf7KK69o5cqVkqQ///nPZ9Vla1Hn0VPnVqtxKbrrPFpqPFA1bo9OllQ1edxmoe5YU52oxCSH2qdH14zgaBGdiy0AAADEiPfee0+SNHr06EbfgEybNk02m00nTpzQ7t27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0lKtWrVK27dv1/Hjx5WYmKg+ffpowoQJGj58uNnptVpeXp62b9+uAwcO6OjRoyorK5Pb7Va7du3Uu3dvjR49WmPGjJHdHr197pMnT+rvf/+7duzYocLCQtXW1srlcikrK0vDhg3TuHHjzE4xYD6fTx999JE2b96sr7/+WpWVlUpPT9cFF1ygKVOmqE+fPmaneJby8nLt2bNHeXl5+vrrr5WXl6fS0lJJ0uOPP67s7OxGn+f1evX555/r008/1d69e/Xtt9+qurpaqamp6t27ty6//PKQvDap8ehDjZsr2mocAAAAaCubz+fzmZ0EQi8/P18LFizwv7FJTk6W2+1WXV2dJGny5MmaNWuWmSm22rPPPquNGzf6P09KSpIkVVdX+792wQUXaOHChXI6nWHPL1j//Oc/9dRTT6miokKSlJCQIIfDoaqqKklSly5dtGzZMjNTDJjH49GTTz6prVu3SpLsdrucTqcqKirk8/nkcDh055136sc//rHJmZ5py5YtWrp0aaPHmmsOPPPMM9q0aZP/c4fDocTERFVWVvq/lp2drYULFyo5OdmQXKlxatxM1HjoaxwAAAAIBjMAY0Btba0WLVqk0tJSZWZm6p577lFWVpbcbrdef/11rVixQuvXr1dWVpbGjx9vdroB69+/v7p3764BAwaoe/fu/gbAyZMntXnzZq1YsUJ79uzRiy++qNmzZ5ucbet8/vnn+s1vfiOPx6MrrrhC06ZNU69evSTVz1jZt2+fvvrqK5OzDNzy5cu1detW2e12zZgxQ1dffbWSkpJ08uRJ5ebmatOmTXr22WfVq1cvnXfeeWanewaXy6U+ffqob9++6tatm5YsWdLiczwej1wul8aNG6cRI0aod+/estvtKisr07p167Rq1Srt3r1bzzzzjO6///6gc6TGqXGzUeOhrXEAAAAgWMwAjAF///vftWzZMiUmJurZZ59Vx44dzzj+3HPP6Y033lBGRoZeeOEFxcVZoy+cm5ur1157TQkJCVq5cmXUjKuqqko///nPVVxcrOuuu04zZ840O6WglJaW6tZbb1Vtba2uvfZa3XrrrWedM3/+fO3Zs0cDBgzQ4sWLTciycV6vVw6Hw/95eXm5pk+fLqn52UH79u1TVlaWEhISGj3+yiuvaOXKlZKkP//5z2fVZGtR49S4majxsxld4wAAAECwWJwmBrz3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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.DataFrame(data)\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"pos\"].astype(int)\n", + "df[\"p(brown)\"] = df[\"p(brown)\"].astype(float)\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\"))\n", + " + scale_y_reverse()\n", + " + geom_tile(aes(fill=\"p(brown)\"))\n", + " + scale_fill_cmap(\"Purples\")\n", + " + facet_wrap(\"iteration\")\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "796417fa-3192-4013-843e-2c20dc53b7c9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " layer pos p(brown) iteration\n", + "0 0 0 0.008152 4.5\n", + "1 0 1 0.015465 4.5\n", + "2 0 2 0.022314 4.5\n", + "3 0 3 0.003820 4.5\n", + "4 0 4 0.025465 4.5\n", + ".. ... ... ... ...\n", + "103 11 4 0.193646 4.5\n", + "104 11 5 0.137404 4.5\n", + "105 11 6 0.209949 4.5\n", + "106 11 7 0.234223 4.5\n", + "107 11 8 0.048529 4.5\n", + "\n", + "[108 rows x 4 columns]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAB7CAAAewgFu0HU+AAB2xUlEQVR4nOzdeZxcdZ3v/3d1Z+1sdAg7hE32sAsiOwEZxCCr+lO4grhcZxTFYZQ7wiij6CAqioPoIFcUgjAKOooLsogCygBXZQ0gYUswgSQQsqeTdOr3R0xPQrqT7qSrT9Xp59NHS6Xr1KnPSSggr3zPOZVqtVoNAAAAAFBKTUUPAAAAAADUjgAIAAAAACUmAAIAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACUmAAIAAAAACUmAAIAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACUmAAIAAAAACUmAAIAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACU2ICiB6D7Zs2aVfQIDW/IkCFpamrK8uXLs3jx4qLHoQcqlUqGDh2aRYsWpVqtFj0OPeSz19h8/hqbz1/j8tlrbD57jc3nr7Gt6/M3ZsyYAqaCYlkBSL8ydOjQtLS0ZOjQoUWPQg81NTWlpaUlTU3+sdWIfPYam89fY/P5a1w+e43NZ6+x+fw1Np8/WJN/mgEAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACUmAAIAAAAACUmAAIAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACUmAAIAAAAACUmAAIAAABAiQmAAAAAAFBiAiAAAAAAlJgACAAAAAAlJgACAAAAQIkJgAAAAABQYgIgAAAAAJSYAAgAAAAAJSYAAgAAAECJCYAAAAAAUGICIAAAAACUmAAIAAAAACVWqVar1aKHoHtmzZpV9Ag9Mmpka9EjNIzly5cXPUJDWLxoWdEjNIzhIwYXPUJDWL7cvwK7zX8udMvSpe1Fj9Aw5s5rK3qEhvDXafOKHqFhLFy0tOgRGsZN37q/6BEawsM/eLzoERrGTTM/VvQIq2ltbU1zc3Pa29sze/bsNZ4fM2ZMAVNBsawABAAAAIASEwABAAAAoMQEQAAAAAAoMQEQAAAAAEpMAAQAAACAEhMAAQAAAKDEBEAAAAAAKDEBEAAAAABKTAAEAAAAgBITAAEAAACgxARAAAAAACgxARAAAAAASkwABAAAAIASEwABAAAAoMQEQAAAAAAoMQEQAAAAAEpMAAQAAACAEhMAAQAAAKDEBEAAAAAAKDEBEAAAAABKTAAEAAAAgBITAAEAAACgxARAAAAAACgxARAAAAAASkwABAAAAIASEwABAAAAoMQEQAAAAAAoMQEQAAAAAEpMAAQAAACAEhtQ9ABlMWfOnNx000154IEH8sorr2Tw4MHZcccdc/zxx+eggw4qejwAAAAA+ikBsBdMmTIlF1xwQebMmZMkGTp0aBYsWJCHHnooDz30UE444YR88IMfLHhKAAAAAPojAXADLV26NBdffHHmzJmTbbfdNv/4j/+Y7bffPm1tbfnpT3+a66+/Prfccku23377HHPMMUWPCwAAAEA/4xqAG+jXv/51XnrppQwePDif+cxnsv322ydJBg8enHe+851561vfmiSZOHFili1bVuSoAAAAAPRDAuAG+u1vf5skOfzww7PJJpus8fypp56aSqWSV199NY8++mgfTwcAAABAfycAboBFixbl6aefTpLst99+nW6zySabZOutt06SPPzww302GwAAAAAkAuAGefHFF1OtVpMk2267bZfbrXxu6tSpfTIXAAAAAKwkAG6AV199tePx6NGju9xu5XOzZ8+u+UwAAAAAsCoBcAMsXry44/HgwYO73G7lc4sWLar5TAAAAACwKgEQAAAAAEpsQNEDNLIhQ4Z0PG5ra0tLS0un27W1tSVJhg4dutb9TZw4MT/4wQ+6fP60007LmWeeuR6TFmN5e9ETAAAAUGutra1Fj7Capqamjr/W22xQFAFwA6x63b9X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AKDEBEAAAAAAKDEBEAAAAABKTAAEAAAAgBITAAEAAACgxARAAAAAACgxARAAAAAASkwABAAAAIASEwABAAAAoMQEQAAAAAAoMQEQAAAAAEpMAAQAAADoJ5YuXZrddtstlUol5513XqfbVCqVVCqVHHnkkX07XD/3pje9KZVKJWeddVav71sABAAAAOgnvva1r+XJJ5/MRhttlAsvvLDocVjFpZdemiS59tprc9999/XqvgVAAAAAgH7g1VdfzRe/+MUkyTnnnJPW1taCJ2JVRxxxRA477LBUq9V86lOf6tV9C4AAAAAA/cBXvvKVzJkzJ0OGDMnHP/7xosehE+eff36S5N57782vf/3rXtuvAAgAAABQcvPnz8+3vvWtJMk73vGObLzxxgVPRGfe+ta3ZuzYsUlWBNveIgACAAAAlNz111+f1157LUly5plnFjsMXWpqasr/+l//K0lyxx135Kmnnuqd/fbKXgAAAADoNb/97W877sZ70UUXJUmeeuqpnHPOOdlll10ybNiwtLa25qCDDsrXvva1tLW1rXV/3/ve95IkG2+8cY/v7jt79ux84QtfyH777ZfRo0dn2LBh2X333fPJT34yL7300lpfe9ZZZ3Ucx/PPP58k+a//+q+ccsop2XbbbTN48ODVnlvVT37yk7zrXe/Kdtttl5aWlowcOTK77bZbPvzhD+ePf/xjl+/5pS99qeM9b7/99k63efrppzu2qVQqueGGGzrdbsaMGWlqakqlUsk73vGO1Z57/vnnO16/8s69r732Wr74xS9mv/32y0YbbbTaz9WMGTPW+nO10qmnntrx+Pvf/363XrMuA3plLwAAAADUzH/+53/m7LPPzsKFCzu+t3Dhwtx///25//77c9VVV+XWW2/Ntttuu8Zrp0+fnv/+7/9OkhxyyCFpbm7u9vs+9thjmTBhQl544YXVvv/EE0/kiSeeyNVXX50bb7wxf/d3f7fOfS1ZsiSnnXZabr755rVuN3PmzJx66qm555571njuySefzJNPPpmrrroqf//3f59vfOMbaxzPUUcd1fH4N7/5Td7ylressZ/f/OY3a/z43e9+9xrb3XXXXalWq0mS8ePHr3XuP/3pTzn55JMzZcqU1b6/8ufquuuuyx133JFx48atdT/77LNPNtpoo7z22mv58Y9/3HHjlg0hAAIAAADUsT/+8Y+55JJLsnTp0rznPe/J0UcfnaFDh+bxxx/Pd7/73UyfPj1PPvlkjjrqqPz5z3/OqFGjVnv9qjeTOOigg7r9vnPmzMmJJ56YF154IYcffnhOO+20bLbZZpkyZUquv/76PPTQQ3nttddy0kkn5e67784BBxyw1v2de+65+dWvfpVtt902733ve7Prrrtm8eLFeeCBBzJ48OAkK65VePjhh+fJJ59MkmyyySZ53/vel7333jtLlizJ3XffnYkTJ2bp0qW58sorM3fu3Fx33XWrvc/++++fkSNHZu7cuWuEvpU6C4Dr2m5tAXDq1Kk5/vjjO+LlW97ylowePTrPP/98rrrqqkyePDkvv/xy3vWud+Whhx7KwIEDu9xXpVLJgQcemNtuuy1PPfVUnn/++Wy33XZdbt8dAiAAAABAHfv5z3+elpaW3HrrrWucvvtP//RPOf7443Pfffflueeey/nnn59vf/vbq21z//33dzx+05ve1O33feihh5KsOKX2U5/61GrPfeITn8i5556bK664IosXL85ZZ52VRx99NE1NXV9t7le/+lVOOumk3HDDDRkyZEjH988+++yOx+eff35H/Nt///1z6623ZsyYMR3Pn3XWWfnIRz6St7zlLZk9e3YmTpyYE044Ie985zs7tmlubs7hhx+en//85/njH/+YOXPmrBFFf/vb3yZJDj744PzhD3/Is88+mxdeeGGNFZR33XVXkmSrrbbKLrvs0uWx/eY3v8mIESNy11135fDDD1/tub//+7/PYYcdloceeiiTJk3KLbfcklNOOaXLfSXJm9/85tx2221Jkv/+7//e4ADoGoAAAAAAde6SSy7p9Np9G220UX70ox9l+PDhSVZc62/mzJmrbfPoo492PN5111179L6nnHLKGvEvWRHZLr/88rzxjW9MkkyaNCk///nP17qvrbbaKtddd91q8W9VM2fOzHe/+90kSUtLS26++ebV4t9K+++/f8cdjZMVPzevt3K1Xnt7e373u9+t9txjjz3WcT2+z3zmMx2r8V6/CvDFF1/M008/nWT104q7cvnll68R/5Jk+PDh+bd/+7eOH//qV79a57522223jsePPPLIOrdfFwEQAAAAoI5ttNFG+eAHP9jl81tttVVOP/30JElbW1tuueWW1Z5f9QYbo0eP7tF7dxb/Vmpqasp5553X8eObbrpprfs6++yzO0JlZ375y19m8eLFSZJ3vetdnV7PcKV3vvOd2XHHHZMkf/7zn/Pcc8+t9vyqp+t2dbrvsGHDMn78+Bx44IFr3e71++vMmDFjOu7e25mjjjoqAwasOBH3scceW+u+ktV/nTq7QUpPCYAAAAAAdezQQw/tctXcSsccc0zH4wceeGC151599dUkK1bVrWs/qxo5cmRHHFuf9329ww47bK3Pr3qq8rHHHrvWbSuVymrbrLzJyUp77bVXNt544yTJnXfeudpzK8PeYYcdloEDB3bEvZWn+75+u2TdAfCAAw7oCHydGTx4cMdqxtmzZ691X0k6Zk/+59dvQwiAAAAAAHVsp5126tE206ZNW+25tra2JMmIESN69L477rhjKpXKWrcZM2ZMNtpoo07f9/W23nrrtT4/ffr0jsc777zzOudbdZtVX5usCIQrT5l+/PHHO075Xb58ee6+++4k/xP1Vp7e+9e//jVPPfVUxz5WBsEddthhrasRk3R6qvLrrbzRycpVjmszcuTIjseLFi1a5/brIgACAAAA1LFhw4b1aJt58+at9tzK8DR37txef99Vt5s/f/5atxs6dOhan1917u6896qnE7/+mJP/CXzVarUj5v35z3/uWIG38vmDDz64Y2XkylV/zzzzTKZMmbLadmuztpufrI85c+Z0PF7Xz1t3CIAAAAAAdWzBggU92ub1K/1Wnk66aNGibq0+68n7rrrd2q7v1x2rzt2d9141OHa2unHVG3esPA14ZeBrbW3Nvvvum2RFID344INXe37V03+7cwOQ3vbKK690PO7pdRs7IwACAAAA1LHJkyf3aJstt9xytee23377jsc9uZ7cM888k2q1utZtXnnllbz22mudvm9PbbHFFh2PV959d23+8pe/dDzu7L132223jn2+PuwdeeSRq63aWxn5fvvb36Zarfbo+n+1sOqv03bbbbfB+xMAAQAAAOrYPffc03Edv67ccccdHY/f9KY3rfbcnnvu2fH4iSee6Pb7zp07d5039ljb+/bUqq+/7bbb1rn97bffvs73Xhn2nnnmmTzzzDO59957k6wZ9Vb+eNasWXnkkUfy29/+NsmKiLj55pt3/yB6yaRJkzoe77333hu8PwEQAAAAoI699tprufrqq7t8fvr06bn++uuTrDiddcKECas9f9BBB3U8XvVOu93xla98pcvnli9fnssuu6zjx6eddlqP9v16b3vb2zquxXfjjTfmhRde6HLbH/3oRx2rHvfdd9/VVjmuatXTdy+55JKO04ZfHwAPPPDAjlOYr7jiirz00kudbtdXVr2r8aq/futLAAQAAACoc+eff37H3WtXNXfu3Lzzne/suAnG+973vmyyySarbXPsscd23M23pwHwpptuWi3yrbR8+fL84z/+Y8cKwT322CNve9vberTv1xszZkze//73J0kWLlyY0047bbVr4a305z//OR/+8Ic7fvzP//zPXe5z1YD3ve99L8mKU41333331bYbMGBADjvssNW2e/3r+0q1Wu34ed1ll13WeQfi7hiwwXsAAAAAoGYmTJiQ22+/PePHj8//9//9fzn66KMzdOjQTJo0Kf/3//7fTJs2LcmKa/196UtfWuP1m222WQ455JDce++9uffee7N06dIMHDhwne+7zz77ZO7cuTnvvPPys5/9LKeddlo23XTTTJ06Nddff33+/Oc/J1mx6vCaa67plTvhXnLJJbnzzjvz5JNP5v/9v/+X3XbbLe9///uz1157ZcmSJbnnnnty3XXXZcmSJUmSM844I+94xzu63N8OO+yQbbfdNi+88EKWLVuWpOubehx11FH51a9+1bFdU1NTjjzyyA0+pp56+OGHO+4CfPLJJ/fKPgVAAAAAgDq2//7753/9r/+V973vfbn++us7Tvdd1S677JJbb701I0eO7HQf733ve3Pvvffm1VdfzS9+8YucdNJJ63zfUaNG5brrrssJJ5yQ3/3ud/nd737X6Tb/+Z//mQMOOKDHx9WZ4cOH5+67784pp5ySe++9NzNnzswll1yyxnaVSiUf/vCH8+///u/r3OdRRx3VrVV9r//+3nvv3St34O2pm2++uePxmWee2Sv7dAowAAAAQJ175zvfmT/96U/5yEc+kp122iktLS0ZNWpUDjzwwHz1q1/Nww8/vNa7xb7nPe9Ja2trkuTaa6/t9vuOGzcuf/7zn/P5z38+++67bzbaaKMMHTo0u+yyS84777w88cQT+bu/+7sNPbzVbLLJJrnnnnty88035x3veEe22WabDBkyJMOHD8/OO++cD33oQ3nggQdy5ZVXprm5eZ376+qGH6+37777dvwcrW27Wlq+fHmuu+66JMnRRx+dXXfdtVf2W6mu637O1I1Zs2YVPUKPtAzt/E8dWNOStmVFj9AQhg0fXPQIDcPfU92zdGl70SM0DJ+/7lm+fHnRIzSMRx59uegRGsKkR6cXPULD2H3PLYoeoWF8/e9/VvQIDWHpgqVFj9Awrrzn9KJHWE1ra2uam5vT3t6e2bNnr/H8mDFjCpiq53772992nKr62c9+NhdddNEG7/PCCy/MF77whQwaNCgvvvjiGtcKpHi//OUvO66l+Ktf/SrHHXdcr+zXCkAAAACAfuC8887LqFGjsmTJklx66aVFj0MnVl7D8ZBDDum1+JcIgAAAAAD9Qmtraz796U8nSb75zW/mpZdeKngiVnX33Xfn7rvvTqVS6fVAKwACAAAA9BOf+MQnsuuuu2bRokX54he/WPQ4rOKTn/xkkhU3bDn44IN7dd/uAgwAAADQTwwcODBPPPFE0WPQifvvv79m+7YCEAAAAABKzApAAAAAgDpz5JFHplqtFj0GJWEFIAAAAACUmAAIAAAAACXmFGAAAACAOjDp/qkZMLC56DEKsWDO4uxx8DYZNHhg0aOUkgAIAAAAULBnHnkp//Dm7xQ9RqFOOedN+djlbyt6jFISAAEAAAAKtnDeklQqlTWf6Ff3Aenk+OkVAiAAAABAPeisf73+e2UKgq8/Nv2vZgRAAAAAgIJVUu1e/+pyo3qsZz2rlfV4BGXRLwLgzJkzc9999+WRRx7J888/n1dffTUDBgzIJptskn322ScnnHBCNt988x7v9+WXX84HP/jBdW53/vnn55BDDlmf0QEAAIB+oJpK0tkpwA2tbMfTuEofAGfOnJkPfOADqVb/pzq3tLRkyZIlmTp1aqZOnZpf//rXOffcc3PooYeu9/uMHDkyTU1NnT43aNCg9d4vAAAAUH6VMva/Hurvx19LpQ+Ay5cvT5Lst99+GT9+fPbZZ5+MHDky7e3teeKJJ3LVVVfl+eefz2WXXZatt94622233Xq9z1e/+tVsttlmvTg5AAAA0K/0YQFb33eq7SUIFcBa6XzJWokMHz48X/va13LRRRfl8MMPz8iRI5Mkzc3NGTduXP71X/81o0aNyrJly/LTn/604GkBAACA/mrlKsC++Opxa/vba+pqJrqt9AFw2LBh2WGHHbp8vrW1Nfvvv3+S5JlnnumrsQAAAABWV+njr6bXfa1tm76Yh5op/SnA3bFyVWB7e3vBkwAAAAD9UiWpFHkRvGoKD3GFHn/JCYBJHnvssSTJtttuu977uPTSSzNt2rS0tbVl1KhR2XnnnXPMMcfkgAMO6K0xAQAAAHpNZWXt6yz8VVf+pbZX/aNvlP4U4HX57//+70yePDlJcvTRR6/3fp5++ulUq9U0NTXllVdeyX333ZfPf/7z+dKXvpSlS5f21rgAAABACVVSSaXSR19NK766c+rvym37Yq71WX04c+bMnHfeedlpp50ydOjQjBkzJscee2z+67/+a71+Hf7617/mK1/5St71rndl3Lhx2WSTTTJw4MCMHj06hxxySL70pS9l3rx567XvIvXrFYAzZ87MN7/5zSTJm970po5rAXbXoEGDcvzxx+ewww7L9ttvn5aWliTJlClTcvPNN+euu+7K73//+wwbNiwf/ehHe31+AAAAoByqSa+ffltZ40Fv7CyrrA4s1uOPP57x48dnxowZSZIRI0bktddey+23357bb789H/vYx3L55Zf3aJ/33HNPPvnJT3b8eNCgQRk2bFhmz56dP/zhD/nDH/6QK664Irfeemv22GOPXj2eWuq3KwDnz5+fz3/+85kzZ04233zzfOxjH+vxPlpbW/PhD384e+yxR0f8S5KxY8fmE5/4RE488cQkye23354XX3yx12YHAAAAyqWSai/dTXfVFX5/++rt2/X+bb9rrg7c8F13V1tbW97+9rdnxowZGTduXB566KHMnTs3c+fOzcUXX5xKpZJvfOMbueaaa3r06zB27Nh89rOfzR133JFZs2alra0tr732WhYsWJDrr78+m222WV588cWceuqpDXUviX65AnDRokX513/91zz//PMZPXp0Pve5z2XEiBG9/j6nn356fvWrX2XJkiV58MEHs/XWW691+4kTJ+YHP/hBl8+fdtppOfPMM3t7zJppW9w4HwQAAADWT2tra9EjrKapqanjr/U221r1tICtfFkNRumxLpYa9nyFYPeP5qqrrsqzzz6blpaW/OIXv8jYsWOTJC0tLbngggsyffr0fPOb38yFF16YM844IwMHDuzWfg8++OAcfPDBa3y/paUl73nPe7LpppvmLW95S5566qncd999OfTQQ7s9c5H6XQBsa2vL5z73uTz11FMZNWpUPv/5z2fzzTevyXsNGTIkY8eOzeTJk/Pyyy+vc/sFCxZ0LFvtzMKFC9Pc3NybI9bU4MF18Y+hhjBnzuKiR2gIw4YPLnqEhrFwkWuPdkdTk39OdVdb27KiR2gIy5b6w6/u2m7sqKJHaAivvrqw6BEaxt2/mVz0CA1juX9WdUu7n6duq9ffp1YqlbqdrStluwlujw+nBy+YOHFikuTd7353R/xb1ac+9alceeWVmTZtWu66664ce+yxPZ2mUwceeGDH47/+9a+9ss++0K8CYFtbWz7/+c/n8ccfz/Dhw/O5z30u22yzTdFjdRg2bFg23XTTLp9vaWlpqOWldfLnEAAAANRQvf0+tampKZVKJdVqNcuXL1/j+XqNgtVqda0FsEy/w+5qZeC8Vxd16/Xz58/Pgw8+mCQ57rjjOt1m7Nix2W233TJp0qTceeedvRYA//CHP3Q83mGHHXpln32h3wTApUuX5otf/GIeeeSRtLS05KKLLsr2229f0/dcvHhxpkyZkiTZbLPN1rn9GWeckTPOOKPL52fNmpXZs2f32ny11rrR6KJHAAAAoMbq7fepra2taW5uzvLlyzudbcyYMQVMtW7Lli4v3QrArnR1mAsXtHXr9U888cSKYJpk3LhxXW43bty4TJo0KZMmTerpiKtZunRpXnrppfzyl7/MhRdemCR585vfnAMOOGCD9tuX+kUAXLZsWS655JL8+c9/zpAhQ/KZz3wmO++88wbvt1qtrrhNdRduuOGGLFmyJJVKpaH+pgAAAAD61sDBzStu3NGPbbFt967ZOH369I7HW265ZZfbrXxu1e17Yp999snDDz+8xvePPfbYjlOQG0XpA2B7e3u+8pWv5MEHH8ygQYNy4YUXZvfdd+/26z/wgQ9kxowZGT9+fM4999zVnvv0pz+dfffdNwcccEDGjh3bsYx4ypQp+clPfpI777wzSfKWt7xlnTcAAQAAAPq57va/nt9do/50dqzdPP758+d3PG5paelyu5XPzZs3ryeTdRgzZkw222yzLFq0KHPnzk2SvPWtb82XvvSlbLLJJuu1z6KUPgA+8cQTHednV6vVfOUrX1nr9tdee2239z1z5sxMnDgxEydOTHNzc1paWrJkyZK0tf3PktUjjjgi//t//+/1Gx4AAADoFyqprPUsw9dt/D8aJQY24OLGO+64o+PxK6+8kh/84Af513/91+y77775+te/no9+9KMFTtczpQ+AK88JT1acs/3aa6/12r7POuusPPzww3n66acze/bszJs3L83Nzdliiy2y66675uijj85ee+3Va+8HAAAAlNfnbl2/G1V85rjbenmSDbe+x9Idw4cP73i8cOHCjBw5stPtFi5cmCQZMWLEBr/nxhtvnHPOOSeHHHJIDjzwwHz84x/PIYcckn333XeD990XSh8A99xzz/zsZz9b79dfffXVXT536KGH5tBDD13vfQMAAABsqLWtHKz2wRLBSh8v71v1un/Tpk3rMgBOmzYtSbLFFlv02nvvt99+OfTQQ/O73/0u3/3ud/Pv//7vvbbvWmoqegAAAACAfm9DGlql669KpVLzr07fu4Z23XXXjuj5+OOPd7ndyud6ci+I7thqq62SJM8880yv7reWSr8CEAAAAKARXPS2O9a9USe6fe3ATvRkhWBPVvqtz7FMeP/+2X//dW83fPjwHHjggbn//vtz66235tRTT11jmxdffDGTJk1Kkhx99NE9nmVtnn322Y45GoUVgAAAAAD1YC0r+Wr1tdpqvpX/68lKv97+6qbTTz89SXLDDTdk6tSpazx/6aWXplqtZsstt8xRRx3V7f0uW7Zsrc/ffffduf/++5Mkhx9+ePcHLpgACAAAAFAPCgiAq301/e2rqPfvgQ996EPZYYcdsmDBgkyYMCGPPPJIkmTRokW55JJLcsUVVyRJLr744gwcOHC112633XapVCo566yz1tjvYYcdli984Qt5/PHH097e3vH96dOn56tf/WomTJiQarWasWPHdvr6euUUYAAAAICiVTbsVN4y6MnhDx48OD/72c8yfvz4PPLII9l7770zcuTILFiwoCPcnXPOOXnf+97XoxmmT5+eCy+8MBdeeGEGDBiQUaNGZcmSJZk3b17HNrvsskt++tOfNtQpwAIgAAAAQD3og/63vnfs7Yu7CffUHnvskUcffTSXXHJJbrnllkydOjWjRo3Kfvvtl4985CM56aSTerzP73//+7n11ltzzz33ZMqUKZk5c2aSZJtttsk+++yTk08+Oe95z3syePDgXj6a2hIAAQAAAAq24izYGhTAXtrlGrPVpAf2fNhNN900l112WS677LJuv+b555/v8rkjjjgiRxxxRI/nqHcCIAAAAEA96I1Y11dnEb/+fXojCPbvM6BrSgAEAAAAKFxl/a8BWA/hrBeCYD0cRlkJgAAAAAD1oEwFbH2OpUzHX2cEQAAAAICCLV3a3mUAq8m1AQvU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Ae7s+oEFLcXr6V2AH3/88YwfPz4zZsxIkowYMSKvvfZabr/99tx+++352Mc+lssvv7xH+9x///0zefLkjh8PGTIkzc3NeeGFF/LCCy/khhtuyD/90z/ly1/+co/2WzQrAAEAAADqQKVSKfar6W9fBb1/T/pfW1tb3v72t2fGjBkZN25cHnroocydOzdz587NxRdfnEqlkm984xu55pprevRrsHTp0uy11175xje+kcmTJ2fRokWZP39+nnrqqZxyyilJkq985Sv59re/3aP9Fk0ABAAAAKgHfXEK8LpO6631Kb69dArwVVddlWeffTYtLS35xS9+kb333jtJ0tLSkgsuuCD/8A//kCS58MILs3Tp0m7v99prr83DDz+cc845JzvuuGOSFWF25513zo9+9KMceeSRSWIFIAAAAAA91cer/Lqz2q8n2/bGVw8K4MSJE5Mk7373uzN27Ng1nv/Upz6VSqWSadOm5a677ur2fg8//PAun2tqasqZZ56ZJHn22Wcze/bsbu+3aAIgAAAAQNHq8aYfa9tXgSsA58+fnwcffDBJctxxx3W6zdixY7PbbrslSe68887u7bgbxowZ0/F42bJlvbbfWnMTEAAAAIA60Cs3AemrG3i8/n2qnW5VE0888USq1RVvOG7cuC63GzduXCZNmpRJkyb12nv/7ne/S5Jsttlmq8XAeicAAgAAANSDRj5PszfCYzf3MX369I7HW265ZZfbrXxu1e03xIsvvthx84+zzjqrmLs2rycBEAAAAKBglUovrQBsYN09/vnz53c8bmlp6XK7lc/NmzdvwwbLirsDv/vd7878+fOz7bbb5p//+Z83eJ99qdAA2N7enscffzzLli3LLrvskmHDhhU5Tt2rVCppamrkPw4AAACgbJqbm4seoUv1PNvrLVu2vMsVcD25OUajqHZyzvArry4sYJJ1q1ar+eAHP5h77703Q4YMyY033phRo0YVPVaP1CQALliwIL/+9a+TJG984xs7vRvLtddem/POOy+vvvpqkmTIkCH5+Mc/ni984Qv9vnh3ZejQoWst2/Vm4fy2okcAAACgxlpbW4seoVPNzc11O1tnBgxoyttPWb9ryt3yk1d6eZoNd8LJG9ds38OHD+94vHDhwowcObLT7RYuXBEUR4wYsUHv97GPfSzf//73M2DAgPzwhz/MQQcdtEH7K0JNAuBNN92U973vfWlubs6zzz67xvO33nprx7nSKy/auGjRonzpS1/KggULcvnll9dirIa3aNGitLU1TlQbPLBxYiUAAADrZ/bs2UWPsJqRI0emubk57e3tmTt37hrP128UXP/FUP1tIdWq1/2bNm1alwFw2rRpSZIttthivd/rn/7pn3LFFVekubk5EydOzAknnLDe+ypSTQLgHXfckSQ58MADs80226zx/Pnnn59kxRLKvffeO9tvv33uvPPOzJs3L9/85jdz9tlnZ++9967FaA2tWq2mvb296DG6b2DRAwAAAFBr9fz71HqerTf1s/6XXXfdtWNR2eOPP55dd9210+0ef/zxJMnuu+++Xu/z6U9/Ol/96ldTqVRy9dVX513vetd6z1y0mgTASZMmpVKp5PDDD1/juYceeiiPPvpoKpVKPvrRj3as9vvLX/6S/fffPwsXLsx3v/tdqwABAACAfqNSSX75s1fX+7X1Zn2O5YA3rbmIrDPDhw/PgQcemPvvvz+33nprTj311DW2efHFFzNp0qQkydFHH93jWS666KL827/9W5LkyiuvzFlnndXjfdSTmtxRYtasWUmSXXbZZY3nbrvttiTJgAED8pnPfKbj+zvvvHNOO+20VKvV/P73v6/FWAAAAAB1q1Kp9MrXitOJi/1ar9l7cBr06aefniS54YYbMnXq1DWev/TSS1OtVrPlllvmqKOO6vZ+k+SSSy7Jv/7rvyZJvva1r+XDH/5wj15fj2oaADs7B/vee+9Nkhx00EHZeOPVLwh54IEHJkmn1w0EAAAAYN0qleK/au1DH/pQdthhhyxYsCATJkzII488kmTF/RMuueSSXHHFFUmSiy++OAMHrn6Nsu222y6VSqXTVX2XX355/vmf/znJihB47rnn1vQ4+kpNTgFevnx5kmTOnDlrPHffffelUqnksMMOW+O5TTbZJEkyf/78WowFAAAAULfq8VTePtWD4x88eHB+9rOfZfz48XnkkUey9957Z+TIkVmwYEHHtR/POeecvO997+vRCJ/4xCdWjFKp5Gtf+1q+9rWvdbntj3/84xx88ME92n9RahIAN95440yfPj0vvPDCat9/6KGH8sorr6RSqeTNb37zGq9btGhRkmTQoEG1GAsAAACgbhV1N99qdd3b9MVoPX2PPfbYI48++mguueSS3HLLLZk6dWpGjRqV/fbbLx/5yEdy0kkn9XiG6t9+MqrVal5++eW1brtkyZIe778oNQmAe+21V6ZNm5Yf/ehHueiiizq+//3vfz9J0tTUlEMPPXSN102ZMiXJht2eGQAAAIDua+SVh5tuumkuu+yyXHbZZd1+zfPPP9/lc9Xu1NAGVJMAeOKJJ+bWW2/Nk08+mXe/+90588wz88c//jHf/OY3U6lUcswxx2TUqFFrvO7BBx9M0vnNQwAAAADKqq+unbeOKZKUM4D1dzUJgO973/ty2WWX5emnn84Pf/jD/PCHP0yyoqI2NzfnX/7lX9Z4zcKFC3PHHXekUql03AwEAAAAoP/o2wLYeXBc/Zt9uyCu8AJaWjW5C/CgQYPy61//Ovvuu2+q1WrHV0tLS7797W93eoHEG2+8MQsXLkySjB8/vhZjAQAAANSterxTbz3ORM/VZAVgsuKWyn/84x/zxz/+MZMnT86wYcNyyCGHpLW1tdPthwwZks9+9rOpVCoNcwcVAAAAgN7S+wGs1kWtd5cH6n+1U7MAuNL++++f/ffff53bvec976n1KAAAAAB1bMMSWN+voCvydGF6ouYBEAAAAIB1a/RTYDd4/gY//nrWpwHw5ZdfzvTp0zNv3ryMGDEiW265ZTbddNO+HAEAAACg/rgGnv5XQzUPgFOmTMnll1+eH//4x5kyZcoaz48dOzannXZaPvaxj2Wbbbap9TgAAAAAdWd5ezWdJbCyRsHOThd+5ZWFfT9IP1GTuwCvdM0112SPPfbI17/+9UyZMmW1OwKv/JoyZUouu+yy7L777vne975Xy3EAAAAA6lJzc1O/uituZ8faOrql6LFKq2YrAK+55pq8//3vT6VSSbVaTaVSyW677Zadd945w4cPz/z58/OXv/wlTz75ZKrVahYsWJD3v//9SZKzzjqrVmMBAAAA1KWmphIXv25obq7pOrV+rSYBcPr06TnnnHM6fvzhD384/+f//J+MHTt2jW2nTp2aSy65JP/xH/+R5cuX55xzzslxxx2XzTffvBajAQAAANSlnqz4a7Q77nbn2Mq84rFoNUmrV155ZRYuXJhKpZLvfOc7ufLKKzuNf0myzTbb5Jvf/GauvvrqJMnChQtz5ZVX1mIsAAAAgDpW6fZXpfL6r85Pq62Pr+4eF7VSkwD461//OpVKJccee2zOPvvsbr3mrLPOynHHHZdqtZpbb721FmMBAAAA1KXeiGz1+9XNYyj6F6HEahIAn3322STJSSed1KPXnXjiiau9HgAAAKC/KH6lXrFfCmDt1CQAzps3L0kyevToHr1u5fbz58/v9ZkAAAAAoD+qyU1ANt5447z88st57rnnevS6559/PknPwyEAAABAo1txrbz+q2IJYM3UZAXguHHjUq1Wc91112X58uXdek17e3uuu+66VCqVjBs3rhZjAQAAANStok/BLfpL/6udmgTAt7/97UmSSZMm5R/+4R9SXce9qavVaj7ykY/kscceS/I/1wIEAAAA6A+Kjm/1ckdhaqMmAfADH/hAtt566yTJd77zney33365/vrrM2PGjNW2mzlzZq6//vrsv//++c53vpNKpZKtt946H/jAB2oxFgAAAEBdqlZXLoGr7Vf37tS75vN9MRu1U5NrAA4ZMiQ333xzxo8fn4ULF+aRRx7Je9/73iTJiBEjMmzYsCxYsKDjZiHJilWAw4YNy49//OMMHjy4FmMBAAAA1KVar4Db0H2vfP06TvKkTtVkBWCSHHDAAfn973+f3XffPdVqteNr7ty5eemllzJ37tzVvr/nnnvmD3/4Q/bff/9ajQQAAABQt2p3Sm8tVxA6BbgR1GQF4Ep77bVXHnnkkfziF7/Ij3/849x///2ZPn165s2blxEjRmSLLbbIm970ppx66qk5/vjj09/vdgMAAAD0Z+vXRYrNKZ2/+fqtFNSFaqWmATBZUZwnTJiQCRMm1PqtAAAAABpWmdZFrc+xlOjw607NAyAAAAAA69CtU2AbPZGtfVlgdR3Ps/76JAC+8sorueWWW/LAAw9k2rRpHacAb7nllnnTm96UCRMmZOONN+6LUQAAAADqzvL25f3g0mhrP745ry3qozn6n5oGwHnz5uX888/P9773vbS1tXW6zX/8x39k8ODBOfvss3PJJZdk+PDhtRwJAAAAoO40Nzf1gwC4dq2jhxU9QmnVLABOmTIl48ePz3PPPZfqOq78uHjx4nzrW9/Kr3/96/zmN7/JNttsU6uxAAAAAOpSP+9//f74a6kmAXDJkiU57rjj8uyzzyZJhg8fntNPPz3HHHNMdtpppwwbNiwLFizI5MmTc8cdd+T666/PvHnz8swzz+S4447LQw89lIEDB9ZiNAAAAID6JIBRIzUJgFdeeWWefPLJVCqVHHTQQfnRj36U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+++/PzfccEM+85nPZJtttlnt+UsvvTTVajVbbrlljjrqqA0dt+EJgH1g5QrAJHnppZe6DIALFizIjBldXyRz4cKFaW5u7vX5AAAAYH3V6+9TK5VK3c62vvrbqb5r86EPfShf//rX8+yzz2bChAm57rrrstdee2XRokW5/PLLc8UVVyRJLr744o6zNVfabrvt8sILL+TMM8/M9773vTX2PWfOnCxdurTjx+3t7UlWdJlZs2Z1fL+lpSUtLS01OLreJwDWkWHDhmXTTbu+c09LS0vH33QAAABQD+rt96lNTU0d14fr7DJc9RwFN+xmHvW6PLD7x9ST4x88eHB+9rOfZfz48XnkkUey9957Z+TIkVmwYEHH35PnnHNO3ve+9/V44hNPPDG/+93v1vj+l7/85Xz5y1/u+PFnP/vZXHTRRT3efxEEwD7w1FNPdTzebLOuz80/44wzcsYZZ3T5/KxZszJ79uxena22Bhc9AAAAADVWb79PbW1tTXNzc5YvX97pbGPGjClgqu7ZsBV+q7+4yNOF+2ql4h577JFHH300l1xySW655ZZMnTo1o0aNyn777ZePfOQjOemkk/pmkAYgAG6garW61kK9bNmyXH/99UmSjTfeODvuuGNfjQYAAAD0U/3ldOFNN900l112WS677LJuv+b5559f6/O//e1vN2yoOiQAbqAZM2bky1/+ct7ylrdkn3326Vjh197enieeeCLXXnttnnzyySTJmWee2XExUgAAAICVKpXKBp4C3FMbskSwNnP2l2hZBAGwF/zlL3/JX/7ylyTJoEGDMmTIkCxcuDDLli1LkgwYMCBnnnlmjjzyyAKnBAAAAOpZ3waw/3mzdZ0uLMw1PgFwA2200Ub50Ic+lCeeeCLPPfdc5syZkwULFmTw4MHZZpttsueee+atb31rttpqq6JHBQAAAFiDwFd+AuAGGjx4cCZMmJAJEyYUPQoAAADQwIoNcau+eTF3EBEia0cABAAAAKgDfXsNwLUpao56Of7yEQABAAAASq632uK6rhdIfRIAAQAAAApWqfT2KbB9dafe3iuCdbMAsoQEQAAAAIA6UD+nAPdE783ckIffIJqKHgAAAAAAqB0rAAEAAADqwLpXwJVhiVzXpwwvX+4Cg7UiAAIAAAAUrFpt1FOAe6rrY1y2bHkfztG/CIAAAAAABev9m4A0nsGDZapa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wQUXdPzLYejQoWlra8vy5cuTJCeccEI++MEPFjkilNKVV16ZW2+9tePHQ4YMSZIsXry443vjxo3LhRdemJaWlj6fD/qD+++/P1//+tezYMGCJMmgQYPS3NycRYsWJUk233zzXHXVVUWOCKWybNmyfOUrX8kf/vCHJElTU1NaWlqyYMGCVKvVNDc35+///u9z7LHHFjwpNJ4777wzl19+eafPrS0AXnHFFbnttts6ftzc3JzBgwdn4cKFHd/bc889c+GFF2bo0KG9OzTUGSsAKa2lS5fm4osvzpw5c7LtttvmH//xH7P99tunra0tP/3pT3P99dfnlltuyfbbb59jjjmm6HGhVHbZZZdstdVW2X333bPVVlt1RL7XXnstt99+e66//vo89thj+e53v5uPfvSjBU8L5fPQQw/lS1/6UpYtW5ajjjoqp556asaOHZtkxSqKp556Kk8++WTBU0K5XHvttfnDH/6QpqamnHnmmXnrW9+aIUOG5LXXXsvEiRNz22235corr8zYsWOz6667Fj0uNJzW1tbsuOOOecMb3pAtt9wyl1122Tpfs2zZsrS2tuboo4/OwQcfnB122CFNTU2ZO3dufvazn+Wmm27Ko48+miuuuCKf/OQn++AooDhWAFJaP//5z3PVVVdl8ODBufLKK7PJJpus9vy3v/3t/PKXv8zo0aNz9dVXZ8AAPRz6ysSJE/PDH/4wgwYNyo033ujzB71o0aJF+chHPpJZs2bllFNOyVlnnVX0SFB6c+bMydlnn52lS5fmpJNOytlnn73GNp/+9Kfz2GOPZffdd88ll1xSwJTQuNrb29Pc3Nzx4/nz5+c973lPkrWvAHzqqaey/fbbZ9CgQZ0+/4Mf/CA33nhjkuT//t//u8bvGaFMnOhOaf32t79Nkhx++OGd/oP81FNPTaVSyauvvppHH320j6eD/m2nnXZKkixZsiTz5s0reBoolzvvvDOzZs3KxhtvnNNPP73ocaBfePjhh7N06dIkycknn9zpNieddFKSZNKkSXnppZf6ajQohVXjX0/ssssuXca/JKtdC3fy5Mnr9R7QKARASmnRokV5+umnkyT77bdfp9tssskm2XrrrZOs+I82oO+sPPVwyJAh2WijjYodBkpm5R+AHXzwwRk4cGCxw0A/MXPmzCTJsGHD0tra2uk2K/+7M1lxmj5QvJEjR3Y8bm9vL3ASqD3nXFFKL774Ylae3b7tttt2ud22226bqVOnZurUqX01GvRbbW1tmTlzZu6666785Cc/SZK87W1vS6VSKXgyKI8lS5bk2WefTZLsuOOOefHFF/Of//mfefjhhzN//vy0trZmzz33zCmnnNJxTUCg96y80dy6npsyZUpfjAOsw2OPPdbxeG2/b4QyEAAppVdffbXj8ejRo7vcbuVzs2fPrvlM0B+ten2WVQ0YMCATJkzIGWecUcBUUF4zZszIsmXLkiTTpk3Lt771rbS1tWXQoEEZNGhQZs6cmd/85je555578olPfCKHHnpowRNDOWy66aZJVpyFMnPmzE4vP7Nq9Fv1v1WBYrS3t+eGG25IsuJU4W222abgiaC2nAJMKS1evLjj8eDBg7vcbuVzixYtqvlM0B81NTVlo402ykYbbdRx/ZVKpZIJEybk1FNPXe/ruQCdmz9/fsfjm266KS0tLfnMZz6TH/7wh7nxxhvz9a9/PW94wxuydOnSfP3rX8+0adMKnBbKY8899+y4odWPfvSjNZ6vVqu5+eabO37svz2heNddd10mT56cAQMG5EMf+lDR40DNCYAA1ExLS0uuvfbaXHvttfnRj36U73znOznhhBNyyy235KMf/WgmTZpU9IhQKisvf5GsON3w3HPPzRvf+MY0Na34T74ddtghF154YYYMGZIlS5bkZz/7WVGjQqlstNFGeetb35okufXWW3PNNddk5syZWbZsWV544YX827/9W55++umOSOjyF1Cs22+/PT/+8Y+TJGeeeWbHDeqgzJwCTCkNGTKk43FbW1taWlo63a6trS1JMnTo0D6ZC/qzSqWSzTbbLB/4wAey6aab5uqrr86Xv/zlfPvb317rSl2g+1b999k222yTfffdd41tRo8encMPPzy33Xabm2BBLzrrrLPy8ssv54EHHshPfvKTjuvdrnTcccdl8uTJmTx5coYNG1bQlMA999yTb37zm0mSU089NSeeeGLBE0HfsAKQUlr1un9ru8bKyue6ulsbUBvHHXdcBg4cmFdeeSV//OMfix4HSmPVf/+tesfR11v53Mo7lwIbbuDAgbngggty/vnn56CDDsqWW26ZzTbbLPvtt1/+z//5P/mHf/iHzJkzJ0my1VZbFTwt9E///d//ncsuuyzLly/P2972tpx55plFjwR9xgpASmnr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kuSNN97IM888U+tYf/75Z9q1a5eDBw+mVatW2bt3bxo1alSqP336dHr37p0NGzakvLw8b731VsaMGVPrOFVVVVm4cGGS5O23387o0aPPabN69er07du39HPr1q2zcuXK3H777XW+KwAAVx5nAAIAhda1a9cLhn9J8sADD+SFF15Iknz22WfZu3fveW2qqqpK23DP/sLvv1u8eHEOHjxY6nN2+JecOfPv722/kydPrjX8S5JGjRpl3rx5uemmm5Ikr7322gXfIUlmzZol/AMA4DwCQACAJPfee2+p/NVXX51X36JFiwwfPjxJsm3btqxfv77Wcc4OB8eOHXte/bx585KcCfieffbZC66pYcOGeeKJJ5Ik27dvz65du+pse+ONN2bgwIEXHA8AgCuTMwABgCvCl19+mQ8++CAbN27Mzp0788cff+TkyZO1tt2zZ0+tz8ePH585c+YkORP03XPPPefUV1dXZ82aNUnO3ALcuXPn88b44osvkiRt2rTJ559//o/rPnToUKn83Xff1XmeX+/evS94RiAAAFcuASAAUGhHjhzJiBEj8vHHH9e7z+HDh2t9ftddd6Vnz57ZtGlTFi1alJkzZ6Z58+al+n+6/OPo0aM5cOBAkmTXrl0ZNGhQvdeUJL/99ludde3bt7+osQAAuHIIAAGAQhs2bFiWLl2aJGnatGkGDBiQbt26pW3btmnSpEkaNDjz59C2bdvy0ksvJUlOnTpV53jjx4/Ppk2bcvz48bz77ruZMGFCkjOXdvy9vfe6666rNdz7/fff/6N3+euvv+qsa9y48X80NgAAxSUABAAKa926daXw77bbbsuKFSty/fXX19r26quvrteYw4cPz8SJE3Po0KHMnj27FACeffnHqFGj0rBhw/P6NmvWrFTu3r17vv7664t6HwAAuBQuAQEACmvFihWl8quvvlpn+JckP/30U73GbNy4caqqqpIkW7duLd3oO2vWrCRJWVlZrZd/JEnz5s1LIWBd5wwCAMD/NAEgAFBYv/zyS6lcUVFxwbbLli2r97hPPfVU6cKN2bNnZ/v27aXLPfr3759OnTrV2ff+++9Pkvz666++AAQA4P+EABAAKKymTZuWyjt27Kiz3YYNGy4qAOzcuXP69euXJFm0aFGmT59eqqvt8o+zVVZWlsqTJk3K6dOn6z0vAABcCgEgAFBYPXv2LJWnTJmSEydOnNdmy5YtGTJkyEUHcU8//XSS5NixY5kzZ06SpE2bNhk4cOAF+w0ZMiS9evVKkixfvjwjR47MkSNH6mx/6tSpLF++PFOnTr2o9QEAwN9cAgIAFNbjjz+eDh06ZNeuXdm8eXO6dOmS0aNHp6KiIseOHcuaNWuycOHCnDx5MpWVlaVbfOvj0UcfTdu2bbNv377SsyeffPIfLxMpKyvL4sWLc/fdd2f37t1ZsGBBPv300wwdOjQ9evRIy5Ytc+LEiezbty/ffPNNVq5cmf3796d///6ZNGnSJf8uAAC4cgkAAYDCatSoUZYsWZKHHnooBw4cyK5du/Lyyy+f06a8vDzTpk1Lr169LioAbNCgQcaMGZMpU6YkORPsjRkzpl5927Vrl82bN6eqqirLli0r3Sh8Ie3bt6/32gAA4Gy2AAMAhdajR49s2bIlEydOTJcuXXLNNdekWbNm6dy5c8aNG5eNGzfmxRdfvKSxH3zwwXPKHTt2rHff1q1bZ+nSpdmwYUMmTJiQO++8M61atUp5eXmaNm2aTp065ZFHHsm0adOybdu2zJ0795LWCAAAZaedPA0AcEmee+65zJw5M0myZMmSDBo06DKvCAAAzicABAC4BEePHs0NN9yQQ4cOpV27dqmpqUmDBk5XAQDg38cWYACASzBjxowcOnQoSTJhwgThHwAA/1q+AAQAqIe9e/dm69atOX78eNasWZM333wzp06dSps2bbJjx440a9bsci8RAABq5V/VAAD1sHLlyowaNeqcZ+Xl5XnnnXeEfwAA/KvZAgwAcJHatGmThx9+OGvXrs2AAQMu93IAAOCCbAEGAAAAgALzBSAAAAAAFJgAEAAAAAAKTAAIAAAAAAUmAAQAAACAAhMAAgAAAECBCQABAAAAoMAEgAAAAABQYAJAAAAAACgwASAAAAAAFJgAEAAAAAAKTAAIAAAAAAUmAAQAAACAAhMAAgAAAECBCQABAAAAoMAEgAAAAABQYAJAAAAAACgwASAAAAAAFJgAEAAAAAAKTAAIAAAAAAUmAAQAAACAAhMAAgAAAECBCQABAAAAoMAEgAAAAABQYAJAAAAAACgwASAAAAAAFNh/ARNsEv41G/hDAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.DataFrame(data)\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"pos\"].astype(int)\n", + "df[\"p(brown)\"] = df[\"p(brown)\"].astype(float)\n", + "df = df.groupby([\"layer\", \"pos\"]).mean().reset_index()\n", + "print(df)\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\"))\n", + " + scale_y_reverse()\n", + " + geom_tile(aes(fill=\"p(brown)\"))\n", + " + scale_fill_cmap(\"Purples\")\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "245a1a0c-e393-41e0-8790-051d5a00eb63", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/advanced_tutorials/MQNLI.ipynb b/_sources/tutorials/advanced_tutorials/MQNLI.ipynb new file mode 100644 index 00000000..fd83a5aa --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/MQNLI.ipynb @@ -0,0 +1,1794 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Nested Hierarchical Structure with MQNLI\n", + "\n", + "In this notebook, we use `pyvene` to analyze language models on a complex heirarchical task: multiply-quantified natural language inference (MQNLI). \n", + "We begin by describing the causal structure that generates our data through semantic composition. Then, we analyze whether models that learn this task employ the same compositional structure to solve it." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Amir Zur\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set-Up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "import pyvene" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import json \n", + "import random\n", + "import copy\n", + "import itertools\n", + "import numpy as np\n", + "from tqdm import tqdm, trange\n", + "from collections import Counter\n", + "\n", + "import torch\n", + "from torch.nn import CrossEntropyLoss\n", + "from torch.utils.data import DataLoader\n", + "from transformers import TrainingArguments, Trainer\n", + "from datasets import Dataset\n", + "from sklearn.metrics import accuracy_score\n", + "\n", + "from pyvene import CausalModel\n", + "# from pyvene.models.configuration_intervenable_model import RepresentationConfig\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " RotatedSpaceIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig\n", + ")\n", + "\n", + "from pyvene.models.gpt2.modelings_intervenable_gpt2 import create_gpt2_lm\n", + "# from pyvene.models.gpt_neox.modelings_intervenable_gpt_neox import create_gpt_neox" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "TRAIN_DIR = 'mqnli_factual'\n", + "DAS_DIR = 'mqnli_das'" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "seed = 42\n", + "np.random.seed(seed)\n", + "random.seed(seed)\n", + "torch.manual_seed(seed)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The MQNLI Task\n", + "\n", + "Multiply-quantified natural language inference (MQNLI) is a variant of natural language inference (NLI) with a highly structured composition. Each datapoint is a pair of sentences, and each label is the logical relation between them (e.g., entailment, reverse entailment, no relation). Crucially, the logical relation can be computed compositionally: first compute the relation between the two sentences' nouns, then their determiners, and then combine these intermediate computations to find the relation between the sentences' noun phrases (NPs). \n", + "\n", + "In this section, we walk through the high-level causal structure of MQNLI with examples from the MQNLI dataset. We encourage first-time readers to read the original paper, [Geiger, Cases, Karttunen, and Potts (2018)](https://arxiv.org/pdf/1810.13033.pdf), before getting started." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# JSON files generated from adapting MQNLI codebase\n", + "# https://github.com/atticusg/MultiplyQuantifiedData\n", + "\n", + "class Hashabledict(dict):\n", + " def __hash__(self):\n", + " return hash(frozenset(self))\n", + "\n", + "with open('tutorial_data/mqnli_q_projectivity.json') as f:\n", + " determiner_signatures = json.load(f)\n", + " determiner_signatures = Hashabledict({\n", + " q1: Hashabledict({\n", + " q2: Hashabledict({\n", + " r1: Hashabledict({\n", + " r2: determiner_signatures[q1][q2][r1][r2] \n", + " for r2 in determiner_signatures[q1][q2][r1]\n", + " }) \n", + " for r1 in determiner_signatures[q1][q2]\n", + " })\n", + " for q2 in determiner_signatures[q1]\n", + " })\n", + " for q1 in determiner_signatures\n", + " })\n", + "\n", + "with open('tutorial_data/mqnli_neg_signature.json') as f:\n", + " negation_signature = Hashabledict(json.load(f))\n", + "\n", + "with open('tutorial_data/mqnli_empty_signature.json') as f:\n", + " emptystring_signature = Hashabledict(json.load(f))\n", + "\n", + "with open('tutorial_data/mqnli_cont_signature.json') as f:\n", + " compose_contradiction_signature = Hashabledict(json.load(f))\n", + "\n", + "with open('tutorial_data/mqnli_neg_cont_signature.json') as f:\n", + " compose_neg_contradiction_signature = Hashabledict(json.load(f))" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "parents = {\n", + " \"N_P_O\": [],\n", + " \"N_H_O\": [],\n", + " \"N_O\": [\"N_P_O\", \"N_H_O\"],\n", + " \"Adj_P_O\": [],\n", + " \"Adj_H_O\": [],\n", + " \"Adj_O\": [\"Adj_P_O\", \"Adj_H_O\"],\n", + " \"NP_O\": [\"Adj_O\", \"N_O\"],\n", + " \"Q_P_O\": [],\n", + " \"Q_H_O\": [],\n", + " \"Q_O\": [\"Q_P_O\", \"Q_H_O\"],\n", + " \"V_P\": [],\n", + " \"V_H\": [],\n", + " \"V\": [\"V_P\", \"V_H\"],\n", + " \"Adv_P\": [],\n", + " \"Adv_H\": [],\n", + " \"Adv\": [\"Adv_P\", \"Adv_H\"],\n", + " \"VP\": [\"Adv\", \"V\"],\n", + " \"QP_O\": [\"Q_O\", \"NP_O\", \"VP\"],\n", + " \"Neg_P\": [],\n", + " \"Neg_H\": [],\n", + " \"Neg\": [\"Neg_P\", \"Neg_H\"],\n", + " \"NegP\": [\"Neg\", \"QP_O\"],\n", + " \"N_P_S\": [],\n", + " \"N_H_S\": [],\n", + " \"N_S\": [\"N_P_S\", \"N_H_S\"],\n", + " \"Adj_P_S\": [],\n", + " \"Adj_H_S\": [],\n", + " \"Adj_S\": [\"Adj_P_S\", \"Adj_H_S\"],\n", + " \"NP_S\": [\"Adj_S\", \"N_S\"],\n", + " \"Q_P_S\": [],\n", + " \"Q_H_S\": [],\n", + " \"Q_S\": [\"Q_P_S\", \"Q_H_S\"],\n", + " \"QP_S\": [\"Q_S\", \"NP_S\", \"NegP\"]\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "EMPTY = \"\"\n", + "IND = \"independence\"\n", + "EQV = \"equivalence\"\n", + "ENT = \"entails\"\n", + "REV = \"reverse entails\"\n", + "CON = \"contradiction\"\n", + "ALT = \"alternation\"\n", + "COV = \"cover\"\n", + "# all possible relation values from the original paper \n", + "# (https://arxiv.org/pdf/1810.13033.pdf)\n", + "RELATIONS = [IND, EQV, ENT, REV, CON, ALT, COV]\n", + "\n", + "Q_VALUES = [\n", + " determiner_signatures[q1][q2]\n", + " for q1 in determiner_signatures for q2 in determiner_signatures[q1]\n", + "]\n", + "\n", + "values = {\n", + " \"N_P_O\": [\"tree\", \"rock\"],\n", + " \"N_H_O\": [\"tree\", \"rock\"],\n", + " \"N_O\": [EQV, IND],\n", + " \"Adj_P_O\": [\"happy\", \"sad\", EMPTY],\n", + " \"Adj_H_O\": [\"happy\", \"sad\", EMPTY],\n", + " \"Adj_O\": [EQV, IND, ENT, REV],\n", + " \"NP_O\": [EQV, IND, ENT, REV],\n", + " \"Q_P_O\": [\"some\", \"every\"],\n", + " \"Q_H_O\": [\"some\", \"every\"],\n", + " \"Q_O\": Q_VALUES,\n", + " \"V_P\": [\"climbed\", \"threw\"],\n", + " \"V_H\": [\"climbed\", \"threw\"],\n", + " \"V\": [EQV, IND],\n", + " \"Adv_P\": [\"energetically\", \"joyfully\", EMPTY],\n", + " \"Adv_H\": [\"energetically\", \"joyfully\", EMPTY],\n", + " \"Adv\": [EQV, IND, ENT, REV],\n", + " \"VP\": [EQV, IND, ENT, REV],\n", + " \"QP_O\": [EQV, IND, ENT, REV],\n", + " \"Neg_P\": [\"not\", EMPTY],\n", + " \"Neg_H\": [\"not\", EMPTY],\n", + " \"Neg\": [\n", + " negation_signature, \n", + " emptystring_signature, \n", + " compose_contradiction_signature, \n", + " compose_neg_contradiction_signature\n", + " ],\n", + " \"NegP\": RELATIONS,\n", + " \"N_P_S\": [\"child\", \"dog\"],\n", + " \"N_H_S\": [\"child\", \"dog\"],\n", + " \"N_S\": [EQV, IND],\n", + " \"Adj_P_S\": [\"little\", \"cute\", EMPTY],\n", + " \"Adj_H_S\": [\"little\", \"cute\", EMPTY],\n", + " \"Adj_S\": [EQV, IND, ENT, REV],\n", + " \"NP_S\": [EQV, IND, ENT, REV],\n", + " \"Q_P_S\": [\"some\", \"every\"],\n", + " \"Q_H_S\": [\"some\", \"every\"],\n", + " \"Q_S\": Q_VALUES,\n", + " \"QP_S\": RELATIONS\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# adapted from original code for MQNLI:\n", + "# https://github.com/atticusg/MultiplyQuantifiedData/blob/master/natural_logic_model.py\n", + "\n", + "def adj_merge(adj_p, adj_h):\n", + " if adj_p == adj_h:\n", + " return EQV\n", + " if adj_p == EMPTY:\n", + " return REV\n", + " if adj_h == EMPTY:\n", + " return ENT\n", + " return IND\n", + "\n", + "adv_merge = adj_merge\n", + "\n", + "def noun_phrase(adj, noun):\n", + " #merges a noun relation with an adjective relation\n", + " #or a verb relation with an adverb relation\n", + " # makes sense: if the objects are the same, then adjective's relation holds\n", + " # otherwise, they're independent\n", + " if noun == EQV:\n", + " return adj\n", + " return IND\n", + "\n", + "verb_phrase = noun_phrase\n", + "\n", + "def negation_merge(neg_p, neg_h):\n", + " #merges negation\n", + " if neg_p == neg_h and neg_p == EMPTY:\n", + " return Hashabledict(emptystring_signature)\n", + " if neg_p == neg_h and neg_p != EMPTY:\n", + " return Hashabledict(negation_signature)\n", + " if neg_p == EMPTY:\n", + " return Hashabledict(compose_contradiction_signature)\n", + " if neg_p != EMPTY:\n", + " return Hashabledict(compose_neg_contradiction_signature)\n", + "\n", + "negation_phrase = lambda neg, qp: neg[qp]\n", + "\n", + "noun_merge = lambda n_p, n_h: EQV if n_p == n_h else IND\n", + "verb_merge = noun_merge\n", + "\n", + "quantifier_merge = lambda q_p, q_h: determiner_signatures[q_p][q_h]\n", + "\n", + "quantifier_phrase = lambda q, np, vp: q[np][vp]\n", + "\n", + "functions = {\n", + " \"N_P_O\": lambda: \"tree\",\n", + " \"N_H_O\": lambda: \"tree\",\n", + " \"N_O\": noun_merge,\n", + " \"Adj_P_O\": lambda: \"happy\",\n", + " \"Adj_H_O\": lambda: \"happy\",\n", + " \"Adj_O\": adj_merge,\n", + " \"NP_O\": noun_phrase,\n", + " \"Q_P_O\": lambda: \"some\",\n", + " \"Q_H_O\": lambda: \"some\",\n", + " \"Q_O\": quantifier_merge,\n", + " \"V_P\": lambda: \"climbed\",\n", + " \"V_H\": lambda: \"climbed\",\n", + " \"V\": verb_merge,\n", + " \"Adv_P\": lambda: \"energetically\",\n", + " \"Adv_H\": lambda: \"energetically\",\n", + " \"Adv\": adv_merge,\n", + " \"VP\": verb_phrase,\n", + " \"QP_O\": quantifier_phrase,\n", + " \"Neg_P\": lambda: \"not\",\n", + " \"Neg_H\": lambda: \"not\",\n", + " \"Neg\": negation_merge,\n", + " \"NegP\": negation_phrase,\n", + " \"N_P_S\": lambda: \"dog\",\n", + " \"N_H_S\": lambda: \"dog\",\n", + " \"N_S\": noun_merge,\n", + " \"Adj_P_S\": lambda: \"cute\",\n", + " \"Adj_H_S\": lambda: \"cute\",\n", + " \"Adj_S\": adj_merge,\n", + " \"NP_S\": noun_phrase,\n", + " \"Q_P_S\": lambda: \"some\",\n", + " \"Q_H_S\": lambda: \"some\",\n", + " \"Q_S\": quantifier_merge,\n", + " \"QP_S\": quantifier_phrase\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# coordinates to display the MQNLI tree\n", + "pos = {\n", + " \"N_P_O\": (32, 0.3),\n", + " \"N_H_O\": (30, 0.7),\n", + " \"N_O\": (31, 1.3),\n", + " \"Adj_P_O\": (28, 0),\n", + " \"Adj_H_O\": (26, 0.5),\n", + " \"Adj_O\": (27, 1),\n", + " \"NP_O\": (29, 2),\n", + " \"Q_P_O\": (24, 1.3),\n", + " \"Q_H_O\": (22, 1.7),\n", + " \"Q_O\": (23, 2.5),\n", + " \"V_P\": (21, 0),\n", + " \"V_H\": (19, 0.5),\n", + " \"V\": (20, 1),\n", + " \"Adv_P\": (17, -0.3),\n", + " \"Adv_H\": (15, 0.2),\n", + " \"Adv\": (16, 0.7),\n", + " \"VP\": (18, 2),\n", + " \"QP_O\": (25, 3),\n", + " \"Neg_P\": (13, 2.5),\n", + " \"Neg_H\": (11, 3),\n", + " \"Neg\": (12, 3.5),\n", + " \"NegP\": (14, 4),\n", + " \"N_P_S\": (9, 2.2),\n", + " \"N_H_S\": (7, 2.8),\n", + " \"N_S\": (8, 3.3),\n", + " \"Adj_P_S\": (5, 1.5),\n", + " \"Adj_H_S\": (3, 2),\n", + " \"Adj_S\": (4, 2.5),\n", + " \"NP_S\": (6, 4.3),\n", + " \"Q_P_S\": (2, 3.2),\n", + " \"Q_H_S\": (0, 3.5),\n", + " \"Q_S\": (1, 4),\n", + " \"QP_S\": (10, 5)\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "variables = list(parents.keys()) # pretty sure this preserves order?" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "mqlni_model = CausalModel(variables, values, parents, functions, pos=pos)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We begin by visualizing the high-level structure of the MQNLI task. All leaf nodes consist of text entries (e.g., Adj_P_O might be \"fun\", N_H_O might be \"child\"), with one copy corresponding to the premise sentence (P) and the other corresponding to the hypothesis (H). All other nodes take on relation values (e.g., entailment, reverse entailment, no relation), or mappings between relations (e.g., (entailment, entailment) --> no entailment)." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxsAAAMWCAYAAACZQJsXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdfXzN9f/H8cfZDubapslVsgvG5mJk9E1EuYjoSpJChFyUVL/KZZcovrrEF0Mq0rdSVK7KRYvom4gdF0M2U67Dho2Ms53fH8eZXe9sO2fn7Ox5v93OjX0+n/P5vE6d87HXeb/er7fBYrFYEBERERERcTAvVwcgIiIiIiKeScmGiIiIiIg4hZINERERERFxCiUbIiIiIiLiFEo2RERERETEKZRsiIiIiIiIUyjZEBERERERp1CyISIiIiIiTmG056C0tDSOHz9O5cqVMRgMzo5JRERERETclMViISkpidq1a+PllffYhV3JxvHjx7npppscEpyIiIiIiJR8R44coW7dunkeY1eyUbly5fQTVqlSpeiRiYiIiIhIiXThwgVuuumm9BwhL3YlG7bSqSpVqijZEBERERERu6ZXaIK4iIiIiIg4hZINERERERFxCiUbIiIiIiLiFEo2RERERETEKZRsiIiIiIiIUyjZEBERERERp1CyISIiIiIiTqFkQ0REREREnELJhoiIiIiIOIWSDRERERERcQolGyIiIiIi4hRKNkRERERExCmUbIiIiIiIiFMo2RAREREREadQsiEiIiIiIk6hZENERERERJxCyYaIiIiIiDiFkg0REREREXEKJRsiIiIiIuIUSjZERERERMQplGyIiIiIiIhTKNkQERERERGnULIhIiIiIiJOoWRDREREREScQsmGiIiIiIg4hZINERERERFxCiUbIiIiIiLiFEo2RERERETEKZRsiIiIiIiIUyjZEBERERERp1CyISIiIiIiTqFkQ0REREREnELJhoiIiIiIOIWSDRERERERcQolGyIiIiIi4hRKNkRERERExCmUbIiIiIiIiFMo2RAREREREadQsiEiIiIiIk6hZENERERERJxCyYaIiIiIiDiFkg0REREREXEKJRsiIiIiIuIUSjZERERERMQplGyIiIiIiIhTKNkQERERERGnULIhIiIiIiJOoWRDREREREScQsmGiIiIiIg4hZINERER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SSY2IZYUcwrljOUI9gumUtlKmY5v1KgRXl5epKWlAfD111/zzTffMGnSJF566SVnv2wREREpZhrZECllMo5mPP744+zevTs90QCwWCz88MMPXLp0iRtvvBEvLy/MZjP3339/nuetVLYS4TXDaVO3DeE1w7MlGgD169dPTzTAOifkypUrLFq0CDt6VYiIiEgJo2RDpJTIODfj8OHDbNiwgf/85z9Urlw503GTJk3i7bff5oMPPmDPnj2EhYVRpUoVOnbsWOQY6tevn23b8OHD+d///pdj6ZaIiIiUbCqjEikFDh06xODBg/npp58YOXIk06ZNo1Kl7CMP77zzDq+++ipvvvkmzzzzDAC//vorp0+fply5ckWOIyDg+roa1atX5+zZs/zrX//KlvCIiIiIZ9DIhogHs41mNGvWLNNoRk6JRmRkJC+88ALjx49n3Lhx6dsrVKjAzTff7JB4/P39iYiIYPjw4cTHx/PYY48xevRojh8/7pDzi4iIiHvRon4iHsre0QyATz/9lAEDBjBq1Cjef//9YitpSkhIICwsjFatWvHdd9+plEpERKQEKEhuoJENEQ9TkNEMgGXLljFw4EAGDRrEe++9V6y/8Pv5+REZGcnKlStZvHhxsV1XREREioeSDREPcujQoTw7TWX1/fff88gjj/DQQw8xb948l6zqfe+996qcSkRExEMp2RDxAAUdzQDYuHEjDzzwAHfffTeLFy/G29u7GCPObMaMGfj4+DBs2DC1wBUREfEgSjZESriCjmYAbN26lR49enD77bfz5ZdfUqZMmWKKNmcqpxIREfFMSjZESqjCjGYAmEwm7r77bpo3b84333yDj49PMUWcN5VTiYiIeB4lGyIlUGFGMwD2799P586dCQoKYtWqVVSsWLEYorWfrZzqySefVDmViIiIB1CyIVKCpKWlMWvWrGyrgOc3mgEQHx9Pp06dqFGjBj/88ANVq1YthogLxlZOtWrVKpVTiYiIeAAlGyIlxKFDh7jzzjsZNWoUAwcOtHs0A+DYsWPcddddlC9fnnXr1lG9enUnR1t49957L/369VM5lYiIiAdQsiHi5jKOZvz555/8+OOPdo9mAPz999906tSJ1NRUNmzYQK1atZwccdF98MEHKqcSERHxAEo2RNxYTqMZHTt2tPv5iYmJdOnShXPnzrF+/Xrq1avnxGgdR+VU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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "mqlni_model.print_structure()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example MQNLI Input\n", + "\n", + "Here we walk through an example MQNLI input, presented below.\n", + "```json\n", + "Premise: Every dog climbed some tree.\n", + "Hypothesis: Some dog did not climb every tree.\n", + "```\n", + "\n", + "The output for this sentence pair is `contradiction`, because the premise entails that there cannot be a dog who climbed no tree. " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "inputs = {\n", + " # premise\n", + " \"Q_P_S\": \"every\",\n", + " \"Adj_P_S\": EMPTY,\n", + " \"N_P_S\": \"dog\",\n", + " \"Neg_P\": EMPTY,\n", + " \"Adv_P\": EMPTY,\n", + " \"V_P\": \"climbed\",\n", + " \"Q_P_O\": \"some\",\n", + " \"Adj_P_O\": EMPTY,\n", + " \"N_P_O\": \"tree\",\n", + " # hypothesis\n", + " \"Q_H_S\": \"some\",\n", + " \"Adj_H_S\": EMPTY,\n", + " \"N_H_S\": \"dog\",\n", + " \"Neg_H\": \"not\",\n", + " \"Adv_H\": EMPTY,\n", + " \"V_H\": \"climbed\",\n", + " \"Q_H_O\": \"some\",\n", + " \"Adj_H_O\": EMPTY,\n", + " \"N_H_O\": \"tree\"\n", + "}\n", + "\n", + "setting = mqlni_model.run_forward(inputs)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "every dog climbed some tree\n", + "some dog not climbed some tree\n", + "contradiction\n" + ] + } + ], + "source": [ + "def print_premise(setting):\n", + " print(\n", + " setting[\"Q_P_S\"],\n", + " setting[\"Adj_P_S\"],\n", + " setting[\"N_P_S\"],\n", + " setting[\"Neg_P\"],\n", + " setting[\"Adv_P\"],\n", + " setting[\"V_P\"],\n", + " setting[\"Q_P_O\"],\n", + " setting[\"Adj_P_O\"],\n", + " setting[\"N_P_O\"]\n", + " )\n", + "\n", + "def print_hypothesis(setting):\n", + " print(\n", + " setting[\"Q_H_S\"],\n", + " setting[\"Adj_H_S\"],\n", + " setting[\"N_H_S\"],\n", + " setting[\"Neg_H\"],\n", + " setting[\"Adv_H\"],\n", + " setting[\"V_H\"],\n", + " setting[\"Q_H_O\"],\n", + " setting[\"Adj_H_O\"],\n", + " setting[\"N_H_O\"]\n", + " )\n", + "\n", + "print_premise(setting)\n", + "print_hypothesis(setting)\n", + "\n", + "print(setting[\"QP_S\"]) # the output is in the root node, QP_S" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We display the structure of the MQNLI example below. Note that the intermediate relation values compose with each other to produce the final output. For instance, since `N_O` and `Adj_O` both take on the value `equivalence`, then `NP_O` is also an equivalence relation." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display = {v: not isinstance(values[v][0], dict) for v in variables}\n", + "mqlni_model.print_setting(setting, display=display)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### MQNLI with an Intervention\n", + "\n", + "Below is a run of the MQNLI logic model where we intervene on the object quantifier (`QP_O`) and swap its relation value from `equivalence` to `contradiction`. Note that this changes the final output from `contradiction` to `entailment`." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "every dog climbed some tree\n", + "some dog not climbed some tree\n", + "entails\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "intervention = {**inputs, 'QP_O': 'contradiction'}\n", + "setting = mqlni_model.run_forward(intervention)\n", + "print_premise(setting)\n", + "print_hypothesis(setting)\n", + "print(setting[\"QP_S\"])\n", + "\n", + "mqlni_model.print_setting(setting, display=display)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Training a Model on MQNLI\n", + "\n", + "In this section, we train a language model (GPT-2) on the MQNLI task. Importantly, we do not need to access the original MQNLI dataset to do this -- having set up our causal model earlier in this notebook, we can generate datapoints by sampling from it directly! " + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "dataset = mqlni_model.generate_factual_dataset(100, sampler=mqlni_model.sample_input_tree_balanced, return_tensors=False)\n", + "\n", + "X = [example['input_ids'] for example in dataset]\n", + "y = [example['labels'] for example in dataset]" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "some little child energetically climbed some happy tree\n", + "every child not energetically climbed some happy tree\n", + "alternation\n" + ] + } + ], + "source": [ + "i = 0\n", + "\n", + "print_premise(X[i])\n", + "print_hypothesis(X[i])\n", + "print(y[i]['QP_S'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We want to make sure that we indeed sampled evenly from the causal structure. For now, we can just verify that every possible output value (i.e., the values of the root node `QP_S`) has enough datapoints. " + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'alternation': 16,\n", + " 'contradiction': 18,\n", + " 'reverse entails': 15,\n", + " 'independence': 14,\n", + " 'entails': 16,\n", + " 'equivalence': 10,\n", + " 'cover': 11})" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Counter([n['QP_S'] for n in y])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Time to train a language model!" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "config, tokenizer, model = create_gpt2_lm()" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "def premise_to_string(setting):\n", + " return \\\n", + " setting[\"Q_P_S\"] + ' ' + \\\n", + " setting[\"Adj_P_S\"] + ' ' + \\\n", + " setting[\"N_P_S\"] + ' ' + \\\n", + " setting[\"Neg_P\"] + ' ' + \\\n", + " setting[\"Adv_P\"] + ' ' + \\\n", + " setting[\"V_P\"] + ' ' + \\\n", + " setting[\"Q_P_O\"] + ' ' + \\\n", + " setting[\"Adj_P_O\"] + ' ' + \\\n", + " setting[\"N_P_O\"]\n", + "\n", + "def hypothesis_to_string(setting):\n", + " return \\\n", + " setting[\"Q_H_S\"] + ' ' + \\\n", + " setting[\"Adj_H_S\"] + ' ' + \\\n", + " setting[\"N_H_S\"] + ' ' + \\\n", + " setting[\"Neg_H\"] + ' ' + \\\n", + " setting[\"Adv_H\"] + ' ' + \\\n", + " setting[\"V_H\"] + ' ' + \\\n", + " setting[\"Q_H_O\"] + ' ' + \\\n", + " setting[\"Adj_H_O\"] + ' ' + \\\n", + " setting[\"N_H_O\"]\n", + "\n", + "def preprocess_input(setting):\n", + " return f'Premise: {premise_to_string(setting)}\\nHypothesis: {hypothesis_to_string(setting)}\\nRelation: '\n", + "\n", + "def preprocess_output(setting):\n", + " return setting['QP_S']" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "IGNORE_INDEX = -100\n", + "MAX_LENGTH = 64\n", + "\n", + "tokenizer.pad_token = tokenizer.eos_token\n", + "\n", + "def preprocess(X, y):\n", + " examples = [preprocess_input(x) for x in X]\n", + " labels = [preprocess_output(y) for y in y]\n", + "\n", + " examples = tokenizer(\n", + " examples, \n", + " padding='max_length', \n", + " max_length=MAX_LENGTH, \n", + " truncation=True, \n", + " return_tensors='pt'\n", + " )\n", + " labels = tokenizer(\n", + " labels, \n", + " padding='max_length', \n", + " max_length=MAX_LENGTH, \n", + " truncation=True, \n", + " return_tensors='pt'\n", + " )['input_ids'][:, 0] # get first token of label\n", + " \n", + " # put label at the last index\n", + " examples['labels'] = torch.full_like(examples['input_ids'], IGNORE_INDEX)\n", + " examples['labels'][:, -1] = labels\n", + "\n", + " return examples\n", + "\n", + "train_dataset = preprocess(X, y)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [], + "source": [ + "# set the wandb project where this run will be logged\n", + "os.environ[\"WANDB_PROJECT\"]=TRAIN_DIR\n", + "\n", + "# save your trained model checkpoint to wandb\n", + "os.environ[\"WANDB_LOG_MODEL\"]=\"false\"\n", + "\n", + "def accuracy_metric(x):\n", + " labels = x.label_ids[:, -1]\n", + " # predictions = x.predictions[0].argmax(axis=-1)[:, -2] # uncomment for gpt-neox\n", + " predictions = x.predictions.argmax(axis=-1)[:, -2]\n", + " return {\n", + " 'accuracy': accuracy_score(y_true=labels, y_pred=predictions),\n", + " }\n", + "\n", + "train_ds = Dataset.from_dict(train_dataset)\n", + "\n", + "batch_size = 8\n", + "\n", + "training_args = TrainingArguments(\n", + " output_dir=TRAIN_DIR,\n", + " overwrite_output_dir=True,\n", + " evaluation_strategy=\"epoch\",\n", + " learning_rate=1e-05,\n", + " num_train_epochs=1,\n", + " per_device_train_batch_size=batch_size,\n", + " per_device_eval_batch_size=batch_size,\n", + " report_to=\"wandb\", # optional, remove if you don't want to log to wandb\n", + " use_cpu=True,\n", + ")\n", + "\n", + "trainer = Trainer(\n", + " model=model,\n", + " args=training_args,\n", + " train_dataset=train_ds,\n", + " eval_dataset=train_ds,\n", + " compute_metrics=accuracy_metric\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Train the model and log it in a Weights & Biases run." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "wandb version 0.16.4 is available! To upgrade, please run:\n", + " $ pip install wandb --upgrade" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "Tracking run with wandb version 0.16.3" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "Run data is saved locally in c:\\Users\\amirz\\Source\\NLP\\clones\\pyvene\\tutorials\\advanced_tutorials\\wandb\\run-20240314_140315-cwmxs9sx" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "Syncing run derby-crumble-2 to Weights & Biases (docs)
" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + " View project at https://wandb.ai/amirzur1212/mqnli_factual" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + " View run at https://wandb.ai/amirzur1212/mqnli_factual/runs/cwmxs9sx" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "5b3008cdd19b4d1f80ef096f3d2c97ef", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/13 [00:00\n", + " table.wandb td:nth-child(1) { padding: 0 10px; text-align: left ; width: auto;} td:nth-child(2) {text-align: left ; width: 100%}\n", + " .wandb-row { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; width: 100% }\n", + " .wandb-col { display: flex; flex-direction: column; flex-basis: 100%; flex: 1; padding: 10px; }\n", + " \n", + "

Run history:


eval/accuracy▁▁▁
eval/loss▁▁▁
eval/runtime█▄▁
eval/samples_per_second▁▅█
eval/steps_per_second▁▅█
train/epoch▁▁▁▁
train/global_step▁▁▁▁
train/total_flos
train/train_loss
train/train_runtime
train/train_samples_per_second
train/train_steps_per_second

Run summary:


eval/accuracy0.17
eval/loss4.24211
eval/runtime12.532
eval/samples_per_second7.98
eval/steps_per_second1.037
train/epoch1.0
train/global_step13
train/total_flos3266150400000.0
train/train_loss5.36725
train/train_runtime52.4216
train/train_samples_per_second1.908
train/train_steps_per_second0.248

" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + " View run derby-crumble-2 at: https://wandb.ai/amirzur1212/mqnli_factual/runs/cwmxs9sx
Synced 5 W&B file(s), 0 media file(s), 0 artifact file(s) and 0 other file(s)" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "Find logs at: .\\wandb\\run-20240314_140315-cwmxs9sx\\logs" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "wandb.finish()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Interpreting Our Model\n", + "\n", + "In this final section, we use distributed alignment search DAS from [Geiger*, Wu*, Potts, Icard, and Goodman (2024)](https://arxiv.org/pdf/2303.02536.pdf) to find an alignment between the high-level causal structure of MQNLI and our low-level language model trained on the MQNLI dataset.\n", + "\n", + "In this section, we won't search for an alignment over the entire causal structure. Instead, we will search for an alignment between the low-level model representations and the `NegP` token. Efficiently searching for a full alignment over a complex, nested causal structure is an open problem that is worth pursuing! " + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "config, tokenizer, model = create_gpt2_lm(name=TRAIN_DIR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here we set up our alignment. We will search for a subspace with a dimension of 128 (a fourth of our model's hidden dimension size) in the residual stream of the 10th layer of the model (out of 12 overall transformer layers)." + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [], + "source": [ + "config = IntervenableConfig(\n", + " model_type=type(model),\n", + " representations=[\n", + " RepresentationConfig(\n", + " 10, # layer\n", + " \"block_output\", # intervention type\n", + " \"pos\", # intervention unit is now aligned with tokens\n", + " 1, # max number of unit\n", + " subspace_partition=[[0, 128]], \n", + " # intervention_link_key=0,\n", + " )\n", + " ],\n", + " intervention_types=RotatedSpaceIntervention,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING:root:Detected use_fast=True means the intervention location will be static within a batch.\n", + "\n", + "In case multiple location tags are passed only the first one will be considered\n" + ] + } + ], + "source": [ + "intervenable = IntervenableModel(config, model, use_fast=True)\n", + "# intervenable.set_device('cuda')\n", + "intervenable.disable_model_gradients()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Crucially, our interpretability experiments rely on a counterfactual dataset: for a given input, we want to consider what might happen had the value of `NegP` changed while all else remained the same. Fortunately, this is precisely what our causal model can provide us with! We can generate a counterfactual dataset by sampling inputs that only vary from each other on the `NegP` node." + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [], + "source": [ + "def sample_intervention(*args, **kwargs):\n", + " return {\n", + " 'NegP' : random.choice(mqlni_model.values['NegP'])\n", + " }\n", + "\n", + "def intervention_id(*args, **kwargs):\n", + " return 0\n", + "\n", + "batch_size = 2 # specifies how many inputs we want per intervention that is sampled\n", + "\n", + "dataset = mqlni_model.generate_counterfactual_dataset(\n", + " 100, intervention_id, batch_size, \n", + " sampler=mqlni_model.sample_input_tree_balanced, intervention_sampler=sample_intervention, return_tensors=False\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "alternation\n", + "independence\n" + ] + } + ], + "source": [ + "print(dataset[0]['base_labels']['QP_S'])\n", + "print(dataset[0]['labels']['QP_S'])" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'alternation': 23,\n", + " 'reverse entails': 10,\n", + " 'cover': 15,\n", + " 'equivalence': 15,\n", + " 'contradiction': 9,\n", + " 'independence': 14,\n", + " 'entails': 14})" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# check that base labels are diverse (should be guaranteed by sampling from balanced input tree)\n", + "Counter([d['base_labels']['QP_S'] for d in dataset])" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'independence': 47,\n", + " 'reverse entails': 10,\n", + " 'entails': 9,\n", + " 'alternation': 20,\n", + " 'cover': 10,\n", + " 'contradiction': 3,\n", + " 'equivalence': 1})" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# check that counterfactuals labels are diverse (note that this could be skewed by the node's effect on the final output)\n", + "Counter([d['labels']['QP_S'] for d in dataset])" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": {}, + "outputs": [], + "source": [ + "IGNORE_INDEX = -100\n", + "MAX_LENGTH = 64\n", + "\n", + "tokenizer.pad_token = tokenizer.eos_token\n", + "\n", + "def preprocess_input(setting):\n", + " return f'Premise: {premise_to_string(setting)}\\nHypothesis: {hypothesis_to_string(setting)}\\nRelation: '\n", + "\n", + "def preprocess_output(setting):\n", + " return setting['QP_S']\n", + "\n", + "def tokenize(x):\n", + " return tokenizer(\n", + " x, \n", + " padding='max_length', \n", + " max_length=MAX_LENGTH, \n", + " truncation=True, \n", + " return_tensors='pt'\n", + " )\n", + "\n", + "def preprocess_counterfactual(data):\n", + " preprocessed_data = []\n", + " for d in data:\n", + " base = preprocess_input(d['input_ids'])\n", + " sources = [preprocess_input(d['source_input_ids'][0])]\n", + " label = preprocess_output(d['labels'])\n", + " base_label = preprocess_output(d['base_labels'])\n", + "\n", + " preprocessed = {}\n", + " preprocessed['input'] = tokenize(base)\n", + " preprocessed['source'] = [tokenize(sources[0])]\n", + " # place label at last index\n", + " label = tokenize(label)['input_ids'][:, 0]\n", + " preprocessed['label'] = torch.full_like(preprocessed['input']['input_ids'], IGNORE_INDEX)\n", + " preprocessed['label'][:, -1] = label\n", + " # repeat for base label\n", + " base_label = tokenize(base_label)['input_ids'][:, 0]\n", + " preprocessed['base_label'] = torch.full_like(preprocessed['input']['input_ids'], IGNORE_INDEX)\n", + " preprocessed['base_label'][:, -1] = base_label\n", + " preprocessed['intervention_id'] = torch.tensor(d['intervention_id'])\n", + " preprocessed_data.append(preprocessed)\n", + " return preprocessed_data" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "outputs": [], + "source": [ + "train_dataset = preprocess_counterfactual(dataset)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [], + "source": [ + "dataloader = DataLoader(train_dataset, batch_size=2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Set up our optimizer, loss function, and accuracy metric." + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [], + "source": [ + "epochs = 3\n", + "batch_size = 8\n", + "gradient_accumulation_steps = 1\n", + "\n", + "optimizer_params = []\n", + "for k, v in intervenable.interventions.items():\n", + " optimizer_params += [{\"params\": v[0].rotate_layer.parameters()}]\n", + " break\n", + "optimizer = torch.optim.Adam(optimizer_params, lr=0.001)\n", + "\n", + "\n", + "def compute_metrics(eval_preds, eval_labels):\n", + " accuracy = accuracy_score(\n", + " y_pred=eval_preds[..., -2].squeeze().clone().detach().cpu().numpy(), \n", + " y_true=eval_labels[..., -1].squeeze().clone().detach().cpu().numpy()\n", + " )\n", + " return {\n", + " \"accuracy\": accuracy\n", + " }\n", + "\n", + "\n", + "def compute_loss(outputs, labels):\n", + " # Shift so that tokens < n predict n\n", + " shift_logits = outputs[..., :-1, :].contiguous()\n", + " shift_labels = labels[..., 1:].contiguous()\n", + " # Flatten the tokens\n", + " loss_fct = CrossEntropyLoss()\n", + " loss = loss_fct(shift_logits.view(-1, shift_logits.size(-1)), shift_labels.view(-1))\n", + " return loss" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Run DAS to find an alignment between our high-level causal model and the language model trained on MQNLI." + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "intervention trainable parameters: 589824\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch: 0: 100%|██████████| 12/12 [00:59<00:00, 4.93s/it, loss=6.88, acc=0] \n", + "\n", + "Epoch: 1: 100%|██████████| 12/12 [00:58<00:00, 4.91s/it, loss=5.86, acc=0] \n", + "\n", + "Epoch: 2: 100%|██████████| 12/12 [00:59<00:00, 4.98s/it, loss=6.37, acc=0] \n", + "\n", + "Epoch: 100%|██████████| 3/3 [02:57<00:00, 59.28s/it]\n" + ] + } + ], + "source": [ + "intervenable.model.train() # train enables drop-off but no grads\n", + "print(\"intervention trainable parameters: \", intervenable.count_parameters())\n", + "train_iterator = trange(0, int(epochs), desc=\"Epoch\")\n", + "\n", + "total_step = 0\n", + "for epoch in train_iterator:\n", + " epoch_iterator = tqdm(\n", + " DataLoader(\n", + " train_dataset,\n", + " batch_size=batch_size,\n", + " drop_last=True\n", + " ),\n", + " desc=f\"Epoch: {epoch}\",\n", + " position=0,\n", + " leave=True\n", + " )\n", + " for batch in epoch_iterator:\n", + " inputs = {k: v.to(intervenable.get_device()) for k, v in batch['input'].items()}\n", + " sources = [{k: v.to(intervenable.get_device()) for k, v in s.items()} for s in batch['source']]\n", + " _, counterfactual_outputs = intervenable(\n", + " inputs,\n", + " sources,\n", + " {\"sources->base\": ([[[MAX_LENGTH - 2]] * batch_size], [[[MAX_LENGTH - 2]] * batch_size])},\n", + " subspaces=[[[0]] * batch_size],\n", + " )\n", + "\n", + " eval_metrics = compute_metrics(\n", + " counterfactual_outputs.logits.argmax(-1), batch[\"label\"].to(intervenable.get_device())\n", + " )\n", + "\n", + " # loss and backprop\n", + " loss = compute_loss(\n", + " counterfactual_outputs.logits, batch[\"label\"].to(intervenable.get_device())\n", + " )\n", + "\n", + " epoch_iterator.set_postfix({\"loss\": loss.item(), \"acc\": eval_metrics[\"accuracy\"]})\n", + "\n", + " if gradient_accumulation_steps > 1:\n", + " loss = loss / gradient_accumulation_steps\n", + " loss.backward()\n", + " if total_step % gradient_accumulation_steps == 0:\n", + " optimizer.step()\n", + " intervenable.set_zero_grad()\n", + " total_step += 1" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Directory 'mqnli_das' already exists.\n" + ] + } + ], + "source": [ + "intervenable.save(DAS_DIR)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Evaluate DAS Alignment\n", + "\n", + "Lastly, we evaluate the accuracy of the alignment found by DAS. " + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING:root:The key is provided in the config. Assuming this is loaded from a pretrained module.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "config, tokenizer, model = create_gpt2_lm(name=TRAIN_DIR)\n", + "intervenable = IntervenableModel.load(DAS_DIR, model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "First, we evaluate the model's performance on the MQNLI factual task. As before, we expect our model to complete this task with nearly perfect accuracy." + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [], + "source": [ + "tokenizer.pad_token = tokenizer.eos_token\n", + "examples = mqlni_model.generate_factual_dataset(100, sampler=mqlni_model.sample_input_tree_balanced, return_tensors=False)\n", + "X = [example['input_ids'] for example in examples]\n", + "y = [example['labels'] for example in examples]\n", + "test_factual_dataset = preprocess(X, y)" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [], + "source": [ + "def accuracy_metric(x):\n", + " labels = x.label_ids[:, -1]\n", + " # predictions = x.predictions[0].argmax(axis=-1)[:, -2] # take one index before label\n", + " predictions = x.predictions.argmax(axis=-1)[:, -2]\n", + " return {\n", + " 'accuracy': accuracy_score(y_true=labels, y_pred=predictions),\n", + " }\n", + "\n", + "test_factual_ds = Dataset.from_dict(test_factual_dataset)\n", + "\n", + "batch_size = 8\n", + "\n", + "training_args = TrainingArguments(\n", + " output_dir=\"test_mqnli_trainer\",\n", + " overwrite_output_dir=True,\n", + " evaluation_strategy=\"epoch\",\n", + " learning_rate=1e-05,\n", + " num_train_epochs=1,\n", + " per_device_train_batch_size=batch_size,\n", + " per_device_eval_batch_size=batch_size,\n", + " report_to=\"none\",\n", + " use_cpu=True,\n", + ")\n", + "\n", + "trainer = Trainer(\n", + " model=intervenable.model,\n", + " args=training_args,\n", + " compute_metrics=accuracy_metric\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "ba33bc2aaff448c1bd8ef2e97ed4f74b", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/13 [00:00base\": ([[[MAX_LENGTH - 2]] * batch_size], [[[MAX_LENGTH - 2]] * batch_size])},\n", + " subspaces=[[[0]] * batch_size],\n", + " )\n", + "\n", + " if base_labels is None:\n", + " # base_preds = base_outputs.logits.argmax(-1).clone().detach()\n", + " # base_labels = batch['base_label']\n", + " counterfactual_preds = counterfactual_outputs.logits.argmax(-1).clone().detach()\n", + " counterfactual_labels = batch['label']\n", + " else:\n", + " # base_preds = torch.cat((base_preds, base_outputs.logits.argmax(-1).clone().detach()))\n", + " # base_labels = torch.cat((base_labels, batch['base_label']))\n", + " counterfactual_preds = torch.cat((counterfactual_preds, counterfactual_outputs.logits.argmax(-1).clone().detach()))\n", + " counterfactual_labels = torch.cat((counterfactual_labels, batch['label']))" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'counterfactual_accuracy': 0.125}" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "{\n", + " # 'base_accuracy': compute_metrics(base_preds, base_labels)['accuracy'],\n", + " 'counterfactual_accuracy': compute_metrics(counterfactual_preds, counterfactual_labels)['accuracy']\n", + "}" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "pyvene", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.18" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/_sources/tutorials/advanced_tutorials/Probing_Gender.ipynb b/_sources/tutorials/advanced_tutorials/Probing_Gender.ipynb new file mode 100644 index 00000000..0bd32733 --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/Probing_Gender.ipynb @@ -0,0 +1,7253 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Causal Evaluation of Probes\n", + "\n", + "This is a simple tutorial showing you to collect activations from intervention-points in a model. We'll compare 1D DAS IIA on each layer and position for `block_output` in pythia-70M with logistic regression probing accuracy. The task we'll look at is gender prediction, where gendered names are used in templates like \"[name] walked because\", which elicits the associated gendered pronoun \"he\" or \"she\" as the next-token prediction for this model." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/frankaging/pyvene/blob/main/tutorials/advance_tutorials/Probing_Gender.ipynb)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Aryaman Arora\"\n", + "__version__ = \"01/10/2024\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene as pv\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "from transformers import (\n", + " AutoModelForCausalLM,\n", + " AutoTokenizer,\n", + " get_linear_schedule_with_warmup,\n", + ")\n", + "import torch\n", + "import random\n", + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.metrics import f1_score\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + " geom_line,\n", + " geom_point,\n", + " geom_text,\n", + " ggtitle, xlab, ylab, \n", + " ggsave\n", + ")\n", + "from plotnine.scales import scale_y_reverse, scale_fill_cmap\n", + "from tqdm import tqdm\n", + "from collections import namedtuple" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load model and data" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "device = \"cuda:0\" if torch.cuda.is_available() else \"cpu\"\n", + "model = \"EleutherAI/pythia-70m\" # \"EleutherAI/pythia-6.9B\"\n", + "tokenizer = AutoTokenizer.from_pretrained(model)\n", + "tokenizer.pad_token = tokenizer.eos_token\n", + "gpt = AutoModelForCausalLM.from_pretrained(\n", + " model,\n", + " revision=\"main\",\n", + " torch_dtype=torch.bfloat16 if model == \"EleutherAI/pythia-6.9b\" else torch.float32,\n", + ").to(device)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have a list of 100 names for each gender, and we'll filter for names that are one token in length. We'll further filter for examples the model agrees with our labels for, since some of these names might be ambiguous or the model might not have the expected behaviour. This ensures that baseline IIA is 0." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "47 10\n" + ] + } + ], + "source": [ + "Example = namedtuple(\"Example\", [\"base\", \"src\", \"base_label\", \"src_label\"])\n", + "\n", + "names = {\n", + " \"he\": [\n", + " \"James\",\n", + " \"Robert\",\n", + " \"John\",\n", + " \"Michael\",\n", + " \"David\",\n", + " \"William\",\n", + " \"Richard\",\n", + " \"Joseph\",\n", + " \"Thomas\",\n", + " \"Christopher\",\n", + " \"Charles\",\n", + " \"Daniel\",\n", + " \"Matthew\",\n", + " \"Anthony\",\n", + " \"Mark\",\n", + " \"Donald\",\n", + " \"Steven\",\n", + " \"Andrew\",\n", + " \"Paul\",\n", + " \"Joshua\",\n", + " \"Kenneth\",\n", + " \"Kevin\",\n", + " \"Brian\",\n", + " \"George\",\n", + " \"Timothy\",\n", + " \"Ronald\",\n", + " \"Jason\",\n", + " \"Edward\",\n", + " \"Jeffrey\",\n", + " \"Ryan\",\n", + " \"Jacob\",\n", + " \"Gary\",\n", + " \"Nicholas\",\n", + " \"Eric\",\n", + " \"Jonathan\",\n", + " \"Stephen\",\n", + " \"Larry\",\n", + " \"Justin\",\n", + " \"Scott\",\n", + " \"Brandon\",\n", + " \"Benjamin\",\n", + " \"Samuel\",\n", + " \"Gregory\",\n", + " \"Alexander\",\n", + " \"Patrick\",\n", + " \"Frank\",\n", + " \"Raymond\",\n", + " \"Jack\",\n", + " \"Dennis\",\n", + " \"Jerry\",\n", + " \"Tyler\",\n", + " \"Aaron\",\n", + " \"Jose\",\n", + " \"Adam\",\n", + " \"Nathan\",\n", + " \"Henry\",\n", + " \"Zachary\",\n", + " \"Douglas\",\n", + " \"Peter\",\n", + " \"Kyle\",\n", + " \"Noah\",\n", + " \"Ethan\",\n", + " \"Jeremy\",\n", + " \"Walter\",\n", + " \"Christian\",\n", + " \"Keith\",\n", + " \"Roger\",\n", + " \"Terry\",\n", + " \"Austin\",\n", + " \"Sean\",\n", + " \"Gerald\",\n", + " \"Carl\",\n", + " \"Harold\",\n", + " \"Dylan\",\n", + " \"Arthur\",\n", + " \"Lawrence\",\n", + " \"Jordan\",\n", + " \"Jesse\",\n", + " \"Bryan\",\n", + " \"Billy\",\n", + " \"Bruce\",\n", + " \"Gabriel\",\n", + " \"Joe\",\n", + " \"Logan\",\n", + " \"Alan\",\n", + " \"Juan\",\n", + " \"Albert\",\n", + " \"Willie\",\n", + " \"Elijah\",\n", + " \"Wayne\",\n", + " \"Randy\",\n", + " \"Vincent\",\n", + " \"Mason\",\n", + " \"Roy\",\n", + " \"Ralph\",\n", + " \"Bobby\",\n", + " \"Russell\",\n", + " \"Bradley\",\n", + " \"Philip\",\n", + " \"Eugene\",\n", + " ],\n", + " \"she\": [\n", + " \"Mary\",\n", + " \"Patricia\",\n", + " \"Jennifer\",\n", + " \"Linda\",\n", + " \"Elizabeth\",\n", + " \"Barbara\",\n", + " \"Susan\",\n", + " \"Jessica\",\n", + " \"Sarah\",\n", + " \"Karen\",\n", + " \"Lisa\",\n", + " \"Nancy\",\n", + " \"Betty\",\n", + " \"Sandra\",\n", + " \"Margaret\",\n", + " \"Ashley\",\n", + " \"Kimberly\",\n", + " \"Emily\",\n", + " \"Donna\",\n", + " \"Michelle\",\n", + " \"Carol\",\n", + " \"Amanda\",\n", + " \"Melissa\",\n", + " \"Deborah\",\n", + " \"Stephanie\",\n", + " \"Dorothy\",\n", + " \"Rebecca\",\n", + " \"Sharon\",\n", + " \"Laura\",\n", + " \"Cynthia\",\n", + " \"Amy\",\n", + " \"Kathleen\",\n", + " \"Angela\",\n", + " \"Shirley\",\n", + " \"Brenda\",\n", + " \"Emma\",\n", + " \"Anna\",\n", + " \"Pamela\",\n", + " \"Nicole\",\n", + " \"Samantha\",\n", + " \"Katherine\",\n", + " \"Christine\",\n", + " \"Helen\",\n", + " \"Debra\",\n", + " \"Rachel\",\n", + " \"Carolyn\",\n", + " \"Janet\",\n", + " \"Maria\",\n", + " \"Catherine\",\n", + " \"Heather\",\n", + " \"Diane\",\n", + " \"Olivia\",\n", + " \"Julie\",\n", + " \"Joyce\",\n", + " \"Victoria\",\n", + " \"Ruth\",\n", + " \"Virginia\",\n", + " \"Lauren\",\n", + " \"Kelly\",\n", + " \"Christina\",\n", + " \"Joan\",\n", + " \"Evelyn\",\n", + " \"Judith\",\n", + " \"Andrea\",\n", + " \"Hannah\",\n", + " \"Megan\",\n", + " \"Cheryl\",\n", + " \"Jacqueline\",\n", + " \"Martha\",\n", + " \"Madison\",\n", + " \"Teresa\",\n", + " \"Gloria\",\n", + " \"Sara\",\n", + " \"Janice\",\n", + " \"Ann\",\n", + " \"Kathryn\",\n", + " \"Abigail\",\n", + " \"Sophia\",\n", + " \"Frances\",\n", + " \"Jean\",\n", + " \"Alice\",\n", + " \"Judy\",\n", + " \"Isabella\",\n", + " \"Julia\",\n", + " \"Grace\",\n", + " \"Amber\",\n", + " \"Denise\",\n", + " \"Danielle\",\n", + " \"Marilyn\",\n", + " \"Beverly\",\n", + " \"Charlotte\",\n", + " \"Natalie\",\n", + " \"Theresa\",\n", + " \"Diana\",\n", + " \"Brittany\",\n", + " \"Doris\",\n", + " \"Kayla\",\n", + " \"Alexis\",\n", + " \"Lori\",\n", + " \"Marie\",\n", + " ],\n", + "}\n", + "\n", + "# filter names that are > 1 token\n", + "names = {\n", + " key: [name for name in names[key] if len(tokenizer.tokenize(name)) == 1]\n", + " for key in names\n", + "}\n", + "print(len(names[\"he\"]), len(names[\"she\"]))\n", + "\n", + "\n", + "def sample_example(tokenizer):\n", + " # sample labels (not matching)\n", + " base_label = random.choice(list(names.keys()))\n", + " src_label = [key for key in names if key != base_label][0]\n", + "\n", + " # sample names\n", + " base_name = random.choice(names[base_label])\n", + " src_name = random.choice(names[src_label])\n", + "\n", + " # make pair\n", + " base = tokenizer(f\"<|endoftext|>{base_name} walked because\", return_tensors=\"pt\")\n", + " src = tokenizer(f\"<|endoftext|>{src_name} walked because\", return_tensors=\"pt\")\n", + " base_label = tokenizer.encode(\" \" + base_label)[0]\n", + " src_label = tokenizer.encode(\" \" + src_label)[0]\n", + " return Example(base, src, base_label, src_label)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Example(base={'input_ids': tensor([[ 0, 37376, 7428, 984]]), 'attention_mask': tensor([[1, 1, 1, 1]])}, src={'input_ids': tensor([[ 0, 44305, 7428, 984]]), 'attention_mask': tensor([[1, 1, 1, 1]])}, base_label=344, src_label=703)" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sample_example(tokenizer)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "def generate_n_doable_examples(n, model, tokenizer):\n", + " examples = []\n", + " iterator = tqdm(range(n))\n", + " while len(examples) < n:\n", + " ex = sample_example(tokenizer)\n", + " for k, v in ex.base.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " ex.base[k] = v.to(model.device)\n", + " for k, v in ex.src.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " ex.src[k] = v.to(model.device)\n", + " logits_base = model(**ex.base).logits[0, -1]\n", + " logits_src = model(**ex.src).logits[0, -1]\n", + " if (\n", + " logits_base[ex.base_label] > logits_base[ex.src_label]\n", + " and logits_src[ex.src_label] > logits_src[ex.base_label]\n", + " ):\n", + " examples.append(ex)\n", + " iterator.update(1)\n", + " return examples" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n", + "To disable this warning, you can either:\n", + "\t- Avoid using `tokenizers` before the fork if possible\n", + "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n", + "100%|██████████| 100/100 [00:05<00:00, 17.51it/s]\n", + "100%|██████████| 50/50 [00:02<00:00, 19.85it/s]\n" + ] + } + ], + "source": [ + "# make dataset\n", + "total_steps = 100\n", + "trainset = generate_n_doable_examples(total_steps, gpt, tokenizer)\n", + "evalset = generate_n_doable_examples(50, gpt, tokenizer)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## DAS\n", + "\n", + "This is the usual 1D DAS setup, training on batch size of 1." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "def intervention_config(intervention_site, layer, num_dims=1):\n", + " config = pv.IntervenableConfig([\n", + " {\n", + " \"layer\": layer,\n", + " \"component\": intervention_site,\n", + " \"intervention_type\": pv.LowRankRotatedSpaceIntervention,\n", + " \"low_rank_dimension\": num_dims,\n", + " }\n", + " ])\n", + " return config" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# loss function\n", + "loss_fct = torch.nn.CrossEntropyLoss()\n", + "\n", + "def calculate_loss(logits, label):\n", + " \"\"\"Calculate cross entropy between logits and a single target label (can be batched)\"\"\"\n", + " shift_labels = label.to(logits.device)\n", + " loss = loss_fct(logits, shift_labels)\n", + " return loss" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "layer: 0, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.66it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.26it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 0, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.97it/s, loss=1.268]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.35it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 98.000%\n", + "layer: 0, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.93it/s, loss=4.130]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.28it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 0, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.83it/s, loss=4.276]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.28it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 1, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.94it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.20it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 1, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.93it/s, loss=1.231]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.20it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 100.000%\n", + "layer: 1, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.94it/s, loss=4.422]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.19it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 1, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:09<00:00, 10.92it/s, loss=4.308]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.13it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 2, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.26it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.30it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 2, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.27it/s, loss=1.305]\n", + "100%|██████████| 50/50 [00:03<00:00, 12.93it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 98.000%\n", + "layer: 2, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.28it/s, loss=1.938]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.27it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 16.000%\n", + "layer: 2, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.24it/s, loss=2.408]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.02it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 10.000%\n", + "layer: 3, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.40it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.34it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 3, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.37it/s, loss=3.477]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.22it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 52.000%\n", + "layer: 3, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.34it/s, loss=2.225]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.22it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 6.000%\n", + "layer: 3, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.42it/s, loss=1.945]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.32it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 10.000%\n", + "layer: 4, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.59it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.33it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 4, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.62it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.38it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 4, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.67it/s, loss=4.034]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.40it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 4, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.76it/s, loss=1.062]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.25it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 98.000%\n", + "layer: 5, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.70it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.22it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 5, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.39it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 12.83it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 5, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.81it/s, loss=4.355]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.43it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 0.000%\n", + "layer: 5, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:08<00:00, 11.44it/s, loss=1.113]\n", + "100%|██████████| 50/50 [00:03<00:00, 13.33it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "iia: 98.000%\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# intervention settings\n", + "stats = []\n", + "num_layers = gpt.config.num_hidden_layers\n", + "\n", + "# loop over layers and positions\n", + "for layer in range(num_layers):\n", + " for position in range(4):\n", + " print(f\"layer: {layer}, position: {position}\")\n", + "\n", + " # set up intervenable model\n", + " config = intervention_config(\"block_output\", layer, 1)\n", + " intervenable = pv.IntervenableModel(config, gpt)\n", + " intervenable.set_device(device)\n", + " intervenable.disable_model_gradients()\n", + "\n", + " # set up optimizer\n", + " optimizer_params = []\n", + " for k, v in intervenable.interventions.items():\n", + " try:\n", + " optimizer_params.append({\"params\": v[0].rotate_layer.parameters()})\n", + " except:\n", + " pass\n", + " optimizer = torch.optim.Adam(optimizer_params, lr=1e-3)\n", + " scheduler = get_linear_schedule_with_warmup(\n", + " optimizer,\n", + " num_warmup_steps=int(0.1 * total_steps),\n", + " num_training_steps=total_steps,\n", + " )\n", + "\n", + " # training loop\n", + " iterator = tqdm(trainset)\n", + " for example in iterator:\n", + " # forward pass\n", + " _, counterfactual_outputs = intervenable(\n", + " example.base,\n", + " [example.src],\n", + " {\"sources->base\": position},\n", + " )\n", + "\n", + " # loss\n", + " logits = counterfactual_outputs.logits[:, -1]\n", + " loss = calculate_loss(logits, torch.tensor([example.src_label]).to(device))\n", + " iterator.set_postfix({\"loss\": f\"{loss.item():.3f}\"})\n", + "\n", + " # backward\n", + " loss.backward()\n", + " optimizer.step()\n", + " scheduler.step()\n", + "\n", + " # eval\n", + " with torch.no_grad():\n", + " iia = 0\n", + " iterator = tqdm(evalset)\n", + " for example in iterator:\n", + " # forward\n", + " _, counterfactual_outputs = intervenable(\n", + " example.base,\n", + " [example.src],\n", + " {\"sources->base\": position},\n", + " )\n", + "\n", + " # calculate iia\n", + " logits = counterfactual_outputs.logits[0, -1]\n", + " if logits[example.src_label] > logits[example.base_label]:\n", + " iia += 1\n", + "\n", + " # stats\n", + " iia = iia / len(evalset)\n", + " stats.append({\"layer\": layer, \"position\": position, \"iia\": iia})\n", + " print(f\"iia: {iia:.3%}\")\n", + "df = pd.DataFrame(stats)\n", + "df.to_csv(f\"./tutorial_data/pyvene_gender_das.csv\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And this is the plot of IIA. In layers 2 and 3 it seems the gender is represented across positions 1-3, and entirely in position 3 in later layers." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/aryamanarora/opt/miniconda3/lib/python3.9/site-packages/plotnine/ggplot.py:718: PlotnineWarning: Saving 5 x 3 in image.\n", + "/Users/aryamanarora/opt/miniconda3/lib/python3.9/site-packages/plotnine/ggplot.py:719: PlotnineWarning: Filename: ./tutorial_data/pyvene_gender_das.pdf\n" + ] + }, + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2024-01-30T14:28:26.465251\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.5.2, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.read_csv(f\"./tutorial_data/pyvene_gender_das.csv\")\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"position\"].astype(int)\n", + "df[\"IIA\"] = df[\"iia\"].astype(float)\n", + "\n", + "custom_labels = [\"EOS\", \"\", \"walked\", \"because\"]\n", + "breaks = [0, 1, 2, 3]\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\")) \n", + " + geom_tile(aes(fill=\"IIA\"))\n", + " + scale_fill_cmap(\"Purples\") + xlab(\"layers\")\n", + " + scale_y_reverse(\n", + " limits = (-0.5, 3.5), \n", + " breaks=breaks, labels=custom_labels) \n", + " + theme(figure_size=(5, 3)) + ylab(\"\") \n", + " + theme(axis_text_y = element_text(angle = 90, hjust = 1))\n", + " + ggtitle(\"Trained Intervention (DAS)\")\n", + ")\n", + "ggsave(\n", + " plot, filename=f\"./tutorial_data/pyvene_gender_das.pdf\", dpi=200\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Probing\n", + "\n", + "We'll define a dummy intervention `CollectActivation` to collect activations and train a simple probe." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "def probing_config(intervention_site, layer):\n", + " \"\"\"Generate intervention config.\"\"\"\n", + "\n", + " # init\n", + " config = pv.IntervenableConfig([{\n", + " \"layer\": layer,\n", + " \"component\": intervention_site,\n", + " \"intervention_type\": pv.CollectIntervention,\n", + " }])\n", + " return config" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This is the training loop." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "layer: 0, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:11<00:00, 8.98it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.12it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 0, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.12it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.12it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 0, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.12it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.24it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 99.000%, f1: 0.990\n", + "layer: 0, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.23it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.34it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 88.000%, f1: 0.875\n", + "layer: 1, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:11<00:00, 9.09it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 8.95it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 1, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.13it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.28it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 1, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.45it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.35it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 97.000%, f1: 0.971\n", + "layer: 1, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.50it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.53it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 96.000%, f1: 0.962\n", + "layer: 2, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.33it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.19it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 2, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.59it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.85it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 2, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.86it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.76it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 2, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.92it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.84it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 3, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.82it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.85it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 3, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.84it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.80it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 3, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.89it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.91it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 3, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.92it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.72it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 4, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.81it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.82it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 4, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.32it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 8.99it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 4, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.29it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.74it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 4, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:11<00:00, 8.88it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 8.88it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 5, position: 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.12it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.51it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 50.000%, f1: 0.000\n", + "layer: 5, position: 1\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.46it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.20it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 5, position: 2\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.31it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 8.73it/s]\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n", + "layer: 5, position: 3\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 100/100 [00:10<00:00, 9.19it/s]\n", + "100%|██████████| 50/50 [00:05<00:00, 9.43it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "acc: 100.000%, f1: 1.000\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# intervention settings\n", + "stats = []\n", + "num_layers = gpt.config.num_hidden_layers\n", + "\n", + "# 344 = \" he\", 703 = \" she\"\n", + "label_mapping = {344: 0, 703: 1}\n", + "\n", + "# loop over layers and positions\n", + "with torch.no_grad():\n", + " for layer in range(num_layers):\n", + " for position in range(4):\n", + " print(f\"layer: {layer}, position: {position}\")\n", + "\n", + " # set up intervenable model\n", + " config = probing_config(\"block_output\", layer)\n", + " intervenable = pv.IntervenableModel(config, gpt)\n", + " intervenable.set_device(device)\n", + " intervenable.disable_model_gradients()\n", + "\n", + " # training loop\n", + " activations, labels = [], []\n", + " iterator = tqdm(trainset)\n", + " for example in iterator:\n", + " # forward pass\n", + " base_outputs, _ = intervenable(\n", + " example.base,\n", + " unit_locations={\"base\": position},\n", + " )\n", + " base_activations = base_outputs[1][0]\n", + "\n", + " src_outputs, _ = intervenable(\n", + " example.src,\n", + " unit_locations={\"base\": position},\n", + " )\n", + " src_activations = src_outputs[1][0]\n", + " \n", + " # collect activation\n", + " activations.extend(\n", + " [base_activations.detach()[0].cpu().numpy(), src_activations.detach()[0].cpu().numpy()]\n", + " )\n", + " labels.extend([example.base_label, example.src_label])\n", + " labels = [label_mapping[label] for label in labels]\n", + " \n", + " # train logistic regression\n", + " lr = LogisticRegression(random_state=42, max_iter=1000).fit(\n", + " activations, labels\n", + " )\n", + "\n", + " # eval\n", + " activations, labels = [], []\n", + " iterator = tqdm(evalset)\n", + " for example in iterator:\n", + " # forward pass\n", + " base_outputs, _ = intervenable(\n", + " example.base,\n", + " unit_locations={\"base\": position},\n", + " )\n", + " base_activations = base_outputs[1][0]\n", + "\n", + " src_outputs, _ = intervenable(\n", + " example.src,\n", + " unit_locations={\"base\": position},\n", + " )\n", + " src_activations = src_outputs[1][0]\n", + " \n", + " # collect activation\n", + " activations.extend(\n", + " [base_activations.detach()[0].cpu().numpy(), src_activations.detach()[0].cpu().numpy()]\n", + " )\n", + " labels.extend([example.base_label, example.src_label])\n", + " labels = [label_mapping[label] for label in labels]\n", + "\n", + " # stats\n", + " acc = lr.score(activations, labels)\n", + " f1 = f1_score(labels, lr.predict(activations))\n", + " stats.append({\"layer\": layer, \"position\": position, \"acc\": acc, \"f1\": f1})\n", + " print(f\"acc: {acc:.3%}, f1: {f1:.3f}\")\n", + "df = pd.DataFrame(stats)\n", + "df.to_csv(f\"./tutorial_data/pyvene_gender_probe.csv\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And the probe accuracy plot is below. Note the extremely high accuracy at all positions at and after the name! Early layers at later positions are better but it saturates much before the IIA for DAS. This shows how unreliable probes are for tracing causal effect." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/aryamanarora/opt/miniconda3/lib/python3.9/site-packages/plotnine/ggplot.py:718: PlotnineWarning: Saving 5 x 3 in image.\n", + "/Users/aryamanarora/opt/miniconda3/lib/python3.9/site-packages/plotnine/ggplot.py:719: PlotnineWarning: Filename: ./tutorial_data/pyvene_gender_probe.pdf\n" + ] + }, + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2024-01-30T14:45:13.447234\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.5.2, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df = pd.read_csv(f\"./tutorial_data/pyvene_gender_probe.csv\")\n", + "df[\"layer\"] = df[\"layer\"].astype(int)\n", + "df[\"pos\"] = df[\"position\"].astype(int)\n", + "df[\"ACC\"] = df[\"acc\"].astype(float)\n", + "\n", + "custom_labels = [\"EOS\", \"\", \"walked\", \"because\"]\n", + "breaks = [0, 1, 2, 3]\n", + "\n", + "plot = (\n", + " ggplot(df, aes(x=\"layer\", y=\"pos\", fill=\"ACC\")) \n", + " + geom_tile()\n", + " + scale_fill_cmap(\"Reds\") + xlab(\"layers\")\n", + " + scale_y_reverse(\n", + " limits = (-0.5, 3.5), \n", + " breaks=breaks, labels=custom_labels) \n", + " + theme(figure_size=(5, 3)) + ylab(\"\") \n", + " + theme(axis_text_y = element_text(angle = 90, hjust = 1))\n", + " + ggtitle(\"Trained Linear Probe\")\n", + ")\n", + "ggsave(\n", + " plot, filename=f\"./tutorial_data/pyvene_gender_probe.pdf\", dpi=200\n", + ")\n", + "print(plot)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/tutorials/advanced_tutorials/Voting_Mechanism.ipynb b/_sources/tutorials/advanced_tutorials/Voting_Mechanism.ipynb new file mode 100644 index 00000000..5553f34c --- /dev/null +++ b/_sources/tutorials/advanced_tutorials/Voting_Mechanism.ipynb @@ -0,0 +1,1557 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "a35493d6", + "metadata": {}, + "source": [ + "## An Exploration on Voting Mechanisms" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "aab5efc5", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu and Kevin Du and Tiago Pimentel\"\n", + "__version__ = \"02/13/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "6633e9fa", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "Through our offline discussions, we found a strange behavior in the Boundless DAS paper: there are multiple \"good\" aligning representations for a single causal variable. If these aligning representations take on different values, how will the NN behave? Will it trust more on certain location?" + ] + }, + { + "cell_type": "markdown", + "id": "5b39c8f0", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "id": "f5ff4f76", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "850bf6fd", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "import seaborn as sns\n", + "from tqdm import tqdm, trange\n", + "from datasets import Dataset\n", + "from torch.utils.data import DataLoader\n", + "from transformers import get_linear_schedule_with_warmup\n", + "from torch.nn import CrossEntropyLoss\n", + "from tutorial_price_tagging_utils import *\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "import seaborn as sns\n", + "from plotnine import ggplot, aes, geom_boxplot, geom_point, geom_errorbar, labs, theme\n", + "\n", + "import pyvene as pv\n", + "from pyvene import create_llama\n", + "from pyvene import set_seed, count_parameters\n", + "\n", + "# You can define your custom compute_metrics function.\n", + "def compute_metrics(eval_preds, eval_labels):\n", + " total_count = 0\n", + " correct_count = 0\n", + " for eval_pred, eval_label in zip(eval_preds, eval_labels):\n", + " actual_test_labels = eval_label[:, -1]\n", + " pred_test_labels = torch.argmax(eval_pred[:, -1], dim=-1)\n", + " correct_labels = actual_test_labels == pred_test_labels\n", + " total_count += len(correct_labels)\n", + " correct_count += correct_labels.sum().tolist()\n", + " accuracy = round(correct_count / total_count, 2)\n", + " return {\"accuracy\": accuracy}" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "75d4d2e5", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "You are using the default legacy behaviour of the . This is expected, and simply means that the `legacy` (previous) behavior will be used so nothing changes for you. If you want to use the new behaviour, set `legacy=False`. This should only be set if you understand what it means, and thoroughly read the reason why this was added as explained in https://github.com/huggingface/transformers/pull/24565\n", + "normalizer.cc(51) LOG(INFO) precompiled_charsmap is empty. use identity normalization.\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "5e43d3570ec941adb21f8203bbf61b4f", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Loading checkpoint shards: 0%| | 0/34 [00:00Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.\\n\\n### Instruction:\\nPlease say yes only if it costs between 1.60 and 4.11 dollars, otherwise no.\\n\\n### Input:\\n0.32 dollars\\n\\n### Response:\\n'" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tokenizer.decode(raw_prealign[0][0])" + ] + }, + { + "cell_type": "markdown", + "id": "c599652d", + "metadata": {}, + "source": [ + "#### creating alignment datasets" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "18d62623", + "metadata": {}, + "outputs": [], + "source": [ + "set_seed(42)\n", + "\n", + "###################\n", + "# data loaders\n", + "###################\n", + "raw_data = bound_alignment_sampler(\n", + " tokenizer, 10000, [lower_bound_alignment_example_sampler]\n", + ")\n", + "\n", + "raw_train = (\n", + " raw_data[0][:8000],\n", + " raw_data[1][:8000],\n", + " raw_data[2][:8000],\n", + " raw_data[3][:8000],\n", + ")\n", + "raw_eval = (\n", + " raw_data[0][8000:9000],\n", + " raw_data[1][8000:9000],\n", + " raw_data[2][8000:9000],\n", + " raw_data[3][8000:9000],\n", + ")\n", + "raw_test = (\n", + " raw_data[0][9000:],\n", + " raw_data[1][9000:],\n", + " raw_data[2][9000:],\n", + " raw_data[3][9000:],\n", + ")\n", + "train_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_train[0],\n", + " \"source_input_ids\": raw_train[1],\n", + " \"labels\": raw_train[2],\n", + " \"intervention_ids\": raw_train[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "train_dataloader = DataLoader(\n", + " train_dataset,\n", + " batch_size=16,\n", + ")\n", + "eval_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_eval[0],\n", + " \"source_input_ids\": raw_eval[1],\n", + " \"labels\": raw_eval[2],\n", + " \"intervention_ids\": raw_eval[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "eval_dataloader = DataLoader(\n", + " eval_dataset,\n", + " batch_size=16,\n", + ")\n", + "test_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_test[0],\n", + " \"source_input_ids\": raw_test[1],\n", + " \"labels\": raw_test[2],\n", + " \"intervention_ids\": raw_test[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "test_dataloader = DataLoader(\n", + " test_dataset,\n", + " batch_size=16,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "ff11ff48", + "metadata": {}, + "source": [ + "#### where are we aligning in LLaMA?\n", + "\n", + "you need to run this multiple times, and save different interventions into your disk." + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "id": "07976f76", + "metadata": {}, + "outputs": [], + "source": [ + "layer = 15\n", + "token_position = 78" + ] + }, + { + "cell_type": "markdown", + "id": "471a4c00", + "metadata": {}, + "source": [ + "set-up training" + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "id": "99dd2bb5", + "metadata": {}, + "outputs": [], + "source": [ + "pv_config = pv.IntervenableConfig(\n", + " representations=[\n", + " pv.RepresentationConfig(\n", + " layer, \"block_output\"\n", + " )],\n", + " intervention_types=pv.BoundlessRotatedSpaceIntervention,\n", + ")\n", + "pv_llama = pv.IntervenableModel(pv_config, llama)\n", + "pv_llama.set_device(\"cuda\")\n", + "pv_llama.disable_model_gradients()\n", + "\n", + "epochs = 1\n", + "gradient_accumulation_steps = 4\n", + "total_step = 0\n", + "t_total = int(len(train_dataloader) * epochs)\n", + "temperature_start = 50.0\n", + "temperature_end = 0.1\n", + "temperature_schedule = (\n", + " torch.linspace(\n", + " temperature_start, temperature_end, t_total\n", + " )\n", + " .to(torch.bfloat16)\n", + " .to(\"cuda\")\n", + ")\n", + "pv_llama.set_temperature(temperature_schedule[total_step])\n", + "\n", + "warm_up_steps = 0.1 * t_total\n", + "optimizer_params = []\n", + "for k, v in pv_llama.interventions.items():\n", + " optimizer_params += [\n", + " {\"params\": v[0].rotate_layer.parameters()}]\n", + " optimizer_params += [\n", + " {\"params\": v[0].intervention_boundaries, \"lr\": 1e-2}]\n", + "optimizer = torch.optim.Adam(optimizer_params, lr=1e-3)\n", + "scheduler = get_linear_schedule_with_warmup(\n", + " optimizer, num_warmup_steps=warm_up_steps,\n", + " num_training_steps=t_total\n", + ")\n", + "\n", + "def calculate_loss(logits, labels):\n", + " shift_logits = logits[..., :, :].contiguous()\n", + " shift_labels = labels[..., :].contiguous()\n", + " # Flatten the tokens\n", + " loss_fct = CrossEntropyLoss()\n", + " shift_logits = shift_logits.view(-1, config.vocab_size)\n", + " shift_labels = shift_labels.view(-1)\n", + " # Enable model parallelism\n", + " shift_labels = shift_labels.to(shift_logits.device)\n", + " loss = loss_fct(shift_logits, shift_labels)\n", + "\n", + " for k, v in pv_llama.interventions.items():\n", + " boundary_loss = 1.0 * v[0].intervention_boundaries.sum()\n", + " loss += boundary_loss\n", + "\n", + " return loss" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "id": "c8c31a14", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "llama trainable parameters: 0\n", + "intervention trainable parameters: 16777218\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Epoch: 0: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 500/500 [13:24<00:00, 1.61s/it, loss=0.12, acc=0.75]\n", + "Epoch: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [13:24<00:00, 804.32s/it]\n" + ] + } + ], + "source": [ + "pv_llama.model.train() # train enables drop-off but no grads\n", + "print(\"llama trainable parameters: \", count_parameters(pv_llama.model))\n", + "print(\"intervention trainable parameters: \", pv_llama.count_parameters())\n", + "train_iterator = trange(0, int(epochs), desc=\"Epoch\")\n", + "for epoch in train_iterator:\n", + " epoch_iterator = tqdm(\n", + " train_dataloader, \n", + " desc=f\"Epoch: {epoch}\", position=0, leave=True\n", + " )\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " [{\"input_ids\": inputs[\"source_input_ids\"]}],\n", + " {\"sources->base\": token_position},\n", + " )\n", + " eval_metrics = compute_metrics(\n", + " [counterfactual_outputs.logits], [inputs[\"labels\"]]\n", + " )\n", + "\n", + " # loss and backprop\n", + " loss = calculate_loss(counterfactual_outputs.logits, inputs[\"labels\"])\n", + " loss_str = round(loss.item(), 2)\n", + " epoch_iterator.set_postfix({\"loss\": loss_str, \"acc\": eval_metrics[\"accuracy\"]})\n", + "\n", + " if gradient_accumulation_steps > 1:\n", + " loss = loss / gradient_accumulation_steps\n", + " loss.backward()\n", + " if total_step % gradient_accumulation_steps == 0:\n", + " if not (gradient_accumulation_steps > 1 and total_step == 0):\n", + " optimizer.step()\n", + " scheduler.step()\n", + " optimizer.zero_grad()\n", + " pv_llama.set_temperature(\n", + " temperature_schedule[total_step])\n", + " total_step += 1" + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "id": "31915697", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:45<00:00, 1.38it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'accuracy': 0.64}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# evaluation on the test set\n", + "eval_labels = []\n", + "eval_preds = []\n", + "with torch.no_grad():\n", + " epoch_iterator = tqdm(test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " [{\"input_ids\": inputs[\"source_input_ids\"]}],\n", + " {\"sources->base\": 75}\n", + " )\n", + " eval_labels += [inputs[\"labels\"]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + "eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "print(eval_metrics)" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "id": "de8abd35", + "metadata": {}, + "outputs": [], + "source": [ + "torch.save(\n", + " pv_llama.interventions[\n", + " f\"layer.{layer}.comp.block_output.unit.pos.nunit.1#0\"][0].state_dict(), \n", + " f\"./tutorial_data/layer.{layer}.pos.{token_position}.bin\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "1a7b22ad", + "metadata": {}, + "source": [ + "#### Loading back saved DAS params and intervene on single or multiple sites" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "id": "9fa49db7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 143, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "layer = 15\n", + "pv_config = pv.IntervenableConfig(\n", + " representations=[\n", + " pv.RepresentationConfig(layer, \"block_output\"), \n", + " pv.RepresentationConfig(layer, \"block_output\")],\n", + " intervention_types=pv.BoundlessRotatedSpaceIntervention,\n", + ")\n", + "pv_llama = pv.IntervenableModel(pv_config, llama)\n", + "pv_llama.set_device(\"cuda\")\n", + "pv_llama.disable_model_gradients()\n", + "pv_llama.interventions[f'layer.{layer}.comp.block_output.unit.pos.nunit.1#0'][0].load_state_dict(\n", + " torch.load('./tutorial_data/layer.15.pos.75.bin'))\n", + "pv_llama.interventions[f'layer.{layer}.comp.block_output.unit.pos.nunit.1#1'][0].load_state_dict(\n", + " torch.load('./tutorial_data/layer.15.pos.80.bin'))" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "26659165", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[control ]intervening location: 78\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:41<00:00, 1.51it/s]\n" + ] + }, + { + "data": { + "image/png": "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iMhomIAQEREREZHRMAEhIiIiIiKjYQJCRERERERGwwSEiIiIiIiMhgkIEREREREZDRMQIiIiIiIyGiYgRERERERkNExAiIiIiIjIaJiAEBERERGR0TABISIiIiIiozGv7ACofOLi4io7BKokVlZWkMlkUCqVyMrKquxwiEwaryciw+I1Vb3VqlVL534mIEQmytraGmZmZsjPz+cfd6Jy4vVEZFi8pkgXdsEiIiIiIiKjYQJCRERERERGwwSEiIiIiIiMhgkIEREREREZDRMQIiIiIiIyGiYgRERERERkNExAiIiIiIjIaJiAEBERERGR0TABISIiIiIio2ECQkRE1drt27fRpUsXdOzYEdevX6/scIiIqjwmIEREREREZDTmhqooJycHSUlJyMzMhLW1NRwcHGBhYWGo6omIiIiIqArQOwEJCQnBkSNHEBwcjBs3buD58+cQRVHaLwgCXF1d0aZNG3h5eWHgwIHo3LmzQYImIiIiIiLTVKYE5MmTJ/j111+xadMmREZGauxTTz5Uj589e4Znz57hyJEjWLx4MerVq4cJEyZgxowZcHNzK3/0RERERERkUko1BuT+/fsYP348GjdujKVLl+Lp06cQRVH6J5fLUbduXbRq1Qrdu3dHy5YtUadOHcjlco1yT58+xdKlS+Hp6Ynx48cjNDS0ol8fERERERkRJ3agkuhsAUlMTMTChQvxxx9/ID8/X2rlaN26NXx8fODl5YWuXbvC3d1dax3h4eEIDg5GcHAwzpw5g+vXryMvLw9bt27F9u3bMXXqVHz99ddwcHAw7CsjIiIiIqIXjs4EpGnTpkhISIAoiqhbty7eeustvPnmm/D09Cz1CTw8PODh4YHXX38dABAWFoYNGzbgzz//RFRUFH777Tfs2LEDMTEx5Xsl1ZQgCJDJOJlZdWdmZlbZIRCZrMJ/Q3k9EZUPrykqic4EJD4+Hp6envj4448xYcIEmJuXf9Ksxo0b44svvsCiRYuwadMmfPPNNwgLCyt3vdWVtbU1FApFZYdBlcjMzIwtiETlYGdnJ23LZDJeT0TlxGuKSqIzo/j5558xffr0Cslczc3NMXnyZLz55pv4/fffDV5/dZGZmYns7OzKDoMqQY0aNWBmZob8/HykpKRUdjhEJis1NVXaViqVSExMrMRoiEwfrykqKenUmYDMmjXLoMEUx8zMzCjnqapEUUR+fn5lh0GVjJ8BIv0plUqNx7yeiMqH1xSVhIMHiIiIiIjIaJiAEJkgTnFIREREpkqvBOT06dN6nzAvLw/vv/++3scTEREREZHp0isB6devHxYvXlxk9fOSPHjwAF26dMHy5cv1OS0REREREZk4vRKQ/Px8fPnll/Dx8UFkZGSpjtmwYQPat2+Pq1ev6nNKIiIiIiKqAvRKQOrUqQNRFHH27Fm0adMGe/bs0Vo2LS0Nfn5+eOutt5CWlgYAGDt2rF7BEhERERGRadMrAblx4wYGDx4MURSRkJAAX19fvP3220XWo7h06RLatm2Lv/76C6IoQqFQYO3atfjrr78MEjwREREREZkWvRIQJycnHDhwAD/++CMsLS0hiiJ+/fVXdO7cGXfv3gUALF26FD169EB4eDhEUUTr1q1x+fJlTJkyxaAvgIiIiIiITEe5puGdO3cuzp8/D09PT4iiiJs3b6JTp07w8vLCwoULkZubC1EU8c477yAkJATNmjUzVNxERERERGSCyr0OiGpg+YQJEwAAGRkZuHTpEkRRRK1atbB3716sXLkSlpaW5Q6WiIiIiIhMm0EWIrSysoKrqysAQBAE6b+tWrVCt27dDHEKIiIiIiKqAsqdgDx69Ag9evTADz/8AEEQYGZmhho1akAURQQGBqJNmzY4deqUIWIlIiIiIiITV64EZOvWrWjXrh1CQkIgiiLc3Nxw+vRp3LhxA926dYMoioiKikL//v2xcOFCKJVKQ8VNREREREQmSK8EJDMzE1OmTMH48eORnJwMURTh6+uLa9euoWvXrmjQoAHOnDmDhQsXQiaTQalUYunSpejZsyciIiIM/RqIiIiIiMhE6JWAtGvXDuvXr4coirC2tsavv/6K7du3w97e/v8qlsnw5Zdf4sSJE6hXrx5EUURwcDDatGmDv//+22AvgIiIiIiITIdeCUhoaChEUUSLFi0QEhKC6dOnay3r4+OD69evY+jQoRBFEcnJyXjjjTf0DpiIiIiIiEyX3mNAZs6ciUuXLqFFixYllnV0dMS+ffuwYsUKyOVyiKKo72mJiIiIiMiE6ZWA7NixA7/88gusrKzKdNy7776L4OBgvPTSS/qcloiIiIiITJy5Pge9+uqrep+wTZs2uHz5st7Ha5OcnIwdO3YgJCQE8fHxkMvlaNy4MQYPHgwvL68y1/fJJ5/g1q1bpSrbt29fzJ49W+O55cuXIyAgQOdxbm5uWL16dZljIyIiIiIyVXolIOWlUCgMWl9ERAQWLlyI5ORkAIC1tTXS09Nx7do1XLt2DcOGDcO0adPKVKetrS1q1qypdX9eXh7S0tIAAI0bN9ZaztLSUuvrrVGjRpliIiIiIiIydZWSgBhSbm4uvvrqKyQnJ8Pd3R3z5s2Dh4cHsrOzsXfvXmzevBn79++Hh4cH+vXrV+p6P/nkE537//77b/j7+8PCwgLe3t5ay/Xo0QNz5swp9XmJiIiIiKoygyYgqampSElJQX5+foll3dzcDHLOo0eP4vnz55DL5Vi0aBGcnZ0BAHK5HGPHjkVCQgIOHToEf39/+Pj4wNzcMC9Ztbp7p06dYGdnZ5A6iYiIiIiqunL9Glcqldi6dSs2bNiAkJAQpKSklOo4QRCQl5dXnlNLAgMDAQC9evWSkg91vr6+OHz4MBISEnDz5k20a9eu3Oe8e/cuIiMjAaBMrSpERERERNWd3glITEwMXn31VVy4cAEAKmVq3czMTNy/fx8A0L59+2LLODs7o379+njy5AmuX79ukATk5MmTAAqmFzZEfURERERE1YVeCYgoinj11Vdx/vx5AEDDhg3h5eWFrVu3QhAE+Pj4wMnJCeHh4bh+/Try8vIgCAIGDBgAV1dXgwX/9OlTKfFxd3fXWs7d3R1PnjzBkydPyn3O7OxsnDt3DkDBIotmZmY6y9+4cQMzZsxAbGwsLC0tUadOHXTo0AFDhgyBg4NDueMhIqqOLl68aLC6wsPDpUlFrl27hmfPnhms7i5duhisLiKiqkKvBGTXrl04f/48BEHAf/7zHyxfvhxmZmbYunUrAGD27NkYPnw4AOD58+f4/PPP8dtvv+HmzZv45ptv0LZtW4MEn5CQIG07OjpqLafal5iYWO5zBgcHIz09HUDB9LsliYuLg5mZGaytrZGRkYGwsDCEhYXh8OHD+OCDD9CmTZtyx0REVN0MHTq0QuqdMmWKQeuLjY01aH1ERFWBXgnItm3bABRMP7tixQrIZNrXM3R1dcWaNWvg6emJBQsWwNfXF1evXjXIFLRZWVnStlwu11pOtS8zM7Pc5zxx4gQAoGnTpmjQoIHWco0bN0bTpk3RqVMnODk5QSaTISMjAyEhIVi/fj0SEhKwZMkS/PTTT6hXr1654yIiIiIiMgV6JSCXLl2CIAgYM2ZMsclHceNB3n//fWzbtg3//PMPfv/9d8yfP1+fU1eq2NhY3Lx5E0DJrR/Dhg0r8pxCoYCPjw9efvllzJkzB2lpafjrr79M8r0gIqpMBw4cMFhdJ0+exLJlywAAH330EXr06GGwuomIqCi9EhBVk3Lz5s01nhcEAYBmy4S6cePG4fLly9i1a5dBfnRbWVlJ29nZ2VoX/MvOzgZQsEBheZw6dQpKpRKWlpbo2bOn3vW4uLhgyJAh2LZtGy5fvgylUqm1Fcnf3x9btmzRWtfo0aMxceJEvWMh06Q+9bNMJuN4Iqp2XnnlFYPVFR0dLW2/9NJLBq2bqDridxSVRK8EJDc3FwBgY2Oj8bytrS3S0tIQFxdX7HGqtT8ePnyoz2mLUB/3kZCQoDUBUY0VKe8FEBAQAKBgUKGtrW256mratCkAICMjA6mpqbC3ty+2XHp6OmJiYrTWk5GRUeJAeKp6Cies/AwQ6Y/XE5Fh8ZqikuiVgDg5OSE6Ohqpqakaz9euXRtpaWkIDQ0t9jjVXaakpCR9TltE/fr1IQgCRFFEREQE6tevX2y5iIgIANA5ZqMkd+7cQVRUFADjrv1hY2MDFxcXrfsVCkWpFn6kqkWpVGo85meASH+8nogMi9cUlZR06pWANG3aFNHR0QgPD9d4vlWrVnjw4AGOHDlS7HGq53XNWFUW1tbWaNKkCUJDQ3HlyhV069atSJm4uDhp+t3yzDilWvujVq1aBpm5SpWkWVtb61xJ3c/PD35+flr3x8XFGWR2LzIt6sm/UqnkZ4AAFHwuVDdcqPTCwsKk7YiICJw9e7YSozFdbm5uOr/PqPrgdxTVqlVL5369EpAuXbrgzJkz+OeffzSeHzZsGHbv3o0HDx5g4cKF+Oqrr6RxIT/99BMOHToEQRDQtWtXfU5bLB8fH4SGhuLMmTMYN25ckdXQd+3aBVEU4ejoiFatWul1DvW1P3r37q1z1i+gYBC+6nUXJzY2FocOHQIAdOzYscT6iIhKkpqaiokTJyIjI6OyQzE5qjVAAGDLli3Yt29fJUZjuhQKBTZs2MAkhIhKpNcv3/79+wMAAgMDNQacjxs3TuoGtXTpUtStWxfdunVD7dq1sWDBAqnce++9V56YNQwcOBCurq7IysrCl19+KbXKZGdnY8eOHTh48CCAgpYEc3PNfGvq1KkYPnw4li9frvMc58+fl77US7P2R2BgIL755hsEBwcjJSVFej4zMxOnT5/Ghx9+iNTUVFhbW+P1118vy8slIipWREQEkw+qVBkZGWyBI6JS0asFpHfv3vDx8UFmZibOnz+PPn36ACjoTrR161a88sorSEtLQ3R0NGJiYjSm5f3ss8/g7e1tmOgBWFhY4NNPP8XChQvx6NEjzJ49GwqFAllZWVIfxKFDh5Zr3IZq8Hnz5s1Rt27dEssrlUpcuHABFy5cAFDwvpibmyM9PV2Kyd7eHgsWLNA6boWISF9Tp06Fu7t7ZYdhMm7fvi3dJPvPf/6DJk2aVHJEpuXx48f4448/KjsMIjIheiUgZmZm0o/ywrp164YbN27g66+/xvHjx/H8+XPY2NigU6dOmDNnToVMb+jm5oZVq1Zh586dCAkJQVxcHGxsbNCoUSMMGTIEXl5eetddlrU/VFq1agU/Pz/cvXsXkZGRSElJQUZGBmxsbNCgQQN07NgRAwcOZDM1EVUId3d3NGvWrLLDMBnqXbAaNmzI946IqILplYCUpGHDhli7dm1FVK1VzZo1MWXKFEyZMqXUx5Tmjo2zszP27NlTplhcXFwwduzYMh1DRERERFQdcPQzEREREREZDRMQIiIiIiIyGiYgRERERERkNOUeA5KXl4eLFy/izp07SExM1JiWV5dFixaV99RERERERGRi9E5AcnJysGTJEqxevVqvFS6ZgBARERERVT96JSC5ubkYNGgQAgMDNdb4KC1dq4QTEREREVHVpVcCsnLlSpw6dQoAYGVlhfHjx6Nnz55wdXWFXC43aIBERERERFR16JWA+Pv7AwAcHR0RFBSE5s2bGzQoIiIiIiKqmvSaBev+/fsQBAHvvvsukw8iIiIiIio1vRIQKysrAECLFi0MGgwREREREVVteiUgjRo1AgAkJycbNBgiIiIiIqra9EpAXnvtNYiiiOPHjxs6HiIiIiIiqsL0SkCmTZsGT09P7NixAydPnjR0TEREREREVEXplYDY2dnhwIEDqFu3LoYPH44ffvgBqampho6NiIiIiIiqGL1XQm/atClu3ryJfv364cMPP8Qnn3yCl156CU5OTpDJdOc1giCw5YSIiIiIqBrSOwGJjIzEhAkTcOXKFQBAXl4e7ty5U+JxoihyJXQiIiIiompKrwQkISEB3t7eCA8PhyiK0vPq20RERERERIXpNQbkxx9/xMOHDwEALVu2hL+/Px49eoSsrCwolcoS/+Xn5xv0RRARERERkWnQqwVkz549AIDmzZsjODgYCoXCkDEREREREVEVpVcLyKNHjyAIAqZPn87kg4iIiIiISk2vBKRGjRoAgLp16xo0GCIiIiIiqtr0SkBatGgBoGAmLCIiIiIiotLSawzIm2++iYCAAPz999+YPXu2oWOiMhAEocR1V+jFEBwcbLC6wsPDkZaWBgC4du0aoqOjDVa3l5eXweoi41H/OyCTyfh3oQwKv1d878qm8GfPzMysEqMhfRjy+wngdxSVTO8EZPPmzTh+/Di+/PJL/Pe//zV0XFRK1tbWHIdjIgYPHlwh9U6ZMsWg9XE6bdNkZ2cnbVtaWsLKyqoSozEtlpaW0rYgCHzvykj9/bOzs4ODg0MlRkP6qKjvJ4DfUVQ8vRci3LVrF9566y0sXrwY58+fxzvvvAMvLy84OTkZMj4qQWZmJrKzsys7DKpCEhMTKzsE0kNqaqq0nZOTg6ysrEqMxrTk5ORI26Io8r0rI/X3LzU1lX9DqELx82UaSroRoVcCot68Kooijh07hmPHjpX6eEEQkJeXp8+pqRBRFLmuiok4cOCAweo6efIkli1bBgD46KOP0KNHD4PVzc+TaVIqlRrb6o9Jt8LvFd+7sin82ePfENNjyO8ngN9RVDK9EpDCzV9sDiMqWZcuXQxWV3h4uLTdpEkTg9ZNRETVi6G/Q/gdRSXRKwHp1asXBEEwdCxERERERFTF6ZWABAYGGjgMIiIiIiKqDjjXIBERERERGQ0TECIiIiIiMhq9umD16dMHgiDgyy+/RLdu3Up93KVLl/Dhhx9CEAScPHlSn1MTEVEJvvjiC47TK4OUlBRpe+HChRprqlDJOBENEZWV3mNABEFAXFxcmY5LSEiQjiUiooqRm5tb2SGYFPVp4XNzczXWtaDqKzU1FREREZUdhkl69uyZtP306VPcvn27EqMxTW5ublX6ZojeCxESERGZsqwsN8TG+iIhQQHgVQDAgwc/QaFwhLPzLtSseRqCwDUHqqPU1FRMnDgRGRkZlR2KSUpLS5O2t2zZgn379lViNKZJoVBgw4YNVTYJMWoCororZ2FhYczTEhERSdLTWyAy8j9ITVWtTXBO2pefb4/UVC+kpnrBwiIGLi7bULu2PxORaiYiIoLJB1WqjIwMREREoEWLFpUdSoUwagLy77//Aih5eXaqHti8rT82b5dfVW7etrCwYFdXLeLje+P+/UUQRXmJZXNzXRAZ+S4yMtqiSZPPYGaWZYQITY8oilW629/UqVPh7u5e2WGYlNu3b2PBggUAgP/85z9o0qRJJUdkOh4/fow//vijssOocCUmICkpKUhKSip2X0xMTIk/IEVRRHp6Oq5cuYIffvgBgiCgZcuWegVLVQebt8uHzdvlV5WbtxctWoRmzZpVdhgvnIAAa0yfXhuiWLbkLDGxJ2xsDuC336Jhzo7LRdy7dw///e9/KzuMCuPu7s7rqYzUv6MaNmzI94+KKPFP6bJly/DFF18UeV4URcyYMaNMJxNFEYIg4PXXXy/TcVT1sHmbKltVb94mTc+fm+G991ygVOrXMnTqlAKrV9fEnDlJhg2MiKgaKtW9HG1T7Okz9Z6fnx/eeuutMh9HVRebt8uOzdv6qy7N26RpyxY7ZGSUb+mrjRtrYObMZFhZcdpZIqLyKDEBadu2LSZOnKjx3IYNGyAIAnx8fODm5qbzeJlMBltbW3h4eKBfv37sfkVFsHm77Ni8TVR6OTnA1q3l72qXlGSGgwdt4OubVnJhIiLSqsQEZMSIERgxYoTGcxs2bAAAzJ49G8OHD6+YyIiIiAzg+HEbxMUZZvDGli12TECIiMpJ519kVVep9957D23btpWenzhxIgRBKLH1g4iIqLLdvGlpwLrkEEWAk4wREelPZ4fY9evXY8OGDUVmugoMDERgYGCZV0InIiIytpSU8o39UJeXJyAjg9kHEVF56NUm/fjxYwiC8ELNYpScnIwdO3YgJCQE8fHxkMvlaNy4MQYPHgwvL68y1xcdHY1p06aVWO7DDz9E9+7dte5/+PAhdu/ejZs3byIlJQX29vZo2bIlXn31VXh4eJQ5LiIiKhszM8PWx6l4iYjKR+efUblcjpycHKSkpBgrHr1ERERg4cKFSE5OBgBYW1sjPT0d165dw7Vr1zBs2LBSJRPa1KhRAzJZ8XfQLC21N+2fPn0aK1asQF5eHgDAxsYG8fHxOH36NM6dO4e5c+eiZ8+eesdFREQlc3Q03CrmCoUScjlnwSIiKg+dCYirqysiIiIQEhICPz8/Y8VUJrm5ufjqq6+QnJwMd3d3zJs3Dx4eHsjOzsbevXuxefNm7N+/X5qFSx8//vgjateuXaZjIiIipOSjR48emDp1KhwdHZGQkIC1a9fi3LlzWL58OTw8PFC/fn294iIiopL16pWJVascDFYXERGVj84EpHv37nj8+DF+/fVX5OTkoH379rCyspL2BwQEaF0lvSRvvvmmXscVdvToUTx//hxyuRyLFi2Cs7MzgILWm7FjxyIhIQGHDh2Cv78/fHx8YG6ktvPNmzcjLy8PHh4eeP/992H2//sAODo6Yv78+YiKikJ4eDg2b96MDz/80CgxERFVR+3bZ6N582zcvSsvd10TJrzYPQKIiEyBzl/js2fPxrZt25Cfn4+1a9dq7BNFEatWrdLrpIIgGCwBCQwMBAD06tVLSj7U+fr64vDhw0hISMDNmzfRrl07g5xXl/T0dFy6dAkAMHLkSCn5UDEzM8PIkSOxbNkyhISEICMjAwqFosLjIiKqjgQBmDAhFZ98Ur4ExNMzB15eWQaKioio+tI5NUinTp3g7++PWrVqQRRF6Z+K+nNl/WcImZmZuH//PgCgffv2xZZxdnaWujhdv37dIOctyZ07d6RxH9riUj2fm5uLu3fvGiUuIqLqasSINHh65pSrjnnzEjn9LhGRAZTYH2ncuHEYNWoULl26hCdPniA7OxuTJ0+GIAh45513tP7ANoanT59KyYy7u7vWcu7u7njy5AmePHmi13m+++47REVFITs7G/b29mjatCn69euHTp06FVtedZ6aNWvC3t6+2DL29vawt7dHcnIyIiIi0KFDB71iIyKikllbi/jzz2j4+tZBbGzZu+IuWJCAV155cWZ+JCIyZaX6K2xpaakx1ezkyZMBAH379q3UldATEhKkbUdHR63lVPsSExP1Os/9+/ehUCggk8kQHx+PCxcu4MKFC+jevTvmzZsHCwsLjfKq8+iKSbU/OTlZ77iIiKj06tfPw44dzzB5cm08fFi6xQkFQcSiRQmYOJFjP4iIDEXvEdmG6kZVHllZ/9cXVy7X3rdXtS8zs/Szl1haWmLw4MHo2bMnPDw8pDEaERER2LlzJ06dOoVz587BxsYG77zzjsaxqvPoiknfuIiISH8NGuRhz54obNtmB3//Gnj82KLYcpaWSgwblo6JE1PQsmX5um4REZEmvRIQpVJp6DheOA4ODpg5c2aR593c3DB37lzUqFEDe/fuxfHjxzFy5EhOpUtEZCJsbUVMmZKCyZNTcO6cFbZsScfRowX7+vTJRteu8Xj11TQ4OFT97zoiospg0uu5qk8JnJ2drXUmqezsbAAFCxQayvjx43H48GHk5OTg0qVLGgmI6jyq82pTmrj8/f2xZcsWrftHjx6NiRMnliX0F4KdnZ20LZfLDfr/pjpQb10TBIHvXxmov3d2dnZwcDDM+hCVjdeUfgYMAGrWzJISkDlz0tGpUy6A8k/ZW11UxWuK11P58DtKf1XxeiqOQRKQvLw8nDt3DsHBwXj27BlSU1NhZ2eHunXrokuXLujevXuFrL+hPsYiISFBawKiGitiyP+JVlZWcHNzw4MHDxAdHV1sXOpjVPSNKz09HTExMVr3Z2RkFJnm1xSorywvCAIETi1TJoXfL75/paf+XslkMpO8forDa0p/vJ7KpypeU7yeyofXlP6q4vVUnHJlBaIo4scff8RPP/1U5Ee4OldXV7z//vuYO3euQT+E9evXhyAIEEURERERWrtBRUREAAAaNGhgsHProjpPUlISUlJSUKNGjSJlkpOTkZycDKCgW5c2NjY2cHFx0bpfoVAgPz+/nBEbn3o3PkNOzVxdFH6/+P6Vnvp7pVQqTfL6KQ6vKf3xeiqfqnhN8XoqH15T+qsq11NJiZPeCUhmZiaGDh0qLQSo68P17NkzLFiwAIcOHcKBAwc0uk6Vh7W1NZo0aYLQ0FBcuXIF3bp1K1ImLi5Omha3TZs2BjkvUDAAXpXY1K5dW2Pfyy+/DHNzc+Tl5eHKlSvw8fEpcvzVq1cBABYWFmjevLnW8/j5+cHPz0/r/ri4OJOcRSs1NVXazs7O5kD8MlLv3ieKIt+/MlB/71JTU03y+ikOryn98Xoqn6p4TfF6Kh9eU/qrKtdTrVq1dO7XuRChLhMmTMCpU6ekxKNPnz749ttvsXv3bhw/fhy7d+/Gt99+iz59+kitFKdOncKECRP0PWWxVD/uz5w5g9jY2CL7d+3aBVEU4ejoiFatWpW63pKy9b/++gs5OTkQBKHIeiAKhUJ6bu/evUWy1/z8fOzduxcA0LlzZ66CTkRERETVhl4JSEBAAHbt2gVBEODu7o7z58/jxIkTWLBgAUaMGIG+fftixIgRWLBgAU6cOIELFy7Aw8MDoihi165dOHXqlMFewMCBA+Hq6oqsrCx8+eWXCA8PB1CQQe7YsQMHDx4EUNCSUHgcytSpUzF8+HAsX768SL2ffPIJ/v77b4SHh2skEBEREVixYgV2794NAOjfv3+xXb/Gjx8Pc3NzhIWF4aeffpIy2MTERPz0008ICwuDhYUFxo8fb5D3gYiIiIjIFOjVBWvjxo0AAFtbWwQGBupchRwouMt/8uRJtGnTBmlpadiwYQN69+6tz6mLsLCwwKeffoqFCxfi0aNHmD17NhQKBbKysqQ+nEOHDkW/fv3KVG9sbCz8/f3h7+8PMzMzKBQK5OTkaDSNeXt7Y8aMGcUe7+bmhtmzZ2PFihUICgrC2bNnoVAokJ6eDgAwNzfH7NmzOX0vEREREVUreiUg586dgyAImDx5conJh0rDhg0xefJkrFy5EmfPntXntFq5ublh1apV2LlzJ0JCQhAXFwcbGxs0atQIQ4YMgZeXV5nrnDRpEq5fv4779+8jMTERqampMDMzQ506ddCsWTP07dsXrVu31lmHt7c3GjRogF27duHWrVtISUmRuoK9+uqr8PDw0PclExERERGZJL0SkGfPngEoaNkoC1V5XTNm6atmzZqYMmUKpkyZUupj/vjjD637evTogR49epQ7rkaNGmH+/PnlroeIiIiIqCrQawyIairdsq6IzmnYiIiIiIiqN70SEFdXVwDApUuXynRcSEiIxvFERERERFS96JWA9OjRA6IoYv369dJaGCV5/Pgx1q1bB0EQDNK1iYiIiIiITI9eCcibb74JAEhLS0Pv3r1x+fJlneUvX76Mvn37Ii0tDQAwceJEfU5LREREREQmTq9B6L1798aoUaOwe/duPHr0CF5eXvDx8cGAAQPQtGlT2NjYID09Hffv38exY8ekBQsFQcCoUaOKXRmciIiIiIiqPr0SEADw9/fHoEGDcObMGWmVc20LDKoGn3t7e2PTpk36npKIiIiIiEycXl2wAMDa2hoBAQH49ttv4erqClEUtf6rU6cOvv/+e5w8eRLW1taGjJ+oWsrP/79tTi5HRESVLSVFhvXra2Do0LqYOPH/JhuaNcsey5fXRHS0WSVGRy8avVtAAEAmk2HBggWYO3cuzp8/j4sXL+LZs2dITU2FnZ0d6tSpgy5duqBbt24wNy/XqYiqvfR0AXv32mLLFjvcuVNXet7X1xHe3rXh55eCXr0yIdP7tgIREVHZJCfL8P33Dti92xaZmaovoP/7IoqKMsfKlQ74+eeaGDAgAx99lIAGDfIqJ1h6YRgkKzA3N0evXr3Qq1cvQ1RHRGpyc4Flyxzg718DaWlFs4v8fAEBAQoEBCjg5paLefMSMXx4eiVESkRE1UlkpDkmT66NBw8sSyybny/g8GEbhIRY4Y8/nqNNmxwjREgvKt4rJXqBpacLmDLFFb/+WrPY5KOwiAgLzJnjguXLa7JrFhERVZiEBBn8/FxLlXyoi483w8SJrrh/36KCIiNTwASE6AWVmwu8/bYLzp4t+7iplSsd8McfNSogKiIiIuD9953x+LE+SYSIlBQzTJ9eG7m5Bg+LTITBE5CHDx9ixowZaNSoEaytreHs7Iw+ffpg/fr1hj4VUZX22281ceaMQu/jv/nGCdevl+3OFBERUUnu37fA6dP6fj8JAIDHjy1w4oT+33Fk2kpMQPLy8vD6669j7NixWLJkic6yR44cQZs2bfDHH3/g0aNHyM7ORnx8PE6fPo0pU6Zg0KBByMlhnz+ikuTkAJs22ZW7nvXr7Q0QDRER0f/ZvLn8308A4O/PlvrqqsQE5MKFC9i2bRt27tyJevXqaS0XERGB1157DenpRQe/qqbjPXbsGObNm1e+iImqgePHbRAbW/45Ig4ftkF8PHtaEhGRYWRmCti1yzAJyIUL1nj4kLOkVkcl/jI5c+YMAMDS0hKjR4/WWm7x4sVISUmBIAiQy+VYsmQJQkJCcPXqVXz22WeQy+UQRRG//fYbHj58aLhXQFQFbd1qmD/uOTkCdu2yNUhdREREjx6Zl2pSlNK6fVtusLrIdJSYdl65cgUA0KtXL9jY2BRbJi0tDdu2bZMeHzhwAH369JEet2nTBs2aNcPrr78OpVKJrVu34pNPPilv7ERV1r17hhu78e+/HAdCRESGkZJi2AUFk5PZSl8dlZiAhIaGQhAEdO7cWWuZgIAAZGZmQhAE9OnTRyP5UBk3bhx++OEHXLlyBWfPni1f1FSlfPHFFxAEobLDeKEkJAQCMMwf+VOnrmH8+A8NUldVIHJ+YiIivZmbG/ZvqIUF/yZXRyUmIJGRkQAAT09PrWXOnTsnbb/66qtayw0ePBj//PMP7t69W5YYqYrL5Tx8RQhCDkTRUC0XWZz8gYiIDMLBId+g9Tk6Kg1aH5mGEtu90tLSAAB2dtr7pF+6dEna7t69u9ZyTZo0AQAkJCSUOkCi6sjCwnDXiLl5osHqIiKi6q1hwzw0bGiYG4dWVkp06ZJlkLrItJSYgFhaFtyFzcjI0Frm6tWrAAC5XI4WLVpoLadQKEqsi4iAmjUDDVhXgMHqIiKi6k0mA8aPTzFIXSNGpKNGDbaAVEcldsFydHREZGQkQkNDi90fGhqK5ORkCIKANm3awMxMe7/15ORkAP+XiBABgIWFBceAFFK37n5ER79Z7nqsrB7DyekGBIED0VVEUWS3PyKichg9Og0//uiArKzyDSA3VCJDpqfEBKR169Z4+vQp9u3bhy+++KLI/gMHDkjb3bp101lXREQEAMDFxaWscVIVtmjRIjRr1qyyw3jhTJ6cUY6VZgssWGCLyZM3GyiiquHevXv473//W9lhEBGZLHt7JWbMSMaKFQ561zFkSBpatuT4xOqqxARk4MCBOHToEG7evInff/8d06dPl/YlJSVh1apV0uNhw4bprCskJASA7gHtVDaCIEAmM70p7NRjlslkJvkaKtqCBUm4eNFK7ztMTZvm4LXX0vneFlL4s6er1daU8JrSX+H3iu9d2VTFa4rXU8nmzElBRIQFdu8u+1pTHTpk4ccfE/i+FqMqXk/FKTEB8fPzw2effYbk5GTMmjULgYGB8Pb2RnR0NDZs2IDHjx9DEAQ0adIEPj4+WuvJyMjA6dOnIQgCOnbsaMjXUK1ZW1ubZJc29UkNLC0tYWVlVYnRvJg6dgR++y0FU6bYIy+vbF3U6tbNx5YtyXBy4gJPhanGtQEFn0MHB/3v4L1IeE3pT/0zIQgC37syqorXFK+n0lm9Oh0ODjL8+Wfpf4f07ZuN339PgY0Nv5+KUxWvp+KUmIA4ODhg+fLlmDRpEgRBwLZt2zQWHVT5/vvvddaze/duZGRkQBAE9OrVS/+ISUNmZiays7MrO4wyS01NlbZzcnKQlcVZMIrj7Z2F9euzMWuWM1JTS3enqFmzHKxbF4NatfLBt7Uo9SmJU1NTkZhYNWYJ4zWlP/XPhCiKfO/KqCpeU+rX0yeffMJxiiV4+eUOePZsNBITe0DbGlZ2dlfh6roL6emn4OfHgefaqK9VZcrXU0mJU4kJCAC8+eabyMzMxPvvv19kBitLS0t8//33JXa/WrZsGQDA1tZWZ0sJlY0oisjPN+yc3MagVCo1ttUfk6Zu3TJw4sQT/P23HbZsqYFnz4q/bNu2zYKfXyqGDEmDXA7wLS1e4c+eKV4/xVF/XeHh4bymyiA8PFzafvToESwsLCoxGtPz+PFjabuqXFPq1w8nrSiZtfUFNGp0ATk5tREfPwRpaSlI+f/jyx0dD8DVdSWsrcMAAHw7S6+qXE/FKVUCAgAzZszAyJEjsWvXLty7dw95eXnw9PSEr68v3NzcdB4bGxuL/v37o3///vD09OQfd6IycnZW4u23kzFjRjICAxU4ejQFO3cW7Bs/PgNjx0aiVSsO5qMCf/zxR2WHYFJU610BwC+//AJb27L3aSciwNIyGnXq/Im0tDQpAXF23g1ra15TpKnUCQgA1K5dG7NmzSrzSZydnfHNN9+U+Tgi0mRuDvTrl4GaNdOkBGTs2EwmHwQ3NzcoFAqus0SVRqFQlHhDkogIKGMCQkRELyY7Ozts2LBBmu6cSu/YsWNYsmQJAOCNN96At7d3JUdkmtzc3DQGb1cVXKuq7MzN/+/npYWFhcbAatKtuqxVxQSEiKiKsLOzQ4sWLSo7DJNz8+ZNabt+/fp8D0kD16oqu8uXL2Ps2LEAgK+//hqtWrWq5IhMR3VZq4oTMBMRERERkdHoTEDGjBmDhw8fVmgAN2/exMiRIyv0HERERERE9GLQmYDs3LkTzZs3x+TJk3H37l2DnvjWrVsYN24c2rVrh/379xu0biIiIiIiejHpHAPSp08fBAQEYOPGjdi4cSN69uyJSZMmYcSIEXqtzBgXF4ctW7Zg48aNuHr1KoCCwTZ9+/bVL3oiIqqWLl68aLC61Fv679+/b9C6u3TpYrC6iIiqCp0JyIkTJ/D333/j448/Rnh4OIKCghAUFITp06ejRYsW8PLyQpcuXdCsWTM4OjrCyckJdnZ2SElJQUJCAhISEnD37l1cvHgRFy9exO3bt5Gfny+t8ti4cWMsWbIEY8aMMcqLJSKiqmHo0KEVUu/SpUsNWl9sbKxB6yMiqgpKnAVr7NixePXVV/Hnn3/ixx9/xP3795GXl4cbN27gxo0b+P3330t9MlXi8dJLL2H+/PmYOHGixlRtRERERERUtZXq17+5uTmmT5+OadOm4fjx41i/fj0OHjyI1NTUUp/I3t4ew4YNw5tvvol+/frpHTAREdGBAwcMVld4eDhWr14NAPjggw9Qu3Ztg9VNRERFlan5QRAEDBgwAAMGDEBubi7Onz+Pixcv4ubNm3j06BESEhKQnZ0NuVwOJycneHh4oFWrVvDy8kLXrl1hZmZWUa+DiIiqEUOOrbC1tYWtrS0AoG3btlzNm4iogund/8nCwgLe3t5cMZaIiIiIiEqNCxESEREREZHRMAEhIiIiIiKjYQJCRERERERGwwSEiIiIiIiMpsoswpGcnIwdO3YgJCQE8fHxkMvlaNy4MQYPHgwvL68y15eRkYGLFy/i2rVrePDgAWJiYqBUKuHg4IBmzZph0KBBaNGihdbjly9fjoCAAJ3ncHNzk6Z+JCIiIiKqDqpEAhIREYGFCxciOTkZAGBtbY309HRcu3YN165dw7BhwzBt2rQy1Tl37lw8e/ZMemxpaQmZTIaYmBjExMTgzJkzGDVqFCZPnqyzHktLSygUimL31ahRo0wxERERERGZOpNPQHJzc/HVV18hOTkZ7u7umDdvHjw8PJCdnY29e/di8+bN2L9/Pzw8PMq0AGJ+fj4aNmyIAQMGoEOHDqhTpw5EUURUVBQ2btyICxcuYPfu3XB1dcWgQYO01tOjRw/MmTPHAK+UiIiIiMj0mfwYkKNHj+L58+eQy+VYtGgRPDw8AAByuRxjx46VkgN/f3/k5eWVut45c+Zg5cqVGDp0KOrUqQOgYCHGevXq4cMPP0SrVq0AALt37zbwKyIiIiIiqrpMPgEJDAwEAPTq1QvOzs5F9vv6+kIQBCQkJODmzZulrrdly5Za98lkMvTp0wcA8Pz5c6SlpZUtaCIiIiKiasqkE5DMzEzcv38fANC+fftiyzg7O6N+/foAgOvXrxvs3OrjN/Lz8w1WLxERERFRVWbSY0CePn0KURQBAO7u7lrLubu748mTJ3jy5InBzn3r1i0AQM2aNXUOJr9x4wZmzJiB2NhYWFpaok6dOujQoQOGDBkCBwcHg8VDRERERGQKTLoFJCEhQdp2dHTUWk61LzEx0SDnjYuLw5EjRwAAffv2hSAIOsvGxMTAysoKWVlZCAsLw99//4133nnHoC0yRERERESmwOAtIElJSUhNTYWdnR1q1qxp6Oo1ZGVlSdtyuVxrOdW+zMzMcp8zLy8PP/zwAzIzM+Hi4oLRo0cXW65x48Zo2rQpOnXqBCcnJ8hkMmRkZCAkJATr169HQkIClixZgp9++gn16tUrd1xERERERKag3C0gaWlpWL16NXx8fGBnZwcnJyc0bNgQTk5OsLOzQ+/evfHLL79UiYHaoihi9erVuHPnDiwtLTF//nzY2NgUW3bYsGEYPHgwnJ2dIZMVvM0KhQI+Pj747rvvYGtri8zMTPz111/GfAlERERERJWqXC0g+/fvx/Tp0xETEwMA0ngMlfT0dJw5cwZnzpzBl19+ibVr12Lo0KHlOaUGKysraTs7O1vrgn/Z2dkAChYoLI/ff/8dAQEBMDMzwwcffIBmzZrpVY+LiwuGDBmCbdu24fLly1AqlVKSUpi/vz+2bNmita7Ro0dj4sSJesVRmezs7KRtuVxe7v831Y16i58gCHz/ykD9vbOzs+NYLNL4eySTyfiZIH5HlRO/o/RXXb6j9E5ANm7ciClTpkCpVEqJh52dHRo3bgwbGxukp6fj4cOHSElJAQBER0dj5MiRWLduHSZMmGCQ4NXHfSQkJGhNQFRjRcrzP/HPP//EwYMHIZPJMG/ePHTu3FnvugCgadOmAICMjAykpqbC3t6+2HLp6elSglecjIwMmJmZlSuWyqCecAmCoHMcDRVV+P3i+1d66u+VTCYzyeuHDKvwDSB+JojfUeXD7yj9VZfvKL0SkAcPHmDmzJnS9LOjRo3CBx98gC5duhQpGxISgu+//x47d+6EUqnEjBkz0K1bNzRu3Lh8kQOoX78+BEGAKIqIiIiQptstLCIiAgDQoEEDvc6zceNG7NmzB4Ig4N1330XPnj31jrmsbGxs4OLionW/QqEwyWmAlUqltC2KYpHWM9Kt8PvF96/01N8rpVJpktcPGZb63yOAU6sTv6PKi99R+qsq31ElJU56JSDLli1DVlYWBEHAt99+i/nz52st27lzZ2zfvh0//fQT5s+fj+zsbCxbtgyrV6/W59QarK2t0aRJE4SGhuLKlSvo1q1bkTJxcXHS9Ltt2rQp8zm2bNmCHTt2AABmzpyJvn37li/o/y80NBRAwWtQb+otzM/PD35+flr3x8XFGWx2L2NKTU2VtrOzsw0yQUB1oupWCBT8seL7V3rq711qaqpJXj9kWOp/j5RKJT8TxO+ocuJ3lP6qyndUrVq1dO7XKwE5duwYBEFAr169dCYf6ubNm4f9+/fj9OnTOHr0qD6nLZaPjw9CQ0Nx5swZjBs3rshq6Lt27YIoinB0dESrVq3KVPeOHTuwdetWAMCUKVMwaNCgUh0niqLO5sbY2FgcOnQIANCxY0et4z+qi8ePH1d2CCZH/T179OgRLCwsKjEa08LPGxERUeXSKwGJjIwEAK1T0GozevRonD59WjreEAYOHIh9+/bh+fPn+PLLLzF37lx4eHggOzsb+/fvx8GDBwEUtCSYm2u+3KlTpyImJgZ9+vTBnDlzNPbt27cPGzduBABMnDgRI0aMKHVMgYGBCA4ORu/evfHyyy9LCxVmZmYiJCQEGzZsQGpqKqytrfH666+X49VXDX/88Udlh2By1GeV++WXX2Bra1uJ0RARERGVnl4JiK2tLbKzs1G7du0yHacay2DIH0sWFhb49NNPsXDhQjx69AizZ8+GQqFAVlaW1Idz6NCh6NevX5nq/d///gegYDDQ3r17sXfvXq1lP/74YzRv3lx6rFQqceHCBVy4cAFAQTcrc3NzpKenSzHZ29tjwYIFWsetVHVubm5QKBTIyMio7FComlIoFHBzc6vsMIiIiKodvRIQT09PxMfHS4O7S0s1FqNJkyb6nFYrNzc3rFq1Cjt37kRISAji4uJgY2ODRo0aYciQIfDy8ipznapBQKIoIikpSWfZvLw8jcetWrWCn58f7t69i8jISKSkpCAjIwM2NjZo0KABOnbsiIEDB+oc+1HV2dnZYcOGDWX+DFGBY8eOYcmSJQCAN954A97e3pUckelxc3Or1tcgERFRZdErARk3bhyCg4OxZcsWzJ07t1TTq4miiM2bN0MQBLz22mv6nFanmjVrYsqUKZgyZUqpj9HV9Wffvn16x+Li4oKxY8fqfXx1YWdnhxYtWlR2GCbp5s2b0nb9+vX5PhIRVRCOGys7jlPUX3X5vOmVgMycORPr1q3D1atXMXfuXCxfvrzEY+bNm4erV6+ibdu2mDFjhj6nJSIiIjIqjlMsO45TpJLoNf2SXC7HwYMH0aVLF6xatQpeXl7YsWNHkanCkpKSsH37dnTt2hUrV65E165dcfDgQVhaWhokeCIiIiJDU41TJKosVX2cos4WkEaNGuk8ODc3F6Io4tKlSxg3bhyAgtXGVSuhqxIS1bS0ERER6N69OwRBQFhYmIFeAhEREZHhcJxi+XCcYvlV9XGKOhOQR48eSSuNF0cQBGn8h6pMQkICEhISipQDgKioqBLXyCAiIiKqbBynqD+OU6SS6ExA3NzcmCwQEREREZHBlNgCQkREREREZCh6zYJFRERERFXDxYsXDVrfw4cPpe379+8btP4uXboYrC6qPExAiIiIiKqxoUOHVljdS5cuNWh9sbGxBq2PKgcTECIjMeQdIN5dIiIiIlNlkAQkLi4OBw8eRHBwMJ49e4bU1FTY2dmhbt266NKlC4YMGYJatWoZ4lREJqui7jDx7hIREZXHgQMHDFpfeHg4Vq9eDQD44IMPULt2bYPWT6avXAlIRkYGPvjgA/z555/Izs4utsxvv/0GuVyOqVOn4ttvv4W1tXV5TklEREREBmTolm9bW1tp9fO2bdtW6QX1SD96JyBxcXHw9vbGvXv3tK4TopKVlYWff/4ZAQEBOH36NJycnPQ9LZHJMuQdJt5dIiIiIlOldwLi6+uLu3fvAgCsra3x+uuvY+DAgWjatClsbW2RlpaG0NBQHD16FFu3bkVGRgbu3LkDX19fBAYGGip+IpNhyDtMvLtEREREpkqvBGT37t0ICgqCIAho27Ytdu3aBXd39yLl2rRpgzFjxuC///0vRo8ejX/++QdBQUHYu3cvRowYUe7giYiIiIjItMj0OWjr1q0AAGdnZxw/frzY5EOdu7s7jhw5AhcXFwDAli1b9DktERERERGZOL0SkIsXL0IQBLz11ltwdHQs1TFOTk6YMmUKRFE0+II3RERERERkGvRKQGJiYgAArVu3LtNxrVq10jieiIiIiIiqF70SEEtLSwBATk5OmY5TlbewsNDntEREREREZOL0SkDq1q0LAAgKCirTcWfOnAEA1KtXT5/TEhERERGRidMrAfHx8YEoiti0aROuX79eqmOuXbsGf39/CIIAHx8ffU5LREREREQmTq8EZOrUqRAEAbm5uejXrx927dqls/yuXbvQv39/5OTkQBAETJs2Ta9giYiIiIjItOm1Dkj79u0xc+ZMrFmzBgkJCRgzZgwaNWqE/v37o2nTprCxsUF6ejru37+P48ePIywsDKIoQhAEzJw5E+3atTP06yAiIiIiIhOg90roq1atQkpKCjZv3gwAePjwIX777bdiy4qiCAAYP348Vq5cqe8pqRiCIEAm06shi0xY4f/nZmZmlRQJkenj9URkWLymqCR6JyAymQybNm3C8OHD8e233+LKlStay3bo0AEfffQRfH199T0daWFtbQ2FQlHZYZCR2dnZSdsymQwODg6VGA2RaeP1RGRYvKaoJHonICpjxozBmDFjEBERgYsXL+LZs2dITU2FnZ0d6tSpgy5dusDNzc0QsVIxMjMzkZ2dXdlhkJGlpqZK20qlEomJiZUYDZFp4/VEZFi8pqikpFOvBGTjxo0AAFdXVwwYMAAA4ObmxkSjEoiiiPz8/MoOg4xMqVRqPOZngEh/vJ6IDIvXFJVEr8EDkyZNwuTJk3H27FlDx0NERERERFWYXgmIra0tAODll182aDBERERERFS16ZWA1KlTBwCQm5tr0GCIiIiIiKhq0ysB6d27NwDg0qVLBg2GiIiIiIiqNr0SkBkzZkAmk2HDhg2IjIw0dExERERERFRF6ZWAtGvXDl9//TVSU1PRv39/3Lhxw9BxERERERFRFaT3NLyurq4YNGgQDh8+jPbt26NHjx7o2bMn6tevD2tr6xLrePPNN/U5NRERERERmTC9EpBJkyZBEAQAgCAIUCqVCAoKQlBQUKmOFwSBCQgRERERUTWk90rooijqfExERERERFSYXgnIunXrDB0HERERERFVA3olIBMnTjR0HEREREREVA3oNQsWERERERGRPsrcAhIZGYkbN24gOTkZ9vb2aNWqFerXr18RsREREVW4Fi1a4OLFizAzM0N+fj4SExMrOyQioiqt1AlISEgI5s6di+Dg4CL7vLy8sGzZMnTu3NmgwRERERERUdVSqi5Yx44dg4+PD4KDgyGKYpF/Fy5cgLe3N44ePVrR8RIRERERkQkrMQFJTU3FxIkTkZWVJU216+npiW7dusHT01Mql52djYkTJyIlJaXioiUiIiIiIpNWYgKyadMmREdHQxAEdOzYEbdv30ZoaCjOnj2L0NBQ3LlzR+p6FRsbi02bNlV40EREREREZJpKHANy+PBhAECtWrVw9OhRODg4aOxv1qwZDh8+jObNmyM2NhaHDx/G22+/XTHRmqDk5GTs2LEDISEhiI+Ph1wuR+PGjTF48GB4eXlVdnhEREREREZVYgvIjRs3IAgC3nzzzSLJh4qDgwPefPNNiKKImzdvGjxIUxUREYF33nkHe/fuxbNnz2BmZob09HRcu3YNS5Yswdq1ays7RCIiIiIioyqxBSQhIQEA0LZtW53l2rRpAwCIj48vf1RVQG5uLr766iskJyfD3d0d8+bNg4eHB7Kzs7F3715s3rwZ+/fvh4eHB/r161fZ4RIREREZBKe2ppKU2AKSnp4OALCzs9NZztbWFgCQmZlpgLBM39GjR/H8+XPI5XIsWrQIHh4eAAC5XI6xY8di0KBBAAB/f3/k5eVVZqhEREREREbDldArSGBgIACgV69ecHZ2LrLf19cXgiAgISGB3daIiIiIqNpgAlIBMjMzcf/+fQBA+/btiy3j7OwsrSB//fp1o8VGRERERFSZSp2ACIJQkXFUKU+fPpXWTHF3d9daTrXvyZMnRomLiIiIiKiylTgIXWXkyJGlKieKIszMzHSWEQShSo97UA3cBwBHR0et5VT7ODiLiIiIiKqLUicgAKS7+sURBEFqJdFVrjrIysqStuVyudZyqn0cuE9ERERE1UWpEpDSJBTVPekgIiIiIqKSlZiAKJVKY8RRpVhZWUnb2dnZUCgUxZbLzs4GAFhbW2uty9/fH1u2bNG6f/To0Zg4caKekZKpUp8WWyaTaV0klIhKRyaTSf/l9URUfrymSJcydcGi0lEf95GQkKA1AVGNFdF1YaanpyMmJkbr/oyMjBLH3FDV0759e1y+fLmywyCqcgRB4N9UIgPiNUXFYQJSAerXrw9BECCKIiIiIqTpdguLiIgAADRo0EBrXTY2NnBxcdG6X6FQID8/v3wBk0mSyWTS54wtlUTlw+uJyLB4TVVvJSWdTEAqgLW1NZo0aYLQ0FBcuXIF3bp1K1ImLi5Omn63TZs2Wuvy8/ODn5+f1v1xcXGcRauacnBwgJmZGZRKJT8DROXE64nIsHhNVW+1atXSuZ8LEVYQHx8fAMCZM2cQGxtbZP+uXbsgiiIcHR3RqlUrI0dHRERERFQ5mIBUkIEDB8LV1RVZWVn48ssvER4eDqBg4PmOHTtw8OBBAAUtHObmbIgiIiIioupBEDl/boWJiIjAwoULkZycDKBgvEZWVpbUF3Lo0KGYPn16uc4RFxdX7jjJNKmat/Pz89m8TVROvJ6IDIvXVPVWUhcs3nqvQG5ubli1ahV27tyJkJAQxMXFwcbGBo0aNcKQIUPg5eVV2SESERERERkVW0BMHFtAqi/eXSIyHF5PRIbFa6p64yB0IiIiIiJ6YTABISIiIiIio2ECQkRERERERsMEhIiIiIiIjIaD0IlMlL+/P9LT02FjYwM/P7/KDofIpPF6IjIsXlOkCxMQIhM1ePBgxMTEwMXFBYcOHarscIhMGq8nIsPiNUW6sAsWEREREREZDRMQIiIiIiIyGiYgRERERERkNExAiIiIiIjIaJiAEBERERGR0TABISIiIiIiozGv7ACISD9vvPGGNMc6EZUPryciw+I1RbpwHRAiIiIiIjIadsEiIiIiIiKjYQJCRERERERGwwSEiIiIiIiMhgkIEREREREZDWfBIiqD6OhoTJs2DQCwdu1a1K5d26jnX716NY4dO4YPP/wQ3bt3r5BzbNmyBVu3bkXLli2xZMmSIvszMzOxdetWBAcHIy4uDrm5uQCAffv2SWWuX7+OnTt34sGDB0hPT4coinjttdfwxhtv4IMPPkBoaChWrlwJNze3CnkN9OLKzc1FYGAgLl++jLCwMKSkpECpVMLOzg4eHh5o3749vL29YWdnV9mhvhD27t2L9PR0eHl5oVGjRpUdDlWw5cuXIyAgQOvfXzKO4OBgPHz4EI0aNYKXl1dlh1MlMQGhau/evXv44IMPAADOzs5Yu3YtZLIXr3HwyZMnOHHiBNzc3NCtWzeNfeqJkTq5XA4bGxs4OjqiUaNGaNWqFbp27QpLS0u941i6dCmuXr0KALCysioyxeKdO3fw2WefQalUQiaToUaNGhAEAdbW1gCAcePG4fPPP8eGDRvw3//+V+84yPRcvXoVq1atQlxcnPScpaUlLCwsEB8fj/j4eFy+fBmbNm3ClClTMGDAgEqM9sWwf/9+xMTEoHbt2kxAiIwkODgYAQEB6NOnDxOQCsIEhKq9kydPStuxsbG4ceMG2rZtW3kBabFx40YolUqMHTsWgiBoLWdrawtz84JLOz8/H0lJSUhISMCDBw9w7Ngx2NraYsKECRg0aFCxx9eoUQP16tWDs7NzkX0RERFS8vHRRx8VSYSAgh9MSqUSL7/8Mj799FPY2tpq7O/QoQM8PT1x6dIl3L59Gy1atCj1e0Cm6/Tp01i+fDny8/Ph6uqKMWPGoGPHjnBwcAAAZGdn49atWzhx4gTOnz+PS5cuMQEhIqqimIBQtZadnY2zZ89CEAQMGDAAR48excmTJ1+4BCQqKgoXL16EnZ1dsT/61X388cdo1aqV9FgURURGRuLGjRvYv38/IiMjsWbNGjx48ADvvvtukeOHDh2KoUOHFlt3REQEAOiMQ1WmR48eRZIPlQEDBuDBgwfYu3cvE5BqICIiAqtWrUJ+fj7atWuHjz/+GFZWVhpl5HI5OnTogA4dOuDevXs4c+ZMJUVLREQVjQkIVWvBwcFIT09H8+bNMXbsWBw7dgzBwcHIyMiAQqGo7PAkx48fBwB0795dat0oLUEQUL9+fdSvXx/9+/fHzz//jICAABw/fhxNmjTBK6+8Uuq6srOzAUDqTqVvme7du+P333/HpUuXkJiYKN0Fp6rJ398fOTk5cHR0xIIFC4okH4U1a9YMTZs2LfL85cuXceTIEYSGhiItLQ22trZo2rQpBg0ahA4dOhRb1yeffIJbt27htddew5gxY7B7924EBQUhJiYGmZmZ2LJlC2xtbTF8+HAAwNdff426devi77//xpUrVxAfH48GDRpgxYoVUp3Z2dk4cuQIzp07h6dPnyIrKws1a9ZEy5YtMWLECDRu3Fjra8vJycGxY8dw/vx5PH78GJmZmahZsybq1auHrl27wtvbGzY2NtJYLJUVK1ZoxODi4oI//vhD5/tIVYdqbEifPn0wZ84cnD59GgcPHsTjx48BAO7u7hgxYkSJYwNv3bqFI0eO4O7du0hKSoKVlRVq1aqFtm3bonfv3mjYsGGRYyIiIrB7927cvHkTiYmJsLS0hJubG3x8fDBgwACYmZkVOabwWMLAwEAcPXoUERERSE1NxSeffAIvL69SX58q58+fx8mTJ3H//n2kpaVBoVDA09MTAwcORNeuXXW+dlW3qtDQUKSkpMDGxgYuLi7o0KED+vTpA1dXV9y8eRMLFy6UjgkICEBAQIBGPZUx/rMqYgJC1Zqq+5WPjw+cnZ3RsmVL3Lx5E2fPni1V94+IiAj8/fffuHnzJtLS0uDs7IxevXrB19cXcrm82GMuXbqEI0eO4MGDB0hJSYGVlRXs7e3h7u6O9u3bY8CAARpdrJRKpfQHsGfPnuV6vRYWFnj33XcRERGBBw8eYNu2bejbty8sLCykMsUNQi/8YygmJkb6wQYAs2fP1vhxBGj+YCr8Y8nOzg5t27bF5cuXcerUKbz66qvlel304oqPj8fFixcBAMOGDdPaKlaY+jgsURSxZs0aHDlyRNpnbW2NlJQUhISEICQkBIMHD8aMGTO0dk/Mzc3Fxx9/jNDQUJibm2u9PiMjI/Htt98iJSUFcrm8SMIfFRWFL774AlFRUVIscrkccXFxCAwMxJkzZzBr1iwMHDiw2Lq//PJLjWNtbGyQlJSEuLg4XL9+HY6OjvDy8oK1tTVq1qwpDdJXKBQaY7dq1KhRqveRqp5ffvkFR44cgUwmg5WVFTIyMnDv3j3cu3cP06dPL7YFOz8/H2vWrMGxY8ek5xQKBfLy8hAeHo7w8HBERUVp/PgGCn6Aq1ovAcDGxgbZ2dm4e/cu7t69i1OnTmHRokU6r+vff/8dBw4cgEwmg0KhKHaMZUnXZ1ZWFr7//ntcunRJI/6UlBRcuXIFV65cQd++ffHee+8V+RuQmZmJH374QeNY1eu4f/8+7t+/j/T0dEybNg3m5uaoWbMmMjIykJOTA0tLyyI3I1/EMaKmiAkIVVuq8R7m5ubo0aMHgIJE5ObNmzhx4kSJCci9e/fw888/IysrCwqFAqIoIioqClu3bkVISAi++uqrIn+UN2/ejG3btkmPrayskJeXh6ioKERFReHChQvo16+fxh2lR48eITExEWZmZsXeFS4rMzMzjB49GkuXLkV8fDxu3bqFdu3a6TxG9WMoJycHGRkZ0uByFUtLS9SsWRMAiv3BVNyPpebNm+Py5cu4evUqE5Aq7NatWxBFEQDQuXNnverYu3evlHz4+vrC19cXtra2SE1Nxfbt27Fnzx4cOnQI9erVw7Bhw4qt49ChQ5DJZFiwYAG8vLxgYWGBmJiYIq0x69atg4uLCxYuXIjmzZsDgJQwZGRk4PPPP8ezZ8/QuXNnvPbaa/Dw8ICZmRni4+Oxa9cu7N+/H2vWrEHDhg3x0ksvSfWmpaVh8eLFiI6OhqOjI9566y106dIFcrkc+fn5ePz4MU6fPi21HI4aNQqjRo3C1KlTERMTg2nTpqFv3756vX9UdYSEhCAnJwezZs1Cnz59IJfL8fz5c6xYsQK3b9/G+vXri51Fbt26dTh27BgEQcDIkSMxbNgw1KpVCwCQmJiIS5cuITo6WuOY0NBQKfno0KEDpk+fjjp16iA3NxenT5/Gb7/9hnv37mHlypX45JNPio03LCwMt2/fxhtvvIGhQ4fC1tZW+nGvrqTrc+XKlbh06RLc3d0xYcIEtGnTBnK5HBkZGQgMDMSGDRtw8uRJuLm5YdSoURp1L1u2DJcuXYK5uTneeOMN9O/fH/b29gAKJnAJDg6WyjZv3hwbN26UWpx69OiBOXPmlP1/FJWICQhVW6dOnYJSqUTHjh2lP9bdu3eX/qhGRUWhbt26Wo//9ddf0aBBA7zzzjvw8PBAXl4ezpw5gzVr1uDhw4dYs2YNFixYIJWPjo7G9u3bART8iBoxYoTGj/bQ0FCcOnWqyHnu3LkDAHBzc9N617as2rdvD5lMBqVSidu3b5eYgKh+DJ08eRIrVqxArVq1inT/ULXOlPYHkyqZ+vfff5GXl1fmrmVkGp48eQKgoPWtfv36ZT4+OztbStqHDh2KiRMnSvvs7Ozw1ltvITMzE0ePHsXWrVsxYMCAYq+TzMxMfP755xqfdRcXlyLlZDIZvvjiC41ugaq/A3v27MGzZ8/g5eWFjz/+WONOq5OTE6ZNm4bc3FwcOXIE27dvx6effirt37lzJ6Kjo2FjY4OlS5fC1dVV2mdmZoZGjRpxlisqUVpaGubNmwcfHx/pOVdXV8yfPx/Tpk1DTk4OLl26hD59+kj7nz59iv379wMAJk+ejJEjR2rU6eDgUOwNN39/f+Tn56Nx48ZYuHCh9DfawsIC/fr1g4WFBX788UcEBwfj33//1Ui4VTIzMzF69Gi89tpr0nMKhaJIq4Ku61PVK6F27dr4+uuvNW5oKRQKDB48GLa2tvjhhx+wY8cODBs2TIr1ypUrUoIxf/78ImMXa9eujREjRhSJmyoe25Go2lLvfqWiUCiku7Tqs2MVx9zcHIsXL4aHh4f0uE+fPvjPf/4DAAgKCpIGZAPA/fv3oVQqUa9ePUycOFFKPoCCFoKOHTtiwYIFRfrT/vvvvwBQbN9cfVlZWUk/gArf9TIW1fuWlZUl9WOmqiclJQVAwexsumZv0+bq1atIT0+HTCbDmDFjii3z2muvQSaTITU1FdeuXSu2TMOGDUtMtAGgT58+WscknThxAgAwcuRIra/F29sbAHDjxg2p2woA6ebCsGHDNJIPorJwdnaWPmPqnJycpJs6hf+enjx5EqIoonbt2hpdZ3VJS0vD9evXAQCjR48u9gaRt7c36tWrBwA4e/ZssfXIZLIiCU9xdF2fquuuX79+Wrsedu/eHRYWFkhNTcWDBw+k51Xf4y1atChxAhcyLt5ypGrpzp07ePbsGWxsbIp0C+nduzfOnj2LU6dOYfz48Vr7ew4aNKjYxdJ8fHywefNmxMTE4Ny5c9Jie6quFZmZmcjOzi51a0ZiYiIAw/f5VnUPS01NNWi9pWVnZye1wiQkJOgcuEvVl+rHRIMGDbQmBk5OTqhfvz4iIiIQFhaGLl26FCnTrFmzUp2vuLu4ABAXFyetX/LNN99oTUCUSiWAgsQ6NTUVNWvWRHR0NBISEgAAHTt2LFUcRMXx9PTU+tlzcnICAKSnp2s8r7qJpWr5Lo2wsDCp62Tr1q21lmvTpg0iIyM1fvSrq1OnTqm+u3Rdn3fv3gVQ0AJ58OBBreVUCb/6OkOq187r7sXDBISqJdVdkeIW5Wvfvj3s7e2lQaHa7sq0bNmy2OcFQUCLFi0QExODsLAw6fmXXnoJdnZ2SEhIwIIFCzBo0CC0bdsWderU0Rmr+h3kqkQQBNjY2CA1NVV6jVT1qH58pKWlQRTFMreCqD4bqh9X2jg5OSEiIgJJSUk64yiJqm94YaobAQCQnJxcqrpUM8Kpx1Tc+jpEpaVrdkHVZCJ5eXkaz6s+f8V1OdRG9Rm3tLQs9kabimocibZrQtv1VJiu61N17RVOrLRRXXeAfq+djIMJCFU7qrU/AM3uVypmZmbo2bMnDhw4gJMnT2pNQHT9IHJ0dASg+UfZ1tYW8+bNw08//YRHjx5hzZo1AAr+QLdu3Rq9e/cu9i5Nbm4uAGjMVGUIaWlpAKDzy6WiqV6T+hcGVS0NGjQAUPA5fvr0qfTY2Ep751dbOfXuVBs2bODU0USlUN7rDvi/VsX58+ejV69eBomLKh8TEKp2zp8/j8zMTADQGCRaHNU6ITY2NgY5d4cOHbB27VqcO3cO169fx927dxEbG4ugoCAEBQWhU6dOWLhwocYfY1XLhyphMISsrCw8f/4cACp1PnPVa+KUolVXy5YtIQgCRFFESEhImRMQ1WcjPj5eZznVfvWxVYakXm9sbGyZEhD1smU9lqi8HBwc8PTpU8TExJT6GFXLRU5ODlJTU7XeqFJ1dyptS4c+atasidjYWMTGxup1bExMTJleOxkHB6FTtaMa0FYaOTk5CAoKKnafqk+3rn3F/VFWKBTo378/5s+fj//973/49ddfpVk4VGuEqFPvwmIoV65cke4qVdZK5Dk5OdJUjExAqi4nJydpnNWBAwdK/TlWfT49PT0BFMympd4NSl18fDyePn0KABU2lsjV1VVKHNTXEygNFxcXqVX08uXLZTpW1WVN1R+fqKxU45r++ecf6boqSePGjaXPnmowenFu3LgB4P+u04qgGh9S1utO/Vhedy8eJiBUrURHR+PWrVsACgaSbtmyRes/1Yw7hVdBVVHVU5goirh9+zaA0v0Yqlu3LqZMmYJOnToBKJhyUJ1q6lJDzVaVn5+PHTt2ACjov6ttLEtFU389+kzPSqbDz88PlpaWiI+Px/fff19il7t79+5J0zy3a9cOtra2UCqV0jTWhW3duhVKpVJa4LKi9OvXD0BBIqVaG0SbwomWalrU/fv3S62PpaGarrS0/d+JCuvTpw8EQUBMTAz27dtXqmNsbW2la2nnzp1FxpUAwOnTp6XEv7yL5Oqiuu7u3LmjdbYtlcLXnWoq+Nu3b+P8+fOlPievu4rHBISqlYCAAGk6whYtWsDW1lbrP1Vf03v37kl/ZNUdPny42Lu5Z86ckZp7u3fvLj2vGsuhjWowfOFyL7/8MgBonWWkLHJzc7Fq1Sqprtdee83gY0tKKzQ0FEDBLCmqu8NUNbm7u+Ptt9+GTCbD1atX8d577+HEiRMag7Ozs7Pxzz//4LvvvsOHH34odbeQy+UYN24cgIIf/hs2bJCuu9TUVKxbtw5Hjx4FALz++usGWyunOL6+vqhXrx7S09Px0Ucf4eTJk8jIyJD2JyUl4ezZs1i8eDHWr1+vceyrr74KFxcXpKen4+OPP0ZQUJCUiCmVSjx48ABr1qwpMo2waha9Cxcu8McQ6aV+/frS6ujr1q3DunXrNGaKSkxMxL59+4p8ZsePHw8zMzOEhYVhyZIlePbsGYCC75ETJ05g9erVAAomczHEIrnatGvXTkpwfvrpJ2zZskWjS2ZmZiauX7+OVatW4aOPPipyrGpWvB9++AE7d+7UmPQkOjoa27Ztw+7duzWOc3d3B1AwA1dJNxtIPxwDQtWGKIpSa0Zp5gN3d3dHvXr1EBkZiZMnT2osgAYU/BFevHgx3n33Xbi7uyMvLw9BQUHS4PKePXtKPx6AgrtIoaGh8Pb2RuvWraXuHBkZGQgICMCFCxcAFIwTUde8eXNpjYOSFkfU9rqjoqJw/fp17N+/H5GRkQCAgQMHlrjae0W6f/8+AO2ziVHV0rt3b9SoUQOrV6/Gs2fPsHLlSgAFCYa5ubnGj2sbGxt07dpVejx8+HBERkbiyJEj2LlzJ3bv3g2FQoGMjAypS8ngwYMxZMiQCn0NCoUCn3/+Ob7++muEh4djxYoVWLVqFWxsbJCbm4usrCypbOFry9bWFosXL8bnn3+O6OhofP/995DJZLCxsUFmZqZ0h7nwpBcDBgzAmTNncOfOHfj5+cHe3h7m5uZwcnLCt99+W6Gvl6qOyZMnIy0tDadOncLu3buxe/du2NjYQBRFKYkuPH1106ZN8e6772LVqlW4fPkyLl++DBsbG2RnZ0uf12bNmuHdd9+t8Pjfe+89CIKAM2fOYOvWrdi6das0NjMjI0PqKlXcrJJz587Ft99+i6tXr2LDhg3YuHEjbGxskJeXJ12zw4YN0zjGy8sLGzZsQGpqKmbNmoUaNWpINzeWLl0qzf5F+mMCQtXGrVu3pG4/6i0TunTr1g3bt29HYGAgJkyYoLFv5syZ+Pnnn/Huu+/CxsYGOTk5UutFo0aNMGvWLI3ySqVS+iMOFCwGaGZmpvHDq0uXLkV+uNSoUQNt2rTB1atXcfny5RIXkvrmm2+kRaPy8/ORnp6u0e/Xzs4OEyZMwCuvvFKq96CiqN6HHj16VGocZDwdOnTA77//jlOnTuHy5csICwtDcnIycnJyUKtWLTRs2BCdOnVCr169NCZ+EAQB//nPf9CpUyccOXIEoaGhSEtLg52dHV566SUMGjSoSOJeUVxcXPDjjz8iMDAQZ8+eRVhYGNLS0mBhYYF69erB09MT7du310igVOrXr4/Vq1fj0KFDuHDhAp48eYKsrCw4Ojqibt266Nq1a5E1F1q1aoWFCxdi7969CA8PR1JSUqn78ROpmJubY+7cufDx8cHRo0dx7949pKSkwMbGBo0aNULbtm01Vk9X6dOnDzw9PbF7927cuHEDiYmJkMvl8PT0hI+PDwYMGFDsIoWGJpfLMX/+fPTv3x/Hjx/H3bt3pRbUWrVqwd3dHW3atCn2+0ShUGDx4sXS+l73799Heno67Ozs4Obmho4dO6J3794ax9SoUQPffPMN/vrrL9y9exfJycnSrJbqM+KR/gSRI2yomli+fDkCAgLg7OyM//3vf6U6JiwsDHPnzgUALF68GPXq1cO0adMAAGvXrkV2dja2bduGW7duITU1FS4uLujVqxd8fX2LdAWJj4/HpUuXcP36dURERCAhIQFZWVmws7ND48aN0bt3b/Ts2bPYdRLOnTuHb7/9Fk2bNsUPP/xQZH90dLQUlzpLS0soFAo4OTmhcePGaN26Nbp27aqz29WWLVuwdetWtGzZEkuWLNHYd/LkSaxYsQIuLi5SH/3Cpk6dipiYGMyePVvqf1vY3bt38eGHH8LFxQVr167Va4VsIiIiMk1MQIhMQF5eHqZMmYLExET8+uuvZe6G9aL59ddfcejQIfj5+WHs2LGVHQ4REREZEQehE5kAc3NzaSBu4cFypiY5ORknT56Evb29NDCSiIiIqg8mIEQmYuDAgahbty5OnjypMYOJqdmzZw+ys7MxduxYaapDIiIiqj7YBYvIhNy5cwfXrl1Du3bt0Lx588oORy979uxBVlYWfH19K20KYCIiIqo8TECIiIiIiMho2AWLiIiIiIiMhgkIEREREREZDRMQIiIiIiIyGiYgRERERERkNExAiIiIiIjIaJiAEBERERGR0TABISIiIiIio2ECQkRERERERmNe2QEQEVH1kpWVhT179iAgIAAhISGIiYlBfHw8zM3NYW9vj0aNGqFt27bo168fXnnlFVhZWVV2yEREZEBcCZ2IiIxCqVRi+fLl+O677xAdHV2qY+zs7DBr1izMnz8fzs7OFRwhEREZAxMQIiKqcAkJCXj99ddx7Ngx6bmGDRuiX79+aN26NZycnCAIAmJjY3Hv3j2cOnUK9+7dk8q+//77+OGHHyojdCIiMjB2wSIiogqVk5OD4cOH49y5cwAAV1dXrFy5Er6+vpDJtA9FvHbtGpYvX45NmzYZK1QiIjICtoAQEVGFmjdvHpYtWwYAaNSoEQIDA9GgQYNSHx8SEoLbt29j8uTJFRUiEREZEWfBIiKiCvP06VP8/PPPAACZTIatW7eWKfkAgM6dOxebfEyaNAmCIEAQBDx69AgAsGfPHrz66qtwd3eHXC7X2Kdu9+7dGDduHBo2bAiFQoEaNWqgefPmmDlzJv755x+d8QQGBkrnXbx4cYnxq8r6+PgUu9/Hx0cqAxSMlVm3bh369OkDV1dXWFlZwd3dHZMmTSoxNiIiU8AuWEREVGF+/vln5OTkAACGDh2KTp06Vch5cnJyMHr0aOzcuVNnudjYWPj6+iIoKKjIvnv37uHevXv4/fffMWvWLKxcuRJmZmYVEq82KSkpGDlyJE6dOqXxfEREBDZs2AB/f3988cUX+OSTT4waFxGRITEBISKiCqM+6HzChAkVdp45c+bg8OHDcHd3x5tvvolmzZohKysLISEhkMvlAIC0tDT06tVLGtzu7OyMyZMno02bNsjJycGZM2fg7++P3Nxc/PLLL0hJSTH6+JPJkyfj1KlT8PT0xMSJE9GkSRMkJSXhwIEDOHDgAPLz87Fw4ULY2dnh3XffNWpsRESGwgSEiIgqRHp6Oq5duyY97tatW4Wd6/Dhwxg5ciT++usvjXVD3nrrLWn7ww8/lJKPDh064MiRI6hVq5a0f9KkSXj77bfRv39/JCYmwt/fH8OGDcPYsWMrLO7Cdu3ahVGjRmHLli0ar2PGjBn466+/MGHCBOTn5+PDDz/E0KFD4eHhYbTYiIgMhWNAiIioQjx//hxKpRIAYGVlhbp161bYuerVq4dNmzZpXbQwNjYWf/75JwBAoVBg586dGsmHSocOHbBmzRrp8dKlSysmYC0aNGig9XW8/vrreO+99wAAmZmZWLVqlVFjIyIyFCYgRERUIeLj46XtmjVrlljey8tLGoxd3L/iBpOrvPXWW7C1tdW6/9ChQ8jKygIAjBs3Du7u7lrLjh07Fo0bNwYAXL16FeHh4SXGbihvv/02bGxstO5///33pamLd+zYYaywiIgMigkIERGZvJ49e+rcf/HiRWl7wIABOssKgqBRJjg4uHzBlUG/fv107q9Xrx6aN28OAHjy5AmeP39ujLCIiAyKY0CIiKhCODk5SdtJSUkllv/uu++QkJCg8dz06dMRGxtb4rH169fXuf/Zs2fSdtOmTUusT72M+rEVrUmTJqUqc/v2bQBAVFQUXF1dKzosIiKDYgJCREQVwtXVFTKZDEqlEllZWYiKitI5DqRXr15FnpszZ06pzmVtba1zf2pqqrStq4uTinp3LvVjK1ppYlMvY8zYiIgMhV2wiIioQtjY2KBdu3bS4wsXLlRaLHZ2dtJ2enp6ieXT0tKKPbas8vPzy1S+NLGplylPbERElYUJCBERVRj1sRT+/v6VFkedOnWk7fv375dYPjQ0VNou3GqjWlcEgLTIojZxcXGlDREA8ODBgzKVqciZxYiIKgoTECIiqjD/+c9/YGlpCQDYv38//vnnn0qJo0uXLtK2+uKI2hw/frzYYwHAwcFB2o6MjNRZz/nz50sbYpHzFicqKgp37twBALi5uXH8BxGZJCYgRERUYerXr4933nkHQEF3pHHjxiEqKsrocQwZMkRaW2Pr1q14/Pix1rLbt2+XWhnatWtXZLG/xo0bS60gp06dktY6KUwURSxfvrxMcf7yyy/IyMjQun/ZsmXS+UaPHl2muomIXhRMQIiIqEItXboU3bt3BwCEhYWhU6dO2LlzJ0RR1HnczZs3kZKSYpAYatWqhSlTpgAAMjIyMHr0aI11SlSuXr2KmTNnSo8//vjjImUsLCyk6XKfPHmCH3/8sUgZpVKJ999/H2fOnClTnBEREZg4cSKys7OL7Pv777+xbNkyAAWD7lWJHRGRqeEsWEREVKEsLCywb98+vPbaazh+/DiioqIwevRoeHh4oH///mjdujUcHR1hbm6O5ORkPHjwAIGBgQgJCZGSFAcHBygUinLFsXTpUpw8eRL37t3D5cuX0bx5c0yZMgWtW7dGTk4OgoKCsGnTJmlch5+fH8aMGVNsXQsWLMChQ4cgiiI++OADXLx4EUOGDIGNjQ3CwsKwZcsW3Lp1C+PHj8fmzZtLHaOvry927NiB69evY9KkSfD09ERSUhIOHjyIffv2SeW+/fbbIi0zREQmQyQiIjKC/Px88YcffhBr164tAijVv5o1a4rz5s0T4+Pji9Q3ceJEqVx4eHipYoiJiRF79Oih85yCIIizZs0S8/LydNb1zTff6KzH19dXzMrKkh57e3sXW4+3t7dUJjk5WezTp4/WOmUymfjVV1+V6rUSEb2o2AJCRERGIZPJ8P777+Ptt9/G7t27ERAQgJCQEMTExCAhIQHm5uaoWbMm3N3d0bFjR3h7e2Po0KEas06Vl7OzM4KCgrBr1y5s3boVwcHBiI2Nhbm5OerWrQsfHx9MmzYNHTt2LLGujz76CN26dcOKFStw/vx5xMfHw9HREW3btsXUqVP1GqNRo0YNHD9+HOvXr8emTZtw584dJCUloXbt2vDx8cHs2bPRoUMHfV46EdELQxDFEjrhEhERUYXx8fHB6dOnAaDEcTFERFUBB6ETEREREZHRMAEhIiIiIiKjYQJCRERERERGwwSEiIiIiIiMhgkIEREREREZDWfBIiIiIiIio2ELCBERERERGQ0TECIiIiIiMhomIEREREREZDRMQIiIiIiIyGiYgBARERERkdEwASEiIiIiIqNhAkJEREREREbDBISIiIiIiIyGCQgRERERERkNExAiIiIiIjIaJiBERERERGQ0TECIiIiIiMhomIAQEREREZHRMAEhIiIiIiKjYQJCRERERERG8/8Ahn3sex9uHrkAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "intervening location: 75\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:42<00:00, 1.50it/s]\n" + ] + }, + { + "data": { + "image/png": "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VHExASGjmHP8BxERERFVXOyCRUREREREpYYtIEREREREVGqYgBARERERUalhAkJERERERKWGCQgREREREZUaJiBERERERFRqmIAQEREREVGpYQJCRERERESlhgkIERERERGVGiYgRERERERUapiAEBERERFRqWECQkREREREpYYJCBERERERlRomIEREREREVGqYgBARERERUalhAkJERERERKWGCQgREREREZUaJiBERERERFRqmIAQEREREVGpsS7rACqq1NRU3Lx5E/fu3UN4eDju3buHpKQkAMCSJUvg6+tbxhESEREREZU+JiBmcuHCBaxcudLs54mNjTX7Oah8srOzg0wmg0qlQmZmZlmHQ2TReD0RmRavqcqtRo0aOvczATEjFxcX1K9fHw0aNEDt2rXxzTfflHVIVIHY29vDysoKubm5/HInKiFeT0SmxWuKdGECYib+/v7o2bOn9Dg1NbUMoyEiIiIiKh84CN1MrKysyjoEIiIiIqJyhwkIERERERGVGiYgRERERERUapiAEBERERFRqWECQkREREREpYYJCBERERERlRpOw1vOBQYGYsuWLVr3Dxs2DBMmTCjFiKi8kMlk0n9dXFzKOBoiy8brici0eE2RLkxAyrm0tDRER0dr3Z+ens4pfys5QRD4GSAyEV5PRKbFa4qKwgSknHNwcICbm5vW/QqFArm5uaUYEZUH165dw+uvvw4AWLt2LXx9fcs4IiLLxeuJyPRkMhkEQYAoilCpVGUdDpWy4pJOJiDlXEBAAAICArTuj42NRUJCQilGROVBSkqKtK1SqfgZICoBXk9Epufi4gIrKyteU5VUjRo1dO43WQKSlZWFxMREZGRkwN7eHi4uLrCxsTFV9UREREREVAEYnYCEhITg8OHDCA4OxvXr1/Hs2TOIoijtFwQB7u7uaNGiBfz8/NC3b1+89NJLJgnaUiQnJ0vb6enp0nZaWprGPoVCAWtrNkYRERERUcVn0K/eR48e4ccff8SmTZvw5MkTjX35kw/146dPn+Lp06c4fPgwFi1aBA8PD4wbNw7Tp0+Hl5dXyaMv57R1nVq6dKnG4yVLlrDPMRERERFVCnqtAxIWFoaxY8eifv36WLZsGR4/fgxRFKV/crkctWvXhq+vLzp16oRmzZqhVq1akMvlGuUeP36MZcuWoUGDBhg7dixCQ0PN/fqI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rh127NgBURR1Hnfjxg0kJyebJIYaNWpgypQpAID09HQMGzZMY50StStXruCNN96QHs+fP79QGRsbG2m63EePHuHrr78uVEalUmHOnDk4ffq0QXFGRkZiwoQJUCqVhfb98ccfWLFiBYC8QffqxI6IyNJwFiwiIjIrGxsb7N27F6NGjcJff/2FqKgoDBs2DD4+PujduzeaN2+OatWqwdraGklJSbh37x5OnjyJkJAQKUlxcXGBQqEoURzLli3DsWPHcPfuXVy6dAlNmjTBlClT0Lx5c2RlZSEoKAibNm2SxnUEBARg+PDhRdY1b948HDx4EKIo4v3338eFCxfQv39/ODg4IDw8HFu2bMHNmzcxduxYbN68We8Yhw4diu3bt+PatWuYOHEiGjRogMTERBw4cAB79+6Vyn3xxReFWmaIiCyGSEREVApyc3PF5cuXizVr1hQB6PWvatWq4uzZs8W4uLhC9U2YMEEqFxERoVcM0dHRYufOnXWeUxAE8c033xRzcnJ01vX555/rrGfo0KFiZmam9Lhbt25F1tOtWzepTFJSktijRw+tdcpkMvGzzz7T67USEZVXbAEhIqJSIZPJMGfOHLz99tvYtWsXjh8/jpCQEERHRyM+Ph7W1taoWrUqvL290bZtW3Tr1g0DBgzQmHWqpFxdXREUFISdO3di69atCA4ORkxMDKytrVG7dm34+/tj2rRpaNu2bbF1ffjhh+jYsSNWrlyJc+fOIS4uDtWqVUPLli0xdepUo8ZoODs746+//sL69euxadMm3L59G4mJiahZsyb8/f0xc+ZMtGnTxpiXTkRUbgiiWEwnXCIiIjIbf39/nDp1CgCKHRdDRFQRcBA6ERERERGVGiYgRERERERUapiAEBERERFRqWECQkREREREpYYJCBERERERlRrOgkVERERERKWGLSBERERERFRqmIAQEREREVGpYQJCRERERESlhgkIERERERGVGiYgRERERERUapiAEBERERFRqWECQkREREREpYYJCBERERERlRomIEREREREVGqYgBARERERUalhAkJERERERKWGCQgREREREZUaJiBERERERFRqmIAQEREREVGpYQJCRERERESl5v8ApA1ucFnXwaMAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "intervening location: 80\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:43<00:00, 1.46it/s]\n" + ] + }, + { + "data": { + "image/png": "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sGfPnjKn9m3YsCHee++9MlsMjEUikWDdunXYs2eP2ml1pVIp+vbti8uXLxusFWfChAnw8PAotUy7du2wYcMGBAcHl9qaos6QIUMQHh6O0aNHqx1zZGFhgRkzZuDGjRvo06eP1scgIiKqydgFi3SSn58PR0dHvHjxAhKJBE+fPtX7AoTGdv/+fVy6dAmxsbFIT0+Hra0tXF1d0a5dO51W937y5AlCQkLw/PlzpKSkwNraGg0bNkSbNm3QsmVLA7wDwwkPD8eNGzcQExMDc3NzNGzYEF27dkWDBg0q5PiPHj3Cv//+i+joaKSnp8POzg7169dH+/bty0xQtJGSkoKgoCA8efIEycnJsLe3R5MmTdCzZ09YWVnp7ThEREQ1CRMQ0klgYKA4O1LHjh1x6dIlI0dERERERFUBu2CRTgy5+CARERERVV9MQEgnhhz/QURERETVF7tgERERERFRhWELCBERERERVRgmIEREREREVGGYgBARERERUYVhAkJERERERBWGCQgREREREVUYJiBERERERFRhmIAQEREREVGFYQJCREREREQVhgkIERERERFVGCYgRERERERUYZiAEBERERFRhWECQkREREREFYYJCBERERERVRgmIEREREREVGGYgBARERERUYUxNXYA1VV6ejpu3ryJ+/fvIzIyEvfv30dKSgoA4KuvvkKbNm2MHCERERERUcVjAmIgFy9exKpVq4wdBhERERFRpcIExIDs7e3h4eGBpk2bokGDBvjhhx+MHRIRERERkVExATEQX19f9OnTR3yenp5uxGiIiIiIiCoHJiAGYmJiUiHHSUhIqJDjUOVjaWkJqVQKuVyO7OxsY4dDVKXxeiLSL15TNVvdunVL3c4EhKiKsrKygomJCQoKCvjlTlROvJ6I9IvXFJWG0/ASEREREVGFYQJCREREREQVhgkIERERERFVGCYgRERERERUYTgIvZILCAjAtm3b1G4fOXIkJk+eXIERUWUhlUrF/9rb2xs5GqKqjdcTkX7xmqLSMAGp5DIyMhAXF6d2e2ZmZoVN+UuVk0Qi4WeASE94PRHpF68pKgkTkErO2toaTk5OarfLZDIUFBRUYERUWUilUkgkEgiCALlcbuxwiKo0Xk9E+sVrqmYrK+lkAlLJTZgwARMmTFC7PSEhAcnJyRUYEVUW9vb2MDExgVwu52eAqJx4PRHpF6+pmq2shQg5CJ2IiIiIiCoMExADSk1NFf+lp6eLr2dkZKhsy8/PN2KUREQ1261bt9C5c2d07NgR169fN3Y4RETVHrtgGZC6rlPLly9Xef7VV1+hTZs2FRESVRO3bt3Ce++9BwBYv349XF1djRwRERERkWb0loDk5ubixYsXyMrKgpWVFezt7WFmZqav6omIiIiIqBrQOQEJCwvDsWPHEBoaihs3buD58+cQBEHcLpFI4OzsDE9PT3h7e6N///545ZVX9BJ0VXHgwAFjh0BEREREVKlolYA8fvwYv/76K7Zs2YKnT5+qbFNOPhTPnz17hmfPnuHYsWNYtmwZGjZsiIkTJ2LWrFnsMkJEREREVANpNAg9IiIC48ePh4eHB1asWIEnT55AEATxn4WFBRo0aIA2bdqgW7duaN26NerXrw8LCwuVck+ePMGKFSvQtGlTjB8/Hvfu3TP0+yMiIiIiokqk1BaQ5ORkLF26FBs3bkRBQYHYytG2bVv4+vrC29sbXbp0gZubm9o6oqKiEBoaitDQUAQFBeH69evIz8/H9u3bsXPnTsyYMQNfffUV7O3t9fvOiIiIiIio0ik1AWnevDmSkpIgCAIaNGiAadOmYdKkSWjatKnGB3B3d4e7uzvGjh0LAIiMjIS/vz/++OMPxMTE4LfffsOuXbsQFxdXvndCRERERESVXqldsBITE+Hh4YHff/8dDx8+xOeff65V8lESDw8PfP7553j48CF+//13eHh4IDExsVx1EhERERFR1VBqArJ27VrcuXMHU6dOhampfpcMMTU1xdSpU3Hnzh38/PPPeq2biIiIiIgqp1Kzijlz5hg8ABMTkwo5DhERVR8XL17UW11RUVFIT08HAFy7dg3Pnj3TW92dO3fWW11ERNUFV0InIqIqZ/DgwQapd/r06XqtLz4+Xq/1ERFVBxpNw0tERERERKQPOrWAnD17Fj4+PjodMD8/H0uWLMH333+v0/5ERESHDh3SW12nTp3Cjz/+CAD44IMP0L17d73VTURExemUgPj5+WHp0qX49NNPIZFINN7v/v37eOONN3Dt2jUmIEREpDN9jq2IiooSHzdr1ozjNoiIDEynBKSgoABffPEFzpw5g23btqFhw4Zl7uPv74958+YhPT1dq6SFiIg0k5aWhujoaGOHUeUoDzp/8uQJbt26ZcRoqi5XV1fY2toaOwwiqgJ0SkDq16+PZ8+e4dy5c/D09MTGjRsxdOjQEsump6dj9uzZ+Ouvv8SV1EePHq1zwEREVFxaWhomT56MzMxMY4dS5ShmwAKAbdu24cCBA0aMpuqSyWTw9/dnEkJEZdJpEPqNGzcwcOBACIKApKQkjBgxAm+//TZycnJUyl26dAnt2rUTkw+ZTIYNGzbgr7/+0kvwRERUKDo6mskHGVVmZiZb4IhIIzq1gNSpUweHDh3Cjz/+iA8//BC5ubn49ddfce7cOWzfvh0tW7bEihUr8OmnnyI/Px+CIKBt27bYvn07WrRooe/3QERESmbMmAE3Nzdjh1Fl3Lp1C4sXLwYAvPXWW2jWrJmRI6paHj16hI0bNxo7DCKqQsq1DsiCBQvg4+ODMWPG4P79+wgPD0enTp3QunVrXLp0SexyNXfuXKxcuRLm5uZ6CZqIiNRzc3PjzR4tKHfBaty4Mc8dEZGBlXsdkA4dOuDq1auYOHEigMImWEXyUbduXezfvx+rV69m8kFERERERPpZiNDS0hLOzs4AIM5wJZFI0KZNG3Tt2lUfhyAiIiIiomqg3AnIw4cP0b17d6xcuRISiQQmJiaoVasWBEFAYGAgPD09cebMGX3ESkREREREVVy5xoBs374dc+bMQWpqKgRBgJubG7Zt2wYXFxeMHTsWFy5cQExMDPr27YslS5bgiy++gFSql0YXoirn4sWLeqsrKipK7Ld+7do1lXUMyouLsBEREZEh6ZSAZGVlYe7cudi8ebM40HzEiBHYuHEj7OzsAABBQUH49NNP8fXXX0Mul2PFihUIDAzEX3/9BVdXV/29gxpOIpEwqasiBg8ebJB6p0+frtf6kpKS9FofVQzl7wGpVMrvBS0UPVc8d9op+tkzMTExYjRUGfEzQUXplIC0b98eEREREAQBVlZW+PHHH/Hmm2+qlJFKpfjiiy/Qp08fTJw4EU+fPkVoaCg8PT3x22+/cTFCPbGysoJMJjN2GFSN2NvbGzsE0oHy4m/m5uawtLQ0YjRVi/IkKRKJhOdOS8rnz9bWlt8hpMLExISfCSpGpwTk3r17AIBWrVph+/btaNWqldqyvr6+uH79OqZMmYJDhw4hJSUF48aNYwKiJ1lZWcUWgKTK6ciRI3qr6+TJk/jhhx8AAB988AF69uypt7qTk5P1VhdVnLS0NPFxbm4usrOzjRhN1ZKbmys+FgSB505LyucvLS2N3yE1XHZ2Nq5evYrc3FzY2tqiffv24gRFVHOUlXTqPAZk9uzZ+OGHHzS6U+Tg4IADBw5gzZo1eP/991W+rKh8BEFAQUGBscMgDXTq1ElvdUVGRoqPmzVrpte6+XmqmuRyucpj5edUuqLniudOO0U/e/wOqZmys7OxZcsW/PPPPypr65ibm8PHxwdTp06Fg4ODESOkykSnBGTXrl0YPny41vvNmzcPPXv2xNixY3U5LFUzaWlpiI6ONnYYVZLyoPMnT57g1q1bRoymanJ1dVXptkRERLrJzMzERx99hLt37xbblpubixMnTuD69ev47rvvUK9ePSNESJWNTgmILsmHgqenJy5fvqzz/lQ9pKWlYfLkycjMzDR2KFWS8t2lbdu24cCBA0aMpmqSyWTw9/dnEkJEVE6//PJLicmHsri4OHz11VdYtWoVu2SRfhYi1BYHTVN0dDSTDzKqzMxMtsAREZVTYmKixuu93bt3jy32BKCc64AQ6cOMGTPg5uZm7DCqlFu3bmHx4sUAgLfeegvNmjUzckRVx6NHj7Bx40Zjh0FEVC2cPXtWq3E/J0+eROvWrQ0YEVUFek1A0tLSkJqaqtEHkWuBkIKbmxtatGhh7DCqFOUuWI0bN+b5IyIio4iPjzdoeaqeypWAyOVybN++Hf7+/ggLC0NqaqpG+0kkEuTn55fn0ERERERkZMrrwGjCzMzMQJFQVaJzAhIXF4fhw4cjJCQEAMQV0YmIiIioZnj55Ze1Ks/uVwTomIAIgoDhw4fjwoULAAq7gHh7e2P79u2QSCTw9fVFnTp1EBUVhevXryM/Px8SiQT9+vWDs7OzXt8AERERERlHx44dUa9ePcTGxpZZ1szMDP369auAqKiy02kWrD179uDChQuQSCR4++23ERERgW3btonb58+fj7///huXLl1CdHQ0Zs2aBUEQEB4ejvnz52PTpk16ewNEREREZBwmJiaYPXu2RlPrTpw4EbVq1aqAqKiy0ykB2bFjBwDAw8MDq1atgomJidqyzs7OWLduHb777jvExMRgxIgRGo8VISIiMrTs7P/74ZSSIgUXQifSTpcuXbB48WK14zskEgkmTJiAUaNGVXBkVFnp1AXr0qVLkEgkGDVqFKTS4jlMSeNB3nvvPezYsQP//vsv1q9fj0WLFulyaCIionLLzwdOnZIhIKAWzp+vL74+aZI96tVrhDfeSMOYMWlwdtZ8elGimqx3797w9PTEsWPHEBwcjLS0NFhbW6NLly7w8/NDo0aNjB0iVSI6JSCKKdRatmyp8rqi+S07O7vE/d544w1cvnwZe/bsYQJCRERGsX+/Nb75xgHPn5f8JzA21hSrV9tj7draGDw4A599loBatTjRClFZ6tSpg/Hjx2P8+PGwt7eHiYkJCgoKkJycbOzQqJLRKQHJy8sDAFhbW6u8bmNjg/T0dCQkJJS4n2LtjwcPHuhyWCIi0sDnn3+uUX/smujJkyl4/PhNjcoWFEiwf78Njh+PRcuWC2BhUfLftpqOs2ASkbZ0SkDq1KmD2NhYpKWlqbxer149pKen4969eyXup5gh4cWLF7ocloiINKC4SUSqYmPH4MkTzZIPZVlZHrhzZyVeemkmTEwyDBAZEVHNolMC0rx5c8TGxiIqKkrl9TZt2uD+/fs4duxYifspXndwcNDlsKVKSUnBrl27EBYWhsTERFhYWMDDwwMDBw6Et7e31vV99NFHuHnzpkZl+/Tpg/nz56u89tNPP+H06dOl7ufq6oqff/5Z69iIiEg7WVlN8OTJgnLs3xxPnsyHm9tyPUZFRFQz6ZSAdO7cGUFBQfj3339VXh8yZAj27t2L+/fvY+nSpfjyyy/FbgA//PADjhw5AolEgi5dupQ/ciXR0dFYunQpUlJSAABWVlbIyMjAtWvXcO3aNQwZMgQzZ87Uqk4bGxvUrl1b7fb8/Hykp6cDKJwNTB1zc3PIZLISt3EqOiKiihEfPwqA+hkbNZGYOBANG66BqWla2YWJaqC8vDyEhIQgODgYGRkZsLGxQZcuXeDt7Q0rKytjh0eViE4JSN++ffHdd98hMDAQ2dnZsLS0BFA4yPyTTz7B06dPsWLFCvzxxx9wd3dHZGSkyriQd955Rz/Ro/DD/uWXXyIlJQVubm5YuHAh3N3dkZOTg/3792Pr1q04ePAg3N3d4efnp3G9H330Uanb//77bwQEBMDMzAw+Pj5qy3Xv3h3vvvuuxsclIiovMzMzjgFRkp8vQ2LiwHLXIwiWePFiKBo02KGHqKoPQRDY7Y9w+/ZtLF++vNg44KCgIMhkMrzzzjvw9fU1TnBU6eiUgPTq1Qu+vr7IysrChQsX0Lt3bwCFLQ/bt2/Hq6++ivT0dMTGxiIuLk5lgNqnn35a6g92bf3zzz94/vw5LCws8Mknn8DR0REAYGFhgdGjRyMpKQlHjhxBQEAAfH19YWqq01su5syZMwCATp06wdbWVi91EhHpwyeffIIWLVoYO4xKY/t2W1y6ZF12QQ2Ymc3B1q2v6aWu6uLu3bv43//+Z+wwyIj+++8/fPjhh8jJySlxe2ZmJlasWAGJRKLX34BUdem0EKGJiQlOnz6NkJAQMflQ6Nq1K27cuIHp06fD1dUVZmZmsLe3R79+/XDkyBF88skneglcITAwEADQs2dPMflQNmLECEgkEiQlJSE8PFwvx7xz5w6ePn0KAFq1qhARUcWLjCx5cTRdPHhgxoUKiZQIgoDVq1erTT6UrVmzRu1SDVSz6Kc5oIjGjRtjw4YNhqhaRVZWFiIiIgAAHTp0KLGMo6MjXFxc8PjxY1y/fh3t27cv93FPnToFoHAwvT7qIyIiw0lL0+leW4nkcgkyMiSwteXUs0RA4U3ZyMhIjcqmp6fjzJkzGDBggIGjosrOIAlIRXny5InYvcvNzU1tOTc3Nzx+/BiPHz8u9zFzcnJw/vx5AICvry9MTEof1Hjjxg3MmjUL8fHxMDc3R/369eHl5YVBgwbB3t6+3PEQEVHpLC3122Rhacnkg0jh8uXLWpX/999/mYCQbl2wKoukpCTxcWlT+yq26WMlztDQUGRkFM4D36dPnzLLJyQkIC4uDpaWlsjOzkZkZCT+/vtvzJ07F9evXy93PEREVLq6dfWXgNSuXQAz/fXoIqrysrKytCqfmZlpoEioKqnSLSDK/QgtLCzUllNs0/YiKcnJkycBFK6F0qhRI7XlPDw80Lx5c3Tq1Al16tSBVCpFZmYmwsLCsHnzZiQlJWH58uX44Ycf0LBhw3LHRUREJRswIAM//KCfFucBA7gQIZEyOzs7g5an6qncCUh+fj4uXryI27dvIzk5WePBRfoejF4R4uPjxYHsZbV+DBkypNhrMpkMvr6+ePnll/Huu+8iPT0df/31FxYtWmSQeImICPDwyEOXLlkICSn/OgQTJnANECJl3bt3x+bNmzUu37NnT8MFQ1WGzglIbm4uli9fjp9//lmnrk36SEAU648AhWMz1C34p5iZobyL4Jw5cwZyuRzm5ubo0aOHzvU4OTlh0KBB2LFjBy5fvgy5XA6ptOTecAEBAdi2bZvaukaOHInJkyfrHIuxKE9dbGFhwQWKtKTc4ieRSHj+tKB87mxtbavNWCxeU6WbNi273AlIp0656NDBBADPrbLqek2RZuzt7dGpUydcunSpzLJOTk7o379/meNnqfrTKQHJy8vDgAEDEBgYqLLGh6b0tUCW8riPpKQktQmIYqxIeb8UT58+DaBwJXgbG5ty1dW8eXMAhX0h09LS1DZJZmRkIC4uTm09mZmZVfJCVk64JBIJF03TUtHzxfOnOeVzJZVKq+T1UxJeU6UbODAXPXvmIChIfXfd0lhYCPjsszSe1xJU12uKNGdubq5ROVNTU5iamqq96Uo1h04JyOrVq8WF+CwtLTF+/Hj06NEDzs7OpY7F0DcXFxdIJBIIgoDo6Gi4uLiUWC46OhoASh2zUZbbt28jJiYGQMWu/WFtbQ0nJye122UyGQoKCiosHn2RK02kLwiCTolsTVb0fPH8aU75XMnl8ip5/ZSE11TppFJgw4YXGDnSAeHh2o0iNzUVsHbtC7Rvnwee1uKq6zVFmomJicGFCxc0LhsSEgJvb28DR0XGVtaNCJ0SkICAAACFLRDBwcFo2bKlLtWUm5WVFZo1a4Z79+7hypUr6Nq1a7EyCQkJ4vS7np6eOh9LsfZH3bp1y1WPwr179wAUvofSVlKfMGECJkyYoHZ7QkKCXmb3qmhpaf/XjzonJ0cvEwTUJMoLPgmCwPOnBeVzl5aWViWvn5LwmiqbmRkQEJCFd95xwtmzJbeYF2VrW4Cff45Djx7Z4CktWXW9pkgzhw4d0uqGx8GDB/HSSy8ZMCKqDOrWrVvqdp3awCIiIiCRSDBv3jyjJR8Kvr6+AICgoCDEx8cX275nzx4IggAHBwe0adNGp2Mor/3Rq1evMpsOy7oQ4+PjceTIEQBAx44d2RRJRFRBbG0F/PFHLP788xn69cuAVFry97WbWx4++igRZ88+QY8eXLmZSB3lJREMUZ6qJ51++SoGf7dq1Uqvweiif//+cHZ2RnZ2Nr744gtERUUBKEwadu3ahcOHDwMobEkwNVVt8JkxYwZee+01/PTTT6Ue48KFC+K81Zqs/REYGIivv/4aoaGhSE1NFV/PysrC2bNnsWTJEqSlpcHKygpjx47V5u0SEVE5SSRA9+7Z+PXXOAQFPcbMmS/EbVOnZuDPP5/h1KknmDEjFbVr63cRQ6LqRtuu98oTCFHNpVMXrCZNmuDff/9FSkqKvuPRmpmZGT7++GMsXboUDx8+xPz58yGTyZCdnS32iR48eHC5xm0oBp+3bNkSDRo0KLO8XC5HSEgIQkJCABR2szI1NUVGRoYYk52dHRYvXqx23AoRERlegwYF6Ns3Exs2FD4fOjQbbdqwxYNIU+3atcP27du1Kk+kUwvImDFjIAgCTpw4oe94dOLq6oo1a9bg9ddfR/369ZGXlwdra2t4enrio48+wptvvqlz3dqs/aHQpk0bTJgwAV5eXnB2doZEIkFmZiasra3x8ssvY9KkSfjll1/Qtm1bneMiIiIiMjZPT0+NJ/mxtLTU+LcUVW86tYDMnDkTv/76K3bt2oVTp05Vig9T7dq1MX36dEyfPl3jfTZu3FhmGUdHR+zbt0+rWJycnDB69Git9iEiIiKqaiQSCebOnYulS5ciPz+/1LKzZs2CtbV1BUVGlZlOLSC2trY4dOgQGjRogNdeew0rV65UmYGFiIiIiGoGT09PLFu2TO0aaWZmZpg7dy4GDBhQwZFRZaXzSujNmzdHeHg4/Pz8sGTJEnz00Ud46aWXUKdOnTJndZJIJOK0tkRERERUtXXs2BF//vknzpw5g+DgYKSnp8PGxgZdunRBz549y70YNFUvOicgT58+xcSJE3HlyhUAQH5+Pm7fvl3mfoIgcCVZIiIiompGJpNh0KBBGDRoEOzt7WFiYoKCggKuDUPF6JSAJCUlwcfHB1FRUSprXnDlXSIiIiIiKo1OY0C+//57PHjwAADQunVrBAQE4OHDh+LUt2X9Kygo0OubICIiIiKiqkGnFhDFrFAtW7ZEaGgoZDKZPmMiIiIioiooMzMTV65cQV5eHmxtbeHl5cWu91SMTgnIw4cPIZFI8OabbzL5ICIiIqrhMjMz4e/vjxMnTiAzM1N83dTUFD169MD06dNRt25dI0ZIlYlOCUitWrWQnZ2t0argRERUsR49emTsEKoU5fP18OFDmJmZGTGaqoefN8rIyMAHH3yAiIiIYtvy8/Nx5swZhIeHY+XKlXB2djZChFTZ6JSAtGrVCnFxcXj69Km+4yEionLSZJFV+j/p6eni419++UXtWgZEVLK1a9eWmHwoS0hIwJdffok1a9awSxbpNgh90qRJEAQBf//9t77jISIiHbi6urJLLBmVTCaDq6urscOgCpaQkIDAwECNyt6/fx/h4eGGDYiqBJ1aQCZNmoStW7fixIkT+OKLL/C///1P33EREZEWbG1t4e/vj+joaGOHUuUcP34cy5cvBwCMGzcOPj4+Ro6oanJ1dYWtra2xw6AKdvbsWcjlco3Lnzx5Em3btjVgRFQV6LwQ4Z49ezBt2jQsW7YMFy5cwNy5c+Ht7Y06deroMz4iItKQra0tWrVqZewwqhzlO7IuLi48h0RaSEhIMGh5qp50SkBMTEzEx4Ig4Pjx4zh+/LjG+0skEuTn5+tyaCIiIiKqJMzNzQ1anqonnRKQoiuecwV0IiIioppH23E/7ClDgI4JSM+ePTmDAREREVENl5ycrFV55TVCqObSKQHRdLYDItIfuRwIDrbCtm22+PdfJ/H1WbPs0LdvHYwfn4rmzfOMGCEREdU0iYmJWpVPSUkxUCRUleg8CJ1IXz7//HO2qJVCEIDY2KGIiRmHnBzFAk7/d+k+f26KLVtqYcuWWqhV6180avQ7atW6ZpRYqwJ2GSUi0h8LCwuDlqfqiQkIGV1eHu/aqyMIJnj06GMkJg7RqHxqqhdu3fKEm9ty1K17wMDRERFRTde6dWutyrdp08ZAkVBVotNChL1790afPn1w4cIFrfa7dOmSuC8RlU4QoFXy8X9M8ejRJ0hK6m+QuIiIiBQ6dOgAZ2fnsgsCMDU1Rd++fQ0cEVUFOo8BkUgkWs/lnJSUJO5LRKVLSBihQ/Lxfx4+XAYrq/9gZfVQf0EREREpkUqlyM3N1bi8jY2NAaOhqoJdsKo4iUQCqVSnhiyjUo7ZzMyMSWkRgiBBbOykctZhhsTEcWjSZKWeoqoeBEEQu/1JpVKVdY2o6ggNDdVbXVFRUeLjiIgIXLp0SW91e3t7660uosro6dOnSEpK0qhsfn4+jh8/joEDBxo4KqrsKjQBUfzRNzMzq8jDVmtWVlaQyWTGDkNrtra24uPly5fj5ZdfNmI0lc/p0+YYN86+3PWkpw/Fn392h60tB14r3L59G4sXLwZQ+Dm0ty//eaaKZ6gfMCtWrMCKFSv0Vh8nPaDqbsmSJVqV9/f3x/jx4w0UDVUVFZqA/PfffwDAP/h6lJWVhZycHGOHobW0tDTxcW5uLrKzs40YTeWzaZNt2YU0kJEhxfbtJpg4MV0v9VUHyl0F0tLStJ7Dnkgb/HxRdXfnzh2tyicnJ/O6qAHK+q1fZgKSmpqKFy9elLgtLi4O0dHRpe4vCAIyMjJw5coVrFy5EhKJROsZE0g9QRBQUFBg7DC0JpfLVR4rPyfg2jVzvdY1fjzPr0LRz15VvH4IOHTokN7qioqKws8//wwAeP/991GvXj291c3PF1V32t5ArKq/W0i/ykxAfvzxR3z++efFXhcEAbNmzdLqYIIgQCKRYOzYsVrtR1TTpKbqb1yPPusiqiw6d+6st7psbGzEgbHt2rWDq6ur3uomIqLiNOqCpa4Pqy59WydMmIBp06ZpvR9RTaLPcdEcY01ERIZiZmam1SxYRIAGCUi7du0wefJkldf8/f0hkUjg6+tb5p0iqVQKGxsbuLu7w8/Pj92viDRgb1+AzEz9tFzY27Opm4iIDKNFixa4ceOGxuVr1aplwGioqigzAXn99dfx+uuvq7zm7+8PAJg/fz5ee+01w0RGVIP17JmFv/7Sz2xxPj5ZeqmHiIioqAULFmDq1Kkal9e2+z5VT6XeYp02bRqmTZuGa9euqbw+efJkTJ48mf1kiQxkwoS0sgtpoH79fPTunamXuoiIiIqqX7++xr8HLS0t0atXLwNHRFVBqQnI5s2b4e/vX2ymq8DAQAQGBmq9EjoRaaZly1x4eZV/auKxY9NgyuVGiYjIgFauXFlm1ypTU1OsWbOmSi6eTPqn06fg0aNHePToETIzeWeVyFAWLEiGVKr7ImbOzvkYNy5VjxEREREVV6tWLfz+++/w9fWFRCIptr1du3bYsGEDGjVqZIToqDIqNQGxsLAAULgWCBFVrK5ds/HFF4k67WtjI8cffzyHgwPX/yAiIsOztbXFBx98gB07dmDMmDHi619//TVWrFiB+vXrGzE6qmxKTUCcnZ0BAGFhYRUSDBGpGjs2Dd99Fw9TU81bQpyd87FjRwxatMgzYGRERETF1apVC506dRKf16lTx4jRUGVVau/wbt264dGjR/j111+Rm5uLDh06wNLSUtx++vRptaukl2XSpEk67UdU04wYkY5WrXLg72+H/futkZ1d8n0DZ+d8jB2bhvHjU9nyQURERJVWqQnI/PnzsWPHDhQUFGDDhg0q2wRBwJo1a3Q6qEQiYQJCpIUWLfLw9dcJ+PDDJOzda4PAwEycPVu4rW/fbAwbFgs/v0wOOCciIqJKr9QuWJ06dUJAQADq1q0LQRDEfwrKr2n7j4i0V6uWHJMnp+Ltt1+Ir82dm4FXX2XyQURERFVDmT9Z3njjDQwbNgyXLl3C48ePkZOTg6lTp0IikWDu3Lno0KFDRcRJRERERETVgEb3TM3NzdGtWzfxuWLFyz59+nAldCIiIiIi0pjOq8GwGxUREREREWlLp17jcnnlm2EnJSUFu3btQlhYGBITE2FhYQEPDw8MHDgQ3t7eWtcXGxuLmTNnllluyZIlKq1DRT148AB79+5FeHg4UlNTYWdnh9atW2P48OFwd3fXOi4iIiIioqqsWgxbjY6OxtKlS5GSkgIAsLKyQkZGBq5du4Zr165hyJAhGiUT6tSqVQtSacmNRebm5mr3O3v2LFatWoX8/HwAgLW1NRITE3H27FmcP38eCxYsQI8ePXSOi4iIiIioqtFLApKfn4/z588jNDQUz549Q1paGmxtbdGgQQN07twZ3bp1g6mBpujJy8vDl19+iZSUFLi5uWHhwoVwd3dHTk4O9u/fj61bt+LgwYNwd3eHn5+fTsf4/vvvUa9ePa32iY6OFpOP7t27Y8aMGXBwcEBSUhI2bNiA8+fP46effoK7uztcXFx0iouIiIiIqKopV1YgCAK+//57/PDDD4iNjVVbztnZGe+99x4WLFgAiURSnkMW888//+D58+ewsLDAJ598AkdHRwCAhYUFRo8ejaSkJBw5cgQBAQHw9fU1WCJU1NatW5Gfnw93d3e89957MDExAQA4ODhg0aJFiImJQVRUFLZu3YolS5ZUSExERERERMam8yD0rKws+Pn5YcmSJYiNjS11zY9nz55h8eLF6Nu3L7Kzs/UZPwIDAwEAPXv2FJMPZSNGjIBEIkFSUhLCw8P1emx1MjIycOnSJQDA0KFDxeRDwcTEBEOHDgUAhIWFITMzs0LiIiIiIiIyNp2bAyZOnIgzZ84AKFzZvHfv3ujfvz+aN28OGxsbpKen4969e/jnn39w5swZCIKAM2fOYOLEidi5c6degs/KykJERAQAqF2PxNHRES4uLnj8+DGuX7+O9u3b6+XYpbl9+7Y47kNdXIrX8/LycOfOHXh5eRk8LiIiIiIiY9MpATl9+jT27NkDiUQCV1dXbN++HZ07dy6x7OLFixEWFoaxY8ciKioKe/bswZkzZ9CrV69yBQ4AT548EacDdnNzU1vOzc0Njx8/xuPHj3U6zrfffouYmBjk5OTAzs4OzZs3h5+fHzp16lRiecVxateuDTs7uxLL2NnZwc7ODikpKYiOjmYCQkREREQ1gk5dsP78808AgI2NDQIDA9UmHwqvvPIKTp06BVtbWwCAv7+/LoctJikpSXzs4OCgtpxiW3Jysk7HiYiIgCAIkEqlSExMREhICL744gt88803yMvLK1ZecZzSYtJHXEREREREVY1OLSDnz5+HRCLB1KlTS215UNa4cWNMnToVq1evxrlz53Q5bDHK40ksLCzUllNsy8rK0rhuc3NzDBw4ED169IC7uztkMhmAwtmtdu/ejTNnzuD8+fOwtrbG3LlzVfZVHKe0mHSNi4iIiIioKtOpBeTZs2cACls2tKEoX9qMWZWFvb09Zs+ejVatWonJBwC4urpiwYIFeP311wEAJ06cwJMnT4wVJhERERFRlaJTC4hiKl1tV0RXjNfQF0tLS/FxTk6OSqKgLCcnB0DhAoX6Mn78eBw9ehS5ubm4dOmSyloeiuMojquOJnEFBARg27ZtarePHDkSkydP1ib0SkHRHQ8obAnS5/+bmkC5dU0ikfD8aUH53Nna2sLe3t6I0VBloPx9JJVK+ZkgKideU1QWnRIQZ2dnPHjwAJcuXcKECRM03i8sLEzcXx+Ux1gkJSWpTUAUY0X0eQFYWlrC1dUV9+/fL9aio4hLeYyKrnFlZGQgLi5O7fbMzMxi0/xWBcory0skEr2vD1PdFT1fPH+aUz5XUqm0Sl4/pF/K30cA+JkgKideU1QWnRKQ7t27IzIyEps3b8Z7770HV1fXMvd59OgRNm3aBIlEgu7du+ty2GJcXFwgkUggCAKio6PVrigeHR0NAGjUqJFejlsWxXFevHiB1NRU1KpVq1iZlJQUpKSkAECp58/a2hpOTk5qt8tkMhQUFJQz4oqn3HqmWC+GNFf0fPH8aU75XMnl8ip5/ZB+FW3N52eCqHx4TVFZSadOCcikSZPg7++P9PR09OrVCzt27EDHjh3Vlr98+TLGjBmD9PR0SCQSvXUZsrKyQrNmzXDv3j1cuXIFXbt2LVYmISFBnBbX09NTL8cFCgfAKxKbevXqqWx7+eWXYWpqivz8fFy5cgW+vr7F9r969SoAwMzMDC1btlR7nAkTJpTaypSQkFAlZ9FKS0sTH+fk5HAgvpaUu/cJgsDzpwXlc5eWllYlrx/SL+XvI7lczs8EUTnxmqK6deuWul2nQei9evXCsGHDIAgCHj58CG9vb/j5+eHbb7/Fvn37cOLECezbtw/fffcd+vbtC29vb0RFRUEikWDYsGEl/iDXlaKuoKAgxMfHF9u+Z88eCIIABwcHtGnTRuN6y7qj/NdffyE3NxcSiaTYeiAymUx8bf/+/cUy/4KCAuzfvx9A4cB8dV3HiIiIiIiqG51XQg8ICMCAAQMQFBQkrnKuWBm9KMWPeR8fH2zZskXXQ5aof//+OHDgAJ4/f44vvvgCCxYsgLu7O3JycnDw4EEcPnwYQGFLgqmp6tudMWMG4uLi0Lt3b7z77rsq2z766CO0b98enTp1gqurq9iUFB0djb179+LUqVMAgL59+5bY9Wv8+PG4dOkSIiMj8cMPP2DGjBmwt7dHcnIyNm7ciMjISJiZmWH8+PF6PR9ERERERJWZzgmIlZUVTp8+je+//x4//vgjnj9/rrZs/fr1sXDhQixYsKDYwKTyMjMzw8cff4ylS5fi4cOHmD9/PmQyGbKzs8U+iIMHD4afn59W9cbHxyMgIAABAQEwMTGBTCZDbm6uSvcNHx8fzJo1q8T9XV1dMX/+fKxatQrBwcE4d+4cZDIZMjIyAACmpqaYP3++2nErRERERETVkc4JCFA4y8HixYuxYMECXLhwARcvXsSzZ8+QlpYGW1tb1K9fH507d0bXrl2LtT7ok6urK9asWYPdu3cjLCwMCQkJsLa2RpMmTTBo0CB4e3trXeeUKVNw/fp1REREIDk5GWlpaTAxMUH9+vXRokUL9OnTB23bti21Dh8fHzRq1Ah79uzBzZs3kZqaKnYFGz58ONzd3XV9y0REREREVZJesgJTU1P07NkTPXv21Ed1OqlduzamT5+O6dOna7zPxo0b1W7r3r27XmbratKkCRYtWlTueoiIiIiIqgP99ociIiIiIiIqBRMQIiIiIiKqMHpPQB48eIBZs2ahSZMmsLKygqOjI3r37o3Nmzfr+1BERERERFTFlDkGJD8/HxMnTkRBQQHatWuHjz76SG3ZY8eOYdSoUcjMzBSn3s3JycHZs2dx9uxZ7NixA/v374e5ubn+3gEREREREVUZZbaAhISEYMeOHdi9ezcaNmyotlx0dDTGjBkjTjOrTBAECIKA48ePY+HCheWLmIiIiIiIqqwyE5CgoCAAgLm5OUaOHKm23LJly5CamgqJRAILCwssX74cYWFhuHr1Kj799FNYWFhAEAT89ttvePDggf7eARERERERVRlldsG6cuUKAKBnz56wtrYusUx6ejp27NghPj906BB69+4tPvf09ESLFi0wduxYyOVybN++vdSuXEREREREVD2V2QJy7949SCQSvPLKK2rLnD59GllZWZBIJOjdu7dK8qHwxhtvwMvLCwBw7ty5coRMRERERERVVZkJyNOnTwEATZs2VVvm/Pnz4uPhw4erLTdw4EAIgoA7d+5oEyMREREREVUTZSYg6enpAABbW1u1ZS5duiQ+7tatm9pyzZo1AwAkJSVpHCAREREREVUfZSYgiilzMzMz1Za5evUqAMDCwgKtWrVSW04mk5VZFxERERERVV9lJiAODg4ACseClOTevXtISUmBRCKBp6cnTExM1NaVkpIC4P8SESIiIiIiqlnKTEDatm0LQRBw4MCBErcfOnRIfNy1a9dS64qOjgYAODk5aRMjERERERFVE2UmIP379wcAhIeHY/369SrbXrx4gTVr1ojPhwwZUmpdYWFhAEof0E5ERERERNVXmeuATJgwAZ9++ilSUlIwZ84cBAYGwsfHB7GxsfD398ejR48gkUjQrFkz+Pr6qq0nMzMTZ8+ehUQiQceOHfX5HqiKe/TokbFDqHKUz9nDhw9hZmZmxGiqFn7eiIiIjKvMBMTe3h4//fQTpkyZAolEgh07dqgsOqjw3XfflVrP3r17kZmZCYlEgp49e+oeMVU7GzduNHYIVY5idjoA+OWXX2BjY2PEaIiIiIg0V2YXLACYNGkS1q1bBysrKwiCoPLP3NwcP/30U5ndr3788UcAgI2NTaktJVQzuLq6cjICMiqZTAZXV1djh0FERFTjlNkCojBr1iwMHToUe/bswd27d5Gfn4+mTZtixIgRZf4Rj4+PR9++fdG3b180bdqU3UUItra28Pf3FycmIO0cP34cy5cvBwCMGzcOPj4+Ro6o6nF1dS11fSMiIiIyDI0TEACoV68e5syZo/VBHB0d8fXXX2u9H1Vvtra2pa4bQ+qFh4eLj11cXHgeiYiIqMrQqAsWERERERGRPmjVAkKVj0QigVTKPLKmKfr/vLQFQImodLyeiPSL1xSVhQlIFWdlZcXB3DWQ8v9zqVQKe3t7I0ZDVLUpjwXi9URUfrymqCylJiCjRo3CN998gyZNmhgsgPDwcPzvf//Dvn37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XryIZ8+eIS0tDba2tqhfvz46d+4MV1dXfcRKRERUbtquRRUbG4vWrVsbKBoioppHpwTkzz//BAA4OzujX79+AABXV1cmGkYgkUjYqlQDFf1/bmJSvM8tEZXM3Nxcq/IWFha8xmoY5e9YqVTKv7NaKnq+eP40V/SzV12/e3RKQKZMmQKJRIKlS5eKCQgZh5WVFWQymbHDoApma2srPpZKpbC3tzdiNERVS7t27XDixAmNykqlUnh7e/Maq2GUv2PNzc1haWlpxGiqHuUkXyKR8PxpQfnc2draVtvvHp0SEBsbG2RkZODll1/WdzykpaysLOTk5Bg7DKpgaWlp4mO5XI7k5GQjRkNUtfTv31/jBKRz586wsLDgNVbDKH/H5ubmIjs724jRVD3Kq5sLgsDzpwXlc5eWllZlv3vKSpx0SkDq16+P+/fv14h5iis7QRBQUFBg7DCoghVdqZmfASLNtWrVCt26dcP58+dLLWdlZYVJkybx+qqBlL9j5XJ5se9cKl3R88Xzp7min73q+v2jU6e8Xr16AQAuXbqk12CIiIgMTSKR4P3330fXrl3VlqlVqxa++OILuLu7V2BkREQ1g04JyKxZsyCVSuHv74+nT5/qOyYiIiKDsrCwwP/+9z9888036NGjBxwdHWFnZ4eXXnoJs2fPxh9//MGZr4iIDESnLljt27fHV199hQ8++AB9+/bF9u3b0bZtW33HRkREZDASiQSenp7w9PSEvb09TExMUFBQUGX7XBMRVRU6T8Pr7OyMAQMG4OjRo+jQoQO6d++OHj16wMXFBVZWVmXWMWnSJF0OTUREREREVVi5puEFCu8gyeVyBAcHIzg4WKP9JRIJExAiIiIiohpI55XQBUEo9TkREREREVFROiUgmzZt0nccRERERERUA+iUgEyePFnfcRARERERUQ2g0zS8REREREREutC6BeTp06e4ceMGUlJSYGdnhzZt2sDFxcUQsRERERERUTWjcQISFhaGBQsWIDQ0tNg2b29v/Pjjj3jllVf0GhwRERGRMT169MjYIVQ5yufs4cOHMDMzM2I0VUtN+bxplIAcP34cQ4cORU5OTomzXYWEhMDHxwf79u1D//799R4kERERkTFs3LjR2CFUOenp6eLjX375BTY2NkaMhiqjMseApKWlYfLkycjOzhaTj6ZNm6Jr165o2rSpWC4nJweT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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "intervening location: [75, 80]\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [01:09<00:00, 1.10s/it]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAB7CAAAewgFu0HU+AACAuElEQVR4nO3dd1hT59sH8G/CCIQlKIgLRNRq3avixl1nVdyjatVqd7Xa1tr2Z7fdWm1tq60LLdZV91YUB+LeVkUUBWTvDTnvH7w5TYCEJCSEwPdzXVw9yXnOc+6kOTH3eZZEEAQBREREREREFUBq7gCIiIiIiKj6YAJCREREREQVhgkIERERERFVGCYgRERERERUYZiAEBERERFRhWECQkREREREFYYJCBERERERVRgmIEREREREVGGszR0AEVmeGzdu4Nq1a4iKioJMJkO9evXQtWtX1KlTp0LjiIqKwunTpxETE4OcnBzUqVMHTZo0gZ+fHyQSiUF15ufn486dOwgPD0dUVBTS09OhUCjg4uICLy8vdOjQAXXr1jXyKyEiIqo+mICQyTRt2hT37t0DAFy6dAnt2rUz+jmGDh2KvXv3io+7deuGU6dOGf08VOSff/7B4sWLcfXq1RL7rKys0K9fP3z//fdo0aKFSeM4ePAg/ve//+HcuXOl7q9fvz5ef/11zJ8/H1ZWVmXWl5eXh4ULF+LkyZO4evUq8vPztZbv3Lkz3nzzTUycONGg+ImIiKoziSAIgrmDoKrn33//RbNmzQAU/Rh8/Pix0c8RExODBg0aoLCwUO35e/fuoXHjxkY/X3X3+uuv4+effy6znJ2dHX7//XdMmTLF6DEUFhZi7ty5WL58uU7l/fz8sHv3btSqVUtruZSUFLi6uuodT//+/bF161Y4OzvrfSwREVF1xRYQMondu3eL20OHDjXJOTZs2FAi+QCAtWvX4vPPPzfJOaurxYsXqyUfjo6OmDx5Mlq3bo3s7GyEhIRg165dUCgUyMnJwUsvvYS6deuib9++Ro3jzTffxC+//CI+trW1xciRI9GlSxc4ODjg4cOH2Lp1K/79918AQGhoKEaMGIGjR49CJpPpdA5HR0f4+fnh2WefhY+PD1xcXJCfn4/o6GiEhIQgODgYCoUCAHD48GEMGjQIJ0+e1KmlhYiIiAAIRCbQs2dPAYAAQNi7d69JztG8eXPxHI0aNRK3GzRoIBQWFprknNVRaGio+N4CEFq3bi1ERUWVKHfy5EmhRo0aYjkPDw8hPT3daHHs3LlTLY5GjRoJt2/fLlGuoKBAWLhwoVrZ999/X2vdGRkZwvz584VTp04JBQUFWstevnxZaNy4sVr9y5YtK9drIyIiqk7YBYuMLjk5Ge7u7igsLIRcLkdiYiLs7OyMeo5z587Bz88PACCRSHD27Fl069ZNbBE5dOgQ+vfvb9RzVlf9+vXD0aNHARS1Dty8eRNeXl6llt22bRtGjx4tPv7888+xaNEio8TRvn17XL58GQBgb2+PK1euoGnTphrLT5s2DevWrRPL379/32iDx8PDw9GyZUvk5OQAAFq3bl3quBgiIiIqiV2wyOj2798vJgL9+vUzevIBAGvWrBG3e/Togc6dO6Nv3744dOiQuL+8CciTJ08QGhqK2NhYpKSkQC6Xw8vLC23atDFojElCQgJOnTqFp0+fIikpCTKZDHXr1kXr1q3x7LPPGjxrkyndunVLTD4A4K233tKYfABAQEAAunXrhtOnTwMAli9fjoULF0IqLd+M3zdv3hSTDwB46aWXtCYfAPDFF19g48aNKCgoQHZ2Nn799Vd8+umn5YpDydfXF4MHD8b27dsBANeuXUNeXh5sbW2NUj8REVGVZu4mGCq/v/76S+wK4uLiorULSUxMjFrXESsrKyElJUVj+ezsbEEmk4nld+/eXWY848ePF8uvWrXKoNekTVZWluDi4iKe4/fffxcEQRA2bNggPmdvb6/1dWlSWFgoBAYGCq1atVJ7n4r/eXt7Cx988IGQlJRUZp179+4VunTpIkgkEo311a5dW3jjjTeEx48f6x2zKX3xxRdqcUZERJR5zJ9//ql2zJkzZ8odx88//6xW57Fjx3Q6rkePHuIxLVu2LHccqt5//321mErrlkZEREQlcSHCKsDf31/cTk1NVbtTXFxwcLDa48LCQoSEhGgsHxoaitzcXABF06z26NFDaywFBQU4cOAAgKKuUUOGDCkjev3t2LEDqampAACZTIYxY8YAAEaOHAkHBwcAQHZ2NoKCgvSqNz4+Hj169MDkyZNx/fp1rWUfPXqEL7/8Umu3m6ysLIwcORJDhgzB2bNnIWjp7RgbG4vly5fjyJEjesVsavv27RO3GzdujIYNG5Z5TPGWJ9U6DPXo0SO1x61bt9bpuFatWonbN27cKFFPeaSnp4vbUqkUNWrUMFrdREREVRm7YFUBnp6eeOaZZ8SZf4KDg9GxY8dSyxZPQJTPaZqpSrV827Zt4eLiojWWkJAQpKSkAAA6dOhgkoXp1q5dK24PGTJE/OHn4OCAkSNHIjAwUCw3e/ZsneqMj49Hly5dEB4eLj7n4OCA559/Hs899xxq1aqFzMxMhIeHIyQkBJcuXdJaX05ODvr06aO2ToWtrS369u2LHj16oHbt2sjJycGjR49w+vRpnD17VpxZqTJRTcSUY27KUr9+fdSvXx9PnjwpUYehkpOT1R6X9TlUKp4UXL16Fd7e3uWOp7CwUOzuBwDt2rWDXC4vd71ERETVAROQKsLf318tAZk/f36p5ZQJhVQqFX/wlpaUFC+vPEdZ9uzZI24PGzaszPL6evz4sdqYhMmTJ6vtnzx5spiAhIaG4s6dO+J6JJoIgoCpU6eqJR8BAQFYsWIFPD09Sz3m7t27+Pbbb2FjY1Pq/rlz56olH7169cIff/wBX1/fUss/efIEy5YtE1twKoPo6GikpaWJj/UZ9+Lr6ysmILdv3y53LMXHEeXk5MDR0bHM47Kzs9Ue3759G8OHDy93PB9++KG4yCYAvPPOO+Wuk4iIqLpgAlJF+Pv747fffgMAnDp1CoWFhSXWJXj69KmYpLRt2xbZ2dm4ffs2rly5gtTU1BJ3lXNychAaGqp2jrKorv9higRk3bp1YuLk6upaootXv3794OnpiadPnwIoagVZsmSJ1jr/+ecf7N+/X3w8YcIEBAYGah043bRpU6xatarUfZcvX8avv/4qPu7VqxcOHDigdTB+/fr18e2332rc/9NPP+Gnn37S9jIM9s0332DUqFElno+IiFB7rG3weXENGjTQWI8h3N3d1R5HRESoda/SpPi5Hzx4YND58/LyEBsbi9DQUPzyyy9qifn06dMxYcIEg+olIiKqjpiAVBGljQMp3g2reGuGMgFRjgMp3g1L3/Ef//77r3hXuH79+mjXrl05XlHpVLtfjRkzpsSsQ1ZWVpg4cSJ++OEHAEWLFX7xxRdaF4lTlgWA2rVrY+XKleWatUm1Pjs7O6xdu7bcM4ElJSWptdAYk2orh7bn9VkpXLVsfn4+cnJyyvUetG/fXu3xsWPHykxA8vLycOrUKbXnNL3W4oKDg9G7d2+tZWrUqIGPPvoIc+fO1alOIiIiKsJB6FWEchyI0vHjx0uUUU1AevfurZa0lFVel/Efpl79PCQkRO1HePHuV6U9Hx0drdZXv7jY2Fi1H6kvv/yyzuMLSlNYWIh//vlHfDxmzBidBm5XRhkZGWqP9Ukg7O3ttdalrx49eqjV+fPPP4vJsSbr1q1DQkKCUeNQatmyJfbs2YN58+ZVyumTiYiIKjMmIFWIakKhabA58F9rhq7li9etiakTENW1Pxo2bIju3buXWq5du3Zo0aKF+Fi11aS44nfIR4wYUa4Yr1y5ovYjt7z1KS1evBiCIJjkb9q0aaWeU7nInpI+a1zIZDK1x8XHYujL2dkZL774ovj43r17eO211zTOLHb58mUsWLCgxPO6xmFvbw9fX1/xz9PTU228z40bN9C9e3cMHjxYHOtCREREumECUoWoJgnKcSBKxcd/uLi4wMPDA82bNwcAcRyIkr7jP5KTk3HmzBkAgFwuR9++fcv7ctRkZmZiy5Yt4uOJEydqvfOs2gqyc+fOErMoKakOkLa1tdVpXIE2xQdcd+jQoVz1mVPxFo+8vDydjy3eOlG8RcQQixcvhoeHh/j4jz/+QK9evbBv3z4kJycjNzcX//77Lz799FP06NEDqampcHJyUqtDl4HrANC5c2fcv39f/IuJiUF6ejpOnjyJ8ePHi+X2798PPz8/o4xzISIiqi6YgFQhqklCWlqa2lSxxbtfFT9GoVDg5MmT4vP6jv/Yv38/CgoKAJhm9fMtW7aotSxo6n6lNGnSJDFByc3NxV9//VVqucTERHHbzc1N46xWulKtD4DGWbQsQfEf68VbRLQp3tKg6w9/bTw9PbF161Y4OzuLz4WEhGDIkCFwc3ODnZ0dmjVrhv/973/IzMyElZUV/vjjD7U6yrNWh0wmQ48ePfDXX3/hr7/+EscVRUVFYdKkSQbXS0REVN0wAalCio8DUU06NHWn0tQNqzzjP0wx+5VqN6r27duLLTeaNGjQQO21qXbfUqW6mJwxfiSr1mdtbV2iK5IlUf2hD5Rci0Mb5VowAGBjY2O0hLRHjx44c+ZMmWuS1KtXDwcOHCiRONeqVcsocYwfP15t6t2zZ8/i8OHDRqmbiIioqmMCUsVoGlhefPyHruWLlymNqVc/f/DggVrrzKVLlyCRSMr8U309Fy5cwM2bN0vUrdpFxxgDlFXrKygoKHOgdGXm4+Oj9jgyMlLnY1XLFq+nvFq0aIGzZ8/i2LFjmDdvHnr37o2WLVuiQ4cOCAgIwJo1a/Dvv/+iX79+ePz4sdqxbdu2NVocr732mtrjvXv3Gq1uIiKiqozT8FYxpa0HEh8fL47/aN++vdqdbQ8PDzz77LO4desWrl69ipSUFNjZ2ek1/uPUqVMmXf187dq1Ggcb62PNmjX47rvv1J6rWbOmuJ2UlIT8/PxydcNSrQ8oGntjjJW3zbEOSN26deHs7CxOXavPNMCqZctaCNJQvXv3LnOq3OKrsHfq1Mlo5/fy8kKNGjXEz76ppkkmIiKqapiAVDGqyUJ6ejouXryotvhaacmEv78/bt26JY4DcXZ21mv8hym7XwmCgHXr1omPXV1d4ebmpvPxaWlpiI+PBwBs3LgRS5YsgbX1fx/7Z599VtzOy8vD9evXS6w5oQ/V+gDg4sWLRklAzLEOCAC0atUKp0+fBlDUzUgXT548UZsZqrwD+8tDtSWvXr16aNq0qVHrV+1ipzrpAxEREWnGLlhVTGnjQMrqTlV8HEhlGv9x7Ngxte48a9asUZudqKy/Xbt2icc+ffpU7CqmVHwqX9U1PAzRpk0btW5Y5a3P3AYNGiRu379/Hw8fPizzmOJjIQYPHmzssHSSlZWl9v5Pnz7dqGt2ZGRkqK0zUrt2baPVTUREVJUxAamCNCUU1tbWpbZmaEtAyup+ZerVz1UHj7u4uOD555/X63g/Pz+1Fojig9E9PDzQq1cv8fGqVat0Xi27NFZWVmrdmbZs2YJHjx4ZXJ+SOdYBAUquY7J69eoyY1WdecrDw6PMAeOmsmTJEnFSABsbG8yYMcOo9e/cuVOt1aM8LWdERETVCROQKqh4QqE6/qP4uggA4O7uLnYdunr1ql7jP1RbP4w9+DwtLQ3bt28XH48YMcKgWaXGjRsnbu/Zs6fEVLnz5s0Tt58+fYpXXnmlXGNO5s6dK27n5ORg2rRpFjsYvUWLFmrjLJYtW6Z1MPq2bdvELlsA8Prrr0Mq1fw1M23aNLWJA3RpYdHFsWPH8M0334iP58+fr3VFen0nIIiNjcWiRYvEx1ZWVnjhhRf0jpOIiKg6YgJSBakmDarrMWhLJlTXA9Fn/MeePXvEbWN3vwoKClKLXzWR0IfqcXl5edi4caPa/uHDh6ut3L5p0yaMHTsWsbGxGusMDw/HnDlzxMUXVbVp0wavv/66+Dg4OBgDBw5UG4tTXExMDN5//321xRYriy+//FLczsjIwPDhwxETE1OiXEhICGbOnCk+dnd3V0vGjOGzzz4TE+rSKBQK/PLLLxg2bJj4OW7WrBk+/vhjrfV26dIFH3zwAe7fv19mDMePH0f37t3VWrZeffVVeHl56fgqiIiIqjeJYIzphajSadasWYkfavv379fYhWnLli0YO3as2nMdOnTAhQsXNJ4jOTkZHh4eKCgogFwuR2JiolEXIOzatas48LlmzZqIiYkxeIaqpk2bil3F2rVrp7ZIIwAkJCSga9euYhkAcHBwwODBg/Hcc8+hZs2ayMrKwoMHD3Dq1CmEhYUBKPoxWlpil5OTg969e6u1Jtna2qJ///7o3r07PDw8kJubi8jISJw9exYhISFQKBRYs2aN1i5R5vLhhx/iiy++EB87OTlhypQpaNWqFXJycnDy5Ens3LkTCoUCQFHyunfvXgwcOFBrvdOmTVObZCAiIkJrS4WnpydiY2PRokULdO/eHc2bN4eLiwtSUlJw79497N69W23q3YYNG+LkyZNo0KCB1jgaNmwoJhQtW7ZEp06d8Mwzz8DV1RW2trZITU3F3bt3cfz48RKr3Xft2hUHDx40yjoyRERE1YJAVdLs2bMFAOKftbW1kJ6errF8XFycWnkAwjvvvKP1HBs3bhTLDh8+3Kjx37lzRy2WWbNmlau+Dz/8UK2+q1evligTFxcndO7cucT7oO3v+PHjGs+ZmZkpDBs2TK/61qxZU67XaSoKhUKYM2eOTq9BJpPp/DqmTp2qdmxERITW8rVr19b5vezWrVuZ9Sl5e3vr9f9J+Tdp0iQhLS1Np3MQERFREXbBqqKK35Xv0KGD1ju07u7uaNGihdY6ilMd/6HahckYig8WN7T7labjS1sZ3d3dHWfOnMEff/xR5nStjRs3xuLFi7UOupfL5di1axe2b99e5gDlevXq4Z133imzxcBcJBIJVq5cie3bt2ucVlcqlaJ///64cOGCyVpxJk+eDF9fX61l2rZti1WrViEkJERra4qq7777DuPHj4enp2eZZe3s7DBu3DicOHECgYGBpY6rIiIiIs3YBYsMUlBQAHd3d6SkpEAikSAqKsroCxCa2/3793H+/HnExsYiIyMDTk5O8PLyQtu2bQ1a3fvJkyc4e/Ysnj59itTUVDg4OKBevXpo1aoVmjdvboJXYDrXr1/HtWvXEB0dDVtbW9SrVw9du3ZF3bp1K+T8jx49wsWLFxEZGYmMjAy4uLigTp06aNeuXZkJSlkiIyNx69YtPHr0CCkpKSgoKICTkxNcXV3RokULtGzZEra2tkZ6JURERNUPExAySHBwsDg7UseOHXH+/HkzR0REREREloBdsMggplx8kIiIiIiqLiYgZBBTjv8gIiIioqqLXbCIiIiIiKjCsAWEiIiIiIgqDBMQIiIiIiKqMExAiIiIiIiowjABISIiIiKiCsMEhIiIiIiIKgwTECIiIiIiqjBMQIiIiIiIqMIwASEiIiIiogrDBISIiIiIiCoMExAiIiIiIqowTECIiIiIiKjCMAEhIiIiIqIKwwSEiIiIiIgqDBMQIiIiIiKqMExAiIiIiIiowjABISIiIiKiCsMEhIiIiIiIKgwTECIiIiIiqjBMQIiIiIiIqMJYmzsAKp+EhARzh0BmYmdnB6lUCoVCgZycHHOHQ2TReD0RGRevqeqtVq1aWvczASGyUPb29rCyskJhYSG/3InKidcTkXHxmiJt2AWLiIiIiIgqDBMQIiIiIiKqMExAiIiIiIiowjABISIiIiKiCsMEhIiIiIiIKgwTECIiIiIiqjBMQIiIiIiIqMIwASEiIiIiogrDBISIiIiIiCoMExAiIqrWbt68ic6dO6Njx464evWqucMhIqrymIAQEREREVGFsTZWRXl5eUhJSUF2djbs7e3h6uoKGxsbY1VPRERERERVgMEJSFhYGA4cOIDQ0FBcu3YNT58+hSAI4n6JRAJPT0+0adMGfn5+GDhwIJ577jmjBE1ERERERJZJrwTk8ePH+PXXX7FhwwZERUWp7VNNPpSPY2JiEBMTgwMHDmDx4sWoV68epkyZgtmzZ8PLy6v80RMRERERkUXRaQzIvXv3MGnSJPj6+mLJkiV48uQJBEEQ/2QyGerWrYtWrVqhW7duaNmyJerUqQOZTKZW7smTJ1iyZAkaN26MSZMm4e7du6Z+fURVEgfNEhERkaXS2gKSnJyMRYsWYfXq1SgsLBRbOVq3bg1/f3/4+fmhS5cu8Pb21lhHREQEQkNDERoaipMnT+Lq1asoKChAUFAQtmzZgpkzZ+KLL76Aq6urcV8ZERERERFVOloTkKZNmyIpKQmCIKBu3bp46aWX8OKLL6Jx48Y6n8DHxwc+Pj6YMGECACA8PBzr1q3Dn3/+iejoaPz222/YunUr4uLiyvdKiIiIiIio0tPaBSsxMRG+vr74448/8PDhQ3z66ad6JR+l8fX1xaeffoqHDx/ijz/+gK+vLxITE8tVJxERERERWQatCcjPP/+M27dvY/r06bC2NtqMvQAAa2trTJ8+Hbdv38aKFSuMWjcREREREVVOWrOKV155xeQBWFlZVch5iIiIiIjI/LgSOhERERERVRgmIEREREREVGEMSkBOnDhh8AkLCgrwzjvvGHw8ERERERFZLoMSkH79+mHx4sUlVj8vy/3799G5c2csXbrUkNMSEREREZGFMygBKSwsxGeffQZ/f39ERUXpdMy6devQvn17XL582ZBTEhERERFRFWDQ3Lp16tRBTEwMTp06hTZt2mD16tUYMWJEqWUzMjIwZ84c/PXXX2KLydixYw0OmNRJJBJIpRzKU90U/39uZWVlpkiILB+vJyLT4jVFxRmUgFy7dg1Tp07Fvn37kJSUhICAAMyZMwc//PADZDKZWO78+fOYMGECIiIiIAgC5HI5li1bhhkzZhjtBVR39vb2kMvl5g6DKpiTk5O4LZVK4erqasZoiCwbryci07GysuI1RSUYlIDUrFkTe/bswY8//oiFCxciLy8Pv/76K06dOoWgoCA0b94cS5Yswf/+9z8UFBRAEAS0bt0aQUFBaNasmbFfQ7WWnZ2N3Nxcc4dBFSw9PV3cVigUSE5ONmM0RJaN1xOR8Tk7O8PKygqFhYVIS0szdzhUwcpKOsu1vPncuXPRq1cvjB8/Hvfv38f169fRqVMntGzZEufPnxe7XL3++uv47rvvYGtrW57TUSkEQUBhYaG5w6AKplAo1B7zM0DVzblz54xWV0REBDIyMgAAV65cQUxMjNHq7ty5s9HqIrJU/DeKiitXAgJAHFj+6quvYsOGDcjKyhKTj1q1auGPP/7AsGHDjBErERERAGDo0KEmqdfYXYTj4+ONWh8RUVVglNHLdnZ28PT0BFA0KFr531atWqFr167GOAUREREREVUB5W4BefjwISZMmICwsDBIJBJYWVnBwcEBqampCA4ORps2bbBhwwb07t3bGPESERFhz549Rqvr6NGj+PHHHwEA77//Prp37260uomIqKRyJSBBQUF45ZVXkJaWBkEQ4O3tjU2b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cytzELrSiBEjdConCAKsrKy0lpFIJFV63INy4D4AuLm5aSyn3JecnGzymIiIiIiIKgOdExAA4l390kgkErGVRFu56iAnJ0fclslkGssp93HgPhEREVUVLVq0wLlz52BlZYXCwkLeaKUSdEpAdEkoqnvSQUREREREZSszAVEoFBURR5ViZ2cnbufm5kIul5daLjc3FwBgb2+vsa7AwEBs2rRJ4/7Ro0dj6tSpBkZKlkp1WmypVKpxkVAi0o1UKhX/y+uJqPx4TZE2enXBIt2ojvtISkrSmIAox4pouzAzMzMRFxencX9WVlaZY26o6mnfvj0uXLhg7jCIqhyJRMLvVCIj4jVFpWECYgL169eHRCKBIAiIjIwUp9stLjIyEgDQoEEDjXU5ODjAw8ND4365XI7CwsLyBUwWSSqVip8ztlQSlQ+vJyLj4jVVvZWVdDIBMQF7e3s0adIEd+/exaVLl9C1a9cSZRISEsTpd9u0aaOxrsmTJ2Py5Mka9yckJHBwVzXl6uoKKysrKBQKfgaIyonXE5Fx8Zqq3mrVqqV1PxciNBF/f38AwMmTJxEfH19i//bt2yEIAtzc3NCqVasKjo6IiIiIyDyYgJjIwIED4enpiZycHHz22WeIiIgAUDTwfOvWrdi7dy+AohYOa2s2RBERERFR9SAROH+uyURGRmLRokVITU0FUDReIycnR+wLOXToULz88svlOkdCQkK54yTLpGze5hzrROXH64nIuHhNVW9ldcHirXcT8vLywvLly7Ft2zaEhYUhISEBDg4OaNSoEYYMGQI/Pz9zh0hEREREVKHYAmLh2AJSffHuEpHx8HoiMi5eU9UbB6ETEREREVGlwQSEiIiIiIgqDBMQIiIiIiKqMExAiIiIiIiownAQOpGFCgwMRGZmJhwcHDB58mRzh0Nk0Xg9ERkXrynShgkIkYUaPHgw4uLi4OHhgX379pk7HCKLxuuJyLh4TZE27IJFREREREQVhgkIERERERFVGCYgRERERERUYZiAEBERERFRhWECQkREREREFYYJCBERERERVRhrcwdARIaZOHGiOMc6EZUPryci4+I1RdpwHRAiIiIiIqow7IJFREREREQVhgkIERERERFVGCYgRERERERUYZiAEBERERFRheEsWER6iI2NxaxZswAAq1atQu3atSv0/CtWrMChQ4fw3nvvoVu3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DgICAsw2BTARERGZDxMQIiIiIiKqMOyCRUREREREFYYJCBERERERVRgmIEREREREVGGYgBARERERUYVhAkJERERERBWGCQgREREREVUYJiBERERERFRhmIAQEREREVGFsTZ3AEREVL3k5OTgn3/+wbFjxxAWFoa4uDgkJibC2toaLi4uaNSoEdq2bYt+/frh+eefh52dnblDJiIiI+JK6EREVCEUCgWWLl2Kb775BrGxsTod4+TkhFdeeQXz58+Hu7u7iSMkIqKKwASEiIhMLikpCRMmTMChQ4fE5xo2bIh+/fqhdevWqFmzJiQSCeLj43Hnzh0cP34cd+7cEcu+8847+O6778wROhERGRm7YBERkUnl5eVh+PDhOH36NADA09MTP/30EwICAiCVah6KeOXKFSxduhQbNmyoqFCJiKgCsAWEiIhMat68efjxxx8BAI0aNUJwcDAaNGig8/FhYWG4efMmpk+fbqoQiYioAnEWLCIiMpknT57g559/BgBIpVIEBQXplXwAwHPPPVdq8jFt2jRIJBJIJBI8fPgQAPDPP/9g1KhR8Pb2hkwmU9unaseOHRg3bhwaNmwIuVwOZ2dnNG/eHHPmzMHFixe1xhMcHCyed/HixWXGryzr7+9f6n5/f3+xDFA0VmbNmjXo06cPPD09YWdnB29vb0ybNq3M2IiILAG7YBERkcn8/PPPyMvLAwAMHToUnTp1Msl58vLyMHr0aGzbtk1rufj4eAQEBCAkJKTEvjt37uDOnTv4/fff8corr+Cnn36ClZWVSeLVJC0tDSNGjMDx48fVno+MjMS6desQGBiITz/9FB988EGFxkVEZExMQIiIyGRUB51PmTLFZOd5++23sX//fnh7e+PFF19Es2bNkJOTg7CwMMhkMgBARkYGevbsKQ5ud3d3x/Tp09GmTRvk5eXh5MmTCAwMRH5+Pn755RekpaVV+PiT6dOn4/jx42jcuDGmTp2KJk2aICUlBXv27MGePXtQWFiIRYsWwcnJCW+88UaFxkZEZCxMQIiIyCQyMzNx5coV8XHXrl1Ndq79+/djxIgR+Ouvv9TWDXnppZfE7ffee09MPjp06IADBw6gVq1a4v5p06bhtddeQ//+/ZGcnIzAwEAMGzYMY8eONVncxW3fvh0jR47Epk2b1F7H7Nmz8ddff2HKlCkoLCzEe++9h6FDh8LH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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "for loc in [78, 75, 80, [75, 80]]:\n", + " if loc == 78:\n", + " print(\"[control] intervening location: \", loc)\n", + " pv_llama.interventions[f'layer.{layer}.comp.block_output.unit.pos.nunit.1#0'][0].load_state_dict(\n", + " torch.load('./tutorial_data/layer.15.pos.78.bin'))\n", + " else:\n", + " print(\"intervening location: \", loc)\n", + " pv_llama.interventions[f'layer.{layer}.comp.block_output.unit.pos.nunit.1#0'][0].load_state_dict(\n", + " torch.load('./tutorial_data/layer.15.pos.75.bin'))\n", + " # evaluation on the test set\n", + " collected_probs = []\n", + " eval_labels = []\n", + " eval_preds = []\n", + " with torch.no_grad():\n", + " epoch_iterator = tqdm(test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " if loc == 75 or loc == 78:\n", + " input_sources = [{\"input_ids\": inputs[\"source_input_ids\"]}, None]\n", + " elif loc == 80:\n", + " input_sources = [None, {\"input_ids\": inputs[\"source_input_ids\"]}]\n", + " else:\n", + " input_sources = [{\"input_ids\": inputs[\"source_input_ids\"]}]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " input_sources, {\"sources->base\": loc}\n", + " )\n", + " correct_label = inputs[\"labels\"][:,-1]\n", + " incorrect_label = \\\n", + " ((correct_label == 8241)*3782 + \\\n", + " (correct_label == 3782)*8241).long()\n", + " norm_prob = torch.softmax(\n", + " counterfactual_outputs.logits[:, -1], dim=-1)\n", + " correct_prob = norm_prob[torch.arange(b_s),correct_label].detach().cpu()\n", + " incorrect_prob = norm_prob[torch.arange(b_s),incorrect_label].detach().cpu()\n", + " diff_prob = torch.abs(correct_prob - incorrect_prob)\n", + " collected_probs += [[correct_prob, incorrect_prob, diff_prob]]\n", + " eval_labels += [inputs[\"labels\"]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + " correct_probs = torch.cat([p[0] for p in collected_probs])\n", + " incorrect_probs = torch.cat([p[1] for p in collected_probs])\n", + " diff_probs = torch.cat([p[2] for p in collected_probs])\n", + " eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "\n", + " list1 = correct_probs.tolist()\n", + " list2 = incorrect_probs.tolist()\n", + " list3 = diff_probs.tolist()\n", + " acc = eval_metrics['accuracy']\n", + " df = pd.DataFrame({'Group': ['Correct']*len(list1) + ['Incorrect']*len(list2) + ['Abs(Diff)']*len(list2),\n", + " 'Value': list1 + list2 + list3})\n", + " means = df.groupby('Group')['Value'].mean().reset_index()\n", + " means['ymin'] = means['Value'] - df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " means['ymax'] = means['Value'] + df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " plot = (ggplot(df, aes('Group', 'Value')) +\n", + " geom_boxplot(fill='lightgray', alpha=0.5) +\n", + " geom_point(means, aes('Group', 'Value'), color='blue', size=3) +\n", + " geom_errorbar(means, aes('Group', ymin='ymin', ymax='ymax'), width=0.2) +\n", + " labs(title=f'w/ Acc={acc}', x='Group', y='Prob (Softmax)') +\n", + " theme(figure_size=(4, 2)))\n", + " print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "73312a7b", + "metadata": {}, + "source": [ + "#### Now, what if we set two aligning intervention sites with contradicting values?\n", + "\n", + "We need to write new data generator since we know want two source examples and these two examples have to result in contrasting behaviors." + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "id": "df4bacaf", + "metadata": {}, + "outputs": [], + "source": [ + "def lower_bound_alignment_example_sampler_multisource_non_contradict(\n", + " tokenizer, amount=None, lower_bound=None, bound_width=None\n", + "):\n", + " (\n", + " base_lower_bound_sample,\n", + " base_upper_bound_sample,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " (\n", + " source_lower_bound_sample,\n", + " source_upper_bound_sample,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " (\n", + " source_lower_bound_sample_extra,\n", + " source_upper_bound_sample_extra,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " ctf_label_str = random.choice([\"Yes\", \"No\"])\n", + " if ctf_label_str == \"Yes\":\n", + " ctf_label = tokenizer.convert_tokens_to_ids(\"Yes\")\n", + " base_source_regions = [\n", + " [1, 2],\n", + " [1, 3],\n", + " [2, 2],\n", + " [2, 3],\n", + " ]\n", + " elif ctf_label_str == \"No\":\n", + " ctf_label = tokenizer.convert_tokens_to_ids(\"No\")\n", + " base_source_regions = [[1, 1], [2, 1], [3, 1], [3, 2], [3, 3]]\n", + " base_source_region = random.choice(base_source_regions)\n", + " base_region = base_source_region[0]\n", + " source_region = base_source_region[1]\n", + "\n", + " base_amount_sample = sample_with_region(\n", + " base_region, base_lower_bound_sample, base_upper_bound_sample\n", + " )\n", + " source_amount_sample = sample_with_region(\n", + " source_region, source_lower_bound_sample, source_upper_bound_sample\n", + " )\n", + " source_amount_sample_extra = sample_with_region(\n", + " source_region, source_lower_bound_sample_extra, source_upper_bound_sample_extra\n", + " )\n", + " return (\n", + " base_lower_bound_sample,\n", + " base_upper_bound_sample,\n", + " source_lower_bound_sample,\n", + " source_upper_bound_sample,\n", + " source_lower_bound_sample_extra, # extra bound\n", + " source_upper_bound_sample_extra, # extra bound\n", + " base_amount_sample,\n", + " source_amount_sample,\n", + " source_amount_sample_extra, # extra amount\n", + " ctf_label,\n", + " ctf_label_str,\n", + " ctf_label, # extra label\n", + " ctf_label_str, # extra label\n", + " )\n", + "\n", + "def lower_bound_alignment_example_sampler_multisource_contradict(\n", + " tokenizer, amount=None, lower_bound=None, bound_width=None\n", + "):\n", + " (\n", + " base_lower_bound_sample,\n", + " base_upper_bound_sample,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " (\n", + " source_lower_bound_sample,\n", + " source_upper_bound_sample,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " (\n", + " source_lower_bound_sample_extra,\n", + " source_upper_bound_sample_extra,\n", + " _,\n", + " ) = pricing_tag_game_config_sampler(amount, lower_bound, bound_width)\n", + " ctf_label_str = random.choice([\"Yes\", \"No\"])\n", + " if ctf_label_str == \"Yes\":\n", + " ctf_label = tokenizer.convert_tokens_to_ids(\"Yes\")\n", + " base_source_regions = [\n", + " [1, 2],\n", + " [1, 3],\n", + " [2, 2],\n", + " [2, 3],\n", + " ]\n", + " \n", + " elif ctf_label_str == \"No\":\n", + " ctf_label = tokenizer.convert_tokens_to_ids(\"No\")\n", + " base_source_regions = [[1, 1], [2, 1]]\n", + " \n", + " base_source_region = random.choice(base_source_regions)\n", + " base_region = base_source_region[0]\n", + " source_region = base_source_region[1]\n", + " if ctf_label_str == \"Yes\":\n", + " source_extra_region = 1 # flip the left label\n", + " ctf_label_extra = tokenizer.convert_tokens_to_ids(\"No\")\n", + " ctf_label_str_extra = \"No\"\n", + " elif ctf_label_str == \"No\":\n", + " source_extra_region = random.choice([2,3]) # flip the left label\n", + " ctf_label_extra = tokenizer.convert_tokens_to_ids(\"Yes\")\n", + " ctf_label_str_extra = \"Yes\"\n", + "\n", + " base_amount_sample = sample_with_region(\n", + " base_region, base_lower_bound_sample, base_upper_bound_sample\n", + " )\n", + " source_amount_sample = sample_with_region(\n", + " source_region, source_lower_bound_sample, source_upper_bound_sample\n", + " )\n", + " source_amount_sample_extra = sample_with_region(\n", + " source_region, source_lower_bound_sample_extra, source_upper_bound_sample_extra\n", + " )\n", + " return (\n", + " base_lower_bound_sample,\n", + " base_upper_bound_sample,\n", + " source_lower_bound_sample,\n", + " source_upper_bound_sample,\n", + " source_lower_bound_sample_extra, # extra bound\n", + " source_upper_bound_sample_extra, # extra bound\n", + " base_amount_sample,\n", + " source_amount_sample,\n", + " source_amount_sample_extra, # extra amount\n", + " ctf_label,\n", + " ctf_label_str,\n", + " ctf_label_extra, # extra label\n", + " ctf_label_str_extra, # extra label\n", + " )\n", + "\n", + "def bound_alignment_sampler_multisource(\n", + " tokenizer,\n", + " max_n_training_examples,\n", + " bound_functors,\n", + " amount=None,\n", + " lower_bound=None,\n", + " bound_width=None,\n", + "):\n", + " all_base_input_ids = []\n", + " all_source_input_ids = []\n", + " all_ctf_output_ids = [] # this one does not have input ids, etc..\n", + " all_intervention_ids = []\n", + " \n", + " all_second_source_input_ids = []\n", + " all_second_ctf_output_ids = []\n", + " \n", + " for _ in range(max_n_training_examples):\n", + " bound_functor = random.choice(bound_functors)\n", + " (\n", + " base_lower_bound_sample,\n", + " base_upper_bound_sample,\n", + " source_lower_bound_sample,\n", + " source_upper_bound_sample,\n", + " source_lower_bound_sample_extra, # extra bound\n", + " source_upper_bound_sample_extra, # extra bound\n", + " base_amount_sample,\n", + " source_amount_sample,\n", + " source_amount_sample_extra, # extra amount\n", + " ctf_label,\n", + " ctf_label_str,\n", + " ctf_label_extra, # extra label\n", + " ctf_label_str_extra, # extra label\n", + " ) = bound_functor(\n", + " tokenizer,\n", + " amount,\n", + " lower_bound,\n", + " bound_width,\n", + " )\n", + "\n", + " base_amount_str = \"%.2f dollars\" % base_amount_sample\n", + " source_amount_str = \"%.2f dollars\" % source_amount_sample\n", + " source_amount_str_extra = \"%.2f dollars\" % source_amount_sample_extra\n", + " base_lower_bound_str = \"%.2f\" % base_lower_bound_sample\n", + " base_upper_bound_str = \"%.2f\" % base_upper_bound_sample\n", + " source_lower_bound_str = \"%.2f\" % source_lower_bound_sample\n", + " source_upper_bound_str = \"%.2f\" % source_upper_bound_sample\n", + " source_lower_bound_str_extra = \"%.2f\" % source_lower_bound_sample_extra\n", + " source_upper_bound_str_extra = \"%.2f\" % source_upper_bound_sample_extra\n", + " # print(f\"base: [{base_lower_bound_str}, {base_upper_bound_str}], {base_amount_str}\")\n", + " # print(f\"source: [{source_lower_bound_str}, {source_upper_bound_str}], {source_amount_str}\")\n", + " # print(f\"ctf label: {ctf_label_str}\")\n", + "\n", + " base_instruction = f\"Please say yes only if it costs between {base_lower_bound_str} and {base_upper_bound_str} dollars, otherwise no.\"\n", + " source_instruction = f\"Please say yes only if it costs between {source_lower_bound_str} and {source_upper_bound_str} dollars, otherwise no.\"\n", + " source_instruction_extra = f\"Please say yes only if it costs between {source_lower_bound_str_extra} and {source_upper_bound_str_extra} dollars, otherwise no.\"\n", + " \n", + " base_alpaca_prompt = alpaca_prompt_template % (\n", + " base_instruction,\n", + " base_amount_str,\n", + " )\n", + " source_alpaca_prompt = alpaca_prompt_template % (\n", + " source_instruction,\n", + " source_amount_str,\n", + " )\n", + " source_alpaca_prompt_extra = alpaca_prompt_template % (\n", + " source_instruction_extra,\n", + " source_amount_str_extra,\n", + " )\n", + " \n", + " base_input_ids = tokenizer(base_alpaca_prompt, return_tensors=\"pt\").input_ids[0]\n", + " source_input_ids = tokenizer(\n", + " source_alpaca_prompt, return_tensors=\"pt\"\n", + " ).input_ids[0]\n", + " source_input_ids_extra = tokenizer(\n", + " source_alpaca_prompt_extra, return_tensors=\"pt\"\n", + " ).input_ids[0]\n", + " \n", + " base_input_ids = base_input_ids.tolist()\n", + " source_input_ids = source_input_ids.tolist()\n", + " source_input_ids_extra = source_input_ids_extra.tolist()\n", + " \n", + " ctf_output_ids = (torch.ones(len(base_input_ids)) * -100).long().tolist()\n", + " ctf_output_ids[-1] = ctf_label\n", + " ctf_output_ids_extra = (torch.ones(len(base_input_ids)) * -100).long().tolist()\n", + " ctf_output_ids_extra[-1] = ctf_label_extra\n", + " intervention_id = 0 if bound_functor == bound_functors[0] else 1\n", + "\n", + " all_base_input_ids += [base_input_ids]\n", + " all_source_input_ids += [source_input_ids]\n", + " all_second_source_input_ids += [source_input_ids_extra]\n", + "\n", + " all_ctf_output_ids += [ctf_output_ids]\n", + " all_second_ctf_output_ids += [ctf_output_ids_extra]\n", + " all_intervention_ids += [intervention_id]\n", + "\n", + " assert len(base_input_ids) == 82\n", + " assert len(source_input_ids) == 82\n", + "\n", + " return (\n", + " all_base_input_ids,\n", + " all_source_input_ids,\n", + " all_second_source_input_ids,\n", + " all_ctf_output_ids,\n", + " all_second_ctf_output_ids,\n", + " all_intervention_ids,\n", + " )\n" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "daa4becb", + "metadata": {}, + "outputs": [], + "source": [ + "multisource_non_contradict_test_data = bound_alignment_sampler_multisource(\n", + " tokenizer, 1000, [lower_bound_alignment_example_sampler_multisource_non_contradict]\n", + ")\n", + "multisource_contradict_test_data = bound_alignment_sampler_multisource(\n", + " tokenizer, 1000, [lower_bound_alignment_example_sampler_multisource_contradict]\n", + ")\n", + "multisource_non_contradict_test_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": multisource_non_contradict_test_data[0],\n", + " \"source_input_ids\": multisource_non_contradict_test_data[1],\n", + " \"second_source_input_ids\": multisource_non_contradict_test_data[2],\n", + " \"labels\": multisource_non_contradict_test_data[3],\n", + " \"second_labels\": multisource_non_contradict_test_data[4],\n", + " \"intervention_ids\": multisource_non_contradict_test_data[5], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "multisource_non_contradict_test_dataloader = DataLoader(multisource_non_contradict_test_dataset, batch_size=16)\n", + "\n", + "multisource_contradict_test_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": multisource_contradict_test_data[0],\n", + " \"source_input_ids\": multisource_contradict_test_data[1],\n", + " \"second_source_input_ids\": multisource_contradict_test_data[2],\n", + " \"labels\": multisource_contradict_test_data[3],\n", + " \"second_labels\": multisource_contradict_test_data[4],\n", + " \"intervention_ids\": multisource_contradict_test_data[5], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "multisource_contradict_test_dataloader = DataLoader(multisource_contradict_test_dataset, batch_size=16)" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "id": "bcb96a3d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[control] swapping two sources with the same counterfactual behavior\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [01:04<00:00, 1.02s/it]\n" + ] + }, + { + "data": { + "image/png": "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IiKicsMEhIiIiIiIyg0TECIiIiIiKjdMQIiIiIiIqNwwASEiIiIionLDBISIiIiIiMoNExAiIiIiIio3TECIiIiIiKjcMAEhIiIiIqJywwSEiIiIiIjKDRMQIiIiIiIqN0xAiIiIiIio3NiYOwAqnbi4OHOHQGZib28PKysrqFQqZGVlmTscIovG84nItHhOVW01atTQu50JCJGFcnBwgLW1NfLy8vjlTlRKPJ+ITIvnFOnDLlhERERERFRumIAQEREREVG5YQJCRERERETlhgkIERERERGVGyYgRERERERUbpiAEBERERFRuWECQkRERERE5YYJCBERERERlRsmIEREREREVG6YgBARUZV28+ZNdOzYEe3atUNoaKi5wyEiqvSYgBARERERUbmxMVVF2dnZSEpKQmZmJhwcHODq6gpbW1tTVU9ERERERJWA0QlISEgIDh8+jODgYFy7dg3Pnj2DKIrSdkEQ4OnpiZYtW8Lf3x/9+/dHhw4dTBI0ERERERFZJoMSkEePHuHnn3/GH3/8gSdPnmht00w+1PejoqIQFRWFw4cPY+HChahTpw4mTZqEGTNmwNvbu/TRE1VRN2/exNy5cwEAa9as4flEREREFqNEY0DCw8MxYcIE+Pn5YcmSJXj8+DFEUZT+yWQy1K5dG82bN0eXLl3QrFkz1KpVCzKZTKvc48ePsWTJEjRo0AATJkxAWFhYWT8/IiIiIiKqQPS2gCQmJmLBggVYt24d8vLypFaOFi1aICAgAP7+/ujUqRN8fHx01hEREYHg4GAEBwfj9OnTCA0NRW5uLgIDA7Ft2zZMmzYNX331FVxdXU37zIiIiIiIqMLRm4A0atQICQkJEEURtWvXxquvvoqXX34ZDRo0KPEBfH194evri3HjxgEA7t27h40bN+K3337D06dP8csvv2D79u2IiYkp3TMhIiIiIqIKT28XrPj4ePj5+eHXX3/FgwcP8MUXXxiUfBTFz88PX3zxBR48eIBff/0Vfn5+iI+PL1WdRERERERkGfQmID/++CNu376NKVOmwMbGZDP2AgBsbGwwZcoU3L59G6tWrTJp3UREREREVDHpzSpef/31Mg/A2tq6XI5DRERERETmx5XQiYiIiIio3DABISIiIiKicmNUAnLq1CmjD5ibmystoEZERERERFWLUQlInz59sHDhwkKrnxfn7t27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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "swapping contradicting sources, and evaluate with matching location 75\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [01:07<00:00, 1.07s/it]\n" + ] + }, + { + "data": { + "image/png": "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ERFVch07dkRoaCiWL1+OPn36oGbNmrCysoKjoyPat2+PTz75BPfu3TNoETx9rKys8Mcff+C1114DkNfty9fXF9HR0VIZe3t7bNq0CTdu3MC8efPQqVMnODs7w9LSEgqFAh4eHujfvz8WLlyIixcvIiAgoEQxvYg0V6WfOnUqBEEodh2jR4/GlStX8J///AeNGjWCQqFA1apV0alTJ/z4448ICQlBvXr19NbBnwURlRZBFP9/VCERERGZnZeXF0JCQmBlZYUnT56gZs2aRe4TEBCA3r17AwC++OILrsdBRC80toAQERG9IC5cuICQkBAAwIgRIwxKPoiIyhsmIERERC8AURTx2WefSc9nzZplvmCIiEoRZ8EiIiIyk+vXr+Pp06dISEjA1q1bcfz4cQDA4MGD4e3tbeboiIhKBxMQIiIiM/nxxx/h5+en9ZqLiwv++9//mikiIqLSxy5YREREZmZhYYF69erhrbfewqVLl+Du7m7ukIiISg1nwSIiIiIiojLDFhAiIiIiIiozTECIiIiIiKjMMAEhIiIiIqIywwSEiIiIiIjKDBMQIiIiIiIqM0xAiIiIiIiozDABISIiIiKiMsMEhIiIiIiIygwTECIiIiIiKjNMQIiIiIiIqMwwASEiIiIiojLDBISIiIiIiMoMExAiIiIiIiozTECIiIiIiKjMMAEhIiIiIqIy838gbnubQWGalAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "swapping contradicting sources, and evaluate with matching location 80\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [01:09<00:00, 1.10s/it]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAB7CAAAewgFu0HU+AAB9zklEQVR4nO3dd1hTZ/8/8PcJO4AoCi4EcW9x4wT342qte9a2arX9trVatcMOu6zWLsdTdxWrFuuqe08ciFbBLQ4UUWTvEUbO7w9+OU8CSYAQCIH367q8THLuc59PTnJCPrmXIIqiCCIiIiIiojIgM3UARERERERUeTABISIiIiKiMsMEhIiIiIiIygwTECIiIiIiKjNMQIiIiIiIqMwwASEiIiIiojLDBISIiIiIiMoMExAiIiIiIiozlqYOgIjMz61bt3Djxg08f/4cNjY2qFu3Lrp164batWubOjQiIiIq55iAUKlp0qQJHjx4AAC4du0a2rVrZ/RjDB06FAcPHpTud+/eHefPnzf6cSjPP//8g4ULFyIkJKTANgsLC/Tr1w8///wzWrZsWWox5Obm4s6dO7hy5Yr078aNG8jOzpbKhIWFoX79+gbV/+TJE426r127huTkZGn7xo0b8cYbb5TwWRAREVVeTECoVNy/f19KPtzc3Eol+YiMjMSRI0c0Hrtw4QIePnyIRo0aGf14ld17772H//73vzq35+bm4ujRozh79izWrl2LyZMnGz2GESNG4OjRo0hPTzd63YsXL8bPP/+M2NhYo9dNRERE/8MxIFQq9u/fL90eOnRoqRzjzz//RG5uboHHN23aVCrHq8wWLlyokXw4ODhg5syZ+P333/Hzzz9j+PDhkMnyPk4yMzPx1ltv4eTJk0aP49q1a6WSfADAvXv3mHwQERGVAbaAUKlQT0CGDRtWKsdQTzQaNGiAx48fAwA2b96Mb775RvpCTCVz+fJlfP3119L9Nm3a4PDhw6hTp4702Jw5cxAQEIBXXnkFiYmJyMnJwYQJE/Do0SM4ODiUSlx2dnbw8vJCp06d8OjRI42ueCVlYWGB5s2bo1OnTpDL5XpbfoiIiKh4+A2NjC4hIQEXLlwAAMjlcvTp08fox7h8+TLu3r0LABAEAdu2bYOFhQUA4NmzZ6Xy63tltWDBAum2g4MD9u/fr5F8qPTs2RPr16+X7kdHR2PZsmVGjeX111/HunXrEBwcjOTkZFy8eBHLli1Dx44dS1y3j48PfvnlFwQEBCA5ORk3b97EH3/8gVGjRhkhciIiIlJhCwgZ3eHDh6WuUf369YOtra3Rj7Fx40bpds+ePdGlSxf07dsXx44dk7b379+/RMeIiIhAYGAgoqKikJiYCLlcDnd3d7Rt29agMSaxsbE4f/48Xr58ifj4eNjY2KBOnTpo06YNWrRoAUEQShRvabhz545GMjdr1iy4u7vrLD9y5Eh0795dSkBXrFiBTz/91GitUd98841R6tHmzTffLLW6iYiI6H+YgFQA/v7+GD9+PADAyckJcXFxUmtAfi9fvtSYKtXCwgJxcXFwcnLSWj4zMxNVq1aFQqEAkNe1qrAxHaXd/SojIwP+/v7S/UmTJgEAJk+eLCUg//zzD5KSknQ+L12USiX++usvLFmyBDdv3tRZzsPDAxMnTsTcuXNRrVo1vXUeOnQI3333HQIDAyGKotYyNWvWxJgxYzB//ny4ubkVK+bS9M8//2jcnzZtWqH7TJ06VUpAoqKicPnyZXTt2rU0wiMiIiIzxC5YFYCvr690OykpCdevX9dZ9syZMxr3c3NzERAQoLN8YGCglHxYWFigZ8+eemPJycmRZqYSBAFDhgwpJPri27NnD5KSkgAANjY2GD16NADgtddeg729PYCCSUpRxMTEoGfPnpg0aZLe5AMAnj59ikWLFmmdjlYlPT0dr732GoYMGYJLly7pTD6AvC/qK1aswIkTJ4oVc2k7dOiQdLtRo0ZFmto2f8uTeh1EREREbAGpAGrVqoWmTZvi/v37APKSDF194vMnIKrHdLVqqJf38vIqtEUhICAAiYmJAIAOHTqUysJ06oPPhwwZgqpVqwIA7O3t8dprr2HLli1SuRkzZhSpzpiYGHTt2hWPHj2SHrO3t8d//vMfdO7cGTVq1EBaWhoePXqEgIAAXLt2TW99mZmZ6NOnDy5fviw9Zm1tjb59+6Jnz56oWbMmMjMz8fTpU1y4cAGXLl2CUqks4hkoO+qJmLe3d5H2cXNzg5ubGyIiIgrUQURERMQEpILw9fXVSEDmzp2rtZwqoZDJZNIXXm1JSf7yqmMU5sCBA9Lt0uh+lX+Auar7lfp9VQISGBiIe/fuoVmzZnrrFEURU6ZM0Ug+Ro4ciZUrV6JWrVpa9wkNDcXSpUthZWWldfvs2bM1kg8fHx9s2LABDRs21Fo+IiICy5Ytk1pwyoMXL15oLMBXnHEvDRs2lBIQ1WQBRERERAATkArD19cXa9asAQCcP38eubm5BcaBvHz5UkpSvLy8kJGRgbt37yI4OFjreInMzEwEBgZqHKMwpT3+w8/PT0qcqlWrVqCLV79+/VCrVi28fPkSQF4ryOLFi/XW+c8//+Dw4cPS/fHjx2PLli16B043adIE69at07rt+vXrWL16tXTfx8cHR44c0TsY383NDUuXLtW5ffny5Vi+fLm+p2GwH3/8ESNGjCjweFhYmMZ9fYPP86tXr57OeoiIiKhyYwJSQWgbB5K/G1b+1gxVAqIaB5K/G1Zxx3+Uxern6t2vRo8eDWtra43tFhYWmDBhAn755RcAeYsVfv/99zoH5QOQygJ5g8FXrVpVolmb1OuztbXFpk2bSjwTWHx8vEYLjTGpt3Loe7ywwfa6ymZnZyMzM7NUZkMjIiIi88NB6BWEahyIyunTpwuUUU9AevfurZG0FFa+KOM/Snv184CAAI0v4fm7X2l7/MWLF9LMWNpERUXh/Pnz0v2333672DNnqcvNzdWYOWr06NFFGrhdHqWmpmrcL04CYWdnp7cuIiIiqryYgFQg6gmFrsHmwP9aM4paPn/dupR2AqK+9kf9+vXRo0cPreXatWuHli1bSvfVW03yU08+AGD48OElijE4OFjjy3ZJ61NZuHAhRFEslX9vvPGG1mNmZmZq3M/f2qSPjY2Nxv2MjIxiP2ciIiKqmJiAVCDqSYJqHIhK/vEfTk5OcHV1RfPmzQFAGgeiUtzxHwkJCbh48SKAvNXP+/btW9KnoyEtLQ07duyQ7k+YMEHvwn3qrSB79+5FQkKC1nLqA6Stra3RunXrEsWZf8B1hw4dSlSfKeVv8cjKyiryvqqueyr5W0SIiIio8mICUoGoJwnJyckaU8Xm736Vfx+lUolz585Jjxd3/Mfhw4eRk5MDoHRWP9+xY4dGy4Ku7lcqEydOlBIUhUKBv/76S2u5uLg46bazs7POWa2KSr0+ADpn0TIHDg4OGvfzt4jok7/FI39dREREVHkxAalA8o8DUU86dHWn0tUNqyTjP0pj9iv1blTt27eXWm50qVevnsZzU+++pS4lJUW6bYwvyer1WVpaFuiKZE6qVKmicV9XK5I2qrVgAMDKyooD0ImIiEjCBKSC0TWwPP/4j6KWz19Gm9Je/fzx48carTPXrl2DIAiF/lN/PlevXsXt27cL1O3o6CjdNsZAafX6cnJyCnRFMieenp4a98PDw4u8r3rZ/PUQERFR5cZpeCsYbeuBxMTESOM/2rdvr/HLtqurK1q0aIE7d+4gJCQEiYmJsLW1Ldb4j/Pnz5fq6uebNm2CKIolrmfjxo346aefNB6rXr26dDs+Ph7Z2dkl6oalXh+QN/bGw8PD4PpUTLEOSJ06dVClShVpOt7iTAOsXrawhSCJiIiocmECUsGoJwspKSn4999/8fjxY63b1R+7c+eONA6kSpUqxRr/UZrdr0RRhJ+fn3S/WrVqcHZ2LvL+ycnJiImJAQBs3boVixcvhqXl/972LVq0kG5nZWXh5s2baN++vcHxqtcHAP/++69REhBTrAMCAK1bt8aFCxcAAJcuXSpSfREREdIq6Ko6iIiIiFTYBauC0TYOpLDuVPnHgZSn8R+nTp3S6M6zceNGPHz4sMj/9u3bJ+378uVLqauYSv6pfNXX8DBE27ZtNbphlbQ+Uxs0aJB0++HDh3jy5Emh+xw/flzj/uDBg40dFhEREZkxJiAVkK6EwtLSUmtrhr4EpLDuV6W9+rn64HEnJyf85z//Kdb+3t7eGi0Q+Qeju7q6wsfHR7q/bt06vS0ChbGwsNDozrRjxw48ffrU4PpUTLEOCFBwHZP169cXGuuGDRuk266urvD29jb0aRMREVEFxASkAsqfUKiP/1D/dV7FxcVF6joUEhJSrPEf6q0fxh58npycjN27d0v3hw8fbtCsUmPHjpVuHzhwoMBUuXPmzJFuv3z5Eu+8806JxpzMnj1bup2ZmYk33njDbAejt2zZUmPa5mXLlukdjL5r1y6pyxYAvPfee5DJdH/MvPHGGxoTBxSlhYWIiIjMGxOQCkg9aVBfj0FfMqG+Hkhxxn8cOHBAum3s7lf+/v4a8asnEsWhvl9WVha2bt2qsf2VV17RWLl927ZtGDNmDKKionTW+ejRI8ycOVNafFFd27Zt8d5770n3z5w5g4EDB2qMxckvMjISn3zyicZii+XFokWLpNupqal45ZVXEBkZWaBcQEAApk2bJt13cXHRSMaIiIiIAEAQjTG9EJU7zZo1k1o+VA4fPqyzC9OOHTswZswYjcc6dOiAq1ev6jxGQkICXF1dkZOTA7lcjri4OKOu99CtWzdp4HP16tURGRlp8AxVTZo0kbqKtWvXTmORRgCIjY1Ft27dpDIAYG9vj8GDB6Nz586oXr060tPT8fjxY5w/fx5BQUEA8qYu1pbYZWZmonfv3hqtSdbW1ujfvz969OgBV1dXKBQKhIeH49KlSwgICIBSqcTGjRv1dokylc8//xzff/+9dN/R0RGTJ09G69atkZmZiXPnzmHv3r1QKpUA8pLXgwcPYuDAgXrrfeONNzQmGQgLC0P9+vV1lt+9ezfmz59f4PH4+HiNdUo8PDw0JhtQefjwoc66nz9/rtEdTyUjIwMvXryQ7ru6umptSdy6dSu6dOmis34iIiLKw1mwKihfX1+NBMTS0rLAgOv85YvymLrSXP38/v37GrMujRgxokTT444dOxbfffcdAOD69eu4ceMG2rRpI22vUaMGLly4gGHDhuHy5csAgLS0NOzYscOgVglbW1ucPHkS48aNk7qpZWVl4eDBgzh48KDBz8NUvv32W8TFxWH16tUA8mZY+/3337WWtbGxwerVqwtNPgyRnJxcpNnADBl3k52dXaS6o6OjER0dXeDx/Ku/ExERkXbsglVB5U8eOnTooHelbxcXF7Rs2VJvHfmpj/9Q78JkDPkHixva/UrX/tpWRndxccHFixexYcMGNGnSRG99jRo1wsKFC/UOupfL5di3bx92795d6NS+devWxUcffVQqX9qNQRAErFq1Crt379Y5ra5MJkP//v1x9erVctmKQ0REROUDu2CRQXJycuDi4oLExEQIgoDnz58bfQFCU3v48CGuXLmCqKgopKamwtHREe7u7vDy8jJode+IiAhcunQJL1++RFJSEuzt7VG3bl20bt0azZs3L4VnUHpu3ryJGzdu4MWLF7C2tkbdunXRrVs31KlTx9ShERERUTnHBIQMcubMGWl2pI4dO+LKlSsmjoiIiIiIzAG7YJFBSnPxQSIiIiKquJiAkEFKc/wHEREREVVc7IJFRERERERlhi0gRERERERUZpiAEBERERFRmWECQkREREREZYYJCBERERERlRkmIEREREREVGaYgBARERERUZlhAkJERERERGWGCQgREREREZUZJiBERERERFRmmIAQEREREVGZYQJCRERERERlhgkIERERERGVGSYgRERERERUZpiAEBERERFRmWECQkREREREZYYJCBERERERlRkmIEREREREVGaYgBARERERUZlhAkJERERERGXG0tQBUMnExsaaOgQyEVtbW8hkMiiVSmRmZpo6HCKzxuuJyLh4TVVuNWrU0LudCQiRmbKzs4OFhQVyc3P54U5UQryeiIyL1xTpwy5YRERERERUZpiAEBERERFRmWECQkREREREZYYJCBERERERlRkmIEREREREVGaYgBARERERUZlhAkJERERERGWGCQgREREREZUZJiBERERERFRmmIAQERERkdHcvn0bXbp0QceOHRESEmLqcKgcYgJCRERERERlxtJYFWVlZSExMREZGRmws7NDtWrVYGVlZazqiYiIiIioAjA4AQkKCsKRI0cQGBiIGzdu4OXLlxBFUdouCAJq1aqFtm3bwtvbGwMHDkTnzp2NEjQREREREZmnYiUgz549w+rVq/Hnn3/i+fPnGtvUkw/V/cjISERGRuLIkSNYuHAh6tati8mTJ2PGjBlwd3cvefRERERERGRWijQG5MGDB5g4cSIaNmyIxYsXIyIiAqIoSv9sbGxQp04dtG7dGt27d0erVq1Qu3Zt2NjYaJSLiIjA4sWL0ahRI0ycOBGhoaGl/fyIKiQO8CMiIiJzpbcFJCEhAQsWLMD69euRm5srtXK0adMGvr6+8Pb2RteuXeHh4aGzjrCwMAQGBiIwMBDnzp1DSEgIcnJy4O/vjx07dmDatGn4/vvvUa1aNeM+MyIiIiIiKnf0JiBNmjRBfHw8RFFEnTp18NZbb+H1119Ho0aNinwAT09PeHp6Yvz48QCAR48ewc/PD3/88QdevHiBNWvWYOfOnYiOji7ZMyEiIiIionJPbxesuLg4NGzYEBs2bMCTJ0/wzTffFCv50KZhw4b45ptv8OTJE2zYsAENGzZEXFxcieokIiIiIiLzoDcB+e9//4u7d+/izTffhKWl0WbsBQBYWlrizTffxN27d7Fy5Uqj1k1EREREROWT3qzinXfeKfUALCwsyuQ4RERERERkelwJnYiIiIiIygwTECIiIiIiKjMGJSBnz541+IA5OTn46KOPDN6fiIiIiIjMl0EJSL9+/bBw4cICq58X5uHDh+jSpQt+++03Qw5LRERERERmzqAEJDc3F99++y18fX3x/PnzIu3j5+eH9u3b4/r164YckoiIiIiIKgCD5tatXbs2IiMjcf78ebRt2xbr16/H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MVHrtujoaISHh+vdXxRFpKWl4dq1a/jpp58gCAJatWplULBERERERGTeCk1Afv31V3zzzTcFHhdFETNmzCjWwURRhCAIGD9+fLH2IyIiIiKiiqFIs2CJolisx/WZNGkS3nrrrWLvR0RERERE5q/QBMTLywtTpkzReMzPzw+CIMDX1xfu7u5695fJZHBwcICnpyf69evH7ldERERERJVYoQnIq6++ildffVXjMT8/PwDArFmz8Morr5ROZEREREREVOHoTUBUXaU++OADeHl5SY9PmTIFgiAU2vpBRERERESkTu80vJs2bYKfn1+Bma7OnDmDM2fOFHsldCIiIiIiqtyKNAg9v6dPn0IQBKSnpxs7HiIiIiIiqsD0JiA2NjbIyspCcnJyWcVDREREVG48ffrU1CGYHfVz9uTJE1hZWZkwGvNSWd5vehOQWrVqITw8HEFBQZg0aVJZxURERERULqxfv97UIZid1NRU6fbvv/8OBwcHE0ZD5ZHeBKR79+54+vQpVq9ejaysLLRv3x62trbS9lOnTulcJb0wr7/+ukH7EREREZUmd3d3yOVydjUnk5HL5RV6sie9CcisWbOwfft25ObmYt26dRrbRFHEihUrDDqoIAhMQIiIiKhccnR01DoJDxXNsWPHsGjRIgDAhAkT4OPjY+KIzI+7uzscHR1NHUap0ZuAdOrUCVu2bMEHH3yAmJiYAtsNWQm9tCQlJWHnzp0ICgpCXFwcbGxs0LBhQwwePBje3t7Fri8qKgrTp08vtNzHH3+M7t2769z++PFj7NmzBzdv3kRycjKcnJzQqlUrjBgxAp6ensWOi4iIiEqfo6MjWrZsaeowzNLNmzel225ubjyPVEChs2CNHTsWr732Gq5cuYJnz55BoVDgzTffhCAIeO+999C+ffuyiFOv8PBwLFiwAElJSQAAOzs7pKWlITg4GMHBwRg2bFiRkgldqlSpAplM+4zF1tbWOvc7e/Ysli1bhpycHACAvb094uLicPbsWVy4cAGzZ89Gz549DY6LiIiIiMjcFGkaXmtra41f+d98800AQN++fU2+Enp2dja+++47JCUlwcPDA3PmzIGnpycUCgX27t2LrVu3Yv/+/fD09ES/fv0MOsbPP/+MmjVrFmuf8PBwKfno0aMHpk2bBmdnZ8THx2PdunW4cOECfvvtN3h6esLNzc2guIiI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iI6OxqxZs6T+t/ndvXsXH3/8MVxdXbFu3TqDVsgmIiIi88QEhMgM5OTkYOrUqUhISMDq1auL3Q2rvFm9ejUOHTqESZMmYcyYMaYOh4iIiMoQB6ETmQFLS0tpIG7+wXLmJikpCSdPnoSTk5M0MJKIiIgqDyYgRGZi4MCBqFOnDk6ePKkxg4m5+eeff6BQKDBmzBhpqkMiIiKqPNgFi8iM3LlzB8HBwWjXrh2aN29u6nAM8s8//yAzMxMjR4402RTAREREZDpMQIiIiIiIqMywCxYREREREZUZJiBERERERFRmmIAQEREREVGZYQJCRERERERlhgkIERERERGVGSYgRERERERUZpiAEBERERFRmWECQkREJbZp0yYIggBBELBp0yZTh0NEROUYExAiIjP25MkT6Yt/Sf+98cYbpn46Zqd+/fpGOff169c39VMhIiozTECIiIiIiKjMWJo6ACIiMpyrqyv27Nmjc/utW7fwxRdfAABatmyJ7777TmdZd3d3o8dX0a1duxbp6ek6t7/22mvSbX2vk1wuN2pcRETlGRMQIiIzJpfLMXz4cJ3bq1atKt2uUaOG3rJUfAMGDChyWZ57IqI87IJFRERERERlhgkIEREhIyMDK1euRP/+/VG7dm1YW1ujevXq6NSpEz7//HO8ePHCKMd58OABGjZsKA2+/uabb7SWO3fuHN5++200b94cVatWha2tLerVq4eRI0di165dEEVR5zHUB+arBtYnJiZi0aJFaN++PapWrQp7e3u0aNEC8+bNQ3R0tFGeW3Hk5OSgTp06EAQBVatW1duNSyU1NRVVqlSBIAhwc3NDbm6utO3MmTPSc164cCEA4P79+3j//ffRtGlT2Nvbo1q1avD29savv/4KhUJR5FhL8loQEWklEhFRhXX69GkRgAhA9PHx0VomKChIrFevnlRO2z+5XC5u2LBB53E2btwold24caPO47i4uIgARAsLC3HdunUFyiQkJIhDhw7VGwsAsVevXmJMTIzW44SFhUnlpkyZIv7777+iu7u7zrpq1qwp3rx5s9BzaQj14+T3xRdfSNv++OOPQutas2aNVP7LL7/U2Kb+On/11Veiv7+/KJfLdT7nZs2aiU+ePNF7PGO8FkRE2nAMCBFRJXbjxg307t0baWlpAIAWLVpg8uTJ8PT0RHx8PP755x8cO3YM6enpmDp1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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "print(\"[control] swapping two sources with the same counterfactual behavior\")\n", + "for testing_label in [\"labels\"]:\n", + " collected_probs = []\n", + " eval_labels = []\n", + " eval_preds = []\n", + " with torch.no_grad():\n", + " epoch_iterator = tqdm(multisource_non_contradict_test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " input_sources = [\n", + " {\"input_ids\": inputs[\"source_input_ids\"]},\n", + " {\"input_ids\": inputs[\"second_source_input_ids\"]}\n", + " ]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " input_sources, {\"sources->base\": [75, 80]}\n", + " )\n", + " correct_label = inputs[testing_label][:,-1]\n", + " incorrect_label = \\\n", + " ((correct_label == 8241)*3782 + \\\n", + " (correct_label == 3782)*8241).long()\n", + " norm_prob = torch.softmax(\n", + " counterfactual_outputs.logits[:, -1], dim=-1)\n", + " correct_prob = norm_prob[torch.arange(b_s),correct_label].detach().cpu()\n", + " incorrect_prob = norm_prob[torch.arange(b_s),incorrect_label].detach().cpu()\n", + " diff_prob = torch.abs(correct_prob - incorrect_prob)\n", + " collected_probs += [[correct_prob, incorrect_prob, diff_prob]]\n", + " eval_labels += [inputs[testing_label]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + " correct_probs = torch.cat([p[0] for p in collected_probs])\n", + " incorrect_probs = torch.cat([p[1] for p in collected_probs])\n", + " diff_probs = torch.cat([p[2] for p in collected_probs])\n", + " eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "\n", + " list1 = correct_probs.tolist()\n", + " list2 = incorrect_probs.tolist()\n", + " list3 = diff_probs.tolist()\n", + " acc = eval_metrics['accuracy']\n", + " df = pd.DataFrame({'Group': ['Correct']*len(list1) + ['Incorrect']*len(list2) + ['Abs(Diff)']*len(list2),\n", + " 'Value': list1 + list2 + list3})\n", + " means = df.groupby('Group')['Value'].mean().reset_index()\n", + " means['ymin'] = means['Value'] - df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " means['ymax'] = means['Value'] + df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " plot = (ggplot(df, aes('Group', 'Value')) +\n", + " geom_boxplot(fill='lightgray', alpha=0.5) +\n", + " geom_point(means, aes('Group', 'Value'), color='blue', size=3) +\n", + " geom_errorbar(means, aes('Group', ymin='ymin', ymax='ymax'), width=0.2) +\n", + " labs(title=f'w/ Acc={acc}', x='Token Type', y='Prob (Softmax)') +\n", + " theme(figure_size=(4, 2)))\n", + " print(plot)\n", + " \n", + "for testing_label in [\"labels\", \"second_labels\"]:\n", + " if testing_label == \"labels\":\n", + " print(\"swapping contradicting sources, and evaluate with matching location 75\")\n", + " elif testing_label == \"second_labels\":\n", + " print(\"swapping contradicting sources, and evaluate with matching location 80\")\n", + " collected_probs = []\n", + " eval_labels = []\n", + " eval_preds = []\n", + " with torch.no_grad():\n", + " epoch_iterator = tqdm(multisource_contradict_test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " input_sources = [\n", + " {\"input_ids\": inputs[\"source_input_ids\"]},\n", + " {\"input_ids\": inputs[\"second_source_input_ids\"]}\n", + " ]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " input_sources, {\"sources->base\": [75, 80]}\n", + " )\n", + " correct_label = inputs[testing_label][:,-1]\n", + " incorrect_label = \\\n", + " ((correct_label == 8241)*3782 + \\\n", + " (correct_label == 3782)*8241).long()\n", + " norm_prob = torch.softmax(\n", + " counterfactual_outputs.logits[:, -1], dim=-1)\n", + " correct_prob = norm_prob[torch.arange(b_s),correct_label].detach().cpu()\n", + " incorrect_prob = norm_prob[torch.arange(b_s),incorrect_label].detach().cpu()\n", + " diff_prob = torch.abs(correct_prob - incorrect_prob)\n", + " collected_probs += [[correct_prob, incorrect_prob, diff_prob]]\n", + " eval_labels += [inputs[testing_label]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + " correct_probs = torch.cat([p[0] for p in collected_probs])\n", + " incorrect_probs = torch.cat([p[1] for p in collected_probs])\n", + " diff_probs = torch.cat([p[2] for p in collected_probs])\n", + " eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "\n", + " list1 = correct_probs.tolist()\n", + " list2 = incorrect_probs.tolist()\n", + " list3 = diff_probs.tolist()\n", + " acc = eval_metrics['accuracy']\n", + " df = pd.DataFrame({'Group': ['Correct']*len(list1) + ['Incorrect']*len(list2) + ['Abs(Diff)']*len(list2),\n", + " 'Value': list1 + list2 + list3})\n", + " means = df.groupby('Group')['Value'].mean().reset_index()\n", + " means['ymin'] = means['Value'] - df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " means['ymax'] = means['Value'] + df.groupby('Group')['Value'].std().reset_index()['Value']\n", + " plot = (ggplot(df, aes('Group', 'Value')) +\n", + " geom_boxplot(fill='lightgray', alpha=0.5) +\n", + " geom_point(means, aes('Group', 'Value'), color='blue', size=3) +\n", + " geom_errorbar(means, aes('Group', ymin='ymin', ymax='ymax'), width=0.2) +\n", + " labs(title=f'w/ Acc={acc}', x='Token Type', y='Prob (Softmax)') +\n", + " theme(figure_size=(4, 2)))\n", + " print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "2105ac9f", + "metadata": {}, + "source": [ + "#### The results above show if two intervention sites take on contradicting values, it will trust the earlier site. \n", + "It is hard to say if this would hold till more tests. However, we can see the neural network shows some voting mechanism by trusting some location over another during interventions when these locations take different values. If they have the same value, it seems to working well." + ] + }, + { + "cell_type": "markdown", + "id": "4d2deee7", + "metadata": {}, + "source": [ + "##### Minor: make sure other control models cannot find good alignments\n", + "We test this by training Boundless DAS with the best locations in the paper: layer 15 and last token (81th)." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "e5a9c190", + "metadata": {}, + "outputs": [], + "source": [ + "control_sampler = bracket_alignment_sampler" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "5cb5aa40", + "metadata": {}, + "outputs": [], + "source": [ + "set_seed(42)\n", + "\n", + "###################\n", + "# data loaders\n", + "###################\n", + "raw_data = control_sampler(\n", + " tokenizer, 10000,\n", + ")\n", + "\n", + "raw_train = (\n", + " raw_data[0][:8000],\n", + " raw_data[1][:8000],\n", + " raw_data[2][:8000],\n", + " raw_data[3][:8000],\n", + ")\n", + "raw_eval = (\n", + " raw_data[0][8000:9000],\n", + " raw_data[1][8000:9000],\n", + " raw_data[2][8000:9000],\n", + " raw_data[3][8000:9000],\n", + ")\n", + "raw_test = (\n", + " raw_data[0][9000:],\n", + " raw_data[1][9000:],\n", + " raw_data[2][9000:],\n", + " raw_data[3][9000:],\n", + ")\n", + "train_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_train[0],\n", + " \"source_input_ids\": raw_train[1],\n", + " \"labels\": raw_train[2],\n", + " \"intervention_ids\": raw_train[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "train_dataloader = DataLoader(\n", + " train_dataset,\n", + " batch_size=16,\n", + ")\n", + "eval_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_eval[0],\n", + " \"source_input_ids\": raw_eval[1],\n", + " \"labels\": raw_eval[2],\n", + " \"intervention_ids\": raw_eval[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "eval_dataloader = DataLoader(\n", + " eval_dataset,\n", + " batch_size=16,\n", + ")\n", + "test_dataset = Dataset.from_dict(\n", + " {\n", + " \"input_ids\": raw_test[0],\n", + " \"source_input_ids\": raw_test[1],\n", + " \"labels\": raw_test[2],\n", + " \"intervention_ids\": raw_test[3], # we will not use this field\n", + " }\n", + ").with_format(\"torch\")\n", + "test_dataloader = DataLoader(\n", + " test_dataset,\n", + " batch_size=16,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "0f4d8e82", + "metadata": {}, + "outputs": [], + "source": [ + "layer = 15\n", + "token_position = 81" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "de0d63ad", + "metadata": {}, + "outputs": [], + "source": [ + "pv_config = pv.IntervenableConfig(\n", + " representations=[\n", + " pv.RepresentationConfig(\n", + " layer, \"block_output\"\n", + " )],\n", + " intervention_types=pv.BoundlessRotatedSpaceIntervention,\n", + ")\n", + "pv_llama = pv.IntervenableModel(pv_config, llama)\n", + "pv_llama.set_device(\"cuda\")\n", + "pv_llama.disable_model_gradients()\n", + "\n", + "epochs = 1\n", + "gradient_accumulation_steps = 4\n", + "total_step = 0\n", + "t_total = int(len(train_dataloader) * epochs)\n", + "temperature_start = 50.0\n", + "temperature_end = 0.1\n", + "temperature_schedule = (\n", + " torch.linspace(\n", + " temperature_start, temperature_end, t_total\n", + " )\n", + " .to(torch.bfloat16)\n", + " .to(\"cuda\")\n", + ")\n", + "pv_llama.set_temperature(temperature_schedule[total_step])\n", + "\n", + "warm_up_steps = 0.1 * t_total\n", + "optimizer_params = []\n", + "for k, v in pv_llama.interventions.items():\n", + " optimizer_params += [\n", + " {\"params\": v[0].rotate_layer.parameters()}]\n", + " optimizer_params += [\n", + " {\"params\": v[0].intervention_boundaries, \"lr\": 1e-2}]\n", + "optimizer = torch.optim.Adam(optimizer_params, lr=1e-3)\n", + "scheduler = get_linear_schedule_with_warmup(\n", + " optimizer, num_warmup_steps=warm_up_steps,\n", + " num_training_steps=t_total\n", + ")\n", + "\n", + "def calculate_loss(logits, labels):\n", + " shift_logits = logits[..., :, :].contiguous()\n", + " shift_labels = labels[..., :].contiguous()\n", + " # Flatten the tokens\n", + " loss_fct = CrossEntropyLoss()\n", + " shift_logits = shift_logits.view(-1, config.vocab_size)\n", + " shift_labels = shift_labels.view(-1)\n", + " # Enable model parallelism\n", + " shift_labels = shift_labels.to(shift_logits.device)\n", + " loss = loss_fct(shift_logits, shift_labels)\n", + "\n", + " for k, v in pv_llama.interventions.items():\n", + " boundary_loss = 1.0 * v[0].intervention_boundaries.sum()\n", + " loss += boundary_loss\n", + "\n", + " return loss" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "8a996118", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "llama trainable parameters: 0\n", + "intervention trainable parameters: 16777218\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Epoch: 0: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 500/500 [13:18<00:00, 1.60s/it, loss=0.73, acc=0.75]\n", + "Epoch: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [13:18<00:00, 798.36s/it]\n" + ] + } + ], + "source": [ + "pv_llama.model.train() # train enables drop-off but no grads\n", + "print(\"llama trainable parameters: \", count_parameters(pv_llama.model))\n", + "print(\"intervention trainable parameters: \", pv_llama.count_parameters())\n", + "train_iterator = trange(0, int(epochs), desc=\"Epoch\")\n", + "for epoch in train_iterator:\n", + " epoch_iterator = tqdm(\n", + " train_dataloader, \n", + " desc=f\"Epoch: {epoch}\", position=0, leave=True\n", + " )\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " [{\"input_ids\": inputs[\"source_input_ids\"]}],\n", + " {\"sources->base\": token_position},\n", + " )\n", + " eval_metrics = compute_metrics(\n", + " [counterfactual_outputs.logits], [inputs[\"labels\"]]\n", + " )\n", + "\n", + " # loss and backprop\n", + " loss = calculate_loss(counterfactual_outputs.logits, inputs[\"labels\"])\n", + " loss_str = round(loss.item(), 2)\n", + " epoch_iterator.set_postfix({\"loss\": loss_str, \"acc\": eval_metrics[\"accuracy\"]})\n", + "\n", + " if gradient_accumulation_steps > 1:\n", + " loss = loss / gradient_accumulation_steps\n", + " loss.backward()\n", + " if total_step % gradient_accumulation_steps == 0:\n", + " if not (gradient_accumulation_steps > 1 and total_step == 0):\n", + " optimizer.step()\n", + " scheduler.step()\n", + " optimizer.zero_grad()\n", + " pv_llama.set_temperature(\n", + " temperature_schedule[total_step])\n", + " total_step += 1" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "32e2894a", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Test: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 63/63 [00:43<00:00, 1.46it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'accuracy': 0.68}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# evaluation on the test set\n", + "eval_labels = []\n", + "eval_preds = []\n", + "with torch.no_grad():\n", + " epoch_iterator = tqdm(test_dataloader, desc=f\"Test\")\n", + " for step, inputs in enumerate(epoch_iterator):\n", + " for k, v in inputs.items():\n", + " if v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " b_s = inputs[\"input_ids\"].shape[0]\n", + " _, counterfactual_outputs = pv_llama(\n", + " {\"input_ids\": inputs[\"input_ids\"]},\n", + " [{\"input_ids\": inputs[\"source_input_ids\"]}],\n", + " {\"sources->base\": 75}\n", + " )\n", + " eval_labels += [inputs[\"labels\"]]\n", + " eval_preds += [counterfactual_outputs.logits]\n", + "eval_metrics = compute_metrics(eval_preds, eval_labels)\n", + "print(eval_metrics)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "18a61a22", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/basic_tutorials/Add_Activations_to_Streams.ipynb b/_sources/tutorials/basic_tutorials/Add_Activations_to_Streams.ipynb new file mode 100644 index 00000000..bf30ce7e --- /dev/null +++ b/_sources/tutorials/basic_tutorials/Add_Activations_to_Streams.ipynb @@ -0,0 +1,418 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "88fe760f", + "metadata": {}, + "source": [ + "## Activation Addition" + ] + }, + { + "cell_type": "markdown", + "id": "fcef5dfe", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/frankaging/pyvene/blob/main/tutorials/basic_tutorials/Add_Activations_to_Streams.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "682d1fdf", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"10/06/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "3deec495", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "Interventions have many types: (1) activation swapping, (2) activation addition, or (3) any other kind of operations that modify the activation. In this tutorial, we show how we ca do activation addition." + ] + }, + { + "cell_type": "markdown", + "id": "17476fc2", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "c34ae314", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[2024-01-11 00:31:07,569] [INFO] [real_accelerator.py:158:get_accelerator] Setting ds_accelerator to cuda (auto detect)\n" + ] + } + ], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "e5cb9eb2", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "import pandas as pd\n", + "from pyvene.models.basic_utils import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " AdditionIntervention,\n", + " SubtractionIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene.models.gpt2.modelings_intervenable_gpt2 import create_gpt2\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "0d4487e4", + "metadata": {}, + "source": [ + "### Factual recall with our intervenable module directly" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "1fc15f36", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "def activation_addition_position_config(model_type, intervention_type, n_layer):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " i, # layer\n", + " intervention_type, # component\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " )\n", + " for i in range(n_layer)\n", + " ],\n", + " intervention_types=AdditionIntervention,\n", + " )\n", + " return config\n", + "\n", + "\n", + "config, tokenizer, gpt = create_gpt2()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "151ded21", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The capital of Spain is\n", + "_Madrid 0.10501234978437424\n", + "_the 0.0949699655175209\n", + "_Barcelona 0.0702790841460228\n", + "_a 0.04010068252682686\n", + "_now 0.02824278175830841\n", + "_in 0.02759990654885769\n", + "_Spain 0.022991720587015152\n", + "_Catalonia 0.018823225051164627\n", + "_also 0.018689140677452087\n", + "_not 0.01735665090382099\n", + "\n", + "The capital of Italy is\n", + "_Rome 0.15734916925430298\n", + "_the 0.07316355407238007\n", + "_Milan 0.046878915280103683\n", + "_a 0.03449810668826103\n", + "_now 0.03200329467654228\n", + "_in 0.02306535840034485\n", + "_also 0.02274816483259201\n", + "_home 0.01920313946902752\n", + "_not 0.01640527881681919\n", + "_Italy 0.01577090471982956\n" + ] + } + ], + "source": [ + "config = activation_addition_position_config(\n", + " type(gpt), \"mlp_output\", gpt.config.n_layer\n", + ")\n", + "\n", + "intervenable = IntervenableModel(config, gpt)\n", + "\n", + "base = \"The capital of Spain is\"\n", + "source = \"The capital of Italy is\"\n", + "inputs = [tokenizer(base, return_tensors=\"pt\"), tokenizer(source, return_tensors=\"pt\")]\n", + "print(base)\n", + "res = intervenable(inputs[0])[0]\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)\n", + "print()\n", + "print(source)\n", + "res = intervenable(inputs[1])[0]\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "79cb7ebc", + "metadata": {}, + "source": [ + "### We add a word embedding to all MLP streams at the last position\n", + "In other tutorials, we often pass in `sources` where each of the example is drawn from the training data. Another way to do patching is, instead of passing in real input example, we pass in activations. These activations can be designed off-line in some particular ways." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "0481a874", + "metadata": {}, + "outputs": [], + "source": [ + "# we can patch mlp with the rome word embedding\n", + "rome_token_id = tokenizer(\" Rome\")[\"input_ids\"][0]\n", + "rome_embedding = (\n", + " gpt.wte(torch.tensor(rome_token_id)).clone().unsqueeze(0).unsqueeze(0)\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "78d9a0be", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "_Rome 0.4558262228965759\n", + "_Madrid 0.2788238823413849\n", + "_Barcelona 0.10828061401844025\n", + "_Valencia 0.015630871057510376\n", + "_Lisbon 0.008415448479354382\n", + "_the 0.006678737234324217\n", + "_Santiago 0.006526812445372343\n", + "_Naples 0.0041163465939462185\n", + "_Florence 0.003120437264442444\n", + "_Athens 0.0028584974352270365\n" + ] + } + ], + "source": [ + "base = \"The capital of Spain is\"\n", + "\n", + "_, counterfactual_outputs = intervenable(\n", + " base=tokenizer(base, return_tensors=\"pt\"),\n", + " unit_locations={\n", + " \"sources->base\": 4\n", + " }, # last position\n", + " source_representations=rome_embedding,\n", + ")\n", + "distrib = embed_to_distrib(gpt, counterfactual_outputs.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "3e6e5ff6", + "metadata": {}, + "source": [ + "If you are interested by this work, you can simply think token embeddings at each layer are moved toward the token `_Rome` via the activation addition. Obviouosly, the LM head (which is tied with the embedding matrix) is going to pick out the most similar vectors, which are `_Rome` at the end, and some other countries since they are close to `_Rome`.\n", + "\n", + "You can also read more about this in this paper: [Language Models Implement Simple Word2Vec-style Vector Arithmetic](https://arxiv.org/abs/2305.16130)." + ] + }, + { + "cell_type": "markdown", + "id": "0784203e", + "metadata": {}, + "source": [ + "### Let's have a more systematic analysis of the addition effect of MLP and MHA streams\n", + "We add the word embedding till the `i`-th layer of these streams" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "fe8195d1", + "metadata": {}, + "outputs": [], + "source": [ + "# should finish within 1 min with a standard 12G GPU\n", + "tokens = tokenizer.encode(\" Madrid Rome\")\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "\n", + "data = []\n", + "for till_layer_i in range(gpt.config.n_layer):\n", + " config = activation_addition_position_config(\n", + " type(gpt), \"mlp_output\", till_layer_i + 1\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " unit_locations={\"sources->base\": pos_i},\n", + " source_representations=rome_embedding,\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"mlp_o{till_layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"mlp_output\",\n", + " }\n", + " )\n", + "\n", + " config = activation_addition_position_config(\n", + " type(gpt), \"attention_output\", till_layer_i + 1\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " unit_locations={\n", + " \"sources->base\": pos_i\n", + " },\n", + " source_representations=rome_embedding,\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"attn_o{till_layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"attention_output\",\n", + " }\n", + " )\n", + "df = pd.DataFrame(data)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "81604a1c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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Rq3KNkRERIQee+yxetW98sordeWVV5ocEQAAAAAAQGULFizQfffdJ0maP3++7r33Xs8G1MSwByAAAAAAAADgxUgAAgAAAAAAAF6MBCAAAAAAAADgxdgD0EudPHlSTz75ZJ3qjB49WqNHj26kiAAAAAAAAOAJJADPA7U5WOSXXC6Xzpw5U6c6BQUFdSoPAAAAAACApo8EoJeqT9IQAAAAAAA0P2vWrNENN9wgSXr22Wf13HPP6ccff9Q777yjr776SqmpqfLz89NFF12kcePG6dFHH5W/v3+VbV1wwQU6fPiwunbtqkOHDqmoqEjvvfeelixZoh9//FEnTpxQly5ddOjQoQr1CgoK9P7772vZsmVKSkrSqVOnFBISou7du2vYsGF69NFH1alTpzrd1+bNm/X3v/9da9euVVpamux2u3r37q1Jkybpvvvuk9XafHbGIwEIAAAAAAAAt0WLFmnKlCnKz893P5efn6/vv/9e33//vf7xj38oMTFRXbt2rbGdQ4cO6dZbb1VSUlKN5X744QeNGTNGR44cqfD86dOndfr0aW3evFmvv/663n77bU2ZMqVW9/DGG2/o//7v/+R0Ot3PFRYWas2aNVqzZo3++c9/avny5QoLC6tVe+c7EoAAAAAAAACQJG3ZskUvv/yySkpKNGHCBA0ZMkSBgYHavXu3/vnPf+rYsWPat2+fbrjhBm3btk2hoaFVtlNUVKTbb79dSUlJuvLKKzV27FiFh4fr9OnT2r17t7vczp07dcMNNygvL0+SdMkll+juu+9Wt27ddPr0aS1dulRfffWV8vPzdf/998swDN1///013sO///1vxcfHy8/PT/fff7+uueYa2Ww2bdmyRf/85z+VlZWljRs3avjw4frmm2/k4+P96THvv0OgDkocTskwPB2G1zBcLhlFxbJ4OhBvYrFIPtbS/6LhnE6psFj8JTVHcUaRjucEy+rr6Ui8S7HLKbung2gEjmKHp0PwLrx/aRyGwZhrEsMiOYMDeDlN4gr0k5wG72FMVlLiPHuhZmD58uUKCgpSYmKioqOjK1z7v//7P91888369ttv9fPPP+upp57S3Llzq2zn+PHjOn78uF5++WU99dRTVZZxuVyaOHGiO/n3wAMPaM6cORUSco888ojef/99TZ06VYZh6Le//a2GDBmiCy64oNp7+Oyzz9SuXTutXLlSvXr1cj8/ceJE/e53v9PgwYP1008/6fvvv9crr7yi//f//l8tX53zFwlAoByLS7LwM980lkKHLKfOeDoMr2Lx8ZGPy9NReA+jsFCu4yc9HYbXOOPnrzWZPT0dhtcZ1cWuMC/cnsaQRbJ44Y15ilWlH2rAXGSrzBMcKMfF4Z6Owmu4rJKNz1FMZ+GzFLeXX365UvJPklq2bKklS5aoZ8+eys3N1YIFC/TCCy+obdu2VbZz2223VZv8k6T//Oc/7uXBffr00dy5c2Wz2SqVu//++7V582bNnTtX+fn5evPNN/X666/XeA/vvfdeheRfmfDwcC1atEiXXXaZXC6X3njjDf3ud7+Tn59fje2d73jXBZTj41v5Bw0AAJ5ks3jnlEpfPz6HBgA0Lb78PiipNMk3derUaq937txZEydOlFS6zPff//53tWV/+9vf1tjXZ5995v76ySefrDL5V+b//b//J8t/P5gpX68qPXv21K233lrt9f79++vXv/61JCk9PV3ffPNNje15AxKAAAAAAAAAkCRde+21CggIqLHMjTfe6P5606ZNVZax2Wy6+uqra2zn+++/d389dOjQGst27dpVPXuWrjZJSUnRsWPHahVfbcpUdw/ehAQgAAAAAAAAJEkXXnhhncqkpaVVWaZ169ZnTSSWJfFCQkLUoUOHs/bbo0ePSnXPFl9tylR3D96EtReNaOXKlUpPT1fv3r3Vu3fvKsvk5uYqISFBkjRy5EgFBwefyxAbjWEYWrt2rVavXq2DBw8qNzdXfn5+at++vfr376+RI0eqdevWng4TAAAAAACUY7ef/fix8mVycnKqLBMYGHjWdsrq1qZPSRVyJtX1W9v2anMP3oQEYCNauXKlezPL6hKAeXl5iouLkyQNGTLEKxKAxcXFmjVrlrZu3ep+LigoSIWFhTp06JAOHTqkxMREPfPMM+rTp48HIwUAAAAAAOWVnchb2zIhISH17iskJERnzpypVZ9S6SSq2vR7Lu/hfEECEKZbvHixO/l311136ZZbblFISIicTqd27typuXPn6tixY/rb3/6m9957T/7+/h6OGAAAAAAASNKBAwfqVKZTp0717qtjx446c+aMcnJylJ6ervbt29dYfv/+/bXq91zew/mCPQBhujVr1kiSBg8erLvuusudSbfZbOrfv79+//vfS5KysrK0e/duT4UJAAAAAAB+Yf369SoqKqqxzNdff+3++oorrqh3X+XrfvXVVzWWTUlJ0b59+yRJERERNe4ZuGLFirP2bdY9nC+YAVgLubm52rBhg7Zu3arU1FSdOnVKDodDrVu3Vt++fTVq1KgK2eKVK1fqzTffdH8fFxfnXuZbJiEhQTExMe4lwpIqHbM9ePBgPf7445KkhQsXKi4uTr169dKsWbO0ZcsWLV26VMnJySouLlZ4eLiGDRum4cOHm3rvmzdvVmJiovbv36/c3FwFBwerR48eGj58uAYMGFBlnczMTElSVFRUlde7desmm80mp9OpwsJCU+MFAAAAAAD1d+bMGb333nv6zW9+U+X1Y8eO6aOPPpIk+fv765Zbbql3X2PGjNGCBQskSa+++qomTJggm81WZdm//OUvMgzDXa8m+/bt03/+8x+NGDGiyus7duxwJwk7dOiga6+9tp53cP4gAVgLCQkJ7gSezWZTUFCQioqKdOzYMR07dkxr1qxRTEyM+vXrJ0ny8/NTy5YtlZubK4fDoYCAgCpPvgkODlaLFi2UnZ0tSWrRooWs1v9Nyqxu08olS5boww8/lNVqVWBgoIqLi3Xw4EHNmTNHx44d05QpUxp8z4ZhaM6cOUpMTJQkd1/Z2dnatGmTNm3apJtvvlkPPfSQLBZLhbrt27dXampqtVNuf/75ZzmdTlmtVnXr1q3BsQIAAAAAAPM89dRT6t27t6677roKz2dnZ+vOO+90H5px3333qW3btvXu5+abb1bv3r21a9cu7dixQ4888oj+/ve/y8enYrpqwYIFmjt3rqTSMwYee+yxs7Z9//33a9WqVbrkkksqPJ+WlqZx48bJ6XRKkh5//HH5+vrW+x7OFyQAa6FVq1aaOHGiLr/8ckVERLhnrx06dEixsbHasmWLXn31Vc2bN08BAQEaNGiQBg0a5J7hN2rUKE2YMKFSuzExMUpPT3fP/Hv11VfPut79559/1p49ezRx4kSNGDFCwcHByszM1LvvvquNGzdq2bJluvHGGxUREdGge162bJk7+TdmzBiNGTNGwcHBysnJ0ZIlS7R06VJ9/vnn6ty5s2699dYKdYcNG6b3339fq1atUocOHTRixAj3HoC7du3SnDlzJJX+Q+/YsWOD4gQAAAAAAOa55ZZbtGLFCg0ePFjjx4/XkCFDFBgYqD179uj9999XWlqapNLVfX/5y18a1JfValVsbKyuvvpq5eXlad68efr22291991364ILLtDp06cr5Cck6a233lLXrl1rbPf2229XfHy8BgwYoHvvvVdXX321bDabtm7dqvfff19nzpyRVLr098knn2zQPZwvSADWwk033VTpOZvNpsjISMXExOjxxx/XkSNHtGHDBg0ZMqRRY8nLy9OkSZN05513up8LCwvTE088od27dysrK0sbN25sUAKwqKhIixYtklT6D3/y5MnuayEhIZoyZYoKCgr05ZdfKi4uTkOHDq1wkMctt9yikydP6t///rcWLlyohQsXuk8Bdrlc6ty5sx566KFqp+ICAAAAAADPGDBggO6++27dd999+uijj9zLfcu76KKLlJiYqBYtWjS4vz59+mj16tW6/fbblZqaqqSkJD311FOVygUFBemtt97S/ffff9Y2b731Vl133XV68sknNXfuXPfswfKuuuoqLV++vNJsQ2/FISAN5Ovr6176u3fv3kbvz8/PTyNHjqz0vL+/v/r37y9JOnz4cIP62LZtm/Ly8mS1WnXHHXdUWWb8+PGyWq3KycnR9u3bK1yz2Wy677779NBDD7mn0ebn58vlckkqTTCWJQMBAAAAAEDTcuedd2rr1q36zW9+owsvvFBBQUEKDQ3V5ZdfrldffVU7duzQBRdcYFp/AwcO1P79+/XWW29pyJAhat++vXx9fRUWFqYBAwYoJiZGP/30U62Sf2Uee+wxfffdd7r33nvVrVs3BQQEqFWrVrr++uv13nvv6ZtvvlGrVq1Mu4emrnmkOU2Qmpqq5cuXa/fu3Tpx4oQKCwvdm0+WOX36dKPH0aVLlyr3E5Sk1q1bSyo9tKQhyvbu69Kli8LCwqrtKzw8XCkpKUpOTq5wYs6ZM2c0a9Ys7du3T9HR0e5DUs6cOaMtW7YoNjZWH3zwgQ4ePKgZM2Y0KFYAAAAAAGC+iy66SO+8806d6x06dKhe/QUGBmr69OmaPn16verfe++9uvfeeys8d9lll2n+/Pn1as/bkACshXXr1umNN96Qw+GQJFksFgUFBblntxUWFqqwsPCsx2SbITAwsNprZfGUbWRZX2WHkpQlFKvTunVrpaSkuNfOl3n99de1b98+DRkypMLGnGX7AXbp0kUzZ87U+vXrNXjw4GpPEwYAAAAAAEDDkQA8i6ysLM2ePVsOh0OXXnqp7rnn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YwBooYSEBGRnZ2POnDl46KGHsHPnTuzfvx/Xrl2DSqVCREQE5s2bh86dOwNoHAq7Y8cOnDx5EhUVFejevTuio6PxwAMPQCYzL20vKirCwoULAQCbN2+GVqvF9u3bcfr0aajVanTr1g0TJkxAXFycpENqr1y5gtTUVJw+fRrl5eXw8fFBaGgoIiMjER0dDblc3uqcy5cv47vvvgMALFmypEX4R0RERERERETOV1GvtsMcgK7HncJMWzEAtFJDQwNeeuklnD592jCUtaysDHv37kVOTg5effVVFBQU4OWXX4ZGo4FSqYROp0N+fj62bt2KkpISQ6hniXPnziExMRG1tbVQKBQQRREFBQVISUnB0aNHsWbNGqhUKpvvb9++fXj77bfR0NAAAFAqldBqtTh79izOnj2LrKwsvPjii62utX//fgBA//79ERoaanMdRERERERERCStKl0tGvRGAkD3zwQNqaAoelY8yADQSl999RV8fHywcuVKREREQBRFHDt2DOvXr0dBQQGSk5Nx7NgxDB06FAsXLkTPnj1RXV2NDz74ABkZGdi1axemTJmCvn37WnTdd955B3379sXTTz+N/v37Q6fT4eDBg9i0aRMuXbqETZs2YcWKFTbd24ULFwzhX0REBBYtWoRevXqhvr4eBw4cwLvvvotz587hrbfeQkJCQotzz549CwAYMGAANBoNtm/fjm+//RYlJSVQKpUYOHAgpk6div/3//6fTTUSERERERERkXW6+3VHsba89Y6bMjF3yQONRX2C4C53Zx7zxqBSKxqNBitWrMCYMWMgk8kgl8tx5513YubMmQB+DwgTEhLQs2dPAIBCocDixYvRq1cviKKIw4cPW3xdLy8vrFq1Cv379zd8HhUVhSVLlgAADh06hCtXrth0b0lJSWhoaEBYWBief/559OrVCwDg7e2NyZMn4+mnnwYAfPfddzh//nyLcwsLCw0fL1++HKmpqbh+/Tr8/PxQWVmJ48eP4x//+Af+/e9/21QjEREREREREVlJFCCasendYdMbvzdPwwDQSkOGDMHw4cNbvT5q1CjDxzNmzGg1T55MJsOIESMANM6XZ6mYmBgEBAS0ej0yMhLdu3cHAKuCxSZqtRonT54EAMyaNQteXq07iU6cOBF9+vQBAHzzzTetzgeArKwsXL9+HU888QRSUlKQnJyMrVu34t57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hkmTJtlUJxERERERERFZQRTdfGtavaSNYzwMewB2MIsXL0ZiYiKWLl0KpVKJuro61NfXAwAGDBiAp556yuZrDBo0CEuXLsXbb7+N48eP4/jx41AqldBqtdDpdACAIUOGYOnSpa3OLS8vR1JSEpKSkiCXy6FQKKDT6VBTU2M4pk+fPnj++efh7+9vc61EREREREREZCHJQzBnDadt7x48L+gzhQFgBzNkyBC8/vrr2LZtG7Kzs6HVatG7d29MmDABcXFx8PX1leQ6UVFRCA8PR2pqKk6dOoXy8nL4+voiPDwckZGRiI6ObjU0GACWLVuGEydO4MyZM7h+/ToqKysBNHZ7HjBgAO68805MnDgR3t7ektRJRERERERERFaQNABsasveQaDY8kPPmsbPJgwALbR27do29/fo0QPp6eltHjN37lzMnTu31etbtmwxq4bQ0FCsWLHCrGNtERoaimeeecaic4YPH47hw4fbqSIiIiIiIiIispkIO3WOM9KoLSGdPTv4eVjnQAaARERERERERESexJHz4N18mfZW3/XA+fkcgQEgEREREREREZEnceZCGE3XbQoCnRb4eVbQyACQiIiIiIiIiMijuMBKuM6+vodhAOimrl+/jmeffdaic2bOnImZM2faqSIiIiIiIiIicgkiGMB5GAaAHYA5C4vcTK/X48aNGxadU1NTY9HxRERERERERNQBOXMIMDkFA0A3ZU1oSEREREREREQegvmfR2EASERERERERETkSdgD0OMwACQiIiIiIiIi8iQMAD0OA0CiZup1DfwlKCW9CNTUQXB2He5EFAEfL0DgV1USej1EbR2/nhIR9AK8K7whyvn1lFJ9fYOzS7ALXZ3O2SUQkUMJ0Cv9IfCZKw1RBLT1EPjfLpKq96RnExcB8TgMAImaEUQRAn8HSkaorYd3QZmzy3AropccCFI5uwy3IVbXAvlFzi7DfXRRIqhPMDihjLS8a9zz6ykKgCBjECAVURT5rx65NpUCGHwLf0ylUlUN2cWrzq7CDXnOT2hDvY4BoIdhAEjUjLeX3NklEBERteAtd89nk7cP/wwlIiLX4knPpryL1wBR70mZ5+8EeOQIIM/56SYiIiIiIiIiIvQb1As3iiqcXYZz6D0x9WQASERERERERETkYcTG6SMs0dF6zXGIcwsMAO0oMzMTRUVFGDFiBEaMGGH0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X6TkvjgEmKgZby+5s0sgIiJqwV2fTd4+fB+aiIhcC59N5M4YABIREREREREREbkxBoBERERERERERERujP1b7SgzMxNFRUUYMWIERowYYfQYtVqN9PR0AEBsbCxUKpUjS7SL69ev49tvv8WpU6fw66+/oqysDF5eXujWrRtGjRqF+++/Hz179nR2mUREREREREREHoEBoB1lZmYiOzsbAEwGgBqNBikpKQCASZMmdfgA8Pr163jiiScaJ6L+jUKhQF1dHa5evYqrV69iz549WLZsGe655x4nVkpERERERERE5BkYAJKk9Ho9AOD2229HVFQURo0ahcDAQDQ0NODs2bN477338Ouvv+KNN95ASEgIbrnlFucWTERERERERETk5jgHIElKpVJh/fr1WLVqFSZMmIDAwEAAgFwux/Dhw/Hyyy8jKCgIOp0OaWlpTq6WiIiIiIiIiMj9sQegGdRqNQ4fPowffvgBeXl5KC0thU6nQ5cuXTBy5EjMmDEDvXv3NhyfmZmJN9980/B5SkqKYZhvk/T0dCQkJBiGCAPAwoULWxwTFRWFZcuWAQCSk5ORkpKC4cOHY+3atThx4gR27tyJ3Nxc1NXVISQkBPfddx9iYmIkvffjx48jIyMDFy5cgFqthkqlwqBBgxATE4OIiIhWxyuVSgwYMMBke506dUJERAT27duH3NxcSWslIiIiIiIiIqLWGACaIT093RDgyf9/e3ceHlV99///dSb7zIRAWBQJiSERqQpIKe7YCBRkrRYUClTuomhLpZuX17dGUATltr21LjRFb2y1d5EiaIEUJdayF6usIqFAICoBEpaQEJLJOpnz+4NfpsEkZDvDJIfn47q8rmHO+XzO+xwD78l7PktIiJxOpyoqKpSXl6e8vDxt3LhRqampuvHGGyVJ4eHh6tixo0pKSuT1ehUZGanIyMg6/brdbnXo0EHnzp2TJHXo0EEOx38GZbpcrnrjWbFihf785z/L4XAoKipKlZWV+uKLL7Ro0SLl5eVp+vTprb5n0zS1aNEiZWRkSJL/WufOndO2bdu0bds2jRo1So888ogMw2hW3zWjAqurq1sdJwAAAAAAAC6OAmATxMbGasqUKbrpppsUHx+vkJAQVVdX66uvvtKSJUu0c+dOvfjii1q8eLEiIyM1ePBgDR482D/C75577tHkyZPr9JuamqqTJ0/6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1qxZI9M0ZRiG4uLilJCQoNjYWP+HjoqKChUUFCgnJ0dHjx71nztmzBg99NBDQb4D+zh37px+8IMf8G3l1/zzn//USy+9pOrqav8vyoZhSJJuvvlmzZo1S263u962/DJyIdM0NXv2bO3bt++CooNhGBo3bpzuvfdezZo1S8XFxQoLC1N0dLSKiopUXV0twzA0aNAgPfnkk0G8g7bllVdeafK5Pp9PGzdulGEYuuuuu/zvG4ahn/70p4EID20QObftIOfWj5xrHXKutci5QPvCCECgjfnkk0/0t7/9TYZhaNSoUfre976nrl27XrTNmTNn9N577+mDDz7QmjVr1K9fP910002XKGJcbk6cOKFXXnlFXq9XHTp00Le+9S116NBBmZmZOnz4sD799FMdOXJE8+bNU7du3YIdbpu3adMmZWZmKiQkRN/73vfUu3dv7d+/XytXrtT7778vwzBUWlqqGTNmaMSIEQoLC1N5eblWrVqlZcuWafv27dq9e3ejo0AuF+vXr/f/YtxUpmlqw4YN/tf8MnL5IOeirSPnWoucay1yLtC+UAAE2pi1a9fKMAxNmTJF9913X5PadO7cWQ8//LBiY2P15z//We+//z6/jCBg/va3v6myslJXX321nnnmGXXs2NF/7JNPPlFaWpry8vL0q1/9SvPnz1ePHj2CF2w7sHnzZv/f+fHjx0uSbrrpJjkcDr377rtavXq1xo4dqzFjxvjbREZGatKkSTp79qzWrl2rTZs28cvI1/To0eOCn8361Ew3NAxD119//aUJDG0KORdtHTnXWuTcwCDnAu0DBUCgjcnOzpbD4dB3v/vdZrcdN26c3n77bWVnZwcgsvYrMzOzxW1LS0stjMQe9uzZI8Mw9Mgjj9T5sHfLLbcoKSlJ8+fP15EjR5Samqp58+YpISEhOMG2A1988YUk6Tvf+c4F799111169913JZ3/u12fMWPGaO3atTp06FBgg2xHBg0apO3bt6uwsFCjR4/WqFGjGjy3rKxMkyZNkiQ999xzlypEtCHkXOuRc61FzrUWOdda5FygfaEACLQx5eXlioiIUHh4eLPbhoeHKzIyUuXl5QGIrP168sknmz09AQ07ffq0QkJC1KdPn3qPd+3aVf/93/+tuXPnKisrS08++aTmzp2r5OTkSxxp+3Du3DlFRESoQ4cOF7xfMw0xLCyswSmJcXFxCgsLU35+fsDjbC9mz56trVu3avHixfrf//1fbdiwQTNnzlRiYmKdc/l3AeRc65FzrUXOtRY511rkXKB9cQQ7AAAX6tKli8rKynTkyJFmt/3qq69UWlra6PpFlyvTNFv0Hy7k9XoVHh4uh6PhFOJyuTR//nxdd911Ki4u1pw5c3TgwIFLGGX70dBugjXvu1yui7aPiopSVVWV5XG1Z7fffrt+//vf6zvf+Y4OHTqkxx57TH/4wx8o1KAOcm7gkHOtQc61FjnXeuRcoP1gBCDQxgwaNEjp6en67W9/q6eeekqdO3duUrszZ87opZde8u9Qhv+IiYnRuXPn9Mtf/lLf+ta3mtW2uLhYjzzySIAia586deqk/Px8FRcXKzo6usHzIiMjNXfuXM2fP1979+7V3LlzNXv27EsYafsQExOjEydOqLy8XJGRkc1uX1ZWVmckAySn06mf/OQnuuuuu/S73/1O6enp2rp1qx566CHddtttwQ4PbQQ513rkXGuRc61Fzg0Mci7QPlAABNqY++67Txs3btSRI0c0c+ZM3XnnnRowYIASEhIUGxvr/4ayoqJCBQUFysnJ0a5du7R582aVl5erY8eOmjBhQpDvom1JTk7Wrl27lJub2+g3u19XXV0doKjar8TEROXn52vPnj264447LnpuRESEnnrqKT333HP67LPPNG/ePPl8vksUaftw1VVX6cSJEzp+/LiSkpIuOLZ06dKLTpk5ffq0qqqqFBsbG+gw263rrrtOr776qpYvX6733ntPv/nNbzRw4EA98sgj/BIHcm4AkHOtRc61Fjk3sMi5QNtGARBoYzp06KDnnntOzz77rE6ePKmPPvpIH330UaPtTNPUFVdcodmzZ5NgvyYpKUk7d+5koXaL9OvXT9u2bdP69esb/WVEOr9O1uzZs/X8889rx44dklgHprbk5GTt3LlT+/btq/PLSGO/PO/evVuSdM011wQsPjsIDQ3V5MmTNXjwYKWlpWnHjh3KzMzU2LFjgx0agoycaz1yrrXIudYi5wYeORdou1gDEGiD4uPjlZaWphkzZvgXcb7YWjnXXHONZsyYobS0NMXHxwcz9Dap5gPe4cOHgxyJPdx6662SpF27dunLL79sUpuwsDClpqb62+I/br75Zo0YMUJut7vZbdeuXSvp/C+IaFzPnj31/PPP68c//rEcDod/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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df[\"layer\"] = df[\"layer\"].astype(\"category\")\n", + "df[\"token\"] = df[\"token\"].astype(\"category\")\n", + "nodes = []\n", + "for l in range(gpt.config.n_layer - 1, -1, -1):\n", + " nodes.append(f\"mlp_o{l}\")\n", + " nodes.append(f\"attn_o{l}\")\n", + "df[\"layer\"] = pd.Categorical(df[\"layer\"], categories=nodes[::-1], ordered=True)\n", + "\n", + "g = (\n", + " ggplot(df)\n", + " + geom_tile(aes(x=\"pos\", y=\"layer\", fill=\"prob\", color=\"prob\"))\n", + " + facet_wrap(\"~token\")\n", + " + theme(axis_text_x=element_text(rotation=90))\n", + ")\n", + "print(g)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/basic_tutorials/Basic_Intervention.ipynb b/_sources/tutorials/basic_tutorials/Basic_Intervention.ipynb new file mode 100644 index 00000000..35d9b598 --- /dev/null +++ b/_sources/tutorials/basic_tutorials/Basic_Intervention.ipynb @@ -0,0 +1,364 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "df3b00a9", + "metadata": {}, + "source": [ + "## Interchange Intervention" + ] + }, + { + "cell_type": "markdown", + "id": "89f31a38", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/frankaging/pyvene/blob/main/tutorials/basic_tutorials/Basic_Intervention.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "d4afb217", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Aryaman Arora and Zhengxuan Wu\"\n", + "__version__ = \"10/05/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "1488cea4", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "This tutorial aims to reproduce some of the results in this [notebook](https://github.com/aryamanarora/nano-causal-interventions/blob/main/The%20capital%20of%20France%20is.ipynb) for path patching or causal scrubbing. This library could potentially support other kinds of interventions that were not originally supported by previous works." + ] + }, + { + "cell_type": "markdown", + "id": "0f10fade", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "474750ab", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[2024-01-11 01:18:09,028] [INFO] [real_accelerator.py:158:get_accelerator] Setting ds_accelerator to cuda (auto detect)\n" + ] + } + ], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "9c684415", + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import pyvene\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import RepresentationConfig, IntervenableConfig, IntervenableModel\n", + "from pyvene import VanillaIntervention\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "aaf70de7", + "metadata": {}, + "source": [ + "### Factual recall" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "56cc896c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "The capital of Spain is\n", + "_Madrid 0.10501234978437424\n", + "_the 0.0949699655175209\n", + "_Barcelona 0.0702790841460228\n", + "_a 0.04010068252682686\n", + "_now 0.02824278175830841\n", + "_in 0.02759990654885769\n", + "_Spain 0.022991720587015152\n", + "_Catalonia 0.018823225051164627\n", + "_also 0.018689140677452087\n", + "_not 0.01735665090382099\n", + "\n", + "The capital of Italy is\n", + "_Rome 0.15734916925430298\n", + "_the 0.07316355407238007\n", + "_Milan 0.046878915280103683\n", + "_a 0.03449810668826103\n", + "_now 0.03200329467654228\n", + "_in 0.02306535840034485\n", + "_also 0.02274816483259201\n", + "_home 0.01920313946902752\n", + "_not 0.01640527881681919\n", + "_Italy 0.01577090471982956\n" + ] + } + ], + "source": [ + "config, tokenizer, gpt = pyvene.create_gpt2()\n", + "\n", + "base = \"The capital of Spain is\"\n", + "source = \"The capital of Italy is\"\n", + "inputs = [tokenizer(base, return_tensors=\"pt\"), tokenizer(source, return_tensors=\"pt\")]\n", + "print(base)\n", + "res = gpt(**inputs[0])\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)\n", + "print()\n", + "print(source)\n", + "res = gpt(**inputs[1])\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "d532a8e8", + "metadata": {}, + "source": [ + "### Patch Patching on Position-aligned Tokens\n", + "We path patch on two modules on each layer:\n", + "- [1] MLP output (the MLP output will be from another example)\n", + "- [2] MHA input (the self-attention module input will be from another module)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "73c4ade3", + "metadata": {}, + "outputs": [], + "source": [ + "def simple_position_config(model_type, component, layer):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " component, # component\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " ),\n", + " ],\n", + " intervention_types=VanillaIntervention,\n", + " )\n", + " return config\n", + "\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")]" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "3cc24ea1", + "metadata": {}, + "outputs": [], + "source": [ + "# should finish within 1 min with a standard 12G GPU\n", + "tokens = tokenizer.encode(\" Madrid Rome\")\n", + "\n", + "data = []\n", + "for layer_i in range(gpt.config.n_layer):\n", + " config = simple_position_config(type(gpt), \"mlp_output\", layer_i)\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base, sources, {\"sources->base\": pos_i}\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"f{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"mlp_output\",\n", + " }\n", + " )\n", + "\n", + " config = simple_position_config(type(gpt), \"attention_input\", layer_i)\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base, sources, {\"sources->base\": pos_i}\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"a{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"attention_input\",\n", + " }\n", + " )\n", + "df = pd.DataFrame(data)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "b1cfab3b", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AADc8ElEQVR4nOzdeXxU5b3H8e+ZSUIyQwKBAAoBBIKggIALKm5AFFAwglIXiIJSW71qsfVWrYpaF0pdoUq14oIauUCrSEChUhZFBFQ2ZVNBMUSQEBICmewz5/4RMyUkk2SS2TLzed/X9CZzznnO70xinuE7z3MewzRNUwAAAAAAAADCkiXYBQAAAAAAAADwHwJAAAAAAAAAIIwRAAIAAAAAAABhjAAQAAAAAAAACGMEgAAAAAAAAEAYIwAEAAAAAAAAwhgBIAAAAAAAABDGCAABAAAAAACAMEYACAAAAAAAAIQxAkAAAAAAAAAgjBEAAgAAAAAAAGGMABAAAAAAAAAIYwSAAAAAAAAAQBgjAAQAAAAAAADCGAEgAAAAAAAAEMYIAAEAAAAAAIAwRgAIAAAAAAAAhDECQAAAAAAAACCMEQACAAAAAAAAYYwAEAAAAAAAAAhjBIAAAAAAAABAGCMABAAAAAAAAMIYASAAAAAAAAAQxggAAQAAAAAAgDBGAAgAAAAAAACEMQJAAAAAAAAAIIwRAAIAAAAAAABhjAAQAAAAAAAACGMEgAAAAAAAAEAYIwAEAAAAAAAAwhgBIAAAAAAAABDGCAABAAAAAACAMEYACAAAAAAAAIQxAkAAAAAAAAAgjBEAAgAAAAAAAGGMABAAAAAAAAAIYwSAAAAAAAAAQBiLCnYB8I1vv/022CUAAIDjnHrqqcEuAQAAAJBEAAgAABAy+EAPAIDQwgd6CBdMAQYAAAAAAADCGAEgAAAAAAAAEMYIAAEAAAAAAIAwRgAIAAAAAAAAhDECQAAAAAAAACCMEQACAAAAAAAAYYwAEAAAAAAAAAhjBIAA0EzdfffdGjp0qObMmdPoNq6//noNHTpUy5Yt8/rYLVu2aOjQoRo6dGijzw8AAAAA8L+oYBcAAKFgzpw5evPNN93fP//88xowYIDH/UtKSjRu3Dg5HA5JUv/+/TVjxgw/VwkAABrrxL6+SkxMjBITE3Xqqadq+PDhuvDCC4NQHQAA/kUACAC1+Pe//11nALhmzRp3+NecdezYUTExMbLb7cEuBQCAgLBYLGrVqpX7+8LCQh08eFAHDx7UmjVrlJqaqgceeEAWC5OlAADhgwAQAI6TlJSk/Px8ffLJJ5oyZYpiY2Nr3a9qymyHDh108ODBQJboU88991ywSwAAIKDatWunefPmub83TVP79u3TK6+8orVr12rFihU644wzlJaWFsQqAQDwLT7WAoDjtGrVSoMGDVJRUZE++eSTWvfJycnRli1blJCQoHPPPTfAFQIAAF8yDENdunTRI488oi5dukiqnAkAAEA4YQQgAJxgxIgRWrdunf79739r+PDhNbZ/9NFHcrlcSk1NrXN6UElJidasWaMNGzbohx9+0KFDh1RSUqI2bdrojDPO0Lhx43TqqafWWcvq1av13nvvaffu3bJYLDrllFN01VVX6bLLLqvzuKqFOZ5//nl16tRJGRkZ+uKLL5Sbm6suXbro1VdflVS5CMjBgwd13333aeTIkTXayc/P15tvvql169YpPz9fiYmJGjRokG666aY6zw8AQHMTHR2tgQMHKisrS3v37vW43/r167V48WLt3LlTx44dU3x8vE477TRdddVVGjRoUK3H3H333dq6dasmTpyo9PR0LViwQMuXL9eBAwcUHx+vQYMG6ZZbblHbtm0lST/99JMyMjK0ceNGHTlyRCeddJJGjRqlX/3qV3W+9/jmm2/03nvvaevWrcrLy1NMTIy6dOmiYcOGKS0tTTExMU16jQAAzRcBIACc4Pzzz1d8fLy2bNminJwctW/fvtr2qlEBI0aM0PLlyz22s3r1av31r3+VVHm/oar77B08eFDLly/XypUrde+999YaMkrSrFmz9K9//UtS5egEu92unTt3avv27dq9e3eDrmXfvn169NFHVVBQoNjYWFmt1gYdJ0lZWVn6/e9/r7y8PElSixYtdPToUS1ZskRr167V5MmTG9wWAADNgWmakiSXy1Xrtueff16LFy+WVNm322w2FRQU6LPPPtNnn32mMWPG6He/+50Mw6i1/YqKCv3xj3/Uli1b3GFcbm6uPvzwQ3311Vd68cUX9dNPP+m+++5TYWGh7Ha7KioqtG/fPr388ss6dOiQ7rzzzlrbfvPNN/Xmm2+6r8Fms6m4uFg7d+7Uzp079dFHH+npp5+udv9DAEDkIAAEgBPExMRo6NChyszM1EcffaT09HT3tm3btik7O1tdu3ZVr1696gwAW7Zsqeuvv14XXXSRUlJSFBMTI9M0lZ2drbffflvLly/Xs88+q/79+6tDhw7Vjl25cqU7/EtLS9PNN9+s1q1b6+jRo8rIyNCCBQsatHDHSy+9pJNPPllPPPGE+vbtK6lyVEF9Kioq9Oc//1l5eXlq166d/vjHP+rss8+WYRjasmWLnnrqKb300kv1tgMAQHNRXl6uzZs3S6pcJOtE//znP93h3w033KAbbrhB8fHxOnr0qN555x0tWLBA77//vpKTk3XNNdfUeo5FixYpJiZG06ZN07nnnivTNLVu3Tr95S9/UXZ2tt544w2tX79e/fr105133qmOHTvK4XDolVdeUWZmpt577z1deeWV6tq1a41258yZo4SEBE2aNEmpqalKSEhwX9MLL7yg7777TtOnT9df/vIXH79yAIDmgHsAAkAtRowYIalyuu/xqhb/qNpelwsvvFC//e1vdfrpp7s/5TcMQ507d9af/vQnnX322SorK3O3WcU0Tb3xxhuSpEsuuUS///3v1bp1a0lSQkKC/ud//kcjR45s0CrEVqtVTz/9tDv8k6ROnTrVe9yqVav0/fffy2KxaNq0aTrnnHPcoxkGDBig6dOnq6ysrN52AAAIdaZpKisrS4899pj27dsnSTVG55eUlOjtt9+WJI0dO1a/+c1vFB8fL6myb7799ts1evRoSdJbb72l0tLSWs9VWFioqVOn6vzzz5fFYpHVatWFF16o6667TtJ/A8LHH3/cHULa7XZNmTJFnTp1kmma+vjjj6u16XA4NHv2bEVFRWn69OkaO3asEhISJFVOax40aJCmT5+u2NhYrV+/Xt9++60vXjYAQDNDAAgAtTj99NPVpUsX7du3T9u2bZMklZaWavXq1bJYLB6n7TaUYRjuBUSq2q+yZ88eZWdnS5ImTJhQ6/HHj0qsy/Dhw9WmTRuv66v6x8V5552nlJSUGtu7dOmiIUOGeN0uAADBdujQIV199dXux4gRIzRx4kR9+umnkipvBTJ27Nhqx3z55ZcqLCyUxWLx2AffdNNNslgsOnr0qL788sta9+nTp48GDBhQ4/mzzjrL/fW1115b45YdFovFfdz3339fbdvHH38sh8OhM844Q6eddlqt5+3UqZN7m6faAADhjSnAAODBiBEjNHv2bP373/9W3759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uxITE3Xeeefp+eefV2lpqce2TjnlFBmGoVNOOUWSVFpaqlmzZmnIkCE6+eSTZbVa3duOV1xcrBdffFGXXXaZTj75ZMXExKht27Y655xz9NBDD2n//v1eX9eXX36pW265RT169FBcXJySkpI0dOhQvfbaa3K5XF63F8lYBRgAAAAAACCMzJ8/X7fccouKiorczxUVFWnDhg3asGGDXnnlFS1btkxdu3ats529e/fqyiuv1LZt2+rc74svvtA111yjffv2VXs+Ly9PeXl5+vLLL/X888/rhRde0C233NKga5gxY4b+93//V06n0/1cSUmJVq9erdWrV+v111/XkiVLlJiY2KD2Ih0BIAAAAAAAQJjYuHGjpk+frvLyco0fP16pqamKi4vT9u3b9frrr+vAgQPatWuXhg4dqs2bN6tVq1a1tlNaWqqrr75a27Zt03nnnadx48YpOTlZeXl52r59u3u/r776SkOHDpXD4ZAknX766brxxhvVrVs35eXl6f3339dHH32koqIiTZ48WaZpavLkyXVew+LFi7Vw4ULFxMRo8uTJuuCCC2S1WrVx40a9/vrrKigo0GeffabLL79cn376qaKiiLfqwysEj8pdzvp3AhDRTNOUaZqSjGCXEpZMmTJNyeDl9atyV0VY3xSlvKwi2CUACHW/9OcGHY7fmKYpmWawywhr5WXlwS4hZCxZskQ2m03Lli3TkCFDqm373//9X11xxRVat26dfvjhB9133316+eWXa23n559/1s8//6zp06frvvvuq3Ufl8ulCRMmuMO/X//613rppZeqBXK33367XnvtNd16660yTVO/+93vlJqaWus04irvvfee2rdvrxUrVqhv377u5ydMmKA//OEPGjZsmL777jtt2LBBzzzzjO6///4GvjqRK4zf7gIA/M8ipytKTpeVhx8epstK+Acf4JcIQD1+uW8Y/Kfy1TV5+PHBb3B106dPrxH+SVLr1q31z3/+Uy1btpQkzZkzR4cOHfLYzlVXXeUx/JOkDz74wD09+IwzztDLL79c62i8yZMn67e//a2kyqnIM2fOrPcaXn311WrhX5Xk5GTNnz9fFktlpDVjxgyVlZXV216kIwCER9EWa7BLAADA76It4T0hIjqG/hwAEP6iYsK7P/dG69atdeutt3rc3qlTJ02YMEFS5TTfxYsXe9z3d7/7XZ3neu+999xf33PPPbJaPb/vuP/++90fNhx/XG169+6tK6+80uP2gQMH6rLLLpMkHTx4UJ9++mmd7YEAEAAAAAAAIGxceOGFio2NrXOfSy+91P31559/Xus+VqtVgwcPrrOdDRs2uL8ePnx4nft27dpVvXv3liRlZWXpwIEDDaqvIft4ugb8FwEgAAAAAABAmOjZs6dX++zfv7/Wfdq2bVtvkFgV4sXHx+ukk06q97ynnnpqjWPrq68h+3i6BvwXASAAAAAAAECYsNvtXu1z7NixWveJi4urt52qYxtyTknuew/Wdd6GtteQa8B/MUnez0zT1Mcff6xVq1bp+++/V2FhoWJiYtShQwcNHDhQaWlpatu2bbDLBAAAAAAAYaBqRd6G7hMfH9/oc8XHx+vIkSMNOqckFRYWNui8gbyGSEEA6EdlZWWaNm2aNm3a5H7OZrOppKREe/fu1d69e7Vs2TI9+OCDOuOMM4JYKQAAAAAACAe7d+/2ap+OHTs2+lwnn3yyjhw5omPHjungwYPq0KFDnft/++23DTpvIK8hUjAF2I8WLFjgDv9uuOEGvfPOO5o3b57effdd/fnPf9bJJ5+s4uJiPf300yotLQ1ytQAAAAAAoLlbs2ZNvRnDf/7zH/fX5557bqPPdfyxH330UZ37ZmVladeuXZKkLl261HnPwOXLl9d7bl9dQ6QgAPSj1atXS5KGDRumG264wT0k1Wq1auDAgbr33nslSQUFBdq+fXuwygQAAAAAAGHiyJEjevXVVz1uP3DggN555x1JUosWLTR69OhGn+uaa65xf/3ss8/K6XR63Pevf/2rTNOscVxtdu3apQ8++MDj9q1bt7pDwpNOOkkXXnihN2VHJKYAN0BhYaHWrl2rTZs2KTs7W4cPH1ZFRYXatm2r/v37a8yYMbUON83Pz5ckpaSk1Nput27dZLVa5XQ6VVJS4tdrAAAAAAAAkeG+++5Tv379dPHFF1d7/ujRo7r22mvdi2bcfPPNateuXaPPc8UVV6hfv376+uuvtXXrVt1+++36+9//rqio6nHTnDlz9PLLL0uqvDXalClT6m178uTJWrlypU4//fRqz+/fv1/XXXedO2y8++67FR0d3ehriBQEgA2QmZmpefPmSaocvWez2VRaWqoDBw7owIEDWr16tR544AENGDCg2nEdOnRQdna2x7nrP/zwg5xOpywWi7p16+bvywAAAAAAAGFu9OjRWr58uYYNG6brr79eqampiouL044dO/Taa69p//79kioHJf31r39t0rksFosyMjI0ePBgORwOzZ49W+vWrdONN96oU045RXl5eVq0aJGWLVvmPuZvf/ubunbtWme7V199tRYuXKizzjpLkyZN0uDBg2W1WrVp0ya99tprOnLkiKTKqb/33HNPk64hUhAANkCbNm00YcIEDRo0SF26dHGP2tu7d68yMjK0ceNGPfvss5o9e7ZiY2Pdx40YMUKvvfaaVq5cqZNOOkmjRo1SfHy8nE6nvv76a7300kuSKhPzk08+OViXBwAAAAAAwsRZZ52lG2+8UTfffLPeeecd93Tf4/Xq1UvLli1TQkJCk893xhlnaNWqVbr66quVnZ2tbdu26b777quxn81m09/+9jdNnjy53javvPJKXXzxxbrnnnv08ssvu0cPHu/888/XkiVLaow2RO14lRpg5MiRNZ6zWq3q0aOHHnjgAd19993at2+f1q5dq9TUVPc+o0eP1qFDh7R48WLNnTtXc+fOda8C7HK51KlTJ/32t7/VqFGjAnk5AAAAAAAgjF177bXq37+/XnjhBX300Uf66aefFB0drV69eum6667THXfcoRYtWvjsfOecc46+/fZbvfrqq1q0aJG2bdumvLw8tWzZUt27d9eIESN0xx13eLVa75QpU3TBBRdo1qxZ+vjjj3XgwAHZbDb169fPHXBaLCxt0VAEgE0UHR2tAQMGaN++fdq5c2e1ANBqtermm29Wx44d9dprr6m8vFxFRUXu7aWlpe4wkF9aAAAAAADgK7169dKLL77o9XF79+5t1Pni4uJ011136a677mrU8ZMmTdKkSZOqPXf22WfrjTfeaFR7qI4AsIGys7O1ZMkSbd++XTk5OSopKXGvXlMlLy+v2vdHjhzRtGnTtGvXLg0ZMsS9WMiRI0e0ceNGZWRk6M0339T333+vP/7xj4G8HAAAAAAAAEQIAsAG+OSTTzRjxgxVVFRIkgzDkM1mc68yU1JSopKSEpWWllY77vnnn9euXbuUmppabYWbqvsBdu7cWVOnTtWaNWs0bNgwnXXWWR5ryMjI0Ny5cz1uHzdunCZOnNiUy6zBrgKftgcAQKhq1apVjQ/2giExMdHnbdrtLX3eJgAAoShU+nMgFBEA1qOgoECzZs1S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pxGAKSkpmj17tlwuly699FItXrzYH6cBAAAAAACIQOYv9wEM3MNV7VE58s8lw/1coOvxJmAsLS1VWlqacnJy1LdvX23ZskVHjx7V0aNH9cQTT8gwDP3tb3/TG2+84UWrleLj43XxxRfr97//vTIyMrxaD2P79u26+eabVV5ermuvvVb79+/XkSNHtH//fv3qV79SWVmZJk6cqF27dnld14n8MgLwsccekyQNHTpUy5cv15gxY9S1a1ddcMEFSk5OVlxcXL1tPPzww/4oDQAAAAAAoFkzAzACsOEBm1Hr/v4en+jNPRBfeeUVff/997LZbPrggw/UpUsXSZLNZtODDz6oAwcOaNasWXrooYeUnp6u6OjoBrXbpUsXFRQUyDjuJodPP/10g+t6+OGHVVZWpgEDBuidd95RVFRlTHfyySdr7ty5+u6777RlyxY9/PDDWrBgQcMvuBZ+CQAfffRR98UbhiHTNPXjjz/qxx9/bHAb4RYAHjlyREuWLNEXX3yhnJwclZeXKzExUd26ddO5556r1NTUYJcIAAAAAACaA1Ny+XWObdPjO7OWr3zJm1YzMjIkSTfccIM7/Dvevffeq7///e/av3+/Vq1apeHDhzeoXYul8RNrCwoKtGTJEknSPffc4w7/qkRFRemee+7RjTfeqMzMTB07dkzx8fGNPp9fpgBLkmma7seJ39f3CDcbNmzQ7bffrgULFuiHH35QeXm5rFarDh48qPXr12v+/PnBLhEAAAAAADQTlVNgjaY96lxgQz581LOASCMfDQ0pCwsL9cUXX0iSRo4cWes+Xbp00WmnnSZJWrFihS9+RPX69NNPVVZWJqlyMd3aVD1fWlra5IV2/TICcNWqVf5otlnasmWL/vrXv6qiokJDhw7VNddc406bCwsL9c033/hkLjcAAAAAAIgcwV4EpMmaOP6roePHdu7c6R5s1rdvX4/79e3bVzt27NCOHTuaVlgDVZ2nQ4cOateuXa37tGvXTu3bt1dOTo527Nihyy+/vNHn80sAeMkll/ij2WanuLhYf/vb31RRUaGrr75akyZNqra9ZcuWOuuss3TWWWcFp0AAAAAAANAsNW4CZaiGhv6bDXrgwAH31x07dvS4X9W24/f3p6rz1FVT1facnJwm1+WXADDcFBYWau3atdq0aZOys7N1+PBhVVRUqG3bturfv7/GjBlT6w9sxYoVys3NVdu2bTVhwoQgVA4AAAAAAMKO6f9FQALL+2tp6PUXFha6v7bZbB73q9p27Ngxr2tpjKq66qrp+O1NrYsAsAEyMzM1b948SZLVapXNZlNpaakOHDigAwcOaPXq1XrggQc0YMCAasetXr1akjR48OAGryADAAAAAABQlzKzonLMXI2Bc+EUCh7vhAs1pB+O5QanlGYqYAFgdna2duzYoby8PJWVlemmm24K1KmbrE2bNpowYYIGDRqkLl26yGq1yul0au/evcrIyNDGjRv17LPPavbs2YqNjZUklZWV6fvvv5ck9ejRQ9nZ2Zo/f762bt2qwsJCJSYmql+/frr66qtrXYEGAAAAAACgNtFGlN5KTmvUselZi31cTdNldLnSb223bNnS/XVRUZESEhJq3a+oqEiSmrTSbmPqqjqvJ76qy+8B4Ouvv65nn322xkIXJwaATz75pD7++GN17txZr732mr/L8kptq8RYrVb16NFDDzzwgO6++27t27dPa9euVWpqqiQpJydHFRUVkqT9+/frpZdeUmlpqWJiYhQTE6NDhw5p5cqVWrNmjX7/+9/rwgsvDOg1AQAAAACASBSuowRrd/wt2/bv3+8xANy/f78k6eSTTw5oXVXn9cRXdVmadHQdiouLNWrUKN16663atWuXTNN0P2pz9tln6z//+Y/mzJmjnTt3+qssn4uOjnZP/T2+7uPnmP/rX/+SzWbTww8/rAULFmjevHmaMWOGUlJSVF5erhkzZtT7AwcAAAAAAGgq01TljNpQevhR7969ZRiVoef27ds97le17fTTT/dvQb+oOs/BgweVm1v7dOZDhw4pJyfHJ3X5bQTgTTfdpKVLl0qSTjnlFN1www3Kz8/Xyy+/XOv+l112mdq1a6fc3FwtWbJEp512mr9Ka5Ts7GwtWbJE27dvV05OjkpKSmqEmXl5ee6vj9/mcrl09913a+DAge7nunfvroceeki33XabSkpKlJmZqdtuu83/FwIAAAAAAJq9CXs/aOSRhr8zN6815lpuSjlXZzVgv5YtW2rQoEHasGGDli1bpmuuuabGPlW3rZPkntnpbxdeeKFiYmJUVlamf//737UuHvvRRx9Jklq0aNHkmaN+CQBXrFihd999V4Zh6Prrr9ecOXMUHR2tRYsWeQwALRaLLrvsMs2dO1effvqp/vjHP/qj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q6+++kqzZ8/WPffcoyFDhiSm2BT1xRdfSJIuueSSNl+/8MIL9eyzz0o69POgI5MnT9bKlSv12WefWVtkChszZozee+891dXVadKkSbr88ssjbtvc3Kzvfve7kqT7778/XiUiBTCexwdjunUYz63HeG4txnMgfREAIiW0tLQoKytLmZmZUe+bmZmp7OxstbS0WFCZfdx5551RLwdA9+3bt09Op1Mnn3xyh+39+/fXb37zG82dO1fbtm3TnXfeqblz52rEiBFxrjR1HTx4UFlZWerbt2+brx9eXuhyuSIuNSwuLpbL5VJNTY3ldaaqOXPmaMOGDVq0aJH+/Oc/64033tDNN9+soUOHttuWnyWIhPE8PhjTrcN4bj3Gc2sxngPpy5HoAoDuKCoqUnNzs7766quo992xY4eampq6vMYQDjFNs0cPdC4QCCgzM1MOR+Qfux6PR/fee69OOeUUNTQ06K677tInn3wSxypTW6Q7/h3+usfj6XT/nJwc+f3+mNdlJ9/61rf0yCOP6JJLLtFnn32mX/7yl3rssccIZNBtjOfxxZgee4zn1mM8tx7jOZCemAGIlDBmzBiVl5froYce0q9//Wv169evW/vt379fv//978N3BENkeXl5OnjwoH7xi1/om9/8ZlT7NjQ06KabbrKoMnsoKChQTU2NGhoalJubG3G77OxszZ07V/fee68++ugjzZ07V3PmzIljpakrLy9Pe/bsUUtLi7Kzs6Pev7m5ud1sA7Tndrv105/+VBdeeKEefvhhlZeXa8OGDbrhhhs0bty4RJeHJMd4Hh+M6dZhPLce43l8MJ4D6YcAECnhmmuu0dq1a/XVV1/p5ptv1vnnn6/Ro0dryJAhKiwsDL8j6PP5VFtbq8rKSm3cuFHr1q1TS0uL8vPzNW3atAQfRXIbMWKENm7cqN27d3f5zurRgsGgRVXZx9ChQ1VTU6O///3vOu+88zrdNisrS7/+9a91//3364MPPtA999yjUCgUp0pT18CBA7Vnzx794x//0PDhw9u0LV26tNNlLPv27ZPf71dhYaHVZdrGKaecoj/84Q9avny5/va3v+l3v/udzjrrLN1000384oWIGM/jgzHdOozn1mM8jy/GcyB9EAAiJfTt21f333+/7rvvPu3du1erVq3SqlWrutzPNE0dc8wxmjNnDgNYF4YPH66Kigourm6R008/Xe+++67WrFnT5S8M0qFrXc2ZM0fz5s3T+++/L4nrsHRlxIgRqqio0JYtW9r9wtDVL8CbNm2SJI0cOdKy+uwoIyND06dP17e//W0tXLhQ77//vjZv3qwrrrgi0aUhSTGexwdjunUYz63HeB5/jOdAeuAagEgZgwcP1sKFC3XjjTeGL6Tc2bVrRo4cqRtvvFELFy7U4MGDE1l6Sjj8Amv79u0JrsSezj33XEnSxo0b9eWXX3ZrH5fLpdmzZ4f3RefOPvtsTZw4UX369Il635UrV0o69Isdojdo0CDNmzdPP/nJT+RwOMJ3aQQ6wnhuPcZ06zCeW4/xPHEYzwF7M0yu9IsU1dLSop07d6qurk7Nzc2SDl30t7CwUMXFxT26Zkg6a2xs1DvvvCNJuuiii3h32gI1NTUKhULq06eP3G53t/cLhULaunWrTNPUqaeeamGF6SkUCoXvFlhYWKiMDCbH90ZdXZ2eeOIJ7du3T5J0//33J7giJDvG89hjTLcW43lyYjyPLcZzwH4IAAEAAAAAAAAbYwkwAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADZGAAgAAAAAAADYGAEgAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAMAR1q5dK8MwZBiG5s6dK0n69NNP9bOf/UwnnXSSPB6PCgoKdM455+j3v/+9fD5fl302Nzfr4Ycf1iWXXKLjjjtOmZmZ6tevn8aMGaM5c+Zo9+7dXfbh8/n0pz/9SZdddpmOP/54ZWdny+12a/DgwTrzzDNVWlqqxx9/XI2Njb09BQAAALAZwzRNM9FFAAAAJIu1a9fqwgsvlCT9+7//u77xjW/oRz/6kZqamjrc/uSTT9arr76qIUOGdNj+3nvv6eqrr9bOnTsjPqfb7dYf//hH/ehHP+qw/csvv9Sll16qbdu2dVn/M888o2nTpnW5HQAAANJHRqILAAAASFYVFRWaN2+e/H6/pk+frgkTJignJ0dbtmzRX/7yF1VVVemTTz7RhRdeqE2bNikvL6/N/h9++KEuvPBCeb1eSdIpp5yi73//+xo6dKhqa2v1wgsv6PXXX1dTU5NmzZol0zQ1a9asdnVMmzYtHP6dfPLJuuaaazRkyBDl5eXp4MGD+vTTT7Vu3Tq9++671p8UAAAApBxmAAIAABzhyBmA0qHZeS+//LLGjx/fZrsDBw7o8ssv11tvvSVJuummm/Too4+G20OhkEpKSrR582ZJ0g033KD/+q//UkZG2/dfH3vsMd14440yTVNut1tbtmzRCSecEG5///33NWbMGEnSNddco2XLlsnh6PgqLl999ZVM02yzPwAAAMA1AAEAADoxb968duGfJOXn5+uZZ55Rnz59JEmPP/649u3bF25/+eWXw+Hf6aefrkcffbRd+CdJs2bN0k033SRJampq0oIFC9q0b9++PfzxD37wg4jhnyQNGTKE8A8AAADtEAACAABEkJ+frxtvvDFi+/HHH68ZM2ZIOnSTjhdffDHc9txzz4U//uUvfymn0xmxnzvuuEOGYbTbT5I8Hk/444qKiugOAAAAABABIAAAQETnnXeesrOzO93m4osvDn985DX43nnnnfDH3/nOdzrtY8iQITr55JMlSZWVlaqqqgq3fetb35Lb7ZYk3XPPPbr99tu1adMmcRUXAAAAdBcBIAAAQAQjR46Mapvdu3eHPz4c4uXm5urYY4/tsp8TTzyx3b6SVFhYqAULFsjhcCgQCGjBggU688wz1b9/f11xxRX67W9/q02bNnXreAAAAJCeCAABAAAiOHL5bXe2aWhoaPdxd/qQFL6W4NH9SIduIPLmm2/qO9/5TvgagPv379dLL72kO+64Q2eeeaZOP/10rVy5slvPBQAAgPRCAAgAABCB1+uNapvc3Nx2H3enD0lqbGzssJ/DzjvvPL322muqqalReXm5/r//7//TeeedF76xyEcffaTLL79cjz/+eLeeDwAAAOmDABAAACCCI+/A251tBg4cGP74uOOOk3RoNt/evXu77Gfbtm0d9nO0goICXXHFFXrggQe0fv167d69W7fccku4/Ze//KX8fn+XzwcAAID0QQAIAAAQwfr16+Xz+Trd5n/+53/CH5999tkdfvz666932kdlZaU++eQTSdLgwYO7dc3Aw/r3768//vGPKikpkSTV1tZqy5Yt3d4fAAAA9kcACAAAEMGBAwe0ePHiiO1VVVVasmSJJCkrK0uTJ08Ot1199dXhjx988EEFg8GI/fz2t78N39X3yP2iMXTo0PDHgUCgR30AAADAnggAAQAAOvF//+//1bp169p9/eDBg7r22mvDN+z44Q9/qP79+4fbL7/8cp122mmSpL///e/6yU9+0mEw9/jjj+vRRx+VJLndbt12221t2pcsWaLHHnus02sJbtu2TatXr5YkZWdn66STToryKAEAAGBnGYkuAAAAIFlNnjxZq1at0kUXXaTvfve7mjBhgnJycvTxxx/rscce0+7duyUdmn3329/+ts2+DodDZWVlGjdunLxerxYtWqS33npL3//+93XCCSeotrZWK1as0Kuvvhre5w9/+IOGDBnSpp/PPvtMd999t2699VZdfPHFGjNmjAYPHqycnBzt27dP7777rp599tlwQHjrrbd2eBMRAAAApC/DPLzeBAAAAFq7dq0uvPBCSdK///u/65RTTtEPf/hDNTU1dbj9SSedpFdffVUnnHBCh+3vvfeerrrqKu3atSvic7rdbv3hD3/QrFmz2rXdfffdmjt3bpd1G4ahm2++WQsWLJDT6exyewAAAKQPZgACAAB04tprr1VJSYn++Mc/6vXXX9c//vEPuVwunXTSSbruuuv005/+VFlZWRH3HzNmjLZt26bFixdrxYoV2rx5s2pra9WnTx8NGzZMEydO1E9/+tOId/698847deGFF2rNmjV699139emnn6qqqkqtra3hPr71rW/pRz/6kUaPHm3VaQAAAEAKYwYgAADAEY6eAdid2XcAAABAMuMmIAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI1xF2AAAAAAAADAxpgBCAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADZGAAgAAAAAAADYGAEgAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADZGAAgAAAAAAADYGAEgAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANjY/w+aBdu0l+74BQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df[\"layer\"] = df[\"layer\"].astype(\"category\")\n", + "df[\"token\"] = df[\"token\"].astype(\"category\")\n", + "nodes = []\n", + "for l in range(gpt.config.n_layer - 1, -1, -1):\n", + " nodes.append(f\"f{l}\")\n", + " nodes.append(f\"a{l}\")\n", + "df[\"layer\"] = pd.Categorical(df[\"layer\"], categories=nodes[::-1], ordered=True)\n", + "\n", + "g = (\n", + " ggplot(df)\n", + " + geom_tile(aes(x=\"pos\", y=\"layer\", fill=\"prob\", color=\"prob\"))\n", + " + facet_wrap(\"~token\")\n", + " + theme(axis_text_x=element_text(rotation=90))\n", + ")\n", + "print(g)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "3a191190", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AAC1a0lEQVR4nOzdf5xddX3v+/eeHUhmIiODBkFCaPhhVUQFrQUuxehBsfLDn6VUafUInj704C8ep7e3RWgvWh701nPqKR60V0/VCkpPEUXASq2W4FEj12oQ/JVEwQTDr5AhA8lkIDv7/sHJHGImYZL58c137efz8fBhJmut73rtzXrQ6ce192p1u91uAAAAAIBG6isdAAAAAADMHANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABosDmlA5gdK1asKJ0AAAAAwBQ961nP2u1j3AEIAAAAAA1mAAgAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACABAz3nve9+bl73sZfnUpz61x2ucffbZednLXpavfOUru33s8uXL87KXvSwve9nL9vj8AACTNad0AAAAdfvUpz6VT3/60+M///Vf/3Ve+MIX7nT/zZs3541vfGM2btyYJHnBC16QD3/4wzNcCQDQu9wBCADAtLrpppt2uf0b3/jG+PCvZs985jNz6KGHZv78+aVTAAB2yR2AAABMi6c//ekZHh7OLbfckve85z2ZN2/ehPtt+8jsM57xjNx3332zmTit/st/+S+lEwAAJsUdgAAATIunPvWpeclLXpJNmzbllltumXCf+++/P8uXL8/g4GB+8zd/c5YLAQB6kzsAAQCYNqeeemq+/e1v56abbsorX/nKHbb/8z//c7Zu3Zp/9+/+Xfr6dv6/RW/evDnf+MY38p3vfCd33nlnHnjggWzevDkHHHBAnv/85+eNb3xjnvWsZ+2y5eabb861116bVatWpa+vL7/2a7+W17zmNXnFK16xy+O2PZjjr//6r3PIIYfkyiuvzP/3//1/WbduXRYtWpRPfOITSR5/CMh9992XP/7jP86rXvWqHdYZHh7Opz/96Xz729/O8PBwhoaG8pKXvCR/8Ad/sMvzAwBMNwNAAACmzQknnJD99tsvy5cvz/33358DDzxwu+3bvh/w1FNPzVe/+tWdrnPzzTfnL//yL5MkfX1949+zd9999+WrX/1qvv71r+f//D//zwmHjEny3/7bf8s111yTJGm1Wpk/f35+/OMf54c//GFWrVo1qdeyZs2a/Pmf/3k2bNiQefPmpd1uT+q4JFm9enXe9773Zf369UmSuXPnZmRkJDfccEO++c1v5txzz530WgAAU2UACADAtNl3333zspe9LF/60pfyz//8zznnnHPGt91xxx25++67c9hhh+XXf/3XdzkAfMpTnpKzzz47v/Vbv5Ujjzwy++67b7rdbu6+++585jOfyVe/+tX85//8n/OCF7wgz3jGM7Y79utf//r48O/MM8/Mv//3/z77779/RkZGcuWVV+Z//I//MakHd3z0ox/NwQcfnA9+8IN53vOelyT55S9/+aTHbdmyJf/3//1/Z/369VmwYEH+6I/+KC9+8YvTarWyfPny/D//z/+Tj370o0+6DgDAdPEdgAAATKtTTz01yeMf932ibQ//2LZ9V0466aT84R/+YZ773Odm3333TfL4nXyHHnpo/uRP/iQvfvGL8+ijj46vuU23280nP/nJJMlLX/rSvO9978v++++fJBkcHMw73/nOvOpVr5rUU4jb7Xb+6q/+anz4lySHHHLIkx73r//6r/n5z3+evr6+XHrppfmN3/iNtFqtJMkLX/jCXHbZZXn00UefdB0AgOliAAgAwLR67nOfm0WLFmXNmjW54447kiRjY2O5+eab09fXt9OP7U5Wq9Uaf4DItvW3+dnPfpa77747SfLmN795wuOfeFfirrzyla/MAQccsNt9S5cuTZIcf/zxOfLII3fYvmjRoixZsmS31wUA2FM+AgwAwLQ79dRT8/GPfzw33XRTnve85+V//s//mY0bN+YlL3lJnva0p01qjQceeCDXXntt/u3f/i1r167N6Ohotm7dut0+69at2+7nn/70p0mS+fPn56ijjppw3UMOOSQHHnhg7r///l2e/+ijj55U569asWJFksfv9tuZF77whbv8CDQAwHRyByAAANPuFa94Rfr6+nLzzTdv91HdyXz8N0mWL1+et7zlLbn66quzcuXKbNy4Mf39/RkaGsrQ0ND4d/ht3rx5u+M2bNiQJHn605++y/WfbHuSPPWpT51U66966KGHnvQckzk/AMB0cQcgAADTbsGCBTnuuOPy3e9+N1/84hfzve99L/Pnz89JJ530pMdu2bIll156aUZHR/Nrv/ZrOf/883P00Udn3rx54/vceOON+dCHPpRutztjr2F3nvoLALA3cwcgAAAzYtt3/X384x/P1q1bs2TJkvEHeuzKD3/4wzzwwANJkksvvTQvetGLthv+Jcnw8PCEx267a+/BBx/c5Tl+9aPD02nbQ0d21TCT5wcA+FUGgAAAzIjf+q3fysDAQLZs2ZJk8h//3Tb8GxwczMEHHzzhPsuXL5/w73/91389SfLII49k1apVE+6zdu3aJ/3+v6l41rOelSS57bbbdrrPzvoBAGaCASAAADNi3rx5Of/883PWWWfl93//93PMMcdM6rht3+/38MMPj3+f3hN9//vfz/e+970Jjz3yyCOzcOHCJMlVV1014T5XXnnlpDr21Etf+tIkybe//e38/Oc/32H73XffPf6kYACA2WAACADAjPnt3/7tvOMd78jb3va2SR9zzDHHZN68eel2u7nkkktyzz33JEkeffTRfPWrX81FF12U/fbbb6fH//t//++TJDfffHP+63/9r+MPBnn44YfzsY99LP/0T/80PmScCS972cty+OGHp9Pp5E/+5E/y3e9+d/y7Cm+77bb88R//cfbZZ58ZOz8AwK/yEBAAAPYqT3nKU3LeeeflIx/5SL7//e/nTW96U+bPn5+xsbFs2bIlRx55ZH77t387l19++YTHv/zlL8+Pf/zjXHPNNfniF7+YL33pS5k/f342btyYrVu35qyzzspPf/rTXX5EdyrmzJmTP/uzP8v73ve+3H///fmjP/qj8e8w3Lx5c4aGhvKOd7wjH/rQh2bk/AAAv8odgAAA7HXe8IY35JJLLsnznve8zJs3L51OJ4ceemje+ta35iMf+UgGBgZ2efx//I//MX/2Z3+W5z3veZk7d246nU6e85zn5E//9E/zjne8Y8b7Fy1alI9//OM588wzs2DBgnQ6nQwODub000/P3/7t3+aQQw6Z8QYAgG1a3W2fR6DRVqxYUToBAAAAgCna9sCx3eEOQAAAAABoMANAAAAAAGgwA0AAAAAAaDBPAQYAIElyxx135OKLL96tY84///y8/OUvn6EiAACmgwEgAABJki1btmR4eHi3jnn00UdnqAYAgOniKcA9wlOAAQAAAOrnKcAAAAAAwHYMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMHmlA5gdhxwwAGzdq558+alr68vW7duzebNm2ftvNOl5n7t5dTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblfexk1tyf19BsAMu36+/vTbrfT6XT26ot/Z2ru115Ozf3ay6m5X3s5NfdrL6fmfu3l1NyvvZya+7WXUXN7Uk+/jwADAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDzSkdwOxotVrp65v9eW+73Z71c06nmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svp+Z+7WXU3J7s3f2tbrfbLR3BzNu0aVMGBgZKZwAAAAAwy9wB2CNGR0czNjY2K+caHBxMu91Op9PJyMjIrJxzOtXcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2pEz/0NDQbh9jANgjut1uOp3OrJ+3xDmnU8392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Yyam5P9u5+DwEBAAAAgAYzAAQAAACABjMABAAAAIAGMwAEAAAAgAbzEBAAAAAAJuWh/3T+9K43rattb/8PfWQGV6+LOwABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoME8BKRHtFqt9PXN/ry33W7P+jmnU8392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/ZmmO33Ym9+71vdbrdbOoKZt2nTpgwMDJTOAAAAACq26q1nl06YtCM/dXXphL2GOwB7xOjoaMbGxmblXIODg2m32+l0OhkZGZmVc06nmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svp+Z+7c0zPDw84+co8d4PDQ3t9jEGgD2i2+2m0+nM+nlLnHM61dyvvZya+7WXU3O/9nJq7tdeTs392supuV97OTX3a2+G2X4v9ub33kNAAAAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgweaUDmB2tFqt9PXN/ry33W7P+jmnU8392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/ZmmO33Ym9+71vdbrdbOoKZt2nTpgwMDJTOAAAAgGmx6q1nl06YlCM/dXXphGlVy/ueNO+9nwp3APaI0dHRjI2Nzcq5BgcH02630+l0MjIyMivnnE4192svp+Z+7eXU3K+9nJr7tZdTc7/2cmru115O7f0zYXh4eMbP4X2fWFPf+6Ghod0+xgCwR3S73XQ6nVk/b4lzTqea+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+n9v7pMtvvg/f9f/Pe/28eAgIAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAAN5inAu2HDhg255pprcuutt+bBBx/M3Llzc8QRR+TVr351jj/++N1er9Pp5I477siqVauyatWq/OxnP8u9996bJDn77LPzpje9abpfAgAAAAA9xgBwklavXp0LL7wwGzZsSJL09/dn48aNWb58eZYvX54zzjgjb3/723drzXXr1uWiiy6aiVwAAAAASGIAOCmPPfZYPvjBD2bDhg057LDDcsEFF2Tx4sUZGxvLddddl6uuuirXX399Fi9enFNOOWW31u7v78/hhx+eI488MkcccUQ+97nP5Z577pmhVwIAAACPe+g/nT/9a077io/b/0MfmaGVoTcYAE7CTTfdlHvvvTdz587NxRdfnAULFiRJ5s6dm7POOivr16/Pl7/85Vx55ZVZsmRJ5syZ3Nu6YMGCXH311Wm1WuN/94UvfGFGXgMAvW26f8F/aFpX+9/8cg/+H3IAYPp5CMgk3HzzzUmSk08+eXz490RveMMb0mq1sn79+tx+++2TXrevr2+74R8AAAAATDd3AD6J0dHRrFy5Mkly3HHHTbjPggULsnDhwqxZsya33XZbjj322NlMhCJquZso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smXL8sMf/jArV67MunXrsmHDhnS73QwNDeXZz352XvWqV+Xoo4/e4y4AAAAA6JkB4OrVq3PhhRdmw4YNSZL+/v5s3Lgxy5cvz/Lly3PGGWfk7W9/+26vOzo6mosuuigrVqxIkuy7775JklWrVmXVqlX55je/mUsuuSTz5s3b4dhPf/rT+eUvfzn+8/z58zM2Npb77rsv9913X5YuXZrXvOY1Offcc/fkJQMAAABAbwwAH3vssXzwgx/Mhg0bcthhh+WCCy7I4sWLMzY2luuuuy5XXXVVrr/++ixevDinnHLKbq19xRVXZMWKFZk/f37e/e53j99JuGzZsvzN3/xNfvKTn+SjH/1o3ve+9+1w7EknnZQDDzwwz3nOc/KMZzwj++yzT7rdbn75y1/mH//xH/Ov//qvue6663LEEUdkyZIl0/FWAAAAANBjeuI7AG+66abce++9mTt3bi6++OIsXrw4STJ37tycddZZ+e3f/u0kyZVXXpktW7ZMet0777wzt9xyS5LkXe96V0444YS0Wq20Wq2ccMIJOf/885MkN998c37xi1/scPyb3/zmvOIVr8jChQuzzz77JElarVYWLlyY9773vXnuc5+bJPna17625y8eAAAAgJ7WEwPAm2++OUly8sknZ8GCBTtsf8Mb3pBWq5X169fn9ttvn/S6S5cuTbfbzcEHH5wTTjhhh+0nnnhiDj744HS73SxdunS3mlutVo466qgkyYMPPrhbxwIAAADANo0fAI6OjmblypVJkuOOO27CfRYsWJCFCxcmSW677bZJr/2DH/wgSXLsscem1WrtsL3VauXYY4/dbt/J2rp1a376058mSQ466KDdOhYAAAAAtmn8dwDefffd6Xa7SZLDDjtsp/sddthhWbNmTdasWTOpdbvdbu6+++4nXXfRokVJMul1H3nkkdx999354he/mJ/85CdJktNPP31SxwIAAADAr2r8AHD9+vXjfz7ggAN2ut+2bcPDw5Nad3R0NJs3b570uqOjoxkdHU1/f/8O+yxbtiyXXnrpDn8/f/78nHfeeTu9cxEAAAAAnkzjPwK8bUiXPP7Qj53Ztm10dHRS6z5xv8msu6u199lnn+y///556lOfmr6+x/+R9Pf35y1veUtOOumkSfUAAAAAwEQafwdgDV70ohfl7//+75MkW7ZsyV133ZXPfvazueKKK/KVr3wlF1988S7vMgQAAACAnWn8AHDevHnjfx4bG8vAwMCE+42NjSXJhB/RncgT99t27K7Wnezac+bMyZFHHpmLL744l156aZYtW5aPfexj+dM//dNdHnfllVfms5/97E63v/GNb8xb3vKWCbc99KRVe4+hoaHtfn6oTMYe+dX2pJ7+mtsT100pNbcnrptSam5PXDel1NyeuG5Kqbk9cd2Uor2cmvu1l1Nz/0TtU9H4AeAT75xbv379TgeA274rcLJvcH9/f/r7+zM6Orrd9wzubN1t+++OM844I8uWLcuyZcsyMjKSwcHBne67cePG3H///TvdvmnTprTb7d06/96o5tegvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3X3ay+n5v7pbm/8AHDhwoVptVrpdrtZvXp1Fi5cOOF+q1evTpIceuihk1q31Wpl4cKFWbly5fix07HuEz3taU8b//O99967ywHg/Pnzc+CBB+50+8DAQDqdzm437G1qfg3ay6m5X3s5NfdrL6fmfu3l1NyvvZya+7WXUXN7Une/9nJq7t9V+54MBxs/AOzv789RRx2VFStW5Hvf+15OPPHEHfZZt25d1qxZkyR5wQteMOm1n//852flypX5/ve/v9N9li9fPr7v7rr33nvH//zEjzJP5Jxzzsk555yz0+3r1q2b9BOO92Y1vwbt5dTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqLk9qbtfezk19++q/elPf/pur9f4pwAnyZIlS5Ikt9xySx544IEdtl977bXpdrs54IADcswxx0x63ZNPPjmtVitr167Nt7/97R22f+tb38ratWvTarXGG7Z5sil0p9PJF7/4xSTJU5/61J3euQgAAAAAu9ITA8BTTz01Bx10UDZv3pwPfOADufPOO5M8/oCOa665JjfeeGOSx++imzNn+5sizzvvvJx55pn58Ic/vMO6ixcvzsknn5wkufzyy7Ns2bJ0u910u90sW7YsH/nIR5I8PoBctGjRdsfefPPN+Yu/+It85zvfycMPPzz+91u2bMkPf/jD/Pmf//n43YO/+7u/m76+nvhHBQAAAMA0a/xHgJNkn332yfvf//5ceOGFueuuu/Ke97wnAwMD2bx5c7Zu3ZokOf3003PKKafs9trvfOc7c88992TFihW59NJLs++++yZJHn300STJs5/97LzjHe+Y8NjvfOc7+c53vpPk8Y8qz5kzJ5s2bRq/O7Cvry+/8zu/k9NPP323uwAAAAAg6ZEBYJIsWrQol19+eT7/+c/n1ltvzbp16zJ//vwcfvjhOe2003L88cfv0br9/f257LLLcsMNN2Tp0qVZu3ZtkuSII47IkiVLctppp+1wV2GSvPjFL8473/nO3H777bnrrrvy0EMPZdOmTZk3b14OOuigHH300XnlK1+5w52De6rVajXiLkJP8Cmj5vak7n7t5dTcr72cmvu1l1Nzv/Zyau7XXkbN7Und/drLqbnfU4CnYP/998+5556bc889d9LHfOITn3jSfebMmZPXvva1ee1rXzvpdZ/61KfmVa96VV71qldN+pip6O/vz8DAwITbHpyVgukxNDS03c81tyf19NfcnrhuSqm5PXHdlFJze+K6KaXm9sR1U0rN7YnrphTt5dTcr72cmvsnap+KnhoA9rLR0dGMjY2Vzpiypj7BZ29Xc3tSd7/2cmru115Ozf3ay6m5X3s5NfdrL6Pm9qTufu3l1Ny/q/Y9GQ4aAPaIbrf7pE8erkHNr0F7OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Yyam5P6u7XXk7N/dPdXv+XwgEAAAAAO2UACAAAAAANZgAIAAAAAA1mAAgAAAAADeYhID2i1Wqlr6/+eW+73S6dsMe0l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2pO5+7eXU3D/d7QaAPaK/vz8DAwMTbntwllum4lcfdV1ze1JPf83tieumlJrbE9dNKTW3J66bUmpuT1w3pdTcnrhuStFeTs392supuX+i9qkwAOwRo6OjGRsbK50xZcPDw6UT9pj2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+3fVvifDQQPAHtHtdtPpdEpnTFnNr0F7OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Yyam5P6u7XXk7N/dPdXv+XwgEAAAAAO2UACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAAN5inAPaLVaqWvr/55b7vdLp2wx7SXU3O/9nJq7tdeTs392supuV97OTX3ay+j5vak7n7t5dTcP93tBoA9or+/PwMDAxNue3CWW6ZiaGhou59rbk/q6a+5PXHdlFJze+K6KaXm9sR1U0rN7YnrppSa2xPXTSnay6m5X3s5NfdP1D4VBoA9YnR0NGNjY6Uzpmx4eLh0wh7TXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbk7r7tZdTc/+u2vdkOGgA2CO63W46nU7pjCmr+TVoL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeRs3tSd392supuX+62+v/UjgAAAAAYKcMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwTwFuEe0Wq309dU/722326UT9pj2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+6e73QCwR/T392dgYGDCbQ/OcstUDA0Nbfdzze1JPf01tyeum1Jqbk9cN6XU3J64bkqpuT1x3ZRSc3viuilFezk192svp+b+idqnwgCwR4yOjmZsbKx0xpQNDw+XTthj2supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Fze1J3v/Zyau7fVfueDAcNAHtEt9tNp9MpnTFlNb8G7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6i5Pam7X3s5NfdPd3v9XwoHAAAAAOyUASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADTYnNIBzI5Wq5W+vvrnve12u3TCHtNeTs392supuV97OTX3ay+n5n7t5dTcr72MmtuTuvu1l1Nz/3S3GwD2iP7+/gwMDEy47cFZbpmKoaGh7X6uuT2pp7/m9sR1U0rN7YnrppSa2xPXTSk1tyeum1Jqbk9cN6VoL6fmfu3l1Nw/UftUGAD2iNHR0YyNjZXOmLLh4eHSCXtMezk192svp+Z+7eXU3K+9nJr7tZdTc7/2MmpuT+ru115Ozf27at+T4aABYI/odrvpdDqlM6as5tegvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3X3ay+n5v7pbq//S+EAAAAAgJ0yAAQAAACABjMABAAAAIAGMwAEAAAAgAYzAAQAAACABjMABAAAAIAGMwAEAAAAgAabUzqA2dFqtdLXV/+8t91ul07YY9rLqblfezk192svp+Z+7eXU3K+9nJr7tZdRc3tSd7/2cmrun+52A8Ae0d/fn4GBgQm3PTjLLVMxNDS03c81tyf19NfcnrhuSqm5PXHdlFJze+K6KaXm9sR1U0rN7YnrphTt5dTcr72cmvsnap8KA8AeMTo6mrGxsdIZUzY8PFw6YY9pL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeRs3tSd392supuX9X7XsyHDQA7BHdbjedTqd0xpTV/Bq0l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2pO5+7eXU3D/d7fV/KRwAAAAAsFMGgAAAAADQYAaAAAAAANBgBoAAAAAA0GAGgAAAAADQYAaAAAAAANBgBoAAAAAA0GAGgAAAAADQYAaAAAAAANBgBoAAAAAA0GBzSgcwO1qtVvr66p/3ttvt0gl7THs5NfdrL6fmfu3l1NyvvZya+7WXU3O/9jJqbk/q7tdeTs39091uANgj+vv7MzAwMOG2B2e5ZSqGhoa2+7nm9qSe/prbE9dNKTW3J66bUmpuT1w3pdTcnrhuSqm5PXHdlKK9nJr7tZdTc/9E7VNhANgjRkdHMzY2VjpjyoaHh0sn7DHt5dTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqLk9qbtfezk19++qfU+GgwaAPaLb7abT6ZTOmLKaX4P2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+6e7vf4vhQMAAAAAdsoAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABpsTukAZker1UpfX/3z3na7XTphj2kvp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Gze1J3f3ay6m5f7rbDQB7RH9/fwYGBibc9uAst0zF0NDQdj/X3J7U019ze+K6KaXm9sR1U0rN7YnrppSa2xPXTSk1tyeum1K0l1Nzv/Zyau6fqH0qDAB7xOjoaMbGxkpnTNnw8HDphD2mvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3X3ay+n5v5dte/JcNAAsEd0u910Op3SGVNW82vQXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbk7r7tZdTc/90t9f/pXAAAAAAwE4ZAAIAAABAgxkAAgAAAECDGQACAAAAQIP11ENANmzYkGuuuSa33nprHnzwwcydOzdHHHFEXv3qV+f444/f43W3bNmSG264IUuXLs3atWuTJIccckhe+tKX5rTTTsucORO/zffdd19+9KMfZdWqVfnZz36Wn//859m8eXOS5Etf+tIe9wAAAADANj0zAFy9enUuvPDCbNiwIUnS39+fjRs3Zvny5Vm+fHnOOOOMvP3tb9/tdUdHR3PRRRdlxYoVSZJ99903SbJq1aqsWrUq3/zmN3PJJZdk3rx5Oxz7uc99Ll//+ten8KoAAAAAYNd6YgD42GOP5YMf/GA2bNiQww47LBdccEEWL16csbGxXHfddbnqqqty/fXXZ/HixTnllFN2a+0rrrgiK1asyPz58/Pud797/E7CZcuW5W/+5m/yk5/8JB/96Efzvve9b4djW61WDj744Bx55JE54ogjMjo6mn/4h3+YltcMAAAAAEmPDABvuumm3HvvvZk7d24uvvjiLFiwIEkyd+7cnHXWWVm/fn2+/OUv58orr8ySJUt2+pHdX3XnnXfmlltuSZK8613vygknnDC+7YQTTsjWrVvzl3/5l7n55pvz+te/Pocddth2x59//vlpt9vjPy9btmyqLxUAAAAAttMTDwG5+eabkyQnn3zy+PDvid7whjek1Wpl/fr1uf322ye97tKlS9PtdnPwwQdvN/zb5sQTT8zBBx+cbrebpUuX7rD9icM/AAAAAJgJjR8Ajo6OZuXKlUmS4447bsJ9FixYkIULFyZJbrvttkmv/YMf/CBJcuyxx6bVau2wvdVq5dhjj91uXwAAAACYTY0fAN59993pdrtJssNHcJ9o27Y1a9ZMat1ut5u77777SdddtGjRbq0LAAAAANOp8QPA9evXj//5gAMO2Ol+27YNDw9Pat3R0dFs3rx50uuOjo5mdHR0UmsDAAAAwHRp/ABw25AuefyhHzuzbdtkh3RP3G8y6+7O2gAAAAAwXRo/AAQAAACAXjandMBMmzdv3vifx8bGMjAwMOF+Y2NjSZL+/v5JrfvE/bYdu6t1d2ftPXHllVfms5/97E63v/GNb8xb3vKWCbc9NENNM2FoaGi7nx8qk7FHfrU9qae/5vbEdVNKze2J66aUmtsT100pNbcnrptSam5PXDelaC+n5n7t5dTcP1H7VDR+APjE7+dbv379TgeA274rcLJvcH9/f/r7+zM6Orrd9wzubN1t+8+UjRs35v7779/p9k2bNqXdbs/Y+WdLza9Bezk192svp+Z+7eXU3K+9nJr7tZdTc7/2MmpuT+ru115Ozf3T3d74AeDChQvTarXS7XazevXqLFy4cML9Vq9enSQ59NBDJ7Vuq9XKwoULs3LlyvFjp2PdPTV//vwceOCBO90+MDCQTqczow2zoebXoL2cmvu1l1Nzv/Zyau7XXk7N/drLqblfexk1tyd192svp+b+XbXvyXCw8QPA/v7+HHXUUVmxYkW+973v5cQTT9xhn3Xr1mXNmjVJkhe84AWTXvv5z39+Vq5cme9///s73Wf58uXj+86kc845J+ecc85Ot69bt27STzjem9X8GrSXU3O/9nJq7tdeTs392supuV97OTX3ay+j5vak7n7t5dTcv6v2pz/96bu9Xk88BGTJkiVJkltuuSUPPPDADtuvvfbadLvdHHDAATnmmGMmve7JJ5+cVquVtWvX5tvf/vYO27/1rW9l7dq1abVa4w0AAAAAMJt6YgB46qmn5qCDDsrmzZvzgQ98IHfeeWeSxx/Qcc011+TGG29M8vhddHPmbH9T5HnnnZczzzwzH/7wh3dYd/HixTn55JOTJJdffnmWLVuWbrebbrebZcuW5SMf+UiSxweQixYt2uH4LVu2ZGRkZPw/o6Oj49ue+PcjIyPT8j4AAAAA0Hsa/xHgJNlnn33y/ve/PxdeeGHuuuuuvOc978nAwEA2b96crVu3JklOP/30nHLKKbu99jvf+c7cc889WbFiRS699NLsu+++SZJHH300SfLsZz8773jHOyY89sc//nEuvPDCCbf96sd5v/SlL+12GwAAAAD0xAAwSRYtWpTLL788n//853Prrbdm3bp1mT9/fg4//PCcdtppOf744/do3f7+/lx22WW54YYbsnTp0qxduzZJcsQRR2TJkiU57bTTdrirEAAAAABmS09Npvbff/+ce+65Offccyd9zCc+8Ykn3WfOnDl57Wtfm9e+9rW71XPMMcfM2p19rVYrfX31f+LbI7zLqLk9qbtfezk192svp+Z+7eXU3K+9nJr7tZdRc3tSd7/2cmrun+72nhoA9rL+/v4MDAxMuO3BWW6ZiqGhoe1+rrk9qae/5vbEdVNKze2J66aUmtsT100pNbcnrptSam5PXDelaC+n5n7t5dTcP1H7VBgA9ojR0dGMjY2Vzpiypj7Ce29Xc3tSd7/2cmru115Ozf3ay6m5X3s5NfdrL6Pm9qTufu3l1Ny/q/Y9GQ4aAPaIbrebTqdTOmPKan4N2supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Fze1J3v/Zyau6f7vb6vxQOAAAAANgpA0AAAAAAaDADQAAAAABoMANAAAAAAGgwDwHpEa1WK3199c972+126YQ9pr2cmvu1l1Nzv/Zyau7XXk7N/drLqblfexk1tyd192svp+b+6W43AOwR/f39GRgYmHDbg7PcMhW/+qjrmtuTevprbk9cN6XU3J64bkqpuT1x3ZRSc3viuiml5vbEdVOK9nJq7tdeTs39E7VPhQFgjxgdHc3Y2FjpjCkbHh4unbDHtJdTc7/2cmru115Ozf3ay6m5X3s5NfdrL6Pm9qTufu3l1Ny/q/Y9GQ4aAPaIbrebTqdTOmPKan4N2supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Fze1J3v/Zyau6f7vb6vxQOAAAAANgpA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDBPAe4RrVYrfX31z3vb7XbphD2mvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3X3ay+n5v7pbjcA7BH9/f0ZGBiYcNuDs9wyFUNDQ9v9XHN7Uk9/ze2J66aUmtsT100pNbcnrptSam5PXDel1NyeuG5K0V5Ozf3ay6m5f6L2qTAA7BGjo6MZGxsrnTFlw8PDpRP2mPZyau7XXk7N/drLqblfezk192svp+Z+7WXU3J7U3a+9nJr7d9W+J8NBA8Ae0e120+l0SmdMWc2vQXs5NfdrL6fmfu3l1NyvvZya+7WXU3O/9jJqbk/q7tdeTs39091e/5fCAQAAAAA7ZQAIAAAAAA1mAAgAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAANNqd0ALOj1Wqlr6/+eW+73S6dsMe0l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2pO5+7eXU3D/d7QaAPaK/vz8DAwMTbntwllumYmhoaLufa25P6umvuT1x3ZRSc3viuiml5vbEdVNKze2J66aUmtsT100p2supuV97OTX3T9Q+FQaAPWJ0dDRjY2OlM6ZseHi4dMIe015Ozf3ay6m5X3s5NfdrL6fmfu3l1NyvvYya25O6+7WXU3P/rtr3ZDhoANgjut1uOp1O6Ywpq/k1aC+n5n7t5dTcr72cmvu1l1Nzv/Zyau7XXkbN7Und/drLqbl/utvr/1I4AAAAAGCnDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDB5pQOYHa0Wq309dU/722326UT9pj2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+6e73QCwR/T392dgYGDCbQ/OcstUDA0Nbfdzze1JPf01tyeum1Jqbk9cN6XU3J64bkqpuT1x3ZRSc3viuilFezk192svp+b+idqnwgCwR4yOjmZsbKx0xpQNDw+XTthj2supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Fze1J3v/Zyau7fVfueDAcNAHtEt9tNp9MpnTFlNb8G7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6i5Pam7X3s5NfdPd3v9XwoHAAAAAOyUASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA02JzSAcyOVquVvr76573tdrt0wh7TXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbk7r7tZdTc/90txsA9oj+/v4MDAxMuO3BWW6ZiqGhoe1+rrk9qae/5vbEdVNKze2J66aUmtsT100pNbcnrptSam5PXDelaC+n5n7t5dTcP1H7VBgA9ojR0dGMjY2Vzpiy4eHh0gl7THs5NfdrL6fmfu3l1NyvvZya+7WXU3O/9jJqbk/q7tdeTs39u2rfk+GgAWCP6Ha76XQ6pTOmrObXoL2cmvu1l1Nzv/Zyau7XXk7N/drLqblfexk1tyd192svp+b+6W6v/0vhAAAAAICdMgAEAAAAgAYzAAQAAACABjMABAAAAIAGMwAEAAAAgAYzAAQAAACABjMABAAAAIAGMwAEAAAAgAYzAAQAAACABjMABAAAAIAGm1M6gNnRarXS11f/vLfdbpdO2GPay6m5X3s5NfdrL6fmfu3l1NyvvZya+7WXUXN7Une/9nJq7p/u9lkZAG7ZsiX/83/+z9x6661Zu3ZtHn744ey333555jOfmd/8zd/MSSedVPU/lBr09/dnYGBgwm0PznLLVAwNDW33c83tST39NbcnrptSam5PXDel1NyeuG5Kqbk9cd2UUnN74ropRXs5NfdrL6fm/onap2JGB4Bbt27Nhz70oXz4wx/Offfdt9P9DjrooLzvfe/LBRdc0Ii71PZGo6OjGRsbK50xZcPDw6UT9pj2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+3fVvifDwRkbAD700EN59atfne985ztJkm63u9N977nnnvzxH/9xvvCFL+TGG2/M/vvvP1NZPavb7abT6ZTOmLKaX4P2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+6e7vdXd1WRuD3W73fzWb/1WvvWtbyVJ+vr68opXvCKnnHJKjjrqqMyfPz8bN27MqlWr8i//8i/56le/mk6nk1arlRNPPDHf+MY3pjsJAAAAAHrSjAwA/+7v/i7nnXdeWq1WjjzyyPzDP/xDXvjCF+50/9tuuy1nn312fvrTn6bVauW///f/nre+9a3TnQUAAAAAPWdGBoAvf/nLc/PNN2f//ffPHXfckWc+85lPeszatWvzvOc9Lxs2bMhLX/rSfP3rX5/uLAAAAADoOTPyxI3bb789rVYrb3vb2yY1/EuSZz7zmTn33HPT7XZz++23z0QWAAAAAPScGRkAbty4MUnyohe9aLeOO+6445IkmzZtmvYmAAAAAOhFMzIA3HbX3+4+sWTb/gcffPC0NwEAAABAL5qRAeDJJ5+cJONPAZ6sb33rW2m1WnnpS186E1kAAAAA0HNm5CEg//Zv/5bjjz8+++yzT/7t3/4tz3nOc570mB//+Md50YtelC1btmTZsmXjHwcGAAAAAPbcjNwB+KIXvSh/9Vd/lbGxsbz85S/Pl7/85V3u/0//9E/5d//u3+XRRx/Nf/7P/9nwDwAAAACmyZTuAPz7v//7XW7/0pe+lGuvvTatVivPfvazc8opp+Soo47K/Pnzs3HjxqxatSpf/epX85Of/CRJ8vrXvz5nnHFGkuQP/uAP9jQLAAAAAPhfpjQA7OvrS6vVetL9ut3uLvf71e2tVitbtmzZ0ywAAAAA4H+ZM9UFJjs/fLL9ZuCrCAEAAACg501pAPjJT35yujoAAAAAgBkwI08BZu+zYsWK0gkAAAAATNGznvWs3T5mRp4CDAAAAADsHQwAAQAAAKDBpvwQkN1x33335Z577snDDz+c/fbbL8985jNz4IEHzmYCAAAAAPSUGR8Arl69Ov/1v/7XXHvttVm9evUO2xctWpQ3vvGNefe7351DDz10pnMAAAAAoKfM6ENAPvnJT+bd7353Nm3alCSZ6FStVitJMjAwkMsvvzxvfetbZyqnp3kICAAAAED99uQhIDN2B+AnP/nJnHvuuWm1Wul2u2m1WnnOc56TZz3rWXnKU56SRx55JCtWrMhPfvKTdLvdbNy4Meeee26SGAICAAAAwDSZkTsA77nnnhx11FHZtGlTWq1W/vAP/zD/1//1f2XRokU77LtmzZpcdtll+du//dts3bo18+fPz8qVK3PQQQdNd1ZPcwcgAAAAQP32mjsAr7jiivHh38c//vG87W1v2+m+hx56aP7bf/tv+Y3f+I287W1vy6ZNm3LFFVfkkksumYk0AABm0ac+9al8+tOf3uHv99133wwNDeVZz3pWXvnKV+akk04qUAcA0Bv6ZmLRm266Ka1WK6985St3Ofx7ore+9a151atelW63m6985SszkQUAQCF9fX0ZGhoa/0+32819992Xb3zjG7nooovywQ9+MFu3bi2dCQDQSDNyB+DPf/7zJMlrX/va3TruNa95Tb7yla+MHw8AQDMsWLAgV1999fjP3W43a9asyf/7//6/+eY3v5mvfe1ref7zn58zzzyzYCUAQDPNyB2ADz/8cJLkgAMO2K3jtu3/yCOPTHsTAAB7j1arlUWLFuXP/uzPxr8n+qabbipcBQDQTDNyB+DTnva03Hfffbnzzjt367i77rorye4PDgEAqNM+++yTY489NqtXrx7/XXAiy5Yty/XXX58f//jHefjhh7PffvvlOc95Tl7zmtfkJS95yYTHvPe9781tt92Wt7zlLTnnnHPyP/7H/8hXv/rV3HPPPdlvv/3ykpe8JG9729vytKc9LUnyy1/+MldeeWX+7d/+LQ899FAOOuignHbaafmd3/md9PXt/H83/+lPf5prr702t912W9avX5999903ixYtystf/vKceeaZ2Xfffaf0HgEATNWMDACf97zn5d57781nPvOZ/Kf/9J92+QvTNp1OJ5/5zGfSarXyvOc9byayAADYC3W73SSZ8DsAu91u/vqv/zrXX399kse/S3BgYCAbNmzIt771rXzrW9/Ka1/72rz73e9Oq9WacP0tW7bkj/7oj7J8+fLxYdy6devy5S9/OT/4wQ/ykY98JL/85S/zx3/8x3nkkUcyf/78bNmyJWvWrMnHPvaxPPDAAzn//PMnXPvTn/50Pv3pT4+/hoGBgYyOjubHP/5xfvzjH+ef//mf81d/9Vd56lOfOuX3CQBgT83IR4C3fXfLj370o7zzne8c/4VoZ7rdbv7jf/yPueOOO5I8/l2AAAA032OPPZbvf//7SZJnPvOZO2z/x3/8x/Hh3+/93u/li1/8Yq6//vp84QtfyFlnnZUk+eIXv5hrr712p+e47rrrsnr16lx66aX5p3/6p3z5y1/OBz7wgQwMDOTuu+/OJz/5yVxyySU55phjctVVV+WGG27I9ddfP/477bXXXptf/OIXE677qU99Kvvtt1/e/e5357rrrsuNN96Yr3zlK/nLv/zLLFy4MCtXrsxll1025fcJAGAqZmQAeN5552XhwoVJko9//OM57rjjctVVV+X+++/fbr8HHnggV111VV70ohfl4x//eFqtVhYuXJjzzjtvJrIAANhLdLvdrF69OpdccknWrFmTJHnlK1+53T6bN2/OZz7zmSTJ6173uvyH//Afst9++yVJBgcH8453vCOnn356kuTv//7vMzY2NuG5HnnkkVx00UU54YQT0tfXl3a7nZNOOim/+7u/m+TxQd6+++6bD3zgA+NDyPnz5+c973lPDjnkkHS73SxdunS7NTdu3JiPf/zjmTNnTi677LK87nWvy+DgYJLHP9b8kpe8JJdddlnmzZuXZcuWZcWKFdPxtgEA7JEZ+QjwvHnz8vnPfz4vf/nLs2nTpvzgBz/IH/zBHyRJ9ttvv8yfPz8bN24cf1hI8vgvgfPnz8+1116buXPnzkQWAACFPPDAA3n9618//vMjjzySxx57bPznE044Ia973eu2O+a73/1uHnnkkfT19eWcc86ZcN0/+IM/yJe//OWMjIzku9/9bv6P/+P/2GGfo48+Oi984Qt3+PsXvehF+eQnP5kkOeuss9Jut7fb3tfXlxe+8IX55S9/mZ///OfbbVu6dGk2btyY4447Ls95znMmbDvkkEPynOc8J9///vfz3e9+N8961rMm3A8AYKbNyAAwSX7jN34j3/zmN/PmN785P/zhD8f/fmRkJA8//PAOHws+5phjcuWVV+aYY46ZqSQAAArZunVrhoeHJ9z2H/7Df8jZZ5+9w3f4bbtr7td+7dd2+pC4BQsWZNGiRbnrrruyYsWKCQeAixcvnvDY/fff/0n32XbeRx55ZLu/3/b77Y9+9KPtBpu/auPGjUmS++67b6f7AADMtBkbACbJ85///PzgBz/IjTfemGuvvTbf+c53cs8994w/ue3ggw/Ob/7mb+YNb3hDXv3qV+/0i5sBAKjbM57xjFx99dVJHn/42wMPPJCvfOUr+cxnPpNPfepTedaznpUXvehF2x3z0EMPJUme/vSn73LtBQsW5K677hrf/1dte8rvr3riHX8722fbw+y2bNmy3d8/+OCDSR7/mPLmzZt32Zdkpx9PBgCYDTM6AEySVquV008/ffz7WQAA6G3tdjsHHXRQ3vrWt2b+/Pm54oorcskll+Tv/u7vdjqI29tse2LxGWeckQsuuKBwDQDArs3IQ0AOP/zwHH744Xn3u989E8sDANAQb3jDG3L44YdnZGQk//2///fttm37iO66det2ucYDDzyw3f6zYWhoKEl2eMgdAMDeaEYGgKtXr84vfvGLHH300TOxPAAADdHX15ff//3fT5LcdNNNWb169fi2bQ/NuOuuu7J+/foJj1+3bt34MbP5kI1tv+f+4Ac/GP+ePwCAvdWMDAAPPPDAJNnplzUDAMA2J598cg499NBs3bo1V1555fjfv/jFL85+++23w98/0ac//els3bo1g4ODefGLXzxbyVmyZEkGBgYyOjqaj3/847vcd3R0dLsnHgMAzLYZGQD++q//epLk7rvvnonlAQBokL6+vvzu7/5ukuRrX/va+O+Q8+bNG7878Atf+EI+/vGP5+GHH06SjIyM5GMf+1huuOGGJMlb3vKWzJ07d9aaBwcH84d/+IdJkuuuuy4f+MAH8vOf/3x8+5YtW7JixYr83d/9Xd785jfv9AElAACzYUYeAvLGN74xS5cuzec///m8733vm4lTAADQIK985SvzqU99KuvWrctnPvOZ/Mmf/EmSx3+vXLNmTa6//vp89rOfzdVXX5358+dn48aN4w/ieM1rXpPXve51s9585plnZvPmzfnbv/3bfP3rX8/Xv/71zJ07N3Pnzs0jjzwy3gcAUNqM3AH49re/PUcffXS+/e1v50Mf+tBMnAIAgAbZZ599ctZZZyVJ/uVf/iW//OUvkyStVisXXHBBLr300pxwwgkZHBzMpk2bMjg4mBNPPDGXXXZZ3vve96bVahXpPuuss/KpT30qr3vd63LYYYelr68vGzduzFOf+tQ8//nPz+///u/nE5/4RBYsWFCkDwAgSVrdbrc7Ewv/4he/yOtf//osX748r33ta/Oud70rJ554Yvbdd9+ZOB1PYsWKFaUTAAAAAJiiPXnw2YwMAA8//PAkydjYWO65557x/0W23W7naU97Wvr7+3cd1WrlZz/72XRn9TQDQAAAAID67ckAcEa+A/Cuu+4aH/pt++9ut5stW7bkvvvue9LjS32EAwAAAACaZkYGgIsWLTLEAwAAAIC9wIzdAQgAQHPccccdufjii3frmPPPPz8vf/nLZ6gIAIDJmpEBIAAAzbJly5YMDw/v1jGPPvroDNUAALA7ZuwpwOxdPAQEAAAAoH57zUNAftWDDz6Y66+/PrfeemvWrl2bhx9+OPvtt1+e+cxn5jd/8zdz+umn52lPe9pspAAAAABAT5nROwAffvjh/PEf/3E+9alPZWxsbKf7zZ07N29729ty2WWX5SlPecpM5fQ0dwACAAAA1G9P7gCcsQHg6tWr8/KXvzx33nlnJnOKVquVww8/PF//+tdz6KGHzkRSTzMABAAAAKjfXjMAfPTRR/PCF74wP/nJT5IkT3nKU/LmN785p5xySo466qjMnz8/GzduzKpVq/Iv//Ivueqqq/Lwww8nSZ7znOdk+fLl2WeffaY7q6cZAAIAAADUb68ZAH74wx/OBRdckFarleOPPz7/+I//mGc+85k73f+ee+7JWWedlW9+85tptVr5L//lv+Q973nPdGf1NANAAAAAgPrtyQCwbwY68g//8A9JkoMPPjj/9E//tMvh37b9vvzlL4/vd/XVV89EFgAAAAD0nBkZAP70pz9Nq9XK2972tgwODk7qmP322y/nnntuut1ufvrTn85EFgAAAAD0nBkZAD766KNJkqOPPnq3jnvuc5+bJHnsscemvQkAAAAAetGcmVh04cKFWblyZUZHR3fruG37H3LIITOR1dMOOOCAWTvX0NBQ2u12Op1OhoeHZ+2806Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J/X0z8gdgK94xSvS7Xbz9a9/fbeO+9rXvpZWq5VXvvKVM5EFAAAAAD1nRgaA73rXu9Lf35/Pfe5z+cY3vjGpY77xjW/k6quvzsDAQN71rnfNRBYAAAAA9JwZGQA+61nPyic/+cnMmTMnr371q3PFFVeMfy/gr3rsscfy0Y9+NKeddlr22WeffPKTn8xRRx01E1kAAAAA0HNm5DsAL7nkkiSPfxT4hhtuyLve9a5cdNFFOemkk3LUUUdl/vz52bhxY1atWpVvfOMbeeihh5Ikp59+en70ox+NHz+Riy++eCaSAQAAAKCRZmQA+Od//udptVpJMv7fw8PDueGGG3bYt9vtju9zww03TLjPExkAAgAAAMDkzcgAMHl8sDeZv9vV3/+qbYNCAAAAAGByZmQA+K//+q8zsSxT0G63e+q806Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3t3f6s72dvvAAAAAIDqzNhHgNm7DA8Pz9q5BgcH02630+l0MjIyMmvnnS4192svp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6i5PSnTPzQ0tNvHGAD2iE6n01PnnS4192svp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6i5Pdm7+/tKBwAAAAAAM8cAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGmxO6QBmR7vd7qnzTpea+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+n5n7tZdTcnuzd/a1ut9stHQEAAAAAzAx3APaI4eHhWTvX4OBg2u12Op1ORkZGZu2806Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J2X6h4aGdvsYA8Ae0el0euq806Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3t3v4eAAAAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAg80pHcDsaLfbPXXe6VJzv/Zyau7XXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbk727v9XtdrulIwAAAACAmeEOwB4xPDw8a+caHBxMu91Op9PJyMjIrJ13utTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2pEz/0NDQbh9jANgjOp1OT513utTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svo+b2ZO/u9xAQAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDBPAd4NGzZsyDXXXJNbb701Dz74YObOnZsjjjgir371q3P88cfv9nqdTid33HFHVq1alVWrVuVnP/tZ7r333iTJ2WefnTe96U3T/RIAAAAA6DEGgJO0evXqXHjhhdmwYUOSpL+/Pxs3bszy5cuzfPnynHHGGXn729++W2uuW7cuF1100UzkAgAAAEASA8BJeeyxx/LBD34wGzZsyGGHHZYLLrggixcvztjYWK677rpcddVVuf7667N48eKccsopu7V2f39/Dj/88Bx55JE54ogj8rnPfS733HPPDL0SAAAAAHqNAeAk3HTTTbn33nszd+7cXHzxxVmwYEGSZO7cuTnrrLOyfv36fPnLX86VV16ZJUuWZM6cyb2tCxYsyNVXX51WqzX+d1/4whdm5DUAAAAA0Js8BGQSbr755iTJySefPD78e6I3vOENabVaWb9+fW6//fZJr9vX17fd8A8AAAAAppsB4JMYHR3NypUrkyTHHXfchPssWLAgCxcuTJLcdttts9YGAAAAAE/GAPBJ3H333el2u0mSww47bKf7bdu2Zs2aWekCAAAAgMkwAHwS69evH//zAQccsNP9tm0bHh6e8SYAAAAAmCwDwCexefPm8T/PnTt3p/tt2zY6OjrjTQAAAAAwWQaAAAAAANBgc0oH7O3mzZs3/uexsbEMDAxMuN/Y2FiSpL+/f1a6ftWVV16Zz372szvd/nu/93t505veNCstfX194/89NDQ0K+ecTjX3ay+n5n7t5dTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqLk9qaffAPBJPPF7/9avX7/TAeC27wos9Q9748aNuf/++3e6fdOmTWm327NYlLRarVk/53SquV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Zyau7XXkbN7cne328A+CQWLlyYVquVbreb1atXZ+HChRPut3r16iTJoYceOpt54+bPn58DDzxwp9sHBgbS6XRmpaWvr2/8Pdu6deusnHM61dyvvZya+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+j5vakTP+eDBoNAJ9Ef39/jjrqqKxYsSLf+973cuKJJ+6wz7p167JmzZokyQte8ILZTkySnHPOOTnnnHN2un3dunWz9oTioaGhtNvtbN26tcqnItfcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblf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nbnllluSJO9617tywgknpNVqpdVq5YQTTsj555+fJLn55pvzi1/8Yofj3/zmN+cVr3hFFi5cmH322SdJ0mq1snDhwrz3ve/Nc5/73CTJ1772tT1/8QAAAAD0tJ4YAN58881JkpNPPjkLFizYYfsb3vCGtFqtrF+/Prfffvuk1126dGm63W4OPvjgnHDCCTtsP/HEE3PwwQen2+1m6dKlu9XcarVy1FFHJUkefPDB3ToWAAAAALZp/ABwdHQ0K1euTJIcd9xxE+6zYMGCLFy4MEly2223TXrtH/zgB0mSY489Nq1Wa4ftrVYrxx577Hb7TtbWrVvz05/+NEly0EEH7daxAAAAALBN478D8O677063202SHHbYYTvd77DDDsuaNWuyZs2aSa3b7XZz9913P+m6ixYtSpJJr/vII4/k7rvvzhe/+MX85Cc/SZKcfvrpkzoWAAAAAH5V4weA69evH//zAQccsNP9tm0bHh6e1Lqjo6PZvHnzpNcdHR3N6Oho+vv7d9hn2bJlufTSS3f4+/nz5+e8887b6Z2LAAAAAPBkGv8R4G1DuuTxh37szLZto6Ojk1r3iftNZt1drb3PPvtk//33z1Of+tT09T3+j6S/vz9vectbctJJJ02qBwAAAAAm0vg7AGvwohe9KH//93+fJNmyZUvuuuuufPazn80VV1yRr3zlK7n44ot3eZchAAAAAOxM4weA8+bNG//z2NhYBgYGJtxvbGwsSSb8iO5EnrjftmN3te5k154zZ06OPPLIXHzxxbn00kuzbNmyfOxjH8uf/umf7vK4K6+8Mp/97Gd3uv33fu/38qY3velJzz8dtt3F2NfXl6GhoVk553SquV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Zyau7XXkbN7Uk9/Y0fAD7xzrn169fvdAC47bsCJ/sPq7+/P/39/RkdHd3uewZ3tu62/XfHGWeckWXLlmXZsmUZGRnJ4ODgTvfduHFj7r///p1u37RpU9rt9m6df6pardasn3M61dyvvZya+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+j5vZk7+9v/ABw4cKFabVa6Xa7Wb16dRYuXDjhfqtXr06SHHrooZNat9VqZeHChVm5cuX4sdOx7hM97WlPG//zvffeu8sB4Pz583PggQfudPvAwEA6nc5uN+yJvr6+8fd869ats3LO6VRzv/Zyau7XXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbkzL9ezJobPwAsL+/P0cddVRWrFiR733veznxxBN32GfdunVZs2ZNkuQFL3jBpNd+/vOfn5UrV+b73//+TvdZvnz5+L6769577x3/8xM/yjyRc845J+ecc85Ot69bt27STzieqqGhobTb7WzdunXWzjmdau7XXk7N/drLqblfezk192svp+Z+7eXU3K+9nJr7tZdRc3tSpv/pT3/6bh/T+KcAJ8mSJUuSJLfcckseeOCBHbZfe+216Xa7OeCAA3LMMcdMet2TTz45rVYra9euzbe//e0dtn/rW9/K2rVr02q1xhu2ebK78TqdTr74xS8mSZ761Kfu9M5FAAAAANiVnhgAnnrqqTnooIOyefPmfOADH8idd96Z5PEHdFxzzTW58cYbkzx+F92cOdvfFHneeeflzDPPzIc//OEd1l28eHFOPvnkJMnll1+eZcuWpdvtptvtZtmyZfnIRz6S5PEB5KJFi7Y79uabb85f/MVf5Dvf+U4efvjh8b/fsmVLfvjDH+bP//zPx+8e/N3f/d3xL5UEAAAAgN3R+I8AJ8k+++yT97///bnwwgtz11135T3veU8GBgayefPm8c9nn3766TnllFN2e+13vvOdueeee7JixYpceuml2XfffZMkjz76aJLk2c9+dt7xjndMeOx3vvOdfOc730ny+EeV58yZk02bNo3fHdjX15ff+Z3fyemnn77bXQAAAACQ9MgAMEkWLVqUyy+/PJ///Odz6623Zt26dZk/f34OP/zwnHbaaTn++OP3aN3+/v5cdtllueGGG7J06dKsXbs2SXLEEUdkyZIlOe2003a4qzBJXvziF+ed73xnbr/99tx111156KGHsmnTpsybNy8HHXRQjj766Lzyla/c4c7BPVXqSTR78xNwJqPmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3t3f6vb7XZLRwAAAAAAM6Nn7gDsdbP5JJ3BwcG02+10Op2MjIzM2nmnS8392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Yyam5PyvQPDQ3t9jEGgD3iyZ463LTzTpea+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+n5n7tZdTcnuzd/R4tCwAAAAANZgAIAAAAAA1m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AUhEREREREREVUp0dDS++uorqNVq6PV64+IUhibUo4tVPPq8KQ0dOhTx8fE4d+4c1Go11Go1AECn0yE1NbXMn2NuC2+Ye+0tte5sABIRERERERFRlXHr1i0sXLgQGo0GXl5eaNmyJbZv3w6VSoXAwEBkZWUhJiYGycnJcHJyQs+ePaFQKEyeU6VSYc6cOUhKSkJCQgLy8vKwfPly2NvbY+zYsSbPUxHkUHtLrDvABiARERERERERVSFbt26FRqNBmzZtMH36dCgUCmzfvh12dnYYPny48XVhYWFYsWIFrl+/jpkzZwrL6+XlBS8vLwDA8uXLoVQqZbuyrpxqb0l1B9gAJCIiIiIiIqIq5Pz585AkCSNHjix1dFlAQACys7OxZs0a7Ny5E/369TNhyuINGTIEKpVKdIynJtfay73uAFcBJiIiIiIiIqIqJCMjA1ZWVqhbt67xMUmSUFBQUOS1PXr0gCRJOHjwoAkTlmzo0KEYMGCA6BhPTa61l3vdATYAiYiIiIiIiKgKsba2hr29faFFGlQqFbKzs/HgwYNCr1WpVLCzs0NycrKpY1ok1l4cNgCJiIiIiIiIqMpwdXVFTk4OdDqd8TF3d3cAQFxcXKHXZmVlITs7u9gRalR+rL04bAASERERERERUZXh5eUFnU6HxMRE42NNmjSBXq/Hhg0boNFoAAAPHjzA6tWrAQB16tQRktXSsPbicBEQIiIiIiIiIqoyWrVqhaioKJw8edI4F12/fv2wb98+XLx4EaNGjYKnpydSU1Nx7949SJKEXr16iQ1tIVh7cTgCkIiIiIiIiIiqjI4dO2LIkCFwdnY2Pubp6YlJkyZBqVRCo9Hg2rVrUKvVAIDAwED06NFDUFrLwtqLI+n1er3oEEREREREREREoqnVapw5cwbp6elwcHBAixYtULt2bdGxqgTWvnKxAUhERERERERERGTBeAswERERERERERGRBWMDkIiIiIiIiIiIyIKxAUhERERERERERGTB2AAkIiIiIiIiIiKyYGwAEhERERERERERWTA2AImIiIiIiIiIiCwYG4BEREREREREREQWjA1AIiIiIiIiIiIiC8YGIBERERERERERkQVjA5CIiIiIiIiIiMiCsQFIRERERE8tPj4ekiRBkiSMHj1adBwiIiIiKgYbgERERERERERERBaMDUAiIiIiIiIiIiIL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nmXORkRERGRueAswEREREVWaNm3a4Pz585gyZQp8fX2hUqng6OiIhg0bYsKECTh58iQ+/fTTp/rsHj16FPp3vXr1yvxed3d37Nq1C1FRUZg4cSJatmyJGjVqQKFQwMHBAd7e3ujXrx++/PJLxMTEYN26dU+VkYiIiMgcSHrOfExEREREMjRp0iQsW7YMALBlyxYMGDBAcCIiIiIi88QGIBERERHJTnZ2Nry8vJCZmYnatWsjPj4e1tac3YaIiIioOLwFmIiIiIhkZ+nSpcjMzAQATJw4kc0/IiIiolJwBCARERERmb2bN2/iwoULyM3NRUREBL777jtotVp4eHjg2rVrcHR0FB2RiIiIyGzxUikRERERmb39+/djzJgxhR5TKBT46aef2PwjIiIiegLeAkxEREREsuLh4YHevXvjyJEj6Nu3r+g4RERERGaPtwATERERERERERFZMI4AJCIiIiIiIiIismBsABIREREREREREVkwNgCJiIiIiIiIiIgsGBuAREREREREREREFowNQCIiIiIiIiIiIgvGBiAREREREREREZEFYwOQiIiIiIiIiIjIgrEBSEREREREREREZMHYACQiIiIiIiIiIrJgbAASERERERERERFZMDYAiYiIiIiIiIiILBgbgERERERERERERBaMDUAiIiIiIiIiIiILxgYgERERERERERGRBWMDkIiIiIiIiIiIyIKxAUhERERERERERGTB2AAkIiIiIiIiIiKyYGwAEhERERERERERWTA2AImIiIiIiIiIiCwYG4BEREREREREREQWjA1AIiIiIiIiIiIiC8YGIBERERERERERkQVjA5CIiIiIiIiIiMiCsQFIRERERERERERkwdgAJCIiIiIiIiIismD/D2UbBUclga4sAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "filtered = df\n", + "filtered = filtered[filtered[\"pos\"] == 4]\n", + "g = (\n", + " ggplot(filtered)\n", + " + geom_bar(aes(x=\"layer\", y=\"prob\", fill=\"token\"), stat=\"identity\")\n", + " + theme(axis_text_x=element_text(rotation=90), legend_position=\"none\")\n", + " + scale_y_log10()\n", + " + facet_wrap(\"~token\", ncol=1)\n", + ")\n", + "print(g)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/basic_tutorials/Intervention_Training.ipynb b/_sources/tutorials/basic_tutorials/Intervention_Training.ipynb new file mode 100644 index 00000000..8c8fdab9 --- /dev/null +++ b/_sources/tutorials/basic_tutorials/Intervention_Training.ipynb @@ -0,0 +1,1168 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "ed82c3b9", + "metadata": {}, + "source": [ + "## Trainable Interventions" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3b71a4b2", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"11/28/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "bce59d35", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "When interventions are static, you are mannually look for interesting counterfactual behaviors. What if interventions are trainable? and what if you train interventions with certain counterfactual behaviors?\n", + "\n", + "We think, if you can train such interventions, you find a systematic way of affecting the causal circuits realized in the NNs. With certain types of interventions, e.g., basis respect ones (vanilla causal abstraction or DAS), you are doing causal abstraction.\n", + "\n", + "In this tutorial, we show how you can train interventions with customized dataset." + ] + }, + { + "cell_type": "markdown", + "id": "714f9e7b", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "c5dd0623", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[2024-01-11 01:23:38,042] [INFO] [real_accelerator.py:158:get_accelerator] Setting ds_accelerator to cuda (auto detect)\n" + ] + } + ], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/frankaging/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "a5859137", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "ffff1b0633df473ab9d15a22bba0f29d", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "pytorch_model.bin: 0%| | 0.00/498M [00:00\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " 2024-01-20T10:50:39.986017\n", + " image/svg+xml\n", + " \n", + " \n", + " Matplotlib v3.7.3, https://matplotlib.org/\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "\n" + ], + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import os, json, torch\n", + "import numpy as np\n", + "np.object = object\n", + "import pandas as pd\n", + "from torch.utils.data import DataLoader\n", + "from datasets.utils.logging import disable_progress_bar\n", + "disable_progress_bar()\n", + "\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " LowRankRotatedSpaceIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene import create_gpt2_lm\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")\n", + "\n", + "from tutorial_intervention_training_utils import (\n", + " visualize_program,\n", + " make_supervised_counterfactual_data_module,\n", + ")\n", + "from torch.nn import CrossEntropyLoss\n", + "\n", + "programs = json.load(open(os.path.join(\"./tutorial_data/\", \"seed_programs.json\")))\n", + "programs_10 = json.load(\n", + " open(os.path.join(\"./tutorial_data/\", \"selected_programs_10.json\"))\n", + ")\n", + "\n", + "# load fine-tuned model for this tutorial from HF\n", + "config, tokenizer, gpt2 = create_gpt2_lm(\"zhengxuanzenwu/gpt2-5token-solver\")\n", + "tokenizer.pad_token = tokenizer.eos_token\n", + "_ = gpt2.to(\"cuda\")\n", + "_ = gpt2.eval()\n", + "\n", + "# what is this model finetuned for? this visualizes a program that this model can solve.\n", + "select_program = \"07065a\"\n", + "print(\"\\nA program that the model can solve (Cs are input tokens):\")\n", + "visualize_program(programs[select_program])" + ] + }, + { + "cell_type": "markdown", + "id": "93011597", + "metadata": {}, + "source": [ + "### Aligning the output variable with a single dimension in the rotated basis\n", + "\n", + "We know the output is a boolean value, which can be represented using a single dimension (i.e., pos/neg lies on a line with a linearly separable boundary). Can we learn a 1-d DAS direction to align activations with the output variable?\n", + "\n", + "We first need to sample (base, source(s)) pairs. In this case, it is easy, since the counterfactual behavior is that source output label overwrites the base one." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "05f0f35b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Model input looks like this (10-shot ICL):\n", + "reportprint,itches,reenshots,Jean,reenshots=True\n", + "dated,net,dated,Kate,dated=False\n", + "Inst,Amid,Billy,While,Billy=True\n", + "mas,quickShip,mas,imei,mas=True\n", + "Excellent,embedreportprint,Ret,Theme,Excellent=True\n", + "engers,Rick,engers,Jerry,engers=True\n", + "debian,OSED,international,quickShip,international=True\n", + "Led,orous,Lead,Cash,Lead=True\n", + "mission,embedreportprint,mission,mbudsman,mission=True\n", + "ABC,store,BBC,ixty,CBC=False\n", + "ilitation,Brow,ilitation,ICLE,ilitation\n", + "\n", + "Training data for the intervention should contain these fields:\n", + "dict_keys(['input_ids', 'attention_mask', 'source_input_ids', 'source_attention_mask', 'labels', 'source_0->base.0.pos', 'source_0->base.1.pos', 'subspaces'])\n" + ] + } + ], + "source": [ + "# load in some datasets we need\n", + "num_of_shots = 10\n", + "mode = \"E\"\n", + "counterfactual_data_module, _ = make_supervised_counterfactual_data_module(\n", + " programs[select_program],\n", + " 800,\n", + " num_of_shots,\n", + " \"op5\", # this is the last variable = output\n", + " tokenizer,\n", + " data_path=\"./tutorial_data/\",\n", + " program_uuid=select_program,\n", + " mode=mode,\n", + " n_test_sample=1000,\n", + ")\n", + "\n", + "print(\"Model input looks like this (10-shot ICL):\")\n", + "print(counterfactual_data_module[\"train_dataset\"][0][\"question\"])\n", + "\n", + "# dataset cleaning\n", + "columns_to_remove = [\n", + " \"question\",\n", + " \"source_question\",\n", + " \"answers\",\n", + " \"base_answers\",\n", + " \"source_answers\",\n", + "]\n", + "train_dataset = (\n", + " counterfactual_data_module[\"train_dataset\"]\n", + " .remove_columns(columns_to_remove)\n", + " .with_format(\"torch\")\n", + ")\n", + "eval_dataset = (\n", + " counterfactual_data_module[\"eval_dataset\"]\n", + " .remove_columns(columns_to_remove)\n", + " .with_format(\"torch\")\n", + ")\n", + "test_dataset = (\n", + " counterfactual_data_module[\"test_dataset\"]\n", + " .remove_columns(columns_to_remove)\n", + " .with_format(\"torch\")\n", + ")\n", + "\n", + "\n", + "def add_locations(example):\n", + " example[\"source_0->base.0.pos\"] = [129] # the fixed last token location\n", + " example[\"source_0->base.1.pos\"] = [129] # the fixed last token location\n", + " example[\"subspaces\"] = [0] # the only subspace is a single column\n", + " return example\n", + "\n", + "\n", + "train_dataset = train_dataset.map(add_locations).shuffle(seed=42)\n", + "eval_dataset = eval_dataset.map(add_locations)\n", + "test_dataset = test_dataset.map(add_locations)\n", + "train_dataloader = DataLoader(train_dataset, batch_size=64)\n", + "eval_dataloader = DataLoader(eval_dataset, batch_size=64)\n", + "test_dataloader = DataLoader(test_dataset, batch_size=64)\n", + "\n", + "print(\"\\nTraining data for the intervention should contain these fields:\")\n", + "print(train_dataset[0].keys())" + ] + }, + { + "cell_type": "markdown", + "id": "dd7cbc9a", + "metadata": {}, + "source": [ + "### A 1-d DAS direction learning config\n", + "\n", + "No full rotation learning is needed here." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "55c5687a", + "metadata": {}, + "outputs": [], + "source": [ + "def single_d_low_rank_das_position_config(\n", + " model_type, intervention_type, layer, intervention_types\n", + "):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " intervention_type, # intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " low_rank_dimension=1, # a single das direction\n", + " subspace_partition=[[0, 1]], # dummy partition\n", + " ),\n", + " ],\n", + " intervention_types=intervention_types,\n", + " )\n", + " return config\n", + "\n", + "\n", + "config = single_d_low_rank_das_position_config(\n", + " type(gpt2), \"block_output\", 11, LowRankRotatedSpaceIntervention\n", + ")\n", + "intervenable = IntervenableModel(config, gpt2)\n", + "intervenable.set_device(\"cuda\")\n", + "intervenable.disable_model_gradients()" + ] + }, + { + "cell_type": "markdown", + "id": "c7654d6a", + "metadata": {}, + "source": [ + "### Your own loss and metrics function" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "5cb7919d", + "metadata": {}, + "outputs": [], + "source": [ + "def inputs_collator(inputs):\n", + " for k, v in inputs.items():\n", + " if \"->\" in k:\n", + " inputs[k] = v.tolist()\n", + " elif \"subspace\" in k:\n", + " inputs[k] = [v.tolist()]\n", + " elif v is not None and isinstance(v, torch.Tensor):\n", + " inputs[k] = v.to(\"cuda\")\n", + " return inputs\n", + "\n", + "\n", + "def compute_loss(logits, labels):\n", + " shift_logits = logits[..., :-1, :].contiguous()\n", + " shift_labels = labels[..., 1:].contiguous()\n", + "\n", + " # Flatten the tokens\n", + " loss_fct = CrossEntropyLoss()\n", + " shift_logits = shift_logits.view(-1, 50257)\n", + " shift_labels = shift_labels.view(-1)\n", + " # Enable model parallelism\n", + " shift_labels = shift_labels.to(shift_logits.device)\n", + " loss = loss_fct(shift_logits, shift_labels)\n", + " return loss\n", + "\n", + "\n", + "def compute_metrics(eval_preds, eval_labels):\n", + " total_count = 0\n", + " correct_count = 0\n", + " for eval_pred, eval_label in zip(eval_preds, eval_labels):\n", + " actual_test_labels = eval_label[:, -1]\n", + " pred_test_labels = torch.argmax(eval_pred[:, -2], dim=-1)\n", + " correct_labels = actual_test_labels == pred_test_labels\n", + " total_count += len(correct_labels)\n", + " correct_count += correct_labels.sum().tolist()\n", + " accuracy = round(correct_count / total_count, 2)\n", + " return {\"accuracy\": accuracy}[\"accuracy\"]" + ] + }, + { + "cell_type": "markdown", + "id": "aa940fb2", + "metadata": {}, + "source": [ + "### Learning" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "b78405cb", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Epoch: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████| 10/10 [01:34<00:00, 9.43s/it, loss=0.24, acc=0.91]\n" + ] + } + ], + "source": [ + "intervenable.train_alignment(\n", + " train_dataloader=train_dataloader,\n", + " compute_loss=compute_loss,\n", + " compute_metrics=compute_metrics,\n", + " inputs_collator=inputs_collator,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "32581404", + "metadata": {}, + "source": [ + "### Evaluation" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "05a7b187", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + " \r" + ] + }, + { + "data": { + "text/plain": [ + "0.9763200000000002" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "intervenable.eval_alignment(\n", + " eval_dataloader=test_dataloader,\n", + " compute_metrics=compute_metrics,\n", + " inputs_collator=inputs_collator,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "ec8e0fa8", + "metadata": {}, + "source": [ + "The above means >97% of time, you can intervene on a single activation in the rotated basis to flip the model prediction" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/basic_tutorials/Nested_Intervention.ipynb b/_sources/tutorials/basic_tutorials/Nested_Intervention.ipynb new file mode 100644 index 00000000..bc7b9818 --- /dev/null +++ b/_sources/tutorials/basic_tutorials/Nested_Intervention.ipynb @@ -0,0 +1,376 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "056f4078", + "metadata": {}, + "source": [ + "## Intervening on subcomponents" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "ee206766", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"11/15/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "13019abe", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "This tutorial shows how you can intervene at specific position within representations of a specific head. This is sort of nested interventions where you choose a head to intervene first, and then you choose a specific location, or multiple locations. " + ] + }, + { + "cell_type": "markdown", + "id": "67b92d31", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "dcc513c3", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "aefcde00", + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " VanillaIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene import create_gpt2\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "61544aed", + "metadata": {}, + "source": [ + "### Factual Recall" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "4575c0bb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "The capital of Spain is\n", + "_Madrid 0.10501234978437424\n", + "_the 0.0949699655175209\n", + "_Barcelona 0.0702790841460228\n", + "_a 0.04010068252682686\n", + "_now 0.02824278175830841\n", + "_in 0.02759990654885769\n", + "_Spain 0.022991720587015152\n", + "_Catalonia 0.018823225051164627\n", + "_also 0.018689140677452087\n", + "_not 0.01735665090382099\n", + "\n", + "The capital of Italy is\n", + "_Rome 0.15734916925430298\n", + "_the 0.07316355407238007\n", + "_Milan 0.046878915280103683\n", + "_a 0.03449810668826103\n", + "_now 0.03200329467654228\n", + "_in 0.02306535840034485\n", + "_also 0.02274816483259201\n", + "_home 0.01920313946902752\n", + "_not 0.01640527881681919\n", + "_Italy 0.01577090471982956\n" + ] + } + ], + "source": [ + "config, tokenizer, gpt = create_gpt2()\n", + "\n", + "base = \"The capital of Spain is\"\n", + "source = \"The capital of Italy is\"\n", + "inputs = [tokenizer(base, return_tensors=\"pt\"), tokenizer(source, return_tensors=\"pt\")]\n", + "print(base)\n", + "res = gpt(**inputs[0])\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)\n", + "print()\n", + "print(source)\n", + "res = gpt(**inputs[1])\n", + "distrib = embed_to_distrib(gpt, res.last_hidden_state, logits=False)\n", + "top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "b65ff4b8", + "metadata": {}, + "source": [ + "### Patch Patching on Position-aligned Tokens with in Specific Head\n", + "We path patch on two modules on each layer:\n", + "- [1] MLP output (the MLP output will be from another example)\n", + "- [2] MHA input (the self-attention module input will be from another module)\n", + "\n", + "Different from the basic tutorial, this tutorial intervenes on specific locations within specific heads. For instance, we want to intervene on the last token in head 4 but not other heads.\n", + "\n", + "**To do this, we need to tweak a little when we setup the intervention config.**" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "898907c2", + "metadata": {}, + "outputs": [], + "source": [ + "def position_in_head_config(model_type, intervention_type, layer):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " intervention_type, # intervention type\n", + " \"h.pos\", # intervention unit is now [pos] within [h]\n", + " 1, # max number of unit\n", + " ),\n", + " ],\n", + " intervention_types=VanillaIntervention,\n", + " )\n", + " return config\n", + "\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "dcda628a", + "metadata": {}, + "outputs": [], + "source": [ + "target_head = 0\n", + "\n", + "# should finish within 1 min with a standard 12G GPU\n", + "tokens = tokenizer.encode(\" Madrid Rome\")\n", + "\n", + "data = []\n", + "for layer_i in range(gpt.config.n_layer):\n", + " config = position_in_head_config(\n", + " type(gpt), \"head_attention_value_output\", layer_i\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " sources,\n", + " {\n", + " \"sources->base\": (\n", + " [[[[target_head]], [[pos_i]]]], # intervene w/ target_head's pos_i\n", + " [[[[target_head]], [[pos_i]]]], # intervene on target_head's pos_i\n", + " )\n", + " },\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"ov{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"head_attention_value_output\",\n", + " }\n", + " )\n", + "\n", + " config = position_in_head_config(\n", + " type(gpt), \"head_value_output\", layer_i\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " sources,\n", + " {\n", + " \"sources->base\": (\n", + " [[[[target_head]], [[pos_i]]]], # intervene w/ target_head's pos_i\n", + " [[[[target_head]], [[pos_i]]]], # intervene on target_head's pos_i\n", + " )\n", + " },\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"v{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"head_value_output\",\n", + " }\n", + " )\n", + "df = pd.DataFrame(data)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "fa7273a0", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AAD900lEQVR4nOzdeXxU5b3H8e9MNjLJECAssieCbBJAQvQCSgKiVMSIBhcUBHG7erVCN2vtrdarrbXVamvVilZFRKwCYtEGaZGBUAmiEBSIQGyEgAgxYbKSZebcP9KMhMwkk2SWZPJ59zV9wZznPOd3xtaTfOdZTIZhGAIAAAAAAAAQkszBLgAAAAAAAACA/xAAAgAAAAAAACGMABAAAAAAAAAIYQSAAAAAAAAAQAgjAAQAAAAAAABCGAEgAAAAAAAAEMIIAAEAAAAAAIAQRgAIAAAAAAAAhDACQAAAAAAAACCEEQACAAAAAAAAIYwAEAAAAAAAAAhhBIAAAAAAAABACCMABAAAAAAAAEIYASAAAAAAAAAQwggAAQAAAAAAgBBGAAgAAAAAAACEMAJAAAAAAAAAIIQRAAIAAAAAAAAhjAAQAAAAAAAACGEEgAAAAAAAAEAIIwAEAAAAAAAAQhgBIAAAAAAAABDCCAABAAAAAACAEEYACAAAAAAAAIQwAkAAAAAAAAAghBEAAgAAAAAAACGMABAAAAAAAAAIYQSAAAAAAAAAQAgjAAQAAAAAAABCGAEgAAAAAAAAEMIIAAEAAAAAAIAQRgAIAAAAAAAAhDACQAAAAAAAACCEEQACAAAAAAAAIYwAEAAAAAAAAAhhBIAAAAAAAABACCMABAAAAAAAAEJYeLALQHDt378/2CUAABCShg0bFuwSAAAAAEkEgAAAAO0CX8oBAOAffCkHMAUYAAAAAAAACGkEgAAAAAAAAEAIIwAEAAAAAAAAQhgBIAAAAAAAABDCCAABAAAAAACAEEYACAAAAAAAAIQwAkAAAAAAAAAghBEAAkAIWrx4saZOnapXXnml1X1cf/31mjp1qjIzM1t87q5duzR16lRNnTq11dcHAAAAAPhGeLALAID27pVXXtGrr77q+vvvf/97jRs3zmP7U6dOac6cOSovL5ckjR07Vk899ZSfqwQAoHM783ldLzIyUt27d9ewYcN06aWX6sILLwxCdQAABBcBIAC00Pr165sMALds2eIK/zqyfv36KTIyUjExMcEuBQAAr5nNZsXFxbn+XlZWpm+++UbffPONtmzZoosvvlg/+9nPZDYzGQoA0HkQAAKAl3r27Kni4mJt3rxZ9957r7p06eK2Xf2U2T59+uibb74JZIk+9eSTTwa7BAAAWqxXr15auXKl6++GYejw4cN64YUXtHXrVv3zn//UmDFjlJ6eHsQqAQAILL72AgAvxcXF6fzzz1dFRYU2b97sts3x48e1a9cude3aVRdccEGAKwQAAGcymUwaNGiQHnzwQQ0aNEhS3Wh+AAA6E0YAAkALzJgxQx999JHWr1+vSy+9tNHxDz74QE6nUxdffHGTU4tOnTqlLVu2KDs7W//+97914sQJnTp1Sj169NCYMWM0Z84cDRs2rMlaNm3apNWrV+vgwYMym81KSEjQlVdeqUsuuaTJ8+o35vj973+v/v37a/ny5fr4449VWFioQYMG6cUXX5RUtwnIN998o/vuu0/f+973GvVTXFysV199VR999JGKi4vVvXt3nX/++brpppuavD4AAMEQERGh8847T4cOHVJ+fr7Hdtu2bdPf/vY37du3T6WlpbJarRo5cqSuvPJKnX/++W7PWbx4sXJycrRgwQLNmzdPf/3rX7VhwwZ9/fXXslqtOv/887Vo0SLFx8dLko4cOaLly5frk08+0cmTJ3XWWWfp8ssv1zXXXNPkzw9ffPGFVq9erZycHBUVFSkyMlKDBg3StGnTlJ6ersjIyDZ9RgCA0EUACAAtMHHiRFmtVu3atUvHjx9X7969GxyvH1EwY8YMbdiwwWM/mzZt0m9+8xtJdWsV1a+z980332jDhg3auHGjfvKTn7gNGSXpT3/6k95++21JdSMbYmJitG/fPu3Zs0cHDx706l4OHz6shx56SHa7XV26dFFYWJhX50nSoUOHtGTJEhUVFUmSoqKiVFJSonXr1mnr1q265ZZbvO4LAIBAMQxDkuR0Ot0e+/3vf6+//e1vkuqezxaLRXa7Xf/617/0r3/9S7Nnz9b3v/99mUwmt/3X1tbqxz/+sXbt2uUK4woLC/X+++9r9+7deuaZZ3TkyBHdd999KisrU0xMjGpra3X48GE9//zzOnHihO6++263fb/66qt69dVXXfdgsVhUWVmpffv2ad++ffrggw/029/+tsH6hwAA1CMABIAWiIyM1NSp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VqqmpiZAlQEAOhICQABog8suu0x33nmnFi1a5PU5SUlJ6tKliwzD0MMPP6yvv/5aUt3GHxs2bND//u//ymq1ejz/5ptvliRt2rRJTz/9tGtjkNLSUj3//PP6+9//7goZ/WHq1Kk6++yz5XA4dP/992vHjh2utQpzcnJ03333KSIiwm/XBwCgtcxms6677jpJ0j//+U8VFBRIqvtSr3504Jo1a7R06VKVlpZKkkpKSvT8889r3bp1kqQFCxYoKioqYDV37dpVd9xxhyRp7dq1+r//+78GX8DV1tZq//79+stf/qIbb7zR4wYlAIDOjU1AACDAYmNjdeutt+qZZ57Rzp07dcMNNygmJkZVVVWqra3V0KFDddlll+mPf/yj2/OnTZumffv26e2339Y777yjd999VzExMSovL5fT6dS1116rL774oskpum0RHh6uBx98UEuWLNHx48f14x//2LWG4alTp9S9e3fdeeed+t3vfueX6wMA0BaXXnqpXnnlFRUWFuq1117T/fffL0maM2eODh8+rL/97W9asWKFVq5c2eD5KklXXnmlrrrqqoDXnJ6erlOnTunPf/6zNm7cqI0bNyoqKkpRUVEqKytz1QcAgCeMAASAIMjIyNDDDz+s0aNHq0uXLnI4HBo4cKAWLlyoZ555RhaLpcnz/+d//kcPPvigRo8eraioKDkcDo0cOVI/+9nPdOedd/q9/kGDBmnp0qVKT09Xr1695HA41LVrV82aNUt//vOf1b9/f7/XAABAa0REROjaa6+VJP3jH//QkSNHJEkmk0k/+MEP9Ktf/UoTJ05U165dVVFRoa5du2rSpEl67LHHtHjxYplMpqDUfe211+qVV17RVVddpcGDB8tsNqu8vFxxcXEaM2aM5s+frxdffFG9evUKSn0AgPbNZNTP20KntH///mCXAABASGrpJgE8kwEA8I9AbtwDtFeMAAQAAAAAAABCGAEgAAAAAAAAEMIIAAEAAAAAAIAQxi7AADqNzz//XL/4xS9adM7dd9+tadOm+akiAABwJp7XAAD4HgEggE6jtrZWxcXFLTqnurraT9UAAAB3eF4DAOB77ALcybHjIAAA/sEuwAAAtA/sAgywBiAAAAAAAAAQ0ggAAQAAAAAAgBBGAAgAAAAAAACEMAJAAAAAAAAAIIQRAAIAAAAAAAAhjAAQAAAAAAAACGEE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Qo7ZqA52CX5TU10b7BIAAPBaTTW/S9Zbt26dLBaLMjMzlZaW1uDYj370I82cOVMfffSR/v3vf+u+++7T888/77afY8eO6dixY3rsscd03333uW3jdDp14403usK/W2+9Vc8991yDQO7OO+/USy+9pNtuu02GYej73/++Lr74YrfTiOutXr1avXv31j//+U+NHj3a9f6NN96oH/zgB5o2bZoOHDig7Oxs/e53v9NPf/pTLz8dtAZrAMIPjGAXAAAhySFDDjl5+fgV2k8tAmMAQMdh4rnVwGOPPdYo/JOkbt266a233lJsbKwk6ZVXXtGJEyc89nPllVd6DP8k6b333nNNDx4zZoyef/55t6PxbrnlFt1xxx2S6qYiP/30083ew4svvtgg/Ks3YMAAvfnmmzKb62Kpp556StXVofulbHtAAAjfM0UGuwIAAFogItgF+E1EZFiwSwAAwGvhkUxSrNetWzfddtttHo/3799fN954o6S6ab5/+9vfPLb9/ve/3+S1Vq9e7frzD3/4Q4WFef754ac//alMJlOj89wZMWKErrjiCo/HzzvvPF1yySWSpG+++UZZWVlN9oe2IQAEAAAAAABoRy688EJ16dKlyTbTp093/Xn79u1u24SFhWnSpElN9pOdne3686WXXtpk28GDB2vEiBGSpEOHDunrr7/2qj5v2ni6B/gGASAAAAAAAEA7cs4557SozdGjR922iY+PbzZIrA/xrFarzjrrrGavO2zYsEbnNlefN2083QN8gwAQAAAAAACgHYmJiWlRm9LSUrdtoqOjm+2n/lxvrinJtfZgU9f1tj9v7gG+wQT7diw/P1/r1q3T559/rsLCQhmGobi4OA0fPlwzZszQuHHjgl0iAAAAAADwsfodeb1tY7VaW30tq9WqkydPenVNSSorK/PquoG8BzSPALCdWr9+vZ5//nk5HA5JUkREhMLCwlRYWKjCwkJt3bpVM2fO1H//938HuVIAAAAAAOBLBw8ebFGbfv36tfpaffv21cmTJ1VaWqpvvvlGffr0abL9/v37vbpuIO8BzWMKcDtUUFDgCv+SkpL09NNP6+2339Zf//pXLV261LUN+Pvvv69//etfwS0WAAAAAAD41JYtW1RVVdVkm3/84x+uP19wwQWtvtbp537wwQdNtj106JByc3MlSYMGDWpyzcANGzY0e21f3QOa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U1M1aNAg7d+/3/eAj8ZQsCWXX365ioqKtGzZMr300kt6+eWXFR8fL4/H45tZ+e1vf1vf+ta3glE+AAAAAAAIIKueAtyy1mbbtbSPdC7SWDIDcNasWZKk7du36+9//3u7jvnhD3/ou/fNd77zHSvKCrmT7/eXkpKiESNGtNp+zpw5+s1vfqPLLrtMSUlJqqmpUWJioi699FI98MAD+t73vmd1yQAAAAAAwBJGYDeztU0d3Pz0E+iaETSWzACcNm2aLrvsMm3evFk/+MEP9PXXX+uOO+5ose327dt13333yel0yjAMTZkyRZdccokVZYVcTk6OcnJyOnTMBRdcoAsuuMCiigAAAAAAQCiYCvQMwCAEasGbsogAsyQAlKQXX3xRl156qUpKSnTffffpwQcfbPK02oyMDBUXF+vQoUOSJNM0NXDgQD399NNWlQQAAAAAABAeGmfadSldrV40smQJsHTiQR55eXm67LLLZJqmjh07pqKiIhnGiT8sH374ob7++muZpinTNHXppZfq/fffD9/HcwMAAAAAAARIKJ+9ES4bgseyAFA6EQK+//77Wr16tW644QYlJyf7Aj/TNJWQkKBrr71WL730kj744AP179/fynIAAAAAAADCw+nci6/LbG1cH4LGsiXAJ7vuuut03XXXSZKqq6t19OhRJSQkKDExMRinBwAAAAAACCuflJfK7HJLgDsq0q+v6whKAHgyu90uu90e7NMCAAAAAACEjaFJ/fTB11+Eugx0E5YEgJ988omGDRtmRdcAAAAAAABdnqF/LZMFgsCSewCOHDlSkyZN0osvvqj6+norTgEAAAAAANB1ReLTMyLpWiKMJQGgaZpyuVyaM2eOzj77bP385z/Xvn37rDgVwpFZF+oKAADogMj9sLK+riHUJQAA0G7H646HuoSuI9SP7w1UmMcEyKCxJADMysryPem3tLRU//3f/61hw4Zp8uTJevnll3X8OH+pIxt/g4HuzJR03GxQg+llC+DmlVeGxGbBFtmfPEf0xQEAIozZ7cYti5/Aa9V3T4F+SjCCwpIA8N1331VBQYEWLlyo5ORkXxj47rvv6sYbb9SAAQP0y1/+Up9//rkVp0eoGTGhrgBAiBl8EBBwBv+z7n9GbKh/ey0TExv0570BANBpMbHd7GdJq2fjeU/aAtXP6fbF8t+QsSQAlKShQ4fqD3/4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yCOPdLjfqqoqTZ48WXl5eZKkHj16SJK2bdumbdu2afny5XrrrbcUHx/f5Ljnn39eubm5vl8bhqGkpCS53W5t3rxZmzdv1uOPP661a9dq5MiRrdbQt29fRUVFtbivsZ7TwQzALmDPnj1yOp0aOnSorr766lCXAwAAAAAATpNhhtGmb55KHMytI2prazV9+nQdOnRI559/vnbs2KGKigpVVFToN7/5jQzD0J///Gc99dRTHf69uP3225WXl6devXpp5cqVqq6uVnV1tVauXKlevXrpgw8+0IIFC5odV19fr549e2revHl666235PF4VF5ersrKSj3zzDPq27evioqKNG3aNNXU1LRaw5YtW1RSUtLiNm3atA5f06kIAC1SVlamGTNmaPr06SooKGi17cKFCzV9+nQ9++yzzfbV19fr0UcflWEYWrBggWw2fssAAAAAAOjygrX896QlvkYbW9MlwUGorQMWL16szz77THa7Xa+99pouvPBCSZLdbte9997rC+juu+++Vpfsnuqjjz7SCy+8IEl68skndf311/uW3l5//fX6v//7P0nSc889p127djU5dty4cfrss8/0t7/9TZMnT1bPnj0lSfHx8brlllv00ksvSZI+//xzLV++vGMXHGCkSRbp06ePRo8eLUlyuVx+2xUXF6uwsFCSlJ2d3Wz/ihUrdODAAU2bNk3nnnuuJbUCAAAAAIDgaiuMC9x20oy7NramM/Ssr60jlixZIkm66aabNHDgwGb77777bhmGoS+//FLvvvtuu/t9/vnnZZqm0tLSdMMNNzTbn5OTo7S0NJmmqaVLlzbZN2zYMJ155pl++544caJSU1MlnVhOHEoEgBZqDPQ2bdqkhoaGFtusX79ekjR48OBmf4CLi4u1fPlyJScna86cOVaWCgAAAAAAgi1oswDDdGunqqoqbdmyRZL0rW99q8U2AwcO1IgRIyRJb7/9drv7fueddyRJ11xzjQyj+U0QDcPw3Y6tI/026tu3ryTp+PHjHT42kAgALTRu3DjFxsbK7XZrx44dLbbZsGGDpOaz/0zT1GOPPab6+nrNnz9fdrvd4moBAAAAAEDQBCBAC/W9A4MVAO7Zs0fmv2YMnn/++X7bNe775z//2a5+TdPUnj172t1vY9v2Kisr8y0bbq1/Sfq3f/s39e7dW3FxcRowYIBycnL02muvdeh8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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df[\"layer\"] = df[\"layer\"].astype(\"category\")\n", + "df[\"token\"] = df[\"token\"].astype(\"category\")\n", + "nodes = []\n", + "for l in range(gpt.config.n_layer - 1, -1, -1):\n", + " nodes.append(f\"ov{l}\")\n", + " nodes.append(f\"v{l}\")\n", + "df[\"layer\"] = pd.Categorical(df[\"layer\"], categories=nodes[::-1], ordered=True)\n", + "\n", + "g = (\n", + " ggplot(df)\n", + " + geom_tile(aes(x=\"pos\", y=\"layer\", fill=\"prob\", color=\"prob\"))\n", + " + facet_wrap(\"~token\")\n", + " + theme(axis_text_x=element_text(rotation=90))\n", + ")\n", + "print(g)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "7730ab69", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AACqEklEQVR4nOzde5zddX3v+/eaFUhmIiODBkFDKNdqARW1FjgW0Y1i5SJeSqnS6hbcfej2/tg9PS1Ke9DywNPuXXdxoz3aqhWU7iKKXJRaLcGtRo7VoHgLUWiC4RYyZCBMBrOyzh/sTImZhEmyZn3z/a3n8/Hgwaz53V7rx0+JH39r/VrdbrcbAAAAAKCRhkoHAAAAAABzxwAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAabF7pAPpjxYoVpRMAAAAA2E1HHnnkTm/jDkAAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAGzjvf+c686EUvyic+8Yld3sfZZ5+dF73oRfnSl76009suX748L3rRi/KiF71ol48PADBb80oHAABQt0984hP55Cc/Of36r/7qr/LsZz97u+tv3Lgxr3nNa7Jhw4YkybOe9ax88IMfnONKAIDB5Q5AAAB66oYbbtjh8q997WvTw7+aPfWpT81BBx2UhQsXlk4BANghdwACANATT37ykzM+Pp6bbrop73jHO7JgwYIZ19vykdmnPOUpueeee/qZ2FP/7b/9t9IJAACz4g5AAAB64olPfGKe//zn5+GHH85NN9004zr33ntvli9fntHR0fzGb/xGnwsBAAaTOwABAOiZU045Jd/85jdzww035KUvfek2y//pn/4pmzdvzn/4D/8hQ0Pb//+iN27cmK997Wv51re+ldtvvz333XdfNm7cmP322y/PfOYz85rXvCZHHnnkDltuvPHGXHXVVVm5cmWGhobyK7/yK3nFK16Rl7zkJTvcbsuDOf7qr/4qT3va03LZZZfl//v//r+sXbs2S5Ysycc+9rEkjz4E5J577skf/dEf5WUve9k2+xkfH88nP/nJfPOb38z4+HjGxsby/Oc/P7//+7+/w+MDAPSaASAAAD1z/PHHZ5999sny5ctz7733Zv/9999q+ZbvBzzllFPy5S9/ebv7ufHGG/OBD3wgSTI0NDT9PXv33HNPvvzlL+erX/1q/s//8/+ccciYJP/jf/yPXHnllUmSVquVhQsX5kc/+lF+8IMfZOXKlbN6L6tXr86f/dmfZf369VmwYEHa7fastkuSVatW5V3velfWrVuXJJk/f34mJiZy7bXX5utf/3rOPffcWe8LAGB3GQACANAze++9d170ohflC1/4Qv7pn/4p55xzzvSyW2+9NXfeeWcOPvjg/Oqv/uoOB4BPeMITcvbZZ+c3f/M3c/jhh2fvvfdOt9vNnXfemU996lP58pe/nP/6X/9rnvWsZ+UpT3nKVtt+9atfnR7+nXHGGfmP//E/Zt99983ExEQuu+yy/M//+T9n9eCOD3/4wznwwAPz/ve/P0cffXSS5Oc///njbrdp06b83//3/51169Zl0aJF+cM//MM873nPS6vVyvLly/P//D//Tz784Q8/7n4AAHrFdwACANBTp5xySpJHP+77WFse/rFl+Y684AUvyB/8wR/k137t17L33nsnefROvoMOOih//Md/nOc973l55JFHpve5Rbfbzcc//vEkyQtf+MK8613vyr777pskGR0dzVve8pa87GUvm9VTiNvtdv7iL/5ieviXJE972tMed7t/+Zd/yc9+9rMMDQ3loosuyq//+q+n1WolSZ797Gfn4osvziOPPPK4+wEA6BUDQAAAeurXfu3XsmTJkqxevTq33nprkmRqaio33nhjhoaGtvux3dlqtVrTDxDZsv8tfvrTn+bOO+9Mkrzuda+bcfvH3pW4Iy996Uuz33777XTf0qVLkyTHHXdcDj/88G2WL1myJCeddNJO7xcAYFf5CDAAAD13yimn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jOssWrQoixcvzurVq3PLLbfMegC4p6j5f1j1uj3p7zCklnPftP9BW/t1U7NarvnEf988ngd6urd/55qfxT57vsdHuW72HK6bX9pfT/f272puT/x76vE80NO9/bumtQODwwDwcdx5553pdrtJkoMPPni76x188MFZvXp1Vq9e3a80KKqWP+gk/rADMIj8ewrg8Rkc/9L+erq3f+e/59kT+Azq41i3bt30z/vtt99219uybHx8fM6bAAAAAGC23AH4ODZu3Dj98/z587e73pZlk5OTc94EAAAAUEItd14m7hx9LHcAAgAAAECDuQPwcSxYsGD656mpqYyMjMy43tTUVJJkeHi4L12/7LLLLsunP/3p7S5/zWtek9e//vUzLntgjprmwtjY2FavHyiTsUt+uT2pp7/m9sR1U0rN7YnrppSa2xPXTSk1tyeum1Jqbk9cN6VoL6fm/pnae21oaGj673N9vAfmdO+95br5dwaAj+Ox3/u3bt267Q4At3xXYD/+gz2TDRs25N57793u8ocffjjtdruPRXOj5vegvZya+7WXU3O/9nJq7tdeTs392supuV97GTW3J3X397O91WpVfa56reZz0et2A8DHsXjx4rRarXS73axatSqLFy+ecb1Vq1YlSQ466KB+5k1buHBh9t9//+0uHxkZSafT6WPR3Kj5PWgvp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Gze1J3f39aB8aGpqeXWzevHnOj1eLpl43uzIcNAB8HMPDwzniiCOyYsWKfOc738kJJ5ywzTpr167N6tWrkyTPetaz+p2YJDnnnHNyzjnnbHf52rVrG/GE4prfg/Zyau7XXk7N/drLqblfezk192svp+Z+7WXU3J7U3d+P9rGxsbTb7WzevLnqc9VrNZ+LHbU/+clP3un9eQjILJx00klJkptuuin33XffNsuvuuqqdLvd7LfffjnmmGP6XAcAAAAA22cAOAunnHJKDjjggGzcuDHve9/7cvvttyd59MEfV155Za677rokj96FN2/e1jdVnnfeeTnjjDPywQ9+cMZ9b9iwIRMTE9N/bblVd2pqaqvfb3nICAAAAADsDB8BnoW99tor73nPe3L++efnjjvuyDve8Y6MjIxk48aN0wO70047LSeffPJO7/vP//zPc+utt27z+8997nP53Oc+N/367LPPzmtf+9pd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u92e8+PVct4T181jGQAOiMnJyUxNTZXO2G3j4+OlE3aZ9nJq7tdeTs392supuV97OTX3ay+n5n7tZdTcntTd34/20dHRtNvtdDqdTExMzPnxatHU62ZXhoMGgAOi2+2m0+mUzthtNb8H7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6i5Pam7v9/tNZ+rXqv5XPS6vf4vhQMAAAAAtssAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAazAAQAAAAABrMABAAAAAAGswAEAAAAAAabF7pgH5av359rrzyytx88825//77M3/+/Bx22GF5+ctfnuOOO26X97tp06Zce+21Wbp0adasWZMkedrTnpYXvvCFOfXUUzNv3synedmyZfnBD36Q2267LWvXrs369evT7XYzNjaWpz/96XnZy16Wo446ape7AAAAAGBgBoCrVq3K+eefn/Xr1ydJhoeHs2HDhixfvjzLly/P6aefnje96U07vd/Jycm8973vzYoVK5Ike++9d5Jk5cqVWblyZb7+9a/nwgsvzIIFC7bZ9pOf/GR+/vOfT79euHBhpqamcs899+See+7J0qVL84pXvCLnnnvurrxlAAAAABiMAeAvfvGLvP/978/69etz8MEH593vfncOOeSQTE1N5eqrr87ll1+ea665JoccckhOPvnkndr3pZdemhUrVmThwoV5+9vfPn0n4bJly/LXf/3X+fGPf5wPf/jDede73rXNti94wQuy//775xnPeEae8pSnZK+99kq3283Pf/7z/OM//mP+5V/+JVdffXUOO+ywnHTSSb04FQAAAAAMmIEYAN5www25++67M3/+/FxwwQVZtGhRkmT+/Pk566yzsm7dulx//fW57LLLctJJJ233I7u/7Pbbb89NN92UJHnb296W448/fnrZ8ccfn82bN+cDH/hAbrzxxrzqVa/KwQcfvNX2r3vd67bZZ6vVyuLFi/POd74z99xzT374wx/mK1/5igEgAAAANMQD/+Wtvd1fT/f27/b9yw/N0Z7pt4F4CMiNN96YJDnxxBOnh3+P9epXvzqtVivr1q3L97///Vnvd+nSpel2uznwwAO3Gv5tccIJJ+TAAw9Mt9vN0qVLd6q51WrliCOOSJLcf//9O7UtAAAAAGzR+AHg5ORkbrvttiTJc57znBnXWbRoURYvXpwkueWWW2a97+9973tJkmOPPTatVmub5a1WK8cee+xW687W5s2b85Of/CRJcsABB+zUtgAAAACwReM/AnznnXem2+0myTYfwX2sgw8+OKtXr87q1atntd9ut5s777zzcfe7ZMmSJJn1fh966KHceeed+fznP58f//jHSZLTTjttVtsCAAAAwC9r/ABw3bp10z/vt99+211vy7Lx8fFZ7XdycjIbN26c9X4nJyczOTmZ4eHhbdZZtmxZLrroom1+v3Dhwpx33nnbvXMRAAAAAB5P4z8CvGVIlzz60I/t2bJscnJyVvt97Hqz2e+O9r3XXntl3333zROf+MQMDT36j2R4eDivf/3r84IXvGBWPQAAAAAwk8bfAViD5z73ufn7v//7JMmmTZtyxx135NOf/nQuvfTSfOlLX8oFF1yww7sMAQAAAGB7Gj8AXLBgwfTPU1NTGRkZmXG9qampJJnxI7ozeex6W7bd0X5nu+958+bl8MMPzwUXXJCLLrooy5Yty0c+8pH8yZ/8yQ63u+yyy/LpT396u8tf85rX5PWvf/2Myx543Ko9x9jY2FavHyiTsUt+uT2pp7/m9sR1U0rN7YnrppSa2xPXTSk1tyeum1Jqbk9cN6VoL6fmfu3l1Nw/U/vuaPwA8LF3zq1bt267A8At3xU42xM8PDyc4eHhTE5ObvU9g9vb75b1d8bpp5+eZcuWZdmyZZmYmMjo6Oh2192wYUPuvffe7S5/+OGH0263d+r4e6Ka34P2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+3vd3vgB4OLFi9NqtdLtdrNq1aosXrx4xvVWrVqVJDnooINmtd9Wq5XFixfntttum962F/t9rCc96UnTP9999907HAAuXLgw+++//3aXj4yMpNPp7HTDnqbm96C9nJr7tZdTc7/2cmru115Ozf3ay6m5X3sZNbcndfdrL6fm/h2178pwsPEDwOHh4RxxxBFZsWJFvvOd7+SEE07YZp21a9dm9erVSZJnPetZs973M5/5zNx222357ne/u911li9fPr3uzrr77runf37sR5lncs455+Scc87Z7vK1a9fO+gnHe7Ka34P2cmru115Ozf3ay6m5X3s5NfdrL6fmfu1l1Nye1N2vvZya+3fU/uQnP3mn99f4pwAn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DWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAANZgAIAAAAAA02r3QA/dFqtTI0VP+8t91ul07YZdrLqblfezk192svp+Z+7eXU3K+9nJr7tZdRc3tSd7/2cmru73W7AeCAGB4ezsjIyIzL7u9zy+4YGxvb6nXN7Uk9/TW3J66bUmpuT1w3pdTcnrhuSqm5PXHdlFJze+K6KUV7OTX3ay+n5v6Z2neHAeCAmJyczNTUVOmM3TY+Pl46YZdpL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeRs3tSd392supuX9H7bsyHDQAHBDdbjedTqd0xm6r+T1oL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeRs3tSd392supub/X7fV/KRwAAAAAsF0GgAAAAADQYAaAAAAAANBgBoAAAAAA0GAGgAAAAADQYAaAAAAAANBgBoAAAAAA0GDzSgf00/r163PllVfm5ptvzv3335/58+fnsMMOy8tf/vIcd9xxu7zfTZs25dprr83SpUuzZs2aJMnTnva0vPCFL8ypp56aefNmPs333HNPfvjDH2blypX56U9/mp/97GfZuHFjkuQLX/jCLvcAAAAAwBYDMwBctWpVzj///Kxfvz5JMjw8nA0bNmT58uVZvnx5Tj/99LzpTW/a6f1OTk7mve99b1asWJEk2XvvvZMkK1euzMqVK/P1r389F154YRYsWLDNtp/5zGfy1a9+dTfeFQAAAADs2EAMAH/xi1/k/e9/f9avX5+DDz447373u3PIIYdkamoqV199dS6//PJcc801OeSQQ3LyySfv1L4vvfTSrFixIgsXLszb3/726TsJly1blr/+67/Oj3/843z4wx/Ou971rm22bbVaOfDAA3P44YfnsMMOy+TkZP7hH/6hJ+8ZAAAAAJIBGQDecMMNufvuuzN//vxccMEFWbRoUZJk/vz5Oeuss7Ju3bpcf/31ueyyy3LSSSdt9yO7v+z222/PTTfdlCR529veluOPP3562fHHH5/NmzfnAx/4QG688ca86lWvysEHH7zV9m9961vTbrenXy9btmx33yoAAAAAbGUgHgJy4403JklOPPHE6eHfY7361a9Oq9XKunXr8v3vf3/W+126dGm63W4OPPDArYZ/W5xwwgk58MAD0+12s3Tp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xz9OkrzqVa/K6aefniT5/d///V3NAgAAAAD+t90aAA4NDaXVaj3uet1ud4fr/fLyVquVTZs27WoWAAAAAPC/zdvdHcx2fvh4683BVxECAAAAwMDbrQHgxz/+8V51AAAAAABzYE6eAsyeZ8WKFaUTAAAAANhNRx555E5vMydPAQYAAAAA9gwGgAAAAADQYLv9EJCdcc899+Suu+7Kgw8+mH322SdPfepTs//++/czAQAAAAAGypwPAFetWpX//t//e6666qqsWrVqm+VLlizJa17zmrz97W/PQQcdNNc5AAAAADBQ5vQhIB//+Mfz9re/PQ8//HCSZKZDtVqtJMnIyEguueSSvOENb5irnIHmISAAAAAA9duVh4DM2R2AH//4x3Puueem1Wql2+2m1WrlGc94Ro488sg84QlPyEMPPZQVK1bkxz/+cbrdbjZs2JBzzz03SQwBAQAAAKBH5uQOwLvuuitHHHFEHn744bRarfzBH/xB/q//6//KkiVLtll39erVufjii/M3f/M32bx5cxYuXJjbbrstBxxwQK+zBpo7AAEAAADqt8fcAXjppZdOD/8++tGP5o1vfON21z3ooIPyP/7H/8iv//qv541vfGMefvjhXHrppbnwwgvnIg0AgD76xCc+kU9+8pPb/H7vvffO2NhYjjzyyLz0pS/NC17wggJ1AACDYWgudnrDDTek1WrlpS996Q6Hf4/1hje8IS972cvS7XbzpS99aS6yAAAoZGhoKGNjY9N/dbvd3HPPPfna176W9773vXn/+9+fzZs3l84EAGikObkD8Gc/+1mS5Mwzz9yp7V7xilfkS1/60vT2AAA0w6JFi3LFFVdMv+52u1m9enX+3//3/83Xv/71fOUrX8kzn/nMnHHGGQUrAQCaaU7uAHzwwQeTJPvtt99Obbdl/YceeqjnTQAA7DlarVaWLFmSP/3TP53+nugbbrihcBUAQDPNyR2AT3rSk3LPPffk9ttv36nt7rjjjiQ7PzgEAKBOe+21V4499tisWrVq+s+CM1m2bFmuueaa/OhHP8qDDz6YffbZJ894xjPyile8Is9//vNn3Oad73xnbrnllrz+9a/POeeck//5P/9nvvzlL+euu+7KPvvsk+c///l54xvfmCc96UlJkp///Oe57LLL8q//+q954IEHcsABB+TUU0/Nb//2b2doaPv/v/lPfvKTXHXVVbnllluybt267L333lmyZEle/OIX54wzzsjee++9W+cIAGB3zckA8Oijj87dd9+dT33qU/kv/+W/7PAPTFt0Op186lOfSqvVytFHHz0XWQAA7IG63W6SzPgdgN1uN3/1V3+Va665Jsmj3yU4MjKS9evX5xvf+Ea+8Y1v5Mwzz8zb3/72tFqtGfe/adOm/OEf/mGWL18+PYxbu3Ztrr/++nzve9/Lhz70ofz85z/PH/3RH+Whhx7KwoULs2nTpqxevTof+chHct999+Wtb33rjPv+5Cc/mU9+8pPT72FkZCSTk5P50Y9+lB/96Ef5p3/6p/zFX/xFnvjEJ+72eQIA2FVz8hHgLd/d8sMf/jBvectbpv9AtD3dbjf/+T//59x6661JHv0uQAAAmu8Xv/hFvvvd7yZJnvrUp26z/B//8R+nh3+/+7u/m89//vO55ppr8rnPfS5nnXVWkuTzn/98rrrqqu0e4+qrr86qVaty0UUX5Ytf/GKuv/76vO9978vIyEjuvPPOfPzjH8+FF16YY445JpdffnmuvfbaXHPNNdN/pr3qqqvyb//2bzPu9xOf+ET22WefvP3tb8/VV1+d6667Ll/60pfygQ98IIsXL85tt92Wiy++eLfPEwDA7piTAeB5552XxYsXJ0k++tGP5jnPeU4uv/zy3HvvvVutd9999+Xyyy/Pc5/73Hz0ox9Nq9XK4sWLc955581FFgAAe4hut5tVq1blwgsvzOrVq5MkL33pS7daZ+PGjfnUpz6VJHnlK1+Z//Sf/lP22WefJMno6Gje/OY357TTTkuS/P3f/32mpqZmPNZDDz2U9773vTn++OMzNDSUdrudF7zgBfmd3/mdJI8O8vbee++8733vmx5CLly4MO94xzvytKc9Ld1uN0uXLt1qnxs2bMhHP/rRzJs3LxdffHFe+cpXZnR0NMmjH2t+/vOfn4svvjgLFizIsmXLsmLFil6cNgCAXTInHwFesGBBPvvZz+bFL35xHn744Xzve9/L7//+7ydJ9tlnnyxcuDAbNmyYflhI8ugfAhcuXJirrroq8+fPn4ssAAAKue+++/KqV71q+vVDDz2UX/ziF9Ovjz/++Lzyla/captvf/vbeeihhzI0NJRzzjlnxv3+/u//fq6//vpMTEzk29/+dv6P/+P/2Gado446Ks9+9rO3+f1zn/vcfPzjH0+SnHXWWWm321stHxoayrOf/ez8/Oc/z89+9rOtli1dujQbNmzIc57znDzjGc+Yse1pT3tanvGMZ+S73/1uvv3tb+fII4+ccT0AgLk2JwPAJPn1X//1fP3rX8/rXve6/OAHP5j+/cTERB588MFtPhZ8zDHH5LLLLssxxxwzV0kAABSyefPmjI+Pz7jsP/2n/5Szzz57m+/w23LX3K/8yq9s9yFxixYtypIlS3LHHXdkxYoVMw4ADznkkBm33XfffR93nS3Hfeihh7b6/ZY/3/7whz/carD5yzZs2JAkueeee7a7DgDAXJuzAWCSPPOZz8z3vve9XHfddbnqqqvyrW99K3fdddf0k9sOPPDA/MZv/EZe/epX5+Uvf/l2v7gZAIC6PeUpT8kVV1yR5NGHv91333350pe+lE996lP5xCc+kSOPPDLPfe5zt9rmgQceSJI8+clP3uG+Fy1alDvuuGN6/V+25Sm/v+yxd/xtb50tD7PbtGnTVr+///77kzz6MeWNGzfusC/Jdj+eDADQD3M6AEySVquV0047bfr7WQAAGGztdjsHHHBA3vCGN2ThwoW59NJLc+GFF+bv/u7vtjuI29NseWLx6aefnne/+92FawAAdmxOHgJy6KGH5tBDD83b3/72udg9AAAN8epXvzqHHnpoJiYm8rd/+7dbLdvyEd21a9fucB/33XffVuv3w9jYWJJs85A7AIA90ZwMAFetWpV/+7d/y1FHHTUXuwcAoCGGhobye7/3e0mSG264IatWrZpetuWhGXfccUfWrVs34/Zr166d3qafD9nY8ufc733ve9Pf8wcAsKeakwHg/vvvnyTb/bJmAADY4sQTT8xBBx2UzZs357LLLpv+/fOe97zss88+2/z+sT75yU9m8+bNGR0dzfOe97x+Jeekk07KyMhIJicn89GPfnSH605OTm71xGMAgH6bkwHgr/7qryZJ7rzzzrnYPQAADTI0NJTf+Z3fSZJ85Stfmf4z5IIFC6bvDvzc5z6Xj370o3nwwQeTJBMTE/nIRz6Sa6+9Nkny+te/PvPnz+9b8+joaP7gD/4gSXL11Vfnfe97X372s59NL9+0aVNWrFiRv/u7v8vrXve67T6gBACgH+bkISCvec1rsnTp0nz2s5/Nu971rrk4BAAADfLSl740n/jEJ7J27dp86lOfyh//8R8nefTPlatXr84111yTT3/607niiiuycOHCbNiwYfpBHK94xSvyyle+su/NZ5xxRjZu3Ji/+Zu/yVe/+tV89atfzfz58zN//vw89NBD030AAKXNyR2Ab3rTm3LUUUflm9/8Zv7yL/9yLg4BAECD7LXXXjnrrLOSJP/8z/+cn//850mSVquVd7/73bnoooty/PHHZ3R0NA8//HBGR0dzwgkn5OKLL8473/nOtFqtIt1nnXVWPvGJT+SVr3xlDj744AwNDWXDhg154hOfmGc+85n5vd/7vXzsYx/LokWLivQBACRJq9vtdudix//2b/+WV73qVVm+fHnOPPPMvO1tb8sJJ5yQvffeey4Ox+NYsWJF6QQAAAAAdtOuPPhsTgaAhx56aJJkamoqd9111/T/I9tut/OkJz0pw8PDO45qtfLTn/6011kDzQAQAAAAoH67MgCck+8AvOOOO6aHflv+3u12s2nTptxzzz2Pu32pj3AAAAAAQNPMyQBwyZIlhngAAAAAsAeYszsAAQBojltvvTUXXHDBTm3z1re+NS9+8YvnqAgAgNmakwEgAADNsmnTpoyPj+/UNo888sgc1QAAsDPm7CnA7Fk8BAQAAACgfnvMQ0B+2f33359rrrkmN998c9asWZMHH3ww++yzT5761KfmN37jN3LaaaflSU96Uj9SAAAAAGCgzOkdgA8++GD+6I/+KJ/4xCcyNTW13fXmz5+fN77xjbn44ovzhCc8Ya5yBpo7AAEAAADqtyt3AM7ZAHDVqlV58YtfnNtvvz2zOUSr1cqhhx6ar371qznooIPmImmgGQACAAAA1G+PGQA+8sgjefazn50f//jHSZInPOEJed3rXpeTTz45RxxxRBYuXJgNGzZk5cqV+ed//udcfvnlefDBB5Mkz3jGM7J8+fLstddevc4aaAaAAAAAAPXbYwaAH/zgB/Pud787rVYrxx13XP7xH/8xT33qU7e7/l133ZWzzjorX//619NqtfLf/tt/yzve8Y5eZw00A0AAAACA+u3KAHBoDjryD//wD0mSAw88MF/84hd3OPzbst71118/vd4VV1wxF1kAAAAAMHDmZAD4k5/8JK1WK2984xszOjo6q2322WefnHvuuel2u/nJT34yF1kAAAAAMHDmzcVOH3nkkSTJUUcdtVPb/dqv/VqS5Be/+EXPmwbdokWL+nas0dHRtNvtdDqdTExM9O24vVJzv/Zyau7XXk7N/drLqblfezk192svp+Z+7eXU3K+9jJrbk3r65+Q7AJ/+9Kfntttuy9/+7d/mDW94w6y3+8QnPpE3vvGNOfLII6cfIAIAAAAA7Lo5uQPwJS95SVasWJGvfvWrOzUA/MpXvpJWq5WXvvSlc5E10MbHx/t2rFqm39tTc7/2cmru115Ozf3ay6m5X3s5NfdrL6fmfu3l1NyvvYya25My/WNjYzu9zZwMAN/2trfl7/7u7/KZz3wmb3rTm/Kbv/mbj7vN1772tVxxxRUZGRnJ2972trnIGmidTmegjtsrNfdrL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392suouT3Zs/vn5CEgRx55ZD7+8Y9n3rx5efnLX55LL710+nsBf9kvfvGLfPjDH86pp56avfbaKx//+MdzxBFHzEUWAAAAAAycObkD8MILL0zy6EeBr7322rztbW/Le9/73rzgBS/IEUcckYULF2bDhg1ZuXJlvva1r+WBBx5Ikpx22mn54Q9/OL39TC644IK5SAYAAACARpqTAeCf/dmfpdVqJcn038fHx3Pttddus263251e59prr51xnccyAAQAAACA2ZuTAWDy6GBvNr/b0e9/2ZZBIQAAAAAwO3MyAPyXf/mXudgtAAAAALCT5mQA+MIXvnAudgsAAAAA7KQ5eQowAAAAALBnmLPvAGyi9evX58orr8zNN9+c+++/P/Pnz89hhx2Wl7/85TnuuON2en+dTie33nprVq5cmZUrV+anP/1p7r777iTJ2Wefnde+9rW9fgsAAAAADBgDwFlatWpVzj///Kxfvz5JMjw8nA0bNmT58uVZvnx5Tj/99LzpTW/aqX2uXbs2733ve+ciFwAAAACSGADOyi9+8Yu8//3vz/r163PwwQfn3e9+dw455JBMTU3l6quvzuWXX55rrrkmhxxySE4++eSd2vfw8HAOPfTQHH744TnssMPymc98JnfdddccvRMAAAAABo0B4CzccMMNufvuuzN//vxccMEFWbRoUZJk/vz5Oeuss7Ju3bpcf/31ueyyy3LSSSdl3rzZndZFixbliiuuSKvVmv7d5z73uTl5DwAAAAAMJg8BmYUbb7wxSXLiiSdOD/8e69WvfnVarVbWrVuX73//+7Pe79DQ0FbDPwAAAADoNQPAxzE5OZnb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Gmxe6QD6o91uD9Rxe6Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supub/m9l7q93mo/bzvyf2tbrfbLR0BAAAAMCjOvnVl6YRZueLow0sn0CPuABwQ4+PjfTvW6Oho2u12Op1OJiYm+nbcXqm5X3s5NfdrL6fmfu3l1NyvvZya+7WXU3O/9nJq7q+5fa70Y5ZQ+3kv0T82NrbT2xgADohOpzNQx+2Vmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svp+b+mtt7qd/nofbzvif3ewgIAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANNi80gH9tH79+lx55ZW5+eabc//992f+/Pk57LDD8vKXvzzHHXfcLu9306ZNufbaa7N06dKsWbMmSfK0pz0tL3zhC3Pqqadm3ryZT/OyZcvygx/8ILfddlvWrl2b9evXp9vtZmxsLE9/+tPzspe9LEcdddQudwEAAADAwAwAV61alfPPPz/r169PkgwPD2fDhg1Zvnx5li9fntNPPz1vetObdnq/k5OTee9735sVK1YkSfbee+8kycqVK7Ny5cp8/etfz4UXXpgFCxZss+0nP/nJ/PznP59+vXDhwkxNTeWee+7JPffck6VLl+YVr3hFzj333F15ywAAAAAwGAPAX/ziF3n/+9+f9evX5+CDD8673/3uHHLIIZmamsrVV1+dyy+/PNdcc00OOeSQnHzyyTu170svvTQrVqzIwoUL8/a3v336TsJly5blr//6r/PjH/84H/7wh/Oud71rm21f8IIXZP/9988znvGMPOUpT8lee+2Vbrebn//85/nHf/zH/Mu//EuuvvrqHHbYYTnppJN6cSoAAAAAGDAD8R2AN9xwQ+6+++7Mnz8/F1xwQQ455JAkyfz583PWWWflt37rt5Ikl112WTZt2jTr/d5+++256aabkiRve9vbcvzxx6fVaqXVauX444/PW9/61iTJjTfemH/7t3/bZvvXve51eclLXpLFixdnr732SpK0Wq0sXrw473znO/Nrv/ZrSZKvfOUru/7mAQAAABhoAzEAvPHGG5MkJ554YhYtWrTN8le/+tVptVpZt25dvv/97896v0uXLk23282BBx6Y448/fpvlJ5xwQg488MB0u90sXbp0p5pbrVaOOOKIJMn999+/U9sCAAAAwBaNHwBOTk7mtttuS5I85znPmXGdRYsWZfHixUmSW265Zdb7/t73vpckOfbYY9NqtbZZ3mq1cuyxx2617mxt3rw5P/nJT5IkBxxwwE5tCwAAAABbNP47AO+88850u90kycEHH7zd9Q4++OCsXr06q1evntV+u91u7rzzzsfd75IlS5Jk1vt96KGHcuedd+bzn/98fvzjHydJTjvttFltCwAAAAC/rPEDwHXr1k3/vN9++213vS3LxsfHZ7XfycnJbNy4cdb7nZyczOTkZIaHh7dZZ9myZbnooou2+f3ChQtz3nnnbffORQAAAAB4PI3/CPCWIV3y6EM/tmfLssnJyVnt97HrzWa/O9r3XnvtlX333TdPfOITMzT06D+S4eHhvP71r88LXvCCWfUAAAAAwEwafwdgDZ773Ofm7//+75MkmzZtyh133JFPf/rTufTSS/OlL30pF1xwwQ7vMgQAAACA7Wn8AHDBggXTP09NTWVkZGTG9aamppJkxo/ozuSx623Zdkf7ne2+582bl8MPPzwXXHBBLrrooixbtiwf+chH8id/8ic73O6yyy7Lpz/96e0u/93f/d289rWvfdzj98KWuxiHhoYyNjbWl2P2Us392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzf1/b735gbvffI/34Z1jzNZPU09/4AeBj75xbt27ddgeAW74rcLb/sIaHhzM8PJzJycmtvmdwe/vdsv7OOP3007Ns2bIsW7YsExMTGR0d3e66GzZsyL333rvd5Q8//HDa7fZOHX93tVqtvh+zl2ru115Ozf3ay6m5X3s5NfdrL6fmfu3l1NyvvZya+2tu77V+nofaz/ue3t/4AeDixYvTarXS7XazatWqLF68eMb1Vq1alSQ56KCDZrXfVquVxYsX57bbbpvethf7fawnPelJ0z/ffffdOxwALly4MPvvv/92l4+MjKTT6ex0w64YGhqaPuebN2/uyzF7qeZ+7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6m5v+b2udKPOULt571E/64MGhs/ABweHs4RRxyRFStW5Dvf+U5OOOGEbdZZu3ZtVq9enSR51rOeNet9P/OZz8xtt92W7373u9tdZ/ny5dPr7qy77757+ufHfpR5Juecc07OOeec7S5fu3btrJ9wvLvGxsbSbrezefPmvh2zl2ru115Ozf3ay6m5X3s5NfdrL6fmfu3l1NyvvZya+2tunyv9OA+1n/cS/U9+8pN3epvGPwU4SU466aQkyU033ZT77rtvm+VXXXVVut1u9ttvvxxzzDGz3u+JJ56YVquVNWvW5Jvf/OY2y7/xjW9kzZo1abVa0w1bPN4UvdPp5POf/3yS5IlPfOJ271wEAAAAgB0ZiAHgKaeckgMOOCAbN27M+973vtx+++1JHn1Ax5VXXpnrrrsuyaN30c2bt/VNkeedd17OOOOMfPCDH9xmv4ccckhOPPHEJMkll1ySZcuWpdvtptvtZtmyZfnQhz6U5NEB5JIlS7ba9sYbb8yf//mf51vf+lYefPDB6d9v2rQpP/jBD/Jnf/Zn03cP/s7v/M70l0oCAAAAwM5o/EeAk2SvvfbKe97znpx//vm544478o53vCMjIyPZuHHj9OezTzvttJx88sk7ve+3vOUtueuuu7JixYpcdNFF2XvvvZMkjzzySJLk6U9/et785jfPuO23vvWtfOtb30ry6EeV582bl4cffnj67sChoaH89m//dk477bSd7gIAAACAZEAGgEmyZMmSXHLJJfnsZz+bm2++OWvXrs3ChQtz6KGH5tRTT81xxx23S/sdHh7OxRdfnGuvvTZLly7NmjVrkiSHHXZYTjrppJx66qnb3FWYJM973vPylre8Jd///vdzxx135IEHHsjDDz+cBQsW5IADDshRRx2Vl770pdvcOQgAAAAAO2NgBoBJsu++++bcc8/NueeeO+ttPvaxjz3uOvPmzcuZZ56ZM888c9b7feITn5iXvexlednLXjbrbXZHqUdR78mPwJ6Nmvu1l1Nzv/Zyau7XXk7N/drLqblfezk192svp+b+mtt7qd/nofbzvif3t7rdbrd0BAAAAMCgOPvWlaUTZuWKow8vnUCPDNQdgIOsn4/SHh0dTbvdTqfTycTERN+O2ys192svp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Ozf01t8+VfswSaj/vJfrHxsZ2ehsDwAGx5cEig3LcXqm5X3s5NfdrL6fmfu3l1NyvvZya+7WXU3O/9nJq7q+5vZf6fR5qP+97cv9Q6QAAAAAAYO4YAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAg3kK8IBot9sDddxeqblfezk192svp+Z+7eXU3K+9nJr7tZdTc7/2cmrur7m9l/p9Hmo/73tyf6vb7XZLRwAAAAAMirNvXVk6YVauOPrw0gn0iDsAB8T4+HjfjjU6Opp2u51Op5OJiYm+HbdXau7XXk7N/drLqblfezk192svp+Z+7eXU3K+9nJr7a26fK/2YJdR+3kv0j42N7fQ2BoADotPpDNRxe6Xmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs392supub/m9l7q93mo/bzvyf0eAgIAAAAADWYACAAAAAANZgAIAAAAAA1mAAgAAAAADWYACAAAAAAN5inAA6Ldbg/UcXul5n7t5dTcr72cmvu1l1Nzv/Zyau7XXk7N/drLqbm/5vZe6vd5qP2878n9rW632y0dAQAAADAozr51ZemEWbni6MNLJ9Aj7gAcEOPj43071ujoaNrtdjqdTiYmJvp23F6puV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzv/Zyau6vuX2u9GOWUPt5L9E/Nja209sYAA6ITqczUMftlZr7tZdTc7/2cmru115Ozf3ay6m5X3s5NfdrL6fm/prbe6nf56H2874n93sICAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA0mAEgAAAAADSYASAAAAAANJgBIAAAAAA02LzSAfRHu90eqOP2Ss392supuV97OTX3ay+n5n7t5dTcr72cmvu1l1Nzf83tvdTv81D7ed+T+1vdbrdbOgIAAABgUJx968rSCbNyxdGHl06gR9wBOCDGx8f7dqzR0dG02+10Op1MTEz07bi9UnO/9nJq7tdeTs392supuV97OTX3ay+n5n7t5dTcX3P7XOnHLKH2816if2xsbKe3MQAcEJ1OZ6CO2ys192svp+Z+7eXU3K+9nJr7tZdTc7/2cmru115Ozf01t/dSv89D7ed9T+73EBAAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABoMANAAAAAAGgwA0AAAAAAaDADQAAAAABosHmlA+iPdrs9UMftlZr7tZdTc7/2cmru115Ozf3ay6m5X3s5NfdrL6fm/prbe6nf56H2874n97e63W63dAQAAADAoDj71pWlE2bliqMPL51Aj7gDcECMj4/37Vijo6Npt9vpdDqZmJjo23F7peZ+7eXU3K+9nJr7tZdTc7/2cmru115Ozf3ay6m5v+b2udKPWULt571E/9jY2E5vYwA4IDqdzkAdt1dq7tdeTs392supuV97OTX3ay+n5n7t5dTcr72cmvtrbu+lfp+H2s/7ntzvISAAAAAA0GAGgAAAAADQYAaAAAAAANBgBoAAAAAA0GAGgAAAAADQYAaAAAAAANBgBoAAAAAA0GAGgAAAAADQYAaAAAAAANBg80oH0B/tdnugjtsrNfdrL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs39Nbf3Ur/PQ+3nfU/ub3W73W7pCAAAAIBBcfatK0snzMoVRx9eOoEecQfggBgfH+/bsUZHR9Nut9PpdDIxMdG34/ZKzf3ay6m5X3s5NfdrL6fmfu3l1NyvvZya+7WXU3N/ze1zpR+zhNrPe4n+sbGxnd7GAHBAdDqdgTpur9Tcr72cmvu1l1Nzv/Zyau7XXk7N/drLqblfezk199fc3kv9Pg+1n/c9ud9DQAAAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMEMAAEAAACgwQwAAQAAAKDBDAABAAAAoMHmlQ6gP9rt9kAdt1dq7tdeTs392supuV97OTX3ay+n5n7t5dTcr72cmvtrbu+lfp+H2s/7ntzf6na73dIRAAAAAIPi7FtXlk6YlSuOPrx0Aj3iDsABMT4+3rdjjY6Opt1up9PpZGJiom/H7ZWa+7WXU3O/9nJq7tdeTs392supuV97OTX3ay+n5v6a2+dKP2YJtZ/3Ev1jY2M7vY0B4IDodDoDddxeqblfezk192svp+Z+7eXU3K+9nJr7tZdTc7/2cmrur7m9l/p9Hmo/73tyv4eAAAAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDGQACAAAAQIMZAAIAAABAgxkAAgAAAECDzSsdQH+02+2BOm6v1NyvvZya+7WXU3O/9nJq7tdeTs392supuV97OTX319zeS/0+D7Wf9z25v9XtdrulIwAAAAAGxdm3riydMCtXHH146QR6xB2AA2J8fLxvxxodHU273U6n08nExETfjtsrNfdrL6fmfu3l1NyvvZya+7WXU3O/9nJq7tdeTs39NbfPlX7MEmo/7yX6x8bGdnobA8AB0el0Buq4vVJzv/Zyau7XXk7N/drLqblfezk192svp+Z+7eXU3F9zey/1+zzUft735H4PAQEAAACABjMABAAAAIAGMwAEAAAAgAYzAAQAAACABjMABAAAAIAGMwAEAAAAgAYzAAQAAACABjMABAAAAIAGm1c6oJ/Wr1+fK6+8MjfffHPuv//+zJ8/P4cddlhe/vKX57jjjtvl/W7atCnXXnttli5dmjVr1iRJnva0p+WFL3xhTj311MybN/Npvueee/LDH/4wK1euzE9/+tP87Gc/y8aNG5MkX/jCF3a5BwAAAAC2GJgB4KpVq3L++edn/fr1SZLh4eFs2LAhy5cvz/Lly3P66afnTW96007vd3JyMu9973uzYsWKJMnee++dJFm5cmVWrlyZr3/967nwwguzYMGCbbb9zGc+k69+9au78a4AAAAAYMcGYgD4i1/8Iu9///uzfv36HHzwwXn3u9+dQw45JFNTU7n66qtz+eWX55prrskhhxySk08+eaf2femll2bFihVZuHBh3v72t0/fSbhs2bL89V//dX784x/nwx/+cN71rndts22r1cqBBx6Yww8/PIcddlgmJyfzD//wDz15zwAAAACQDMgA8IYbbsjdd9+d+fPn54ILLsiiRYuSJPPnz89ZZ52VdevW5frrr89ll12Wk046absf2f1lt99+e2666aYkydve9rYcf/zx08uOP/74bN68OR/4wAdy44035lWvelUOPvjgrbZ/61vfmna7Pf162bJlu/tWAQAAAGArA/EQkBtvvDFJcuKJJ04P/x7r1a9+dVqtVtatW5fvf//7s97v0qVL0+12c+CBB241/NvihBNOyIEHHphut5ulS5dus/yxwz8AAAAAmAuNHwBOTk7mtttuS5I85znPmXGdRYsWZfHixUmSW265Zdb7/t73vpckOfbYY9NqtbZZ3mq1cuyxx261LgAAAAD0U+MHgHfeeWe63W6SbPMR3Mfasmz16tWz2m+3282dd975uPtdsmTJTu0XAAAAAHqp8QPAdevWTf+83377bXe9LcvGx8dntd/Jycls3Lhx1vudnJzM5OTkrPYNAAAAAL3S+AHgliFd8uhDP7Zny7LZDukeu95s9rsz+wYAAACAXmn8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1/dDQ0PVq1cv/e///q9SUlL0z3/+Uw6Hw+1eVO1cYG7atEmWZenRRx/Vb37zG0lSs2bN9PDDD2vatGlKT0/XpEmTipV/0sUd+Icffljvv/++NmzYYKwAtHuBaVmWWrZsqd69e5e7Xn5+vj788ENZlqXf//731TRd+exeYF4uKSlJlmVpwIAB6t+/f7FllmWpf//+OnbsmBYuXKjExERjBWBZ7FBgnjlzRgEBAfLy8ir2/b1798qyLD344INlbjtkyBAtXLhQaWlpVT1mmexeYHp5eSkqKkpRUVHKzMzU999/r//3//6fDh8+rMzMTC1YsEALFixQy5Ytdffdd6tbt25udbq7HQvMtLQ0WZalESNGuP4ei/676Dln5MiRxco/6eL/qzFjxmjjxo3avXu3idEl2bvA/P7772VZlp544gndddddxZZ5eXlpwIABKiws1Mcff6xFixZp6NChql27tp599lnl5uZq8+bNSkhI0ODBg6t9dsneBea3334rp9OpAQMGaNy4cVdc37IstWnTRi+99JJmzpyp7777TosWLTJWANq1wDx+/PhVb1t09g+uHQpAVNjRo0fl4+Ojdu3aVXrb9u3by9fXV8eOHauCySrGzgXmqlWr3GqHtLLsWmD+/PPPkqSHHnqoxDJfX189++yzCgkJ0f/93//p008/lcPhKHVdU+xcYBYdqduhQ4di37/09IUuXbqUuu0dd9yh999/X/v376+y+a7EzgXmc889p7i4ONfO3YQJExQWFlbquufOndOHH34oScavqXQpOxeYl9uzZ48k6b777itznf79+2vhwoWu5yx3YocCMygoSFlZWbpw4UKxi9Y7HA75+/uXezpnQECAAgICip3qX93sXmBeqkGDBnrooYf00EMPadeuXVq5cqXWrFmj3NxcpaWlaffu3froo4/UtWtX9ezZ0+gpqEXsWGBmZWXJx8enxGVAgoOD5evrK4fDoebNm5e6bbNmzVSzZk2dPn26GiYtnZ0LzAMHDsjb21t33HFHmetER0fr448/1o8//lhsv2P48OHatGmT1q1bZ6wAtHOBWfR78/DDD1d624cffliLFy/Wrl27qmCyirFrgTl27Fhb78d6WoFJAYgK8/b2lsPhUEFBQYk3mVdSUFCgCxcuGD191s4FZtGTZuvWrVW7du1KbXvhwgVt3LixKsaqMLsWmFlZ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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "filtered = df\n", + "filtered = filtered[filtered[\"pos\"] == 4]\n", + "g = (\n", + " ggplot(filtered)\n", + " + geom_bar(aes(x=\"layer\", y=\"prob\", fill=\"token\"), stat=\"identity\")\n", + " + theme(axis_text_x=element_text(rotation=90), legend_position=\"none\")\n", + " + scale_y_log10()\n", + " + facet_wrap(\"~token\", ncol=1)\n", + ")\n", + "print(g)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.ipynb b/_sources/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.ipynb new file mode 100644 index 00000000..8f950656 --- /dev/null +++ b/_sources/tutorials/basic_tutorials/Subspace_Partition_with_Intervention.ipynb @@ -0,0 +1,290 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "b955bab5", + "metadata": {}, + "source": [ + "## Subspace Interventions" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "2dae33d4", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"11/28/2023\"" + ] + }, + { + "cell_type": "markdown", + "id": "6e2ac478", + "metadata": {}, + "source": [ + "### Overview\n", + "\n", + "Subspace of the basis may be used to represent different orthogonal causal variables. In other words, each column or each partition of columns may be used to represent different high-level causal model. In this tutorial, we want to illustrate how to setup the intervenable to do this.\n", + "\n", + "We introduce a new concept of **subspace** intervention. For the intervention, you can specify if you only want to intervene on a subspace rather than the fullspace.\n", + "\n", + "Then, you can intervene on different subspaces given your examples in a batch, and test for different counterfactual behaviors. Accordingly, you can also train different subspaces to target different counterfactual behaviors using DAS." + ] + }, + { + "cell_type": "markdown", + "id": "2deea8d3", + "metadata": {}, + "source": [ + "### Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "ed1e62ce", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "fcfde6a4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import pandas as pd\n", + "from pyvene import embed_to_distrib, top_vals, format_token\n", + "from pyvene import (\n", + " IntervenableModel,\n", + " RotatedSpaceIntervention,\n", + " RepresentationConfig,\n", + " IntervenableConfig,\n", + ")\n", + "from pyvene import create_gpt2\n", + "\n", + "%config InlineBackend.figure_formats = ['svg']\n", + "from plotnine import (\n", + " ggplot,\n", + " geom_tile,\n", + " aes,\n", + " facet_wrap,\n", + " theme,\n", + " element_text,\n", + " geom_bar,\n", + " geom_hline,\n", + " scale_y_log10,\n", + ")\n", + "\n", + "config, tokenizer, gpt = create_gpt2()" + ] + }, + { + "cell_type": "markdown", + "id": "5e68d4a2", + "metadata": {}, + "source": [ + "### Subspace alignment config\n", + "You just need to specify your intial subspace partition in the config.\n", + "\n", + "Currently, only DAS-related interventions are supporting this. But the concept of subspace intervention can be extended to other types of interventions as well (e.g., vanilla intervention where swapping a subset of activations)." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "5906aebd", + "metadata": {}, + "outputs": [], + "source": [ + "def simple_subspace_position_config(\n", + " model_type, intervention_type, layer, subspace_partition=[[0, 384], [384, 768]]\n", + "):\n", + " config = IntervenableConfig(\n", + " model_type=model_type,\n", + " representations=[\n", + " RepresentationConfig(\n", + " layer, # layer\n", + " intervention_type, # repr intervention type\n", + " \"pos\", # intervention unit\n", + " 1, # max number of unit\n", + " subspace_partition=subspace_partition,\n", + " )\n", + " ],\n", + " intervention_types=RotatedSpaceIntervention,\n", + " )\n", + " return config\n", + "\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")]" + ] + }, + { + "cell_type": "markdown", + "id": "eafda98f", + "metadata": {}, + "source": [ + "### Patch Patching on the First Subspace of Position-aligned Tokens\n", + "We path patch on the subspace (indexing from 0 to 384) of two modules on each layer:\n", + "- [1] MLP output (the MLP output will be from another example)\n", + "- [2] MHA input (the self-attention module input will be from another module)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "2058f96f", + "metadata": {}, + "outputs": [], + "source": [ + "# should finish within 1 min with a standard 12G GPU\n", + "tokens = tokenizer.encode(\" Madrid Rome\")\n", + "\n", + "data = []\n", + "for layer_i in range(gpt.config.n_layer):\n", + " config = simple_subspace_position_config(\n", + " type(gpt), \"mlp_output\", layer_i\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for k, v in intervenable.interventions.items():\n", + " v[0].set_interchange_dim(768)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " sources,\n", + " {\"sources->base\": ([[[pos_i]]], [[[pos_i]]])},\n", + " subspaces=[[[0]]],\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"f{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"mlp_output\",\n", + " }\n", + " )\n", + "\n", + " config = simple_subspace_position_config(\n", + " type(gpt), \"attention_input\", layer_i\n", + " )\n", + " intervenable = IntervenableModel(config, gpt)\n", + " for k, v in intervenable.interventions.items():\n", + " v[0].set_interchange_dim(768)\n", + " for pos_i in range(len(base.input_ids[0])):\n", + " _, counterfactual_outputs = intervenable(\n", + " base,\n", + " sources,\n", + " {\"sources->base\": ([[[pos_i]]], [[[pos_i]]])},\n", + " subspaces=[[[0]]],\n", + " )\n", + " distrib = embed_to_distrib(\n", + " gpt, counterfactual_outputs.last_hidden_state, logits=False\n", + " )\n", + " for token in tokens:\n", + " data.append(\n", + " {\n", + " \"token\": format_token(tokenizer, token),\n", + " \"prob\": float(distrib[0][-1][token]),\n", + " \"layer\": f\"a{layer_i}\",\n", + " \"pos\": pos_i,\n", + " \"type\": \"attention_input\",\n", + " }\n", + " )\n", + "df = pd.DataFrame(data)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "f39d0bd5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAB7CAAAewgFu0HU+AADtk0lEQVR4nOzdeXxU1f3/8ffMZJ1JQgJhDyAQFWUXi4pWgSjYihEEUSGCli5aF7T+qlZF/Vql1AWhSrWCihgpooIErCiyKCIgssqmAmISQUJMCNlJZu7vj5gxIZmssyQ3r+f3cftN5t577udOkBPec849FsMwDAEAAAAAAAAwJWugCwAAAAAAAADgOwSAAAAAAAAAgIkRAAIAAAAAAAAmRgAIAAAAAAAAmBgBIAAAAAAAAGBiBIAAAAAAAACAiREAAgAAAAAAACZGAAgAAAAAAACYGAEgAAAAAAAAYGIEgAAAAAAAAICJEQACAAAAAAAAJkYACAAAAAAAAJgYASAAAAAAAABgYgSAAAAAAAAAgIkRAAIAAAAAAAAmRgAIAAAAAAAAmBgBIAAAAAAAAGBiBIAAAAAAAACAiREAAgAAAAAAACZGAAgAAAAAAACYGAEgAAAAAAAAYGIEgAAAAAAAAICJEQACAAAAAAAAJkYACAAAAAAAAJgYASAAAAAAAABgYgSAAAAAAAAAgIkRAAIAAAAAAAAmRgAIAAAAAAAAmBgBIAAAAAAAAGBiBIAAAAAAAACAiREAAgAAAAAAACZGAAgAAAAAAACYGAEgAAAAAAAAYGIEgAAAAAAAAICJEQACAAAAAAAAJkYACAAAAAAAAJgYASAAAAAAAABgYkGBLgDe8c033wS6BAAAWpSzzjor0CUAAAAAdUIACAAA4Cd8YAcAgP/xoR3AFGAAAAAAAADA1AgAAQAAAAAAABMjAAQAAAAAAABMjAAQAAAAAAAAMDECQAAAAAAAAMDECAABAAAAAAAAEyMABAAAAAAAAEyMABAAmom7775bw4YN0/z58xvcxg033KBhw4Zp5cqV9T53x44dGjZsmIYNG9bg6wMAAAAA/C8o0AUAQCDMnz9fr7/+uvv75557TgMGDPB4fFFRkcaNG6f8/HxJUv/+/TVr1iwfVwkAAGpyen9eLiQkRDExMTrrrLM0YsQIXXLJJQGoDgCApoMAEAAkffjhhzUGgOvXr3eHf81Zp06dFBISIofDEehSAADwGqvVqlatWrm/z8vL07Fjx3Ts2DGtX79eCQkJevDBB2W1MgEKANAyEQACaNFiY2OVnZ2tTz/9VFOnTlVYWFi1x5VPmW3fvr2OHTvmzxK9aubMmYEuAQAAr2vbtq0WLVrk/t4wDKWlpenll1/Whg0btHr1avXr10+JiYkBrBIAgMDhIzAALVqrVq00ePBgFRQU6NNPP632mIyMDO3YsUNRUVG64IIL/FwhAACoL4vFoq5du+rRRx9V165dJZWN9gcAoKViBCCAFm/kyJHauHGjPvzwQ40YMaLK/o8++kgul0sJCQk1Th0qKirS+vXrtXnzZn333Xc6fvy4ioqK1Lp1a/Xr10/jxo3TWWedVWMt69at05IlS3TgwAFZrVadccYZuuaaa3TFFVfUeF75whzPPfecOnfurOTkZG3ZskWZmZnq2rWr5s2bJ6lsEZBjx47p/vvv15VXXlmlnezsbL3++uvauHGjsrOzFRMTo8GDB2vSpEk1Xh8AgKYoODhYAwcOVGpqqg4fPuzxuE2bNmn58uXat2+fcnNzFRkZqXPOOUfXXHONBg8eXO05d999t3bu3KnJkycrKSlJixcv1qpVq3T06FFFRkZq8ODB+t3vfqc2bdpIkn744QclJydr69atOnHihDp06KCrrrpK1113XY2/X3z99ddasmSJdu7cqaysLIWEhKhr164aPny4EhMTFRIS0qj3CADQMhAAAmjxLrroIkVGRmrHjh3KyMhQu3btKu0vHzEwcuRIrVq1ymM769at0z//+U9JZc8iKn/O3rFjx7Rq1SqtWbNG9913X7UhoyTNmTNH77zzjqSykQsOh0P79u3Tnj17dODAgTrdS1pamh577DHl5OQoLCxMNputTudJUmpqqu655x5lZWVJkkJDQ3Xy5EmtWLFCGzZs0JQpU+rcFgAATYVhGJIkl8tV7b7nnntOy5cvl1TWf9vtduXk5Ojzzz/X559/rtGjR+uuu+6SxWKptv3S0lL99a9/1Y4dO9xhXGZmpv73v/9p165deuGFF/TDDz/o/vvvV15enhwOh0pLS5WWlqaXXnpJx48f1x133FFt26+//rpef/119z3Y7XYVFhZq37592rdvnz766CM9/fTTlZ5/CABAdQgAAbR4ISEhGjZsmFJSUvTRRx8pKSnJvW/37t1KT09Xt27ddPbZZ9cYAEZEROiGG27Qr3/9a8XHxyskJESGYSg9PV1vvPGGVq1apWeffVb9+/dX+/btK527Zs0ad/iXmJioW265RdHR0Tp58qSSk5O1ePHiOi3c8eKLL6pjx4564okn1KdPH0llIw5qU1paqv/7v/9TVlaW2rZtq7/+9a86//zzZbFYtGPHDj311FN68cUXa20HAICmpKSkRNu3b5dUthDW6d5++213+HfjjTfqxhtvVGRkpE6ePKk333xTixcv1nvvvae4uDiNHTu22mssW7ZMISEhmj59ui644AIZhqGNGzfqH//4h9LT0/Xaa69p06ZN6tu3r+644w516tRJ+fn5evnll5WSkqIlS5bo6quvVrdu3aq0O3/+fEVFRenmm29WQkKCoqKi3Pf0/PPP69tvv9WMGTP0j3/8w8vvHADAbHgGIACobHSfVDbdt6LyxT/K99fkkksu0Z/+9Cede+657hEAFotFXbp00d/+9jedf/75OnXqlLvNcoZh6LXXXpMkXXbZZbrnnnsUHR0tSYqKitKf//xnXXnllXVahdhms+npp592h3+S1Llz51rPW7t2rQ4dOiSr1arp06frV7/6lXukw4ABAzRjxgydOnWq1nYAAGgKDMNQamqqHn/8caWlpUlSlRH4RUVFeuONNyRJY8aM0R//+EdFRkZKKut/b7vtNo0aNUqStGDBAhUXF1d7rby8PE2bNk0XXXSRrFarbDabLrnkEl1//fWSfgkI//73v7tDSIfDoalTp6pz584yDEOffPJJpTbz8/M1d+5cBQUFacaMGRozZoyioqIklU1rHjx4sGbMmKGwsDBt2rRJ33zzjTfeNgCAiREAAoCkc889V127dlVaWpp2794tSSouLta6detktVo9TtutK4vF4l5ApLz9cgcPHlR6erokaeLEidWeX3FUYk1GjBih1q1b17u+8n94XHjhhYqPj6+yv2vXrho6dGi92wUAwB+OHz+ua6+91r2NHDlSkydP1meffSap7HEfY8aMqXTOl19+qby8PFmtVo/97KRJk2S1WnXy5El9+eWX1R7Tu3dvDRgwoMrrgwYNcn89fvz4Ko/lsFqt7vMOHTpUad8nn3yi/Px89evXT+ecc0611+3cubN7n6faAAAoxxRgAPjZyJEjNXfuXH344Yfq06ePPvvsM+Xn52vw4MHuB3jX5vjx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deDAAR08eFAHDhxQTk6OJOnJJ59U375969TOxo0b9cEHH+jgwYMqLi5WbGysfvWrX+m6665TVFSUL28BAAAAAAAALRwBYA02b96s2bNnN6qNl156Sf/73/8kSVarVaGhoTpy5IiWLVumTz75RE8++aS6dOnijXIBAAAAAACAKggAaxETE6OePXsqPj5enTp10syZM+t87ocffqj//e9/slgsmjhxoq655hqFhobqu+++08yZM/X999/riSee0AsvvKDgYFY7AgAAAAAAgPcRANZg6NChSkhIcH+fl5dX53NLSkq0cOFCSdJvf/tbjR8/3r2ve/fumjZtmm6//XYdPXpUq1at0m9/+1vvFQ4AAAAAAAD8rEUEgHl5edqwYYO2bdum9PR0/fTTTyotLVWbNm3Uv39/jR49Wp06dapyns1ma/A1d+3apezsbFksFl177bVV9rdr106XXnqpVq1apXXr1hEAAgAAAAAAwCdaxCrAKSkpmjNnjjZu3KgjR47IZrPJ6XTq6NGjWrlype6++27t2LHDq9fctWuXJKlLly5q27ZttccMHDhQkvT111+rqKjIq9cHAAAAAAAApBYyArB169aaOHGiBg8erK5du7oDwMOHDys5OVlbt27Vs88+q7lz5yosLMwr10xLS5MkdevWzeMx5fsMw1B6erri4+O9cm0AAAAAAACgXIsYAXjllVfq+uuvV/fu3d3Tem02m3r27KkHH3xQXbp0UU5OjjZs2OC1a2ZlZUkqCx89qbgvOzvba9cGAAAAAAAAyrWIALAmwcHBGjBggCRp3759Xmu3fEpvaGiox2Mq7isoKPDatQEAAAAAAIByLWIKsCSlp6drxYoV2rNnjzIyMlRUVCTDMCodUz5qDwAAAAAAADCLFhEAfvrpp5o1a5ZKS0slSRaLRXa7XcHBwZLKRusVFRWpuLjYa9csf5ZgTW1W3Ge322tsLzk5WQsXLvS4f9y4cZo8eXI9q6xZToFDOu7VJgEACJhWrVpV+fDP32JiYrzepiPC4fU2AQAIlKbQXwNmZPoAMCcnR3PmzFFpaal69+6tSZMmKT4+3h3+SWXh2uLFi736l0zr1q116NChGkcVVtxX2z8I8vPzlZGR4XF/QUGB+/mG3mK1tPgZ4gAAE7FaA9+vebuvliQL/TUAwESaQn8NmJHpA8CtW7eqsLBQYWFhmjZt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devWysrK0vTp0/WnP/1JvXr1ktVqVXZ2tpYuXaovvvhCERERuuGGGwJ0JwAAAAAAADA7AkAfCQsL0yOPPKLp06fru+++0wMPPOBeBbiwsFDBwcG65JJLlJSUpI4dOwa6XAAAAAAAAJgUi4D4UI8ePfTkk0+qV69ekiSn06nCwkL316dOnXIvJAIAAAAAAAD4AiMAfWjVqlV68cUXFRUVpXvuuUd9+/aV3W5XamqqFi1apC+++EK7d+/W448/rrPOOivQ5QIAAAAAAMCECAB9ZP/+/Xr++ecVEhKiJ554QnFxce59vXr10qOPPqqHH35YX331lV5++WU988wzNbaXnJyshQsXetw/btw4TZ482Wv1S1JOgUM67tUmAQAImFatWskwjIDWEBMT4/U2HREOr7cJAECgNIX+GjAjAkAfSUlJkSSdf/75lcK/chaLRddcc42++uorffPNN8rOzq7xHwX5+fnKyMjwuL+goEA2m63xhVdgtTBDHABgHlZr4Ps1b/fVkmShvwYAmEhT6K8BMyIA9JG0tDRJUvv27T0e06FDB/fXx44dqzEAdDgcateuncf9drtdTqezAZV65jJcXm0PAIBAcrlcXh1R0JAwz9t9tSQZ9NcAABPxdn8t+eYDOKC5IQD0EYvFIknKzMz0eMzx47/Mr7Xb7TW2l5SUpKSkJI/7MzMzlZ2dXc8qa5Zfku/V9gAACKScnByvBnCxsbH1PsfbfbUk5efRXwMAzMPb/bXUsD4bMBvG1vpI9+7dJUlffvllpaCvopUrV0oqG93XuXNnv9UGAAAAAACAloMA0Ed+85vfyGKxqLCwUI899ph27typkpISSWXTfWfPnq3NmzdLkq666iqGJAMAAAAAAMAnmALsI7169dKUKVP06quvKi0tTdOmTZPValVISIiKiorcx11wwQW64YYbAlgpAAAAAAAAzIwRgD6UmJioZ599VldccYU6d+6soKAglZaWKiYmRueff77uu+8+PfTQQwoKIocFAAAAAADN2/z582WxWGSxWDR//vxAl4MKSJ4aISEhQQkJCTUe07NnT915551+qggAAAAAAACojBGAAAAAAAAAgIkRAAIAAAAAAAAmRgAIAAAAAAAAmBgBIAAAAAAAAGBiBIAAAAAAAAABtm7dOvcKuo899pgk6euvv9add96ps88+Ww6HQzExMbrwwgv13HPPqbi42GNbZ5xxhiwWi8444wxJUnFxsebMmaOhQ4eqY8eOstls7n0VFRYW6oUXXtAVV1yhjh07KiQkRG3atNGvfvUrPfzwwzpy5Ei97+vLL7/U7373O/Xs2VPh4eGKjY3VsGHD9Morr8jlctW7PTQMqwADAAAAAAA0MW+99ZZ+97vfqaCgwP1aQUGBNm/erM2bN+vll1/WypUr1a1btxrbOXz4sK6++mrt3r27xuO2bNmisWPHKi0trdLrWVlZysrK0pdffqnnnntOzz//vH73u9/V6R5mzZql//f//p+cTqf7taKiIq1bt07r1q3Tq6++qhUrVigmJqZO7aHhCAABAAAAAACakK1bt2rGjBkqKSnRhAkTlJCQoPDwcO3Zs0evvvqqjh49qv3792vYsGHavn27WrVqVW07xcXFuvbaa7V7925deOGFGjdunOLi4pSVlaU9e/a4j9u1a5eGDRum/Px8SdK5556rm266Sd27d1dWVpbee+89ffTRRyooKNCUKVNkGIamTJlS4z0sX75cS5cuVUhIiKZMmaKLL75YNptNW7du1auvvqqcnBx9/vnn+s1vfqPPPvtMQUFEVL7EuwuPnEZpoEsA0ITYLE61DsmTZAl0KaYTYSuS05B4b32n1FUS6BJ8puQU/TWA0xiGDMOQxUK/4m2GYQS6BFOjT/vFihUrZLfbtXLlSg0dOrTSvv/3//6ffvvb32rjxo367rvvdP/99+ull16qtp0ff/xRP/74o2bMmKH777+/2mNcLpcmTpzoDv9+//vf68UXX6wUyN1222165ZVX9Ic//EGGYeiuu+5SQkJCtdOIyy1ZskTt2rXT6tWr1adPH/frEydO1F/+8hcNHz5c3377rTZv3qxnnnlGDzzwQB3fHTQEASA84/cFABW0Ci7WBW1SA12GKZUaFhW6QgNdhqkZPPYYQEvy8zPE4H0Wi0VEgL7Du1vZjBkzqoR/khQdHa23335bvXr1Ul5enubPn6+///3vatu2bbXtXHPNNR7DP0l6//333dOD+/Xrp5deekk2m63KcVOmTNGXX36pl156SQUFBZo9e7aee+65Gu9h3rx5lcK/cnFxcXrrrbd0/vnny+VyadasWfrLX/6ikJCQGttDw/HbMDyykQ8DAEzCZjFvnxYcYt57AwC0LEEhwYEuocmIjo7WH/7wB4/7O3furIkTJ0oqm+a7fPlyj8feddddNV5ryZIl7q/vvffeasO/cg888ID7A4aK51WnV69euvrqqz3uHzhwoK644gpJ0rFjx/TZZ5/V2B4ahwAQAAAAAACgCbnkkksUFhZW4zGXX365++svvvii2mNsNpuGDBlSYzubN292fz1ixIgaj+3WrZt69eolSUpNTdXRo0frVF9djvF0D/AOAkAAAAAAAIAm5Mwzz6zXMUeOHKn2mDZt2tQaJJaHeJGRkerQoUOt1z3rrLOqnFtbfXU5xtM9wDsIAAEAAAAAAJoQh8NRr2Nyc3OrPSY8PLzWdsrPrcs1JSkiIqLW69a1vbrcA7yDh8b4mGEY+uSTT7R27VodOnRIeXl5CgkJUfv27TVw4EAlJiaqTZs2gS4TAAAAAAA0EeUr8tb1mMjIyAZfKzIyUidOnKjTNSUpLy+vTtf15z2gdgSAPnTq1ClNnz5d27Ztc79mt9tVVFSkw4cP6/Dhw1q5cqUeeugh9evXL4CVAgAAAACApuLAgQP1OqZTp04NvlbHjh114sQJ5ebm6tixY2rfvn2Nx3/zzTd1uq4/7wG1YwqwDy1evNgd/t1444168803tWjRIr377rv6v//7P3Xs2FGFhYV6+umnVVxcHOBqAQAAAABAU7B+/fpac4KPP/7Y/fUFF1zQ4GtVPPejjz6q8djU1FTt379fktS1a9canxm4atWqWq/trXtA7QgAfWjdunWSpOHDh+vGG290D2e12WwaOHCg7rvvPklSTk6O9uzZE6gyAQAAAABAE3LixAnNmzfP4/6jR4/qzTfflCSFhoZq1KhRDb7W2LFj3V8/++yzcjqdHo/95z//KcMwqpxXnf379+v999/3uH/nzp3ukLBDhw665JJL6lM26okpwHWQl5enDRs2aNu2bUpPT9dPP/2k0tJStWnTRv3799fo0aOrHaqanZ0tSYqPj6+23e7du8tms8npdKqoqMin9wAAAAAAAJqP+++/X3379tWll15a6fWTJ09q/Pjx7kUzbrnlFrVt27bB1/ntb3+rvn376quvvtLOnTt122236d///reCgipHRvPnz9dLL70kqezxZlOnTq217SlTpmjNmjU699xzK71+5MgRXX/99e6w8e6771ZwcHCD7wG1IwCsg5SUFC1atEhS2eg9u92u4uJiHT16VEePHtW6dev04IMPasCAAZXO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jrLn6hw7dkwlJSVV9q9Zs8bjCr7Dhw+XJKWlpWnbtm1V9mdlZenTTz+VVLYKMgAAAAAAaCksZaMAA7EZP2+un///z6/r581fdcB/fBIAtm/fXpJ04MCBep23detWSWWLZjQV/fv3l8ViUW5urmbNmuX+5L6wsFApKSmaM2eOIiMjPZ47aNAgSdLs2bO1detWdyj63Xff6cknn1RRUZEiIyN1zTXX+OeGAAAAAABA4BkB3CSVh32BrwP+4JMpwEOGDNHBgwf13nvv6eGHH67TOfn5+Xr77bdlsVh0ySWX+KKsBomLi1NiYqKWLVum9evXa/369XI4HCosLJTL5dLAgQN15plnavHixdWef++99+rhhx/WoUOH9H//938KCQlRUFCQCgoKJEkRERH629/+VmnREAAAAAAAYG6+WgW4ejWNtqtuH+mc2fhkBOB1110nSdq+fbteffXVOp1z2223uUfXTZw40RdlNdiUKVN0++23q0ePHgoODpbL5VKPHj30+9//Xo888kiNqxRFRETo6aef1u9+9zvFx8fLZrOptLRUnTt3VmJiop5//nn16dPHj3cDAAAAAAACz+LdzahpUz03D+14u2b4jU9GAI4aNUoXXnihNm3apFtvvVXHjh3TnXfeWe2x27dv18MPP6yVK1fKYrHoN7/5jQYPHuyLshpl5MiRGjlyZLX7JkyYoAkTJng8Nzg4WKNHj9bo0aN9VB0AAAAAAGhODHl7BKAfAjX/DVmEl/lkBKAkvfXWW+rQoYNKS0v18MMPq127drr77rvd+3/1q1+pY8eOOv/887Vy5UoZhqEuXbpo/vz5vioJAAAAAACgaahppF2DNvlh82a9DQssjx8/rnvvvVdnnnmmwsPDFRsbqxEjRui9995rUHvlSkpKNHPmTA0aNEhRUVGKiorS+eefr+eee67aRWElad26dbJYLHXevv/++0rnHz58uE7nvfPOO426N8lHIwClsoU8Nm/erOuvv16bNm1SUVGRUlNTZbGU/YC3bdsmo0JyfMEFF+jdd99tustzAwAAAAAAeAnrYNTfnj17NHz4cGVkZEiSIiMjdeLECa1atUqrVq3SXXfdpdmzZ9e73by8PF1++eXavHmzJCksLExS2WK1W7du1dtvv61Vq1bJ4XBUOi8kJMS9EK4nWVlZKikpUYcOHdS5c2ePx8XGxspms1W7r7yexvDZCECpLAT8/PPPtWzZMl177bVq06aNDMNwbxEREbrqqqu0ePFibdy4UZ06dfJlOQAAAAAAAE1DIEbc+X2r5f7qobi4WImJicrIyFCfPn20Y8cOnTx5UidPntQTTzwhi8Wif/3rX3rttdfq/aP405/+pM2bNys6OlpLlixRQUGBCgoKtGTJEkVHR2vjxo3685//XOW8IUOG6Mcff/S4fffdd7Lb7ZKkpKQkBQV5Hoe3ZcsWj+2MGjWq3vd0Op+NAKzo6quv1tVXXy1JKigo0IkTJxQREaGoqCh/XB4AAAAAAKBJ+To7U0YDp8E2H967v5dfflmHDh2S3W7X+++/r65du0qS7Ha7HnroIR09elRz5szRww8/rKSkJAUHB9ep3V27dum///2vJGnevHkaM2aMe9+YMWPkdDp13XXX6Y033tBf//rXei3kunTpUuXk5EiSbr755jqf5ws+HQFYHbvdrk6dOhH+AQAAAACAFuusVm399Ny+JrzVQ3JysiTpxhtvdId/Fd13332yWCw6cuSI1q5dW+d233zzTRmGofj4eF177bVV9o8dO1bx8fEyDEMLFy6sV83l61z86le/Uu/evet1rrf5JAD8+uuvfdEsAAAAAACAKVgU6Om5TWCro7y8PG3ZskWSdOWVV1Z7TNeuXXXOOedIklavXl3nttesWSNJGjlypHvdiko/J4tFI0aMqHe76enp7uMDPfpP8lEAeO6552r48OF66623PK6UAgAAAAAA0GL5aeScX/noXvbt2+deSLamKbjl+/bu3Vu3cg1D+/btq3O75cfWxYIFC+RyuRQaGqobb7yx1uPHjx+vmJgYhYaGKi4uTmPHjtX7779f5+vVxicBoGEY+uSTTzRhwgR17txZ999/vw4cOOCLS8GHnCoNdAkAAHiF0zBvn1Zyyrz3BgBoWUpPMYCozgI9dddbwWQdBwEePXrU/XVNC8iW76t4fE1yc3OVn59f53Zzc3OVl5dXp7Zff/11SdI111yjmJiYWo/fsmWLXC6XbDabfvjhBy1ZskSjRo3S+PHjderUqTpdsyY+WQTksssu0yeffCJJyszM1DPPPKNnnnlGw4YN06233qrRo0fXuPIJmoim/KkCAL8rctp0tChK3nyQL8qE24rVKTRH1cw4gJeEWgjJALQshmFUO5UNjcS/kXzKaHG/Z9ZvGmxDmvcJb/53UMe2KoZu5avqVqd8X25urk/aLW87IiKixnY3bNigb775RpJ0yy23eDwuLCxMf/7zn3XDDTdowIABioyMlCTt2bNH//znP/XGG2/o7bffVnR0tF5++eU63ZMnPknh1q5dq2+++Ub/+c9/tGDBAv3000/u19euXau2bdvqd7/7nf7whz+oe/fuvigBXmCzENIC+IVLVhW4QgNdhinZLC6F2wiofCnIat4+LTjEvPcGoOEI/3zEIkJAH2pxfZqvp/NWbLsxfyXwZ77eyhf/6NSpk6644gqPx3Xo0EFz5syp8nrv3r21YMECtW3bVjNnztS8efN077336uyzz25wTT77r+uss87Ss88+q3/84x965513NHfuXPeowIyMDP3zn//UU089pYSEBN16661KTEyUzWbzVTkAAAAAAABNyjv9Lm/QeeN2fVy/E/wQ4jXkXr7dvUeDBg2q9biKI+4KCgoUFRVV7XEFBQWS5B5JV992Pam4r7a2CwsLtXjxYknSpEmTGpV1Pf7443rxxRdVWFioFStWNCoA9MkzACsKCQnRhAkTtHbtWu3fv1/33HOP2rRpI8Mw5HK59PHHH2vcuHHq0qWLpk2bpu+//97XJQEAAAAAAARWY0I5rz2zzxK45//VQ8Xn8x05csTjceX7OnbsWKd2IyMj3SFgXdqteLwnS5Ys0cmTJyU1fvVfh8Oh3r17S5IOHTrUqLZ8HgBWVD4q8IcfflBycrIuvfRSGYYhwzD0448/avr06erZs6euuuoqpaSkyOVy+bO8BiksLNRrr72mP/3pTxo7dqwSExOVmJgY6LIAAAAAAEATZjQiNDMMi3c2l/fa8qVevXq5H22wZ88ej8eV7zv33HPr1K7FYtE555xT53bLj61J+fTfiy66qFEj9rwtIBPsy0cFTpgwQV9//bWefvppvfrqq+4wcOXKlVq5cqU6d+6sO++8U7fffnuND2MMpBkzZmj79u2Syh7e6HA43Pt+//vfKyMjo8bzf/vb3+rWW2/1aY0AAAAAAKDpGbt9td+v6Smqa+wgvobcy86b7qrTcRERERo8eLA2b96slStXauzYsVWOSU9P1969eyVJCQkJda5h+PDh2rJliz788EOPx3z00Ud1ajctLU1r1qyR1PjRf5KUn5/vDh8bu4aGX0cAnm7z5s166qmn9NZbb8lisbjT3PIgMD09XQ888IDi4+O1cuXKQJZardTUVHf498ADD2jx4sVasGCBFixYUOk4u92u6OjoaremGmwCAADg/7d35/FRlXf//99nJusMIQsBFcMOooAieIMVrQVihSpSENQaoqi4tGrV2y5ff6DeuJbaqqCmtUpbl4CIFiUuqBREuLkFEbCssogQKMEQErJOQjJzfn9QRkIyWWfmTE5ezz6mTuY655rPOcZcyXuu6xwAANo2o57/KcCj7naRZcqUKZKkN954Q/v376/T/tRTT8k0TXXt2lWjRo1qcr8ZGRkyDEO7du3SO++8U6d90aJF2rVrlwzD8NcQyKuvviqfz6f4+Hhdd911jb632cg00JkzZ8rj8cgwDI0bN67R/hoS9hmApaWlev311/XSSy9p8+bNkr4/4K5du+q2227T5ZdfrjfffFOvv/66ioqKdOjQIY0fP17/+7//q+HDh4e75IByc3MlHV8DPmLEiIDb3Xbbbc1KnwEAAAAAgM2F6Np5wQrvTu3HtPh2wLfffrtmz56tPXv2aNy4cXr99dd13nnnyePxaM6cOXrhhRckSY8//riio6Nr7duzZ0/t27dPU6dO9S/RPeG8887T9ddfr/nz52vatGlyOBz+S7vl5OTo1ltvlSTdcMMN/uvxBfLqq69KkiZOnKjExMRGj2nkyJEaM2aMxo0bpwEDBigq6nhMt23bNv3xj3/U3//+d0nStGnTdPbZZzfaX0PCFgCuWbNGL730khYuXCiPxyPpePBnGIbS09N155131roT8EUXXaQnn3xSTz/9tB599FF5vV499thjeu+998JVcqOqqqokSfHx8RZXAgAAAAAA2hTTOP4IdrdB7/EEa2cFxsbGKicnR6NHj9amTZs0ePBgdezYUeXl5fJ6vZKkX/7yl7r55pub3fdf/vIXffPNN1q7dq0mTJig+Ph4maapyspKScczqj/96U8N9vG///u/2r17tyQ1uYZ9+/ZpxowZmjFjhqKiopSYmCiPx1PrrsMZGRnKyspq9jGdKqQBYElJiX+235YtWyR9P9svOTlZN910k37+85+rX79+9e7vcrn00EMP6ciRI3ruuee0fv36UJbbZPPnz9eCBQv8X+fn59e68ce9997LjD8AAAAAABBYGO6eazcDBw7U5s2bNWvWLL333nvav3+/EhMTNXToUN11112aMGFCi/rt0KGD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ZVq7dq0kKS4uTtLx+0KsX79eb731lpYuXepfJVqfuLg4JSYm1tvW0DL0YLx3UzDtrAmmTZumu+66S71791Z0dLR8Pp969+6tW2+9VQ8//HC9s/eSkpJ0++2364c//KHS0tIUGxur8vJyxcTEqFevXho/fryef/55/fSnP7XgiAAAAAAAgJUMix+nzsazpIZmqKqq0vjx45Wfn69Bgwbpq6++UklJiUpKSvT444/LMAw999xz+vvf/97MnqU77rhDa9euVVJSkhYtWqSKigpVVFRo0aJFSkpK0ueff64777yzwT6uu+46HTp0qN7HihUrQvreTcEMwCYaM2aMxowZU29bRkaGMjIyar0WGxurcePGady4ceEoDwAAAAAAtCWRcBdgq9+/GV566SXt2bNHLpdLH3zwgbp37y5JcrlcmjFjhvLy8pSVlaUHH3xQmZmZde7hEMimTZv0xhtvSJLmzp2riRMn+tsmTpwor9era665Rq+//rp+85vfNLqctznC+d7MAAQAAAAAALCbU2f4NeERjGv0hUp2drYk6frrr/eHfyf77W9/K8MwdPDgQX366adN7nfevHkyTVN9+/bV1VdfXad90qRJ6tu3r0zT1Pz581t+ABa/NwEgAAAAAACAFUJ08w6jniW9TVFnmW6gYDDMNwEpKyvTunXrJEljx46td5vu3bvrnHPOkSQtW7asyX0vX75c0vGVn4ZR90wZhqHLL7+82f1G2nsTAAIAAAAAAIRZU2bktfQRkkAxFHU20fbt22X+5y4lDS2DPdG2bdu2JvVrmqa2b9/e5H5PbFufZcuWqV+/foqNjVViYqIuuOACPfTQQ/ruu+9C/t5NQQAIAAAAAADQFoRyNl6YZvO1RF5env95165dA253ou3k7RtSWlqq8vLyJvdbWlqqsrKyerc5cOCA9u7dK7fbrbKyMm3YsEGPP/64BgwYUO/svWC+d1MQAAIAAAAAAIRbhIVsrRbC4zk5+HK5XAG3O9FWWloakn7r63vo0KH605/+pH379qmqqkqFhYU6evSosrOzdcYZZ6iwsFATJkzQzp07g/7ezcFdgAEAAAAAAMKtkRCsqdfti3SRnlu21j333FPntYSEBE2ZMkWXXHKJhgwZoqKiIs2cOTPoNxFpDgJAAAAAAACAMPv2u0K9knFpi/a9ed7KIFfTen+f0vxj2bVtqy644IJGt+vQoYP/eUVFhTp27FjvdhUVFZKOB3BNcWq/gZzc1tS+JalHjx66++679dhjj+mDDz6Qz+eTw+EIy3ufiiXAAAAAAAAAYXZ6UsvDHMuv9xfm5cknXyPv4MGDAbc70XbGGWc0qd+EhAR/ENeUfk/evqkuvPBCSVJJSYmOHDkS1vc+GQEgAvKqxuoSAAAIihrTvmNa9TH7HhsAoH2pOVZtdQlh5YqObvG+obyDcKjv6NsSZ599tgzj+KLorVu3BtzuRNuAAQOa1K9hGDrnnHOa3O+JbYMh3O/NEmAEZveF+gCaxSdTTtXwyVEo+HwqqoqXzzZXeok8x7xR9rmQDgA0hdPp/2MZwWP6fJLPZ3UZtmW2t8HalG55rRVLeSPsdN3y+n+OpRlZwqrf/aJJ23Xo0EHDhw/X2rVr9dFHH2nSpEl1tjlw4IC2bdsmSUpPT29yDaNHj9a6dev08ccfB9zmk08+aXa/J6xdu1bS8Rl8nTp1Cut7n4wAEAE5Db49AHzPaUhRof5or50y5VCVr+WfAKNxUY4o236wFR3DeA3gFIYhh9NpdRW2ZRIAhky7HNNa8/vJyftaGQaG6XesKVOmaO3atXrjjTf08MMPq1u3brXan3rqKZmmqa5du2rUqFFN7jcjI0NPPfWUdu3apXfeeUcTJ06s1b5o0SLt2rVLhmFoypQptdpM02zww5bc3FxlZWVJkq688kr/9f+C8d7NxUQOAAAAAACAMDOC+bBy+W8r6m6O22+/Xb1791Z5ebnGjRunTZs2SZI8Ho9mzZqlF154QZL0+OOPK/qU5dU9e/aUYRi66aab6vR73nnn6frrr5ckTZs2TYsXL5ZpmjJNU4sXL9att94qSbrhhhs0cODAWvtmZ2dr0qRJevfdd1VQUOB/vaysTG+88YYuvvhiFRYWqkOHDpo5c2ZQ37u52mG8DgAAAAAAYLEw3DzDTmJjY5WTk6PRo0dr06ZNGjx4sDp27Kjy8nJ5vV5J0i9/+UvdfPPNze77L3/5i7755hutXbtWEyZMUHx8vEzTVGVlpSTpoosu0p/+9Kc6+3m9Xi1atEiLFi2SdHypcmxsrIqKiuT7z2zhLl26aMGCBerfv39Q37u5CABbyePxaMGCBVqzZo0KCgpUXX38oqU5OTkWVwYAAAAAACKWlQFgY9PvIjSYHDhwoDZv3qxZs2bpvffe0/79+5WYmKihQ4fqrrvu0oQJE1rUb4cOHbRq1So9//zzmjdvnnbu3ClJGjp0qDIzM3X33XfXmVUoSaNGjdLjjz+u1atXa8eOHSooKFBxcbGSk5M1YMAAXXHFFbr99tuVkpIS9PduLgLAVpo1a5Y2btwoSYqLi5Pb7W5w+127duk3v/mNPwl++eWXddppp4W8TgAAAAAAEDnCcffcgE68r3HK12HWkksXdunSRc8884yeeeaZJu+zd+/eRreJjo7W/fffr/vvv7/J/fbo0UMzZsxo8vbBfO/mIgBshdzcXH/498ADD2jEiBENbu/1evXCCy/4wz8AAAAAANBeWTgF0DzpnxF2N2GEBjcBaYXc3FxJx2/l3Fj4J0nvvvuuvv3224DrvgEAAAAAQDtihunhO/lhyDC/f8h34vGf9nDVFKHLjO2KALAVqqqqJEnx8fGNbnvo0CG98cYb6tKli6677rpQlwYAAAAAACJZ2O7Ua6j2/2r7/q68//mfPxwMfW0IH5YAt8D8+fO1YMEC/9f5+fkaP368/+t7771X6enptfb505/+pGPHjun2229XbGxs2GoFAAAAAAARKGSz4IK1pvfkfkjr2joCwBaIj49XUlKSjh07poqKCjkcDnXs2NHfHhMTU2v75cuX66uvvtIPfvADDR8+XJs3bw53yQAAAAAAwE5OyeSMQA2he0uuH9iGEAC2wMSJEzVx4kQtW7ZMc+bMUWpqqubOnVvvtiUlJfrb3/6m+Ph43XbbbWGuFAAAAAAARKJmL4ONgEl4dfK+U2siEIxYXAMwxP7617+qpKREP/vZz9S5c2erywEAAAAAAJHCbjfM4CYgEYsZgCG0ceNGffrpp+rZs2etawQCAAAAAID2zec1Gw3B2vqEOjK+yEEAGCJVVVX685//LMMwdOedd8rpdFpdEgAAAAAAiBDfHjwiw3fKi2098TuFzQ6nTSMADJH58+fr0KFDGjNmjM4+++xW95edna358+cHbJ88ebKmTp3a6vc5WXGFWzoc1C4BALBMYmKiTNPaz6GTk5OD3qe7gzvofQIAYJVIGK/DpW/XVH1Zsr/Wa+3k0GEBAsAQOHjwoHJycpSQkKBrr71WHo+nVvuxY8f8z6uqquTxeOR0OuvcPfhk5eXlys/PD9heUVER9FmGDoNLRAIA7MPhsH5cC8WKAIPxGgBgI5EwXodVwDv5AsFFABgCR44ckdfrVWlpqaZNm9bgtnfffbck6cILL9SMGTMCbud2u9WlS5eA7S6XS16vt2UFB+AzT52LDABA2+Xz+YI6o6AlYV6wx2pJMhmvAQA2EuzxWgrNB3BBwY0wEEYEgG1EZmamMjMzA7YXFBSoqKgoqO9ZXl0e1P4AALBScXFxUAO41NTUZu8T7LFaksrLGK8BAPYR7PFaatmYHQ6GefzRUnV2tWL6YGtnMBKAhg0BYAice+65ysnJCdi+efNm/2y/l19+Waeddlq4SgMAAAAAADZQJ2wjTEMDCAABAAAAAACsQGiHMCEABAAAAAAACLPWLgFurpa+FTcmsQcCQAAAAAAAgHAL801A6g3yjPDWAOsQALZCenq60tPTm71fY9cIBAAAAAAA7YEF6ZtZz3Om+dkeASAAAAAAAECYhXUJcK33qSftM095QiBoOwSAAAAAAAAAVgh5ANjcJO8/25v+/4NNEAACAAAAAACEW8iuARis6Xun9kMg2JYRAAIAAAAAAIRbyJYAE9ShLgJAAAAAAACASNaWMj2uHxiRCAABAAAAAADCLWRLgC1mx2OyAQJAAAAAAACAMCuvqGowLLPLRDrywMhAAIiAvGaN1SUAiCDHfA7tK0+Wwy6/iUSQouo4dXBW2ue3vAjkNautLiFkqo8xXgM4hc8nn9crw2BgCTbT65VMU+LchkR7G9OOFJbL8FldRegF/K/FEOlgGBEAIjDGNAAnya9M1Of5vawuw5Y6xZbr4tO/tboMW+sQdUxqX39TAGjvaqr5uzpUDIfVFdiW0c6+a3uekaIjR8oa39Auf5uf+q/XlH2OrQ0gAERATr49AAA2EWU4rS4hZKJjGK8BAPYQFRNtdQlh1sSLALavXBQhwm+MAAAAAAAAYWZIMgj3ECYEgAAAAAAAAOFmp7sAnzgOlvRGLAJAAAAAAACAcAtHABjsQK6xeu0SaNoQAaAFHn/8cX3xxReSpNGjR+u+++6ztiAAAAAAABBepinDDHFiVmdmXjMTwXDVh5AjAAyz1atX+8M/AAAAAADQjoUrADNPeRIoBySQsy3uXx5G5eXlevnll+V2u5WWlmZ1OQAAAAAAoD0yT3n4/vOAbREAhtErr7yiwsJCZWZmKikpyepyAAAAAACARQwzgh76/q7E4XwgfFgC3ARlZWVavXq1NmzYoAMHDujIkSOqqalRp06dNHjwYE2YMEFdu3ZtsI9t27bpk08+Ub9+/fSTn/xEq1evDlP1AAAAAAAg4oTtLsDfv0ljVwCsXQ639LUTAsAmyMnJ0YIFCyRJTqdTLpdLVVVVysvLU15enlasWKHp06fr/PPPr3f/6upqvfDCCzIMQ3feeaccDiZeAgAAAADQnhnhuAlIM9WO/CKrNrQOAWATpKSkaMqUKRo+fLi6d+8up9Mpr9ervXv3Kjs7W+vXr9fTTz+tl19+WXFxcXX2f+utt3TgwAFdddVV6tOnjwVHAAAAAAAAIg4ZG8KEqWhNMHbsWF133XXq1auXnE6npOMzAfv06aPp06erW7duKi4urndZ7/79+/X222/7Q0QAAAAAAIA6N+JowcPqawe2+hgQNgSArRQdHe1f+rt9+/ZabaZpKisrSzU1Nbr11lvlcrksqBAAAAAAAEQaozmPUAVwoQogm3hcCB+WADfRgQMH9P7772vr1q3Kz89XZWWlzFPW6hcWFtb6+uOPP9a2bdt0wQUX6JJLLglnuQAAAAAAIJKZkiLsGoBBY9PDassIAJtg5cqVmj17tmpqaiRJhmHI5XIpOjpaklRZWanKykpVVVX59yksLNSrr76qmJgY3XHHHa2uITs7W/Pnzw/YPnnyZE2dOrXV73Oy4gq3dDioXQIAYJnExMQ6H96FW3JyctD7dHdwB71PAACsEgnjdbgcKSg9PouvHWMWYPgQADaiuLjYv4x34MCBuvHGG9W3b19/+CcdD+cWLlxY64fUa6+9pvLycl1zzTVKTEyUx+Op1a/P55Mkeb1ef1tsbGzAOwSXl5crPz8/YJ0VFRX+6xMGi8NghTgAwD4CjbHhFOyxWpIMxmsAgI1EwngdLjXVXskXKAG0ezRmnvT/zXP48GHNmjVLOTk5OnDggNxut4YOHao777xTEyZMaHFF1dXVev755zVv3jzt2rVLknTWWWdpypQpuvvuu2vlQCfbsGGDFi9erJUrV2rbtm0qLCyU2+3WOeeco5/+9Ke688471bFjx3r33bt3r3r16tVobW+99ZYmT57c4mOTCAAbtX79enk8HsXFxemhhx6q9zp+R48erfPaibDurbfe0ltvvRWw/88++0yfffaZJGn27Nnq3bt3vdu53W516dIlYD8ul0ter7ehQ2k2n+kLan8AAFjJ5/MFdUZBS8K8YI/VkmQyXgMAbCTY47UUmg/gguG0Lok6ePBogNbvAzLDDllggH+lzT20rVu3avTo0f7MJSEhQUePHtXSpUu1dOlS3XPPPZozZ06zyysrK9Nll12mtWvXSpLi4uIkHc+E1q9fr7feektLly6V21175cW8efOUmZn5/fEYhhITE1VcXKw1a9ZozZo1+vOf/6wlS5ZowIABDdaQmpoa8Hv1RD2tQQDYiIKCAklSWlpaveGfaZrasmVLyOvIzMys9U11qoKCAhUVFQX1Pcury4PaHwAAViouLg5qAJeamtrsfYI9VktSeRnjNQDAPoI9XkstG7PD4cTNPRrbplZ41lbCwBAsba6qqtL48eOVn5+vQYMGKTs7W4MHD1ZFRYWeffZZPfTQQ3ruued0/vnn6+abb25W33fccYfWrl2rpKQk/e1vf/PPJHz33Xd1yy236PPPP9edd96pV199tdZ+1dXVio+P1/XXX6/rr79eF198seLj41VeXq5//OMf+tWvfqXc3FyNGzdOW7duVXx8fMAa1q1bp549ezb3tDQZAWAjTqS73333naqrq+tM+Vy+fLkOHjxYZ78nn3yywX6nT5+uLVu2aPTo0brvvvuCVi8AAAAAAGgLTtxOt5m7tFMvvfSS9uzZI5fLpQ8++EDdu3eXdHxF5IwZM5SXl6esrCw9+OCDyszMDLhk91SbNm3SG2+8IUmaO3euJk6c6G+bOHGivF6vrrnmGr3++uv6zW9+o0GDBvnbL7roIu3Zs0enn356rT7dbrduvPFGdevWTaNHj9a3336rt956SzfeeGNrT0OLtZ/F9S00ePBgGYah0tJSzZ492//JvcfjUU5OjrKyspSQkGBxlQAAAAAAoE0xeTRHdna2JOn666/3h38n++1vfyvDMHTw4EF9+umnTe533rx5Mk1Tffv21dVXX12nfdKkSerbt69M06xzc9b+/fvXCf9ONmrUKPXo0UPS8eXEVmIGYCPS0tI0fvx4LV68WKtWrdKqVavkdrvl8Xjk8/k0ZMgQ9evXTwsXLrS6VAAAAAAA0FaY5vFHqLr/T8JmBOsiguapT8K3HrmsrEzr1q2TJI0dO7bebbp3765zzjlH27Zt07Jly3T55Zc3qe/ly5dLksaMGVPvuTIMQ5dffrl2796tZcuWNbv21NRU7du3TzU1Nc3eN5iYAdgE06ZN01133aXevXsrOjpaPp9PvXv31q233qqHH364Xd2lCAAAAAAAtJ5hhvbhMA05TEPy6ftHc2bn+Wo/vu/b+M+j9TU21fbt2/03hzl5Ce6pTrRt27atSf2apqnt27c3ud8T2zZVYWGh/74RDfUvSddee62Sk5MVGxurtLQ0TZo0SR988EGz3q8hzABsojFjxmjMmDH1tmVkZCgjI6NZ/TV2jUAAAAAAAGBzIZwBeEKtOW3mqQ0ntYahljqa+JZ5eXn+5127dg243Ym2k7dvSGlpqcrLy5vcb2lpqcrKytShQ4cm9f/oo4+qqqpKCQkJmjx5coPbrlu3Th07dpTT6dS///1vLVq0SIsWLdI111yj7OxsxcTENOk9A2HqGgAAAAAAQLhZff09nySf+f3DihqaqKyszP/c5XIF3O5EW2lpaUj6bU7fH3zwgZ5//nlJx4PAzp0719kmLi5Od955p1auXKmSkhIVFxeroqJCW7Zs0Q033CBJeuutt3T33Xc36T0bQgAIAAAAAADQLgQpkUODvvrqK2VkZMjn82nChAm69957693u9NNPV1ZWln74wx/WusHswIED9dprr+n++++XdPzuxDt27GhVTSwBBgAAAAAACDPDNPXUM/Xf0KIx/++/lzRzjxPhXkM37jgRArbs5h6/f/Ynzd5nx86tuuCCCxrd7uQltxUVFerYsWO921VUVEhSrTCtOf0GcnJbY31v375dl19+uUpKSjRy5Ei98cYbLb4Ry6OPPqo///nP8ng8ev/999W/f/8W9SMxAxAAAAAAACD8WjPhrtnLbY3/PFq7TQOPEDr5+nwHDx4MuN2JtjPOOKNJ/SYkJPhDwKb0e/L29dm1a5fS09N1+PBh/eAHP9B7772nuLi4JtVSH7fbrYEDB0qS9uzZ0+J+JAJAAAAAAACAtqWeAM4M8fX6zMbeI4TOPvts/yy6rVu3BtzuRNuAAQOa1K9hGDrnnHOa3O+JbeuzZ88ejR49Wnl5eRoyZIiWLFnS5JuFhANLgAEAAAAAAMLNNPXAPR+2aNfjUVjtZb0tW2Ta3Pc8We3lwi05lnc++k2TtuvQoYOGDx+utWvX6qOPPtKkSZPqbHPgwAFt27ZNkpSent7kGkaPHq1169bp448/DrjNJ5980mC/+/bt06hRo3TgwAENGjRIn3zyiZKSkppcQyDl5eX+8LFXr16t6osZgAAAAAAAAOHW6ll5rVyyG5T3b2UfzTBlyhRJ0htvvKH9+/fXaX/qqadkmqa6du2qUaNGNbnfjIwMGYahXbt26Z133qnTvmjRIu3atUuGYfhrONm///1vjR49Wrm5uerfv7/++c9/KjU1tUnvbZoNn4SZM2fK4/HIMAyNGzeuaQcUAAEgAvKqxuoSAAAIihrTvmNa9TH7HhsAoH2pOVZtdQmRwbJAL4SPILj99tvVu3dvlZeXa9y4cdq0aZMkyePxaNasWXrhhRckSY8//riio6Nr7duzZ08ZhqGbbrqpTr/nnXeerr/+eknStGnTtHjxYpmmKdM0tXjxYt16662SpBtuuMF/Pb4T8vPzlZ6erj179qhPnz5atmyZTjvttCYf08iRI/Xkk09q06ZNqqn5/ne6bdu26ZZbbtEf//hHf11nn312k/utD0uAEViI1/ADaFsSYjw6P/WA1WXYlKkKb7ScBj94Q8VnhnpRDABEGKezxXedRGCmzyf5TIlzGxJmyBexRpaDuUdkNDIDzDYCHKbZjOAhNjZWOTk5Gj16tDZt2qTBgwerY8eOKi8vl9frlST98pe/1M0339zs8v7yl7/om2++0dq1azVhwgTFx8fLNE1VVlZKki666CL96U9/qrPfiy++qB07dkg6HgY2dEfjESNGaNGiRbVe27dvn2bMmKEZM2YoKipKiYmJ8ng8te46nJGRoaysrGYf06kIABGQ0+DbA8D3nIaUFFtpdRm2ZMiUYRjytbNfesMpyhEtea2uIjSiYxivAZzCYcjhdFpdhU0ZMk2bDigRoL2NaQkJsTp8qJ0EgAEYzfz9d+DAgdq8ebNmzZql9957T/v371diYqKGDh2qu+66SxMmTGhRHR06dNCqVav0/PPPa968edq5c6ckaejQocrMzNTdd99dZ1ahJPl8Pv/z0tJSlZaWBnyPwsLCOq/94Q9/0D//+U+tW7dOeXl5KiwsVFRUlPr27auLLrpIN998c7OWMzfEMBtbcIw2oaCgIOh9HqzerTcPPxX0fgG0TV7TkMcXY3UZtmTIVJSD4TiUftHnf5RSfYb/0+FgaOq1XU4WivF6x5pvNPOnzwS9XwBtmCE5otpXkBIups+UGcSxBLX9cfn/qPt5wR2vpZaN2eHw2ztf01dffmt1GZZatOz/qUNCnNVltAuMCgAAAAAAAOFmmscfzdnlP/+0z7oRPgQPFwJAAAAAAACAsGt+AHhq8HfiuonWB4IEeZGOALCVPB6PFixYoDVr1qigoEDV1cfvWpSTk2NxZQAAAAAAIFIZ5vFHq/ogeEMTEQC20qxZs7Rx40ZJUlxcnNxutySpurpay5Yt065du7Rnzx4VFRWppKRE0dHR6tKliwYPHqxx48bp9NNPt7J8AAAAAABghRYsAW651s4RJGhs6wgAWyE3N9cf/j3wwAMaMWKEv62oqKjWLaIdDodcLpcqKiq0b98+7du3Tx999JHuvfde/fCHPwx77QAAAAAAwGJhy9UI8No7AsBWyM3NlSQlJCTUCv8kKTo6WldddZUGDhyos846S8nJyXI6naqpqdHXX3+tV155RTt37tTs2bPVt29fnXHGGVYcAgAAAAAAsIKpMM4ADOTkmYEW1GL14bcjDqsLaMuqqqokSfHx8XXaOnTooNtuu00jRoxQamqqnE6nJCkqKkqDBg3SzJkzFRcXp+rqaq1cuTKsdQMAAAAAAIudWAJs1cNnSqbvpIcFNSBsmAHYAvPnz9eCBQv8X+fn52v8+PH+r++9916lp6c32EeHDh3UtWtX7dmzR0eOHAlZrQAAAAAAIAKZCu8MOLPWP2To+wzOPw/Q+tsJI0QIAFsgPj5eSUlJOnbsmCoqKuRwONSxY0d/e0xMTKN9lJSU6ODBg5LEjUAAAAAAAGh3QjwL7pSujVP+eepzqZ5yCARtgwCwBSZOnKiJEydq2bJlmjNnjlJTUzV37txG9zNNU0ePHtWuXbs0b948VVZWyuVyafTo0WGoGgAAAAAARArDPP4ImiD0VSfvIxC0DQLAMHj55Zf13nvv1Xn9jDPO0K9//WslJSWFvygAAAAAAGCdYFwHL9yX0SMQbLMIAMPA5XIpKSlJXq9XpaWlkqSuXbvqtttuU79+/SyuDgAAAAAAhF1L7gIcaffNOLkewsCIRgAYBlOmTNGUKVMkSZWVldq8ebNeffVVPfLIIxo5cqTuvfde/12CAQAAAABAO9FYoFfPjTsiFTcUiWwEgGEWFxenYcOGaeDAgbrnnnu0YsUK9e3bt9ZdhOuTnZ2t+fPnB2yfPHmypk6dGtRaiyvc0uGgdgkAgGUSExNlhvJC202QnJwc9D7dHdxB7xMAAKtEwngdNqYp49RjDXDobSFL4/qBkY0A0CInbv6xYMECLV26tNEAsLy8XPn5+QHbKyoqgj6L0GE4gtofAABWcjisH9dCMePfYLwGANhIJIzX4ZK765Dkaydhp1R/INhewt4IQABooU6dOkmS8vLyGt3W7XarS5cuAdtdLpe8Xm/QapMkn+kLan8AAFjJ5/MFdUZBS8K8YI/VkmQyXgMAbCTY47UUmg/gguH0tBQV5ZdaXYZ1TEkG0wLDhQDQQocOHZIkxcfHN7ptZmamMjMzA7YXFBSoqKgoaLVJUnl1eVD7AwDASsXFxUEN4FJTU5u9T7DHakkqL2O8BgDYR7DHa6llY3Y4xMREMQMOYUMAGCJer7fBTxmKi4u1bNkySdLAgQPDVRYAAAAAAIgEpmnzALAt3Lqk/SAADJG//OUvcjgcuvTSS9WnTx/FxsZKOn6tvg0bNui1117T0aNH5XQ6dc0111hcLQAAAAAACKugB4BWBW1NvJUxLEUAGCLHjh3T8uXL9eGHH8owDLlcLhmGofLycv/1DNxut+6991716dPH4moBAAAAAEDYBTUADNeMO7P2Uyb4tQkEgCEyefJkdevWTZs3b9bBgwdVXFys6upqdezYUd26ddOQIUP04x//WElJSVaXCgAAAAAAws1UiCbH1dNpa0K6UE7wY3Jg2BAAtkJ6errS09PrbUtLS1NaWpomTZoU5qoAAAAAAEDEC+c1AE99m8buvmvraxO2TwSAAAAAAAAA4WblTUBOvO+JINCywI+gMVwIAAEAAAAAAMIuAu4CbPX7I2wIAAEAAAAAAMLNFAEcwoYAEAAAAAAAINysXAKMdocAEAAAAAAAwArkfwgTAkAAAAAAAIBwYwYgwogAEAAAAAAAINwIABFGBIAIyGvWWF0CgIjiU5RRI8mwuhAb8skhiXMbOl5ftdUlhEz1McZrAKcwJZ/PJ4NxJehMn8/qEmyt3Y1p3AQEYUQAiMD4fQHASaIMKc55zOoygBZxGPzBBqCd8fq4tBjaHKOdfdd6q2sIABE2BIAIyMm3BwDAJqIc0VaXEDLRMYzXAAB7iIqx73hdnwO7D0mmr33eCMSQZDDrKJz4jREAAAAAACDMepx1ho5+V2x1GdbwtcfU01oEgAAAAAAAAGFnymzuEuC2NmuOJc4RgwAQAAAAAAAg3FpyF+BTt4+0QJDAL2IRAIbQ7t279cUXX2jXrl06ePCgSkpKVFVVpYSEBPXu3VuXXnqpfvSjH8nhcFhdKgAAAAAACKeWBID19XGCFWFgq+sPThloHAFgCH3yySf66KOP/F/HxcUpKipKRUVFWr9+vdavX6+lS5fqwQcflMvlsrBSAAAAAAAQVqaCO2MuHLMDmeHXZhEAhlD//v115plnasCAATrzzDP9Id/Ro0e1dOlSzZs3T1u2bNHf/vY33X333RZXCwAAAAAAwsVsyTUAm/UGtfs2WhgIhrRGhA0BYAilp6fX+3pSUpKuueYaVVVVaeHChVqxYoV+/vOfKyqKfx0AAAAAALQLwVgC3Ky3a+IMwbAGfoSL4ULi1ARlZWVavXq1NmzYoAMHDujIkSOqqalRp06dNHjwYE2YMEFdu3Ztdr/9+vWTJB07dkylpaVKTk4OdukAAAAAACASBXsJcLPf3zweAjLDr10gAGyCnJwcLViwQJLkdDrlcrlUVVWlvLw85eXlacWKFZo+fbrOP//8ZvX79ddfSzp+bcCkpKQgVw0AAAAAACJWmGcABqwB7QIBYBOkpKRoypQpGj58uLp37y6n0ymv16u9e/cqOztb69ev19NPP62XX35ZcXFxDfZVVVWlw4cP69NPP9U777wjSbryyitbvBYfAAAAAAC0RREQAKLdIABsgrFjx9Z5zel0qk+fPpo+fbruu+8+7d+/X6tXr673un9lZWXKyMio83pUVJTGjRunzMzMkNQNAAAAAAAik2mG8CYgwe6XSUttnsPqAtq66Oho/9Lf7du317uNw+FQUlKSkpKSFBMTI+n43XfGjRunSZMmyel0hqtcAAAAAAAQCU5cAzAYD5+v9iNY/dbXfzD7RdgwA7CJDhw4oPfff19bt25Vfn6+Kisr6yT1hYWF9e7rcrn02muvSTqe8Ofn5+u9997Te++9p2XLlmnGjBkaMGBAyI8BAAAAAABEiNaEYFbfPORkzA5sEwgAm2DlypWaPXu2ampqJB2fvedyuRQdHS1JqqysVGVlpaqqqhrtyzAMnXbaabr11lvVpUsXzZ07V3/4wx/04osvKjY2NuB+2dnZmj9/fsD2yZMna+rUqc08soYVV7ilw0HtEgAAyyQmJoZumU0TJScnB71Pdwd30PsEAMAqkTBeh08zAsBIPicEgm0CAWAjiouLlZWVpZqaGg0cOFA33nij+vbt6w//pOPh3MKFC5v9Q2rs2LF69dVXdeTIEa1fv14jRowIuG15ebny8/MDtldUVAR9KbHDYIU4AMA+HA7rx7VQXPbDYLwGANhIJIzXYeP7z9LaekRw3Ne4U7IR4sDIQADYiPXr18vj8SguLk4PPfSQXC5XnW2OHj3aor5jYmKUkJCgwsJC5eXlNbit2+1Wly5dAra7XC55vd4W1RGIz6z/BxEAAG2Rz+cL6oyCloR5wR6rJclkvAYA2Eiwx2spNB/ABcOxymPtYraj/Y+wbSAAbERBQYEkKS0trd7wzzRNbdmypUV9ezwelZSUSJLi4+Mb3DYzM7PBuwUXFBSoqKioRXUEUl5dHtT+AACwUnFxcVADuNTU1GbvE+yxWpLKyxivAQD2EezxWmrZmB0Ow39yvoq+O6rE1I5KSHbL4Wwfsx8rSj0qPlyiTl2TFZ8QZ3U57QYBYCPc7uPX1fnuu+9UXV1da+mvJC1fvlwHDx6ss5/X65XD4ZDRwNr3xYsX+68rOHDgwCBWDQAAAAAAIlnG9EnKmD7J6jLQTrSPeLkVBg8eLMMwVFpaqtmzZ/s/ufd4PMrJyVFWVpYSEhLq7FdQUKD//u//1ieffKLDh7+/k4Zpmtq/f79efPFFvfHGG5Kkiy66SD169AjPAQEAAAAAAKBdYQZgI9LS0jR+/HgtXrxYq1at0qpVq+R2u+XxeOTz+TRkyBD169dPCxcurLPvnj179MILL0g6fr2/uLg4VVZW6tixY/5thg0bpv/+7/8O2/EAAAAAAACgfSEAbIJp06YpLS1NS5Ys0f79++Xz+dS7d2+NHDlSV155pd588806+6SkpOi3v/2tNm3apJ07d6qoqEglJSWKjo7WmWeeqbPOOks/+tGPNHToUAuOCAAAAAAAAO0FAWATjRkzRmPGjKm3LSMjQxkZGbVei46O1iWXXKJLLrkkHOUBAAAAAAAA9eIagAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIALyqsbqEgAACIoaX7XVJYRM9THGawCAPdQcs+94DVgtyuoCEMFMqwsAEEkqvU4drUqQZFhdiu0Y8ina4bO6DFs7ZvIrD4B2xjCOPxBcPsbrUDL5PRMIGX4bRkBOg28PAN8z5ZDHF2t1GbbkkE+m4bW6DFtzGtFWlxAy0TGM1wDqMhws9goF0+EgBAwhxjQgdBgVAAAAAAAAABsjAAQAAAAAAABsjPm1reTxeLRgwQKtWbNGBQUFqq4+ftHSnJwciysDAAAAAAAACABbbdasWdq4caMkKS4uTm63W5Lk9Xr11VdfacOGDdq+fbvy8vJUWVmpDh06qHfv3ho5cqR+9KMfycG1OQAAAAAAABBCBICtkJub6w//HnjgAY0YMcLf9sILL+iTTz7xf+10OhUbG6vi4mJt3LhRGzdu1D//+U89+OCDio+PD3vtAAAAAAAAaB8IAFshNzdXkpSQkFAr/JOkmpoaJScnKz09XSNGjFDv3r3lcDhUUlKinJwcvf3229q8ebNeeOEF/eY3v7GifAAAAAAAALQDBICtUFVVJUn1zuD7yU9+ojvvvFMxMTG1Xu/YsaMyMzPlcDi0YMECrVq1SjfddJM6d+4clpoBAAAAAADQvhAAtsD8+fO1YMEC/9f5+fkaP368/+t7771X6enpDfaRnp7u72P37t0EgAAAAAAAAAgJAsAWiI+PV1JSko4dO6aKigo5HA517NjR337qrL/6nLy91+sNSZ0AAAAAAAAAAWALTJw4URMnTtSyZcs0Z84cpaamau7cuc3qY8uWLf7nPXr0CHaJAAAAAAAAgCTJYXUB7ZHX69Ubb7whSerfv7+6detmcUUAAAAAAACwKwJAC7z++uvavXu3oqKidPvtt1tdDgAAAAAAAGyMADDMli5dqkWLFkmSpk6dqn79+llcEQAAAAAAAOyMawCG0apVq5SVlSVJmjRpkn760582ed/s7GzNnz8/YPvkyZM1derUVtd4suIKt3Q4qF0CAGCZxMREmaZpaQ3JyclB79PdwR30PgEAsEokjNeAHREAhsmaNWv0zDPPyOfz6corr2x2WFdeXq78/PyA7RUVFXI6na0tsxaHwQRRAIB9OBzWj2vBHqslyWC8BgDYSCSM14AdEQCGwbp16/TUU0/J6/Xqsssua9F1/9xut7p06RKw3eVyyev1tqbMOnymL6j9AQBgJZ/PF9QZBS0J84I9VkuSyXgNALCRYI/XUmg+gAPaGgLAENuwYYNmzZqlmpoa/ehHP9Ldd98twzCa3U9mZqYyMzMDthcUFKioqKg1pdZRXl0e1P4AALBScXFxUAO41NTUZu8T7LFaksrLGK8BAPYR7PFaatmYDdgNc2tDaNOmTXryySdVXV2tESNG6L777mM6MwAAAAAAAMKKNCpEtm/frscff1zHjh3T8OHD9etf/5ppxwAAAAAAAAg7lgCHSHZ2tiorKyUdDwNvueWWgNtOnDhREydODFdpAAAAAAAAaEcIAEPk5IuWlpaWNritx+MJdTkAAAAAAABopwgAWyE9PV3p6en1tj355JNhrgYAAAAAAACoi2sAAgAAAAAAADZGAAgAAAAAAADYGAEgAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI1FWV0AIpfXrLG6BAARxVS0USNThtWF2I5DXjnkkzi3IVPjs++YVn3MvscGoIVMU6bPx7ASCj5TMk3J4OSGAmMaEDoEgAiMMQ3ASaIdPiVGV1pdBtAiTsNndQkAEF4+r9UV2JfBQrpQMWRaXQJgW/zkQkBO8mEAgE1EGfYd06Jj7HtsAID2JSom2uoSANsiAAQAAAAAAABsjAAQAAAAAAAAsDECQAAAAAAAAMDGuGhMCB0+fFiff/65Nm3apL1796qwsFBRUVHq3Lmzzj//fF111VU6/fTTrS4TAAAAAAAANkYAGCKHDx/WrbfeKtP8/i5GLpdLx44d0/79+7V//359/PHHuu+++3TJJZdYWCkAAAAAAADsjAAwRHw+nyRp6NChGj16tM4//3x17NhRXq9X27dv10svvaS9e/fqmWeeUVpamnr27GltwQAAAAAAALAlrgEYIh06dNCzzz6rmTNn6tJLL1XHjh0lSU6nU4MGDdIjjzyixMRE1dTUaPHixRZXCwAAAAAAALtiBmATlJWVafXq1dqwYYMOHDigI0eOqKamRp06ddLgwYM1YcIEde3atdY+brdbvXv3DthncnKyLrjgAi1fvlzffPNNqA8BAAAAAAAA7RQBYBPk5ORowYIFko7P4HO5XKqqqlJeXp7y8vK0YsUKTZ8+Xeeff36z+j0xK9Dr9Qa7ZAAAAAAAAEASAWCTpKSkaMqUKRo+fLi6d+8up9Mpr9ervXv3Kjs7W+vXr9fTTz+tl19+WXFxcU3ud8uWLZKkHj16hKp0AAAAAAAAtHNcA7AJxo4dq+uuu069evWS0+mUdHwmYJ8+fTR9+nR169ZNxcXFWr16dZP7XLNmjXbv3i1JSk9PD0ndAAAAAAAAAAFgK0VHR/uX/m7fvr1J+xw+fFhZWVmSpAsvvFAXXHBBqMoDAAAAAABAO8cS4CY6cOCA3n//fW3dulX5+fmqrKyUaZq1tiksLGy0n7KyMj322GMqLi7W6aefrnvuuSdUJQMAAAAAAAAEgE2xcuVKzZ49WzU1NZIkwzDkcrkUHR0tSaqsrFRlZaWqqqoa7Mfj8eiRRx7R3r17lZKSokcffVQJCQlNqiE7O1vz588P2D558mRNnTq1iUfUNMUVbulwULsEAMAyiYmJdT68C7fk5OSg9+nu4A56nwAAWCUSxmvAjggAG1FcXKysrCzV1NRo4MCBuvHGG9W3b19/+CcdD+cWLlzY4A+pqqoqPfroo9qxY4cSExP12GOP6fTTT29yHeXl5crPzw/YXlFR4b8+YbA4DFaIAwDsw+GwflwL9lgtSQbjNQDARiJhvAbsiACwEevXr5fH41FcXJweeughuVyuOtscPXq0wT6qqqr02GOPaevWrerQoYMeffRRdevWrVl1uN1udenSJWC7y+WS1+ttVp+N8Zm+oPYHAICVfD5fUGcUtCTMC/ZYLUkm4zUAwEaCPV5LofkADmhrCAAbUVBQIElKS0urN/wzTVNbtmwJuH91dbWefPJJbdq0SS6XSzNnzlSvXr2aXUdmZqYyMzMbrLOoqKjZ/TakvLo8qP0BAGCl4uLioAZwqampzd4n2GO1JJWXMV4DAOwj2OO11LIxG7Ab5tY2wu0+fl2d7777TtXV1XXaly9froMHD9a7b01NjWbNmqWNGzcqLi5ODz/8sM4666yQ1gsAAAAAAACcjACwEYMHD5ZhGCotLdXs2bP9n9x7PB7l5OQoKyur3ht5eL1e/fGPf9S6desUExOjBx98UAMGDAh3+QAAAAAAAGjnWALciLS0NI0fP16LFy/WqlWrtGrVKrndbnk8Hvl8Pg0ZMkT9+vXTwoULa+23fft2/d///Z+k48uE//jHPzb4Pq+99lrIjgEAAAAAAADtFwFgE0ybNk1paWlasmSJ9u/fL5/Pp969e2vkyJG68sor9eabb9bZ5+SLllZXVzd6oxAAAAAAAAAgFAgAm2jMmDEaM2ZMvW0ZGRnKyMio9dq5556rnJyccJQGAAAAAAAABMQ1AAEAAAAAAAAbIwAEAAAAAAAAbIwAEAAAAAAAALAxAkAAAAAAAADAxggAAQAAAAAAABsjAAQAAAAAAABsjAAQAAAAAAAAsDECQATkVY3VJQAAEBQ1pn3HtOpj9j02AED7UnOs2uoSANuKsroARDDT6gIARJJKr1P/9iTyoyEEXM4qdXcdtboMW4syfFaXAADh5XBKhtVF2JDPlExTMji5oWDyTQuEDAEgAnIafHsA+J4phzzeGKvLsKVow6doBwFVKEU57DumRcfY99gAtJBhyHCw2CsUTIcp+RizQ4UxDQgdRgUAAAAAAADAxggAAQAAAAAAABtjfm0reTweLViwQGvWrFFBQYGqq49ftDQnJ8fiygAAAAAAAAACwFabNWuWNm7cKEmKi4uT2+32t33zzTfasWOHdu/erW+++Ua5ubnyer0aNGiQnnzySatKBgAAAAAAQDtCANgKubm5/vDvgQce0IgRI2q1/+53v1N+fr4VpQEAAAAAAACSCABbJTc3V5KUkJBQJ/yTpKioKPXu3Vt9+/ZVnz599NVXX+nzzz8Pd5kAAAAAAABoxwgAW6GqqkqSFB8fX297VlaWnE6n/+sDBw6EpS4AAAAAAADgBALAFpg/f74WLFjg/zo/P1/jx4/3f33vvfcqPT29VvgHAAAAAAAAWIEAsAXi4+OVlJSkY8eOqaKiQg6HQx07dvS3x8TEWFgdAAAAAAAA8D0CwBaYOHGiJk6cqGXLlmnOnDlKTU3V3LlzrS4LAAAAAAAAqMNhdQEAAAAAAAAAQocAEAAAAAAAALAxAkAAAAAAAADAxrgGYBuRnZ2t+fPnB2yfPHmypk6dGtT3LK5wS4eD2iUAAJZJTEyUaZqW1pCcnBz0Pt0d3EHvEwAAq0TCeA3YEQFgG1FeXq78/PyA7RUVFXI6nUF9T4fBBFEAgH04HNaPa8EeqyXJYLwGANhIJIzXgB0RALYRbrdbXbp0Cdjucrnk9XqD+p4+0xfU/gAAsJLP5wvqjIKWhHnBHqslyWS8BgDYSLDHayk0H8ABbQ0BYBuRmZmpzMzMgO0FBQUqKioK6nuWV5cHtT8AAKxUXFwc1AAuNTW12fsEe6yWpPIyxmsAgH0Ee7yWWjZmA3bD3FoAAAAAAADAxpgBGEJVVVWqqqryf11dXS1JqqmpUUlJif91p9Mpt5sLeAMAAAAAACD4CABD6B//+IcWLFhQ5/Wvv/661nLeQYMG6cknnwxnaQAAAAAAAGgnWAIMAAAAAAAA2BgzAFshPT1d6enpAdszMjKUkZERxooAAAAAAACA2pgBCAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjUVZXQAil9essboEABEkSjU6M7ZQpgyrS7Edl7NKpmlybkOoxldtdQkhU32M8RpAXabPJxmMK0Hn81ldga0xpgGhQwCIwPh9AcBJusSWKT35a6vLsKXimnht8XSzugxbI1wF0O6Y5vEH0IYY4nsWCBWWACMgJ/kwAMAmooxoq0sImegYxmsAgD1Exdh3vAasRgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADbGVaNDqKysTFu2bNHu3bv1zTffaPfu3SouLpYkPfHEEzr33HMtrhAAAAAAAAB2RwAYQmvXrtWcOXOsLgMAAAAAAADtGAFgiCUnJ6tPnz7q27evunbtqmeeecbqkgAAAAAAANCOEACG0MiRI5Wenu7/uqyszMJqAAAAAAAA0B4RADZBWVmZVq9erQ0bNujAgQM6cuSIampq1KlTJw0ePFgTJkxQ165d6+zndDotqBYAAAAAAAD4HgFgE+Tk5GjBggWSjod6LpdLVVVVysvLU15enlasWKHp06fr/PPPt7ZQAAAAAAAA4BQEgE2QkpKiKVOmaPjw4erevbucTqe8Xq/27t2r7OxsrV+/Xk8//bRefvllxcXFWV0uAAAAAAAA4OewuoC2YOzYsbruuuvUq1cv/7Jep9OpPn36aPr06erWrZuKi4u1evVqiysFAAAAAAAAaiMAbKXo6Gj/0t/t27dbWwwAAAAAAABwCpYAN9GBAwf0/vvva+vWrcrPz1dlZaVM06y1TWFhoUXVAQAAAAAAAPUjAGyClStXavbs2aqpqZEkGYYhl8ul6OhoSVJlZaUqKytVVVUVshqys7M1f/78gO2TJ0/W1KlTg/qexRVu6XBQuwQAwDKJiYl1PrwLt+Tk5KD36e7gDnqfAABYJRLGa8COCAAbUVxcrKysLNXU1GjgwIG68cYb1bdvX3/4Jx0P5xYuXBjSH1Ll5eXKz88P2F5RUeG/PmGwOAxWiAMA7MPhsH5cC/ZYLUkG4zUAwEYiYbwG7IgAsBHr16+Xx+NRXFycHnroIblcrjrbHD16NOR1uN1udenSJWC7y+WS1+sN6nv6TF9Q+wMAwEo+ny+oH9a1JMwL9lgtSSbjNQDARoI9Xkuh+QAOaGsIABtRUFAgSUpLS6s3/DNNU1u2bAl5HZmZmcrMzAzYXlBQoKKioqC+Z3l1eVD7AwDASsXFxUEN4FJTU5u9T7DHakkqL2O8BgDYR7DHa6llYzZgN8ytbYTbffy6Ot99952qq6vrtC9fvlwHDx4Md1kAAAAAAABAkxAANmLw4MEyDEOlpaWaPXu2/5N7j8ejnJwcZWVlKSEhIeD+JSUl/kdZWZn/9fLy8lptJ24wAgAAAAAAAAQTS4AbkZaWpvHjx2vx4sVatWqVVq1aJbfbLY/HI5/PpyFDhqhfv35auHBhvfsHWrb75JNP1vr6iSee0Lnnnhv0+gEAAAAAANC+EQA2wbRp05SWlqYlS5Zo//798vl86t27t0aOHKkrr7xSb775ptUlAgAAAAAAAPUiAGyiMWPGaMyYMfW2ZWRkKCMjo962nJycUJYFAAAAAAAANIhrAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADZGAAgAAAAAAADYGAEgAAAAAAAAYGMEgAjIqxqrSwAAIChqzGqrSwiZ6mOM1wAAe6g5Zt/xGrBalNUFIIKZVhcAIJLk5aVo48pBMn2G1aXYjuu0cnW5NF8+cW5DxWdybgG0I3ExUvfTJYP5HkFX7pEOfGd1FbZl8rsQEDIEgAjIafDtAeB7xypjtHdPV6vLsKWONSXqpCNWl2FrUY5oyWt1FaERHcN4DeAU0VEyEhOsrsKWmCMRWoxpQOjwkRAAAAAAAABgYwSAAAAAAAAAgI0xv7aVPB6PFixYoDVr1qigoEDV1ccvWpqTk2NxZQAAAAAAAAABYKvNmjVLGzdulCTFxcXJ7XbX2ebzzz/XkiVL9M0336iqqkqpqakaNmyYrrnmGnXs2DHcJQMAAAAAAKAdIQBshdzcXH/498ADD2jEiBF1tnnxxRf14YcfSpIcDodiY2N18OBBLV68WJ999pmeeOIJdevWLax1AwAAAAAAoP3gGoCtkJubK0lKSEioN/z7+OOP9eGHH8owDGVmZurNN9/Um2++qTlz5qhHjx46evSoHn/8cf+yYQAAAAAAACDYCABboaqqSpIUHx9fp626ulrz58+XJF1xxRW69tprFRsbK0nq1auXHnroIcXGxiovL09Lly4NX9EAAAAAAABoV1gC3ALz58/XggUL/F/n5+dr/Pjx/q/vvfdeJSUlqaioSIZh6Oqrr67TR5cuXXTppZdq6dKlWrFiha644oqw1A4AAAAAAID2hRmALRAfH6+kpCS5XC5Jx6/tl5SU5H/ExMRo06ZNkqRu3bqpc+fO9fYzZMgQSdKOHTtUWVkZnuIBAAAAAADQrjADsAUmTpyoiRMnatmyZZozZ45SU1M1d+7cWtt8+umnkqQePXoE7OdEm2maOnDggPr27Ru6ogEAAAAAANAuMQMwRAoLCyVJKSkpAbc5ua2oqCjkNQEAAAAAAKD9IQAMkRNLek/c+KM+J7dVVFSEvCYAAAAAAAC0PwSAAAAAAAAAgI1xDcAQiYuLkyRVVVUF3ObkthM3FAkkOztb8+fPD9g+efJkTZ06tZlVNqy4wi0dDmqXAABYJjExUaZpWlpDcnJy0Pt0d3AHvU8AAKwSCeM1YEcEgCGSkpKiPXv2+K8FWJ+T2xr7g6C8vFz5+fkB2ysqKuR0OptfaAMcBhNEAQD24XBYP64Fe6yWJIPxGgBgI5EwXgN2RAAYIt26ddOXX36p3NzcgNucaDMMQ2lpaQ3253a71aVLl4DtLpdLXq+3ZcUG4DN9Qe0PAAAr+Xy+oM4oaEmYF+yxWpJMxmsAgI0Ee7yWQvMBHNDWEACGyHnnnad33nlHubm5KigoUGpqap1tNm7cKEnq37+/f8lwIJmZmcrMzAzYXlBQEPQ7CZdXlwe1PwAArFRcXBzUAK6+sb0xwR6rJam8jPEaAGAfwR6vpZaN2YDdMLc2RM477zwlJyfLNE298847ddoPHz6slStXSpJGjhwZ5uoAAAAAAADQXhAAhkh0dLQyMjIkSe+//77efvtt/00/vv32Wz322GOqrKzUGWecoR//+MdWlgoAAAAAAAAbYwlwCI0ZM0bffvutPvzwQ7322muaN2+eYmNjVVFRIUlKSkrSgw8+qOjoaIsrBQAAAAAAgF0RAIbYz3/+cw0ePFgffvih9uzZ45/1N3z4cE2ePFmJiYlWlwgAAAAAAAAbIwBshfT0dKWnpze63UUXXaSLLrooDBUBAAAAAAAAtXENQAAAAAAAAMDGCAABAAAAAAAAGyMABAAAAAAAAGyMABAAAAAAAACwMQJAAAAAAAAAwMYIAAEAAAAAAAAbIwAEAAAAAAAAbCzK6gIQubxmjdUlAIggztgaJXQvkc9rWF2K7cR3KZdMnwxObcjU+KqtLiFkqo8xXgM4RY1XZmm5DAfzPYLOU2V1BbbGmAaEDgEgAuMPUQAnie9cqT6TvrG6DFuKMryKdXitLsPWHIZpdQkAED5Vx+TYd8jqKuzJ6xMjSugYnF0gZPhICAE5yYcBADYRZURbXULIRMcwXgMA7CEqxr7jNWA1AkAAAAAAAADAxggAAQAAAAAAABsjAAQAAAAAAABsjIvGhEFxcbHefvttffHFFzpy5IhiY2PVp08fXXHFFfrBD35gdXkAAAAAAACwMQLAEMvNzdWMGTNUXFwsSYqPj1d5ebm++uorffXVV7rqqqt02223WVwlAAAAAAAA7IoAMISqq6v1+OOPq7i4WD169ND999+vXr16qaqqSosXL9a8efP03nvvqVevXrrsssusLhcAAAAAAAA2xDUAQ+jjjz/WoUOHFBsbq4cffli9evWSJMXGxuraa6/VT37yE0lSdna2ampqrCwVAAAAAAAANsUMwCYoKyvT6tWrtWHDBh04cEBHjhxRTU2NOnXqpMGDB2vChAnq2rVrnf1WrFghSbr00kvVuXPnOu2TJk3SkiVLVFhYqM2bN2vIkCGhPhQAAAAAAAC0M8wAbIKcnBxlZWXp888/18GDB+V0OuX1epWXl6ePPvpI9913n7766qta+3g8Hu3atUuSNHTo0Hr77dy5s9LS0iRJ//rXv0J6DAAAAAAAAGifmAHYBCkpKZoyZYqGDx+u7t27+wPAvXv3Kjs7W+vXr9fTTz+tl19+WXFxcZKkAwcOyDRNSVKPHj0C9t2jRw/t379f+/fvD8uxAAAAAAAAoH1hBmATjB07Vtddd5169eolp9MpSXI6nerTp4+mT5+ubt26qbi4WKtXr/bvU1hY6H+ekpISsO8TbUVFRSGqHgAAAAAAAO0ZAWArRUdH6/zzz5ckbd++3f96ZWWl/3lsbGzA/U+0eTye0BQIAAAAAACAdo0lwE104MABvf/++9q6davy8/NVWVnpX+J7wsmz/gAAAAAAAIBIQADYBCtXrtTs2bNVU1MjSTIMQy6XS9HR0ZKOz/arrKxUVVWVf58T1wKUpKqqKrlcrnr7PrFPfHx8gzVkZ2dr/vz5AdsnT56sqVOnNu2Amqi4wi0dDmqXAABYJjExsc6Hd+GWnJwc9D7dHdxB7xMAAKtEwngN2BEBYCOKi4uVlZWlmpoaDRw4UDfeeKP69u3rD/+k4+HcwoULa/2QOvm6f4WFhQEDwBOzBhv7g6C8vFz5+fkB2ysqKvzXJwwWh8EKcQCAfTgc1o9rwR6rJclgvAYA2EgkjNeAHREANmL9+vXyeDyKi4vTQw89VG+Qd/To0TqvpaWlyTAMmaap3NxcpaWl1dt/bm6uJKlbt24N1uF2u9WlS5eA7S6XS16vt8E+mstn+oLaHwAAVvL5fEGdUdCSMC/YY7UkmYzXAAAbCfZ4LYXmAzigrSEAbERBQYGk44FefeGfaZrasmVLndfj4+PVr18/7dy5Uxs2bNCIESPq7Xv//v2SpMGDBzdYR2ZmpjIzMxusM9h3Ei6vLg9qfwAAWKm4uDioAVxqamqz9wn2WC1J5WWM1wAA+wj2eC21bMwG7Ia5tY1wu49fV+e7775TdXV1nfbly5fr4MGD9e47cuRIScevIXj4cN2L6S1atEimaSolJUXnnntu8IoGAAAAAAAA/oMAsBGDBw+WYRgqLS3V7Nmz/Z/cezwe5eTkKCsrSwkJCfXuO2bMGJ1++umqrKzUY489pm+//VbS8Rt/vP322/rggw8kHZ/dFxXFZEwAAAAAAAAEH6lTI9LS0jR+/HgtXrxYq1at0qpVq+R2u+XxeOTz+TRkyBD169dPCxcurLNvdHS0HnzwQc2YMUN79+7VvffeK5fLpcrKSvl8x6/XM27cOF122WXhPiwAAAAAAAC0EwSATTBt2jSlpaVpyZIl2r9/v3w+n3r37q2RI0fqyiuv1Jtvvhlw3+7du+v555/XP/7xD33xxRcqKCiQ2+1W7969deWVV+oHP/hBGI8EAAAAAAAA7Q0BYBONGTNGY8aMqbctIyNDGRkZAfdNSkrStGnTNG3atFCVBwAAAAAAANSLawACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjREAAgAAAAAAADZmmKZpWl0EWq+goCDofZoOn8piDqu0tFQ+nzfo/QdTh4QEOR1OeX1elZWWWl1Oo0zDVIeEDvKUVXJug6wtnVupbZ1fn2Eqzp0oT7lHPp/P6nIalZCQIIfDIZ/Pp9IIP7em4VNyRxfftyHicDh1zmlDVVZcLq83eOc3NTW12fuEYrz2Vvt0aGeBykpL5eW/zaDy1fiUkNBBlVWVnNsg49yGllnjU4fEjqqsqoz4MbutnVtvjU8Jbleb+N5ta+fW6XBo2GVDVO4J7ngttWzMBuwmyuoCELmijGj16jBQRdVFQf8BHGzJ7mQ5nU55vV4VHSuyupxGOZ1OJSckq6iGcxtsbencSm3r/DqdTiUnJqvI10bObYeTzm11Gzi3fN+GjNPpVLQjRlK51aWERExctAb/aICKitrI90/ySd8/RZH9/eN0OpWcnMy5DQHObWi1pfPLuQ2dtnhuY+JiVO6x53gNWI0lwAAAAAAAAICNsQQYtpCdna3y8nK53W5lZmZaXY6tcG5Di/MbOpzb0OHcojX4/gkdzm3ocG5Dh3MbOpxbACcjAIQtXHHFFcrPz1eXLl304YcfWl2OrXBuQ4vzGzqc29Dh3KI1+P4JHc5t6HBuQ4dzGzqcWwAnYwkwAAAAAAAAYGMEgAAAAAAAAICNEQACAAAAAAAANkYACAAAAAAAANgYASAAAAAAAABgYwSAAAAAAAAAgI1FWV0AEAwZGRkqLy+X2+22uhTb4dyGFuc3dDi3ocO5RWvw/RM6nNvQ4dyGDuc2dDi3AE5mmKZpWl0EAAAAAAAAgNBgCTAAAAAAAABgYwSAAAAAAAAAgI0RAAIAAAAAAAA2RgAIAAAAAAAA2BgBIAAAAAAAAGBjBIAAAAAAAACAjUVZXQAAAGh7TNPU3r17JUm9evWythgAABAQYzYASTJM0zStLgJoKq/Xq82bN+tf//qX9u/fr6KiInk8HklSfHy8kpOT1a1bNw0ePFjnnnuunE6nxRUDCDWv16uysjIlJibWaTt27JjWr1+vQ4cOKS4uTgMHDlT37t0tqNJ+Kisrdd1118kwDL377rtWl4MIw3gN4FSM19ZhzAYgMQMQbciyZcs0b948FRYWSjr+SVZ9vvzyS73zzjtKSUlRZmamRo8eHc4y2xWv16vt27dLkgYNGmRxNZEpNzdXixcv1u7du+Xz+dS9e3dddtllGjJkSIP7TZ06VcXFxfyS1gCPx6O//e1v+uyzz3Ts2DHFxsbqqquuUkZGhhwOh7Zv364//OEP/p8ZJ1x00UW67777FBsba1HlgL0xXkcexuumYcwODcZrAIgMzABEmzB37ly9//77Mk1ThmEoLS1NPXr0UEpKiv+XgqqqKhUWFio3N1f79+/3bztu3DjdeuutFh+BPZWUlOiGG27g08QA/vd//1fPPvusvF6v/w9gwzAkSRdeeKF++ctfqkOHDvXuyx8TDTNNUw8++KC2bt1aK1wwDEPjx4/XxIkT9ctf/lKlpaWKjo5WQkKCiouL5fV6ZRiGhg0bphkzZlh4BJFpzpw5Td7W5/NpxYoVMgxDo0aN8r9uGIbuueeeUJSHNoDxOjIxXjeOMTs0GK9DhzEbQHMxAxARb82aNXrvvfdkGIauuOIKXX311ercuXOD+xw5ckT/+Mc/9OGHH+r999/Xeeedp+HDh4epYkA6dOiQ5syZo5qaGnXs2FH/9V//pY4dO2rLli3avXu31q5dq3379unRRx9Vly5drC63zfnss8+0ZcsWOZ1OXX311TrrrLO0fft2vfPOO/rggw9kGIYqKip02223acyYMYqOjlZlZaXeffddLViwQOvWrdPGjRsbndXR3ixfvtz/B29TmaapTz/91P+cPybaL8ZrtFWM2aHDeB06jNkAmosAEBFvyZIlMgxDU6ZM0TXXXNOkfTp16qTbb79dKSkpev311/XBBx/wBwXC6r333tOxY8fUs2dPPfLII0pKSvK3rVmzRllZWcrLy9MDDzygxx57TGeeeaZ1xbZBK1eu9P9cmDRpkiRp+PDhcjgcevvtt7V48WJdddVVGjdunH+fuLg4/exnP9PRo0e1ZMkSffbZZ/xBEcCZZ55Z63u2PieWFBqGoYEDB4anMEQ0xmu0VYzZocN4HXqM2QCaigAQEe+bb76Rw+HQT3/602bvO378eM2bN0/ffPNNCCqzhy1btrR434qKiiBWYi//+te/ZBiG7rjjjjq/lP3gBz9Qnz599Nhjj2nfvn2aPn26Hn30UfXo0cOaYtugPXv2SJJ+/OMf13p91KhRevvttyUd/++/PuPGjdOSJUu0a9eu0BbZBg0bNkzr1q1TUVGRrrzySl1xxRUBt/V4PPrZz34mSXriiSfCVSIiGON1aDFehw5jdugwXocOYzaA5iIARMSrrKxUbGysYmJimr1vTEyM4uLiVFlZGYLK7GHGjBnNXj6Axh0+fFhOp1Nnn312ve2dO3fW7373O82cOVM7d+7UjBkzNHPmTPXt2zfMlbZNJSUlio2NVceOHWu9fmK5YXR0dMClh2lpaYqOjlZBQUHI62xrHnzwQa1evVovv/yyXnrpJX366ae688471atXrzrb8nMDp2K8Di3G69BhzA4dxuvQYcwG0FwOqwsAGpOamiqPx6N9+/Y1e9+9e/eqoqKi0WsQ4fh1QFryQP1qamoUExMjhyPwj1m3263HHntMAwYMUGlpqR566CF9/fXXYayy7Qp0R8ATr7vd7gb3j4+PV3V1ddDrsoOLL75Yf/rTn/TjH/9Yu3bt0q9+9Sv99a9/JZhBoxivw4PxOvgYs0OH8Tq0GLMBNAczABHxhg0bppycHD3zzDN6+OGH1alTpybtd+TIET377LP+O4ihfomJiSopKdH999+v//qv/2rWvqWlpbrjjjtCVFnblpycrIKCApWWliohISHgdnFxcZo5c6Yee+wxbd68WTNnztSDDz4YxkrbpsTERB06dEiVlZWKi4tr9v4ej6fObAR8z+Vy6a677tKoUaP0wgsvKCcnR6tXr9att96qESNGWF0eIhTjdWgxXocOY3boMF6HHmM2gKYiAETEu+aaa7RixQrt27dPd955py699FINGTJEPXr0UEpKiv8TxKqqKhUWFio3N1cbNmzQypUrVVlZqaSkJE2ePNnio4hcffv21YYNG3Tw4MFGP4U9ldfrDVFVbV+vXr1UUFCgf/3rX7rkkksa3DY2NlYPP/ywnnjiCX311Vd69NFH5fP5wlRp29S1a1cdOnRI//73v9WnT59abfPnz29wqcvhw4dVXV2tlJSUUJfZ5g0YMEDPPfecFi5cqH/84x966qmndMEFF+iOO+7gDzLUwXgdWozXocOYHTqM1+HDmA2gMQSAiHgdO3bUE088occff1zfffedli5dqqVLlza6n2maOu200/Tggw8y6DWgT58+Wr9+PRdeD7LzzjtPX3zxhZYvX97oHxPS8etfPfjgg5o1a5a+/PJLSVyvpSF9+/bV+vXrtXXr1jp/UDT2h/HGjRslSf369QtZfXYSFRWljIwM/fCHP1RWVpa+/PJLbdmyRVdddZXVpSHCMF6HFuN16DBmhw7jdXgxZgNoCNcARJvQvXt3ZWVl6bbbbvNfcLmha9z069dPt912m7KystS9e3crS494J34Z2717t8WV2MtFF10kSdqwYYO+/fbbJu0THR2t6dOn+/dFYBdeeKHGjBmjDh06NHvfJUuWSDr+Bx+arlu3bpo1a5Z+8YtfyOFw+O/eCJyM8Tp0GK9DhzE7dBivrcGYDaA+hslVgdEGVVZWav/+/SoqKpLH45F0/CLBKSkpSktLa9E1RtqrsrIyrV27VpI0evRoPsEOooKCAvl8PnXo0EEul6vJ+/l8Pm3fvl2maWrQoEEhrLD98fl8/rsJpqSkKCqKifAtUVRUpFdffVWHDx+WJD3xxBMWV4RIxXgdPIzXocWYHVkYr4OHMRvACQSAAAAAAAAAgI2xBBgAAAAAAACwMQJAAAAAAAAAwMYIAAEAAAAAAAAbIwAEAAAAAAAAbIwAEAAAAAAAALAxAkAAAAAAAADAxggAAQAAAAAAABsjAAQAAAAAAABsjAAQAAAAAAAAsDECQAAAAAAAAMDGCAABAAAAAAAAGyMABAAAAAAAAGyMABAAAAAAAACwMQJAAAAAAAAAwMYIAAEAAAAAAAAbIwAEAAAAAAAAbIwAEAAAtDsrVqyQYRgyDEMzZ86UJO3YsUO//OUv1b9/f7ndbiUnJ+sHP/iBnn32WVVVVTXap8fj0QsvvKAf//jHOuOMMxQTE6NOnTpp2LBhevDBB3Xw4MFG+6iqqtJf/vIX/eQnP9GZZ56puLg4uVwude/eXUOHDlVmZqZeeeUVlZWVtfYUAAAAoB0xTNM0rS4CAAAgnFasWKFRo0ZJkv7nf/5H55xzjm655RZVVFTUu/3ZZ5+tjz76SD169Ki3fd26dZo0aZL2798f8D1dLpeef/553XLLLfW2f/vttxo7dqx27tzZaP1vvfWWJk+e3Oh2AAAAgCRFWV0AAACAldavX69Zs2apurpaGRkZSk9PV3x8vLZu3aq//e1vysvL09dff61Ro0Zp48aNSkxMrLX/pk2bNGrUKJWXl0uSBgwYoBtuuEG9evVSYWGh3n33XX3yySeqqKjQtGnTZJqmpk2bVqeOyZMn+8O/s88+W9dcc4169OihxMRElZSUaMeOHVq5cqW++OKL0J8UAAAA2AozAAEAQLtz8gxA6fjsvA8++EAjR46std3Ro0d1xRVX6PPPP5ck3XHHHXrxxRf97T6fT4MHD9aWLVskSbfeeqv+/Oc/Kyqq9mesf/3rX3XbbbfJNE25XC5t3bpVPXv29Ld/+eWXGjZsmCTpmmuu0YIFC+Rw1H+lln379sk0zVr7AwAAAA3hGoAAAKDdmzVrVp3wT5KSkpL01ltvqUOHDpKkV155RYcPH/a3f/DBB/7w77zzztOLL75YJ/yTpGnTpumOO+6QJFVUVGjOnDm12nfv3u1/ftNNNwUM/ySpR48ehH8AAABoFgJAAADQriUlJem2224L2H7mmWdqypQpko7fpOO9997zty1atMj//Fe/+pWcTmfAfh544AEZhlFnP0lyu93+5+vXr2/eAQAAAACNIAAEAADt2iWXXKK4uLgGt7nsssv8z0++Bt/atWv9zy+//PIG++jRo4fOPvtsSVJubq7y8vL8bRdffLFcLpck6dFHH9V9992njRs3iiu1AAAAIBgIAAEAQLvWr1+/Zm1z8OBB//MTIV5CQoJOP/30Rvs566yz6uwrSSkpKZozZ44cDodqamo0Z84cDR06VJ07d9ZVV12l3//+99q4cWOTjgcAAAA4FQEgAABo105eftuUbUpLS+s8b0ofkvzXEjy1H+n4DUQ+++wzXX755f5rAB45ckTvv/++HnjgAQ0dOlTnnXeelixZ0qT3AgAAAE4gAAQAAO1aeXl5s7ZJSEio87wpfUhSWVlZvf2ccMkll+jjjz9WQUGBcnJy9P/9f/+fLrnkEv+NRTZv3qwrrrhCr7zySpPeDwAAAJAIAAEAQDt38h14m7JN165d/c/POOMMScdn83333XeN9rNz5856+zlVcnKyrrrqKj355JNatWqVDh48qLvvvtvf/qtf/UrV1dWNvh8AAAAgEQACAIB2btWqVaqqqmpwm3/+85/+5xdeeGG9zz/55JMG+8jNzdXXX38tSerevXuTrhl4QufOnfX8889r8ODBkqTCwkJt3bq1yfsDAACgfSMABAAA7drRo0c1d+7cgO15eXmaN2+eJCk2Nlbjxo3zt02aNMn//Omnn5bX6w3Yz+9//3v/XX1P3q85evXq5X9eU1PToj4AAADQ/hAAAgCAdu///b//p5UrV9Z5vaSkRNdee63/hh0333yzOnfu7G+/4oordO6550qS/vWvf+kXv/hFvcHcK6+8ohdffFGS5HK5dO+999Zqnzdvnv761782eC3BnTt3atmyZZKkuLg49e/fv5lHCQAAgPYqyuoCAAAArDRu3DgtXbpUo0eP1s9+9jOlp6crPj5e27Zt01//+lcdPHhQ0vHZd7///e9r7etwOJSdna0RI0aovLxcL7/8sj7//HPdcMMN6tmzpwoLC7V48WJ99NFH/n2ee+459ejRo1Y/u3bt0iOPPKJ77rlHl112mYYNG6bu3bsrPj5ehw8f1hdffKG3337bHxDec8899d5EBAAAAKiPYZ5YiwIAANBOrFixQqNGjZIk/c///I8GDBigm2++WRUVFfVu379/f3300Ufq2bNnve3r1q3T1VdfrQMHDgR8T5fLpeeee07Tpk2r0/bII49o5syZjdZtGIbuvPNOzZkzR06ns9HtAQAAAIkZgAAAALr22ms1ePBgPf/88/rkk0/073//W9HR0erfv7+uu+463XXXXYqNjQ24/7Bhw7Rz507NnTtXixcv1pYtW1RYWKgOHTqod+/eGjNmjO66666Ad/6dMWOGRo0apeXLl+uLL77Qjh07lJeXp2PHjvn7uPjii3XLLbdoyJAhoToNAAAAsClmAAIAgHbn1BmATZl9BwAAALRV3AQEAAAAAAAAsDECQAAAAAAAAMDGCAABAAAAAAAAGyMABAAAAAAAAGyMABAAAAAAAACwMe4CDAAAAAAAANgYMwABAAAAAAAAGyMABAAAAAAAAGyMABAAAAAAAACwMQJAAAAAAAAAwMYIAAEAAAAAAAAbIwAEAAAAAAAAbIwAEAAAAAAAALAxAkAAAAAAAADAxggAAQAAAAAAABsjAAQAAAAAAABsjAAQAAAAAAAAsDECQAAAAAAAAMDGCAABAAAAAAAAGyMABAAAAAAAAGyMABAAAAAAAACwMQJAAAAAAAAAwMYIAAEAAAAAAAAbIwAEAAAAAAAAbIwAEAAAAAAAALAxAkAAAAAAAADAxggAAQAAAAAAABsjAAQAAAAAAABsjAAQAAAAAAAAsDECQAAAAAAAAMDGCAABAAAAAAAAG/v/ASmJDz0wAyRiAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 480, + "width": 640 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "df[\"layer\"] = df[\"layer\"].astype(\"category\")\n", + "df[\"token\"] = df[\"token\"].astype(\"category\")\n", + "nodes = []\n", + "for l in range(gpt.config.n_layer - 1, -1, -1):\n", + " nodes.append(f\"f{l}\")\n", + " nodes.append(f\"a{l}\")\n", + "df[\"layer\"] = pd.Categorical(df[\"layer\"], categories=nodes[::-1], ordered=True)\n", + "\n", + "g = (\n", + " ggplot(df)\n", + " + geom_tile(aes(x=\"pos\", y=\"layer\", fill=\"prob\", color=\"prob\"))\n", + " + facet_wrap(\"~token\")\n", + " + theme(axis_text_x=element_text(rotation=90))\n", + ")\n", + "print(g)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/tutorials/pyvene_101.ipynb b/_sources/tutorials/pyvene_101.ipynb new file mode 100644 index 00000000..07bc46d0 --- /dev/null +++ b/_sources/tutorials/pyvene_101.ipynb @@ -0,0 +1,2858 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "ba6c7e19", + "metadata": {}, + "source": [ + "# Introduction to pyvene\n", + "This tutorial shows simple runnable code snippets of how to do different kinds of interventions on neural networks with pyvene." + ] + }, + { + "cell_type": "markdown", + "id": "9d6994fa", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/stanfordnlp/pyvene/blob/main/pyvene_101.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "d123a2ba", + "metadata": {}, + "outputs": [], + "source": [ + "__author__ = \"Zhengxuan Wu\"\n", + "__version__ = \"02/01/2024\"" + ] + }, + { + "cell_type": "markdown", + "id": "26298448-91eb-4cad-85bf-ec5fef436e1d", + "metadata": {}, + "source": [ + " # Table of Contents \n", + "1. [Set-up](#Set-up) \n", + "1. [pyvene 101](#pyvene-101) \n", + " 1. [Get Attention Weights](#Get-Attention-Weights)\n", + " 1. [with String Access](#Get-Attention-Weights-with-Direct-Access-String)\n", + " 1. [with 1-Line Function](#Get-Attention-Weights-with-a-Function)\n", + " 1. [Set Activations to Zeros](#Set-Activation-to-Zeros) \n", + " 1. [with Lambda Expression](#Set-Activation-to-Zeros-with-a-Lambda-Expression)\n", + " 1. [Set Activations with Subspaces](#Set-Activations-to-Zeros-with-Subspaces)\n", + " 1. [Interchange Intervention](#Interchange-Interventions)\n", + " 1. [Intervention Config](#Intervention-Configuration)\n", + " 1. [Addition Intervention](#Addition-Intervention)\n", + " 1. [Trainable Intervention](#Trainable-Intervention)\n", + " 1. [Activation Collection](#Activation-Collection-with-Intervention)\n", + " 1. [Activation Collection with Other Intervention](#Activation-Collection-at-Downstream-of-a-Intervened-Model)\n", + " 1. [Intervene Single Neuron](#Intervene-on-a-Single-Neuron)\n", + " 1. [Add New Intervention Type](#Add-New-Intervention-Type)\n", + " 1. [Intervene on Recurrent NNs](#Recurrent-NNs-(Intervene-a-Specific-Timestep))\n", + " 1. [Intervene across Times with RNNs](#Recurrent-NNs-(Intervene-cross-Time))\n", + " 1. [Intervene on LM Generation](#LMs-Generation)\n", + " 1. [Debiasing with Backpack LMs](#Debiasing-with-Backpack-LMs)\n", + " 1. [Saving and Loading](#Saving-and-Loading)\n", + " 1. [Multi-Source Intervention (Parallel)](#Multi-Source-Interchange-Intervention-(Parallel-Mode))\n", + " 1. [Multi-Source Intervention (Serial)](#Multi-Source-Interchange-Intervention-(Serial-Mode))\n", + " 1. [Multi-Source Intervention with Subspaces (Parallel)](#Multi-Source-Interchange-Intervention-with-Subspaces-(Parallel-Mode))\n", + " 1. [Multi-Source Intervention with Subspaces (Serial)](#Multi-Source-Interchange-Intervention-with-Subspaces-(Serial-Mode))\n", + " 1. [Interchange Intervention Training](#Interchange-Intervention-Training-(IIT))\n", + "1. [pyvene 102](#pyvene-102)\n", + " 1. [Intervention Grouping](#Grouping)\n", + " 1. [Intervention Skipping](#Intervention-Skipping-in-Runtime)\n", + " 1. [Subspace Partition](#Subspace-Partition)\n", + " 1. [Intervention Linking](#Intervention-Linking)\n", + " 1. [Add New Model Type](#Add-New-Model-Type)\n", + " 1. [Path Patching](#Composing-Complex-Intervention-Schema:-Path-Patching)\n", + " 1. [Causal Tracing](#Composing-Complex-Intervention-Schema:-Causal-Tracing-in-15-lines)\n", + " 1. [Inference-time Intervention](#Inference-time-Intervention)\n", + " 1. [IntervenableModel from HuggingFace Directly](#IntervenableModel-from-HuggingFace-Directly)\n", + " 1. [Path Patching with DAS](#Path-Patching-with-Trainable-Interventions)\n", + " 1. [Intervene ResNet with Lambda Functors](#Intervene-on-ResNet-with-Lambda-Functions)\n", + " 1. [Intervene ResNet with 1-line DAS Lambda](#Intervene-on-ResNet-with-Trainable-Lambda-Functions)\n", + " 2. [Run pyvene on NDIF backend](#Run-pyvene-on-NDIF-backend-with-pv.build_intervenable_model(...))\n", + "1. [The End](#The-End)\n", + " " + ] + }, + { + "cell_type": "markdown", + "id": "0706e21b", + "metadata": {}, + "source": [ + "## Set-up" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e08304ea", + "metadata": {}, + "outputs": [], + "source": [ + "try:\n", + " # This library is our indicator that the required installs\n", + " # need to be done.\n", + " import pyvene\n", + "\n", + "except ModuleNotFoundError:\n", + " !pip install git+https://github.com/stanfordnlp/pyvene.git" + ] + }, + { + "cell_type": "markdown", + "id": "0ede4f94", + "metadata": {}, + "source": [ + "## pyvene 101\n", + "Before we get started, here are a couple of core notations that are used in this library:\n", + "- **Base** example: this is the example we are intervening on, or, we are intervening on the computation graph of the model running the **Base** example.\n", + "- **Source** example or representations: this is the source of our intervention. We use **Source** to intervene on **Base**.\n", + "- **component**: this is the `nn.module` we are intervening in a pytorch-based NN. For models supported by this library, you can use directly access via str, or use the abstract names defined in the config file (e.g., `h[0].mlp.output` or `mlp_output` with other fields). \n", + "- **unit**: this is the axis of our intervention. If we say our **unit** is `pos` (`position`), then you are intervening on each token position.\n", + "- **unit_locations**: this list gives you the percisely location of your intervention. It is the locations of the unit of analysis you are specifying. For instance, if your `unit` is `pos`, and your `unit_location` is 3, then it means you are intervening on the third token. If this field is left as `None`, then no selection will be taken, i.e., you can think of you are getting the raw tensor and you can do whatever you want.\n", + "- **intervention_type** or **intervention**: this field specifies the intervention you can perform. It can be a primitive type, or it can be a function or a lambda expression for simple interventions. One benefit of using primitives is speed and systematic training schemes. You can also save and load interventions if you use the supported primitives." + ] + }, + { + "cell_type": "markdown", + "id": "7245643b-fd44-47a5-a189-ce1565da7e25", + "metadata": {}, + "source": [ + "### Get Attention Weights" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "17c7f2f6-b0d3-4fe2-8e4f-c044b93f3ef0", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-310/lib/python3.10/site-packages/transformers/utils/hub.py:124: FutureWarning: Using `TRANSFORMERS_CACHE` is deprecated and will be removed in v5 of Transformers. Use `HF_HOME` instead.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import pyvene as pv\n", + "from transformers import AutoTokenizer, AutoModelForCausalLM\n", + "\n", + "model_name = \"gpt2\"\n", + "gpt2 = AutoModelForCausalLM.from_pretrained(model_name)\n", + "tokenizer = AutoTokenizer.from_pretrained(model_name)\n", + "\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"layer\": 10,\n", + " \"component\": \"attention_weight\",\n", + " \"intervention_type\": pv.CollectIntervention}, model=gpt2)\n", + "\n", + "base = \"When John and Mary went to the shops, Mary gave the bag to\"\n", + "collected_attn_w = pv_gpt2(\n", + " base = tokenizer(base, return_tensors=\"pt\"\n", + " ), unit_locations={\"base\": [h for h in range(12)]}\n", + ")[0][-1][0]" + ] + }, + { + "cell_type": "markdown", + "id": "cee8d393-1676-45e2-8aa7-228343d3b13b", + "metadata": {}, + "source": [ + "#### Get Attention Weights with Direct Access String" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "128be2dd-f089-4291-bfc5-7002d031b1e9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "# gpt2 helper loading model from HuggingFace\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " # based on the module printed above, you can access via string, input means the input to the module\n", + " \"component\": \"h[10].attn.attn_dropout.input\",\n", + " # you can also initialize the intervention outside\n", + " \"intervention\": pv.CollectIntervention()}, model=gpt2)\n", + "\n", + "base = \"When John and Mary went to the shops, Mary gave the bag to\"\n", + "collected_attn_w = pv_gpt2(\n", + " base = tokenizer(base, return_tensors=\"pt\"\n", + " ), unit_locations={\"base\": [h for h in range(12)]}\n", + ")[0][-1][0]" + ] + }, + { + "cell_type": "markdown", + "id": "22643b2d", + "metadata": {}, + "source": [ + "#### Get Attention Weights with a Function" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "678dc46f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import copy\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "cached_w = {}\n", + "def pv_patcher(b, s): cached_w[\"attn_w\"] = copy.deepcopy(b.data)\n", + "\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"component\": \"h[10].attn.attn_dropout.input\", \n", + " \"intervention\": pv_patcher}, model=gpt2)\n", + "\n", + "base = \"When John and Mary went to the shops, Mary gave the bag to\"\n", + "_ = pv_gpt2(tokenizer(base, return_tensors=\"pt\"))\n", + "torch.allclose(collected_attn_w, cached_w[\"attn_w\"].unsqueeze(dim=0))" + ] + }, + { + "cell_type": "markdown", + "id": "12c5addb-4bd7-4129-b350-0677774f5790", + "metadata": {}, + "source": [ + "### Set Activation to Zeros" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "a82664f9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "# define the component to zero-out\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"layer\": 0, \"component\": \"mlp_output\",\n", + " \"source_representation\": torch.zeros(gpt2.config.n_embd)\n", + "}, model=gpt2)\n", + "# run the intervened forward pass\n", + "intervened_outputs = pv_gpt2(\n", + " base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\"), \n", + " # we define the intervening token dynamically\n", + " unit_locations={\"base\": 3},\n", + " output_original_output=True # False then the first element in the tuple is None\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "b9c11cb9", + "metadata": {}, + "source": [ + "#### Set Activation to Zeros with a Lambda Expression" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "7627dc32", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "# indices are specified in the intervention\n", + "mask = torch.ones(1, 5, 768)\n", + "mask[:,3,:] = 0.\n", + "# define the component to zero-out\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"component\": \"h[0].mlp.output\", \"intervention\": lambda b, s: b*mask\n", + "}, model=gpt2)\n", + "# run the intervened forward pass\n", + "intervened_outputs_fn = pv_gpt2(\n", + " base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + ")\n", + "torch.allclose(\n", + " intervened_outputs[1].last_hidden_state, \n", + " intervened_outputs_fn[1].last_hidden_state\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "72363777", + "metadata": {}, + "source": [ + "#### Set Activation to Zeros with a Lambda Expression and Subspace notation" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "d86c06f0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "# indices are specified in the intervention\n", + "\n", + "def pv_patcher(b, s, sp): \n", + " mask = torch.ones(1, 5, 768)\n", + " mask[:,sp[0][0],:] = 0.\n", + " return b*mask\n", + "\n", + "# define the component to zero-out\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"component\": \"h[0].mlp.output\", \"intervention\": pv_patcher\n", + "}, model=gpt2)\n", + "# run the intervened forward pass\n", + "intervened_outputs_fn = pv_gpt2(\n", + " base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\"),\n", + " subspaces=3,\n", + ")\n", + "torch.allclose(\n", + " intervened_outputs[1].last_hidden_state, \n", + " intervened_outputs_fn[1].last_hidden_state\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "39071858", + "metadata": {}, + "source": [ + "### Set Activations to Zeros with Subspaces\n", + "The notion of subspace means the actual dimensions you are intervening. If we have a representation in a size of 512, the first 128 activation values are its subspace activations." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "b7896c3b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "Directory './tmp/' already exists.\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "# built-in helper to get a HuggingFace model\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "# create with dict-based config\n", + "pv_config = pv.IntervenableConfig({\n", + " \"layer\": 0, \"component\": \"mlp_output\"})\n", + "#initialize model\n", + "pv_gpt2 = pv.IntervenableModel(pv_config, model=gpt2)\n", + "# run an intervened forward pass\n", + "intervened_outputs = pv_gpt2(\n", + " # the intervening base input\n", + " base=tokenizer(\"The capital of Spain is\", return_tensors=\"pt\"), \n", + " # the location to intervene at (3rd token)\n", + " unit_locations={\"base\": 3},\n", + " # the individual dimensions targetted\n", + " subspaces=[10,11,12],\n", + " source_representations=torch.zeros(gpt2.config.n_embd)\n", + ")\n", + "# sharing\n", + "pv_gpt2.save(\"./tmp/\")" + ] + }, + { + "cell_type": "markdown", + "id": "1410904d", + "metadata": {}, + "source": [ + "### Interchange Interventions\n", + "Instead of a static vector, we can intervene the model with activations sampled from a different forward run. We call this interchange intervention, where intervention happens between two examples and we are interchanging activations between them." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "9691c7d8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "# built-in helper to get a HuggingFace model\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "# create with dict-based config\n", + "pv_config = pv.IntervenableConfig({\n", + " \"layer\": 0,\n", + " \"component\": \"mlp_output\"},\n", + " intervention_types=pv.VanillaIntervention\n", + ")\n", + "#initialize model\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " pv_config, model=gpt2)\n", + "# run an interchange intervention \n", + "intervened_outputs = pv_gpt2(\n", + " # the base input\n", + " base=tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors = \"pt\"), \n", + " # the source input\n", + " sources=tokenizer(\n", + " \"The capital of Italy is\", \n", + " return_tensors = \"pt\"), \n", + " # the location to intervene at (3rd token)\n", + " unit_locations={\"sources->base\": 3},\n", + " # the individual dimensions targeted\n", + " subspaces=[10,11,12]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "c890fda4", + "metadata": {}, + "source": [ + "### Intervention Configuration\n", + "You can also initialize the config without the lazy dictionary passing by enabling more options, e.g., the mode of these interventions are executed." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "4faa3e41", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "IntervenableConfig\n", + "{\n", + " \"model_type\": \"None\",\n", + " \"representations\": [\n", + " {\n", + " \"layer\": 0,\n", + " \"component\": \"mlp_output\",\n", + " \"unit\": \"pos\",\n", + " \"max_number_of_units\": 1,\n", + " \"low_rank_dimension\": null,\n", + " \"intervention_type\": null,\n", + " \"intervention\": null,\n", + " \"subspace_partition\": null,\n", + " \"group_key\": null,\n", + " \"intervention_link_key\": null,\n", + " \"moe_key\": null,\n", + " \"source_representation\": \"PLACEHOLDER\",\n", + " \"hidden_source_representation\": null\n", + " },\n", + " {\n", + " \"layer\": 1,\n", + " \"component\": \"mlp_output\",\n", + " \"unit\": \"pos\",\n", + " \"max_number_of_units\": 1,\n", + " \"low_rank_dimension\": null,\n", + " \"intervention_type\": null,\n", + " \"intervention\": null,\n", + " \"subspace_partition\": null,\n", + " \"group_key\": null,\n", + " \"intervention_link_key\": null,\n", + " \"moe_key\": null,\n", + " \"source_representation\": \"PLACEHOLDER\",\n", + " \"hidden_source_representation\": null\n", + " },\n", + " {\n", + " \"layer\": 2,\n", + " \"component\": \"mlp_output\",\n", + " \"unit\": \"pos\",\n", + " \"max_number_of_units\": 1,\n", + " \"low_rank_dimension\": null,\n", + " \"intervention_type\": null,\n", + " \"intervention\": null,\n", + " \"subspace_partition\": null,\n", + " \"group_key\": null,\n", + " \"intervention_link_key\": null,\n", + " \"moe_key\": null,\n", + " \"source_representation\": \"PLACEHOLDER\",\n", + " \"hidden_source_representation\": null\n", + " },\n", + " {\n", + " \"layer\": 3,\n", + " \"component\": \"mlp_output\",\n", + " \"unit\": \"pos\",\n", + " \"max_number_of_units\": 1,\n", + " \"low_rank_dimension\": null,\n", + " \"intervention_type\": null,\n", + " \"intervention\": null,\n", + " \"subspace_partition\": null,\n", + " \"group_key\": null,\n", + " \"intervention_link_key\": null,\n", + " \"moe_key\": null,\n", + " \"source_representation\": \"PLACEHOLDER\",\n", + " \"hidden_source_representation\": null\n", + " }\n", + " ],\n", + " \"intervention_types\": \"\",\n", + " \"mode\": \"parallel\",\n", + " \"sorted_keys\": \"None\",\n", + " \"intervention_dimensions\": \"None\"\n", + "}\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "# standalone configuration object\n", + "config = pv.IntervenableConfig([\n", + " {\n", + " \"layer\": _,\n", + " \"component\": \"mlp_output\",\n", + " \"source_representation\": torch.zeros(\n", + " gpt2.config.n_embd)\n", + " } for _ in range(4)],\n", + " mode=\"parallel\"\n", + ")\n", + "# this object is serializable\n", + "print(config)\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "intervened_outputs = pv_gpt2(\n", + " base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\"), \n", + " unit_locations={\"base\": 3}\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "9c5b2270", + "metadata": {}, + "source": [ + "### Addition Intervention\n", + "Activation swap is one kind of interventions we can perform. Here is another simple one: `pv.AdditionIntervention`, which adds the sampled representation into the **Base** run." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "a40f5989", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig({\n", + " \"layer\": 0,\n", + " \"component\": \"mlp_input\"},\n", + " pv.AdditionIntervention\n", + ")\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "intervened_outputs = pv_gpt2(\n", + " base = tokenizer(\n", + " \"The Space Needle is in downtown\", \n", + " return_tensors=\"pt\"\n", + " ), \n", + " unit_locations={\"base\": [[[0, 1, 2, 3]]]},\n", + " source_representations = torch.rand(gpt2.config.n_embd)\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "099ddf77", + "metadata": {}, + "source": [ + "### Trainable Intervention\n", + "Interventions can contain trainable parameters, and hook-up with the model to receive gradients end-to-end. They are often useful in searching for an particular interpretation of the representation.\n", + "\n", + "The following example does a single step gradient calculation to push the model to generate `Rome` after the intervention. If we can train such intervention at scale with low loss, it means you have a causal grab onto your model. In terms of interpretability, that means, somehow you find a representation (not the original one since its trained) that maps onto the `capital` output." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "7f058ecd", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "das_config = pv.IntervenableConfig({\n", + " \"layer\": 8,\n", + " \"component\": \"block_output\",\n", + " \"low_rank_dimension\": 1},\n", + " # this is a trainable low-rank rotation\n", + " pv.LowRankRotatedSpaceIntervention\n", + ")\n", + "\n", + "das_gpt2 = pv.IntervenableModel(das_config, model=gpt2)\n", + "\n", + "last_hidden_state = das_gpt2(\n", + " base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\"\n", + " ), \n", + " sources = tokenizer(\n", + " \"The capital of Italy is\", \n", + " return_tensors=\"pt\"\n", + " ), \n", + " unit_locations={\"sources->base\": 3}\n", + ")[-1].last_hidden_state[:,-1]\n", + "\n", + "# golden counterfacutual label as Rome\n", + "label = tokenizer.encode(\n", + " \" Rome\", return_tensors=\"pt\")\n", + "logits = torch.matmul(\n", + " last_hidden_state, gpt2.wte.weight.t())\n", + "\n", + "m = torch.nn.CrossEntropyLoss()\n", + "loss = m(logits, label.view(-1))\n", + "loss.backward()" + ] + }, + { + "cell_type": "markdown", + "id": "a8fd2b8e", + "metadata": {}, + "source": [ + "### Activation Collection with Intervention\n", + "You can also collect activations with our provided `pv.CollectIntervention` intervention. More importantly, this can be used interchangably with other interventions. You can collect something from an intervened model." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "6e6bd585", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig({\n", + " \"layer\": 10,\n", + " \"component\": \"block_output\",\n", + " \"intervention_type\": pv.CollectIntervention}\n", + ")\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " config, model=gpt2)\n", + "\n", + "collected_activations = pv_gpt2(\n", + " base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\"\n", + " ), unit_locations={\"sources->base\": 3}\n", + ")[0][-1]" + ] + }, + { + "cell_type": "markdown", + "id": "f7b0d0c6", + "metadata": {}, + "source": [ + "### Activation Collection at Downstream of a Intervened Model" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "adcfcb05", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig({\n", + " \"layer\": 8,\n", + " \"component\": \"block_output\",\n", + " \"intervention_type\": pv.VanillaIntervention}\n", + ")\n", + "\n", + "config.add_intervention({\n", + " \"layer\": 10,\n", + " \"component\": \"block_output\",\n", + " \"intervention_type\": pv.CollectIntervention})\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " config, model=gpt2)\n", + "\n", + "collected_activations = pv_gpt2(\n", + " base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\"\n", + " ), \n", + " sources = [tokenizer(\n", + " \"The capital of Italy is\", \n", + " return_tensors=\"pt\"\n", + " ), None], unit_locations={\"sources->base\": 3}\n", + ")[0][-1]" + ] + }, + { + "cell_type": "markdown", + "id": "a9e6e4d9", + "metadata": {}, + "source": [ + "### Intervene on a Single Neuron\n", + "We want to provide a good user interface so that interventions can be done easily by people with less pytorch or programming experience. Meanwhile, we also want to be flexible and provide the depth of control required for highly specific tasks. Here is an example where we intervene on a specific neuron at a specific head of a layer in a model." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "d25b6401", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig({\n", + " \"layer\": 8,\n", + " \"component\": \"head_attention_value_output\",\n", + " \"unit\": \"h.pos\",\n", + " \"intervention_type\": pv.CollectIntervention}\n", + ")\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " config, model=gpt2)\n", + "\n", + "collected_activations = pv_gpt2(\n", + " base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\"\n", + " ), \n", + " unit_locations={\n", + " # GET_LOC is a helper.\n", + " # (3,3) means head 3 position 3\n", + " \"base\": pv.GET_LOC((3,3))\n", + " },\n", + " # the notion of subspace is used to target neuron 0.\n", + " subspaces=[0]\n", + ")[0][-1]" + ] + }, + { + "cell_type": "markdown", + "id": "5692bc15", + "metadata": {}, + "source": [ + "### Add New Intervention Type" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "1597221a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "class MultiplierIntervention(\n", + " pv.ConstantSourceIntervention):\n", + " def __init__(self, **kwargs):\n", + " super().__init__()\n", + " def forward(\n", + " self, base, source=None, subspaces=None):\n", + " return base * 99.0\n", + "# run with new intervention type\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"intervention_type\": MultiplierIntervention}, \n", + " model=gpt2)\n", + "intervened_outputs = pv_gpt2(\n", + " base = tokenizer(\"The capital of Spain is\", \n", + " return_tensors=\"pt\"), \n", + " unit_locations={\"base\": 3})" + ] + }, + { + "cell_type": "markdown", + "id": "079050f6", + "metadata": {}, + "source": [ + "### Recurrent NNs (Intervene a Specific Timestep)\n", + "Existing intervention libraries focus on Transformer models. They often lack of supports for GRUs, LSTMs or any state-space model. The fundemental problem is in the hook mechanism provided by PyTorch. Hook is attached to a module before runtime. Models like GRUs will lead to undesired callback from the hook as there is no notion of state or time of the hook. \n", + "\n", + "We make our hook stateful, so you can intervene on recurrent NNs like GRUs. This notion of time will become useful when intervening on Transformers yet want to unroll the causal effect during generation as well." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "7a53347a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, _, gru = pv.create_gru_classifier(\n", + " pv.GRUConfig(h_dim=32))\n", + "\n", + "pv_gru = pv.IntervenableModel({\n", + " \"component\": \"cell_output\",\n", + " \"unit\": \"t\", \n", + " \"intervention_type\": pv.ZeroIntervention},\n", + " model=gru)\n", + "\n", + "rand_t = torch.rand(1,10, gru.config.h_dim)\n", + "\n", + "intervened_outputs = pv_gru(\n", + " base = {\"inputs_embeds\": rand_t}, \n", + " unit_locations={\"base\": 3})" + ] + }, + { + "cell_type": "markdown", + "id": "031dd5de", + "metadata": {}, + "source": [ + "### Recurrent NNs (Intervene cross Time)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "b48166c0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "# built-in helper to get a GRU\n", + "_, _, gru = pv.create_gru_classifier(\n", + " pv.GRUConfig(h_dim=32))\n", + "# wrap it with config\n", + "pv_gru = pv.IntervenableModel({\n", + " \"component\": \"cell_output\",\n", + " # intervening on time\n", + " \"unit\": \"t\", \n", + " \"intervention_type\": pv.ZeroIntervention},\n", + " model=gru)\n", + "# run an intervened forward pass\n", + "rand_b = torch.rand(1,10, gru.config.h_dim)\n", + "rand_s = torch.rand(1,10, gru.config.h_dim)\n", + "intervened_outputs = pv_gru(\n", + " base = {\"inputs_embeds\": rand_b}, \n", + " sources = [{\"inputs_embeds\": rand_s}], \n", + " # intervening time step\n", + " unit_locations={\"sources->base\": (6, 3)})" + ] + }, + { + "cell_type": "markdown", + "id": "121366c1", + "metadata": {}, + "source": [ + "### LMs Generation\n", + "You can also intervene the generation call of LMs. Here is a simple example where we try to add a vector into the MLP output when the model decodes." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "f718e2d6", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Setting `pad_token_id` to `eos_token_id`:50256 for open-end generation.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "Once upon a time there was a little girl named Lucy. She was three years old and loved to explore. One day, Lucy was walking in the park when she saw a big, red balloon. She was so excited and wanted to play with it.\n", + "\n", + "But then, a big, mean man came and said, \"That balloon is mine! You can't have it!\" Lucy was very sad and started to cry.\n", + "\n", + "The man said, \"I'm sorry, but I need the balloon for my work. You can have it if you want.\"\n", + "\n", + "Lucy was so happy and said, \"Yes please!\" She took the balloon and ran away.\n", + "\n", + "But then, the man said, \"Wait! I have an idea. Let's make a deal. If you can guess what I'm going to give you, then you can have the balloon.\"\n", + "\n", + "Lucy thought for a moment and then said, \"I guess I'll have to get the balloon.\"\n", + "\n", + "The man smiled and said, \"That's a good guess! Here you go.\"\n", + "\n", + "Lucy was so happy and thanked the man. She hugged the balloon and ran off to show her mom.\n", + "\n", + "The end.\n", + "\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "# built-in helper to get tinystore\n", + "_, tokenizer, tinystory = pv.create_gpt_neo()\n", + "emb_happy = tinystory.transformer.wte(\n", + " torch.tensor(14628)) \n", + "\n", + "pv_tinystory = pv.IntervenableModel([{\n", + " \"layer\": l,\n", + " \"component\": \"mlp_output\",\n", + " \"intervention_type\": pv.AdditionIntervention\n", + " } for l in range(tinystory.config.num_layers)],\n", + " model=tinystory\n", + ")\n", + "# prompt and generate\n", + "prompt = tokenizer(\n", + " \"Once upon a time there was\", return_tensors=\"pt\")\n", + "unintervened_story, intervened_story = pv_tinystory.generate(\n", + " prompt, source_representations=emb_happy*0.3, max_length=256\n", + ")\n", + "\n", + "print(tokenizer.decode(\n", + " intervened_story[0], \n", + " skip_special_tokens=True\n", + "))" + ] + }, + { + "cell_type": "markdown", + "id": "e628990d", + "metadata": {}, + "source": [ + "intervene on generation with source example passed in. The result will be slightly different since we no longer have a static vector to be added in; it is layerwise addition." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "087541f1", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.\n", + "Setting `pad_token_id` to `eos_token_id`:50256 for open-end generation.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.\n", + "Setting `pad_token_id` to `eos_token_id`:50256 for open-end generation.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Once upon a time there was a little girl named Lucy. She was very excited because she was going to the park. She wanted to go to the park and play.\n", + "\n", + "When she got to the park, she saw a big slide. She was so excited! She ran to the slide and started to climb up. She was so happy.\n", + "\n", + "But then she saw something else. It was a big, scary dog. It was a big, mean dog. He was barking and growling at her. Lucy was scared. She didn't know what to do.\n", + "\n", + "Suddenly, she heard a voice. It was her mommy. She said, \"Don't worry, Lucy. I will help you. I will protect you.\"\n", + "\n", + "Lucy was so happy. She hugged her mommy and they went to the park. They played together and had lots of fun. Lucy was so happy. She was no longer scared.\n", + "\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "# built-in helper to get tinystore\n", + "_, tokenizer, tinystory = pv.create_gpt_neo()\n", + "\n", + "def pv_patcher(b, s): return b + s*0.1\n", + "\n", + "pv_tinystory = pv.IntervenableModel([{\n", + " \"layer\": l,\n", + " \"component\": \"mlp_output\",\n", + " \"intervention\": pv_patcher\n", + " } for l in range(tinystory.config.num_layers)],\n", + " model=tinystory\n", + ")\n", + "# prompt and generate\n", + "prompt = tokenizer(\n", + " \"Once upon a time there was\", return_tensors=\"pt\")\n", + "happy_prompt = tokenizer(\n", + " \" Happy\", return_tensors=\"pt\")\n", + "_, intervened_story = pv_tinystory.generate(\n", + " prompt, happy_prompt, \n", + " unit_locations = {\"sources->base\": 0},\n", + " max_length=256\n", + ")\n", + "\n", + "print(tokenizer.decode(\n", + " intervened_story[0], \n", + " skip_special_tokens=True\n", + "))" + ] + }, + { + "cell_type": "markdown", + "id": "26d25dc6", + "metadata": {}, + "source": [ + "### Debiasing with Backpack LMs\n", + "\n", + "Models like [Backpack LMs](https://arxiv.org/pdf/2305.16765.pdf) are built with highly interpretable model components. In its original paper, one motivating experiment is using the sense vectors to debias. Here, we try to reproduce one of the experiments in Fig. 3 (pg. 8)." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "841e5a5b", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "The argument `trust_remote_code` is to be used with Auto classes. It has no effect here and is ignored.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "image/png": "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TNSUKVP0yy+/WL53UlKSJk2apIyMDElScHCwsrKytG3bNm3btk3XXXedxo4d69Tn+eWXX/Thhx863teqVUtBQUHKzMzUnj17tGfPHn3zzTd67rnn1KxZM6euDQAAAPgqlwuQTz75RNOnT9eaNWsk/V/RERAQoBtuuEH333+/4uLiLF/v0ksvlSRHEVOR06dP66WXXlJGRoaaN2+uRx55RNHR0bLZbFqyZIk+/vhjffXVV4qOjlb//v0txxEZGanhw4erffv2io6OVp06dSRJNptNCQkJev/995WWlqaXX35Zb7/9tvz9/S1fGwAAAPBVLhcgd9xxR7FJ5VFRUbrnnns0ZswYNWrUyOnr1a5d26n2y5YtU3JysgIDAzV58mRFRkZKkgIDAzVs2DClp6fr22+/1dy5cxUXF6datax95LZt26pt27YljgcGBqpv376qW7euJk+erL/++ku//fab2rVr51TcAAAAgC+qtEewBgwYoPvvv1/XXXed/PzOfW77pZdeqlWrVlluv3r1aklSnz59HMVHUTfddJOWLl2q9PR07dy5s9jcE1e0atXK8drqaA0AAADg61wuQB577DHde++9atGiRWXEo4iICPXt29dS25ycHO3du1eS1LVr11LbREZGKioqSgcPHtT27dsrrQD59ddfHa/PZaQHAAAA8EUuFyCvvfZaZcRxTg4dOuR49Kt58+ZltmvevLkOHjyogwcPunS//Px8HT9+XJs3b9bcuXMlnZlgHxMT49J1AQAAAF/hcgFy9913S5IeeughXXzxxZb77dq1S6+//roMw9D7779/TvdOT093vK5fv36Z7QrPHT9+/JzuM27cOB04cKDE8S5duuiRRx45p2sCAAAAvsjljQhnzZqljz76SElJSU71++uvvzRr1izNmjXrnO+dm5vreB0YGFhmu8JzOTk553SfOnXqqF69esX2/OjWrZvuuuuucpcVBgAAAFBcpW9EWBO9+OKLjtcnT57UmjVr9Mknn2j8+PEaM2aMBg8e7MHoAAAAAO/hsQKkoKDgTAAWl8UtTVBQkOO1zWYrc1dym80m6cwGha6qU6eOBg8erLZt2+rRRx/VzJkz1bZt23In4c+dO1fz5s0r8/zNN9+s0aNHuxybL4qIiPB0CBUqXBXOz8/PK+L1JHLlHPJlHblyDvlyDvmyjlw5p6bmy2MFSOGcisIN/s5F0Xkf6enpZRYghXNFKvP/uBYtWqhdu3batWuX/ve//5VbgGRlZSklJaXM89nZ2WxkeI68KW+GYXhVvJ5ErpxDvqwjV84hX84hX9aRK+fUtHxVWgFiGIaldtnZ2dqyZYveeustGYZR6mZ/VkVFRTk2QUxKSlJUVFSp7Qrnp1xwwQXnfK/SNGjQQJKUnJxcbrvQ0FA1bNiwzPMhISGOESE4xxvy5ufn5/g5tdvtng6nWiNXziFf1pEr55Av55Av68iVc7w1XxUVS04VIM8//7xeeOGFEsdN09QNN9zgVGCFbrzxxnPqJ515pComJkaJiYnasmWLevXqVaJNWlqaY/ndzp07n/O9SlNYeBR9FKw0I0aM0IgRI8o8n5aWds4rdPk6b8hbRESE/P39ZbfbvSJeTyJXziFf1pEr55Av55Av68iVc7w1X+edd165551eBcs0zWJ/yjpu5U/fvn31wAMPOP+pioiLi5MkrVmzRqmpqSXOf/HFFzJNU/Xr11fHjh0tX7ei36zv2rVLiYmJkqT27dtbDxgAAADwYU6NgFx44YUldin/4YcfZBiG2rVrV3G14+ensLAwRUdHq3///rrmmmsck2vO1cCBA/Xll18qOTlZL774oh5++GFFR0fLZrPpq6++0jfffCPpzCjE2RPex4wZo5SUFF155ZUaP358sXNPPvmkunfvrh49eqhp06aOoaT09HT98MMP+vTTT2WapiIjI9WvXz+XPgMAAADgK5wqQEaPHl1itabCAmLKlCm6/vrrKy8yiwICAvT0009r0qRJ+uOPPzRu3DiFhIQoNzfX8azc4MGD1b9/f6eue/z4cc2dO1dz586Vv7+/QkJClJ+fX2wvkaZNm2rSpEmVsroWAAAA4AtcnoTep08fGYZR4ehHVWrWrJmmTZumhQsXasOGDUpLS1NoaKguuugiXXvtterRo4fT1xw/frw2b96s3bt3KzU1VSdPnpR05pm2iy66SD169FDfvn0VEBBQ2R8HAAAAqLFcLkBWr15dCWG4rl69eoqPj1d8fLzlPjNnzizzXIcOHdShQ4fKCA0AAADA/+faBAwAAAAAcAIFCAAAAAC3sfwIVtH9PyZPnlzq8XNV9HoAAAAAai7LBchzzz3n2O28aMFQ9Pi5ogABAAAAfINTk9BN0yy12Ci6IaGzXC1eAAAAAHgPywXIqlWrnDoOAAAAAGezXICcvQN6RccBAAAA4GysggUAAADAbShAAAAAALgNBQgAAAAAt6EAAQAAAOA2lieh+/v7V0kAhmEoPz+/Sq4NAAAAoHqxXIC4stcHAAAAAEhOFCB9+vRh00AAAAAALrFcgKxevboKwwAAAADgCywXIKg6hmHIz4/1AM5FVc1NqireFq8nkSvnkC/ryJVzyJdzyJd15Mo5NSlfFCDVQHBwsEJCQjwdhleKiIjwdAiW+fv7e1W8nkSunEO+rCNXziFfziFf1pEr59S0fFGAVAM5OTmy2WyeDsMrHT9+3NMhVKhOnTry9/dXQUGBTp486elwqjVy5RzyZR25cg75cg75so5cOcdb81VRsUQBUg2YpqmCggJPh+GVvC1v3havJ5Er55Av68iVc8iXc8iXdeTKOTUpX5YLkBdeeMHxevLkyaUeP1dFrwcAAACg5rJcgDz33HOOZXiLFgxFj58rChAAAADANzj1CJZpmqUWG65sUsjeIgAAAIDvsFyArFq1yqnjAAAAAHA2ywVI3759nToOAAAAAGdj9zsAAAAAbkMBAgAAAMBtqmwfkJSUFB0+fFinTp1SeHi4mjRpooYNG1bV7QAAAAB4gUotQP78809NmzZNCxYs0MGDB0ucb9asmW655Rb9/e9/V/PmzSvz1gAAAAC8QKU9gvXOO++offv2euONN3Tw4EGZplniT1JSkv7973+rffv2+s9//lNZtwYAAADgJSplBOTll1/W008/LenMniB+fn5q166dYmJiFBoaqqysLO3bt0+7d++W3W5Xdna2HnzwQZ08eVJPPvlkZYSgjIwMLViwQBs2bNCxY8cUGBioFi1a6JprrlGPHj2cvl52drbWr1+vbdu2ad++fUpJSZHdbldERITatGmjQYMGqX379pUSOwAAAOArXC5AtmzZosmTJ8s0Tfn7++uhhx7So48+qiZNmpRoe+TIEb3++ut68803VVBQoGeeeUYDBw5Uly5dXIohKSlJkyZNUkZGhiQpODhYWVlZ2rZtm7Zt26brrrtOY8eOdeqaDz/8sI4cOeJ4X7t2bfn5+SklJUUpKSlas2aNbrzxRt11110uxQ4AAAD4EpcLkGnTpqmgoECGYWju3Lm69dZby2zbuHFj/fOf/1T37t01fPhw2e12TZ06VR9++OE53//06dN66aWXlJGRoebNm+uR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/fTTevvtt33yC/gff/yhGTNm6MMPP1TPnj111VVXqVOnTp4Oq9oYO3asy9cwDEPTp0+vhGi8U1pamv73v//p119/VXp6umw2m8ramcDXc5WcnKyXX35Zf/75p6QzTwac/W9iQECAXn/9daWmpuqVV17x2SLEGQUFBSXy6CsoQHyA3W7XlClTtG3bNklSw4YNlZaWJrvdXqxdWFiYrrjiCn311Vf66aefdNNNN3kgWs/7/fff9e6778put2vgwIGKi4vTyy+/rFOnTpVo269fP23ZskWbN2/22QJk6tSpWrlypUzTVEBAgPLz80u0CQsLU6tWrbRixQqtXbtW1113nQci9bzt27dLki6//PJix7///nudOHFC9evX19ixYxUYGKj3339fhw8f1pdffqnbb7/dE+F61G233aYVK1YoJSVFa9as0Y8//qiGDRvqqquu0pVXXqkGDRp4OkSPSklJcfkavvrFR5JWr16td955R6dPny636Cg858u5ys7O1uTJk3X06FFFRESoW7duWrt2rePJgEL+/v4aOHCg5syZo3Xr1lGAVCA7O1sZGRkKCQnxdCgeQQHiA1atWqWtW7cqIiJCTz31lFq3bq3Ro0crIyOjRNvY2Fh99dVX2rFjh88WIEuWLJHdbtf111+v+Ph4SZKfX+nTpTp27ChJ2r9/v9viq04SEhK0YsUKhYSE6O9//7t69uypu+++u9Sfrb59++p///uftm/f7rMFSOE8oiZNmhQ7npCQIMMwNHr0aPXq1UuSFBwcrKeeekqbNm3yyQJk+PDhGj58uLZv367ly5dr/fr1Onr0qD7++GN98skn6tq1q/r376/u3bvL39/f0+G6HY/Pnrv9+/dr6tSpKigo0MUXX6xu3brp/fffV0hIiO6++26dOHFCO3fu1I4dO1SnTh0NHz5cQUFBng7bY7788ksdPXpUMTExeu655xQWFqZNmzaVKEAk6bLLLtOcOXP066+/eiBS9ztw4IAOHDhQ7JjNZtPKlSvL7GOaprKysrRu3TrZ7XZddNFFVR1mtUQB4gNWrlwpwzA0ZswYtW7duty2LVq0kGEYSkpKclN01c+uXbtkGIaGDh1aYdu6desqKCjIZ5/hXLZsmQzD0KhRoxQbG1tu21atWskwDP3xxx/uCa4aysjIUGhoqAICAhzH8vPzlZiYKD8/P1122WWO4+3atZO/v7+OHDniiVCrjc6dO6tz587KzMzU6tWr9f333+uPP/7Qxo0btWnTJtWtW1dXXnml+vfvr6ZNm3o6XLe57bbbquS6a9euVV5eXo2ew/Xll1+qoKBAV1xxhcaPHy9Jev/99xUYGKirrrpKknTLLbdox44devnll7VixQq9+uqrHozYs9atW+f4DlHR46BRUVHy9/fX4cOH3RSdZyUkJGj+/PnFjuXk5Gjq1KkV9i18jO3666+vqvCqNQoQH1D4he/SSy+tsG1AQIBCQ0N18uTJKo6q+jpx4oSCgoIsz1OoVauWcnJyqjiq6qlwwvQVV1xRYdugoCAFBwfrxIkTVRxV9WUYhnJzc4sd27dvn/Lz8xUTE6Pg4OBi50JCQnz2Z+tsYWFhGjx4sAYPHqz9+/dr+fLlWrNmjU6cOKFFixZp0aJFatu2rQYMGKDevXurdu3ang7ZK82YMUMZGRk1ugD55ZdfZBiGhg0bVuz42Y9iderUSffcc4/efPNNLVq0qER7X5GcnCx/f3+1atWqwraGYSgkJETZ2dluiMzzQkNDdd555znep6amyjCMch8R9fPzU3BwsJo3b64BAwaoQ4cO7gi12qEA8QG5ubkKDg62/A9yfn6+Tz7SUCgoKEg5OTmy2+1lPnpVKCcnR1lZWapbt66boqtesrKyFBwc7NOPJzgjMjJShw8f1u+//+4Ydi98/Kpdu3bF2trtdmVnZ6tevXoeiLR6a9Gihe6//37deuuteu211xyPe+zevVu//vqrZs6cqauvvlpDhw5VaGioh6NFdXPixAnVqlWr2KOQhmEoLy+vRNvY2FhNmzZNa9eu9dkCxG63q1atWhX+eyidKeJyc3N9ZlXI66+/vtgIxpAhQ1S3bl3NnDnTg1F5B/YB8QF169ZVTk5Oid+8liY5OVm5ubk+PcEzKipKdru9xHOdpVm3bp1M01SLFi3cEFn1Ex4erpycnFL/4T5benq6z3+h7tSpk0zT1HvvvafExEStX79e3333nSSVWJb30KFDKigoUP369T0RarW2Y8cO/fvf/9a9996rPXv2SDozWhQbG6t69eopMzNTCxcu1IMPPugzj4LAusDAwBJfkIODg0v9b1lAQIACAwN19OhRd4ZYrZx33nmy2WyWRq8TExN1+vRpn11Fc/jw4RoyZIinw/AKFCA+oHDex/r16yts++WXX8owDLVv376qw6q2evXqJdM0SzzXebbk5GTHPiC9e/d2U3TVS8uWLSWd+UJYkWXLlkmS2rZtW6UxVWc33XSTQkJClJiYqCeeeEIvv/yycnJy1KZNG8eCBoU2btzo0+vpn+3YsWOaP3++7rnnHk2ePFlr1qxRXl6eYmJi9OCDD2rWrFl6/PHH9f777+vxxx9Xo0aNdOzYMc2aNcvToaOaadCggbKzs4ut2Ne4cWNJchS0hY4ePeozjxOVpfC/Td9//3257UzT1McffyzDMNS1a1d3hFbt3Hbbbbrxxhs9HYZXoADxAVdffbXjPwzlLd24aNEiffPNN5KkQYMGuSu8amfQoEFq3LixNmzYoFdeeUW//vqr49ngjIwM7d27V/PmzdMjjzyiEydO6MILL1RcXJxng/aQfv36yTRNzZkzp9geIGf7+eef9fnnn8swDMckT18UGRmpl156SR06dFBAQIDq1q2rfv36adKkScXamaap5cuXyzRNde7c2UPRel5BQYF++uknPffccxozZow++eQTHT16VCEhIbr22mv11ltv6Z///Kf69+/v+I22v7+/YmNj9dJLL8nPz0+//PKLhz8FqpvmzZvLNM1io9yFo5MzZ850rFZ38uRJvf322zIMQ9HR0Z4K1+NuuOEG+fn5acGCBWX+IjM5OVn/+Mc/tH37dtWuXVvXXnutm6OEtzHMshbARo3y9ttv6/vvv1dYWJh69uyptWvXKjc3VyNHjlRqaqq2bNmilJQUmaapIUOG6O677/Z0yB51+PBhPf/880pOTi5z/XfTNNWkSRO98MILioyMdHOE1ceLL76oTZs2qVGjRurXr58WL16s7OxsPfbYY0pNTdXGjRu1e/dumaapPn366NFHH/V0yNVeQUGBjh07JunMb2t9cU7WzJkz9cMPP+jUqVOOXwC0adNGAwcOVGxsrKU5bXfffbfS09O1ePHiKo625ihcor0m52z16tV64403NHToUI0ePVrSmRG2v/3tb46lZcPDw4vt/fTkk0+qR48eHom3Oli+fLn+85//SJIaNWqktLQ05efnq0uXLkpNTdWhQ4ccbR999NESex3VRG+99ZYkqX79+ho5cmSxY84wDEMPPfRQpcbmDShAfERBQYHmzJmjxYsXl7qxUuFycEOHDtXIkSN9etOlQjk5OVq0aJFWrFhRYpndiIgI9e/f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ZIm+++47R5+pU6eqefPmLn+23r1768EHH9TUqVN16tQp9enTRyNGjFDfvn0VGBiobdu2aebMmUpPT9fQoUMr3PwQAHwBBQgAoEpFRETo4osv1pYtWxzHevXqpYCAgHL79e3bVzt27HC8r1Onjrp27Vpq206dOmnVqlUaOnSoDh06pF27dmnChAkl2oWEhGjq1KmKj48/x09T0htvvKGsrCy9//77ys/P16xZszRr1qxibcaNG6cbbriBAgQAxCNYAAA3OHvkorzHrwqdvUfI5Zdf7lietzTdu3dXYmKipk6dqn79+un8889XQECAIiIi1K1bN02cOFF79+6t1OJDOjMCM3PmTC1dulTXX3+9GjZsqNq1aysqKko33nijvvvuO7355puVek8A8GaGWTgbDwAAAACqGCMgAAAAANyGAgQAAACA21CAAAAAAHAbChAAAAAAbkMBAgAAAMBtKEAAAAAAuA0FCAAAAAC3oQABAAAA4DYUIAAAAADchgIEAAAAgNtQgAAAAABwGwoQAAAAAG5DAQIAAADAbShAAAAAALgNBQgAAAAAt6EAAQAAAOA2FCAAAAAA3IYCBAAAAIDbUIAAAAAAcBsKEAAAAABuQwECAAAAwG3+HyY5hkEAtY+CAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "data": { + "image/png": "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sin3799HUFAQHjx4gIYNG+Kvv/6Cs7Oz0mEp5u7du2jcuDFycnLQokULxMbGFtuAkYiIiKiq8ZsG2RQvLy9s2rQJUVFRAAqXtG3SpInCUSnn5s2bePvttwEAAwcOZPFBRERE1Y49IEREREREZDacA0JERERERGbDAoSIiIiIiMyGBQgREREREZkNCxAiIiIiIjIbFiBERERERGQ2LECIiIiIiMhsWIAQEREREZHZsAAhIiIiIiKzYQFCRERERERmwwKEiIiIiIjMhgUIERERERGZDQsQIiIiIiIyGxYgRERERERkNixAiIiIiIjIbFiAEBERERGR2bAAISIiIiIis2EBQkREREREZuOgdABkmtTUVKVDqBAXFxfY2dlBr9cjNzdX6XBqLOapfMyRPMyTPMyTPMyTPMyTPMyTPJaYp8cee8zoeRYgZFYqlQr29vbQ6XQW84dICcxT+ZgjeZgneZgneZgneZgneZgneawxTxyCRUREREREZsMChIiIiIiIzIYFCBERERERmQ0LECIiIiIiMhsWIEREREREZDYsQIiIiIiIyGxYgBARERERkdlwHxAb88YbbygdQo2wdOlSpUMgIiIisknsASEiIiIiIrNhD4iFEwQBdnasIyvK3t5e6RBks6RYlcIcycM8ycM8ycM8ycM8ycM8yWMteWIBYuFUKhXUarXSYVgcT0/PMs+NHj3ajJHUbJs2bVI6hHLZ29sb/f+TCjFP8jBP8jBP8jBP8jBP8lhTnliAWLicnBxotVqlw7A4Dx48UDoEi1CT81SrVi3Y29tDp9MhIyND6XBqLOZJHuZJHuZJHuZJHuZJHkvMU3mFEgsQCyeKInQ6ndJhWBzmTB5LyZOlxKk05kke5kke5kke5kke5kkea8kTJw8QEREREZHZsAAhIiIiIiKzYQFCRERERERmwwKEiIiIiIjMhgUIERERERGZDQsQIiIiIiIyGxYgRERERERkNiYXIPv27auKOIiIiIiIyAaYXID07dsXjRs3xqJFi5CcnFwVMRERERERkZWqkiFYN2/exOzZs9GgQQM8//zzOHDgQFXcloiIiIiIrIzJBciECRPg4uICURSRn5+Pbdu2oXfv3ggODsZ//vMfpKamVkWcRERERERkBRxMvcEPP/yAxYsXY926dVi1ahXi4uIAANevX8esWbPw7rvvYtiwYXjllVcQ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dAQEBECr1WL37t349ddfART2JDg4FP+4EydORHJyMrp3745p06aVuLdGoylWPBi6vbRaLTIyMqTjzs7OJZbcHTNmDE6fPo3r16/jiy++wMSJE+Hp6YkHDx5g9erVuH79OhwdHTFmzJhKf3YiIiIiIksjuwAxFA5V1bYi9zPG0dER7777LubMmYNbt25h6tSpUKvVyM3NlQqGgQMHomfPnhW+94IFCxAXF1fi+M6dO7Fz507p/ahRozB69Ohibfz9/TF16lQsWbIEf/zxB44dOwa1Wg2NRgMAcHBwwNSpU8uct0JEREREZI1kFyBdu3aFIAjVGUul+fv7Y9myZdi+fTuio6ORmpoKV1dXNGrUCAMGDEBISIgicXXr1g0NGjTAjh07EBcXh4yMDGko2LBhwxAQEKBIXERERERESpFdgBw+fLgawzBd7dq1ERERgYiICNnXrF692uj5jz/+2NSw0KhRI8yYMcPk+xARERERWQOTJ6ETERERERHJxQKEiIiIiIjMhgUIERERERGZDQsQIiIiIiIyG5N3Qi8qOzsbkZGRiIqKwp07d5CRkVFiE75HCYKAAwcOVGUYRERERERUQ1VZAbJixQrMnj0b6enpsq8RRbHGLu1LRERERERVr0oKkPnz5+P999+XtbmgoeCoqo0IiYiIiIjIcpg8B+TKlSt4//33AQDBwcE4cOAAcnJyABQWG7t27UJWVhYuXryIRYsWwdfXFwDw0ksvITc3t9whWkREREREZD1M7gFZsWIFRFGEWq3Gvn374O/vX6KNWq1GixYt0KJFC0yaNAlDhgzBmjVroNFosHnzZlNDICIiIiIiC2FyD8iRI0cgCAJGjhxZavHxqNq1a2PXrl2oU6cOfvrpJ/z888+mhkBERERERBbC5AIkISEBABASElLq+by8vBLHPD09MWHCBIiiiPXr15saAhERERERWQiTC5DMzEwAgLe3d7HjKpWq2PlHtW3bFgBw5swZU0MgIiIiIiILYXIB4urqCqBkT4eHhweA//WQPKqgoAAAcO/ePVNDICIiIiIiC2FyAfLEE08AKFlINGnSBKIo4vjx46Ved/78eQCAk5OTqSEQEREREZGFMLkAad26NURRxMWLF4sd79q1KwDg0KFDOHv2bLFzN27cwOrVqyEIApo1a2ZqCEREREREZCFMLkDCwsIAAAcPHix2fPz48XBwcIBer0f37t3x9ttvY+XKlXj77bfx1FNPISsrCwAwatQoU0MgIiIiIiILYfI+IIMGDYK9vT3+/vtvnDhxAp07dwYABAYGYvbs2fjoo4+QlZWFzz//vMS17dq1w5QpU0wNwaYJggA7O5PrSJtjb2+vdAgWgXmSx1LyZClxKo15kod5kod5kod5ksda8mRyAeLl5YX4+Hjk5eXBx8en2LkPPvgArq6umDdvntTjARR+aQ4PD8eKFSs4B8REKpUKarVa6TAsjqenp9IhWATmSR5LyJO9vb1FxKk05kke5kke5kke5kkea8qTyQUIAAQEBJR5bubMmXjjjTdw8uRJJCUlwdXVFU899RR8fX2r4tE2LycnB1qtVukwLM6DBw+UDsEiME/y1OQ81apVC/b29tDpdMjIyFA6nBqLeZKHeZKHeZKHeZLHEvNUXqFUJQVIeZydnaW5IlS1RFGETqdTOgyLw5zJwzzJYyl5spQ4lcY8ycM8ycM8ycM8yWMteeLkASIiIiIiMptq7QF5+PAhMjMz4e7ujtq1a1fno4iIiIiIyAJUaQ9IVlYWli9fjrCwMLi7u8PLywtPPPEEvLy84O7ujmeffRZff/11sQnpRERERERkO6qsANm9ezeCgoIwdepU/PHHH9BoNBBFUfpHo9Hg6NGjeP311xEUFIRffvmlqh5NREREREQWokoKkHXr1mHYsGFITk6WCg53d3e0adMGXbp0QZs2bVCrVi3p3L179zB06FCsX7++Kh5PREREREQWwuQC5Nq1a3j11Veh0+kgiiKee+45nDx5Eunp6YiJicEff/yBmJgYPHz4EFFRURg+fDgAQK/XY/Lkybh+/brJH4KIiIiIiCyDyQXIl19+idzcXAiCgE8//RTbt2/H008/XWrbjh074qeffsJ//vMfAIBWq8WXX35paghERERERGQhTC5A9u3bB0EQ0LVrV8yYMUPWNW+++Sa6desGURSxd+9eU0MgIiIiIiILYXIB8s8//wAARowYUaHrDO0N1xMRERERkfUzuQBxc3MDADz++OMVus7Hx6fY9UREREREZP1MLkAaN24MAEhISKjQdbdv3wYABAUFmRoCERERERFZCJN3Qn/++ecRFRWFTZs2Yfr06RAEodxrRFHExo0bIQgCRo0aZWoIAID09HRs27YN0dHRuH//PpydnREYGIj+/fsj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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8WgzjOAAAACXBIWXMAAB7CAAAewgFu0HU+AABr9UlEQVR4nO3deVxUZfs/8M+ZYZsBRFBIFCFU3JfUNBcSTNTcTY3MXCo08ylzSfMpy6dSs9VcWtV6zK0sNzIz7RH3QDRFJTPUVDRFGNEBhmFY5vz+4DfnC8IMBwZmmOHzfr18deac+9znmkukueac+74FURRFEBERERER2YDC3gEQEREREVHdwQKEiIiIiIhshgUIERERERHZDAsQIiIiIiKyGRYgRERERERkMyxAiIiIiIjIZliAEBERERGRzbAAISIiIiIim2EBQg7pzTffhCAIEAQBkZGRlTp38ODBEAQBSqUSZ8+erZkALTh+/LgU+6hRo2x+fSIiIiJ7YgFCdcrOnTuxe/duAMC4cePQoUMHm8fQrVs3PPbYYwCA7du3Iy4uzuYxEBEREdkLCxCqM4qKijB37lwAgEKhwH/+8x9Z5125cgU//PADXnnlFfTt2xc+Pj7SHQxBELB27dpKx/Lmm29K2y+//DJEUax0H0RERESOyMXeARDZyoYNG/DXX38BAB577DG0aNHCYvt3330XH330ETQaTbXH0rFjRwwcOBB79uxBUlIStm3bhtGjR1f7dYiIiIhqG94BoTpBFEUsXrxYej1r1qwKzzl//nyNFB/lxbBw4cIauw4RERFRbcIChOqEn376CRcuXAAAtGnTBr17967U+UqlEu3bt8czzzyDF154oVpi6t+/P5o2bQoAOH36NA4cOFAt/RIRERHVZixAqE745JNPpO1JkybJOiciIgJLly7F4cOHkZWVhbNnz+Lrr7/GmDFjqiUmhUKBCRMmSK8//fTTaumXiIiIqDbjGJA6JCMjA4cOHcL169eh1+sRGhqKfv36oWHDhmbPuXnzJg4dOoSrV69CoVAgODgYAwYMQP369W0XuJVu3ryJ//3vf9JruVPfPvPMMzUVkmTUqFF45513ABTP0HX37l2Hyi0RERFRZfEOiJN5+umnpdmZnn76aQCARqPBk08+iSZNmmDMmDGYOXMmXn31VYwdOxZBQUGYN28eCgsLS/Xzzz//IDo6GkFBQRg7dizmzZuHuXPn4oknnsB9992HN954o8w5JV25cqXUTFFXrlypcvzW+uGHH2A0GgEArVq1QlhYWLX0Wx26du2KoKAgAIDBYMC2bdvsHBERERFRzWIB4uTOnz+Pzp0747vvvkNBQUGZ4waDAe+//z6io6OlqWCTkpLQuXPnUh/cS8rPz8eiRYvw7LPP1nj81eHnn3+Wtiu7aKEtRERESNslYyUiIiJyRnwEy4nl5ORg1KhRuH79Ory9vTFmzBh07twZKpUKf/zxB7755hvcuXMHQPGCeKtWrcKIESMwaNAgZGRkwNvbG6NHj0aXLl3KPWf9+vUYNmwYHn/8cXu+TYvy8/Nx6NAh6XV4eLgdoylfeHg4Nm7cCADYt28fRFGEIAh2joqIiIioZrAAcWLbtm2DKIoIDw/H999/j8DAwFLH586di/DwcFy+fBkAsGTJEvzyyy9IS0tDnz59sHnzZjRq1KjUOXPmzEF4eLj0SNXixYtrdQFy9uxZ6PV66XXHjh3tGE35OnXqJG3fvXsXf/31F1q3bm3HiIiIiIhqDh/BcmKiKKJ58+bYvXt3meIDABo3boyPP/5Yen316lXs2LEDYWFh+Pnnn8sUHwDQpEmTUuecPn1aWtyvNjp16pS0rVAoauUH+3bt2pV6ffLkSTtFQkRERFTzWIA4uffeew9eXl5mjw8ZMqTMrEvvvvsuPD09zZ4zdOhQ+Pj4SK8TExOtjrOmXLp0SdoOCAiAm5ubHaMpX7169VCvXj3pdcmYiYiIiJwNCxAnVq9ePYwYMcJiGxcXF3To0KHUOcOHD6/wnJKPMtXmOyDXrl2Ttsu7C1RbNG7cWNpOTU21YyRERERENYsFiBPr3LkzXFwqHuZz3333SdtdunSp9Dl3796tUny2UDI2S3eC7K1kbFqt1o6REBEREdUsFiBOrLwxHOUp+bhVycJC7jk6na5ygdlQyQHoHh4edozEMpVKJW3n5ubaMRIiIiKimsUCxIlV5QN3Vc4xrR9SG7m6ukrblhZOtLeSa7SUjJmIiIjI2bAAIadW8k5NXl6eHSOxrOSdGksTABARERE5OhYg5NRKPoaWkZFhx0gsKxmb3EfniIiIiBwRCxCqEVVdybvknYDqEBISIm3/888/1dp3dTEajbh165b0umTMRERERM6GBQjVCLVaXeq13IHVJT+IV4f27dtL23q9vlYWIX///TeKioqk1yVjJiIiInI2LECoRpRcqBAAbty4UeE5hYWF+P3336s1jq5du5Z6nZycXK39V4eSMQmCgC5dutgxGiIiIqKaxQKEaoSbmxvuv/9+6fWxY8cqPGfr1q3Iycmp1jjuu+8+tGzZUnp94sSJau2/Ohw/flza7tSpU5nijYiIiMiZsAChGvPQQw9J2+vXr7c4Da5Wq8W8efNqJI5HH31U2j5w4ECNXMMaBw8elLYHDhxox0iIiIiIah4LEKoxY8eOlbb/+usvzJ49G0ajsUy7K1euoF+/frh69WqVB69b8thjj0nbR48erVUL/Wm1WiQmJkqvS8ZKRERE5Ixc7B0AOa9hw4ahc+fOOHXqFABg5cqVOHDgAKKjo9GkSRNotVokJCRgx44dMBgM6NChA1q1aoUtW7ZUaxx9+vRBUFAQrl+/Dr1ejz179sj6oP/PP/8gIiKizP57Z+qaN28eFi1aVKbdxo0bS90FKs9PP/0kLULYokWLCtsTEREROToWIFRjlEol1q1bh759+0Kj0QAAzp49i7Nnz5Zp26JFC8TGxuKtt96q9jgUCgWeeeYZLFy4EACwefNmWQVIQUEBLl26VGG79PR0pKenl9kvZ0rhzZs3S9sxMTEVticiIiJydHwEi2pU+/btcfToUfTv37/c4x4eHpg8eTJ+//13hIaG1lgc06ZNg5ubGwBgx44duH37do1dS66bN2/i559/BgCoVCpMmTLFzhERERER1TxBFEXR3kFQ3XD58mUcOnQIaWlp8PDwQHBwMCIjI+Hr62uT68fExODrr78GAHzwwQeYM2eOTa5rzqJFi/DGG28AAP71r3/h008/tWs8RERERLbAAoTqjL///hutWrVCYWEhgoKC8Pfff8PV1dUuseTl5SEkJATp6enw8PDAxYsX0aRJE7vEQkRERGRLfASL6oxmzZpJjzldv34dGzZssFssX3/9tTRu5IUXXmDxQURERHUG74BQnXL79m2EhYXhzp07CAkJwV9//QV3d3ebxpCbm4sWLVrg5s2bCAgIQEpKChcfJCIiojqDs2BRndKgQQNs2rQJCQkJAIrXIGnVqpVNY7h8+TKee+45AEB4eDiLDyIiIqpTeAeEiIiIiIhshmNAiIiIiIjIZliAEBERERGRzbAAISIiIiIim2EBQkRERERENsMChIiIiIiIbIYFCBERERER2QwLECIiIiIishkWIEREREREZDMsQIiIiIiIyGZYgBARERERkc2wACEiIiIiIpthAUJERERERDbDAoSIiIiIiGzGxd4BVBetVostW7YgMTERt2/fhru7O5o3b47BgwejR48ele4vNzcXx44dQ1JSEi5evIj09HQYjUb4+vqidevWGDRoENq1a2f2/GXLliEuLs7iNYKDg/HJJ59UOjYiIiIiIkflFAVIamoq5s+fD61WCwBQqVTQ6XRISkpCUlIShg0bhilTplSqz1mzZuHmzZvSazc3NygUCqSnpyM9PR2HDh3CY489hmeeecZiP25ublCr1eUeq1evXqViIiIiIiJydA5fgBQUFGDRokXQarUICQnB7NmzERoaCoPBgNjYWGzcuBE7d+5EaGgooqKiZPdbVFSE+++/HwMGDEDXrl0RGBgIURRx48YNrFu3DvHx8di+fTsaNWqEQYMGme0nPDwcM2fOrIZ3SkRERETk+Bx+DMiePXuQlpYGd3d3LFiwAKGhoQAAd3d3REdHS8XBhg0bUFhYKLvfmTNnYsWKFRg6dCgCAwMBAIIgoEmTJpg3bx46dOgAANi+fXs1vyMiIiIiIufl8HdADhw4AADo06cP/P39yxwfPXo0du/ejczMTJw9exadO3eW1W/79u3NHlMoFHjkkUdw9uxZpKWlIScnB15eXlWK31oajcYu160qDw8PKBQKGI1G5OXl2TucWot5qhhzJA/zJA/zJA/zJA/zJA/zJI8j5qlhw4YWjzv0HRC9Xo8LFy4AALp06VJuG39/fwQFBQEATp8+XW3XLjl+o6ioqNr6dXYqlQpqtRoqlcreodRqzFPFmCN5mCd5mCd5mCd5mCd5mCd5nDFPDn0H5Pr16xBFEQAQEhJitl1ISAiuXbuGa9euVdu1k5OTAQD169e3OJj8zJkzmDp1KjIyMuDm5obAwEB07doVQ4YMga+vb7XFQ0RERETkCBz6DkhmZqa07efnZ7ad6didO3eq5boajQa//PILAKBfv34QBMFi2/T0dHh4eCAvLw+XLl3C999/jxdffLFa78gQERERETkCh74DUvI5OHd3d7PtTMf0er3V1ywsLMSHH34IvV6PgIAAjBkzptx2zZs3R8uWLdGtWzc0aNAACoUCubm5SExMxNq1a5GZmYl33nkHS5cuRZMmTayO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CER1CgsQIiIn9Nprr6GwsNDeYRAREZXBAoSIyAm1bt3a3iEQERGViwsREhERERGRzbAAISIiIiIim2EBQkRERERENsMChIiIiIiIbIYFCBERERER2QwLECIiIiIishkWIEREREREZDMsQIiIiIiqgSiK9g6ByCEIIv+1EBEREVnt/PnzKCwsRPv27e0dClGtxgKEiIiIiIhsho9gERERERGRzbAAISIiIiIim2EBQkRERERENsMChIiIiIiIbIYFCBERERER2QwLECIiIiIishkWIERERLXAgQMHIAgCBEHAm2++ae9wiIhqDAsQIiKyqRYtWkgftJOTkytsHxUVJbVv2rRphe1zc3Ph7u4OQRDg6uqKnJyc6gibiIiqCQsQIiKyqb59+0rbBw4csNg2Pz8fv/32m/T6+vXruHjxosVzjh49ivz8fABAt27d4OXlVfVgiYio2rEAISIimypZgOzfv99i22PHjkGv15faV9E5JYuaktciIqLagQUIERHZVGRkpLR96NAhiKJotq2pmPD29kZ4eHipfRWdA7AAISKqjViAEBGRTTVu3BgtW7YEAGg0Gpw9e9ZsW1MxER4ejn79+pXaV57c3FwcP34cAODm5obevXtXT9BERFRtWIAQEZHNyRkHkp+fj/j4eADFd00iIiIAADdu3EBKSkq55xw9ehQFBQUAgIceeggqlarUcb1ej08++QT9+/dHYGAg3Nzc0KBBA3Tr1g2vv/46bty4YTHutWvXSgPi165dCwA4efIknn/+ebRs2RLe3t6ljpW0Z88ePPbYYwgMDISHhweCg4MxatQo7N271+I1iYicDQsQIiKyOTnjQEqO/4iMjESPHj3g5uZm8RxLj18dP34crVq1wvTp0/G///0PaWlpKCgoQGZmJk6cOIHFixcjLCwMX3/9tez38f7776N79+748ssvceHChXJn3DIajZgyZQoeffRR7NixA2lpaTAYDLh27Rq2b9+OgQMHYubMmbKvSUTk6FzsHQAREdU95Y0DEQShVJuS4z+6dOkCFxcXdO/eHUeOHMGBAwcwderUMv2aK0DOnDmDvn37QqfTAQDatm2LCRMmIDQ0FJmZmdixYwf27t2L3NxcxMTEQBRFxMTEWHwP33//PXbv3g0vLy9MnDgR3bt3h6urK86dO4dGjRpJ7WbNmoU1a9YAAJRKJZ566ilERkbC3d0dSUlJ+Oqrr7B8+XJcu3ZNVu6IiByeSEREZAdt2rQRAYgAxFOnTpU5/sgjj4gAxEcffVTa99prr4kAxEaNGpVpr9PpRFdXVxGA6OHhIebl5YmiKIpFRUVi+/btpWtNnjxZLCgoKHP+mjVrREEQRACiWq0WL1++XKbNf//7X6kfAGLLli3Fq1evmn2PR44ckfr09PQUDx8+XKbNjRs3xNatW5fq9z//+Y/ZPomIHB0fwSIiIruwNA7k3vEfJqZxIGlpaTh//nypc0qO/+jZsyfc3d0BALt27ZIWPOzYsSO++OILuLiUfQAgJiZGuquSm5uL5cuXW4xfEAR89913CA4ONtvmo48+kmb5eu+996SZvEoKDAzE5s2boVQqLV6PiMhZsAAhIiK7sDQOJCEhQRr/YSo6AKBXr15S8XDvOSVflyxatm3bJm2//PLLFj/o//vf/5YeBSt5XnnCw8PRuXNns8cNBgN27doFAPDx8cHkyZPNtu3YsSMGDBhg8XpERM6CBQgREdlFRESE9GH/8OHDMBqN0jHTHREvLy88+OCD0n4vLy907dq1VJt7zwFKFzfHjh2Ttiv6kB8SEoLWrVsDAFJTU3Hz5k2zbR9++GGLfZ0+fVpakb13797SHRlzTNMMExE5OxYgRERkF/7+/mjXrh0A4M6dO0hKSpKOmYqJ3r17l3lcynRHpGTBodPpcOLECQCASqXCQw89JB0zFRHe3t6lBoebY1qjpOS55QkKCrLYT8kpfVu0aFHhdeW0ISJyBixAiIjIbsobB2IwGJCQkACg9ONXJqZ96enpOHfuHIDS4z969+4tTdcLANnZ2QAAT09PWTF5eXmVObc8964xcq+SU/Kq1eoKrys3PiIiR8cChIiI7KbkWA3TGI571/+4V3h4uDSOw3SOpfU/vL29AUCagrciJQsH07lVUbKQyc3NrbC93PiIiBwdCxAiIrKbe8eBFBUVScWEp6cnunXrVuacevXqoVOnTgDkFSCBgYEAiu9m3Lp1q8KYSq6y3rhxY/lv5h5NmjSRti9evFhhezltiIicAQsQIiKymwYNGqBjx44AAK1Wi1OnTknFRMkZr+5legzr4MGDyMnJkcZ/eHl5lSlaSo4H2bt3r8V4UlNTpel9g4ODZY0ZMadjx47SwPOjR4/CYDBYbL9v374qX4uIyJGwACEiIrsqecfil19+kcZ/lPf4lYmpANFoNPjyyy+l8R/h4eFlipbRo0dL2x999BGKiorM9vvee+9J63aUPK8q3N3dMXjwYADFxdXXX39ttm1ycnKFxRERkbNgAUJERHZVstBYuXKlxfEfJg8//LD06Nb7778v7b/38SsAGDx4MDp06ACgeGrcadOmobCwsEy7tWvX4osvvgBQPGh8xowZlX4v93r55ZelOOfNmyctrljSrVu38MQTT1gsjIiInEn597aJiIhspE+fPlAoFDAajUhPTwdQXACUN/7DxM/PDx06dMCZM2ekc4DyCxCFQoENGzagV69e0Ol0WL16NeLj4zFhwgTcf//9yMzMRGxsLH755RfpnBUrViAkJMTq99a7d29Mnz4dK1asQHZ2Nvr06YPx48cjIiIC7u7uSEpKwpo1a5CZmYlRo0ZVuPghEZEzYAFCRER25evriwceeAAnT56U9vXq1Quurq4Wz4uIiMCZM2ek1/Xq1UOXLl3KbduxY0fs378fo0aNwvXr15GcnIx58+aVaadWq7FixQrExMRU8d2U9fHHH0On0+Grr75CYWEh1q5di7Vr15ZqM2PGDIwcOZIFCBHVCXwEi4iI7O7eOxeWHr8yuXeNkIcfflianrc83bp1Q0pKClasWIF+/frhvvvug6urK3x9fdG1a1e89tpruHDhQrUWH0DxHZg1a9Zg9+7dGD58OAICAuDm5oagoCA89thj+OWXX7Bs2bJqvSYRUW0miKbRdkRERERERDWMd0CIiIiIiMhmWIAQEREREZHNsAAhIiIiIiKbYQFCREREREQ2wwKEiIiIiIhshgUIERERERHZDAsQIiIiIiKyGRYgRERERERkMyxAiIiIiIjIZliAEBERERGRzbAAISIiIiIim2EBQkRERERENsMChIiIiIiIbIYFCBERERER2QwLECIiIiIishkWIEREREREZDMsQIiIiIiIyGZYgBARERERkc2wACEiIiIiIpthAUJERERERDbDAoSIiIiIiGzm/wGFUI09+uEGsQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": { + "image/png": { + "height": 200, + "width": 400 + } + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "import torch\n", + "import pandas as pd\n", + "from plotnine import ggplot, aes, geom_bar, theme, element_text, labs\n", + "\n", + "import pyvene as pv\n", + "_, tokenizer, backpack_gpt2 = pv.create_backpack_gpt2()\n", + "\n", + "class MultiplierIntervention(pv.ConstantSourceIntervention):\n", + " \"\"\"Multiplier intervention\"\"\"\n", + " \n", + " def __init__(self, multiplier, **kwargs):\n", + " super().__init__(**kwargs)\n", + " self.register_buffer('multiplier', torch.tensor(multiplier))\n", + " \n", + " def forward(self, base, source=None, subspaces=None):\n", + " return base * self.multiplier\n", + "\n", + " def __str__(self):\n", + " return f\"MultiplierIntervention()\"\n", + "\n", + "for c in [0, 0.7, 1]:\n", + " pv_backpack_gpt2 = pv.IntervenableModel({\n", + " \"component\": \"backpack.sense_network.output\",\n", + " \"intervention\": MultiplierIntervention(c), \"unit\": \"sense.pos\"}, \n", + " model=backpack_gpt2\n", + " )\n", + " base = tokenizer(\"When the nurse walked into the room,\", \n", + " return_tensors=\"pt\", return_attention_mask=False)\n", + " intervened_outputs = pv_backpack_gpt2(\n", + " base,\n", + " unit_locations={\n", + " # use pv.GET_LOC((nv, s))\n", + " \"base\": pv.GET_LOC((10,2))\n", + " }\n", + " )\n", + " \n", + " # plotting\n", + " probs = torch.nn.functional.softmax(\n", + " intervened_outputs[1].logits[0][-1], dim=0)\n", + " data = pv.top_vals(\n", + " tokenizer, probs, n=9,\n", + " return_results=True\n", + " )\n", + " df = pd.DataFrame(data, columns=['Word', 'Probability'])\n", + " df['Word'] = pd.Categorical(df['Word'], categories=[x[0] for x in data], ordered=True)\n", + " plot = (ggplot(df, aes(x='Word', y='Probability'))\n", + " + geom_bar(stat='identity')\n", + " + theme(axis_text_x=element_text(rotation=90, hjust=1),\n", + " figure_size=(4, 2))\n", + " + labs(title=f\"mul({c})\")\n", + " )\n", + " print(plot)" + ] + }, + { + "cell_type": "markdown", + "id": "cb539f4b", + "metadata": {}, + "source": [ + "### Saving and Loading\n", + "This is one of the benefits of program abstraction. We abstract out the intervention and its schema, so we have a user friendly interface. Furthermore, it allows us to have a serializable configuration file that tells everything about your configuration.\n", + "\n", + "You can then save, share and load interventions easily. Note that you still need your access to the data, if you need to sample **Source** representations from other examples. But we think this is doable via a separate HuggingFace datasets upload. In the future, there could be an option of coupling this configuration with a specific remote dataset as well." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "272f3773", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "Directory './tmp/' already exists.\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "# run with new intervention type\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"intervention_type\": pv.ZeroIntervention}, \n", + " model=gpt2)\n", + "\n", + "pv_gpt2.save(\"./tmp/\")" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "50b894b4", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING:root:The key is provided in the config. Assuming this is loaded from a pretrained module.\n", + "WARNING:root:Loading trainable intervention from intkey_layer.0.repr.block_output.unit.pos.nunit.1#0.bin.\n" + ] + } + ], + "source": [ + "pv_gpt2 = pv.IntervenableModel.load(\n", + " \"./tmp/\",\n", + " model=gpt2)" + ] + }, + { + "cell_type": "markdown", + "id": "b2d07ca8", + "metadata": {}, + "source": [ + "### Multi-Source Interchange Intervention (Parallel Mode)\n", + "\n", + "What is multi-source? In the examples above, interventions are at most across two examples. We support interventions across many examples. You can sample representations from two inputs, and plut them into a single **Base**." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "847410a8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "_the 0.07233363389968872\n", + "_a 0.05731499195098877\n", + "_not 0.04443885385990143\n", + "_Italian 0.033642884343862534\n", + "_often 0.024385808035731316\n", + "_called 0.022171705961227417\n", + "_known 0.017808808013796806\n", + "_that 0.016059240326285362\n", + "_\" 0.012973357923328876\n", + "_an 0.012878881767392159\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "parallel_config = pv.IntervenableConfig([\n", + " {\"layer\": 3, \"component\": \"block_output\"},\n", + " {\"layer\": 3, \"component\": \"block_output\"}],\n", + " # intervene on base at the same time\n", + " mode=\"parallel\")\n", + "parallel_gpt2 = pv.IntervenableModel(\n", + " parallel_config, model=gpt2)\n", + "base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\")\n", + "sources = [\n", + " tokenizer(\"The language of Spain is\", \n", + " return_tensors=\"pt\"),\n", + " tokenizer(\"The capital of Italy is\", \n", + " return_tensors=\"pt\")]\n", + "intervened_outputs = parallel_gpt2(\n", + " base, sources,\n", + " {\"sources->base\": (\n", + " # each list has a dimensionality of\n", + " # [num_intervention, batch, num_unit]\n", + " [[[1]],[[3]]], [[[1]],[[3]]])}\n", + ")\n", + "\n", + "distrib = pv.embed_to_distrib(\n", + " gpt2, intervened_outputs[1].last_hidden_state, logits=False)\n", + "pv.top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "2f93402c", + "metadata": {}, + "source": [ + "### Multi-Source Interchange Intervention (Serial Mode)\n", + "\n", + "Or you can do them sequentially, where you intervene among your **Source** examples, and get some intermediate states before merging the activations into the **Base** run." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "5e5752dc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "_the 0.06737838685512543\n", + "_a 0.059834375977516174\n", + "_not 0.04629501700401306\n", + "_Italian 0.03623826056718826\n", + "_often 0.021700192242860794\n", + "_called 0.01840786263346672\n", + "_that 0.0157712884247303\n", + "_known 0.014391838572919369\n", + "_an 0.013535155914723873\n", + "_very 0.013022392988204956\n" + ] + } + ], + "source": [ + "config = pv.IntervenableConfig([\n", + " {\"layer\": 3, \"component\": \"block_output\"},\n", + " {\"layer\": 10, \"component\": \"block_output\"}],\n", + " # intervene on base one after another\n", + " mode=\"serial\")\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " config, model=gpt2)\n", + "base = tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors=\"pt\")\n", + "sources = [\n", + " tokenizer(\"The language of Spain is\", \n", + " return_tensors=\"pt\"),\n", + " tokenizer(\"The capital of Italy is\", \n", + " return_tensors=\"pt\")]\n", + "\n", + "intervened_outputs = pv_gpt2(\n", + " base, sources,\n", + " # intervene in serial at two positions\n", + " {\"source_0->source_1\": 1, \n", + " \"source_1->base\" : 4})\n", + "\n", + "distrib = pv.embed_to_distrib(\n", + " gpt2, intervened_outputs[1].last_hidden_state, logits=False)\n", + "pv.top_vals(tokenizer, distrib[0][-1], n=10)" + ] + }, + { + "cell_type": "markdown", + "id": "28621880", + "metadata": {}, + "source": [ + "### Multi-Source Interchange Intervention with Subspaces (Parallel Mode)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "773aba2e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " {\"layer\": 0, \"component\": \"block_output\",\n", + " \"subspace_partition\": \n", + " [[0, 128], [128, 256]]}]*2,\n", + " intervention_types=pv.VanillaIntervention,\n", + " # act in parallel\n", + " mode=\"parallel\"\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\"),\n", + " tokenizer(\"The capital of China is\", return_tensors=\"pt\")]\n", + "\n", + "intervened_outputs = pv_gpt2(\n", + " base, sources,\n", + " # on same position\n", + " {\"sources->base\": 4},\n", + " # on different subspaces\n", + " subspaces=[[[0]], [[1]]],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "7223603f", + "metadata": {}, + "source": [ + "### Multi-Source Interchange Intervention with Subspaces (Serial Mode)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "305e0607", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " {\"layer\": 0, \"component\": \"block_output\",\n", + " \"subspace_partition\": [[0, 128], [128, 256]]},\n", + " {\"layer\": 2, \"component\": \"block_output\",\n", + " \"subspace_partition\": [[0, 128], [128, 256]]}],\n", + " intervention_types=pv.VanillaIntervention,\n", + " # act in parallel\n", + " mode=\"serial\"\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\"),\n", + " tokenizer(\"The capital of China is\", return_tensors=\"pt\")]\n", + "\n", + "intervened_outputs = pv_gpt2(\n", + " base, sources,\n", + " # serialized intervention\n", + " # order is based on sources list\n", + " {\"source_0->source_1\": 3, \"source_1->base\": 4},\n", + " # on different subspaces\n", + " subspaces=[[[0]], [[1]]],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "4b5fcb37", + "metadata": {}, + "source": [ + "### Interchange Intervention Training (IIT)\n", + "Interchange intervention training (IIT) is a technique of inducing causal structures into neural models. This library naturally supports this. By training IIT, you can simply turn the gradient on for the wrapping model. In this way, your model can be trained with your interventional signals." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "8c7dde89", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "number of params: 124439808\n" + ] + }, + { + "data": { + "text/plain": [ + "tensor([[[ 0.0022, -0.1783, -0.2780, ..., 0.0477, -0.2069, 0.1093],\n", + " [ 0.0385, 0.0886, -0.6608, ..., 0.0104, -0.4946, 0.6148],\n", + " [ 0.2377, -0.2312, 0.0308, ..., 0.1085, 0.0456, 0.2494],\n", + " [-0.0034, 0.0088, -0.2219, ..., 0.1198, 0.0759, 0.3953],\n", + " [ 0.4635, 0.2698, -0.3185, ..., -0.2946, 0.2634, 0.2714]]],\n", + " grad_fn=)" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " \"layer\": 8, \"component\": \"block_output\"}, \n", + " model=gpt2\n", + ")\n", + "\n", + "pv_gpt2.enable_model_gradients()\n", + "print(\"number of params:\", pv_gpt2.count_parameters())\n", + "\n", + "# run counterfactual forward as usual\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [\n", + " tokenizer(\"The capital of Italy is\", return_tensors=\"pt\"),\n", + "]\n", + "base_outputs, counterfactual_outputs = pv_gpt2(\n", + " base, sources, {\"sources->base\": ([[[3]]], [[[3]]])}\n", + ")\n", + "print(counterfactual_outputs.last_hidden_state - base_outputs.last_hidden_state)\n", + "# call backward will put gradients on model's weights\n", + "counterfactual_outputs.last_hidden_state.sum().backward()" + ] + }, + { + "cell_type": "markdown", + "id": "b8c7ccad", + "metadata": {}, + "source": [ + "## pyvene 102\n", + "Now, you are pretty familiar with pyvene basic APIs. There are more to come. We support all sorts of weird interventions, and we encapsulate them as objects so that, even they are super weird (e.g., nested, multiple locations, different types), you can share them easily with others. BTW, if the intervention is trainable, the artifacts will be saved and shared as well.\n", + "\n", + "With that, here are a couple of additional APIs.\n", + "\n", + "### Grouping\n", + "\n", + "You can group interventions together so that they always receive the same input when you want to use them to get activations at different places. Here is an example, where you are taking in the same **Source** example, you fetch activations twice: once in position 3 and layer 0, once in position 4 and layer 2. You don't have to pass in another dummy **Source**." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "84afd62c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " {\"layer\": 0, \"component\": \"block_output\", \"group_key\": 0},\n", + " {\"layer\": 2, \"component\": \"block_output\", \"group_key\": 0}],\n", + " intervention_types=pv.VanillaIntervention,\n", + ")\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "sources = [tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")]\n", + "intervened_outputs = pv_gpt2(\n", + " base, sources, \n", + " {\"sources->base\": ([\n", + " [[3]], [[4]] # these two are for two interventions\n", + " ], [ # source position 3 into base position 4\n", + " [[3]], [[4]] \n", + " ])}\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "34aeb892", + "metadata": {}, + "source": [ + "### Intervention Skipping in Runtime\n", + "You may configure a lot of interventions, but during training, not every example will have to use all of them. So, you can skip interventions for different examples differently." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "61cd8fc9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "True True\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " # these are equivalent interventions\n", + " # we create them on purpose\n", + " {\"layer\": 0, \"component\": \"block_output\"},\n", + " {\"layer\": 0, \"component\": \"block_output\"},\n", + " {\"layer\": 0, \"component\": \"block_output\"}],\n", + " intervention_types=pv.VanillaIntervention,\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "source = tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")\n", + "# skipping 1, 2 and 3\n", + "_, pv_out1 = pv_gpt2(base, [None, None, source],\n", + " {\"sources->base\": ([None, None, [[4]]], [None, None, [[4]]])})\n", + "_, pv_out2 = pv_gpt2(base, [None, source, None],\n", + " {\"sources->base\": ([None, [[4]], None], [None, [[4]], None])})\n", + "_, pv_out3 = pv_gpt2(base, [source, None, None],\n", + " {\"sources->base\": ([[[4]], None, None], [[[4]], None, None])})\n", + "# should have the same results\n", + "print(\n", + " torch.equal(pv_out1.last_hidden_state, pv_out2.last_hidden_state),\n", + " torch.equal(pv_out2.last_hidden_state, pv_out3.last_hidden_state)\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "d9df6acd", + "metadata": {}, + "source": [ + "### Subspace Partition\n", + "You can partition your subspace before hand. If you don't, the library assumes you each neuron is in its own subspace. In this example, you partition your subspace into two continous chunk, `[0, 128), [128,256)`, which means all the neurons from index 0 upto 127 are along to partition 1. During runtime, you can intervene on all the neurons in the same parition together." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "3a66bbeb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " # they are linked to manipulate the same representation\n", + " # but in different subspaces\n", + " {\"layer\": 0, \"component\": \"block_output\",\n", + " # subspaces can be partitioned into continuous chunks\n", + " # [i, j] are the boundary indices\n", + " \"subspace_partition\": [[0, 128], [128, 256]]}],\n", + " intervention_types=pv.VanillaIntervention,\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "source = tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")\n", + "\n", + "# using intervention skipping for subspace\n", + "intervened_outputs = pv_gpt2(\n", + " base, [source],\n", + " {\"sources->base\": 4},\n", + " # intervene only only dimensions from 128 to 256\n", + " subspaces=1,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "0fdde257", + "metadata": {}, + "source": [ + "### Intervention Linking\n", + "Interventions can be linked to share weights and share subspaces. Here is an example of how to link interventions together. If interventions are trainable, then their weights are tied as well.\n", + "\n", + "Why this is useful? it is because sometimes, you may want to intervene on different subspaces differently. Say you have a representation in a size of 512, and you hypothesize the first half represents A, and the second half represents B, you can then use the subspace intervention to test it out. With trainable interventions, you can also optimize your interventions on the same representation yet with different subspaces." + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "eec19da9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "True\n", + "True\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " # they are linked to manipulate the same representation\n", + " # but in different subspaces\n", + " {\"layer\": 0, \"component\": \"block_output\", \n", + " \"subspace_partition\": [[0, 128], [128, 256]], \"intervention_link_key\": 0},\n", + " {\"layer\": 0, \"component\": \"block_output\",\n", + " \"subspace_partition\": [[0, 128], [128, 256]], \"intervention_link_key\": 0}],\n", + " intervention_types=pv.VanillaIntervention,\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "source = tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")\n", + "\n", + "# using intervention skipping for subspace\n", + "_, pv_out1 = pv_gpt2(\n", + " base, [None, source],\n", + " # 4 means token position 4\n", + " {\"sources->base\": ([None, [[4]]], [None, [[4]]])},\n", + " # 1 means the second partition in the config\n", + " subspaces=[None, [[1]]],\n", + ")\n", + "_, pv_out2 = pv_gpt2(\n", + " base,\n", + " [source, None],\n", + " {\"sources->base\": ([[[4]], None], [[[4]], None])},\n", + " subspaces=[[[1]], None],\n", + ")\n", + "print(torch.equal(pv_out1.last_hidden_state, pv_out2.last_hidden_state))\n", + "\n", + "# subspaces provide a list of index and they can be in any order\n", + "_, pv_out3 = pv_gpt2(\n", + " base,\n", + " [source, source],\n", + " {\"sources->base\": ([[[4]], [[4]]], [[[4]], [[4]]])},\n", + " subspaces=[[[0]], [[1]]],\n", + ")\n", + "_, pv_out4 = pv_gpt2(\n", + " base,\n", + " [source, source],\n", + " {\"sources->base\": ([[[4]], [[4]]], [[[4]], [[4]]])},\n", + " subspaces=[[[1]], [[0]]],\n", + ")\n", + "print(torch.equal(pv_out3.last_hidden_state, pv_out4.last_hidden_state))" + ] + }, + { + "cell_type": "markdown", + "id": "243f146f-1b9a-4574-ba2c-ebf455a96c16", + "metadata": {}, + "source": [ + "Other than intervention linking, you can also share interventions at the same component across multiple positions via setting a flag in the intervention object. It will have the same effect as creating one intervention per location and linking them all together." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "7c647943-c7e1-4024-8c07-b51062e668ba", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "tensor([[[0., 0., 0., ..., 0., 0., 0.],\n", + " [0., 0., 0., ..., 0., 0., 0.],\n", + " [0., 0., 0., ..., 0., 0., 0.],\n", + " [0., 0., 0., ..., 0., 0., 0.],\n", + " [0., 0., 0., ..., 0., 0., 0.]]])" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "config = pv.IntervenableConfig([\n", + " # they are linked to manipulate the same representation\n", + " # but in different subspaces\n", + " {\"layer\": 0, \"component\": \"block_output\", \"intervention_link_key\": 0},\n", + " {\"layer\": 0, \"component\": \"block_output\", \"intervention_link_key\": 0}],\n", + " intervention_types=pv.VanillaIntervention,\n", + ")\n", + "pv_gpt2 = pv.IntervenableModel(config, model=gpt2)\n", + "\n", + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "source = tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")\n", + "\n", + "_, pv_out = pv_gpt2(\n", + " base,\n", + " [source, source],\n", + " # swap 3rd and 4th token reprs from the same source to the base\n", + " {\"sources->base\": ([[[4]], [[3]]], [[[4]], [[3]]])},\n", + ")\n", + "\n", + "keep_last_dim_config = pv.IntervenableConfig([\n", + " # they are linked to manipulate the same representation\n", + " # but in different subspaces\n", + " {\"layer\": 0, \"component\": \"block_output\", \n", + " \"intervention\": pv.VanillaIntervention(keep_last_dim=True)}]\n", + ")\n", + "keep_last_dim_pv_gpt2 = pv.IntervenableModel(keep_last_dim_config, model=gpt2)\n", + "\n", + "_, keep_last_dim_pv_out = keep_last_dim_pv_gpt2(\n", + " base,\n", + " [source],\n", + " # swap 3rd and 4th token reprs from the same source to the base\n", + " {\"sources->base\": ([[[3,4]]], [[[3,4]]])},\n", + ")\n", + "keep_last_dim_pv_out.last_hidden_state - pv_out.last_hidden_state" + ] + }, + { + "cell_type": "markdown", + "id": "ef5b7a3e", + "metadata": {}, + "source": [ + "### Add New Model Type" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "acce6e8f", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "You are using the default legacy behaviour of the . This is expected, and simply means that the `legacy` (previous) behavior will be used so nothing changes for you. If you want to use the new behaviour, set `legacy=False`. This should only be set if you understand what it means, and thoroughly read the reason why this was added as explained in https://github.com/huggingface/transformers/pull/24565\n", + "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "\n", + "# get a flan-t5 from HuggingFace\n", + "from transformers import T5ForConditionalGeneration, T5Tokenizer, T5Config\n", + "config = T5Config.from_pretrained(\"google/flan-t5-small\")\n", + "tokenizer = T5Tokenizer.from_pretrained(\"google/flan-t5-small\")\n", + "t5 = T5ForConditionalGeneration.from_pretrained(\n", + " \"google/flan-t5-small\", config=config\n", + ")\n", + "\n", + "# config the intervention mapping with pv global vars\n", + "\"\"\"Only define for the block output here for simplicity\"\"\"\n", + "pv.type_to_module_mapping[type(t5)] = {\n", + " \"mlp_output\": (\"encoder.block[%s].layer[1]\", \n", + " pv.models.constants.CONST_OUTPUT_HOOK),\n", + " \"attention_input\": (\"encoder.block[%s].layer[0]\", \n", + " pv.models.constants.CONST_OUTPUT_HOOK),\n", + "}\n", + "pv.type_to_dimension_mapping[type(t5)] = {\n", + " \"mlp_output\": (\"d_model\",),\n", + " \"attention_input\": (\"d_model\",),\n", + " \"block_output\": (\"d_model\",),\n", + " \"head_attention_value_output\": (\"d_model/num_heads\",),\n", + "}\n", + "\n", + "# wrap as gpt2\n", + "pv_t5 = pv.IntervenableModel({\n", + " \"layer\": 0,\n", + " \"component\": \"mlp_output\",\n", + " \"source_representation\": torch.zeros(\n", + " t5.config.d_model)\n", + "}, model=t5)\n", + "\n", + "# then intervene!\n", + "base = tokenizer(\"The capital of Spain is\", \n", + " return_tensors=\"pt\")\n", + "decoder_input_ids = tokenizer(\n", + " \"\", return_tensors=\"pt\").input_ids\n", + "base[\"decoder_input_ids\"] = decoder_input_ids\n", + "intervened_outputs = pv_t5(\n", + " base, \n", + " unit_locations={\"base\": 3}\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "ba158a92", + "metadata": {}, + "source": [ + "### Composing Complex Intervention Schema: Path Patching" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "e51cadfe", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n", + "Directory './tmp/' already exists.\n" + ] + } + ], + "source": [ + "import pyvene as pv\n", + "\n", + "def path_patching_config(\n", + " layer, last_layer, \n", + " component=\"head_attention_value_output\", unit=\"h.pos\"\n", + "):\n", + " intervening_component = [\n", + " {\"layer\": layer, \"component\": component, \"unit\": unit, \"group_key\": 0}]\n", + " restoring_components = []\n", + " if not component.startswith(\"mlp_\"):\n", + " restoring_components += [\n", + " {\"layer\": layer, \"component\": \"mlp_output\", \"group_key\": 1}]\n", + " for i in range(layer+1, last_layer):\n", + " restoring_components += [\n", + " {\"layer\": i, \"component\": \"attention_output\", \"group_key\": 1},\n", + " {\"layer\": i, \"component\": \"mlp_output\", \"group_key\": 1}\n", + " ]\n", + " intervenable_config = pv.IntervenableConfig(\n", + " intervening_component + restoring_components)\n", + " return intervenable_config\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " path_patching_config(4, gpt2.config.n_layer), \n", + " model=gpt2\n", + ")\n", + "\n", + "pv_gpt2.save(\n", + " save_directory=\"./tmp/\"\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "9074f716", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING:root:The key is provided in the config. Assuming this is loaded from a pretrained module.\n" + ] + } + ], + "source": [ + "pv_gpt2 = pv.IntervenableModel.load(\n", + " \"./tmp/\",\n", + " model=gpt2)" + ] + }, + { + "cell_type": "markdown", + "id": "d546e858", + "metadata": {}, + "source": [ + "### Composing Complex Intervention Schema: Causal Tracing in 15 lines" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "c0b6a70f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + } + ], + "source": [ + "import pyvene as pv\n", + "\n", + "def causal_tracing_config(\n", + " l, c=\"mlp_activation\", w=10, tl=48):\n", + " s = max(0, l - w // 2)\n", + " e = min(tl, l - (-w // 2))\n", + " config = pv.IntervenableConfig(\n", + " [{\"component\": \"block_input\"}] + \n", + " [{\"layer\": l, \"component\": c} \n", + " for l in range(s, e)],\n", + " [pv.NoiseIntervention] +\n", + " [pv.VanillaIntervention]*(e-s))\n", + " return config\n", + "\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "pv_gpt2 = pv.IntervenableModel(\n", + " causal_tracing_config(4), \n", + " model=gpt2\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "5027498b-66b9-428a-9693-94a6b5614bb9", + "metadata": {}, + "source": [ + "### Inference-time Intervention" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "559bf80a-2a79-46f0-b8a1-8848fd49613b", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "normalizer.cc(51) LOG(INFO) precompiled_charsmap is empty. use identity normalization.\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "09c7100d49c94e1b94f3429440f1aab3", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Loading checkpoint shards: 0%| | 0/2 [00:00)" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "base = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "restore_source = tokenizer(\"The capital of Spain is\", return_tensors=\"pt\")\n", + "source = tokenizer(\"The capital of Italy is\", return_tensors=\"pt\")\n", + "\n", + "# zero-out grads\n", + "_ = pv_gpt2.model.eval()\n", + "for k, v in pv_gpt2.interventions.items():\n", + " v[0].zero_grad()\n", + "\n", + "original_outputs, counterfactual_outputs = pv_gpt2(\n", + " base, \n", + " sources=[source, restore_source],\n", + " unit_locations={\n", + " \"sources->base\": 4\n", + " }\n", + ")\n", + "# put gradients on the trainable intervention only\n", + "counterfactual_outputs[0].sum().backward()" + ] + }, + { + "cell_type": "markdown", + "id": "0907a98c", + "metadata": {}, + "source": [ + "### Intervene on ResNet with Lambda Functions\n", + "\n", + "Huggingface Vision model comes with the support of ResNet. Here, we show how we can use pyvene to intervene on a patch of pixels, like token in transformer, which is like a primitive object in ResNet or ConvNet based NNs.\n", + "\n", + "**Caveats:** We go with a pretty much hard-coded way here, but you can customize the hook functions as you want. It does not have to be a lambda function as well." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "bfb48112", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "tensor(0.0005)" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "from datasets import load_dataset\n", + "from transformers import AutoFeatureExtractor, AutoModelForImageClassification\n", + "\n", + "feature_extractor = AutoFeatureExtractor.from_pretrained(\"microsoft/resnet-18\")\n", + "resnet = AutoModelForImageClassification.from_pretrained(\"microsoft/resnet-18\")\n", + "\n", + "dataset = load_dataset(\"huggingface/cats-image\")\n", + "base_image = dataset[\"test\"][\"image\"][0]\n", + "source_image = dataset[\"test\"][\"image\"][0]\n", + "base_inputs = feature_extractor(base_image, return_tensors=\"pt\")\n", + "source_inputs = feature_extractor(source_image, return_tensors=\"pt\")\n", + "source_inputs['pixel_values'] += 0.5*torch.randn(source_inputs['pixel_values'].shape)\n", + "\n", + "def create_mask():\n", + " _mask = torch.zeros((56, 56))\n", + " _mask[56//2:, 56//2:] = 1\n", + " return _mask\n", + "m = create_mask()\n", + "\n", + "pv_resnet = pv.IntervenableModel({\n", + " \"component\": \"resnet.embedder.pooler.output\", \n", + " \"intervention\": lambda b, s: b * (1. - m) + s * m}, \n", + " model=resnet\n", + ")\n", + "intervened_outputs = pv_resnet(\n", + " base_inputs, [source_inputs], return_dict=True\n", + ")\n", + "(intervened_outputs.intervened_outputs.logits - intervened_outputs.original_outputs.logits).sum()" + ] + }, + { + "cell_type": "markdown", + "id": "b4d0aa78", + "metadata": {}, + "source": [ + "### Intervene on ResNet with Trainable Lambda Functions" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "6d0095f3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "tensor(0.0068, grad_fn=)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "from datasets import load_dataset\n", + "from transformers import AutoFeatureExtractor, AutoModelForImageClassification\n", + "\n", + "feature_extractor = AutoFeatureExtractor.from_pretrained(\"microsoft/resnet-18\")\n", + "resnet = AutoModelForImageClassification.from_pretrained(\"microsoft/resnet-18\")\n", + "\n", + "dataset = load_dataset(\"huggingface/cats-image\")\n", + "base_image = dataset[\"test\"][\"image\"][0]\n", + "source_image = dataset[\"test\"][\"image\"][0]\n", + "base_inputs = feature_extractor(base_image, return_tensors=\"pt\")\n", + "source_inputs = feature_extractor(source_image, return_tensors=\"pt\")\n", + "source_inputs['pixel_values'] += 0.5*torch.randn(source_inputs['pixel_values'].shape)\n", + "\n", + "# trainable DAS directions\n", + "v = torch.nn.utils.parametrizations.orthogonal(\n", + " torch.nn.Linear(56, 10))\n", + "\n", + "pv_resnet = pv.IntervenableModel({\n", + " \"component\": \"resnet.embedder.pooler.output\", \n", + " \"intervention\": lambda b, s: b + ((s @ v.weight.T - b @ v.weight.T) @ v.weight)}, \n", + " model=resnet\n", + ")\n", + "\n", + "intervened_outputs = pv_resnet(\n", + " base_inputs, [source_inputs], return_dict=True\n", + ")\n", + "(intervened_outputs.intervened_outputs.logits - intervened_outputs.original_outputs.logits).sum()" + ] + }, + { + "cell_type": "markdown", + "id": "14694aea-934e-47f3-ab27-6843f6b5dc7a", + "metadata": {}, + "source": [ + "### Run pyvene on [NDIF](https://ndif.us/) backend with `pv.build_intervenable_model(...)`\n", + "\n", + "[NDIF](https://ndif.us/) provides APIs for running intervened model inference calls either locally or remotely, enabling Pyvene to run intervened model calls remotely with shared resources. This is especially useful when the intervened model is large (e.g., Llama 400B).\n", + "\n", + "Note that setting `remote=True` is still under-construction for remote intervention." + ] + }, + { + "cell_type": "markdown", + "id": "6ba3fc81-8f61-40d2-9e23-8d61c9dc73b6", + "metadata": {}, + "source": [ + "**Basic activation collection**" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "9b289caa-6621-4cc1-883d-c9b91a21617d", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-310/lib/python3.10/site-packages/transformers/utils/hub.py:124: FutureWarning: Using `TRANSFORMERS_CACHE` is deprecated and will be removed in v5 of Transformers. Use `HF_HOME` instead.\n", + " warnings.warn(\n", + "WARNING:root:We currently have very limited intervention support for ndif backend.\n", + "You're using a GPT2TokenizerFast tokenizer. Please note that with a fast tokenizer, using the `__call__` method is faster than using a method to encode the text followed by a call to the `pad` method to get a padded encoding.\n" + ] + } + ], + "source": [ + "import torch\n", + "import pyvene as pv\n", + "from transformers import AutoTokenizer\n", + "from nnsight import LanguageModel\n", + "\n", + "# load any huggingface model as a ndif native model object\n", + "gpt2_ndif = LanguageModel('openai-community/gpt2', device_map='cpu')\n", + "tokenizer = AutoTokenizer.from_pretrained('openai-community/gpt2')\n", + "\n", + "# pyvene provides pv.build_intervenable_model as the generic model builder\n", + "pv_gpt2_ndif = pv.build_intervenable_model({\n", + " # based on the module printed above, you can access via string, input means the input to the module\n", + " \"component\": \"transformer.h[10].attn.attn_dropout.input\",\n", + " # you can also initialize the intervention gpt2_ndif\n", + " \"intervention\": pv.CollectIntervention()}, model=gpt2_ndif, remote=False)\n", + "\n", + "base = \"When John and Mary went to the shops, Mary gave the bag to\"\n", + "ndif_collected_attn_w = pv_gpt2_ndif(\n", + " base = tokenizer(base, return_tensors=\"pt\"\n", + " ), unit_locations={\"base\": [h for h in range(12)]}\n", + ")[0][-1][0]" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "a97c01ee-0904-4e01-8dee-2608d0635964", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "loaded model\n" + ] + }, + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# gpt2 helper loading model from HuggingFace\n", + "_, tokenizer, gpt2 = pv.create_gpt2()\n", + "\n", + "pv_gpt2 = pv.IntervenableModel({\n", + " # based on the module printed above, you can access via string, input means the input to the module\n", + " \"component\": \"h[10].attn.attn_dropout.input\",\n", + " # you can also initialize the intervention outside\n", + " \"intervention\": pv.CollectIntervention()}, model=gpt2)\n", + "\n", + "base = \"When John and Mary went to the shops, Mary gave the bag to\"\n", + "collected_attn_w = pv_gpt2(\n", + " base = tokenizer(base, return_tensors=\"pt\"\n", + " ), unit_locations={\"base\": [h for h in range(12)]}\n", + ")[0][-1][0]\n", + "torch.allclose(ndif_collected_attn_w, collected_attn_w)" + ] + }, + { + "cell_type": "markdown", + "id": "e463fc3b-684b-4461-b94e-d69ca310e27e", + "metadata": {}, + "source": [ + "**Interchange intervention (activation swap between two examples)**" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "f4f02279-5601-4db9-9823-2e4d3bd8b56c", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/u/nlp/anaconda/main/anaconda3/envs/wuzhengx-310/lib/python3.10/site-packages/transformers/utils/hub.py:124: FutureWarning: Using `TRANSFORMERS_CACHE` is deprecated and will be removed in v5 of Transformers. Use `HF_HOME` instead.\n", + " warnings.warn(\n", + "WARNING:root:We currently have very limited intervention support for ndif backend.\n", + "You're using a GPT2TokenizerFast tokenizer. Please note that with a fast tokenizer, using the `__call__` method is faster than using a method to encode the text followed by a call to the `pad` method to get a padded encoding.\n" + ] + } + ], + "source": [ + "import pyvene as pv\n", + "from transformers import AutoTokenizer\n", + "from nnsight import LanguageModel\n", + "\n", + "# load any huggingface model as a ndif native model object\n", + "gpt2_ndif = LanguageModel('openai-community/gpt2', device_map='cpu')\n", + "tokenizer = AutoTokenizer.from_pretrained('openai-community/gpt2')\n", + "\n", + "# create with dict-based config\n", + "pv_config = pv.IntervenableConfig({\n", + " \"component\": \"transformer.h[0].attn.output\",\n", + " \"intervention\": pv.VanillaIntervention()}\n", + ")\n", + "#initialize model\n", + "pv_gpt2_ndif = pv.build_intervenable_model(\n", + " pv_config, model=gpt2_ndif)\n", + "# run an interchange intervention \n", + "intervened_outputs = pv_gpt2_ndif(\n", + " # the base input\n", + " base=tokenizer(\n", + " \"The capital of Spain is\", \n", + " return_tensors = \"pt\"), \n", + " # the source input\n", + " sources=tokenizer(\n", + " \"The capital of Italy is\", \n", + " return_tensors = \"pt\"), \n", + " # the location to intervene at (3rd token)\n", + " unit_locations={\"sources->base\": 3},\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "bc6eb49d", + "metadata": {}, + "source": [ + "### The End\n", + "Now you are graduating from pyvene entry level course! Feel free to take a look at our tutorials for more challenging interventions." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.13" + }, + "toc-autonumbering": true, + "toc-showcode": false, + "toc-showmarkdowntxt": false, + "toc-showtags": true + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_static/basic.css b/_static/basic.css new file mode 100644 index 00000000..e760386b --- /dev/null +++ b/_static/basic.css @@ -0,0 +1,925 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 270px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +a:visited { + color: #551A8B; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} + +nav.contents, +aside.topic, +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ + +nav.contents, +aside.topic, +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} + +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +.sig dd { + margin-top: 0px; + margin-bottom: 0px; +} + +.sig dl { + margin-top: 0px; + margin-bottom: 0px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +.translated { + background-color: rgba(207, 255, 207, 0.2) +} + +.untranslated { + background-color: rgba(255, 207, 207, 0.2) +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/_static/doctools.js b/_static/doctools.js new file mode 100644 index 00000000..d06a71d7 --- /dev/null +++ b/_static/doctools.js @@ -0,0 +1,156 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 00000000..5087290c --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '0.1.2', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/_static/file.png b/_static/file.png new file mode 100644 index 00000000..a858a410 Binary files /dev/null and b/_static/file.png differ diff --git a/_static/images/logo_binder.svg b/_static/images/logo_binder.svg new file mode 100644 index 00000000..45fecf75 --- /dev/null +++ b/_static/images/logo_binder.svg @@ -0,0 +1,19 @@ + + + + +logo + + + + + + + + diff --git a/_static/images/logo_colab.png b/_static/images/logo_colab.png new file mode 100644 index 00000000..b7560ec2 Binary files /dev/null and b/_static/images/logo_colab.png differ diff --git a/_static/images/logo_deepnote.svg b/_static/images/logo_deepnote.svg new file mode 100644 index 00000000..fa77ebfc --- /dev/null +++ b/_static/images/logo_deepnote.svg @@ -0,0 +1 @@ + diff --git a/_static/images/logo_jupyterhub.svg b/_static/images/logo_jupyterhub.svg new file mode 100644 index 00000000..60cfe9f2 --- /dev/null +++ b/_static/images/logo_jupyterhub.svg @@ -0,0 +1 @@ +logo_jupyterhubHub diff --git a/_static/language_data.js b/_static/language_data.js new file mode 100644 index 00000000..250f5665 --- /dev/null +++ b/_static/language_data.js @@ -0,0 +1,199 @@ +/* + * language_data.js + * ~~~~~~~~~~~~~~~~ + * + * This script contains the language-specific data used by searchtools.js, + * namely the list of stopwords, stemmer, scorer and splitter. + * + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; + + +/* Non-minified version is copied as a separate JS file, is available */ + +/** + * Porter Stemmer + */ +var Stemmer = function() { + + var step2list = { + ational: 'ate', + tional: 'tion', + enci: 'ence', + anci: 'ance', + izer: 'ize', + bli: 'ble', + alli: 'al', + entli: 'ent', + eli: 'e', + ousli: 'ous', + ization: 'ize', + ation: 'ate', + ator: 'ate', + alism: 'al', + iveness: 'ive', + fulness: 'ful', + ousness: 'ous', + aliti: 'al', + iviti: 'ive', + biliti: 'ble', + logi: 'log' + }; + + var step3list = { + icate: 'ic', + ative: '', + alize: 'al', + iciti: 'ic', + ical: 'ic', + ful: '', + ness: '' + }; + + var c = "[^aeiou]"; // consonant + var v = "[aeiouy]"; // vowel + var C = c + "[^aeiouy]*"; // consonant sequence + var V = v + "[aeiou]*"; // vowel sequence + + var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 + var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 + var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 + var s_v = "^(" + C + ")?" + v; // vowel in stem + + this.stemWord = function (w) { + var stem; + var suffix; + var firstch; + var origword = w; + + if (w.length < 3) + return w; + + var re; + var re2; + var re3; + var re4; + + firstch = w.substr(0,1); + if (firstch == "y") + w = firstch.toUpperCase() + w.substr(1); + + // Step 1a + re = /^(.+?)(ss|i)es$/; + re2 = /^(.+?)([^s])s$/; + + if (re.test(w)) + w = w.replace(re,"$1$2"); + else if (re2.test(w)) + w = w.replace(re2,"$1$2"); + + // Step 1b + re = /^(.+?)eed$/; + re2 = /^(.+?)(ed|ing)$/; + if (re.test(w)) { + var fp = re.exec(w); + re = new RegExp(mgr0); + if (re.test(fp[1])) { + re = /.$/; + w = w.replace(re,""); + } + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1]; + re2 = new RegExp(s_v); + if (re2.test(stem)) { + w = stem; + re2 = /(at|bl|iz)$/; + re3 = new RegExp("([^aeiouylsz])\\1$"); + re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re2.test(w)) + w = w + "e"; + else if (re3.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + else if (re4.test(w)) + w = w + "e"; + } + } + + // Step 1c + re = /^(.+?)y$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(s_v); + if (re.test(stem)) + w = stem + "i"; + } + + // Step 2 + re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step2list[suffix]; + } + + // Step 3 + re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + suffix = fp[2]; + re = new RegExp(mgr0); + if (re.test(stem)) + w = stem + step3list[suffix]; + } + + // Step 4 + re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; + re2 = /^(.+?)(s|t)(ion)$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + if (re.test(stem)) + w = stem; + } + else if (re2.test(w)) { + var fp = re2.exec(w); + stem = fp[1] + fp[2]; + re2 = new RegExp(mgr1); + if (re2.test(stem)) + w = stem; + } + + // Step 5 + re = /^(.+?)e$/; + if (re.test(w)) { + var fp = re.exec(w); + stem = fp[1]; + re = new RegExp(mgr1); + re2 = new RegExp(meq1); + re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); + if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) + w = stem; + } + re = /ll$/; + re2 = new RegExp(mgr1); + if (re.test(w) && re2.test(w)) { + re = /.$/; + w = w.replace(re,""); + } + + // and turn initial Y back to y + if (firstch == "y") + w = firstch.toLowerCase() + w.substr(1); + return w; + } +} + diff --git a/_static/locales/ar/LC_MESSAGES/booktheme.mo b/_static/locales/ar/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..15541a6a Binary files /dev/null and b/_static/locales/ar/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ar/LC_MESSAGES/booktheme.po b/_static/locales/ar/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..34d404c6 --- /dev/null +++ b/_static/locales/ar/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ar\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "طباعة إلى PDF" + +msgid "Theme by the" +msgstr "موضوع بواسطة" + +msgid "Download source file" +msgstr "تنزيل ملف المصدر" + +msgid "open issue" +msgstr "قضية مفتوحة" + +msgid "Contents" +msgstr "محتويات" + +msgid "previous page" +msgstr "الصفحة السابقة" + +msgid "Download notebook file" +msgstr "تنزيل ملف دفتر الملاحظات" + +msgid "Copyright" +msgstr "حقوق النشر" + +msgid "Download this page" +msgstr "قم بتنزيل هذه الصفحة" + +msgid "Source repository" +msgstr "مستودع المصدر" + +msgid "By" +msgstr "بواسطة" + +msgid "repository" +msgstr "مخزن" + +msgid "Last updated on" +msgstr "آخر تحديث في" + +msgid "Toggle navigation" +msgstr "تبديل التنقل" + +msgid "Sphinx Book Theme" +msgstr "موضوع كتاب أبو الهول" + +msgid "suggest edit" +msgstr "أقترح تحرير" + +msgid "Open an issue" +msgstr "افتح قضية" + +msgid "Launch" +msgstr "إطلاق" + +msgid "Fullscreen mode" +msgstr "وضع ملء الشاشة" + +msgid "Edit this page" +msgstr "قم بتحرير هذه الصفحة" + +msgid "By the" +msgstr "بواسطة" + +msgid "next page" +msgstr "الصفحة التالية" diff --git a/_static/locales/bg/LC_MESSAGES/booktheme.mo b/_static/locales/bg/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..da951200 Binary files /dev/null and b/_static/locales/bg/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/bg/LC_MESSAGES/booktheme.po b/_static/locales/bg/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..7420c19e --- /dev/null +++ b/_static/locales/bg/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: bg\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Печат в PDF" + +msgid "Theme by the" +msgstr "Тема от" + +msgid "Download source file" +msgstr "Изтеглете изходния файл" + +msgid "open issue" +msgstr "отворен брой" + +msgid "Contents" +msgstr "Съдържание" + +msgid "previous page" +msgstr "предишна страница" + +msgid "Download notebook file" +msgstr "Изтеглете файла на бележника" + +msgid "Copyright" +msgstr "Авторско право" + +msgid "Download this page" +msgstr "Изтеглете тази страница" + +msgid "Source repository" +msgstr "Хранилище на източника" + +msgid "By" +msgstr "От" + +msgid "repository" +msgstr "хранилище" + +msgid "Last updated on" +msgstr "Последна актуализация на" + +msgid "Toggle navigation" +msgstr "Превключване на навигацията" + +msgid "Sphinx Book Theme" +msgstr "Тема на книгата Sphinx" + +msgid "suggest edit" +msgstr "предложи редактиране" + +msgid "Open an issue" +msgstr "Отворете проблем" + +msgid "Launch" +msgstr "Стартиране" + +msgid "Fullscreen mode" +msgstr "Режим на цял екран" + +msgid "Edit this page" +msgstr "Редактирайте тази страница" + +msgid "By the" +msgstr "По" + +msgid "next page" +msgstr "Следваща страница" diff --git a/_static/locales/bn/LC_MESSAGES/booktheme.mo b/_static/locales/bn/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..6b96639b Binary files /dev/null and b/_static/locales/bn/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/bn/LC_MESSAGES/booktheme.po b/_static/locales/bn/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..63a07c36 --- /dev/null +++ b/_static/locales/bn/LC_MESSAGES/booktheme.po @@ -0,0 +1,63 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: bn\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "পিডিএফ প্রিন্ট করুন" + +msgid "Theme by the" +msgstr "থিম দ্বারা" + +msgid "Download source file" +msgstr "উত্স ফাইল ডাউনলোড করুন" + +msgid "open issue" +msgstr "খোলা সমস্যা" + +msgid "previous page" +msgstr "আগের পৃষ্ঠা" + +msgid "Download notebook file" +msgstr "নোটবুক ফাইল ডাউনলোড করুন" + +msgid "Copyright" +msgstr "কপিরাইট" + +msgid "Download this page" +msgstr "এই পৃষ্ঠাটি ডাউনলোড করুন" + +msgid "Source repository" +msgstr "উত্স সংগ্রহস্থল" + +msgid "By" +msgstr "দ্বারা" + +msgid "Last updated on" +msgstr "সর্বশেষ আপডেট" + +msgid "Toggle navigation" +msgstr "নেভিগেশন টগল করুন" + +msgid "Sphinx Book Theme" +msgstr "স্পিনিক্স বুক থিম" + +msgid "Open an issue" +msgstr "একটি সমস্যা খুলুন" + +msgid "Launch" +msgstr "শুরু করা" + +msgid "Edit this page" +msgstr "এই পৃষ্ঠাটি সম্পাদনা করুন" + +msgid "By the" +msgstr "দ্বারা" + +msgid "next page" +msgstr "পরবর্তী পৃষ্ঠা" diff --git a/_static/locales/ca/LC_MESSAGES/booktheme.mo b/_static/locales/ca/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..a4dd30e9 Binary files /dev/null and b/_static/locales/ca/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ca/LC_MESSAGES/booktheme.po b/_static/locales/ca/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..8fb358bf --- /dev/null +++ b/_static/locales/ca/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Imprimeix a PDF" + +msgid "Theme by the" +msgstr "Tema del" + +msgid "Download source file" +msgstr "Baixeu el fitxer font" + +msgid "open issue" +msgstr "número obert" + +msgid "previous page" +msgstr "Pàgina anterior" + +msgid "Download notebook file" +msgstr "Descarregar fitxer de quadern" + +msgid "Copyright" +msgstr "Copyright" + +msgid "Download this page" +msgstr "Descarregueu aquesta pàgina" + +msgid "Source repository" +msgstr "Dipòsit de fonts" + +msgid "By" +msgstr "Per" + +msgid "Last updated on" +msgstr "Darrera actualització el" + +msgid "Toggle navigation" +msgstr "Commuta la navegació" + +msgid "Sphinx Book Theme" +msgstr "Tema del llibre Esfinx" + +msgid "suggest edit" +msgstr "suggerir edició" + +msgid "Open an issue" +msgstr "Obriu un número" + +msgid "Launch" +msgstr "Llançament" + +msgid "Edit this page" +msgstr "Editeu aquesta pàgina" + +msgid "By the" +msgstr "Per la" + +msgid "next page" +msgstr "pàgina següent" diff --git a/_static/locales/cs/LC_MESSAGES/booktheme.mo b/_static/locales/cs/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..c39e01a6 Binary files /dev/null and b/_static/locales/cs/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/cs/LC_MESSAGES/booktheme.po b/_static/locales/cs/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..c6ef4690 --- /dev/null +++ b/_static/locales/cs/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: cs\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Tisk do PDF" + +msgid "Theme by the" +msgstr "Téma od" + +msgid "Download source file" +msgstr "Stáhněte si zdrojový soubor" + +msgid "open issue" +msgstr "otevřené číslo" + +msgid "Contents" +msgstr "Obsah" + +msgid "previous page" +msgstr "předchozí stránka" + +msgid "Download notebook file" +msgstr "Stáhnout soubor poznámkového bloku" + +msgid "Copyright" +msgstr "autorská práva" + +msgid "Download this page" +msgstr "Stáhněte si tuto stránku" + +msgid "Source repository" +msgstr "Zdrojové úložiště" + +msgid "By" +msgstr "Podle" + +msgid "repository" +msgstr "úložiště" + +msgid "Last updated on" +msgstr "Naposledy aktualizováno" + +msgid "Toggle navigation" +msgstr "Přepnout navigaci" + +msgid "Sphinx Book Theme" +msgstr "Téma knihy Sfinga" + +msgid "suggest edit" +msgstr "navrhnout úpravy" + +msgid "Open an issue" +msgstr "Otevřete problém" + +msgid "Launch" +msgstr "Zahájení" + +msgid "Fullscreen mode" +msgstr "Režim celé obrazovky" + +msgid "Edit this page" +msgstr "Upravit tuto stránku" + +msgid "By the" +msgstr "Podle" + +msgid "next page" +msgstr "další strana" diff --git a/_static/locales/da/LC_MESSAGES/booktheme.mo b/_static/locales/da/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..f43157d7 Binary files /dev/null and b/_static/locales/da/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/da/LC_MESSAGES/booktheme.po b/_static/locales/da/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..306a38e5 --- /dev/null +++ b/_static/locales/da/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: da\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Udskriv til PDF" + +msgid "Theme by the" +msgstr "Tema af" + +msgid "Download source file" +msgstr "Download kildefil" + +msgid "open issue" +msgstr "åbent nummer" + +msgid "Contents" +msgstr "Indhold" + +msgid "previous page" +msgstr "forrige side" + +msgid "Download notebook file" +msgstr "Download notesbog-fil" + +msgid "Copyright" +msgstr "ophavsret" + +msgid "Download this page" +msgstr "Download denne side" + +msgid "Source repository" +msgstr "Kildelager" + +msgid "By" +msgstr "Ved" + +msgid "repository" +msgstr "lager" + +msgid "Last updated on" +msgstr "Sidst opdateret den" + +msgid "Toggle navigation" +msgstr "Skift navigation" + +msgid "Sphinx Book Theme" +msgstr "Sphinx bogtema" + +msgid "suggest edit" +msgstr "foreslå redigering" + +msgid "Open an issue" +msgstr "Åbn et problem" + +msgid "Launch" +msgstr "Start" + +msgid "Fullscreen mode" +msgstr "Fuldskærmstilstand" + +msgid "Edit this page" +msgstr "Rediger denne side" + +msgid "By the" +msgstr "Ved" + +msgid "next page" +msgstr "Næste side" diff --git a/_static/locales/de/LC_MESSAGES/booktheme.mo b/_static/locales/de/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..648b565c Binary files /dev/null and b/_static/locales/de/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/de/LC_MESSAGES/booktheme.po b/_static/locales/de/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..4925360d --- /dev/null +++ b/_static/locales/de/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "In PDF drucken" + +msgid "Theme by the" +msgstr "Thema von der" + +msgid "Download source file" +msgstr "Quelldatei herunterladen" + +msgid "open issue" +msgstr "offenes Thema" + +msgid "Contents" +msgstr "Inhalt" + +msgid "previous page" +msgstr "vorherige Seite" + +msgid "Download notebook file" +msgstr "Notebook-Datei herunterladen" + +msgid "Copyright" +msgstr "Urheberrechte ©" + +msgid "Download this page" +msgstr "Laden Sie diese Seite herunter" + +msgid "Source repository" +msgstr "Quell-Repository" + +msgid "By" +msgstr "Durch" + +msgid "repository" +msgstr "Repository" + +msgid "Last updated on" +msgstr "Zuletzt aktualisiert am" + +msgid "Toggle navigation" +msgstr "Navigation umschalten" + +msgid "Sphinx Book Theme" +msgstr "Sphinx-Buch-Thema" + +msgid "suggest edit" +msgstr "vorschlagen zu bearbeiten" + +msgid "Open an issue" +msgstr "Öffnen Sie ein Problem" + +msgid "Launch" +msgstr "Starten" + +msgid "Fullscreen mode" +msgstr "Vollbildmodus" + +msgid "Edit this page" +msgstr "Bearbeite diese Seite" + +msgid "By the" +msgstr "Bis zum" + +msgid "next page" +msgstr "Nächste Seite" diff --git a/_static/locales/el/LC_MESSAGES/booktheme.mo b/_static/locales/el/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..fca6e935 Binary files /dev/null and b/_static/locales/el/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/el/LC_MESSAGES/booktheme.po b/_static/locales/el/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..3e01acbd --- /dev/null +++ b/_static/locales/el/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: el\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Εκτύπωση σε PDF" + +msgid "Theme by the" +msgstr "Θέμα από το" + +msgid "Download source file" +msgstr "Λήψη αρχείου προέλευσης" + +msgid "open issue" +msgstr "ανοιχτό ζήτημα" + +msgid "Contents" +msgstr "Περιεχόμενα" + +msgid "previous page" +msgstr "προηγούμενη σελίδα" + +msgid "Download notebook file" +msgstr "Λήψη αρχείου σημειωματάριου" + +msgid "Copyright" +msgstr "Πνευματική ιδιοκτησία" + +msgid "Download this page" +msgstr "Λήψη αυτής της σελίδας" + +msgid "Source repository" +msgstr "Αποθήκη πηγής" + +msgid "By" +msgstr "Με" + +msgid "repository" +msgstr "αποθήκη" + +msgid "Last updated on" +msgstr "Τελευταία ενημέρωση στις" + +msgid "Toggle navigation" +msgstr "Εναλλαγή πλοήγησης" + +msgid "Sphinx Book Theme" +msgstr "Θέμα βιβλίου Sphinx" + +msgid "suggest edit" +msgstr "προτείνω επεξεργασία" + +msgid "Open an issue" +msgstr "Ανοίξτε ένα ζήτημα" + +msgid "Launch" +msgstr "Εκτόξευση" + +msgid "Fullscreen mode" +msgstr "ΛΕΙΤΟΥΡΓΙΑ ΠΛΗΡΟΥΣ ΟΘΟΝΗΣ" + +msgid "Edit this page" +msgstr "Επεξεργαστείτε αυτήν τη σελίδα" + +msgid "By the" +msgstr "Από το" + +msgid "next page" +msgstr "επόμενη σελίδα" diff --git a/_static/locales/eo/LC_MESSAGES/booktheme.mo b/_static/locales/eo/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..d1072bbe Binary files /dev/null and b/_static/locales/eo/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/eo/LC_MESSAGES/booktheme.po b/_static/locales/eo/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..f7ed2262 --- /dev/null +++ b/_static/locales/eo/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: eo\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Presi al PDF" + +msgid "Theme by the" +msgstr "Temo de la" + +msgid "Download source file" +msgstr "Elŝutu fontodosieron" + +msgid "open issue" +msgstr "malferma numero" + +msgid "Contents" +msgstr "Enhavo" + +msgid "previous page" +msgstr "antaŭa paĝo" + +msgid "Download notebook file" +msgstr "Elŝutu kajeran dosieron" + +msgid "Copyright" +msgstr "Kopirajto" + +msgid "Download this page" +msgstr "Elŝutu ĉi tiun paĝon" + +msgid "Source repository" +msgstr "Fonto-deponejo" + +msgid "By" +msgstr "De" + +msgid "repository" +msgstr "deponejo" + +msgid "Last updated on" +msgstr "Laste ĝisdatigita la" + +msgid "Toggle navigation" +msgstr "Ŝalti navigadon" + +msgid "Sphinx Book Theme" +msgstr "Sfinksa Libro-Temo" + +msgid "suggest edit" +msgstr "sugesti redaktadon" + +msgid "Open an issue" +msgstr "Malfermu numeron" + +msgid "Launch" +msgstr "Lanĉo" + +msgid "Fullscreen mode" +msgstr "Plenekrana reĝimo" + +msgid "Edit this page" +msgstr "Redaktu ĉi tiun paĝon" + +msgid "By the" +msgstr "Per la" + +msgid "next page" +msgstr "sekva paĝo" diff --git a/_static/locales/es/LC_MESSAGES/booktheme.mo b/_static/locales/es/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..ba2ee4dc Binary files /dev/null and b/_static/locales/es/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/es/LC_MESSAGES/booktheme.po b/_static/locales/es/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..5e0029e5 --- /dev/null +++ b/_static/locales/es/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Imprimir en PDF" + +msgid "Theme by the" +msgstr "Tema por el" + +msgid "Download source file" +msgstr "Descargar archivo fuente" + +msgid "open issue" +msgstr "Tema abierto" + +msgid "Contents" +msgstr "Contenido" + +msgid "previous page" +msgstr "pagina anterior" + +msgid "Download notebook file" +msgstr "Descargar archivo de cuaderno" + +msgid "Copyright" +msgstr "Derechos de autor" + +msgid "Download this page" +msgstr "Descarga esta pagina" + +msgid "Source repository" +msgstr "Repositorio de origen" + +msgid "By" +msgstr "Por" + +msgid "repository" +msgstr "repositorio" + +msgid "Last updated on" +msgstr "Ultima actualización en" + +msgid "Toggle navigation" +msgstr "Navegación de palanca" + +msgid "Sphinx Book Theme" +msgstr "Tema del libro de la esfinge" + +msgid "suggest edit" +msgstr "sugerir editar" + +msgid "Open an issue" +msgstr "Abrir un problema" + +msgid "Launch" +msgstr "Lanzamiento" + +msgid "Fullscreen mode" +msgstr "Modo de pantalla completa" + +msgid "Edit this page" +msgstr "Edita esta página" + +msgid "By the" +msgstr "Por el" + +msgid "next page" +msgstr "siguiente página" diff --git a/_static/locales/et/LC_MESSAGES/booktheme.mo b/_static/locales/et/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..983b8239 Binary files /dev/null and b/_static/locales/et/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/et/LC_MESSAGES/booktheme.po b/_static/locales/et/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..8680982a --- /dev/null +++ b/_static/locales/et/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: et\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Prindi PDF-i" + +msgid "Theme by the" +msgstr "Teema" + +msgid "Download source file" +msgstr "Laadige alla lähtefail" + +msgid "open issue" +msgstr "avatud küsimus" + +msgid "Contents" +msgstr "Sisu" + +msgid "previous page" +msgstr "eelmine leht" + +msgid "Download notebook file" +msgstr "Laadige sülearvuti fail alla" + +msgid "Copyright" +msgstr "Autoriõigus" + +msgid "Download this page" +msgstr "Laadige see leht alla" + +msgid "Source repository" +msgstr "Allikahoidla" + +msgid "By" +msgstr "Kõrval" + +msgid "repository" +msgstr "hoidla" + +msgid "Last updated on" +msgstr "Viimati uuendatud" + +msgid "Toggle navigation" +msgstr "Lülita navigeerimine sisse" + +msgid "Sphinx Book Theme" +msgstr "Sfinksiraamatu teema" + +msgid "suggest edit" +msgstr "soovita muuta" + +msgid "Open an issue" +msgstr "Avage probleem" + +msgid "Launch" +msgstr "Käivitage" + +msgid "Fullscreen mode" +msgstr "Täisekraanirežiim" + +msgid "Edit this page" +msgstr "Muutke seda lehte" + +msgid "By the" +msgstr "Autor" + +msgid "next page" +msgstr "järgmine leht" diff --git a/_static/locales/fi/LC_MESSAGES/booktheme.mo b/_static/locales/fi/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..d8ac0545 Binary files /dev/null and b/_static/locales/fi/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/fi/LC_MESSAGES/booktheme.po b/_static/locales/fi/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..34dac218 --- /dev/null +++ b/_static/locales/fi/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Tulosta PDF-tiedostoon" + +msgid "Theme by the" +msgstr "Teeman tekijä" + +msgid "Download source file" +msgstr "Lataa lähdetiedosto" + +msgid "open issue" +msgstr "avoin ongelma" + +msgid "Contents" +msgstr "Sisällys" + +msgid "previous page" +msgstr "Edellinen sivu" + +msgid "Download notebook file" +msgstr "Lataa muistikirjatiedosto" + +msgid "Copyright" +msgstr "Tekijänoikeus" + +msgid "Download this page" +msgstr "Lataa tämä sivu" + +msgid "Source repository" +msgstr "Lähteen arkisto" + +msgid "By" +msgstr "Tekijä" + +msgid "repository" +msgstr "arkisto" + +msgid "Last updated on" +msgstr "Viimeksi päivitetty" + +msgid "Toggle navigation" +msgstr "Vaihda navigointia" + +msgid "Sphinx Book Theme" +msgstr "Sphinx-kirjan teema" + +msgid "suggest edit" +msgstr "ehdottaa muokkausta" + +msgid "Open an issue" +msgstr "Avaa ongelma" + +msgid "Launch" +msgstr "Tuoda markkinoille" + +msgid "Fullscreen mode" +msgstr "Koko näytön tila" + +msgid "Edit this page" +msgstr "Muokkaa tätä sivua" + +msgid "By the" +msgstr "Mukaan" + +msgid "next page" +msgstr "seuraava sivu" diff --git a/_static/locales/fr/LC_MESSAGES/booktheme.mo b/_static/locales/fr/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..f663d39f Binary files /dev/null and b/_static/locales/fr/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/fr/LC_MESSAGES/booktheme.po b/_static/locales/fr/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..8991a1b8 --- /dev/null +++ b/_static/locales/fr/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Imprimer au format PDF" + +msgid "Theme by the" +msgstr "Thème par le" + +msgid "Download source file" +msgstr "Télécharger le fichier source" + +msgid "open issue" +msgstr "signaler un problème" + +msgid "Contents" +msgstr "Contenu" + +msgid "previous page" +msgstr "page précédente" + +msgid "Download notebook file" +msgstr "Télécharger le fichier notebook" + +msgid "Copyright" +msgstr "droits d'auteur" + +msgid "Download this page" +msgstr "Téléchargez cette page" + +msgid "Source repository" +msgstr "Dépôt source" + +msgid "By" +msgstr "Par" + +msgid "repository" +msgstr "dépôt" + +msgid "Last updated on" +msgstr "Dernière mise à jour le" + +msgid "Toggle navigation" +msgstr "Basculer la navigation" + +msgid "Sphinx Book Theme" +msgstr "Thème du livre Sphinx" + +msgid "suggest edit" +msgstr "suggestion de modification" + +msgid "Open an issue" +msgstr "Ouvrez un problème" + +msgid "Launch" +msgstr "lancement" + +msgid "Fullscreen mode" +msgstr "Mode plein écran" + +msgid "Edit this page" +msgstr "Modifier cette page" + +msgid "By the" +msgstr "Par le" + +msgid "next page" +msgstr "page suivante" diff --git a/_static/locales/hr/LC_MESSAGES/booktheme.mo b/_static/locales/hr/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..eca4a1a2 Binary files /dev/null and b/_static/locales/hr/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/hr/LC_MESSAGES/booktheme.po b/_static/locales/hr/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..42c4233d --- /dev/null +++ b/_static/locales/hr/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hr\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Ispis u PDF" + +msgid "Theme by the" +msgstr "Tema autora" + +msgid "Download source file" +msgstr "Preuzmi izvornu datoteku" + +msgid "open issue" +msgstr "otvoreno izdanje" + +msgid "Contents" +msgstr "Sadržaj" + +msgid "previous page" +msgstr "Prethodna stranica" + +msgid "Download notebook file" +msgstr "Preuzmi datoteku bilježnice" + +msgid "Copyright" +msgstr "Autorska prava" + +msgid "Download this page" +msgstr "Preuzmite ovu stranicu" + +msgid "Source repository" +msgstr "Izvorno spremište" + +msgid "By" +msgstr "Po" + +msgid "repository" +msgstr "spremište" + +msgid "Last updated on" +msgstr "Posljednje ažuriranje:" + +msgid "Toggle navigation" +msgstr "Uključi / isključi navigaciju" + +msgid "Sphinx Book Theme" +msgstr "Tema knjige Sphinx" + +msgid "suggest edit" +msgstr "predloži uređivanje" + +msgid "Open an issue" +msgstr "Otvorite izdanje" + +msgid "Launch" +msgstr "Pokrenite" + +msgid "Fullscreen mode" +msgstr "Način preko cijelog zaslona" + +msgid "Edit this page" +msgstr "Uredite ovu stranicu" + +msgid "By the" +msgstr "Od strane" + +msgid "next page" +msgstr "sljedeća stranica" diff --git a/_static/locales/id/LC_MESSAGES/booktheme.mo b/_static/locales/id/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..d07a06a9 Binary files /dev/null and b/_static/locales/id/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/id/LC_MESSAGES/booktheme.po b/_static/locales/id/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..b8d8d898 --- /dev/null +++ b/_static/locales/id/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: id\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Cetak ke PDF" + +msgid "Theme by the" +msgstr "Tema oleh" + +msgid "Download source file" +msgstr "Unduh file sumber" + +msgid "open issue" +msgstr "masalah terbuka" + +msgid "Contents" +msgstr "Isi" + +msgid "previous page" +msgstr "halaman sebelumnya" + +msgid "Download notebook file" +msgstr "Unduh file notebook" + +msgid "Copyright" +msgstr "hak cipta" + +msgid "Download this page" +msgstr "Unduh halaman ini" + +msgid "Source repository" +msgstr "Repositori sumber" + +msgid "By" +msgstr "Oleh" + +msgid "repository" +msgstr "gudang" + +msgid "Last updated on" +msgstr "Terakhir diperbarui saat" + +msgid "Toggle navigation" +msgstr "Alihkan navigasi" + +msgid "Sphinx Book Theme" +msgstr "Tema Buku Sphinx" + +msgid "suggest edit" +msgstr "menyarankan edit" + +msgid "Open an issue" +msgstr "Buka masalah" + +msgid "Launch" +msgstr "Meluncurkan" + +msgid "Fullscreen mode" +msgstr "Mode layar penuh" + +msgid "Edit this page" +msgstr "Edit halaman ini" + +msgid "By the" +msgstr "Oleh" + +msgid "next page" +msgstr "halaman selanjutnya" diff --git a/_static/locales/it/LC_MESSAGES/booktheme.mo b/_static/locales/it/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..53ba476e Binary files /dev/null and b/_static/locales/it/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/it/LC_MESSAGES/booktheme.po b/_static/locales/it/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..36fca59f --- /dev/null +++ b/_static/locales/it/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Stampa in PDF" + +msgid "Theme by the" +msgstr "Tema di" + +msgid "Download source file" +msgstr "Scarica il file sorgente" + +msgid "open issue" +msgstr "questione aperta" + +msgid "Contents" +msgstr "Contenuti" + +msgid "previous page" +msgstr "pagina precedente" + +msgid "Download notebook file" +msgstr "Scarica il file del taccuino" + +msgid "Copyright" +msgstr "Diritto d'autore" + +msgid "Download this page" +msgstr "Scarica questa pagina" + +msgid "Source repository" +msgstr "Repository di origine" + +msgid "By" +msgstr "Di" + +msgid "repository" +msgstr "repository" + +msgid "Last updated on" +msgstr "Ultimo aggiornamento il" + +msgid "Toggle navigation" +msgstr "Attiva / disattiva la navigazione" + +msgid "Sphinx Book Theme" +msgstr "Tema del libro della Sfinge" + +msgid "suggest edit" +msgstr "suggerisci modifica" + +msgid "Open an issue" +msgstr "Apri un problema" + +msgid "Launch" +msgstr "Lanciare" + +msgid "Fullscreen mode" +msgstr "Modalità schermo intero" + +msgid "Edit this page" +msgstr "Modifica questa pagina" + +msgid "By the" +msgstr "Dal" + +msgid "next page" +msgstr "pagina successiva" diff --git a/_static/locales/iw/LC_MESSAGES/booktheme.mo b/_static/locales/iw/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..a45c6575 Binary files /dev/null and b/_static/locales/iw/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/iw/LC_MESSAGES/booktheme.po b/_static/locales/iw/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..dede9cb0 --- /dev/null +++ b/_static/locales/iw/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: iw\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "הדפס לקובץ PDF" + +msgid "Theme by the" +msgstr "נושא מאת" + +msgid "Download source file" +msgstr "הורד את קובץ המקור" + +msgid "open issue" +msgstr "בעיה פתוחה" + +msgid "Contents" +msgstr "תוכן" + +msgid "previous page" +msgstr "עמוד קודם" + +msgid "Download notebook file" +msgstr "הורד קובץ מחברת" + +msgid "Copyright" +msgstr "זכויות יוצרים" + +msgid "Download this page" +msgstr "הורד דף זה" + +msgid "Source repository" +msgstr "מאגר המקורות" + +msgid "By" +msgstr "על ידי" + +msgid "repository" +msgstr "מאגר" + +msgid "Last updated on" +msgstr "עודכן לאחרונה ב" + +msgid "Toggle navigation" +msgstr "החלף ניווט" + +msgid "Sphinx Book Theme" +msgstr "נושא ספר ספינקס" + +msgid "suggest edit" +msgstr "מציע לערוך" + +msgid "Open an issue" +msgstr "פתח גיליון" + +msgid "Launch" +msgstr "לְהַשִׁיק" + +msgid "Fullscreen mode" +msgstr "מצב מסך מלא" + +msgid "Edit this page" +msgstr "ערוך דף זה" + +msgid "By the" +msgstr "דרך" + +msgid "next page" +msgstr "עמוד הבא" diff --git a/_static/locales/ja/LC_MESSAGES/booktheme.mo b/_static/locales/ja/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..1cefd29c Binary files /dev/null and b/_static/locales/ja/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ja/LC_MESSAGES/booktheme.po b/_static/locales/ja/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..2615f0d8 --- /dev/null +++ b/_static/locales/ja/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ja\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDFに印刷" + +msgid "Theme by the" +msgstr "のテーマ" + +msgid "Download source file" +msgstr "ソースファイルをダウンロード" + +msgid "open issue" +msgstr "未解決の問題" + +msgid "Contents" +msgstr "目次" + +msgid "previous page" +msgstr "前のページ" + +msgid "Download notebook file" +msgstr "ノートブックファイルをダウンロード" + +msgid "Copyright" +msgstr "Copyright" + +msgid "Download this page" +msgstr "このページをダウンロード" + +msgid "Source repository" +msgstr "ソースリポジトリ" + +msgid "By" +msgstr "著者" + +msgid "repository" +msgstr "リポジトリ" + +msgid "Last updated on" +msgstr "最終更新日" + +msgid "Toggle navigation" +msgstr "ナビゲーションを切り替え" + +msgid "Sphinx Book Theme" +msgstr "スフィンクスの本のテーマ" + +msgid "suggest edit" +msgstr "編集を提案する" + +msgid "Open an issue" +msgstr "問題を報告" + +msgid "Launch" +msgstr "起動" + +msgid "Fullscreen mode" +msgstr "全画面モード" + +msgid "Edit this page" +msgstr "このページを編集" + +msgid "By the" +msgstr "によって" + +msgid "next page" +msgstr "次のページ" diff --git a/_static/locales/ko/LC_MESSAGES/booktheme.mo b/_static/locales/ko/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..06c7ec93 Binary files /dev/null and b/_static/locales/ko/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ko/LC_MESSAGES/booktheme.po b/_static/locales/ko/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..c9e13a42 --- /dev/null +++ b/_static/locales/ko/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ko\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDF로 인쇄" + +msgid "Theme by the" +msgstr "테마별" + +msgid "Download source file" +msgstr "소스 파일 다운로드" + +msgid "open issue" +msgstr "열린 문제" + +msgid "Contents" +msgstr "내용" + +msgid "previous page" +msgstr "이전 페이지" + +msgid "Download notebook file" +msgstr "노트북 파일 다운로드" + +msgid "Copyright" +msgstr "저작권" + +msgid "Download this page" +msgstr "이 페이지 다운로드" + +msgid "Source repository" +msgstr "소스 저장소" + +msgid "By" +msgstr "으로" + +msgid "repository" +msgstr "저장소" + +msgid "Last updated on" +msgstr "마지막 업데이트" + +msgid "Toggle navigation" +msgstr "탐색 전환" + +msgid "Sphinx Book Theme" +msgstr "스핑크스 도서 테마" + +msgid "suggest edit" +msgstr "편집 제안" + +msgid "Open an issue" +msgstr "이슈 열기" + +msgid "Launch" +msgstr "시작하다" + +msgid "Fullscreen mode" +msgstr "전체 화면으로보기" + +msgid "Edit this page" +msgstr "이 페이지 편집" + +msgid "By the" +msgstr "에 의해" + +msgid "next page" +msgstr "다음 페이지" diff --git a/_static/locales/lt/LC_MESSAGES/booktheme.mo b/_static/locales/lt/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..4468ba04 Binary files /dev/null and b/_static/locales/lt/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/lt/LC_MESSAGES/booktheme.po b/_static/locales/lt/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..35eabd95 --- /dev/null +++ b/_static/locales/lt/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Spausdinti į PDF" + +msgid "Theme by the" +msgstr "Tema" + +msgid "Download source file" +msgstr "Atsisiųsti šaltinio failą" + +msgid "open issue" +msgstr "atviras klausimas" + +msgid "Contents" +msgstr "Turinys" + +msgid "previous page" +msgstr "Ankstesnis puslapis" + +msgid "Download notebook file" +msgstr "Atsisiųsti nešiojamojo kompiuterio failą" + +msgid "Copyright" +msgstr "Autorių teisės" + +msgid "Download this page" +msgstr "Atsisiųskite šį puslapį" + +msgid "Source repository" +msgstr "Šaltinio saugykla" + +msgid "By" +msgstr "Iki" + +msgid "repository" +msgstr "saugykla" + +msgid "Last updated on" +msgstr "Paskutinį kartą atnaujinta" + +msgid "Toggle navigation" +msgstr "Perjungti naršymą" + +msgid "Sphinx Book Theme" +msgstr "Sfinkso knygos tema" + +msgid "suggest edit" +msgstr "pasiūlyti redaguoti" + +msgid "Open an issue" +msgstr "Atidarykite problemą" + +msgid "Launch" +msgstr "Paleiskite" + +msgid "Fullscreen mode" +msgstr "Pilno ekrano režimas" + +msgid "Edit this page" +msgstr "Redaguoti šį puslapį" + +msgid "By the" +msgstr "Prie" + +msgid "next page" +msgstr "Kitas puslapis" diff --git a/_static/locales/lv/LC_MESSAGES/booktheme.mo b/_static/locales/lv/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..74aa4d89 Binary files /dev/null and b/_static/locales/lv/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/lv/LC_MESSAGES/booktheme.po b/_static/locales/lv/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..ee1bd08d --- /dev/null +++ b/_static/locales/lv/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Drukāt PDF formātā" + +msgid "Theme by the" +msgstr "Autora tēma" + +msgid "Download source file" +msgstr "Lejupielādēt avota failu" + +msgid "open issue" +msgstr "atklāts jautājums" + +msgid "Contents" +msgstr "Saturs" + +msgid "previous page" +msgstr "iepriekšējā lapa" + +msgid "Download notebook file" +msgstr "Lejupielādēt piezīmju grāmatiņu" + +msgid "Copyright" +msgstr "Autortiesības" + +msgid "Download this page" +msgstr "Lejupielādējiet šo lapu" + +msgid "Source repository" +msgstr "Avota krātuve" + +msgid "By" +msgstr "Autors" + +msgid "repository" +msgstr "krātuve" + +msgid "Last updated on" +msgstr "Pēdējoreiz atjaunināts" + +msgid "Toggle navigation" +msgstr "Pārslēgt navigāciju" + +msgid "Sphinx Book Theme" +msgstr "Sfinksa grāmatas tēma" + +msgid "suggest edit" +msgstr "ieteikt rediģēt" + +msgid "Open an issue" +msgstr "Atveriet problēmu" + +msgid "Launch" +msgstr "Uzsākt" + +msgid "Fullscreen mode" +msgstr "Pilnekrāna režīms" + +msgid "Edit this page" +msgstr "Rediģēt šo lapu" + +msgid "By the" +msgstr "Ar" + +msgid "next page" +msgstr "nākamā lapaspuse" diff --git a/_static/locales/ml/LC_MESSAGES/booktheme.mo b/_static/locales/ml/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..2736e8fc Binary files /dev/null and b/_static/locales/ml/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ml/LC_MESSAGES/booktheme.po b/_static/locales/ml/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..d471277d --- /dev/null +++ b/_static/locales/ml/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ml\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDF- ലേക്ക് പ്രിന്റുചെയ്യുക" + +msgid "Theme by the" +msgstr "പ്രമേയം" + +msgid "Download source file" +msgstr "ഉറവിട ഫയൽ ഡൗൺലോഡുചെയ്യുക" + +msgid "open issue" +msgstr "തുറന്ന പ്രശ്നം" + +msgid "previous page" +msgstr "മുൻപത്തെ താൾ" + +msgid "Download notebook file" +msgstr "നോട്ട്ബുക്ക് ഫയൽ ഡൺലോഡ് ചെയ്യുക" + +msgid "Copyright" +msgstr "പകർപ്പവകാശം" + +msgid "Download this page" +msgstr "ഈ പേജ് ഡൗൺലോഡുചെയ്യുക" + +msgid "Source repository" +msgstr "ഉറവിട ശേഖരം" + +msgid "By" +msgstr "എഴുതിയത്" + +msgid "Last updated on" +msgstr "അവസാനം അപ്‌ഡേറ്റുചെയ്‌തത്" + +msgid "Toggle navigation" +msgstr "നാവിഗേഷൻ ടോഗിൾ ചെയ്യുക" + +msgid "Sphinx Book Theme" +msgstr "സ്ഫിങ്ക്സ് പുസ്തക തീം" + +msgid "suggest edit" +msgstr "എഡിറ്റുചെയ്യാൻ നിർദ്ദേശിക്കുക" + +msgid "Open an issue" +msgstr "ഒരു പ്രശ്നം തുറക്കുക" + +msgid "Launch" +msgstr "സമാരംഭിക്കുക" + +msgid "Edit this page" +msgstr "ഈ പേജ് എഡിറ്റുചെയ്യുക" + +msgid "By the" +msgstr "എഴുതിയത്" + +msgid "next page" +msgstr "അടുത്ത പേജ്" diff --git a/_static/locales/mr/LC_MESSAGES/booktheme.mo b/_static/locales/mr/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..fe530100 Binary files /dev/null and b/_static/locales/mr/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/mr/LC_MESSAGES/booktheme.po b/_static/locales/mr/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..f3694acf --- /dev/null +++ b/_static/locales/mr/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: mr\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "पीडीएफवर मुद्रित करा" + +msgid "Theme by the" +msgstr "द्वारा थीम" + +msgid "Download source file" +msgstr "स्त्रोत फाइल डाउनलोड करा" + +msgid "open issue" +msgstr "खुला मुद्दा" + +msgid "previous page" +msgstr "मागील पान" + +msgid "Download notebook file" +msgstr "नोटबुक फाईल डाउनलोड करा" + +msgid "Copyright" +msgstr "कॉपीराइट" + +msgid "Download this page" +msgstr "हे पृष्ठ डाउनलोड करा" + +msgid "Source repository" +msgstr "स्त्रोत भांडार" + +msgid "By" +msgstr "द्वारा" + +msgid "Last updated on" +msgstr "अखेरचे अद्यतनित" + +msgid "Toggle navigation" +msgstr "नेव्हिगेशन टॉगल करा" + +msgid "Sphinx Book Theme" +msgstr "स्फिंक्स बुक थीम" + +msgid "suggest edit" +msgstr "संपादन सुचवा" + +msgid "Open an issue" +msgstr "एक मुद्दा उघडा" + +msgid "Launch" +msgstr "लाँच करा" + +msgid "Edit this page" +msgstr "हे पृष्ठ संपादित करा" + +msgid "By the" +msgstr "द्वारा" + +msgid "next page" +msgstr "पुढील पृष्ठ" diff --git a/_static/locales/ms/LC_MESSAGES/booktheme.mo b/_static/locales/ms/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..f02603fa Binary files /dev/null and b/_static/locales/ms/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ms/LC_MESSAGES/booktheme.po b/_static/locales/ms/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..65b7c602 --- /dev/null +++ b/_static/locales/ms/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ms\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Cetak ke PDF" + +msgid "Theme by the" +msgstr "Tema oleh" + +msgid "Download source file" +msgstr "Muat turun fail sumber" + +msgid "open issue" +msgstr "isu terbuka" + +msgid "previous page" +msgstr "halaman sebelumnya" + +msgid "Download notebook file" +msgstr "Muat turun fail buku nota" + +msgid "Copyright" +msgstr "hak cipta" + +msgid "Download this page" +msgstr "Muat turun halaman ini" + +msgid "Source repository" +msgstr "Repositori sumber" + +msgid "By" +msgstr "Oleh" + +msgid "Last updated on" +msgstr "Terakhir dikemas kini pada" + +msgid "Toggle navigation" +msgstr "Togol navigasi" + +msgid "Sphinx Book Theme" +msgstr "Tema Buku Sphinx" + +msgid "suggest edit" +msgstr "cadangkan edit" + +msgid "Open an issue" +msgstr "Buka masalah" + +msgid "Launch" +msgstr "Lancarkan" + +msgid "Edit this page" +msgstr "Edit halaman ini" + +msgid "By the" +msgstr "Oleh" + +msgid "next page" +msgstr "muka surat seterusnya" diff --git a/_static/locales/nl/LC_MESSAGES/booktheme.mo b/_static/locales/nl/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..e59e7ecb Binary files /dev/null and b/_static/locales/nl/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/nl/LC_MESSAGES/booktheme.po b/_static/locales/nl/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..71bd1cda --- /dev/null +++ b/_static/locales/nl/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Afdrukken naar pdf" + +msgid "Theme by the" +msgstr "Thema door de" + +msgid "Download source file" +msgstr "Download het bronbestand" + +msgid "open issue" +msgstr "open probleem" + +msgid "Contents" +msgstr "Inhoud" + +msgid "previous page" +msgstr "vorige pagina" + +msgid "Download notebook file" +msgstr "Download notebookbestand" + +msgid "Copyright" +msgstr "auteursrechten" + +msgid "Download this page" +msgstr "Download deze pagina" + +msgid "Source repository" +msgstr "Bronopslagplaats" + +msgid "By" +msgstr "Door" + +msgid "repository" +msgstr "repository" + +msgid "Last updated on" +msgstr "Laatst geupdate op" + +msgid "Toggle navigation" +msgstr "Schakel navigatie" + +msgid "Sphinx Book Theme" +msgstr "Sphinx-boekthema" + +msgid "suggest edit" +msgstr "suggereren bewerken" + +msgid "Open an issue" +msgstr "Open een probleem" + +msgid "Launch" +msgstr "Lancering" + +msgid "Fullscreen mode" +msgstr "Volledig scherm" + +msgid "Edit this page" +msgstr "bewerk deze pagina" + +msgid "By the" +msgstr "Door de" + +msgid "next page" +msgstr "volgende bladzijde" diff --git a/_static/locales/no/LC_MESSAGES/booktheme.mo b/_static/locales/no/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..6cd15c88 Binary files /dev/null and b/_static/locales/no/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/no/LC_MESSAGES/booktheme.po b/_static/locales/no/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..b21346a5 --- /dev/null +++ b/_static/locales/no/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: no\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Skriv ut til PDF" + +msgid "Theme by the" +msgstr "Tema av" + +msgid "Download source file" +msgstr "Last ned kildefilen" + +msgid "open issue" +msgstr "åpent nummer" + +msgid "Contents" +msgstr "Innhold" + +msgid "previous page" +msgstr "forrige side" + +msgid "Download notebook file" +msgstr "Last ned notatbokfilen" + +msgid "Copyright" +msgstr "opphavsrett" + +msgid "Download this page" +msgstr "Last ned denne siden" + +msgid "Source repository" +msgstr "Kildedepot" + +msgid "By" +msgstr "Av" + +msgid "repository" +msgstr "oppbevaringssted" + +msgid "Last updated on" +msgstr "Sist oppdatert den" + +msgid "Toggle navigation" +msgstr "Bytt navigasjon" + +msgid "Sphinx Book Theme" +msgstr "Sphinx boktema" + +msgid "suggest edit" +msgstr "foreslå redigering" + +msgid "Open an issue" +msgstr "Åpne et problem" + +msgid "Launch" +msgstr "Start" + +msgid "Fullscreen mode" +msgstr "Fullskjerm-modus" + +msgid "Edit this page" +msgstr "Rediger denne siden" + +msgid "By the" +msgstr "Ved" + +msgid "next page" +msgstr "neste side" diff --git a/_static/locales/pl/LC_MESSAGES/booktheme.mo b/_static/locales/pl/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..9ebb584f Binary files /dev/null and b/_static/locales/pl/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/pl/LC_MESSAGES/booktheme.po b/_static/locales/pl/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..1b7233f4 --- /dev/null +++ b/_static/locales/pl/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Drukuj do PDF" + +msgid "Theme by the" +msgstr "Motyw autorstwa" + +msgid "Download source file" +msgstr "Pobierz plik źródłowy" + +msgid "open issue" +msgstr "otwarty problem" + +msgid "Contents" +msgstr "Zawartość" + +msgid "previous page" +msgstr "Poprzednia strona" + +msgid "Download notebook file" +msgstr "Pobierz plik notatnika" + +msgid "Copyright" +msgstr "prawa autorskie" + +msgid "Download this page" +msgstr "Pobierz tę stronę" + +msgid "Source repository" +msgstr "Repozytorium źródłowe" + +msgid "By" +msgstr "Przez" + +msgid "repository" +msgstr "magazyn" + +msgid "Last updated on" +msgstr "Ostatnia aktualizacja" + +msgid "Toggle navigation" +msgstr "Przełącz nawigację" + +msgid "Sphinx Book Theme" +msgstr "Motyw książki Sphinx" + +msgid "suggest edit" +msgstr "zaproponuj edycję" + +msgid "Open an issue" +msgstr "Otwórz problem" + +msgid "Launch" +msgstr "Uruchomić" + +msgid "Fullscreen mode" +msgstr "Pełny ekran" + +msgid "Edit this page" +msgstr "Edytuj tę strone" + +msgid "By the" +msgstr "Przez" + +msgid "next page" +msgstr "Następna strona" diff --git a/_static/locales/pt/LC_MESSAGES/booktheme.mo b/_static/locales/pt/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..d0ddb872 Binary files /dev/null and b/_static/locales/pt/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/pt/LC_MESSAGES/booktheme.po b/_static/locales/pt/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..1b27314d --- /dev/null +++ b/_static/locales/pt/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Imprimir em PDF" + +msgid "Theme by the" +msgstr "Tema por" + +msgid "Download source file" +msgstr "Baixar arquivo fonte" + +msgid "open issue" +msgstr "questão aberta" + +msgid "Contents" +msgstr "Conteúdo" + +msgid "previous page" +msgstr "página anterior" + +msgid "Download notebook file" +msgstr "Baixar arquivo de notebook" + +msgid "Copyright" +msgstr "direito autoral" + +msgid "Download this page" +msgstr "Baixe esta página" + +msgid "Source repository" +msgstr "Repositório fonte" + +msgid "By" +msgstr "De" + +msgid "repository" +msgstr "repositório" + +msgid "Last updated on" +msgstr "Última atualização em" + +msgid "Toggle navigation" +msgstr "Alternar de navegação" + +msgid "Sphinx Book Theme" +msgstr "Tema do livro Sphinx" + +msgid "suggest edit" +msgstr "sugerir edição" + +msgid "Open an issue" +msgstr "Abra um problema" + +msgid "Launch" +msgstr "Lançamento" + +msgid "Fullscreen mode" +msgstr "Modo tela cheia" + +msgid "Edit this page" +msgstr "Edite essa página" + +msgid "By the" +msgstr "Pelo" + +msgid "next page" +msgstr "próxima página" diff --git a/_static/locales/ro/LC_MESSAGES/booktheme.mo b/_static/locales/ro/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..3c36ab1d Binary files /dev/null and b/_static/locales/ro/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ro/LC_MESSAGES/booktheme.po b/_static/locales/ro/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..1783ad2c --- /dev/null +++ b/_static/locales/ro/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ro\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Imprimați în PDF" + +msgid "Theme by the" +msgstr "Tema de" + +msgid "Download source file" +msgstr "Descărcați fișierul sursă" + +msgid "open issue" +msgstr "problema deschisă" + +msgid "Contents" +msgstr "Cuprins" + +msgid "previous page" +msgstr "pagina anterioară" + +msgid "Download notebook file" +msgstr "Descărcați fișierul notebook" + +msgid "Copyright" +msgstr "Drepturi de autor" + +msgid "Download this page" +msgstr "Descarcă această pagină" + +msgid "Source repository" +msgstr "Depozit sursă" + +msgid "By" +msgstr "De" + +msgid "repository" +msgstr "repertoriu" + +msgid "Last updated on" +msgstr "Ultima actualizare la" + +msgid "Toggle navigation" +msgstr "Comutare navigare" + +msgid "Sphinx Book Theme" +msgstr "Tema Sphinx Book" + +msgid "suggest edit" +msgstr "sugerează editare" + +msgid "Open an issue" +msgstr "Deschideți o problemă" + +msgid "Launch" +msgstr "Lansa" + +msgid "Fullscreen mode" +msgstr "Modul ecran întreg" + +msgid "Edit this page" +msgstr "Editați această pagină" + +msgid "By the" +msgstr "Langa" + +msgid "next page" +msgstr "pagina următoare" diff --git a/_static/locales/ru/LC_MESSAGES/booktheme.mo b/_static/locales/ru/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..6b8ca41f Binary files /dev/null and b/_static/locales/ru/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ru/LC_MESSAGES/booktheme.po b/_static/locales/ru/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..b1176b7a --- /dev/null +++ b/_static/locales/ru/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ru\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Распечатать в PDF" + +msgid "Theme by the" +msgstr "Тема от" + +msgid "Download source file" +msgstr "Скачать исходный файл" + +msgid "open issue" +msgstr "открытый вопрос" + +msgid "Contents" +msgstr "Содержание" + +msgid "previous page" +msgstr "Предыдущая страница" + +msgid "Download notebook file" +msgstr "Скачать файл записной книжки" + +msgid "Copyright" +msgstr "авторское право" + +msgid "Download this page" +msgstr "Загрузите эту страницу" + +msgid "Source repository" +msgstr "Исходный репозиторий" + +msgid "By" +msgstr "По" + +msgid "repository" +msgstr "хранилище" + +msgid "Last updated on" +msgstr "Последнее обновление" + +msgid "Toggle navigation" +msgstr "Переключить навигацию" + +msgid "Sphinx Book Theme" +msgstr "Тема книги Сфинкс" + +msgid "suggest edit" +msgstr "предложить редактировать" + +msgid "Open an issue" +msgstr "Открыть вопрос" + +msgid "Launch" +msgstr "Запуск" + +msgid "Fullscreen mode" +msgstr "Полноэкранный режим" + +msgid "Edit this page" +msgstr "Редактировать эту страницу" + +msgid "By the" +msgstr "Посредством" + +msgid "next page" +msgstr "Следующая страница" diff --git a/_static/locales/sk/LC_MESSAGES/booktheme.mo b/_static/locales/sk/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..59bd0ddf Binary files /dev/null and b/_static/locales/sk/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/sk/LC_MESSAGES/booktheme.po b/_static/locales/sk/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..65012881 --- /dev/null +++ b/_static/locales/sk/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sk\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Tlač do PDF" + +msgid "Theme by the" +msgstr "Téma od" + +msgid "Download source file" +msgstr "Stiahnite si zdrojový súbor" + +msgid "open issue" +msgstr "otvorené vydanie" + +msgid "Contents" +msgstr "Obsah" + +msgid "previous page" +msgstr "predchádzajúca strana" + +msgid "Download notebook file" +msgstr "Stiahnite si zošit" + +msgid "Copyright" +msgstr "Autorské práva" + +msgid "Download this page" +msgstr "Stiahnite si túto stránku" + +msgid "Source repository" +msgstr "Zdrojové úložisko" + +msgid "By" +msgstr "Autor:" + +msgid "repository" +msgstr "Úložisko" + +msgid "Last updated on" +msgstr "Posledná aktualizácia dňa" + +msgid "Toggle navigation" +msgstr "Prepnúť navigáciu" + +msgid "Sphinx Book Theme" +msgstr "Téma knihy Sfinga" + +msgid "suggest edit" +msgstr "navrhnúť úpravu" + +msgid "Open an issue" +msgstr "Otvorte problém" + +msgid "Launch" +msgstr "Spustiť" + +msgid "Fullscreen mode" +msgstr "Režim celej obrazovky" + +msgid "Edit this page" +msgstr "Upraviť túto stránku" + +msgid "By the" +msgstr "Podľa" + +msgid "next page" +msgstr "ďalšia strana" diff --git a/_static/locales/sl/LC_MESSAGES/booktheme.mo b/_static/locales/sl/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..87bf26de Binary files /dev/null and b/_static/locales/sl/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/sl/LC_MESSAGES/booktheme.po b/_static/locales/sl/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..3c7e3a86 --- /dev/null +++ b/_static/locales/sl/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Natisni v PDF" + +msgid "Theme by the" +msgstr "Tema avtorja" + +msgid "Download source file" +msgstr "Prenesite izvorno datoteko" + +msgid "open issue" +msgstr "odprto vprašanje" + +msgid "Contents" +msgstr "Vsebina" + +msgid "previous page" +msgstr "Prejšnja stran" + +msgid "Download notebook file" +msgstr "Prenesite datoteko zvezka" + +msgid "Copyright" +msgstr "avtorske pravice" + +msgid "Download this page" +msgstr "Prenesite to stran" + +msgid "Source repository" +msgstr "Izvorno skladišče" + +msgid "By" +msgstr "Avtor" + +msgid "repository" +msgstr "odlagališče" + +msgid "Last updated on" +msgstr "Nazadnje posodobljeno dne" + +msgid "Toggle navigation" +msgstr "Preklopi navigacijo" + +msgid "Sphinx Book Theme" +msgstr "Tema knjige Sphinx" + +msgid "suggest edit" +msgstr "predlagajte urejanje" + +msgid "Open an issue" +msgstr "Odprite številko" + +msgid "Launch" +msgstr "Kosilo" + +msgid "Fullscreen mode" +msgstr "Celozaslonski način" + +msgid "Edit this page" +msgstr "Uredite to stran" + +msgid "By the" +msgstr "Avtor" + +msgid "next page" +msgstr "Naslednja stran" diff --git a/_static/locales/sr/LC_MESSAGES/booktheme.mo b/_static/locales/sr/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..ec740f48 Binary files /dev/null and b/_static/locales/sr/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/sr/LC_MESSAGES/booktheme.po b/_static/locales/sr/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..773b8ada --- /dev/null +++ b/_static/locales/sr/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sr\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Испис у ПДФ" + +msgid "Theme by the" +msgstr "Тхеме би" + +msgid "Download source file" +msgstr "Преузми изворну датотеку" + +msgid "open issue" +msgstr "отворено издање" + +msgid "Contents" +msgstr "Садржај" + +msgid "previous page" +msgstr "Претходна страница" + +msgid "Download notebook file" +msgstr "Преузмите датотеку бележнице" + +msgid "Copyright" +msgstr "Ауторско право" + +msgid "Download this page" +msgstr "Преузмите ову страницу" + +msgid "Source repository" +msgstr "Изворно спремиште" + +msgid "By" +msgstr "Од стране" + +msgid "repository" +msgstr "спремиште" + +msgid "Last updated on" +msgstr "Последње ажурирање" + +msgid "Toggle navigation" +msgstr "Укључи / искључи навигацију" + +msgid "Sphinx Book Theme" +msgstr "Тема књиге Спхинк" + +msgid "suggest edit" +msgstr "предложи уређивање" + +msgid "Open an issue" +msgstr "Отворите издање" + +msgid "Launch" +msgstr "Лансирање" + +msgid "Fullscreen mode" +msgstr "Режим целог екрана" + +msgid "Edit this page" +msgstr "Уредите ову страницу" + +msgid "By the" +msgstr "Од" + +msgid "next page" +msgstr "Следећа страна" diff --git a/_static/locales/sv/LC_MESSAGES/booktheme.mo b/_static/locales/sv/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..b07dc76f Binary files /dev/null and b/_static/locales/sv/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/sv/LC_MESSAGES/booktheme.po b/_static/locales/sv/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..bcac54c0 --- /dev/null +++ b/_static/locales/sv/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Skriv ut till PDF" + +msgid "Theme by the" +msgstr "Tema av" + +msgid "Download source file" +msgstr "Ladda ner källfil" + +msgid "open issue" +msgstr "öppna problemrapport" + +msgid "Contents" +msgstr "Innehåll" + +msgid "previous page" +msgstr "föregående sida" + +msgid "Download notebook file" +msgstr "Ladda ner notebook-fil" + +msgid "Copyright" +msgstr "Upphovsrätt" + +msgid "Download this page" +msgstr "Ladda ner den här sidan" + +msgid "Source repository" +msgstr "Källkodsrepositorium" + +msgid "By" +msgstr "Av" + +msgid "repository" +msgstr "repositorium" + +msgid "Last updated on" +msgstr "Senast uppdaterad den" + +msgid "Toggle navigation" +msgstr "Växla navigering" + +msgid "Sphinx Book Theme" +msgstr "Sphinx Boktema" + +msgid "suggest edit" +msgstr "föreslå ändring" + +msgid "Open an issue" +msgstr "Öppna en problemrapport" + +msgid "Launch" +msgstr "Öppna" + +msgid "Fullscreen mode" +msgstr "Fullskärmsläge" + +msgid "Edit this page" +msgstr "Redigera den här sidan" + +msgid "By the" +msgstr "Av den" + +msgid "next page" +msgstr "nästa sida" diff --git a/_static/locales/ta/LC_MESSAGES/booktheme.mo b/_static/locales/ta/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..29f52e1f Binary files /dev/null and b/_static/locales/ta/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ta/LC_MESSAGES/booktheme.po b/_static/locales/ta/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..b48bdfaf --- /dev/null +++ b/_static/locales/ta/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ta\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDF இல் அச்சிடுக" + +msgid "Theme by the" +msgstr "வழங்கிய தீம்" + +msgid "Download source file" +msgstr "மூல கோப்பைப் பதிவிறக்குக" + +msgid "open issue" +msgstr "திறந்த பிரச்சினை" + +msgid "previous page" +msgstr "முந்தைய பக்கம்" + +msgid "Download notebook file" +msgstr "நோட்புக் கோப்பைப் பதிவிறக்கவும்" + +msgid "Copyright" +msgstr "பதிப்புரிமை" + +msgid "Download this page" +msgstr "இந்தப் பக்கத்தைப் பதிவிறக்கவும்" + +msgid "Source repository" +msgstr "மூல களஞ்சியம்" + +msgid "By" +msgstr "வழங்கியவர்" + +msgid "Last updated on" +msgstr "கடைசியாக புதுப்பிக்கப்பட்டது" + +msgid "Toggle navigation" +msgstr "வழிசெலுத்தலை நிலைமாற்று" + +msgid "Sphinx Book Theme" +msgstr "ஸ்பிங்க்ஸ் புத்தக தீம்" + +msgid "suggest edit" +msgstr "திருத்த பரிந்துரைக்கவும்" + +msgid "Open an issue" +msgstr "சிக்கலைத் திறக்கவும்" + +msgid "Launch" +msgstr "தொடங்க" + +msgid "Edit this page" +msgstr "இந்தப் பக்கத்தைத் திருத்தவும்" + +msgid "By the" +msgstr "மூலம்" + +msgid "next page" +msgstr "அடுத்த பக்கம்" diff --git a/_static/locales/te/LC_MESSAGES/booktheme.mo b/_static/locales/te/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..0a5f4b46 Binary files /dev/null and b/_static/locales/te/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/te/LC_MESSAGES/booktheme.po b/_static/locales/te/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..952278f5 --- /dev/null +++ b/_static/locales/te/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: te\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDF కి ముద్రించండి" + +msgid "Theme by the" +msgstr "ద్వారా థీమ్" + +msgid "Download source file" +msgstr "మూల ఫైల్‌ను డౌన్‌లోడ్ చేయండి" + +msgid "open issue" +msgstr "ఓపెన్ ఇష్యూ" + +msgid "previous page" +msgstr "ముందు పేజి" + +msgid "Download notebook file" +msgstr "నోట్బుక్ ఫైల్ను డౌన్లోడ్ చేయండి" + +msgid "Copyright" +msgstr "కాపీరైట్" + +msgid "Download this page" +msgstr "ఈ పేజీని డౌన్‌లోడ్ చేయండి" + +msgid "Source repository" +msgstr "మూల రిపోజిటరీ" + +msgid "By" +msgstr "ద్వారా" + +msgid "Last updated on" +msgstr "చివరిగా నవీకరించబడింది" + +msgid "Toggle navigation" +msgstr "నావిగేషన్‌ను టోగుల్ చేయండి" + +msgid "Sphinx Book Theme" +msgstr "సింహిక పుస్తక థీమ్" + +msgid "suggest edit" +msgstr "సవరించమని సూచించండి" + +msgid "Open an issue" +msgstr "సమస్యను తెరవండి" + +msgid "Launch" +msgstr "ప్రారంభించండి" + +msgid "Edit this page" +msgstr "ఈ పేజీని సవరించండి" + +msgid "By the" +msgstr "ద్వారా" + +msgid "next page" +msgstr "తరువాతి పేజీ" diff --git a/_static/locales/tg/LC_MESSAGES/booktheme.mo b/_static/locales/tg/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..b21c6c63 Binary files /dev/null and b/_static/locales/tg/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/tg/LC_MESSAGES/booktheme.po b/_static/locales/tg/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..c33dc421 --- /dev/null +++ b/_static/locales/tg/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tg\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Чоп ба PDF" + +msgid "Theme by the" +msgstr "Мавзӯъи аз" + +msgid "Download source file" +msgstr "Файли манбаъро зеркашӣ кунед" + +msgid "open issue" +msgstr "барориши кушод" + +msgid "Contents" +msgstr "Мундариҷа" + +msgid "previous page" +msgstr "саҳифаи қаблӣ" + +msgid "Download notebook file" +msgstr "Файли дафтарро зеркашӣ кунед" + +msgid "Copyright" +msgstr "Ҳуқуқи муаллиф" + +msgid "Download this page" +msgstr "Ин саҳифаро зеркашӣ кунед" + +msgid "Source repository" +msgstr "Анбори манбаъ" + +msgid "By" +msgstr "Бо" + +msgid "repository" +msgstr "анбор" + +msgid "Last updated on" +msgstr "Last навсозӣ дар" + +msgid "Toggle navigation" +msgstr "Гузаришро иваз кунед" + +msgid "Sphinx Book Theme" +msgstr "Сфинкс Мавзӯи китоб" + +msgid "suggest edit" +msgstr "пешниҳод вироиш" + +msgid "Open an issue" +msgstr "Масъаларо кушоед" + +msgid "Launch" +msgstr "Оғоз" + +msgid "Fullscreen mode" +msgstr "Ҳолати экрани пурра" + +msgid "Edit this page" +msgstr "Ин саҳифаро таҳрир кунед" + +msgid "By the" +msgstr "Бо" + +msgid "next page" +msgstr "саҳифаи оянда" diff --git a/_static/locales/th/LC_MESSAGES/booktheme.mo b/_static/locales/th/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..abede98a Binary files /dev/null and b/_static/locales/th/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/th/LC_MESSAGES/booktheme.po b/_static/locales/th/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..9d24294a --- /dev/null +++ b/_static/locales/th/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: th\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "พิมพ์เป็น PDF" + +msgid "Theme by the" +msgstr "ธีมโดย" + +msgid "Download source file" +msgstr "ดาวน์โหลดไฟล์ต้นฉบับ" + +msgid "open issue" +msgstr "เปิดปัญหา" + +msgid "Contents" +msgstr "สารบัญ" + +msgid "previous page" +msgstr "หน้าที่แล้ว" + +msgid "Download notebook file" +msgstr "ดาวน์โหลดไฟล์สมุดบันทึก" + +msgid "Copyright" +msgstr "ลิขสิทธิ์" + +msgid "Download this page" +msgstr "ดาวน์โหลดหน้านี้" + +msgid "Source repository" +msgstr "ที่เก็บซอร์ส" + +msgid "By" +msgstr "โดย" + +msgid "repository" +msgstr "ที่เก็บ" + +msgid "Last updated on" +msgstr "ปรับปรุงล่าสุดเมื่อ" + +msgid "Toggle navigation" +msgstr "ไม่ต้องสลับช่องทาง" + +msgid "Sphinx Book Theme" +msgstr "ธีมหนังสือสฟิงซ์" + +msgid "suggest edit" +msgstr "แนะนำแก้ไข" + +msgid "Open an issue" +msgstr "เปิดปัญหา" + +msgid "Launch" +msgstr "เปิด" + +msgid "Fullscreen mode" +msgstr "โหมดเต็มหน้าจอ" + +msgid "Edit this page" +msgstr "แก้ไขหน้านี้" + +msgid "By the" +msgstr "โดย" + +msgid "next page" +msgstr "หน้าต่อไป" diff --git a/_static/locales/tl/LC_MESSAGES/booktheme.mo b/_static/locales/tl/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..8df1b733 Binary files /dev/null and b/_static/locales/tl/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/tl/LC_MESSAGES/booktheme.po b/_static/locales/tl/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..20e0d07c --- /dev/null +++ b/_static/locales/tl/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "I-print sa PDF" + +msgid "Theme by the" +msgstr "Tema ng" + +msgid "Download source file" +msgstr "Mag-download ng file ng pinagmulan" + +msgid "open issue" +msgstr "bukas na isyu" + +msgid "previous page" +msgstr "Nakaraang pahina" + +msgid "Download notebook file" +msgstr "Mag-download ng file ng notebook" + +msgid "Copyright" +msgstr "Copyright" + +msgid "Download this page" +msgstr "I-download ang pahinang ito" + +msgid "Source repository" +msgstr "Pinagmulan ng imbakan" + +msgid "By" +msgstr "Ni" + +msgid "Last updated on" +msgstr "Huling na-update noong" + +msgid "Toggle navigation" +msgstr "I-toggle ang pag-navigate" + +msgid "Sphinx Book Theme" +msgstr "Tema ng Sphinx Book" + +msgid "suggest edit" +msgstr "iminumungkahi i-edit" + +msgid "Open an issue" +msgstr "Magbukas ng isyu" + +msgid "Launch" +msgstr "Ilunsad" + +msgid "Edit this page" +msgstr "I-edit ang pahinang ito" + +msgid "By the" +msgstr "Sa pamamagitan ng" + +msgid "next page" +msgstr "Susunod na pahina" diff --git a/_static/locales/tr/LC_MESSAGES/booktheme.mo b/_static/locales/tr/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..029ae18a Binary files /dev/null and b/_static/locales/tr/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/tr/LC_MESSAGES/booktheme.po b/_static/locales/tr/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..a77eb027 --- /dev/null +++ b/_static/locales/tr/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "PDF olarak yazdır" + +msgid "Theme by the" +msgstr "Tarafından tema" + +msgid "Download source file" +msgstr "Kaynak dosyayı indirin" + +msgid "open issue" +msgstr "Açık konu" + +msgid "Contents" +msgstr "İçindekiler" + +msgid "previous page" +msgstr "önceki sayfa" + +msgid "Download notebook file" +msgstr "Defter dosyasını indirin" + +msgid "Copyright" +msgstr "Telif hakkı" + +msgid "Download this page" +msgstr "Bu sayfayı indirin" + +msgid "Source repository" +msgstr "Kaynak kod deposu" + +msgid "By" +msgstr "Tarafından" + +msgid "repository" +msgstr "depo" + +msgid "Last updated on" +msgstr "Son güncelleme tarihi" + +msgid "Toggle navigation" +msgstr "Gezinmeyi değiştir" + +msgid "Sphinx Book Theme" +msgstr "Sfenks Kitap Teması" + +msgid "suggest edit" +msgstr "düzenleme öner" + +msgid "Open an issue" +msgstr "Bir sorunu açın" + +msgid "Launch" +msgstr "Başlatmak" + +msgid "Fullscreen mode" +msgstr "Tam ekran modu" + +msgid "Edit this page" +msgstr "Bu sayfayı düzenle" + +msgid "By the" +msgstr "Tarafından" + +msgid "next page" +msgstr "sonraki Sayfa" diff --git a/_static/locales/uk/LC_MESSAGES/booktheme.mo b/_static/locales/uk/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..16ab7890 Binary files /dev/null and b/_static/locales/uk/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/uk/LC_MESSAGES/booktheme.po b/_static/locales/uk/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..993dd078 --- /dev/null +++ b/_static/locales/uk/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: uk\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "Друк у форматі PDF" + +msgid "Theme by the" +msgstr "Тема від" + +msgid "Download source file" +msgstr "Завантажити вихідний файл" + +msgid "open issue" +msgstr "відкритий випуск" + +msgid "Contents" +msgstr "Зміст" + +msgid "previous page" +msgstr "Попередня сторінка" + +msgid "Download notebook file" +msgstr "Завантажте файл блокнота" + +msgid "Copyright" +msgstr "Авторське право" + +msgid "Download this page" +msgstr "Завантажте цю сторінку" + +msgid "Source repository" +msgstr "Джерело сховища" + +msgid "By" +msgstr "Автор" + +msgid "repository" +msgstr "сховище" + +msgid "Last updated on" +msgstr "Останнє оновлення:" + +msgid "Toggle navigation" +msgstr "Переключити навігацію" + +msgid "Sphinx Book Theme" +msgstr "Тема книги \"Сфінкс\"" + +msgid "suggest edit" +msgstr "запропонувати редагувати" + +msgid "Open an issue" +msgstr "Відкрийте випуск" + +msgid "Launch" +msgstr "Запуск" + +msgid "Fullscreen mode" +msgstr "Повноекранний режим" + +msgid "Edit this page" +msgstr "Редагувати цю сторінку" + +msgid "By the" +msgstr "По" + +msgid "next page" +msgstr "Наступна сторінка" diff --git a/_static/locales/ur/LC_MESSAGES/booktheme.mo b/_static/locales/ur/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..de8c84b9 Binary files /dev/null and b/_static/locales/ur/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/ur/LC_MESSAGES/booktheme.po b/_static/locales/ur/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..2f774267 --- /dev/null +++ b/_static/locales/ur/LC_MESSAGES/booktheme.po @@ -0,0 +1,66 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ur\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "پی ڈی ایف پرنٹ کریں" + +msgid "Theme by the" +msgstr "کے ذریعہ تھیم" + +msgid "Download source file" +msgstr "سورس فائل ڈاؤن لوڈ کریں" + +msgid "open issue" +msgstr "کھلا مسئلہ" + +msgid "previous page" +msgstr "سابقہ ​​صفحہ" + +msgid "Download notebook file" +msgstr "نوٹ بک فائل ڈاؤن لوڈ کریں" + +msgid "Copyright" +msgstr "کاپی رائٹ" + +msgid "Download this page" +msgstr "اس صفحے کو ڈاؤن لوڈ کریں" + +msgid "Source repository" +msgstr "ماخذ ذخیرہ" + +msgid "By" +msgstr "بذریعہ" + +msgid "Last updated on" +msgstr "آخری بار تازہ کاری ہوئی" + +msgid "Toggle navigation" +msgstr "نیویگیشن ٹوگل کریں" + +msgid "Sphinx Book Theme" +msgstr "سپنکس بک تھیم" + +msgid "suggest edit" +msgstr "ترمیم کی تجویز کریں" + +msgid "Open an issue" +msgstr "ایک مسئلہ کھولیں" + +msgid "Launch" +msgstr "لانچ کریں" + +msgid "Edit this page" +msgstr "اس صفحے میں ترمیم کریں" + +msgid "By the" +msgstr "کی طرف" + +msgid "next page" +msgstr "اگلا صفحہ" diff --git a/_static/locales/vi/LC_MESSAGES/booktheme.mo b/_static/locales/vi/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..2bb32555 Binary files /dev/null and b/_static/locales/vi/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/vi/LC_MESSAGES/booktheme.po b/_static/locales/vi/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..33159f3e --- /dev/null +++ b/_static/locales/vi/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: vi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "In sang PDF" + +msgid "Theme by the" +msgstr "Chủ đề của" + +msgid "Download source file" +msgstr "Tải xuống tệp nguồn" + +msgid "open issue" +msgstr "vấn đề mở" + +msgid "Contents" +msgstr "Nội dung" + +msgid "previous page" +msgstr "trang trước" + +msgid "Download notebook file" +msgstr "Tải xuống tệp sổ tay" + +msgid "Copyright" +msgstr "Bản quyền" + +msgid "Download this page" +msgstr "Tải xuống trang này" + +msgid "Source repository" +msgstr "Kho nguồn" + +msgid "By" +msgstr "Bởi" + +msgid "repository" +msgstr "kho" + +msgid "Last updated on" +msgstr "Cập nhật lần cuối vào" + +msgid "Toggle navigation" +msgstr "Chuyển đổi điều hướng thành" + +msgid "Sphinx Book Theme" +msgstr "Chủ đề sách nhân sư" + +msgid "suggest edit" +msgstr "đề nghị chỉnh sửa" + +msgid "Open an issue" +msgstr "Mở một vấn đề" + +msgid "Launch" +msgstr "Phóng" + +msgid "Fullscreen mode" +msgstr "Chế độ toàn màn hình" + +msgid "Edit this page" +msgstr "chỉnh sửa trang này" + +msgid "By the" +msgstr "Bằng" + +msgid "next page" +msgstr "Trang tiếp theo" diff --git a/_static/locales/zh_CN/LC_MESSAGES/booktheme.mo b/_static/locales/zh_CN/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..0e3235d0 Binary files /dev/null and b/_static/locales/zh_CN/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/zh_CN/LC_MESSAGES/booktheme.po b/_static/locales/zh_CN/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..2e519ef4 --- /dev/null +++ b/_static/locales/zh_CN/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "列印成 PDF" + +msgid "Theme by the" +msgstr "主题作者:" + +msgid "Download source file" +msgstr "下载源文件" + +msgid "open issue" +msgstr "创建议题" + +msgid "Contents" +msgstr "目录" + +msgid "previous page" +msgstr "上一页" + +msgid "Download notebook file" +msgstr "下载笔记本文件" + +msgid "Copyright" +msgstr "版权" + +msgid "Download this page" +msgstr "下载此页面" + +msgid "Source repository" +msgstr "源码库" + +msgid "By" +msgstr "作者:" + +msgid "repository" +msgstr "仓库" + +msgid "Last updated on" +msgstr "上次更新时间:" + +msgid "Toggle navigation" +msgstr "显示或隐藏导航栏" + +msgid "Sphinx Book Theme" +msgstr "Sphinx Book 主题" + +msgid "suggest edit" +msgstr "提出修改建议" + +msgid "Open an issue" +msgstr "创建议题" + +msgid "Launch" +msgstr "启动" + +msgid "Fullscreen mode" +msgstr "全屏模式" + +msgid "Edit this page" +msgstr "编辑此页面" + +msgid "By the" +msgstr "作者:" + +msgid "next page" +msgstr "下一页" diff --git a/_static/locales/zh_TW/LC_MESSAGES/booktheme.mo b/_static/locales/zh_TW/LC_MESSAGES/booktheme.mo new file mode 100644 index 00000000..9116fa95 Binary files /dev/null and b/_static/locales/zh_TW/LC_MESSAGES/booktheme.mo differ diff --git a/_static/locales/zh_TW/LC_MESSAGES/booktheme.po b/_static/locales/zh_TW/LC_MESSAGES/booktheme.po new file mode 100644 index 00000000..beecb076 --- /dev/null +++ b/_static/locales/zh_TW/LC_MESSAGES/booktheme.po @@ -0,0 +1,75 @@ + +msgid "" +msgstr "" +"Project-Id-Version: Sphinx-Book-Theme\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_TW\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Print to PDF" +msgstr "列印成 PDF" + +msgid "Theme by the" +msgstr "佈景主題作者:" + +msgid "Download source file" +msgstr "下載原始檔" + +msgid "open issue" +msgstr "公開的問題" + +msgid "Contents" +msgstr "目錄" + +msgid "previous page" +msgstr "上一頁" + +msgid "Download notebook file" +msgstr "下載 Notebook 檔案" + +msgid "Copyright" +msgstr "Copyright" + +msgid "Download this page" +msgstr "下載此頁面" + +msgid "Source repository" +msgstr "來源儲存庫" + +msgid "By" +msgstr "作者:" + +msgid "repository" +msgstr "儲存庫" + +msgid "Last updated on" +msgstr "最後更新時間:" + +msgid "Toggle navigation" +msgstr "顯示或隱藏導覽列" + +msgid "Sphinx Book Theme" +msgstr "Sphinx Book 佈景主題" + +msgid "suggest edit" +msgstr "提出修改建議" + +msgid "Open an issue" +msgstr "開啟議題" + +msgid "Launch" +msgstr "啟動" + +msgid "Fullscreen mode" +msgstr "全螢幕模式" + +msgid "Edit this page" +msgstr "編輯此頁面" + +msgid "By the" +msgstr "作者:" + +msgid "next page" +msgstr "下一頁" diff --git a/_static/minus.png b/_static/minus.png new file mode 100644 index 00000000..d96755fd Binary files /dev/null and b/_static/minus.png differ diff --git a/_static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css b/_static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css new file mode 100644 index 00000000..33566310 --- /dev/null +++ b/_static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css @@ -0,0 +1,2342 @@ +/* Variables */ +:root { + --mystnb-source-bg-color: #f7f7f7; + --mystnb-stdout-bg-color: #fcfcfc; + --mystnb-stderr-bg-color: #fdd; + --mystnb-traceback-bg-color: #fcfcfc; + --mystnb-source-border-color: #ccc; + --mystnb-source-margin-color: green; + --mystnb-stdout-border-color: #f7f7f7; + --mystnb-stderr-border-color: #f7f7f7; + --mystnb-traceback-border-color: #ffd6d6; + --mystnb-hide-prompt-opacity: 70%; + --mystnb-source-border-radius: .4em; + --mystnb-source-border-width: 1px; +} + +/* Whole cell */ +div.container.cell { + padding-left: 0; + margin-bottom: 1em; +} + +/* Removing all background formatting so we can control at the div level */ +.cell_input div.highlight, +.cell_output pre, +.cell_input pre, +.cell_output .output { + border: none; + box-shadow: none; +} + +.cell_output .output pre, +.cell_input pre { + margin: 0px; +} + +/* Input cells */ +div.cell div.cell_input, +div.cell details.above-input>summary { + padding-left: 0em; + padding-right: 0em; + border: var(--mystnb-source-border-width) var(--mystnb-source-border-color) solid; + background-color: var(--mystnb-source-bg-color); + border-left-color: var(--mystnb-source-margin-color); + border-left-width: medium; + border-radius: var(--mystnb-source-border-radius); +} + +div.cell_input>div, +div.cell_output div.output>div.highlight { + margin: 0em !important; + border: none !important; +} + +/* All cell outputs */ +.cell_output { + padding-left: 1em; + padding-right: 0em; + margin-top: 1em; +} + +/* Text outputs from cells */ +.cell_output .output.text_plain, +.cell_output .output.traceback, +.cell_output .output.stream, +.cell_output .output.stderr { + margin-top: 1em; + margin-bottom: 0em; + box-shadow: none; +} + +.cell_output .output.text_plain, +.cell_output .output.stream { + background: var(--mystnb-stdout-bg-color); + border: 1px solid var(--mystnb-stdout-border-color); +} + +.cell_output .output.stderr { + background: var(--mystnb-stderr-bg-color); + border: 1px solid var(--mystnb-stderr-border-color); +} + +.cell_output .output.traceback { + background: var(--mystnb-traceback-bg-color); + border: 1px solid var(--mystnb-traceback-border-color); +} + +/* Collapsible cell content */ +div.cell details.above-input div.cell_input { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-top: var(--mystnb-source-border-width) var(--mystnb-source-border-color) dashed; +} + +div.cell div.cell_input.above-output-prompt { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} + +div.cell details.above-input>summary { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + border-bottom: var(--mystnb-source-border-width) var(--mystnb-source-border-color) dashed; + padding-left: 1em; + margin-bottom: 0; +} + +div.cell details.above-output>summary { + background-color: var(--mystnb-source-bg-color); + padding-left: 1em; + padding-right: 0em; + border: var(--mystnb-source-border-width) var(--mystnb-source-border-color) solid; + border-radius: var(--mystnb-source-border-radius); + border-left-color: var(--mystnb-source-margin-color); + border-left-width: medium; +} + +div.cell details.below-input>summary { + background-color: var(--mystnb-source-bg-color); + padding-left: 1em; + padding-right: 0em; + border: var(--mystnb-source-border-width) var(--mystnb-source-border-color) solid; + border-top: none; + border-bottom-left-radius: var(--mystnb-source-border-radius); + border-bottom-right-radius: var(--mystnb-source-border-radius); + border-left-color: var(--mystnb-source-margin-color); + border-left-width: medium; +} + +div.cell details.hide>summary>span { + opacity: var(--mystnb-hide-prompt-opacity); +} + +div.cell details.hide[open]>summary>span.collapsed { + display: none; +} + +div.cell details.hide:not([open])>summary>span.expanded { + display: none; +} + +@keyframes collapsed-fade-in { + 0% { + opacity: 0; + } + + 100% { + opacity: 1; + } +} +div.cell details.hide[open]>summary~* { + -moz-animation: collapsed-fade-in 0.3s ease-in-out; + -webkit-animation: collapsed-fade-in 0.3s ease-in-out; + animation: collapsed-fade-in 0.3s ease-in-out; +} + +/* Math align to the left */ +.cell_output .MathJax_Display { + text-align: left !important; +} + +/* Pandas tables. Pulled from the Jupyter / nbsphinx CSS */ +div.cell_output table { + border: none; + border-collapse: collapse; + border-spacing: 0; + color: black; + font-size: 1em; + table-layout: fixed; +} + +div.cell_output thead { + border-bottom: 1px solid black; + vertical-align: bottom; +} + +div.cell_output tr, +div.cell_output th, +div.cell_output td { + text-align: right; + vertical-align: middle; + padding: 0.5em 0.5em; + line-height: normal; + white-space: normal; + max-width: none; + border: none; +} + +div.cell_output th { + font-weight: bold; +} + +div.cell_output tbody tr:nth-child(odd) { + background: #f5f5f5; +} + +div.cell_output tbody tr:hover { + background: rgba(66, 165, 245, 0.2); +} + +/** source code line numbers **/ +span.linenos { + opacity: 0.5; +} + +/* Inline text from `paste` operation */ + +span.pasted-text { + font-weight: bold; +} + +span.pasted-inline img { + max-height: 2em; +} + +tbody span.pasted-inline img { + max-height: none; +} + +/* Font colors for translated ANSI escape sequences +Color values are copied from Jupyter Notebook +https://github.com/jupyter/notebook/blob/52581f8eda9b319eb0390ac77fe5903c38f81e3e/notebook/static/notebook/less/ansicolors.less#L14-L21 +Background colors from +https://nbsphinx.readthedocs.io/en/latest/code-cells.html#ANSI-Colors +*/ +div.highlight .-Color-Bold { + font-weight: bold; +} + +div.highlight .-Color[class*=-Black] { + color: #3E424D +} + +div.highlight .-Color[class*=-Red] { + color: #E75C58 +} + +div.highlight .-Color[class*=-Green] { + color: #00A250 +} + +div.highlight .-Color[class*=-Yellow] { + color: #DDB62B +} + +div.highlight .-Color[class*=-Blue] { + color: #208FFB +} + +div.highlight .-Color[class*=-Magenta] { + color: #D160C4 +} + +div.highlight .-Color[class*=-Cyan] { + color: #60C6C8 +} + +div.highlight .-Color[class*=-White] { + color: #C5C1B4 +} + +div.highlight .-Color[class*=-BGBlack] { + background-color: #3E424D +} + +div.highlight .-Color[class*=-BGRed] { + background-color: #E75C58 +} + +div.highlight .-Color[class*=-BGGreen] { + background-color: #00A250 +} + +div.highlight .-Color[class*=-BGYellow] { + background-color: #DDB62B +} + +div.highlight .-Color[class*=-BGBlue] { + background-color: #208FFB +} + +div.highlight .-Color[class*=-BGMagenta] { + background-color: #D160C4 +} + +div.highlight .-Color[class*=-BGCyan] { + background-color: #60C6C8 +} + +div.highlight .-Color[class*=-BGWhite] { + background-color: #C5C1B4 +} + +/* Font colors for 8-bit ANSI */ + +div.highlight .-Color[class*=-C0] { + color: #000000 +} + +div.highlight .-Color[class*=-BGC0] { + background-color: #000000 +} + +div.highlight .-Color[class*=-C1] { + color: #800000 +} + +div.highlight .-Color[class*=-BGC1] { + background-color: #800000 +} + +div.highlight .-Color[class*=-C2] { + color: #008000 +} + +div.highlight .-Color[class*=-BGC2] { + background-color: #008000 +} + +div.highlight .-Color[class*=-C3] { + color: #808000 +} + +div.highlight .-Color[class*=-BGC3] { + background-color: #808000 +} + +div.highlight .-Color[class*=-C4] { + color: #000080 +} + +div.highlight .-Color[class*=-BGC4] { + background-color: #000080 +} + +div.highlight .-Color[class*=-C5] { + color: #800080 +} + +div.highlight .-Color[class*=-BGC5] { + background-color: #800080 +} + +div.highlight .-Color[class*=-C6] { + color: #008080 +} + +div.highlight .-Color[class*=-BGC6] { + background-color: #008080 +} + +div.highlight .-Color[class*=-C7] { + color: #C0C0C0 +} + +div.highlight .-Color[class*=-BGC7] { + background-color: #C0C0C0 +} + +div.highlight .-Color[class*=-C8] { + color: #808080 +} + +div.highlight .-Color[class*=-BGC8] { + background-color: #808080 +} + +div.highlight .-Color[class*=-C9] { + color: #FF0000 +} + +div.highlight .-Color[class*=-BGC9] { + background-color: #FF0000 +} + +div.highlight .-Color[class*=-C10] { + color: #00FF00 +} + +div.highlight .-Color[class*=-BGC10] { + background-color: #00FF00 +} + +div.highlight .-Color[class*=-C11] { + color: #FFFF00 +} + +div.highlight .-Color[class*=-BGC11] { + background-color: #FFFF00 +} + +div.highlight .-Color[class*=-C12] { + color: #0000FF +} + +div.highlight .-Color[class*=-BGC12] { + background-color: #0000FF +} + +div.highlight .-Color[class*=-C13] { + color: #FF00FF +} + +div.highlight .-Color[class*=-BGC13] { + background-color: #FF00FF +} + +div.highlight .-Color[class*=-C14] { + color: #00FFFF +} + +div.highlight .-Color[class*=-BGC14] { + background-color: #00FFFF +} + +div.highlight .-Color[class*=-C15] { + color: #FFFFFF +} + +div.highlight .-Color[class*=-BGC15] { + background-color: #FFFFFF +} + +div.highlight .-Color[class*=-C16] { + color: #000000 +} + +div.highlight .-Color[class*=-BGC16] { + background-color: #000000 +} + +div.highlight .-Color[class*=-C17] { + color: #00005F +} + +div.highlight .-Color[class*=-BGC17] { + background-color: #00005F +} + +div.highlight .-Color[class*=-C18] { + color: #000087 +} + +div.highlight .-Color[class*=-BGC18] { + background-color: #000087 +} + +div.highlight .-Color[class*=-C19] { + color: #0000AF +} + +div.highlight .-Color[class*=-BGC19] { + background-color: #0000AF +} + +div.highlight .-Color[class*=-C20] { + color: #0000D7 +} + +div.highlight .-Color[class*=-BGC20] { + background-color: #0000D7 +} + +div.highlight .-Color[class*=-C21] { + color: #0000FF +} + +div.highlight .-Color[class*=-BGC21] { + background-color: #0000FF +} + +div.highlight .-Color[class*=-C22] { + color: #005F00 +} + +div.highlight .-Color[class*=-BGC22] { + background-color: #005F00 +} + +div.highlight .-Color[class*=-C23] { + color: #005F5F +} + +div.highlight .-Color[class*=-BGC23] { + background-color: #005F5F +} + +div.highlight .-Color[class*=-C24] { + color: #005F87 +} + +div.highlight .-Color[class*=-BGC24] { + background-color: #005F87 +} + +div.highlight .-Color[class*=-C25] { + color: #005FAF +} + +div.highlight .-Color[class*=-BGC25] { + background-color: #005FAF +} + +div.highlight .-Color[class*=-C26] { + color: #005FD7 +} + +div.highlight .-Color[class*=-BGC26] { + background-color: #005FD7 +} + +div.highlight .-Color[class*=-C27] { + color: #005FFF +} + +div.highlight .-Color[class*=-BGC27] { + background-color: #005FFF +} + +div.highlight .-Color[class*=-C28] { + color: #008700 +} + +div.highlight .-Color[class*=-BGC28] { + background-color: #008700 +} + +div.highlight .-Color[class*=-C29] { + color: #00875F +} + +div.highlight .-Color[class*=-BGC29] { + background-color: #00875F +} + +div.highlight .-Color[class*=-C30] { + color: #008787 +} + +div.highlight .-Color[class*=-BGC30] { + background-color: #008787 +} + +div.highlight .-Color[class*=-C31] { + color: #0087AF +} + +div.highlight .-Color[class*=-BGC31] { + background-color: #0087AF +} + +div.highlight .-Color[class*=-C32] { + color: #0087D7 +} + +div.highlight .-Color[class*=-BGC32] { + background-color: #0087D7 +} + +div.highlight .-Color[class*=-C33] { + color: #0087FF +} + +div.highlight .-Color[class*=-BGC33] { + background-color: #0087FF +} + +div.highlight .-Color[class*=-C34] { + color: #00AF00 +} + +div.highlight .-Color[class*=-BGC34] { + background-color: #00AF00 +} + +div.highlight .-Color[class*=-C35] { + color: #00AF5F +} + +div.highlight .-Color[class*=-BGC35] { + background-color: #00AF5F +} + +div.highlight .-Color[class*=-C36] { + color: #00AF87 +} + +div.highlight .-Color[class*=-BGC36] { + background-color: #00AF87 +} + +div.highlight .-Color[class*=-C37] { + color: #00AFAF +} + +div.highlight .-Color[class*=-BGC37] { + background-color: #00AFAF +} + +div.highlight .-Color[class*=-C38] { + color: #00AFD7 +} + +div.highlight .-Color[class*=-BGC38] { + background-color: #00AFD7 +} + +div.highlight .-Color[class*=-C39] { + color: #00AFFF +} + +div.highlight .-Color[class*=-BGC39] { + background-color: #00AFFF +} + +div.highlight .-Color[class*=-C40] { + color: #00D700 +} + +div.highlight .-Color[class*=-BGC40] { + background-color: #00D700 +} + +div.highlight .-Color[class*=-C41] { + color: #00D75F +} + +div.highlight .-Color[class*=-BGC41] { + background-color: #00D75F +} + +div.highlight .-Color[class*=-C42] { + color: #00D787 +} + +div.highlight .-Color[class*=-BGC42] { + background-color: #00D787 +} + +div.highlight .-Color[class*=-C43] { + color: #00D7AF +} + +div.highlight .-Color[class*=-BGC43] { + background-color: #00D7AF +} + +div.highlight .-Color[class*=-C44] { + color: #00D7D7 +} + +div.highlight .-Color[class*=-BGC44] { + background-color: #00D7D7 +} + +div.highlight .-Color[class*=-C45] { + color: #00D7FF +} + +div.highlight .-Color[class*=-BGC45] { + background-color: #00D7FF +} + +div.highlight .-Color[class*=-C46] { + color: #00FF00 +} + +div.highlight .-Color[class*=-BGC46] { + background-color: #00FF00 +} + +div.highlight .-Color[class*=-C47] { + color: #00FF5F +} + +div.highlight .-Color[class*=-BGC47] { + background-color: #00FF5F +} + +div.highlight .-Color[class*=-C48] { + color: #00FF87 +} + +div.highlight .-Color[class*=-BGC48] { + background-color: #00FF87 +} + +div.highlight .-Color[class*=-C49] { + color: #00FFAF +} + +div.highlight .-Color[class*=-BGC49] { + background-color: #00FFAF +} + +div.highlight .-Color[class*=-C50] { + color: #00FFD7 +} + +div.highlight .-Color[class*=-BGC50] { + background-color: #00FFD7 +} + +div.highlight .-Color[class*=-C51] { + color: #00FFFF +} + +div.highlight .-Color[class*=-BGC51] { + background-color: #00FFFF +} + +div.highlight .-Color[class*=-C52] { + color: #5F0000 +} + +div.highlight .-Color[class*=-BGC52] { + background-color: #5F0000 +} + +div.highlight .-Color[class*=-C53] { + color: #5F005F +} + +div.highlight .-Color[class*=-BGC53] { + background-color: #5F005F +} + +div.highlight .-Color[class*=-C54] { + color: #5F0087 +} + +div.highlight .-Color[class*=-BGC54] { + background-color: #5F0087 +} + +div.highlight .-Color[class*=-C55] { + color: #5F00AF +} + +div.highlight .-Color[class*=-BGC55] { + background-color: #5F00AF +} + +div.highlight .-Color[class*=-C56] { + color: #5F00D7 +} + +div.highlight .-Color[class*=-BGC56] { + background-color: #5F00D7 +} + +div.highlight .-Color[class*=-C57] { + color: #5F00FF +} + +div.highlight .-Color[class*=-BGC57] { + background-color: #5F00FF +} + +div.highlight .-Color[class*=-C58] { + color: #5F5F00 +} + +div.highlight .-Color[class*=-BGC58] { + background-color: #5F5F00 +} + +div.highlight .-Color[class*=-C59] { + color: #5F5F5F +} + +div.highlight .-Color[class*=-BGC59] { + background-color: #5F5F5F +} + +div.highlight .-Color[class*=-C60] { + color: #5F5F87 +} + +div.highlight .-Color[class*=-BGC60] { + background-color: #5F5F87 +} + +div.highlight .-Color[class*=-C61] { + color: #5F5FAF +} + +div.highlight .-Color[class*=-BGC61] { + background-color: #5F5FAF +} + +div.highlight .-Color[class*=-C62] { + color: #5F5FD7 +} + +div.highlight .-Color[class*=-BGC62] { + background-color: #5F5FD7 +} + +div.highlight .-Color[class*=-C63] { + color: #5F5FFF +} + +div.highlight .-Color[class*=-BGC63] { + background-color: #5F5FFF +} + +div.highlight .-Color[class*=-C64] { + color: #5F8700 +} + +div.highlight .-Color[class*=-BGC64] { + background-color: #5F8700 +} + +div.highlight .-Color[class*=-C65] { + color: #5F875F +} + +div.highlight .-Color[class*=-BGC65] { + background-color: #5F875F +} + +div.highlight .-Color[class*=-C66] { + color: #5F8787 +} + +div.highlight .-Color[class*=-BGC66] { + background-color: #5F8787 +} + +div.highlight .-Color[class*=-C67] { + color: #5F87AF +} + +div.highlight .-Color[class*=-BGC67] { + background-color: #5F87AF +} + +div.highlight .-Color[class*=-C68] { + color: #5F87D7 +} + +div.highlight .-Color[class*=-BGC68] { + background-color: #5F87D7 +} + +div.highlight .-Color[class*=-C69] { + color: #5F87FF +} + +div.highlight .-Color[class*=-BGC69] { + background-color: #5F87FF +} + +div.highlight .-Color[class*=-C70] { + color: #5FAF00 +} + +div.highlight .-Color[class*=-BGC70] { + background-color: #5FAF00 +} + +div.highlight .-Color[class*=-C71] { + color: #5FAF5F +} + +div.highlight .-Color[class*=-BGC71] { + background-color: #5FAF5F +} + +div.highlight .-Color[class*=-C72] { + color: #5FAF87 +} + +div.highlight .-Color[class*=-BGC72] { + background-color: #5FAF87 +} + +div.highlight .-Color[class*=-C73] { + color: #5FAFAF +} + +div.highlight .-Color[class*=-BGC73] { + background-color: #5FAFAF +} + +div.highlight .-Color[class*=-C74] { + color: #5FAFD7 +} + +div.highlight .-Color[class*=-BGC74] { + background-color: #5FAFD7 +} + +div.highlight .-Color[class*=-C75] { + color: #5FAFFF +} + +div.highlight .-Color[class*=-BGC75] { + background-color: #5FAFFF +} + +div.highlight .-Color[class*=-C76] { + color: #5FD700 +} + +div.highlight .-Color[class*=-BGC76] { + background-color: #5FD700 +} + +div.highlight .-Color[class*=-C77] { + color: #5FD75F +} + +div.highlight .-Color[class*=-BGC77] { + background-color: #5FD75F +} + +div.highlight .-Color[class*=-C78] { + color: #5FD787 +} + +div.highlight .-Color[class*=-BGC78] { + background-color: #5FD787 +} + +div.highlight .-Color[class*=-C79] { + color: #5FD7AF +} + +div.highlight .-Color[class*=-BGC79] { + background-color: #5FD7AF +} + +div.highlight .-Color[class*=-C80] { + color: #5FD7D7 +} + +div.highlight .-Color[class*=-BGC80] { + background-color: #5FD7D7 +} + +div.highlight .-Color[class*=-C81] { + color: #5FD7FF +} + +div.highlight .-Color[class*=-BGC81] { + background-color: #5FD7FF +} + +div.highlight .-Color[class*=-C82] { + color: #5FFF00 +} + +div.highlight .-Color[class*=-BGC82] { + background-color: #5FFF00 +} + +div.highlight .-Color[class*=-C83] { + color: #5FFF5F +} + +div.highlight .-Color[class*=-BGC83] { + background-color: #5FFF5F +} + +div.highlight .-Color[class*=-C84] { + color: #5FFF87 +} + +div.highlight .-Color[class*=-BGC84] { + background-color: #5FFF87 +} + +div.highlight .-Color[class*=-C85] { + color: #5FFFAF +} + +div.highlight .-Color[class*=-BGC85] { + background-color: #5FFFAF +} + +div.highlight .-Color[class*=-C86] { + color: #5FFFD7 +} + +div.highlight .-Color[class*=-BGC86] { + background-color: #5FFFD7 +} + +div.highlight .-Color[class*=-C87] { + color: #5FFFFF +} + +div.highlight .-Color[class*=-BGC87] { + background-color: #5FFFFF +} + +div.highlight .-Color[class*=-C88] { + color: #870000 +} + +div.highlight .-Color[class*=-BGC88] { + background-color: #870000 +} + +div.highlight .-Color[class*=-C89] { + color: #87005F +} + +div.highlight .-Color[class*=-BGC89] { + background-color: #87005F +} + +div.highlight .-Color[class*=-C90] { + color: #870087 +} + +div.highlight .-Color[class*=-BGC90] { + background-color: #870087 +} + +div.highlight .-Color[class*=-C91] { + color: #8700AF +} + +div.highlight .-Color[class*=-BGC91] { + background-color: #8700AF +} + +div.highlight .-Color[class*=-C92] { + color: #8700D7 +} + +div.highlight .-Color[class*=-BGC92] { + background-color: #8700D7 +} + +div.highlight .-Color[class*=-C93] { + color: #8700FF +} + +div.highlight .-Color[class*=-BGC93] { + background-color: #8700FF +} + +div.highlight .-Color[class*=-C94] { + color: #875F00 +} + +div.highlight .-Color[class*=-BGC94] { + background-color: #875F00 +} + +div.highlight .-Color[class*=-C95] { + color: #875F5F +} + +div.highlight .-Color[class*=-BGC95] { + background-color: #875F5F +} + +div.highlight .-Color[class*=-C96] { + color: #875F87 +} + +div.highlight .-Color[class*=-BGC96] { + background-color: #875F87 +} + +div.highlight .-Color[class*=-C97] { + color: #875FAF +} + +div.highlight .-Color[class*=-BGC97] { + background-color: #875FAF +} + +div.highlight .-Color[class*=-C98] { + color: #875FD7 +} + +div.highlight .-Color[class*=-BGC98] { + background-color: #875FD7 +} + +div.highlight .-Color[class*=-C99] { + color: #875FFF +} + +div.highlight .-Color[class*=-BGC99] { + background-color: #875FFF +} + +div.highlight .-Color[class*=-C100] { + color: #878700 +} + +div.highlight .-Color[class*=-BGC100] { + background-color: #878700 +} + +div.highlight .-Color[class*=-C101] { + color: #87875F +} + +div.highlight .-Color[class*=-BGC101] { + background-color: #87875F +} + +div.highlight .-Color[class*=-C102] { + color: #878787 +} + +div.highlight .-Color[class*=-BGC102] { + background-color: #878787 +} + +div.highlight .-Color[class*=-C103] { + color: #8787AF +} + +div.highlight .-Color[class*=-BGC103] { + background-color: #8787AF +} + +div.highlight .-Color[class*=-C104] { + color: #8787D7 +} + +div.highlight .-Color[class*=-BGC104] { + background-color: #8787D7 +} + +div.highlight .-Color[class*=-C105] { + color: #8787FF +} + +div.highlight .-Color[class*=-BGC105] { + background-color: #8787FF +} + +div.highlight .-Color[class*=-C106] { + color: #87AF00 +} + +div.highlight .-Color[class*=-BGC106] { + background-color: #87AF00 +} + +div.highlight .-Color[class*=-C107] { + color: #87AF5F +} + +div.highlight .-Color[class*=-BGC107] { + background-color: #87AF5F +} + +div.highlight .-Color[class*=-C108] { + color: #87AF87 +} + +div.highlight .-Color[class*=-BGC108] { + background-color: #87AF87 +} + +div.highlight .-Color[class*=-C109] { + color: #87AFAF +} + +div.highlight .-Color[class*=-BGC109] { + background-color: #87AFAF +} + +div.highlight .-Color[class*=-C110] { + color: #87AFD7 +} + +div.highlight .-Color[class*=-BGC110] { + background-color: #87AFD7 +} + +div.highlight .-Color[class*=-C111] { + color: #87AFFF +} + +div.highlight .-Color[class*=-BGC111] { + background-color: #87AFFF +} + +div.highlight .-Color[class*=-C112] { + color: #87D700 +} + +div.highlight .-Color[class*=-BGC112] { + background-color: #87D700 +} + +div.highlight .-Color[class*=-C113] { + color: #87D75F +} + +div.highlight .-Color[class*=-BGC113] { + background-color: #87D75F +} + +div.highlight .-Color[class*=-C114] { + color: #87D787 +} + +div.highlight .-Color[class*=-BGC114] { + background-color: #87D787 +} + +div.highlight .-Color[class*=-C115] { + color: #87D7AF +} + +div.highlight .-Color[class*=-BGC115] { + background-color: #87D7AF +} + +div.highlight .-Color[class*=-C116] { + color: #87D7D7 +} + +div.highlight .-Color[class*=-BGC116] { + background-color: #87D7D7 +} + +div.highlight .-Color[class*=-C117] { + color: #87D7FF +} + +div.highlight .-Color[class*=-BGC117] { + background-color: #87D7FF +} + +div.highlight .-Color[class*=-C118] { + color: #87FF00 +} + +div.highlight .-Color[class*=-BGC118] { + background-color: #87FF00 +} + +div.highlight .-Color[class*=-C119] { + color: #87FF5F +} + +div.highlight .-Color[class*=-BGC119] { + background-color: #87FF5F +} + +div.highlight .-Color[class*=-C120] { + color: #87FF87 +} + +div.highlight .-Color[class*=-BGC120] { + background-color: #87FF87 +} + +div.highlight .-Color[class*=-C121] { + color: #87FFAF +} + +div.highlight .-Color[class*=-BGC121] { + background-color: #87FFAF +} + +div.highlight .-Color[class*=-C122] { + color: #87FFD7 +} + +div.highlight .-Color[class*=-BGC122] { + background-color: #87FFD7 +} + +div.highlight .-Color[class*=-C123] { + color: #87FFFF +} + +div.highlight .-Color[class*=-BGC123] { + background-color: #87FFFF +} + +div.highlight .-Color[class*=-C124] { + color: #AF0000 +} + +div.highlight .-Color[class*=-BGC124] { + background-color: #AF0000 +} + +div.highlight .-Color[class*=-C125] { + color: #AF005F +} + +div.highlight .-Color[class*=-BGC125] { + background-color: #AF005F +} + +div.highlight .-Color[class*=-C126] { + color: #AF0087 +} + +div.highlight .-Color[class*=-BGC126] { + background-color: #AF0087 +} + +div.highlight .-Color[class*=-C127] { + color: #AF00AF +} + +div.highlight .-Color[class*=-BGC127] { + background-color: #AF00AF +} + +div.highlight .-Color[class*=-C128] { + color: #AF00D7 +} + +div.highlight .-Color[class*=-BGC128] { + background-color: #AF00D7 +} + +div.highlight .-Color[class*=-C129] { + color: #AF00FF +} + +div.highlight .-Color[class*=-BGC129] { + background-color: #AF00FF +} + +div.highlight .-Color[class*=-C130] { + color: #AF5F00 +} + +div.highlight .-Color[class*=-BGC130] { + background-color: #AF5F00 +} + +div.highlight .-Color[class*=-C131] { + color: #AF5F5F +} + +div.highlight .-Color[class*=-BGC131] { + background-color: #AF5F5F +} + +div.highlight .-Color[class*=-C132] { + color: #AF5F87 +} + +div.highlight .-Color[class*=-BGC132] { + background-color: #AF5F87 +} + +div.highlight .-Color[class*=-C133] { + color: #AF5FAF +} + +div.highlight .-Color[class*=-BGC133] { + background-color: #AF5FAF +} + +div.highlight .-Color[class*=-C134] { + color: #AF5FD7 +} + +div.highlight .-Color[class*=-BGC134] { + background-color: #AF5FD7 +} + +div.highlight .-Color[class*=-C135] { + color: #AF5FFF +} + +div.highlight .-Color[class*=-BGC135] { + background-color: #AF5FFF +} + +div.highlight .-Color[class*=-C136] { + color: #AF8700 +} + +div.highlight .-Color[class*=-BGC136] { + background-color: #AF8700 +} + +div.highlight .-Color[class*=-C137] { + color: #AF875F +} + +div.highlight .-Color[class*=-BGC137] { + background-color: #AF875F +} + +div.highlight .-Color[class*=-C138] { + color: #AF8787 +} + +div.highlight .-Color[class*=-BGC138] { + background-color: #AF8787 +} + +div.highlight .-Color[class*=-C139] { + color: #AF87AF +} + +div.highlight .-Color[class*=-BGC139] { + background-color: #AF87AF +} + +div.highlight .-Color[class*=-C140] { + color: #AF87D7 +} + +div.highlight .-Color[class*=-BGC140] { + background-color: #AF87D7 +} + +div.highlight .-Color[class*=-C141] { + color: #AF87FF +} + +div.highlight .-Color[class*=-BGC141] { + background-color: #AF87FF +} + +div.highlight .-Color[class*=-C142] { + color: #AFAF00 +} + +div.highlight .-Color[class*=-BGC142] { + background-color: #AFAF00 +} + +div.highlight .-Color[class*=-C143] { + color: #AFAF5F +} + +div.highlight .-Color[class*=-BGC143] { + background-color: #AFAF5F +} + +div.highlight .-Color[class*=-C144] { + color: #AFAF87 +} + +div.highlight .-Color[class*=-BGC144] { + background-color: #AFAF87 +} + +div.highlight .-Color[class*=-C145] { + color: #AFAFAF +} + +div.highlight .-Color[class*=-BGC145] { + background-color: #AFAFAF +} + +div.highlight .-Color[class*=-C146] { + color: #AFAFD7 +} + +div.highlight .-Color[class*=-BGC146] { + background-color: #AFAFD7 +} + +div.highlight .-Color[class*=-C147] { + color: #AFAFFF +} + +div.highlight .-Color[class*=-BGC147] { + background-color: #AFAFFF +} + +div.highlight .-Color[class*=-C148] { + color: #AFD700 +} + +div.highlight .-Color[class*=-BGC148] { + background-color: #AFD700 +} + +div.highlight .-Color[class*=-C149] { + color: #AFD75F +} + +div.highlight .-Color[class*=-BGC149] { + background-color: #AFD75F +} + +div.highlight .-Color[class*=-C150] { + color: #AFD787 +} + +div.highlight .-Color[class*=-BGC150] { + background-color: #AFD787 +} + +div.highlight .-Color[class*=-C151] { + color: #AFD7AF +} + +div.highlight .-Color[class*=-BGC151] { + background-color: #AFD7AF +} + +div.highlight .-Color[class*=-C152] { + color: #AFD7D7 +} + +div.highlight .-Color[class*=-BGC152] { + background-color: #AFD7D7 +} + +div.highlight .-Color[class*=-C153] { + color: #AFD7FF +} + +div.highlight .-Color[class*=-BGC153] { + background-color: #AFD7FF +} + +div.highlight .-Color[class*=-C154] { + color: #AFFF00 +} + +div.highlight .-Color[class*=-BGC154] { + background-color: #AFFF00 +} + +div.highlight .-Color[class*=-C155] { + color: #AFFF5F +} + +div.highlight .-Color[class*=-BGC155] { + background-color: #AFFF5F +} + +div.highlight .-Color[class*=-C156] { + color: #AFFF87 +} + +div.highlight .-Color[class*=-BGC156] { + background-color: #AFFF87 +} + +div.highlight .-Color[class*=-C157] { + color: #AFFFAF +} + +div.highlight .-Color[class*=-BGC157] { + background-color: #AFFFAF +} + +div.highlight .-Color[class*=-C158] { + color: #AFFFD7 +} + +div.highlight .-Color[class*=-BGC158] { + background-color: #AFFFD7 +} + +div.highlight .-Color[class*=-C159] { + color: #AFFFFF +} + +div.highlight .-Color[class*=-BGC159] { + background-color: #AFFFFF +} + +div.highlight .-Color[class*=-C160] { + color: #D70000 +} + +div.highlight .-Color[class*=-BGC160] { + background-color: #D70000 +} + +div.highlight .-Color[class*=-C161] { + color: #D7005F +} + +div.highlight .-Color[class*=-BGC161] { + background-color: #D7005F +} + +div.highlight .-Color[class*=-C162] { + color: #D70087 +} + +div.highlight .-Color[class*=-BGC162] { + background-color: #D70087 +} + +div.highlight .-Color[class*=-C163] { + color: #D700AF +} + +div.highlight .-Color[class*=-BGC163] { + background-color: #D700AF +} + +div.highlight .-Color[class*=-C164] { + color: #D700D7 +} + +div.highlight .-Color[class*=-BGC164] { + background-color: #D700D7 +} + +div.highlight .-Color[class*=-C165] { + color: #D700FF +} + +div.highlight .-Color[class*=-BGC165] { + background-color: #D700FF +} + +div.highlight .-Color[class*=-C166] { + color: #D75F00 +} + +div.highlight .-Color[class*=-BGC166] { + background-color: #D75F00 +} + +div.highlight .-Color[class*=-C167] { + color: #D75F5F +} + +div.highlight .-Color[class*=-BGC167] { + background-color: #D75F5F +} + +div.highlight .-Color[class*=-C168] { + color: #D75F87 +} + +div.highlight .-Color[class*=-BGC168] { + background-color: #D75F87 +} + +div.highlight .-Color[class*=-C169] { + color: #D75FAF +} + +div.highlight .-Color[class*=-BGC169] { + background-color: #D75FAF +} + +div.highlight .-Color[class*=-C170] { + color: #D75FD7 +} + +div.highlight .-Color[class*=-BGC170] { + background-color: #D75FD7 +} + +div.highlight .-Color[class*=-C171] { + color: #D75FFF +} + +div.highlight .-Color[class*=-BGC171] { + background-color: #D75FFF +} + +div.highlight .-Color[class*=-C172] { + color: #D78700 +} + +div.highlight .-Color[class*=-BGC172] { + background-color: #D78700 +} + +div.highlight .-Color[class*=-C173] { + color: #D7875F +} + +div.highlight .-Color[class*=-BGC173] { + background-color: #D7875F +} + +div.highlight .-Color[class*=-C174] { + color: #D78787 +} + +div.highlight .-Color[class*=-BGC174] { + background-color: #D78787 +} + +div.highlight .-Color[class*=-C175] { + color: #D787AF +} + +div.highlight .-Color[class*=-BGC175] { + background-color: #D787AF +} + +div.highlight .-Color[class*=-C176] { + color: #D787D7 +} + +div.highlight .-Color[class*=-BGC176] { + background-color: #D787D7 +} + +div.highlight .-Color[class*=-C177] { + color: #D787FF +} + +div.highlight .-Color[class*=-BGC177] { + background-color: #D787FF +} + +div.highlight .-Color[class*=-C178] { + color: #D7AF00 +} + +div.highlight .-Color[class*=-BGC178] { + background-color: #D7AF00 +} + +div.highlight .-Color[class*=-C179] { + color: #D7AF5F +} + +div.highlight .-Color[class*=-BGC179] { + background-color: #D7AF5F +} + +div.highlight .-Color[class*=-C180] { + color: #D7AF87 +} + +div.highlight .-Color[class*=-BGC180] { + background-color: #D7AF87 +} + +div.highlight .-Color[class*=-C181] { + color: #D7AFAF +} + +div.highlight .-Color[class*=-BGC181] { + background-color: #D7AFAF +} + +div.highlight .-Color[class*=-C182] { + color: #D7AFD7 +} + +div.highlight .-Color[class*=-BGC182] { + background-color: #D7AFD7 +} + +div.highlight .-Color[class*=-C183] { + color: #D7AFFF +} + +div.highlight .-Color[class*=-BGC183] { + background-color: #D7AFFF +} + +div.highlight .-Color[class*=-C184] { + color: #D7D700 +} + +div.highlight .-Color[class*=-BGC184] { + background-color: #D7D700 +} + +div.highlight .-Color[class*=-C185] { + color: #D7D75F +} + +div.highlight .-Color[class*=-BGC185] { + background-color: #D7D75F +} + +div.highlight .-Color[class*=-C186] { + color: #D7D787 +} + +div.highlight .-Color[class*=-BGC186] { + background-color: #D7D787 +} + +div.highlight .-Color[class*=-C187] { + color: #D7D7AF +} + +div.highlight .-Color[class*=-BGC187] { + background-color: #D7D7AF +} + +div.highlight .-Color[class*=-C188] { + color: #D7D7D7 +} + +div.highlight .-Color[class*=-BGC188] { + background-color: #D7D7D7 +} + +div.highlight .-Color[class*=-C189] { + color: #D7D7FF +} + +div.highlight .-Color[class*=-BGC189] { + background-color: #D7D7FF +} + +div.highlight .-Color[class*=-C190] { + color: #D7FF00 +} + +div.highlight .-Color[class*=-BGC190] { + background-color: #D7FF00 +} + +div.highlight .-Color[class*=-C191] { + color: #D7FF5F +} + +div.highlight .-Color[class*=-BGC191] { + background-color: #D7FF5F +} + +div.highlight .-Color[class*=-C192] { + color: #D7FF87 +} + +div.highlight .-Color[class*=-BGC192] { + background-color: #D7FF87 +} + +div.highlight .-Color[class*=-C193] { + color: #D7FFAF +} + +div.highlight .-Color[class*=-BGC193] { + background-color: #D7FFAF +} + +div.highlight .-Color[class*=-C194] { + color: #D7FFD7 +} + +div.highlight .-Color[class*=-BGC194] { + background-color: #D7FFD7 +} + +div.highlight .-Color[class*=-C195] { + color: #D7FFFF +} + +div.highlight .-Color[class*=-BGC195] { + background-color: #D7FFFF +} + +div.highlight .-Color[class*=-C196] { + color: #FF0000 +} + +div.highlight .-Color[class*=-BGC196] { + background-color: #FF0000 +} + +div.highlight .-Color[class*=-C197] { + color: #FF005F +} + +div.highlight .-Color[class*=-BGC197] { + background-color: #FF005F +} + +div.highlight .-Color[class*=-C198] { + color: #FF0087 +} + +div.highlight .-Color[class*=-BGC198] { + background-color: #FF0087 +} + +div.highlight .-Color[class*=-C199] { + color: #FF00AF +} + +div.highlight .-Color[class*=-BGC199] { + background-color: #FF00AF +} + +div.highlight .-Color[class*=-C200] { + color: #FF00D7 +} + +div.highlight .-Color[class*=-BGC200] { + background-color: #FF00D7 +} + +div.highlight .-Color[class*=-C201] { + color: #FF00FF +} + +div.highlight .-Color[class*=-BGC201] { + background-color: #FF00FF +} + +div.highlight .-Color[class*=-C202] { + color: #FF5F00 +} + +div.highlight .-Color[class*=-BGC202] { + background-color: #FF5F00 +} + +div.highlight .-Color[class*=-C203] { + color: #FF5F5F +} + +div.highlight .-Color[class*=-BGC203] { + background-color: #FF5F5F +} + +div.highlight .-Color[class*=-C204] { + color: #FF5F87 +} + +div.highlight .-Color[class*=-BGC204] { + background-color: #FF5F87 +} + +div.highlight .-Color[class*=-C205] { + color: #FF5FAF +} + +div.highlight .-Color[class*=-BGC205] { + background-color: #FF5FAF +} + +div.highlight .-Color[class*=-C206] { + color: #FF5FD7 +} + +div.highlight .-Color[class*=-BGC206] { + background-color: #FF5FD7 +} + +div.highlight .-Color[class*=-C207] { + color: #FF5FFF +} + +div.highlight .-Color[class*=-BGC207] { + background-color: #FF5FFF +} + +div.highlight .-Color[class*=-C208] { + color: #FF8700 +} + +div.highlight .-Color[class*=-BGC208] { + background-color: #FF8700 +} + +div.highlight .-Color[class*=-C209] { + color: #FF875F +} + +div.highlight .-Color[class*=-BGC209] { + background-color: #FF875F +} + +div.highlight .-Color[class*=-C210] { + color: #FF8787 +} + +div.highlight .-Color[class*=-BGC210] { + background-color: #FF8787 +} + +div.highlight .-Color[class*=-C211] { + color: #FF87AF +} + +div.highlight .-Color[class*=-BGC211] { + background-color: #FF87AF +} + +div.highlight .-Color[class*=-C212] { + color: #FF87D7 +} + +div.highlight .-Color[class*=-BGC212] { + background-color: #FF87D7 +} + +div.highlight .-Color[class*=-C213] { + color: #FF87FF +} + +div.highlight .-Color[class*=-BGC213] { + background-color: #FF87FF +} + +div.highlight .-Color[class*=-C214] { + color: #FFAF00 +} + +div.highlight .-Color[class*=-BGC214] { + background-color: #FFAF00 +} + +div.highlight .-Color[class*=-C215] { + color: #FFAF5F +} + +div.highlight .-Color[class*=-BGC215] { + background-color: #FFAF5F +} + +div.highlight .-Color[class*=-C216] { + color: #FFAF87 +} + +div.highlight .-Color[class*=-BGC216] { + background-color: #FFAF87 +} + +div.highlight .-Color[class*=-C217] { + color: #FFAFAF +} + +div.highlight .-Color[class*=-BGC217] { + background-color: #FFAFAF +} + +div.highlight .-Color[class*=-C218] { + color: #FFAFD7 +} + +div.highlight .-Color[class*=-BGC218] { + background-color: #FFAFD7 +} + +div.highlight .-Color[class*=-C219] { + color: #FFAFFF +} + +div.highlight .-Color[class*=-BGC219] { + background-color: #FFAFFF +} + +div.highlight .-Color[class*=-C220] { + color: #FFD700 +} + +div.highlight .-Color[class*=-BGC220] { + background-color: #FFD700 +} + +div.highlight .-Color[class*=-C221] { + color: #FFD75F +} + +div.highlight .-Color[class*=-BGC221] { + background-color: #FFD75F +} + +div.highlight .-Color[class*=-C222] { + color: #FFD787 +} + +div.highlight .-Color[class*=-BGC222] { + background-color: #FFD787 +} + +div.highlight .-Color[class*=-C223] { + color: #FFD7AF +} + +div.highlight .-Color[class*=-BGC223] { + background-color: #FFD7AF +} + +div.highlight .-Color[class*=-C224] { + color: #FFD7D7 +} + +div.highlight .-Color[class*=-BGC224] { + background-color: #FFD7D7 +} + +div.highlight .-Color[class*=-C225] { + color: #FFD7FF +} + +div.highlight .-Color[class*=-BGC225] { + background-color: #FFD7FF +} + +div.highlight .-Color[class*=-C226] { + color: #FFFF00 +} + +div.highlight .-Color[class*=-BGC226] { + background-color: #FFFF00 +} + +div.highlight .-Color[class*=-C227] { + color: #FFFF5F +} + +div.highlight .-Color[class*=-BGC227] { + background-color: #FFFF5F +} + +div.highlight .-Color[class*=-C228] { + color: #FFFF87 +} + +div.highlight .-Color[class*=-BGC228] { + background-color: #FFFF87 +} + +div.highlight .-Color[class*=-C229] { + color: #FFFFAF +} + +div.highlight .-Color[class*=-BGC229] { + background-color: #FFFFAF +} + +div.highlight .-Color[class*=-C230] { + color: #FFFFD7 +} + +div.highlight .-Color[class*=-BGC230] { + background-color: #FFFFD7 +} + +div.highlight .-Color[class*=-C231] { + color: #FFFFFF +} + +div.highlight .-Color[class*=-BGC231] { + background-color: #FFFFFF +} + +div.highlight .-Color[class*=-C232] { + color: #080808 +} + +div.highlight .-Color[class*=-BGC232] { + background-color: #080808 +} + +div.highlight .-Color[class*=-C233] { + color: #121212 +} + +div.highlight .-Color[class*=-BGC233] { + background-color: #121212 +} + +div.highlight .-Color[class*=-C234] { + color: #1C1C1C +} + +div.highlight .-Color[class*=-BGC234] { + background-color: #1C1C1C +} + +div.highlight .-Color[class*=-C235] { + color: #262626 +} + +div.highlight .-Color[class*=-BGC235] { + background-color: #262626 +} + +div.highlight .-Color[class*=-C236] { + color: #303030 +} + +div.highlight .-Color[class*=-BGC236] { + background-color: #303030 +} + +div.highlight .-Color[class*=-C237] { + color: #3A3A3A +} + +div.highlight .-Color[class*=-BGC237] { + background-color: #3A3A3A +} + +div.highlight .-Color[class*=-C238] { + color: #444444 +} + +div.highlight .-Color[class*=-BGC238] { + background-color: #444444 +} + +div.highlight .-Color[class*=-C239] { + color: #4E4E4E +} + +div.highlight .-Color[class*=-BGC239] { + background-color: #4E4E4E +} + +div.highlight .-Color[class*=-C240] { + color: #585858 +} + +div.highlight .-Color[class*=-BGC240] { + background-color: #585858 +} + +div.highlight .-Color[class*=-C241] { + color: #626262 +} + +div.highlight .-Color[class*=-BGC241] { + background-color: #626262 +} + +div.highlight .-Color[class*=-C242] { + color: #6C6C6C +} + +div.highlight .-Color[class*=-BGC242] { + background-color: #6C6C6C +} + +div.highlight .-Color[class*=-C243] { + color: #767676 +} + +div.highlight .-Color[class*=-BGC243] { + background-color: #767676 +} + +div.highlight .-Color[class*=-C244] { + color: #808080 +} + +div.highlight .-Color[class*=-BGC244] { + background-color: #808080 +} + +div.highlight .-Color[class*=-C245] { + color: #8A8A8A +} + +div.highlight .-Color[class*=-BGC245] { + background-color: #8A8A8A +} + +div.highlight .-Color[class*=-C246] { + color: #949494 +} + +div.highlight .-Color[class*=-BGC246] { + background-color: #949494 +} + +div.highlight .-Color[class*=-C247] { + color: #9E9E9E +} + +div.highlight .-Color[class*=-BGC247] { + background-color: #9E9E9E +} + +div.highlight .-Color[class*=-C248] { + color: #A8A8A8 +} + +div.highlight .-Color[class*=-BGC248] { + background-color: #A8A8A8 +} + +div.highlight .-Color[class*=-C249] { + color: #B2B2B2 +} + +div.highlight .-Color[class*=-BGC249] { + background-color: #B2B2B2 +} + +div.highlight .-Color[class*=-C250] { + color: #BCBCBC +} + +div.highlight .-Color[class*=-BGC250] { + background-color: #BCBCBC +} + +div.highlight .-Color[class*=-C251] { + color: #C6C6C6 +} + +div.highlight .-Color[class*=-BGC251] { + background-color: #C6C6C6 +} + +div.highlight .-Color[class*=-C252] { + color: #D0D0D0 +} + +div.highlight .-Color[class*=-BGC252] { + background-color: #D0D0D0 +} + +div.highlight .-Color[class*=-C253] { + color: #DADADA +} + +div.highlight .-Color[class*=-BGC253] { + background-color: #DADADA +} + +div.highlight .-Color[class*=-C254] { + color: #E4E4E4 +} + +div.highlight .-Color[class*=-BGC254] { + background-color: #E4E4E4 +} + +div.highlight .-Color[class*=-C255] { + color: #EEEEEE +} + +div.highlight .-Color[class*=-BGC255] { + background-color: #EEEEEE +} diff --git a/_static/plus.png b/_static/plus.png new file mode 100644 index 00000000..7107cec9 Binary files /dev/null and b/_static/plus.png differ diff --git a/_static/pygments.css b/_static/pygments.css new file mode 100644 index 00000000..012e6a00 --- /dev/null +++ b/_static/pygments.css @@ -0,0 +1,152 @@ +html[data-theme="light"] .highlight pre { line-height: 125%; } +html[data-theme="light"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="light"] .highlight .hll { background-color: #fae4c2 } +html[data-theme="light"] .highlight { background: #fefefe; color: #080808 } +html[data-theme="light"] .highlight .c { color: #515151 } /* Comment */ +html[data-theme="light"] .highlight .err { color: #a12236 } /* Error */ +html[data-theme="light"] .highlight .k { color: #6730c5 } /* Keyword */ +html[data-theme="light"] .highlight .l { color: #7f4707 } /* Literal */ +html[data-theme="light"] .highlight .n { color: #080808 } /* Name */ +html[data-theme="light"] .highlight .o { color: #00622f } /* Operator */ +html[data-theme="light"] .highlight .p { color: #080808 } /* Punctuation */ +html[data-theme="light"] .highlight .ch { color: #515151 } /* Comment.Hashbang */ +html[data-theme="light"] .highlight .cm { color: #515151 } /* Comment.Multiline */ +html[data-theme="light"] .highlight .cp { color: #515151 } /* Comment.Preproc */ +html[data-theme="light"] .highlight .cpf { color: #515151 } /* Comment.PreprocFile */ +html[data-theme="light"] .highlight .c1 { color: #515151 } /* Comment.Single */ +html[data-theme="light"] .highlight .cs { color: #515151 } /* Comment.Special */ +html[data-theme="light"] .highlight .gd { color: #005b82 } /* Generic.Deleted */ +html[data-theme="light"] .highlight .ge { font-style: italic } /* Generic.Emph */ +html[data-theme="light"] .highlight .gh { color: #005b82 } /* Generic.Heading */ +html[data-theme="light"] .highlight .gs { font-weight: bold } /* Generic.Strong */ +html[data-theme="light"] .highlight .gu { color: #005b82 } /* Generic.Subheading */ +html[data-theme="light"] .highlight .kc { color: #6730c5 } /* Keyword.Constant */ +html[data-theme="light"] .highlight .kd { color: #6730c5 } /* Keyword.Declaration */ +html[data-theme="light"] .highlight .kn { color: #6730c5 } /* Keyword.Namespace */ +html[data-theme="light"] .highlight .kp { color: #6730c5 } /* Keyword.Pseudo */ +html[data-theme="light"] .highlight .kr { color: #6730c5 } /* Keyword.Reserved */ +html[data-theme="light"] .highlight .kt { color: #7f4707 } /* Keyword.Type */ +html[data-theme="light"] .highlight .ld { color: #7f4707 } /* Literal.Date */ +html[data-theme="light"] .highlight .m { color: #7f4707 } /* Literal.Number */ +html[data-theme="light"] .highlight .s { color: #00622f } /* Literal.String */ +html[data-theme="light"] .highlight .na { color: #912583 } /* Name.Attribute */ +html[data-theme="light"] .highlight .nb { color: #7f4707 } /* Name.Builtin */ +html[data-theme="light"] .highlight .nc { color: #005b82 } /* Name.Class */ +html[data-theme="light"] .highlight .no { color: #005b82 } /* Name.Constant */ +html[data-theme="light"] .highlight .nd { color: #7f4707 } /* Name.Decorator */ +html[data-theme="light"] .highlight .ni { color: #00622f } /* Name.Entity */ +html[data-theme="light"] .highlight .ne { color: #6730c5 } /* Name.Exception */ +html[data-theme="light"] .highlight .nf { color: #005b82 } /* Name.Function */ +html[data-theme="light"] .highlight .nl { color: #7f4707 } /* Name.Label */ +html[data-theme="light"] .highlight .nn { color: #080808 } /* Name.Namespace */ +html[data-theme="light"] .highlight .nx { color: #080808 } /* Name.Other */ +html[data-theme="light"] .highlight .py { color: #005b82 } /* Name.Property */ +html[data-theme="light"] .highlight .nt { color: #005b82 } /* Name.Tag */ +html[data-theme="light"] .highlight .nv { color: #a12236 } /* Name.Variable */ +html[data-theme="light"] .highlight .ow { color: #6730c5 } /* Operator.Word */ +html[data-theme="light"] .highlight .pm { color: #080808 } /* Punctuation.Marker */ +html[data-theme="light"] .highlight .w { color: #080808 } /* Text.Whitespace */ +html[data-theme="light"] .highlight .mb { color: #7f4707 } /* Literal.Number.Bin */ +html[data-theme="light"] .highlight .mf { color: #7f4707 } /* Literal.Number.Float */ +html[data-theme="light"] .highlight .mh { color: #7f4707 } /* Literal.Number.Hex */ +html[data-theme="light"] .highlight .mi { color: #7f4707 } /* Literal.Number.Integer */ +html[data-theme="light"] .highlight .mo { color: #7f4707 } /* Literal.Number.Oct */ +html[data-theme="light"] .highlight .sa { color: #00622f } /* Literal.String.Affix */ +html[data-theme="light"] .highlight .sb { color: #00622f } /* Literal.String.Backtick */ +html[data-theme="light"] .highlight .sc { color: #00622f } /* Literal.String.Char */ +html[data-theme="light"] .highlight .dl { color: #00622f } /* Literal.String.Delimiter */ +html[data-theme="light"] .highlight .sd { color: #00622f } /* Literal.String.Doc */ +html[data-theme="light"] .highlight .s2 { color: #00622f } /* Literal.String.Double */ +html[data-theme="light"] .highlight .se { color: #00622f } /* Literal.String.Escape */ +html[data-theme="light"] .highlight .sh { color: #00622f } /* Literal.String.Heredoc */ +html[data-theme="light"] .highlight .si { color: #00622f } /* Literal.String.Interpol */ +html[data-theme="light"] .highlight .sx { color: #00622f } /* Literal.String.Other */ +html[data-theme="light"] .highlight .sr { color: #a12236 } /* Literal.String.Regex */ +html[data-theme="light"] .highlight .s1 { color: #00622f } /* Literal.String.Single */ +html[data-theme="light"] .highlight .ss { color: #005b82 } /* Literal.String.Symbol */ +html[data-theme="light"] .highlight .bp { color: #7f4707 } /* Name.Builtin.Pseudo */ +html[data-theme="light"] .highlight .fm { color: #005b82 } /* Name.Function.Magic */ +html[data-theme="light"] .highlight .vc { color: #a12236 } /* Name.Variable.Class */ +html[data-theme="light"] .highlight .vg { color: #a12236 } /* Name.Variable.Global */ +html[data-theme="light"] .highlight .vi { color: #a12236 } /* Name.Variable.Instance */ +html[data-theme="light"] .highlight .vm { color: #7f4707 } /* Name.Variable.Magic */ +html[data-theme="light"] .highlight .il { color: #7f4707 } /* Literal.Number.Integer.Long */ +html[data-theme="dark"] .highlight pre { line-height: 125%; } +html[data-theme="dark"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +html[data-theme="dark"] .highlight .hll { background-color: #ffd9002e } +html[data-theme="dark"] .highlight { background: #2b2b2b; color: #f8f8f2 } +html[data-theme="dark"] .highlight .c { color: #ffd900 } /* Comment */ +html[data-theme="dark"] .highlight .err { color: #ffa07a } /* Error */ +html[data-theme="dark"] .highlight .k { color: #dcc6e0 } /* Keyword */ +html[data-theme="dark"] .highlight .l { color: #ffd900 } /* Literal */ +html[data-theme="dark"] .highlight .n { color: #f8f8f2 } /* Name */ +html[data-theme="dark"] .highlight .o { color: #abe338 } /* Operator */ +html[data-theme="dark"] .highlight .p { color: #f8f8f2 } /* Punctuation */ +html[data-theme="dark"] .highlight .ch { color: #ffd900 } /* Comment.Hashbang */ +html[data-theme="dark"] .highlight .cm { color: #ffd900 } /* Comment.Multiline */ +html[data-theme="dark"] .highlight .cp { color: #ffd900 } /* Comment.Preproc */ +html[data-theme="dark"] .highlight .cpf { color: #ffd900 } /* Comment.PreprocFile */ +html[data-theme="dark"] .highlight .c1 { color: #ffd900 } /* Comment.Single */ +html[data-theme="dark"] .highlight .cs { color: #ffd900 } /* Comment.Special */ +html[data-theme="dark"] .highlight .gd { color: #00e0e0 } /* Generic.Deleted */ +html[data-theme="dark"] .highlight .ge { font-style: italic } /* Generic.Emph */ +html[data-theme="dark"] .highlight .gh { color: #00e0e0 } /* Generic.Heading */ +html[data-theme="dark"] .highlight .gs { font-weight: bold } /* Generic.Strong */ +html[data-theme="dark"] .highlight .gu { color: #00e0e0 } /* Generic.Subheading */ +html[data-theme="dark"] .highlight .kc { color: #dcc6e0 } /* Keyword.Constant */ +html[data-theme="dark"] .highlight .kd { color: #dcc6e0 } /* Keyword.Declaration */ +html[data-theme="dark"] .highlight .kn { color: #dcc6e0 } /* Keyword.Namespace */ +html[data-theme="dark"] .highlight .kp { color: #dcc6e0 } /* Keyword.Pseudo */ +html[data-theme="dark"] .highlight .kr { color: #dcc6e0 } /* Keyword.Reserved */ +html[data-theme="dark"] .highlight .kt { color: #ffd900 } /* Keyword.Type */ +html[data-theme="dark"] .highlight .ld { color: #ffd900 } /* Literal.Date */ +html[data-theme="dark"] .highlight .m { color: #ffd900 } /* Literal.Number */ +html[data-theme="dark"] .highlight .s { color: #abe338 } /* Literal.String */ +html[data-theme="dark"] .highlight .na { color: #ffd900 } /* Name.Attribute */ +html[data-theme="dark"] .highlight .nb { color: #ffd900 } /* Name.Builtin */ +html[data-theme="dark"] .highlight .nc { color: #00e0e0 } /* Name.Class */ +html[data-theme="dark"] .highlight .no { color: #00e0e0 } /* Name.Constant */ +html[data-theme="dark"] .highlight .nd { color: #ffd900 } /* Name.Decorator */ +html[data-theme="dark"] .highlight .ni { color: #abe338 } /* Name.Entity */ +html[data-theme="dark"] .highlight .ne { color: #dcc6e0 } /* Name.Exception */ +html[data-theme="dark"] .highlight .nf { color: #00e0e0 } /* Name.Function */ +html[data-theme="dark"] .highlight .nl { color: #ffd900 } /* Name.Label */ +html[data-theme="dark"] .highlight .nn { color: #f8f8f2 } /* Name.Namespace */ +html[data-theme="dark"] .highlight .nx { color: #f8f8f2 } /* Name.Other */ +html[data-theme="dark"] .highlight .py { color: #00e0e0 } /* Name.Property */ +html[data-theme="dark"] .highlight .nt { color: #00e0e0 } /* Name.Tag */ +html[data-theme="dark"] .highlight .nv { color: #ffa07a } /* Name.Variable */ +html[data-theme="dark"] .highlight .ow { color: #dcc6e0 } /* Operator.Word */ +html[data-theme="dark"] .highlight .pm { color: #f8f8f2 } /* Punctuation.Marker */ +html[data-theme="dark"] .highlight .w { color: #f8f8f2 } /* Text.Whitespace */ +html[data-theme="dark"] .highlight .mb { color: #ffd900 } /* Literal.Number.Bin */ +html[data-theme="dark"] .highlight .mf { color: #ffd900 } /* Literal.Number.Float */ +html[data-theme="dark"] .highlight .mh { color: #ffd900 } /* Literal.Number.Hex */ +html[data-theme="dark"] .highlight .mi { color: #ffd900 } /* Literal.Number.Integer */ +html[data-theme="dark"] .highlight .mo { color: #ffd900 } /* Literal.Number.Oct */ +html[data-theme="dark"] .highlight .sa { color: #abe338 } /* Literal.String.Affix */ +html[data-theme="dark"] .highlight .sb { color: #abe338 } /* Literal.String.Backtick */ +html[data-theme="dark"] .highlight .sc { color: #abe338 } /* Literal.String.Char */ +html[data-theme="dark"] .highlight .dl { color: #abe338 } /* Literal.String.Delimiter */ +html[data-theme="dark"] .highlight .sd { color: #abe338 } /* Literal.String.Doc */ +html[data-theme="dark"] .highlight .s2 { color: #abe338 } /* Literal.String.Double */ +html[data-theme="dark"] .highlight .se { color: #abe338 } /* Literal.String.Escape */ +html[data-theme="dark"] .highlight .sh { color: #abe338 } /* Literal.String.Heredoc */ +html[data-theme="dark"] .highlight .si { color: #abe338 } /* Literal.String.Interpol */ +html[data-theme="dark"] .highlight .sx { color: #abe338 } /* Literal.String.Other */ +html[data-theme="dark"] .highlight .sr { color: #ffa07a } /* Literal.String.Regex */ +html[data-theme="dark"] .highlight .s1 { color: #abe338 } /* Literal.String.Single */ +html[data-theme="dark"] .highlight .ss { color: #00e0e0 } /* Literal.String.Symbol */ +html[data-theme="dark"] .highlight .bp { color: #ffd900 } /* Name.Builtin.Pseudo */ +html[data-theme="dark"] .highlight .fm { color: #00e0e0 } /* Name.Function.Magic */ +html[data-theme="dark"] .highlight .vc { color: #ffa07a } /* Name.Variable.Class */ +html[data-theme="dark"] .highlight .vg { color: #ffa07a } /* Name.Variable.Global */ +html[data-theme="dark"] .highlight .vi { color: #ffa07a } /* Name.Variable.Instance */ +html[data-theme="dark"] .highlight .vm { color: #ffd900 } /* Name.Variable.Magic */ +html[data-theme="dark"] .highlight .il { color: #ffd900 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/_static/sbt-webpack-macros.html b/_static/sbt-webpack-macros.html new file mode 100644 index 00000000..6cbf559f --- /dev/null +++ b/_static/sbt-webpack-macros.html @@ -0,0 +1,11 @@ + +{% macro head_pre_bootstrap() %} + +{% endmacro %} + +{% macro body_post() %} + +{% endmacro %} diff --git a/_static/scripts/bootstrap.js b/_static/scripts/bootstrap.js new file mode 100644 index 00000000..c8178deb --- /dev/null +++ b/_static/scripts/bootstrap.js @@ -0,0 +1,3 @@ +/*! For license information please see bootstrap.js.LICENSE.txt */ +(()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{afterMain:()=>E,afterRead:()=>v,afterWrite:()=>C,applyStyles:()=>$,arrow:()=>J,auto:()=>a,basePlacements:()=>l,beforeMain:()=>y,beforeRead:()=>_,beforeWrite:()=>A,bottom:()=>s,clippingParents:()=>d,computeStyles:()=>it,createPopper:()=>Dt,createPopperBase:()=>St,createPopperLite:()=>$t,detectOverflow:()=>_t,end:()=>h,eventListeners:()=>st,flip:()=>bt,hide:()=>wt,left:()=>r,main:()=>w,modifierPhases:()=>O,offset:()=>Et,placements:()=>g,popper:()=>f,popperGenerator:()=>Lt,popperOffsets:()=>At,preventOverflow:()=>Tt,read:()=>b,reference:()=>p,right:()=>o,start:()=>c,top:()=>n,variationPlacements:()=>m,viewport:()=>u,write:()=>T});var i={};t.r(i),t.d(i,{Alert:()=>Oe,Button:()=>ke,Carousel:()=>li,Collapse:()=>Ei,Dropdown:()=>Ki,Modal:()=>Ln,Offcanvas:()=>Kn,Popover:()=>bs,ScrollSpy:()=>Ls,Tab:()=>Js,Toast:()=>po,Tooltip:()=>fs});var n="top",s="bottom",o="right",r="left",a="auto",l=[n,s,o,r],c="start",h="end",d="clippingParents",u="viewport",f="popper",p="reference",m=l.reduce((function(t,e){return t.concat([e+"-"+c,e+"-"+h])}),[]),g=[].concat(l,[a]).reduce((function(t,e){return t.concat([e,e+"-"+c,e+"-"+h])}),[]),_="beforeRead",b="read",v="afterRead",y="beforeMain",w="main",E="afterMain",A="beforeWrite",T="write",C="afterWrite",O=[_,b,v,y,w,E,A,T,C];function x(t){return t?(t.nodeName||"").toLowerCase():null}function k(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function L(t){return t instanceof k(t).Element||t instanceof Element}function S(t){return t instanceof k(t).HTMLElement||t instanceof HTMLElement}function D(t){return"undefined"!=typeof ShadowRoot&&(t instanceof k(t).ShadowRoot||t instanceof ShadowRoot)}const $={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];S(s)&&x(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});S(n)&&x(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function I(t){return t.split("-")[0]}var N=Math.max,P=Math.min,M=Math.round;function j(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function F(){return!/^((?!chrome|android).)*safari/i.test(j())}function H(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&S(t)&&(s=t.offsetWidth>0&&M(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&M(n.height)/t.offsetHeight||1);var r=(L(t)?k(t):window).visualViewport,a=!F()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function B(t){var e=H(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function W(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&D(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function z(t){return k(t).getComputedStyle(t)}function R(t){return["table","td","th"].indexOf(x(t))>=0}function q(t){return((L(t)?t.ownerDocument:t.document)||window.document).documentElement}function V(t){return"html"===x(t)?t:t.assignedSlot||t.parentNode||(D(t)?t.host:null)||q(t)}function Y(t){return S(t)&&"fixed"!==z(t).position?t.offsetParent:null}function K(t){for(var e=k(t),i=Y(t);i&&R(i)&&"static"===z(i).position;)i=Y(i);return i&&("html"===x(i)||"body"===x(i)&&"static"===z(i).position)?e:i||function(t){var e=/firefox/i.test(j());if(/Trident/i.test(j())&&S(t)&&"fixed"===z(t).position)return null;var i=V(t);for(D(i)&&(i=i.host);S(i)&&["html","body"].indexOf(x(i))<0;){var n=z(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Q(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function X(t,e,i){return N(t,P(e,i))}function U(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function G(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const J={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,a=t.name,c=t.options,h=i.elements.arrow,d=i.modifiersData.popperOffsets,u=I(i.placement),f=Q(u),p=[r,o].indexOf(u)>=0?"height":"width";if(h&&d){var m=function(t,e){return U("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:G(t,l))}(c.padding,i),g=B(h),_="y"===f?n:r,b="y"===f?s:o,v=i.rects.reference[p]+i.rects.reference[f]-d[f]-i.rects.popper[p],y=d[f]-i.rects.reference[f],w=K(h),E=w?"y"===f?w.clientHeight||0:w.clientWidth||0:0,A=v/2-y/2,T=m[_],C=E-g[p]-m[b],O=E/2-g[p]/2+A,x=X(T,O,C),k=f;i.modifiersData[a]=((e={})[k]=x,e.centerOffset=x-O,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&W(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Z(t){return t.split("-")[1]}var tt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function et(t){var e,i=t.popper,a=t.popperRect,l=t.placement,c=t.variation,d=t.offsets,u=t.position,f=t.gpuAcceleration,p=t.adaptive,m=t.roundOffsets,g=t.isFixed,_=d.x,b=void 0===_?0:_,v=d.y,y=void 0===v?0:v,w="function"==typeof m?m({x:b,y}):{x:b,y};b=w.x,y=w.y;var E=d.hasOwnProperty("x"),A=d.hasOwnProperty("y"),T=r,C=n,O=window;if(p){var x=K(i),L="clientHeight",S="clientWidth";x===k(i)&&"static"!==z(x=q(i)).position&&"absolute"===u&&(L="scrollHeight",S="scrollWidth"),(l===n||(l===r||l===o)&&c===h)&&(C=s,y-=(g&&x===O&&O.visualViewport?O.visualViewport.height:x[L])-a.height,y*=f?1:-1),l!==r&&(l!==n&&l!==s||c!==h)||(T=o,b-=(g&&x===O&&O.visualViewport?O.visualViewport.width:x[S])-a.width,b*=f?1:-1)}var D,$=Object.assign({position:u},p&&tt),I=!0===m?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:M(i*s)/s||0,y:M(n*s)/s||0}}({x:b,y},k(i)):{x:b,y};return b=I.x,y=I.y,f?Object.assign({},$,((D={})[C]=A?"0":"",D[T]=E?"0":"",D.transform=(O.devicePixelRatio||1)<=1?"translate("+b+"px, "+y+"px)":"translate3d("+b+"px, "+y+"px, 0)",D)):Object.assign({},$,((e={})[C]=A?y+"px":"",e[T]=E?b+"px":"",e.transform="",e))}const it={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:I(e.placement),variation:Z(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,et(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,et(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var nt={passive:!0};const st={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=k(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,nt)})),a&&l.addEventListener("resize",i.update,nt),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,nt)})),a&&l.removeEventListener("resize",i.update,nt)}},data:{}};var ot={left:"right",right:"left",bottom:"top",top:"bottom"};function rt(t){return t.replace(/left|right|bottom|top/g,(function(t){return ot[t]}))}var at={start:"end",end:"start"};function lt(t){return t.replace(/start|end/g,(function(t){return at[t]}))}function ct(t){var e=k(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function ht(t){return H(q(t)).left+ct(t).scrollLeft}function dt(t){var e=z(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function ut(t){return["html","body","#document"].indexOf(x(t))>=0?t.ownerDocument.body:S(t)&&dt(t)?t:ut(V(t))}function ft(t,e){var i;void 0===e&&(e=[]);var n=ut(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=k(n),r=s?[o].concat(o.visualViewport||[],dt(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(ft(V(r)))}function pt(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function mt(t,e,i){return e===u?pt(function(t,e){var i=k(t),n=q(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=F();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+ht(t),y:l}}(t,i)):L(e)?function(t,e){var i=H(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):pt(function(t){var e,i=q(t),n=ct(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=N(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=N(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ht(t),l=-n.scrollTop;return"rtl"===z(s||i).direction&&(a+=N(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(q(t)))}function gt(t){var e,i=t.reference,a=t.element,l=t.placement,d=l?I(l):null,u=l?Z(l):null,f=i.x+i.width/2-a.width/2,p=i.y+i.height/2-a.height/2;switch(d){case n:e={x:f,y:i.y-a.height};break;case s:e={x:f,y:i.y+i.height};break;case o:e={x:i.x+i.width,y:p};break;case r:e={x:i.x-a.width,y:p};break;default:e={x:i.x,y:i.y}}var m=d?Q(d):null;if(null!=m){var g="y"===m?"height":"width";switch(u){case c:e[m]=e[m]-(i[g]/2-a[g]/2);break;case h:e[m]=e[m]+(i[g]/2-a[g]/2)}}return e}function _t(t,e){void 0===e&&(e={});var i=e,r=i.placement,a=void 0===r?t.placement:r,c=i.strategy,h=void 0===c?t.strategy:c,m=i.boundary,g=void 0===m?d:m,_=i.rootBoundary,b=void 0===_?u:_,v=i.elementContext,y=void 0===v?f:v,w=i.altBoundary,E=void 0!==w&&w,A=i.padding,T=void 0===A?0:A,C=U("number"!=typeof T?T:G(T,l)),O=y===f?p:f,k=t.rects.popper,D=t.elements[E?O:y],$=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=ft(V(t)),i=["absolute","fixed"].indexOf(z(t).position)>=0&&S(t)?K(t):t;return L(i)?e.filter((function(t){return L(t)&&W(t,i)&&"body"!==x(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=mt(t,i,n);return e.top=N(s.top,e.top),e.right=P(s.right,e.right),e.bottom=P(s.bottom,e.bottom),e.left=N(s.left,e.left),e}),mt(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(L(D)?D:D.contextElement||q(t.elements.popper),g,b,h),I=H(t.elements.reference),M=gt({reference:I,element:k,strategy:"absolute",placement:a}),j=pt(Object.assign({},k,M)),F=y===f?j:I,B={top:$.top-F.top+C.top,bottom:F.bottom-$.bottom+C.bottom,left:$.left-F.left+C.left,right:F.right-$.right+C.right},R=t.modifiersData.offset;if(y===f&&R){var Y=R[a];Object.keys(B).forEach((function(t){var e=[o,s].indexOf(t)>=0?1:-1,i=[n,s].indexOf(t)>=0?"y":"x";B[t]+=Y[i]*e}))}return B}const bt={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,h=t.name;if(!e.modifiersData[h]._skip){for(var d=i.mainAxis,u=void 0===d||d,f=i.altAxis,p=void 0===f||f,_=i.fallbackPlacements,b=i.padding,v=i.boundary,y=i.rootBoundary,w=i.altBoundary,E=i.flipVariations,A=void 0===E||E,T=i.allowedAutoPlacements,C=e.options.placement,O=I(C),x=_||(O!==C&&A?function(t){if(I(t)===a)return[];var e=rt(t);return[lt(t),e,lt(e)]}(C):[rt(C)]),k=[C].concat(x).reduce((function(t,i){return t.concat(I(i)===a?function(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,c=i.allowedAutoPlacements,h=void 0===c?g:c,d=Z(n),u=d?a?m:m.filter((function(t){return Z(t)===d})):l,f=u.filter((function(t){return h.indexOf(t)>=0}));0===f.length&&(f=u);var p=f.reduce((function(e,i){return e[i]=_t(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[I(i)],e}),{});return Object.keys(p).sort((function(t,e){return p[t]-p[e]}))}(e,{placement:i,boundary:v,rootBoundary:y,padding:b,flipVariations:A,allowedAutoPlacements:T}):i)}),[]),L=e.rects.reference,S=e.rects.popper,D=new Map,$=!0,N=k[0],P=0;P=0,B=H?"width":"height",W=_t(e,{placement:M,boundary:v,rootBoundary:y,altBoundary:w,padding:b}),z=H?F?o:r:F?s:n;L[B]>S[B]&&(z=rt(z));var R=rt(z),q=[];if(u&&q.push(W[j]<=0),p&&q.push(W[z]<=0,W[R]<=0),q.every((function(t){return t}))){N=M,$=!1;break}D.set(M,q)}if($)for(var V=function(t){var e=k.find((function(e){var i=D.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return N=e,"break"},Y=A?3:1;Y>0&&"break"!==V(Y);Y--);e.placement!==N&&(e.modifiersData[h]._skip=!0,e.placement=N,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function vt(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function yt(t){return[n,o,s,r].some((function(e){return t[e]>=0}))}const wt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=_t(e,{elementContext:"reference"}),a=_t(e,{altBoundary:!0}),l=vt(r,n),c=vt(a,s,o),h=yt(l),d=yt(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},Et={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,s=t.name,a=i.offset,l=void 0===a?[0,0]:a,c=g.reduce((function(t,i){return t[i]=function(t,e,i){var s=I(t),a=[r,n].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},e,{placement:t})):i,c=l[0],h=l[1];return c=c||0,h=(h||0)*a,[r,o].indexOf(s)>=0?{x:h,y:c}:{x:c,y:h}}(i,e.rects,l),t}),{}),h=c[e.placement],d=h.x,u=h.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=d,e.modifiersData.popperOffsets.y+=u),e.modifiersData[s]=c}},At={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=gt({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},Tt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,a=t.name,l=i.mainAxis,h=void 0===l||l,d=i.altAxis,u=void 0!==d&&d,f=i.boundary,p=i.rootBoundary,m=i.altBoundary,g=i.padding,_=i.tether,b=void 0===_||_,v=i.tetherOffset,y=void 0===v?0:v,w=_t(e,{boundary:f,rootBoundary:p,padding:g,altBoundary:m}),E=I(e.placement),A=Z(e.placement),T=!A,C=Q(E),O="x"===C?"y":"x",x=e.modifiersData.popperOffsets,k=e.rects.reference,L=e.rects.popper,S="function"==typeof y?y(Object.assign({},e.rects,{placement:e.placement})):y,D="number"==typeof S?{mainAxis:S,altAxis:S}:Object.assign({mainAxis:0,altAxis:0},S),$=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,M={x:0,y:0};if(x){if(h){var j,F="y"===C?n:r,H="y"===C?s:o,W="y"===C?"height":"width",z=x[C],R=z+w[F],q=z-w[H],V=b?-L[W]/2:0,Y=A===c?k[W]:L[W],U=A===c?-L[W]:-k[W],G=e.elements.arrow,J=b&&G?B(G):{width:0,height:0},tt=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},et=tt[F],it=tt[H],nt=X(0,k[W],J[W]),st=T?k[W]/2-V-nt-et-D.mainAxis:Y-nt-et-D.mainAxis,ot=T?-k[W]/2+V+nt+it+D.mainAxis:U+nt+it+D.mainAxis,rt=e.elements.arrow&&K(e.elements.arrow),at=rt?"y"===C?rt.clientTop||0:rt.clientLeft||0:0,lt=null!=(j=null==$?void 0:$[C])?j:0,ct=z+ot-lt,ht=X(b?P(R,z+st-lt-at):R,z,b?N(q,ct):q);x[C]=ht,M[C]=ht-z}if(u){var dt,ut="x"===C?n:r,ft="x"===C?s:o,pt=x[O],mt="y"===O?"height":"width",gt=pt+w[ut],bt=pt-w[ft],vt=-1!==[n,r].indexOf(E),yt=null!=(dt=null==$?void 0:$[O])?dt:0,wt=vt?gt:pt-k[mt]-L[mt]-yt+D.altAxis,Et=vt?pt+k[mt]+L[mt]-yt-D.altAxis:bt,At=b&&vt?function(t,e,i){var n=X(t,e,i);return n>i?i:n}(wt,pt,Et):X(b?wt:gt,pt,b?Et:bt);x[O]=At,M[O]=At-pt}e.modifiersData[a]=M}},requiresIfExists:["offset"]};function Ct(t,e,i){void 0===i&&(i=!1);var n,s,o=S(e),r=S(e)&&function(t){var e=t.getBoundingClientRect(),i=M(e.width)/t.offsetWidth||1,n=M(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=q(e),l=H(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==x(e)||dt(a))&&(c=(n=e)!==k(n)&&S(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:ct(n)),S(e)?((h=H(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=ht(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function Ot(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var xt={placement:"bottom",modifiers:[],strategy:"absolute"};function kt(){for(var t=arguments.length,e=new Array(t),i=0;iIt.has(t)&&It.get(t).get(e)||null,remove(t,e){if(!It.has(t))return;const i=It.get(t);i.delete(e),0===i.size&&It.delete(t)}},Pt="transitionend",Mt=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),jt=t=>{t.dispatchEvent(new Event(Pt))},Ft=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),Ht=t=>Ft(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(Mt(t)):null,Bt=t=>{if(!Ft(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},Wt=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),zt=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?zt(t.parentNode):null},Rt=()=>{},qt=t=>{t.offsetHeight},Vt=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,Yt=[],Kt=()=>"rtl"===document.documentElement.dir,Qt=t=>{var e;e=()=>{const e=Vt();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(Yt.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of Yt)t()})),Yt.push(e)):e()},Xt=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,Ut=(t,e,i=!0)=>{if(!i)return void Xt(t);const n=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let s=!1;const o=({target:i})=>{i===e&&(s=!0,e.removeEventListener(Pt,o),Xt(t))};e.addEventListener(Pt,o),setTimeout((()=>{s||jt(e)}),n)},Gt=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},Jt=/[^.]*(?=\..*)\.|.*/,Zt=/\..*/,te=/::\d+$/,ee={};let ie=1;const ne={mouseenter:"mouseover",mouseleave:"mouseout"},se=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function oe(t,e){return e&&`${e}::${ie++}`||t.uidEvent||ie++}function re(t){const e=oe(t);return t.uidEvent=e,ee[e]=ee[e]||{},ee[e]}function ae(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function le(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=ue(t);return se.has(o)||(o=t),[n,s,o]}function ce(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=le(e,i,n);if(e in ne){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=re(t),c=l[a]||(l[a]={}),h=ae(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=oe(r,e.replace(Jt,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return pe(s,{delegateTarget:r}),n.oneOff&&fe.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return pe(n,{delegateTarget:t}),i.oneOff&&fe.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function he(t,e,i,n,s){const o=ae(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function de(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&he(t,e,i,r.callable,r.delegationSelector)}function ue(t){return t=t.replace(Zt,""),ne[t]||t}const fe={on(t,e,i,n){ce(t,e,i,n,!1)},one(t,e,i,n){ce(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=le(e,i,n),a=r!==e,l=re(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))de(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(te,"");a&&!e.includes(s)||he(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;he(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=Vt();let s=null,o=!0,r=!0,a=!1;e!==ue(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=pe(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function pe(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function me(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function ge(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const _e={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${ge(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${ge(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=me(t.dataset[n])}return e},getDataAttribute:(t,e)=>me(t.getAttribute(`data-bs-${ge(e)}`))};class be{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=Ft(e)?_e.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...Ft(e)?_e.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],o=Ft(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(o))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${o}" but expected type "${s}".`)}var i}}class ve extends be{constructor(t,e){super(),(t=Ht(t))&&(this._element=t,this._config=this._getConfig(e),Nt.set(this._element,this.constructor.DATA_KEY,this))}dispose(){Nt.remove(this._element,this.constructor.DATA_KEY),fe.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){Ut(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return Nt.get(Ht(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.3"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const ye=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return e?e.split(",").map((t=>Mt(t))).join(","):null},we={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!Wt(t)&&Bt(t)))},getSelectorFromElement(t){const e=ye(t);return e&&we.findOne(e)?e:null},getElementFromSelector(t){const e=ye(t);return e?we.findOne(e):null},getMultipleElementsFromSelector(t){const e=ye(t);return e?we.find(e):[]}},Ee=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;fe.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),Wt(this))return;const s=we.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))},Ae=".bs.alert",Te=`close${Ae}`,Ce=`closed${Ae}`;class Oe extends ve{static get NAME(){return"alert"}close(){if(fe.trigger(this._element,Te).defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),fe.trigger(this._element,Ce),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=Oe.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}Ee(Oe,"close"),Qt(Oe);const xe='[data-bs-toggle="button"]';class ke extends ve{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=ke.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}fe.on(document,"click.bs.button.data-api",xe,(t=>{t.preventDefault();const e=t.target.closest(xe);ke.getOrCreateInstance(e).toggle()})),Qt(ke);const Le=".bs.swipe",Se=`touchstart${Le}`,De=`touchmove${Le}`,$e=`touchend${Le}`,Ie=`pointerdown${Le}`,Ne=`pointerup${Le}`,Pe={endCallback:null,leftCallback:null,rightCallback:null},Me={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class je extends be{constructor(t,e){super(),this._element=t,t&&je.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return Pe}static get DefaultType(){return Me}static get NAME(){return"swipe"}dispose(){fe.off(this._element,Le)}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),Xt(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&Xt(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(fe.on(this._element,Ie,(t=>this._start(t))),fe.on(this._element,Ne,(t=>this._end(t))),this._element.classList.add("pointer-event")):(fe.on(this._element,Se,(t=>this._start(t))),fe.on(this._element,De,(t=>this._move(t))),fe.on(this._element,$e,(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const Fe=".bs.carousel",He=".data-api",Be="ArrowLeft",We="ArrowRight",ze="next",Re="prev",qe="left",Ve="right",Ye=`slide${Fe}`,Ke=`slid${Fe}`,Qe=`keydown${Fe}`,Xe=`mouseenter${Fe}`,Ue=`mouseleave${Fe}`,Ge=`dragstart${Fe}`,Je=`load${Fe}${He}`,Ze=`click${Fe}${He}`,ti="carousel",ei="active",ii=".active",ni=".carousel-item",si=ii+ni,oi={[Be]:Ve,[We]:qe},ri={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},ai={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class li extends ve{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=we.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===ti&&this.cycle()}static get Default(){return ri}static get DefaultType(){return ai}static get NAME(){return"carousel"}next(){this._slide(ze)}nextWhenVisible(){!document.hidden&&Bt(this._element)&&this.next()}prev(){this._slide(Re)}pause(){this._isSliding&&jt(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?fe.one(this._element,Ke,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void fe.one(this._element,Ke,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?ze:Re;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&fe.on(this._element,Qe,(t=>this._keydown(t))),"hover"===this._config.pause&&(fe.on(this._element,Xe,(()=>this.pause())),fe.on(this._element,Ue,(()=>this._maybeEnableCycle()))),this._config.touch&&je.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of we.find(".carousel-item img",this._element))fe.on(t,Ge,(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(qe)),rightCallback:()=>this._slide(this._directionToOrder(Ve)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new je(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=oi[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=we.findOne(ii,this._indicatorsElement);e.classList.remove(ei),e.removeAttribute("aria-current");const i=we.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(ei),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===ze,s=e||Gt(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>fe.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r(Ye).defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),qt(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(ei),i.classList.remove(ei,c,l),this._isSliding=!1,r(Ke)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return we.findOne(si,this._element)}_getItems(){return we.find(ni,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return Kt()?t===qe?Re:ze:t===qe?ze:Re}_orderToDirection(t){return Kt()?t===Re?qe:Ve:t===Re?Ve:qe}static jQueryInterface(t){return this.each((function(){const e=li.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}fe.on(document,Ze,"[data-bs-slide], [data-bs-slide-to]",(function(t){const e=we.getElementFromSelector(this);if(!e||!e.classList.contains(ti))return;t.preventDefault();const i=li.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===_e.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),fe.on(window,Je,(()=>{const t=we.find('[data-bs-ride="carousel"]');for(const e of t)li.getOrCreateInstance(e)})),Qt(li);const ci=".bs.collapse",hi=`show${ci}`,di=`shown${ci}`,ui=`hide${ci}`,fi=`hidden${ci}`,pi=`click${ci}.data-api`,mi="show",gi="collapse",_i="collapsing",bi=`:scope .${gi} .${gi}`,vi='[data-bs-toggle="collapse"]',yi={parent:null,toggle:!0},wi={parent:"(null|element)",toggle:"boolean"};class Ei extends ve{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=we.find(vi);for(const t of i){const e=we.getSelectorFromElement(t),i=we.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return yi}static get DefaultType(){return wi}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>Ei.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(fe.trigger(this._element,hi).defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(gi),this._element.classList.add(_i),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(_i),this._element.classList.add(gi,mi),this._element.style[e]="",fe.trigger(this._element,di)}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(fe.trigger(this._element,ui).defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,qt(this._element),this._element.classList.add(_i),this._element.classList.remove(gi,mi);for(const t of this._triggerArray){const e=we.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(_i),this._element.classList.add(gi),fe.trigger(this._element,fi)}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(mi)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=Ht(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(vi);for(const e of t){const t=we.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=we.find(bi,this._config.parent);return we.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=Ei.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}fe.on(document,pi,vi,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of we.getMultipleElementsFromSelector(this))Ei.getOrCreateInstance(t,{toggle:!1}).toggle()})),Qt(Ei);const Ai="dropdown",Ti=".bs.dropdown",Ci=".data-api",Oi="ArrowUp",xi="ArrowDown",ki=`hide${Ti}`,Li=`hidden${Ti}`,Si=`show${Ti}`,Di=`shown${Ti}`,$i=`click${Ti}${Ci}`,Ii=`keydown${Ti}${Ci}`,Ni=`keyup${Ti}${Ci}`,Pi="show",Mi='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',ji=`${Mi}.${Pi}`,Fi=".dropdown-menu",Hi=Kt()?"top-end":"top-start",Bi=Kt()?"top-start":"top-end",Wi=Kt()?"bottom-end":"bottom-start",zi=Kt()?"bottom-start":"bottom-end",Ri=Kt()?"left-start":"right-start",qi=Kt()?"right-start":"left-start",Vi={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},Yi={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class Ki extends ve{constructor(t,e){super(t,e),this._popper=null,this._parent=this._element.parentNode,this._menu=we.next(this._element,Fi)[0]||we.prev(this._element,Fi)[0]||we.findOne(Fi,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return Vi}static get DefaultType(){return Yi}static get NAME(){return Ai}toggle(){return this._isShown()?this.hide():this.show()}show(){if(Wt(this._element)||this._isShown())return;const t={relatedTarget:this._element};if(!fe.trigger(this._element,Si,t).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const t of[].concat(...document.body.children))fe.on(t,"mouseover",Rt);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Pi),this._element.classList.add(Pi),fe.trigger(this._element,Di,t)}}hide(){if(Wt(this._element)||!this._isShown())return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){if(!fe.trigger(this._element,ki,t).defaultPrevented){if("ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))fe.off(t,"mouseover",Rt);this._popper&&this._popper.destroy(),this._menu.classList.remove(Pi),this._element.classList.remove(Pi),this._element.setAttribute("aria-expanded","false"),_e.removeDataAttribute(this._menu,"popper"),fe.trigger(this._element,Li,t)}}_getConfig(t){if("object"==typeof(t=super._getConfig(t)).reference&&!Ft(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ai.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(){if(void 0===e)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=this._parent:Ft(this._config.reference)?t=Ht(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const i=this._getPopperConfig();this._popper=Dt(t,this._menu,i)}_isShown(){return this._menu.classList.contains(Pi)}_getPlacement(){const t=this._parent;if(t.classList.contains("dropend"))return Ri;if(t.classList.contains("dropstart"))return qi;if(t.classList.contains("dropup-center"))return"top";if(t.classList.contains("dropdown-center"))return"bottom";const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?Bi:Hi:e?zi:Wi}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(_e.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...Xt(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=we.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>Bt(t)));i.length&&Gt(i,e,t===xi,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=Ki.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=we.find(ji);for(const i of e){const e=Ki.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Oi,xi].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Mi)?this:we.prev(this,Mi)[0]||we.next(this,Mi)[0]||we.findOne(Mi,t.delegateTarget.parentNode),o=Ki.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}fe.on(document,Ii,Mi,Ki.dataApiKeydownHandler),fe.on(document,Ii,Fi,Ki.dataApiKeydownHandler),fe.on(document,$i,Ki.clearMenus),fe.on(document,Ni,Ki.clearMenus),fe.on(document,$i,Mi,(function(t){t.preventDefault(),Ki.getOrCreateInstance(this).toggle()})),Qt(Ki);const Qi="backdrop",Xi="show",Ui=`mousedown.bs.${Qi}`,Gi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Ji={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Zi extends be{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return Gi}static get DefaultType(){return Ji}static get NAME(){return Qi}show(t){if(!this._config.isVisible)return void Xt(t);this._append();const e=this._getElement();this._config.isAnimated&&qt(e),e.classList.add(Xi),this._emulateAnimation((()=>{Xt(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(Xi),this._emulateAnimation((()=>{this.dispose(),Xt(t)}))):Xt(t)}dispose(){this._isAppended&&(fe.off(this._element,Ui),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=Ht(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),fe.on(t,Ui,(()=>{Xt(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){Ut(t,this._getElement(),this._config.isAnimated)}}const tn=".bs.focustrap",en=`focusin${tn}`,nn=`keydown.tab${tn}`,sn="backward",on={autofocus:!0,trapElement:null},rn={autofocus:"boolean",trapElement:"element"};class an extends be{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return on}static get DefaultType(){return rn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),fe.off(document,tn),fe.on(document,en,(t=>this._handleFocusin(t))),fe.on(document,nn,(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,fe.off(document,tn))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=we.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===sn?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?sn:"forward")}}const ln=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",cn=".sticky-top",hn="padding-right",dn="margin-right";class un{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,hn,(e=>e+t)),this._setElementAttributes(ln,hn,(e=>e+t)),this._setElementAttributes(cn,dn,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,hn),this._resetElementAttributes(ln,hn),this._resetElementAttributes(cn,dn)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&_e.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=_e.getDataAttribute(t,e);null!==i?(_e.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(Ft(t))e(t);else for(const i of we.find(t,this._element))e(i)}}const fn=".bs.modal",pn=`hide${fn}`,mn=`hidePrevented${fn}`,gn=`hidden${fn}`,_n=`show${fn}`,bn=`shown${fn}`,vn=`resize${fn}`,yn=`click.dismiss${fn}`,wn=`mousedown.dismiss${fn}`,En=`keydown.dismiss${fn}`,An=`click${fn}.data-api`,Tn="modal-open",Cn="show",On="modal-static",xn={backdrop:!0,focus:!0,keyboard:!0},kn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class Ln extends ve{constructor(t,e){super(t,e),this._dialog=we.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new un,this._addEventListeners()}static get Default(){return xn}static get DefaultType(){return kn}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||fe.trigger(this._element,_n,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(Tn),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(fe.trigger(this._element,pn).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Cn),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){fe.off(window,fn),fe.off(this._dialog,fn),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Zi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new an({trapElement:this._element})}_showElement(t){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const e=we.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),qt(this._element),this._element.classList.add(Cn),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,fe.trigger(this._element,bn,{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){fe.on(this._element,En,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),fe.on(window,vn,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),fe.on(this._element,wn,(t=>{fe.one(this._element,yn,(e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(Tn),this._resetAdjustments(),this._scrollBar.reset(),fe.trigger(this._element,gn)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(fe.trigger(this._element,mn).defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(On)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(On),this._queueCallback((()=>{this._element.classList.remove(On),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=Kt()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=Kt()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=Ln.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}fe.on(document,An,'[data-bs-toggle="modal"]',(function(t){const e=we.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),fe.one(e,_n,(t=>{t.defaultPrevented||fe.one(e,gn,(()=>{Bt(this)&&this.focus()}))}));const i=we.findOne(".modal.show");i&&Ln.getInstance(i).hide(),Ln.getOrCreateInstance(e).toggle(this)})),Ee(Ln),Qt(Ln);const Sn=".bs.offcanvas",Dn=".data-api",$n=`load${Sn}${Dn}`,In="show",Nn="showing",Pn="hiding",Mn=".offcanvas.show",jn=`show${Sn}`,Fn=`shown${Sn}`,Hn=`hide${Sn}`,Bn=`hidePrevented${Sn}`,Wn=`hidden${Sn}`,zn=`resize${Sn}`,Rn=`click${Sn}${Dn}`,qn=`keydown.dismiss${Sn}`,Vn={backdrop:!0,keyboard:!0,scroll:!1},Yn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class Kn extends ve{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return Vn}static get DefaultType(){return Yn}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||fe.trigger(this._element,jn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new un).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Nn),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(In),this._element.classList.remove(Nn),fe.trigger(this._element,Fn,{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(fe.trigger(this._element,Hn).defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(Pn),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(In,Pn),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new un).reset(),fe.trigger(this._element,Wn)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new Zi({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():fe.trigger(this._element,Bn)}:null})}_initializeFocusTrap(){return new an({trapElement:this._element})}_addEventListeners(){fe.on(this._element,qn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():fe.trigger(this._element,Bn))}))}static jQueryInterface(t){return this.each((function(){const e=Kn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}fe.on(document,Rn,'[data-bs-toggle="offcanvas"]',(function(t){const e=we.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Wt(this))return;fe.one(e,Wn,(()=>{Bt(this)&&this.focus()}));const i=we.findOne(Mn);i&&i!==e&&Kn.getInstance(i).hide(),Kn.getOrCreateInstance(e).toggle(this)})),fe.on(window,$n,(()=>{for(const t of we.find(Mn))Kn.getOrCreateInstance(t).show()})),fe.on(window,zn,(()=>{for(const t of we.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&Kn.getOrCreateInstance(t).hide()})),Ee(Kn),Qt(Kn);const Qn={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],dd:[],div:[],dl:[],dt:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},Xn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Un=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Gn=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!Xn.has(i)||Boolean(Un.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Jn={allowList:Qn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},Zn={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},ts={entry:"(string|element|function|null)",selector:"(string|element)"};class es extends be{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Jn}static get DefaultType(){return Zn}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},ts)}_setContent(t,e,i){const n=we.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?Ft(e)?this._putElementInTemplate(Ht(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Gn(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return Xt(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const is=new Set(["sanitize","allowList","sanitizeFn"]),ns="fade",ss="show",os=".tooltip-inner",rs=".modal",as="hide.bs.modal",ls="hover",cs="focus",hs={AUTO:"auto",TOP:"top",RIGHT:Kt()?"left":"right",BOTTOM:"bottom",LEFT:Kt()?"right":"left"},ds={allowList:Qn,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},us={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class fs extends ve{constructor(t,i){if(void 0===e)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,i),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return ds}static get DefaultType(){return us}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),fe.off(this._element.closest(rs),as,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const t=fe.trigger(this._element,this.constructor.eventName("show")),e=(zt(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),fe.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(ss),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))fe.on(t,"mouseover",Rt);this._queueCallback((()=>{fe.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!fe.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(ss),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))fe.off(t,"mouseover",Rt);this._activeTrigger.click=!1,this._activeTrigger[cs]=!1,this._activeTrigger[ls]=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),fe.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(ns,ss),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(ns),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new es({...this._config,content:t,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{[os]:this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ns)}_isShown(){return this.tip&&this.tip.classList.contains(ss)}_createPopper(t){const e=Xt(this._config.placement,[this,t,this._element]),i=hs[e.toUpperCase()];return Dt(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return Xt(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...Xt(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)fe.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===ls?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===ls?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");fe.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?cs:ls]=!0,e._enter()})),fe.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?cs:ls]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},fe.on(this._element.closest(rs),as,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=_e.getDataAttributes(this._element);for(const t of Object.keys(e))is.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:Ht(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=fs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Qt(fs);const ps=".popover-header",ms=".popover-body",gs={...fs.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},_s={...fs.DefaultType,content:"(null|string|element|function)"};class bs extends fs{static get Default(){return gs}static get DefaultType(){return _s}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{[ps]:this._getTitle(),[ms]:this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(t){return this.each((function(){const e=bs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Qt(bs);const vs=".bs.scrollspy",ys=`activate${vs}`,ws=`click${vs}`,Es=`load${vs}.data-api`,As="active",Ts="[href]",Cs=".nav-link",Os=`${Cs}, .nav-item > ${Cs}, .list-group-item`,xs={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},ks={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Ls extends ve{constructor(t,e){super(t,e),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return xs}static get DefaultType(){return ks}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=Ht(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(fe.off(this._config.target,ws),fe.on(this._config.target,ws,Ts,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=we.find(Ts,this._config.target);for(const e of t){if(!e.hash||Wt(e))continue;const t=we.findOne(decodeURI(e.hash),this._element);Bt(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(As),this._activateParents(t),fe.trigger(this._element,ys,{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))we.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(As);else for(const e of we.parents(t,".nav, .list-group"))for(const t of we.prev(e,Os))t.classList.add(As)}_clearActiveClass(t){t.classList.remove(As);const e=we.find(`${Ts}.${As}`,t);for(const t of e)t.classList.remove(As)}static jQueryInterface(t){return this.each((function(){const e=Ls.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}fe.on(window,Es,(()=>{for(const t of we.find('[data-bs-spy="scroll"]'))Ls.getOrCreateInstance(t)})),Qt(Ls);const Ss=".bs.tab",Ds=`hide${Ss}`,$s=`hidden${Ss}`,Is=`show${Ss}`,Ns=`shown${Ss}`,Ps=`click${Ss}`,Ms=`keydown${Ss}`,js=`load${Ss}`,Fs="ArrowLeft",Hs="ArrowRight",Bs="ArrowUp",Ws="ArrowDown",zs="Home",Rs="End",qs="active",Vs="fade",Ys="show",Ks=".dropdown-toggle",Qs=`:not(${Ks})`,Xs='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Us=`.nav-link${Qs}, .list-group-item${Qs}, [role="tab"]${Qs}, ${Xs}`,Gs=`.${qs}[data-bs-toggle="tab"], .${qs}[data-bs-toggle="pill"], .${qs}[data-bs-toggle="list"]`;class Js extends ve{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),fe.on(this._element,Ms,(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?fe.trigger(e,Ds,{relatedTarget:t}):null;fe.trigger(t,Is,{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(qs),this._activate(we.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),fe.trigger(t,Ns,{relatedTarget:e})):t.classList.add(Ys)}),t,t.classList.contains(Vs)))}_deactivate(t,e){t&&(t.classList.remove(qs),t.blur(),this._deactivate(we.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),fe.trigger(t,$s,{relatedTarget:e})):t.classList.remove(Ys)}),t,t.classList.contains(Vs)))}_keydown(t){if(![Fs,Hs,Bs,Ws,zs,Rs].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=this._getChildren().filter((t=>!Wt(t)));let i;if([zs,Rs].includes(t.key))i=e[t.key===zs?0:e.length-1];else{const n=[Hs,Ws].includes(t.key);i=Gt(e,t.target,n,!0)}i&&(i.focus({preventScroll:!0}),Js.getOrCreateInstance(i).show())}_getChildren(){return we.find(Us,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=we.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=we.findOne(t,i);s&&s.classList.toggle(n,e)};n(Ks,qs),n(".dropdown-menu",Ys),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(qs)}_getInnerElement(t){return t.matches(Us)?t:we.findOne(Us,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=Js.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}fe.on(document,Ps,Xs,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),Wt(this)||Js.getOrCreateInstance(this).show()})),fe.on(window,js,(()=>{for(const t of we.find(Gs))Js.getOrCreateInstance(t)})),Qt(Js);const Zs=".bs.toast",to=`mouseover${Zs}`,eo=`mouseout${Zs}`,io=`focusin${Zs}`,no=`focusout${Zs}`,so=`hide${Zs}`,oo=`hidden${Zs}`,ro=`show${Zs}`,ao=`shown${Zs}`,lo="hide",co="show",ho="showing",uo={animation:"boolean",autohide:"boolean",delay:"number"},fo={animation:!0,autohide:!0,delay:5e3};class po extends ve{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return fo}static get DefaultType(){return uo}static get NAME(){return"toast"}show(){fe.trigger(this._element,ro).defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(lo),qt(this._element),this._element.classList.add(co,ho),this._queueCallback((()=>{this._element.classList.remove(ho),fe.trigger(this._element,ao),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(fe.trigger(this._element,so).defaultPrevented||(this._element.classList.add(ho),this._queueCallback((()=>{this._element.classList.add(lo),this._element.classList.remove(ho,co),fe.trigger(this._element,oo)}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(co),super.dispose()}isShown(){return this._element.classList.contains(co)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){fe.on(this._element,to,(t=>this._onInteraction(t,!0))),fe.on(this._element,eo,(t=>this._onInteraction(t,!1))),fe.on(this._element,io,(t=>this._onInteraction(t,!0))),fe.on(this._element,no,(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=po.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}function mo(t){"loading"!=document.readyState?t():document.addEventListener("DOMContentLoaded",t)}Ee(po),Qt(po),mo((function(){[].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]')).map((function(t){return new fs(t,{delay:{show:500,hide:100}})}))})),mo((function(){document.getElementById("pst-back-to-top").addEventListener("click",(function(){document.body.scrollTop=0,document.documentElement.scrollTop=0}))})),mo((function(){var t=document.getElementById("pst-back-to-top"),e=document.getElementsByClassName("bd-header")[0].getBoundingClientRect();window.addEventListener("scroll",(function(){this.oldScroll>this.scrollY&&this.scrollY>e.bottom?t.style.display="block":t.style.display="none",this.oldScroll=this.scrollY}))})),window.bootstrap=i})(); +//# sourceMappingURL=bootstrap.js.map \ No newline at end of file diff --git a/_static/scripts/bootstrap.js.LICENSE.txt b/_static/scripts/bootstrap.js.LICENSE.txt new file mode 100644 index 00000000..28755c2c --- /dev/null +++ b/_static/scripts/bootstrap.js.LICENSE.txt @@ -0,0 +1,5 @@ +/*! + * Bootstrap v5.3.3 (https://getbootstrap.com/) + * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ diff --git a/_static/scripts/bootstrap.js.map b/_static/scripts/bootstrap.js.map new file mode 100644 index 00000000..e9e81589 --- /dev/null +++ b/_static/scripts/bootstrap.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scripts/bootstrap.js","mappings":"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","sources":["webpack://pydata_sphinx_theme/webpack/bootstrap","webpack://pydata_sphinx_theme/webpack/runtime/define property getters","webpack://pydata_sphinx_theme/webpack/runtime/hasOwnProperty shorthand","webpack://pydata_sphinx_theme/webpack/runtime/make namespace object","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/enums.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/applyStyles.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getBasePlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/math.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/userAgent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/contains.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/within.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/expandToHashMap.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/arrow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getVariation.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/computeStyles.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/eventListeners.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/rectToClientRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/computeOffsets.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/detectOverflow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/flip.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/hide.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/offset.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/getAltAxis.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/orderModifiers.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/createPopper.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/debounce.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/utils/mergeByName.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/popper.js","webpack://pydata_sphinx_theme/./node_modules/@popperjs/core/lib/popper-lite.js","webpack://pydata_sphinx_theme/./node_modules/bootstrap/dist/js/bootstrap.esm.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/mixin.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/bootstrap.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","/*!\n * Bootstrap v5.3.3 (https://getbootstrap.com/)\n * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\nimport * as Popper from '@popperjs/core';\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Constants\n */\n\nconst elementMap = new Map();\nconst Data = {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map());\n }\n const instanceMap = elementMap.get(element);\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);\n return;\n }\n instanceMap.set(key, instance);\n },\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null;\n }\n return null;\n },\n remove(element, key) {\n if (!elementMap.has(element)) {\n return;\n }\n const instanceMap = elementMap.get(element);\n instanceMap.delete(key);\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element);\n }\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000;\nconst MILLISECONDS_MULTIPLIER = 1000;\nconst TRANSITION_END = 'transitionend';\n\n/**\n * Properly escape IDs selectors to handle weird IDs\n * @param {string} selector\n * @returns {string}\n */\nconst parseSelector = selector => {\n if (selector && window.CSS && window.CSS.escape) {\n // document.querySelector needs escaping to handle IDs (html5+) containing for instance /\n selector = selector.replace(/#([^\\s\"#']+)/g, (match, id) => `#${CSS.escape(id)}`);\n }\n return selector;\n};\n\n// Shout-out Angus Croll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`;\n }\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase();\n};\n\n/**\n * Public Util API\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID);\n } while (document.getElementById(prefix));\n return prefix;\n};\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0;\n }\n\n // Get transition-duration of the element\n let {\n transitionDuration,\n transitionDelay\n } = window.getComputedStyle(element);\n const floatTransitionDuration = Number.parseFloat(transitionDuration);\n const floatTransitionDelay = Number.parseFloat(transitionDelay);\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0;\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0];\n transitionDelay = transitionDelay.split(',')[0];\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;\n};\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END));\n};\nconst isElement = object => {\n if (!object || typeof object !== 'object') {\n return false;\n }\n if (typeof object.jquery !== 'undefined') {\n object = object[0];\n }\n return typeof object.nodeType !== 'undefined';\n};\nconst getElement = object => {\n // it's a jQuery object or a node element\n if (isElement(object)) {\n return object.jquery ? object[0] : object;\n }\n if (typeof object === 'string' && object.length > 0) {\n return document.querySelector(parseSelector(object));\n }\n return null;\n};\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false;\n }\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible';\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])');\n if (!closedDetails) {\n return elementIsVisible;\n }\n if (closedDetails !== element) {\n const summary = element.closest('summary');\n if (summary && summary.parentNode !== closedDetails) {\n return false;\n }\n if (summary === null) {\n return false;\n }\n }\n return elementIsVisible;\n};\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true;\n }\n if (element.classList.contains('disabled')) {\n return true;\n }\n if (typeof element.disabled !== 'undefined') {\n return element.disabled;\n }\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';\n};\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null;\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode();\n return root instanceof ShadowRoot ? root : null;\n }\n if (element instanceof ShadowRoot) {\n return element;\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null;\n }\n return findShadowRoot(element.parentNode);\n};\nconst noop = () => {};\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n element.offsetHeight; // eslint-disable-line no-unused-expressions\n};\nconst getjQuery = () => {\n if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return window.jQuery;\n }\n return null;\n};\nconst DOMContentLoadedCallbacks = [];\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n for (const callback of DOMContentLoadedCallbacks) {\n callback();\n }\n });\n }\n DOMContentLoadedCallbacks.push(callback);\n } else {\n callback();\n }\n};\nconst isRTL = () => document.documentElement.dir === 'rtl';\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery();\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME;\n const JQUERY_NO_CONFLICT = $.fn[name];\n $.fn[name] = plugin.jQueryInterface;\n $.fn[name].Constructor = plugin;\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT;\n return plugin.jQueryInterface;\n };\n }\n });\n};\nconst execute = (possibleCallback, args = [], defaultValue = possibleCallback) => {\n return typeof possibleCallback === 'function' ? possibleCallback(...args) : defaultValue;\n};\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback);\n return;\n }\n const durationPadding = 5;\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;\n let called = false;\n const handler = ({\n target\n }) => {\n if (target !== transitionElement) {\n return;\n }\n called = true;\n transitionElement.removeEventListener(TRANSITION_END, handler);\n execute(callback);\n };\n transitionElement.addEventListener(TRANSITION_END, handler);\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement);\n }\n }, emulatedDuration);\n};\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n const listLength = list.length;\n let index = list.indexOf(activeElement);\n\n // if the element does not exist in the list return an element\n // depending on the direction and if cycle is allowed\n if (index === -1) {\n return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];\n }\n index += shouldGetNext ? 1 : -1;\n if (isCycleAllowed) {\n index = (index + listLength) % listLength;\n }\n return list[Math.max(0, Math.min(index, listLength - 1))];\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/;\nconst stripNameRegex = /\\..*/;\nconst stripUidRegex = /::\\d+$/;\nconst eventRegistry = {}; // Events storage\nlet uidEvent = 1;\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n};\nconst nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);\n\n/**\n * Private methods\n */\n\nfunction makeEventUid(element, uid) {\n return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;\n}\nfunction getElementEvents(element) {\n const uid = makeEventUid(element);\n element.uidEvent = uid;\n eventRegistry[uid] = eventRegistry[uid] || {};\n return eventRegistry[uid];\n}\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n hydrateObj(event, {\n delegateTarget: element\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn);\n }\n return fn.apply(element, [event]);\n };\n}\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector);\n for (let {\n target\n } = event; target && target !== this; target = target.parentNode) {\n for (const domElement of domElements) {\n if (domElement !== target) {\n continue;\n }\n hydrateObj(event, {\n delegateTarget: target\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, selector, fn);\n }\n return fn.apply(target, [event]);\n }\n }\n };\n}\nfunction findHandler(events, callable, delegationSelector = null) {\n return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);\n}\nfunction normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n const isDelegated = typeof handler === 'string';\n // TODO: tooltip passes `false` instead of selector, so we need to check\n const callable = isDelegated ? delegationFunction : handler || delegationFunction;\n let typeEvent = getTypeEvent(originalTypeEvent);\n if (!nativeEvents.has(typeEvent)) {\n typeEvent = originalTypeEvent;\n }\n return [isDelegated, callable, typeEvent];\n}\nfunction addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (originalTypeEvent in customEvents) {\n const wrapFunction = fn => {\n return function (event) {\n if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) {\n return fn.call(this, event);\n }\n };\n };\n callable = wrapFunction(callable);\n }\n const events = getElementEvents(element);\n const handlers = events[typeEvent] || (events[typeEvent] = {});\n const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);\n if (previousFunction) {\n previousFunction.oneOff = previousFunction.oneOff && oneOff;\n return;\n }\n const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));\n const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);\n fn.delegationSelector = isDelegated ? handler : null;\n fn.callable = callable;\n fn.oneOff = oneOff;\n fn.uidEvent = uid;\n handlers[uid] = fn;\n element.addEventListener(typeEvent, fn, isDelegated);\n}\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector);\n if (!fn) {\n return;\n }\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));\n delete events[typeEvent][fn.uidEvent];\n}\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {};\n for (const [handlerKey, event] of Object.entries(storeElementEvent)) {\n if (handlerKey.includes(namespace)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n}\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '');\n return customEvents[event] || event;\n}\nconst EventHandler = {\n on(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, false);\n },\n one(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, true);\n },\n off(element, originalTypeEvent, handler, delegationFunction) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n const inNamespace = typeEvent !== originalTypeEvent;\n const events = getElementEvents(element);\n const storeElementEvent = events[typeEvent] || {};\n const isNamespace = originalTypeEvent.startsWith('.');\n if (typeof callable !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!Object.keys(storeElementEvent).length) {\n return;\n }\n removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);\n return;\n }\n if (isNamespace) {\n for (const elementEvent of Object.keys(events)) {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));\n }\n }\n for (const [keyHandlers, event] of Object.entries(storeElementEvent)) {\n const handlerKey = keyHandlers.replace(stripUidRegex, '');\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n },\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null;\n }\n const $ = getjQuery();\n const typeEvent = getTypeEvent(event);\n const inNamespace = event !== typeEvent;\n let jQueryEvent = null;\n let bubbles = true;\n let nativeDispatch = true;\n let defaultPrevented = false;\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args);\n $(element).trigger(jQueryEvent);\n bubbles = !jQueryEvent.isPropagationStopped();\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();\n defaultPrevented = jQueryEvent.isDefaultPrevented();\n }\n const evt = hydrateObj(new Event(event, {\n bubbles,\n cancelable: true\n }), args);\n if (defaultPrevented) {\n evt.preventDefault();\n }\n if (nativeDispatch) {\n element.dispatchEvent(evt);\n }\n if (evt.defaultPrevented && jQueryEvent) {\n jQueryEvent.preventDefault();\n }\n return evt;\n }\n};\nfunction hydrateObj(obj, meta = {}) {\n for (const [key, value] of Object.entries(meta)) {\n try {\n obj[key] = value;\n } catch (_unused) {\n Object.defineProperty(obj, key, {\n configurable: true,\n get() {\n return value;\n }\n });\n }\n }\n return obj;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(value) {\n if (value === 'true') {\n return true;\n }\n if (value === 'false') {\n return false;\n }\n if (value === Number(value).toString()) {\n return Number(value);\n }\n if (value === '' || value === 'null') {\n return null;\n }\n if (typeof value !== 'string') {\n return value;\n }\n try {\n return JSON.parse(decodeURIComponent(value));\n } catch (_unused) {\n return value;\n }\n}\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);\n}\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value);\n },\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`);\n },\n getDataAttributes(element) {\n if (!element) {\n return {};\n }\n const attributes = {};\n const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));\n for (const key of bsKeys) {\n let pureKey = key.replace(/^bs/, '');\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length);\n attributes[pureKey] = normalizeData(element.dataset[key]);\n }\n return attributes;\n },\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`));\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {};\n }\n static get DefaultType() {\n return {};\n }\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!');\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n return config;\n }\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {}; // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n };\n }\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const [property, expectedTypes] of Object.entries(configTypes)) {\n const value = config[property];\n const valueType = isElement(value) ? 'element' : toType(value);\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`);\n }\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.3';\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super();\n element = getElement(element);\n if (!element) {\n return;\n }\n this._element = element;\n this._config = this._getConfig(config);\n Data.set(this._element, this.constructor.DATA_KEY, this);\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY);\n EventHandler.off(this._element, this.constructor.EVENT_KEY);\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null;\n }\n }\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated);\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY);\n }\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);\n }\n static get VERSION() {\n return VERSION;\n }\n static get DATA_KEY() {\n return `bs.${this.NAME}`;\n }\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`;\n }\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target');\n if (!selector || selector === '#') {\n let hrefAttribute = element.getAttribute('href');\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {\n return null;\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n hrefAttribute = `#${hrefAttribute.split('#')[1]}`;\n }\n selector = hrefAttribute && hrefAttribute !== '#' ? hrefAttribute.trim() : null;\n }\n return selector ? selector.split(',').map(sel => parseSelector(sel)).join(',') : null;\n};\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector));\n },\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector);\n },\n children(element, selector) {\n return [].concat(...element.children).filter(child => child.matches(selector));\n },\n parents(element, selector) {\n const parents = [];\n let ancestor = element.parentNode.closest(selector);\n while (ancestor) {\n parents.push(ancestor);\n ancestor = ancestor.parentNode.closest(selector);\n }\n return parents;\n },\n prev(element, selector) {\n let previous = element.previousElementSibling;\n while (previous) {\n if (previous.matches(selector)) {\n return [previous];\n }\n previous = previous.previousElementSibling;\n }\n return [];\n },\n // TODO: this is now unused; remove later along with prev()\n next(element, selector) {\n let next = element.nextElementSibling;\n while (next) {\n if (next.matches(selector)) {\n return [next];\n }\n next = next.nextElementSibling;\n }\n return [];\n },\n focusableChildren(element) {\n const focusables = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable=\"true\"]'].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',');\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el));\n },\n getSelectorFromElement(element) {\n const selector = getSelector(element);\n if (selector) {\n return SelectorEngine.findOne(selector) ? selector : null;\n }\n return null;\n },\n getElementFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.findOne(selector) : null;\n },\n getMultipleElementsFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.find(selector) : [];\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`;\n const name = component.NAME;\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n const target = SelectorEngine.getElementFromSelector(this) || this.closest(`.${name}`);\n const instance = component.getOrCreateInstance(target);\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]();\n });\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$f = 'alert';\nconst DATA_KEY$a = 'bs.alert';\nconst EVENT_KEY$b = `.${DATA_KEY$a}`;\nconst EVENT_CLOSE = `close${EVENT_KEY$b}`;\nconst EVENT_CLOSED = `closed${EVENT_KEY$b}`;\nconst CLASS_NAME_FADE$5 = 'fade';\nconst CLASS_NAME_SHOW$8 = 'show';\n\n/**\n * Class definition\n */\n\nclass Alert extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$f;\n }\n\n // Public\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);\n if (closeEvent.defaultPrevented) {\n return;\n }\n this._element.classList.remove(CLASS_NAME_SHOW$8);\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE$5);\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated);\n }\n\n // Private\n _destroyElement() {\n this._element.remove();\n EventHandler.trigger(this._element, EVENT_CLOSED);\n this.dispose();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Alert, 'close');\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Alert);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$e = 'button';\nconst DATA_KEY$9 = 'bs.button';\nconst EVENT_KEY$a = `.${DATA_KEY$9}`;\nconst DATA_API_KEY$6 = '.data-api';\nconst CLASS_NAME_ACTIVE$3 = 'active';\nconst SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle=\"button\"]';\nconst EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$6}`;\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$e;\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3));\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this);\n if (config === 'toggle') {\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => {\n event.preventDefault();\n const button = event.target.closest(SELECTOR_DATA_TOGGLE$5);\n const data = Button.getOrCreateInstance(button);\n data.toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/swipe.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$d = 'swipe';\nconst EVENT_KEY$9 = '.bs.swipe';\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`;\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`;\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`;\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`;\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`;\nconst POINTER_TYPE_TOUCH = 'touch';\nconst POINTER_TYPE_PEN = 'pen';\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event';\nconst SWIPE_THRESHOLD = 40;\nconst Default$c = {\n endCallback: null,\n leftCallback: null,\n rightCallback: null\n};\nconst DefaultType$c = {\n endCallback: '(function|null)',\n leftCallback: '(function|null)',\n rightCallback: '(function|null)'\n};\n\n/**\n * Class definition\n */\n\nclass Swipe extends Config {\n constructor(element, config) {\n super();\n this._element = element;\n if (!element || !Swipe.isSupported()) {\n return;\n }\n this._config = this._getConfig(config);\n this._deltaX = 0;\n this._supportPointerEvents = Boolean(window.PointerEvent);\n this._initEvents();\n }\n\n // Getters\n static get Default() {\n return Default$c;\n }\n static get DefaultType() {\n return DefaultType$c;\n }\n static get NAME() {\n return NAME$d;\n }\n\n // Public\n dispose() {\n EventHandler.off(this._element, EVENT_KEY$9);\n }\n\n // Private\n _start(event) {\n if (!this._supportPointerEvents) {\n this._deltaX = event.touches[0].clientX;\n return;\n }\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX;\n }\n }\n _end(event) {\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX - this._deltaX;\n }\n this._handleSwipe();\n execute(this._config.endCallback);\n }\n _move(event) {\n this._deltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this._deltaX;\n }\n _handleSwipe() {\n const absDeltaX = Math.abs(this._deltaX);\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n const direction = absDeltaX / this._deltaX;\n this._deltaX = 0;\n if (!direction) {\n return;\n }\n execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback);\n }\n _initEvents() {\n if (this._supportPointerEvents) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event));\n EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event));\n this._element.classList.add(CLASS_NAME_POINTER_EVENT);\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event));\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event));\n EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event));\n }\n }\n _eventIsPointerPenTouch(event) {\n return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);\n }\n\n // Static\n static isSupported() {\n return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$c = 'carousel';\nconst DATA_KEY$8 = 'bs.carousel';\nconst EVENT_KEY$8 = `.${DATA_KEY$8}`;\nconst DATA_API_KEY$5 = '.data-api';\nconst ARROW_LEFT_KEY$1 = 'ArrowLeft';\nconst ARROW_RIGHT_KEY$1 = 'ArrowRight';\nconst TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next';\nconst ORDER_PREV = 'prev';\nconst DIRECTION_LEFT = 'left';\nconst DIRECTION_RIGHT = 'right';\nconst EVENT_SLIDE = `slide${EVENT_KEY$8}`;\nconst EVENT_SLID = `slid${EVENT_KEY$8}`;\nconst EVENT_KEYDOWN$1 = `keydown${EVENT_KEY$8}`;\nconst EVENT_MOUSEENTER$1 = `mouseenter${EVENT_KEY$8}`;\nconst EVENT_MOUSELEAVE$1 = `mouseleave${EVENT_KEY$8}`;\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY$8}`;\nconst EVENT_LOAD_DATA_API$3 = `load${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst CLASS_NAME_CAROUSEL = 'carousel';\nconst CLASS_NAME_ACTIVE$2 = 'active';\nconst CLASS_NAME_SLIDE = 'slide';\nconst CLASS_NAME_END = 'carousel-item-end';\nconst CLASS_NAME_START = 'carousel-item-start';\nconst CLASS_NAME_NEXT = 'carousel-item-next';\nconst CLASS_NAME_PREV = 'carousel-item-prev';\nconst SELECTOR_ACTIVE = '.active';\nconst SELECTOR_ITEM = '.carousel-item';\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM;\nconst SELECTOR_ITEM_IMG = '.carousel-item img';\nconst SELECTOR_INDICATORS = '.carousel-indicators';\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]';\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY$1]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY$1]: DIRECTION_LEFT\n};\nconst Default$b = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n};\nconst DefaultType$b = {\n interval: '(number|boolean)',\n // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._interval = null;\n this._activeElement = null;\n this._isSliding = false;\n this.touchTimeout = null;\n this._swipeHelper = null;\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);\n this._addEventListeners();\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$b;\n }\n static get DefaultType() {\n return DefaultType$b;\n }\n static get NAME() {\n return NAME$c;\n }\n\n // Public\n next() {\n this._slide(ORDER_NEXT);\n }\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next();\n }\n }\n prev() {\n this._slide(ORDER_PREV);\n }\n pause() {\n if (this._isSliding) {\n triggerTransitionEnd(this._element);\n }\n this._clearInterval();\n }\n cycle() {\n this._clearInterval();\n this._updateInterval();\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);\n }\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle());\n return;\n }\n this.cycle();\n }\n to(index) {\n const items = this._getItems();\n if (index > items.length - 1 || index < 0) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index));\n return;\n }\n const activeIndex = this._getItemIndex(this._getActive());\n if (activeIndex === index) {\n return;\n }\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;\n this._slide(order, items[index]);\n }\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose();\n }\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval;\n return config;\n }\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN$1, event => this._keydown(event));\n }\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER$1, () => this.pause());\n EventHandler.on(this._element, EVENT_MOUSELEAVE$1, () => this._maybeEnableCycle());\n }\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners();\n }\n }\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());\n }\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return;\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause();\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout);\n }\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);\n };\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n };\n this._swipeHelper = new Swipe(this._element, swipeConfig);\n }\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return;\n }\n const direction = KEY_TO_DIRECTION[event.key];\n if (direction) {\n event.preventDefault();\n this._slide(this._directionToOrder(direction));\n }\n }\n _getItemIndex(element) {\n return this._getItems().indexOf(element);\n }\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return;\n }\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2);\n activeIndicator.removeAttribute('aria-current');\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement);\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE$2);\n newActiveIndicator.setAttribute('aria-current', 'true');\n }\n }\n _updateInterval() {\n const element = this._activeElement || this._getActive();\n if (!element) {\n return;\n }\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);\n this._config.interval = elementInterval || this._config.defaultInterval;\n }\n _slide(order, element = null) {\n if (this._isSliding) {\n return;\n }\n const activeElement = this._getActive();\n const isNext = order === ORDER_NEXT;\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);\n if (nextElement === activeElement) {\n return;\n }\n const nextElementIndex = this._getItemIndex(nextElement);\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n });\n };\n const slideEvent = triggerEvent(EVENT_SLIDE);\n if (slideEvent.defaultPrevented) {\n return;\n }\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return;\n }\n const isCycling = Boolean(this._interval);\n this.pause();\n this._isSliding = true;\n this._setActiveIndicatorElement(nextElementIndex);\n this._activeElement = nextElement;\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;\n nextElement.classList.add(orderClassName);\n reflow(nextElement);\n activeElement.classList.add(directionalClassName);\n nextElement.classList.add(directionalClassName);\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName);\n nextElement.classList.add(CLASS_NAME_ACTIVE$2);\n activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);\n this._isSliding = false;\n triggerEvent(EVENT_SLID);\n };\n this._queueCallback(completeCallBack, activeElement, this._isAnimated());\n if (isCycling) {\n this.cycle();\n }\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE);\n }\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);\n }\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element);\n }\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval);\n this._interval = null;\n }\n }\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;\n }\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;\n }\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config);\n if (typeof config === 'number') {\n data.to(config);\n return;\n }\n if (typeof config === 'string') {\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return;\n }\n event.preventDefault();\n const carousel = Carousel.getOrCreateInstance(target);\n const slideIndex = this.getAttribute('data-bs-slide-to');\n if (slideIndex) {\n carousel.to(slideIndex);\n carousel._maybeEnableCycle();\n return;\n }\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next();\n carousel._maybeEnableCycle();\n return;\n }\n carousel.prev();\n carousel._maybeEnableCycle();\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$3, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel);\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$b = 'collapse';\nconst DATA_KEY$7 = 'bs.collapse';\nconst EVENT_KEY$7 = `.${DATA_KEY$7}`;\nconst DATA_API_KEY$4 = '.data-api';\nconst EVENT_SHOW$6 = `show${EVENT_KEY$7}`;\nconst EVENT_SHOWN$6 = `shown${EVENT_KEY$7}`;\nconst EVENT_HIDE$6 = `hide${EVENT_KEY$7}`;\nconst EVENT_HIDDEN$6 = `hidden${EVENT_KEY$7}`;\nconst EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`;\nconst CLASS_NAME_SHOW$7 = 'show';\nconst CLASS_NAME_COLLAPSE = 'collapse';\nconst CLASS_NAME_COLLAPSING = 'collapsing';\nconst CLASS_NAME_COLLAPSED = 'collapsed';\nconst CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal';\nconst WIDTH = 'width';\nconst HEIGHT = 'height';\nconst SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';\nconst SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle=\"collapse\"]';\nconst Default$a = {\n parent: null,\n toggle: true\n};\nconst DefaultType$a = {\n parent: '(null|element)',\n toggle: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isTransitioning = false;\n this._triggerArray = [];\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4);\n for (const elem of toggleList) {\n const selector = SelectorEngine.getSelectorFromElement(elem);\n const filterElement = SelectorEngine.find(selector).filter(foundElement => foundElement === this._element);\n if (selector !== null && filterElement.length) {\n this._triggerArray.push(elem);\n }\n }\n this._initializeChildren();\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown());\n }\n if (this._config.toggle) {\n this.toggle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$a;\n }\n static get DefaultType() {\n return DefaultType$a;\n }\n static get NAME() {\n return NAME$b;\n }\n\n // Public\n toggle() {\n if (this._isShown()) {\n this.hide();\n } else {\n this.show();\n }\n }\n show() {\n if (this._isTransitioning || this._isShown()) {\n return;\n }\n let activeChildren = [];\n\n // find active children\n if (this._config.parent) {\n activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES).filter(element => element !== this._element).map(element => Collapse.getOrCreateInstance(element, {\n toggle: false\n }));\n }\n if (activeChildren.length && activeChildren[0]._isTransitioning) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n for (const activeInstance of activeChildren) {\n activeInstance.hide();\n }\n const dimension = this._getDimension();\n this._element.classList.remove(CLASS_NAME_COLLAPSE);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.style[dimension] = 0;\n this._addAriaAndCollapsedClass(this._triggerArray, true);\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n this._element.style[dimension] = '';\n EventHandler.trigger(this._element, EVENT_SHOWN$6);\n };\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);\n const scrollSize = `scroll${capitalizedDimension}`;\n this._queueCallback(complete, this._element, true);\n this._element.style[dimension] = `${this._element[scrollSize]}px`;\n }\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n const dimension = this._getDimension();\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n for (const trigger of this._triggerArray) {\n const element = SelectorEngine.getElementFromSelector(trigger);\n if (element && !this._isShown(element)) {\n this._addAriaAndCollapsedClass([trigger], false);\n }\n }\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE);\n EventHandler.trigger(this._element, EVENT_HIDDEN$6);\n };\n this._element.style[dimension] = '';\n this._queueCallback(complete, this._element, true);\n }\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW$7);\n }\n\n // Private\n _configAfterMerge(config) {\n config.toggle = Boolean(config.toggle); // Coerce string values\n config.parent = getElement(config.parent);\n return config;\n }\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT;\n }\n _initializeChildren() {\n if (!this._config.parent) {\n return;\n }\n const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE$4);\n for (const element of children) {\n const selected = SelectorEngine.getElementFromSelector(element);\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected));\n }\n }\n }\n _getFirstLevelChildren(selector) {\n const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);\n // remove children if greater depth\n return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element));\n }\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return;\n }\n for (const element of triggerArray) {\n element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen);\n element.setAttribute('aria-expanded', isOpen);\n }\n }\n\n // Static\n static jQueryInterface(config) {\n const _config = {};\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false;\n }\n return this.each(function () {\n const data = Collapse.getOrCreateInstance(this, _config);\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') {\n event.preventDefault();\n }\n for (const element of SelectorEngine.getMultipleElementsFromSelector(this)) {\n Collapse.getOrCreateInstance(element, {\n toggle: false\n }).toggle();\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Collapse);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$a = 'dropdown';\nconst DATA_KEY$6 = 'bs.dropdown';\nconst EVENT_KEY$6 = `.${DATA_KEY$6}`;\nconst DATA_API_KEY$3 = '.data-api';\nconst ESCAPE_KEY$2 = 'Escape';\nconst TAB_KEY$1 = 'Tab';\nconst ARROW_UP_KEY$1 = 'ArrowUp';\nconst ARROW_DOWN_KEY$1 = 'ArrowDown';\nconst RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button\n\nconst EVENT_HIDE$5 = `hide${EVENT_KEY$6}`;\nconst EVENT_HIDDEN$5 = `hidden${EVENT_KEY$6}`;\nconst EVENT_SHOW$5 = `show${EVENT_KEY$6}`;\nconst EVENT_SHOWN$5 = `shown${EVENT_KEY$6}`;\nconst EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst CLASS_NAME_SHOW$6 = 'show';\nconst CLASS_NAME_DROPUP = 'dropup';\nconst CLASS_NAME_DROPEND = 'dropend';\nconst CLASS_NAME_DROPSTART = 'dropstart';\nconst CLASS_NAME_DROPUP_CENTER = 'dropup-center';\nconst CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center';\nconst SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle=\"dropdown\"]:not(.disabled):not(:disabled)';\nconst SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE$3}.${CLASS_NAME_SHOW$6}`;\nconst SELECTOR_MENU = '.dropdown-menu';\nconst SELECTOR_NAVBAR = '.navbar';\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav';\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start';\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end';\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start';\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end';\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start';\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start';\nconst PLACEMENT_TOPCENTER = 'top';\nconst PLACEMENT_BOTTOMCENTER = 'bottom';\nconst Default$9 = {\n autoClose: true,\n boundary: 'clippingParents',\n display: 'dynamic',\n offset: [0, 2],\n popperConfig: null,\n reference: 'toggle'\n};\nconst DefaultType$9 = {\n autoClose: '(boolean|string)',\n boundary: '(string|element)',\n display: 'string',\n offset: '(array|string|function)',\n popperConfig: '(null|object|function)',\n reference: '(string|element|object)'\n};\n\n/**\n * Class definition\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._popper = null;\n this._parent = this._element.parentNode; // dropdown wrapper\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);\n this._inNavbar = this._detectNavbar();\n }\n\n // Getters\n static get Default() {\n return Default$9;\n }\n static get DefaultType() {\n return DefaultType$9;\n }\n static get NAME() {\n return NAME$a;\n }\n\n // Public\n toggle() {\n return this._isShown() ? this.hide() : this.show();\n }\n show() {\n if (isDisabled(this._element) || this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$5, relatedTarget);\n if (showEvent.defaultPrevented) {\n return;\n }\n this._createPopper();\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n this._element.focus();\n this._element.setAttribute('aria-expanded', true);\n this._menu.classList.add(CLASS_NAME_SHOW$6);\n this._element.classList.add(CLASS_NAME_SHOW$6);\n EventHandler.trigger(this._element, EVENT_SHOWN$5, relatedTarget);\n }\n hide() {\n if (isDisabled(this._element) || !this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n this._completeHide(relatedTarget);\n }\n dispose() {\n if (this._popper) {\n this._popper.destroy();\n }\n super.dispose();\n }\n update() {\n this._inNavbar = this._detectNavbar();\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Private\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$5, relatedTarget);\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n if (this._popper) {\n this._popper.destroy();\n }\n this._menu.classList.remove(CLASS_NAME_SHOW$6);\n this._element.classList.remove(CLASS_NAME_SHOW$6);\n this._element.setAttribute('aria-expanded', 'false');\n Manipulator.removeDataAttribute(this._menu, 'popper');\n EventHandler.trigger(this._element, EVENT_HIDDEN$5, relatedTarget);\n }\n _getConfig(config) {\n config = super._getConfig(config);\n if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME$a.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`);\n }\n return config;\n }\n _createPopper() {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)');\n }\n let referenceElement = this._element;\n if (this._config.reference === 'parent') {\n referenceElement = this._parent;\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference);\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference;\n }\n const popperConfig = this._getPopperConfig();\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig);\n }\n _isShown() {\n return this._menu.classList.contains(CLASS_NAME_SHOW$6);\n }\n _getPlacement() {\n const parentDropdown = this._parent;\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {\n return PLACEMENT_TOPCENTER;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {\n return PLACEMENT_BOTTOMCENTER;\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end';\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP;\n }\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM;\n }\n _detectNavbar() {\n return this._element.closest(SELECTOR_NAVBAR) !== null;\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n };\n\n // Disable Popper if we have a static display or Dropdown is in Navbar\n if (this._inNavbar || this._config.display === 'static') {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }];\n }\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _selectMenuItem({\n key,\n target\n }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element));\n if (!items.length) {\n return;\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY$1, !items.includes(target)).focus();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n static clearMenus(event) {\n if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY$1) {\n return;\n }\n const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN);\n for (const toggle of openToggles) {\n const context = Dropdown.getInstance(toggle);\n if (!context || context._config.autoClose === false) {\n continue;\n }\n const composedPath = event.composedPath();\n const isMenuTarget = composedPath.includes(context._menu);\n if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {\n continue;\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY$1 || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue;\n }\n const relatedTarget = {\n relatedTarget: context._element\n };\n if (event.type === 'click') {\n relatedTarget.clickEvent = event;\n }\n context._completeHide(relatedTarget);\n }\n }\n static dataApiKeydownHandler(event) {\n // If not an UP | DOWN | ESCAPE key => not a dropdown command\n // If input/textarea && if key is other than ESCAPE => not a dropdown command\n\n const isInput = /input|textarea/i.test(event.target.tagName);\n const isEscapeEvent = event.key === ESCAPE_KEY$2;\n const isUpOrDownEvent = [ARROW_UP_KEY$1, ARROW_DOWN_KEY$1].includes(event.key);\n if (!isUpOrDownEvent && !isEscapeEvent) {\n return;\n }\n if (isInput && !isEscapeEvent) {\n return;\n }\n event.preventDefault();\n\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);\n const instance = Dropdown.getOrCreateInstance(getToggleButton);\n if (isUpOrDownEvent) {\n event.stopPropagation();\n instance.show();\n instance._selectMenuItem(event);\n return;\n }\n if (instance._isShown()) {\n // else is escape and we check if it is shown\n event.stopPropagation();\n instance.hide();\n getToggleButton.focus();\n }\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {\n event.preventDefault();\n Dropdown.getOrCreateInstance(this).toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Dropdown);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$9 = 'backdrop';\nconst CLASS_NAME_FADE$4 = 'fade';\nconst CLASS_NAME_SHOW$5 = 'show';\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME$9}`;\nconst Default$8 = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true,\n // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n};\nconst DefaultType$8 = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n};\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isAppended = false;\n this._element = null;\n }\n\n // Getters\n static get Default() {\n return Default$8;\n }\n static get DefaultType() {\n return DefaultType$8;\n }\n static get NAME() {\n return NAME$9;\n }\n\n // Public\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._append();\n const element = this._getElement();\n if (this._config.isAnimated) {\n reflow(element);\n }\n element.classList.add(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n execute(callback);\n });\n }\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._getElement().classList.remove(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n this.dispose();\n execute(callback);\n });\n }\n dispose() {\n if (!this._isAppended) {\n return;\n }\n EventHandler.off(this._element, EVENT_MOUSEDOWN);\n this._element.remove();\n this._isAppended = false;\n }\n\n // Private\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div');\n backdrop.className = this._config.className;\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE$4);\n }\n this._element = backdrop;\n }\n return this._element;\n }\n _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement);\n return config;\n }\n _append() {\n if (this._isAppended) {\n return;\n }\n const element = this._getElement();\n this._config.rootElement.append(element);\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback);\n });\n this._isAppended = true;\n }\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated);\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$8 = 'focustrap';\nconst DATA_KEY$5 = 'bs.focustrap';\nconst EVENT_KEY$5 = `.${DATA_KEY$5}`;\nconst EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$5}`;\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY$5}`;\nconst TAB_KEY = 'Tab';\nconst TAB_NAV_FORWARD = 'forward';\nconst TAB_NAV_BACKWARD = 'backward';\nconst Default$7 = {\n autofocus: true,\n trapElement: null // The element to trap focus inside of\n};\nconst DefaultType$7 = {\n autofocus: 'boolean',\n trapElement: 'element'\n};\n\n/**\n * Class definition\n */\n\nclass FocusTrap extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isActive = false;\n this._lastTabNavDirection = null;\n }\n\n // Getters\n static get Default() {\n return Default$7;\n }\n static get DefaultType() {\n return DefaultType$7;\n }\n static get NAME() {\n return NAME$8;\n }\n\n // Public\n activate() {\n if (this._isActive) {\n return;\n }\n if (this._config.autofocus) {\n this._config.trapElement.focus();\n }\n EventHandler.off(document, EVENT_KEY$5); // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN$2, event => this._handleFocusin(event));\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));\n this._isActive = true;\n }\n deactivate() {\n if (!this._isActive) {\n return;\n }\n this._isActive = false;\n EventHandler.off(document, EVENT_KEY$5);\n }\n\n // Private\n _handleFocusin(event) {\n const {\n trapElement\n } = this._config;\n if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n return;\n }\n const elements = SelectorEngine.focusableChildren(trapElement);\n if (elements.length === 0) {\n trapElement.focus();\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus();\n } else {\n elements[0].focus();\n }\n }\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return;\n }\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';\nconst SELECTOR_STICKY_CONTENT = '.sticky-top';\nconst PROPERTY_PADDING = 'padding-right';\nconst PROPERTY_MARGIN = 'margin-right';\n\n/**\n * Class definition\n */\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body;\n }\n\n // Public\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth;\n return Math.abs(window.innerWidth - documentWidth);\n }\n hide() {\n const width = this.getWidth();\n this._disableOverFlow();\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);\n }\n reset() {\n this._resetElementAttributes(this._element, 'overflow');\n this._resetElementAttributes(this._element, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);\n }\n isOverflowing() {\n return this.getWidth() > 0;\n }\n\n // Private\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow');\n this._element.style.overflow = 'hidden';\n }\n _setElementAttributes(selector, styleProperty, callback) {\n const scrollbarWidth = this.getWidth();\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return;\n }\n this._saveInitialAttribute(element, styleProperty);\n const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);\n element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _saveInitialAttribute(element, styleProperty) {\n const actualValue = element.style.getPropertyValue(styleProperty);\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProperty, actualValue);\n }\n }\n _resetElementAttributes(selector, styleProperty) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProperty);\n // We only want to remove the property if the value is `null`; the value can also be zero\n if (value === null) {\n element.style.removeProperty(styleProperty);\n return;\n }\n Manipulator.removeDataAttribute(element, styleProperty);\n element.style.setProperty(styleProperty, value);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector);\n return;\n }\n for (const sel of SelectorEngine.find(selector, this._element)) {\n callBack(sel);\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$7 = 'modal';\nconst DATA_KEY$4 = 'bs.modal';\nconst EVENT_KEY$4 = `.${DATA_KEY$4}`;\nconst DATA_API_KEY$2 = '.data-api';\nconst ESCAPE_KEY$1 = 'Escape';\nconst EVENT_HIDE$4 = `hide${EVENT_KEY$4}`;\nconst EVENT_HIDE_PREVENTED$1 = `hidePrevented${EVENT_KEY$4}`;\nconst EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;\nconst EVENT_SHOW$4 = `show${EVENT_KEY$4}`;\nconst EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;\nconst EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;\nconst EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;\nconst EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;\nconst CLASS_NAME_OPEN = 'modal-open';\nconst CLASS_NAME_FADE$3 = 'fade';\nconst CLASS_NAME_SHOW$4 = 'show';\nconst CLASS_NAME_STATIC = 'modal-static';\nconst OPEN_SELECTOR$1 = '.modal.show';\nconst SELECTOR_DIALOG = '.modal-dialog';\nconst SELECTOR_MODAL_BODY = '.modal-body';\nconst SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle=\"modal\"]';\nconst Default$6 = {\n backdrop: true,\n focus: true,\n keyboard: true\n};\nconst DefaultType$6 = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._isShown = false;\n this._isTransitioning = false;\n this._scrollBar = new ScrollBarHelper();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$6;\n }\n static get DefaultType() {\n return DefaultType$6;\n }\n static get NAME() {\n return NAME$7;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._isTransitioning = true;\n this._scrollBar.hide();\n document.body.classList.add(CLASS_NAME_OPEN);\n this._adjustDialog();\n this._backdrop.show(() => this._showElement(relatedTarget));\n }\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._isShown = false;\n this._isTransitioning = true;\n this._focustrap.deactivate();\n this._element.classList.remove(CLASS_NAME_SHOW$4);\n this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());\n }\n dispose() {\n EventHandler.off(window, EVENT_KEY$4);\n EventHandler.off(this._dialog, EVENT_KEY$4);\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n handleUpdate() {\n this._adjustDialog();\n }\n\n // Private\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop),\n // 'static' option will be translated to true, and booleans will keep their value,\n isAnimated: this._isAnimated()\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _showElement(relatedTarget) {\n // try to append dynamic modal\n if (!document.body.contains(this._element)) {\n document.body.append(this._element);\n }\n this._element.style.display = 'block';\n this._element.removeAttribute('aria-hidden');\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.scrollTop = 0;\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);\n if (modalBody) {\n modalBody.scrollTop = 0;\n }\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_SHOW$4);\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate();\n }\n this._isTransitioning = false;\n EventHandler.trigger(this._element, EVENT_SHOWN$4, {\n relatedTarget\n });\n };\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated());\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => {\n if (event.key !== ESCAPE_KEY$1) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n this._triggerBackdropTransition();\n });\n EventHandler.on(window, EVENT_RESIZE$1, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog();\n }\n });\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n if (this._element !== event.target || this._element !== event2.target) {\n return;\n }\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition();\n return;\n }\n if (this._config.backdrop) {\n this.hide();\n }\n });\n });\n }\n _hideModal() {\n this._element.style.display = 'none';\n this._element.setAttribute('aria-hidden', true);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n this._isTransitioning = false;\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN);\n this._resetAdjustments();\n this._scrollBar.reset();\n EventHandler.trigger(this._element, EVENT_HIDDEN$4);\n });\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE$3);\n }\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED$1);\n if (hideEvent.defaultPrevented) {\n return;\n }\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const initialOverflowY = this._element.style.overflowY;\n // return if the following background transition hasn't yet completed\n if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n return;\n }\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden';\n }\n this._element.classList.add(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY;\n }, this._dialog);\n }, this._dialog);\n this._element.focus();\n }\n\n /**\n * The following methods are used to handle overflowing modals\n */\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const scrollbarWidth = this._scrollBar.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n if (isBodyOverflowing && !isModalOverflowing) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = isRTL() ? 'paddingRight' : 'paddingLeft';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n }\n _resetAdjustments() {\n this._element.style.paddingLeft = '';\n this._element.style.paddingRight = '';\n }\n\n // Static\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](relatedTarget);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n EventHandler.one(target, EVENT_SHOW$4, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$4, () => {\n if (isVisible(this)) {\n this.focus();\n }\n });\n });\n\n // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide();\n }\n const data = Modal.getOrCreateInstance(target);\n data.toggle(this);\n});\nenableDismissTrigger(Modal);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$6 = 'offcanvas';\nconst DATA_KEY$3 = 'bs.offcanvas';\nconst EVENT_KEY$3 = `.${DATA_KEY$3}`;\nconst DATA_API_KEY$1 = '.data-api';\nconst EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst ESCAPE_KEY = 'Escape';\nconst CLASS_NAME_SHOW$3 = 'show';\nconst CLASS_NAME_SHOWING$1 = 'showing';\nconst CLASS_NAME_HIDING = 'hiding';\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop';\nconst OPEN_SELECTOR = '.offcanvas.show';\nconst EVENT_SHOW$3 = `show${EVENT_KEY$3}`;\nconst EVENT_SHOWN$3 = `shown${EVENT_KEY$3}`;\nconst EVENT_HIDE$3 = `hide${EVENT_KEY$3}`;\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$3}`;\nconst EVENT_HIDDEN$3 = `hidden${EVENT_KEY$3}`;\nconst EVENT_RESIZE = `resize${EVENT_KEY$3}`;\nconst EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$3}`;\nconst SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle=\"offcanvas\"]';\nconst Default$5 = {\n backdrop: true,\n keyboard: true,\n scroll: false\n};\nconst DefaultType$5 = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isShown = false;\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$5;\n }\n static get DefaultType() {\n return DefaultType$5;\n }\n static get NAME() {\n return NAME$6;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._backdrop.show();\n if (!this._config.scroll) {\n new ScrollBarHelper().hide();\n }\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.classList.add(CLASS_NAME_SHOWING$1);\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate();\n }\n this._element.classList.add(CLASS_NAME_SHOW$3);\n this._element.classList.remove(CLASS_NAME_SHOWING$1);\n EventHandler.trigger(this._element, EVENT_SHOWN$3, {\n relatedTarget\n });\n };\n this._queueCallback(completeCallBack, this._element, true);\n }\n hide() {\n if (!this._isShown) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._focustrap.deactivate();\n this._element.blur();\n this._isShown = false;\n this._element.classList.add(CLASS_NAME_HIDING);\n this._backdrop.hide();\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW$3, CLASS_NAME_HIDING);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n if (!this._config.scroll) {\n new ScrollBarHelper().reset();\n }\n EventHandler.trigger(this._element, EVENT_HIDDEN$3);\n };\n this._queueCallback(completeCallback, this._element, true);\n }\n dispose() {\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n return;\n }\n this.hide();\n };\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop);\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n });\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$3, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus();\n }\n });\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide();\n }\n const data = Offcanvas.getOrCreateInstance(target);\n data.toggle(this);\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$2, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show();\n }\n});\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide();\n }\n }\n});\nenableDismissTrigger(Offcanvas);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n// js-docs-start allow-list\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\nconst DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n dd: [],\n div: [],\n dl: [],\n dt: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n};\n// js-docs-end allow-list\n\nconst uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);\n\n/**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n// eslint-disable-next-line unicorn/better-regex\nconst SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase();\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));\n }\n return true;\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));\n};\nfunction sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml;\n }\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml);\n }\n const domParser = new window.DOMParser();\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'));\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase();\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove();\n continue;\n }\n const attributeList = [].concat(...element.attributes);\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName);\n }\n }\n }\n return createdDocument.body.innerHTML;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$5 = 'TemplateFactory';\nconst Default$4 = {\n allowList: DefaultAllowlist,\n content: {},\n // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n};\nconst DefaultType$4 = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n};\nconst DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n};\n\n/**\n * Class definition\n */\n\nclass TemplateFactory extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n }\n\n // Getters\n static get Default() {\n return Default$4;\n }\n static get DefaultType() {\n return DefaultType$4;\n }\n static get NAME() {\n return NAME$5;\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);\n }\n hasContent() {\n return this.getContent().length > 0;\n }\n changeContent(content) {\n this._checkContent(content);\n this._config.content = {\n ...this._config.content,\n ...content\n };\n return this;\n }\n toHtml() {\n const templateWrapper = document.createElement('div');\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template);\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector);\n }\n const template = templateWrapper.children[0];\n const extraClass = this._resolvePossibleFunction(this._config.extraClass);\n if (extraClass) {\n template.classList.add(...extraClass.split(' '));\n }\n return template;\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config);\n this._checkContent(config.content);\n }\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({\n selector,\n entry: content\n }, DefaultContentType);\n }\n }\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template);\n if (!templateElement) {\n return;\n }\n content = this._resolvePossibleFunction(content);\n if (!content) {\n templateElement.remove();\n return;\n }\n if (isElement(content)) {\n this._putElementInTemplate(getElement(content), templateElement);\n return;\n }\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content);\n return;\n }\n templateElement.textContent = content;\n }\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this]);\n }\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = '';\n templateElement.append(element);\n return;\n }\n templateElement.textContent = element.textContent;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$4 = 'tooltip';\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);\nconst CLASS_NAME_FADE$2 = 'fade';\nconst CLASS_NAME_MODAL = 'modal';\nconst CLASS_NAME_SHOW$2 = 'show';\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner';\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;\nconst EVENT_MODAL_HIDE = 'hide.bs.modal';\nconst TRIGGER_HOVER = 'hover';\nconst TRIGGER_FOCUS = 'focus';\nconst TRIGGER_CLICK = 'click';\nconst TRIGGER_MANUAL = 'manual';\nconst EVENT_HIDE$2 = 'hide';\nconst EVENT_HIDDEN$2 = 'hidden';\nconst EVENT_SHOW$2 = 'show';\nconst EVENT_SHOWN$2 = 'shown';\nconst EVENT_INSERTED = 'inserted';\nconst EVENT_CLICK$1 = 'click';\nconst EVENT_FOCUSIN$1 = 'focusin';\nconst EVENT_FOCUSOUT$1 = 'focusout';\nconst EVENT_MOUSEENTER = 'mouseenter';\nconst EVENT_MOUSELEAVE = 'mouseleave';\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n};\nconst Default$3 = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' + '
' + '
' + '
',\n title: '',\n trigger: 'hover focus'\n};\nconst DefaultType$3 = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n};\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)');\n }\n super(element, config);\n\n // Private\n this._isEnabled = true;\n this._timeout = 0;\n this._isHovered = null;\n this._activeTrigger = {};\n this._popper = null;\n this._templateFactory = null;\n this._newContent = null;\n\n // Protected\n this.tip = null;\n this._setListeners();\n if (!this._config.selector) {\n this._fixTitle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$3;\n }\n static get DefaultType() {\n return DefaultType$3;\n }\n static get NAME() {\n return NAME$4;\n }\n\n // Public\n enable() {\n this._isEnabled = true;\n }\n disable() {\n this._isEnabled = false;\n }\n toggleEnabled() {\n this._isEnabled = !this._isEnabled;\n }\n toggle() {\n if (!this._isEnabled) {\n return;\n }\n this._activeTrigger.click = !this._activeTrigger.click;\n if (this._isShown()) {\n this._leave();\n return;\n }\n this._enter();\n }\n dispose() {\n clearTimeout(this._timeout);\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));\n }\n this._disposePopper();\n super.dispose();\n }\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements');\n }\n if (!(this._isWithContent() && this._isEnabled)) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW$2));\n const shadowRoot = findShadowRoot(this._element);\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);\n if (showEvent.defaultPrevented || !isInTheDom) {\n return;\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper();\n const tip = this._getTipElement();\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'));\n const {\n container\n } = this._config;\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip);\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));\n }\n this._popper = this._createPopper(tip);\n tip.classList.add(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));\n if (this._isHovered === false) {\n this._leave();\n }\n this._isHovered = false;\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n hide() {\n if (!this._isShown()) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE$2));\n if (hideEvent.defaultPrevented) {\n return;\n }\n const tip = this._getTipElement();\n tip.classList.remove(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n this._activeTrigger[TRIGGER_CLICK] = false;\n this._activeTrigger[TRIGGER_FOCUS] = false;\n this._activeTrigger[TRIGGER_HOVER] = false;\n this._isHovered = null; // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return;\n }\n if (!this._isHovered) {\n this._disposePopper();\n }\n this._element.removeAttribute('aria-describedby');\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n update() {\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle());\n }\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());\n }\n return this.tip;\n }\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml();\n\n // TODO: remove this check in v6\n if (!tip) {\n return null;\n }\n tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`);\n const tipId = getUID(this.constructor.NAME).toString();\n tip.setAttribute('id', tipId);\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE$2);\n }\n return tip;\n }\n setContent(content) {\n this._newContent = content;\n if (this._isShown()) {\n this._disposePopper();\n this.show();\n }\n }\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content);\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n });\n }\n return this._templateFactory;\n }\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n };\n }\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());\n }\n _isAnimated() {\n return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE$2);\n }\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW$2);\n }\n _createPopper(tip) {\n const placement = execute(this._config.placement, [this, tip, this._element]);\n const attachment = AttachmentMap[placement.toUpperCase()];\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment));\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this._element]);\n }\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [{\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }, {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n }, {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement);\n }\n }]\n };\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _setListeners() {\n const triggers = this._config.trigger.split(' ');\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context.toggle();\n });\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);\n const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;\n context._enter();\n });\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);\n context._leave();\n });\n }\n }\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide();\n }\n };\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n }\n _fixTitle() {\n const title = this._element.getAttribute('title');\n if (!title) {\n return;\n }\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title);\n }\n this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title');\n }\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true;\n return;\n }\n this._isHovered = true;\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show();\n }\n }, this._config.delay.show);\n }\n _leave() {\n if (this._isWithActiveTrigger()) {\n return;\n }\n this._isHovered = false;\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide();\n }\n }, this._config.delay.hide);\n }\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout);\n this._timeout = setTimeout(handler, timeout);\n }\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true);\n }\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element);\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute];\n }\n }\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n };\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container);\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n };\n }\n if (typeof config.title === 'number') {\n config.title = config.title.toString();\n }\n if (typeof config.content === 'number') {\n config.content = config.content.toString();\n }\n return config;\n }\n _getDelegateConfig() {\n const config = {};\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value;\n }\n }\n config.selector = false;\n config.trigger = 'manual';\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config;\n }\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy();\n this._popper = null;\n }\n if (this.tip) {\n this.tip.remove();\n this.tip = null;\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$3 = 'popover';\nconst SELECTOR_TITLE = '.popover-header';\nconst SELECTOR_CONTENT = '.popover-body';\nconst Default$2 = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '
' + '
' + '

' + '
' + '
',\n trigger: 'click'\n};\nconst DefaultType$2 = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n};\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default$2;\n }\n static get DefaultType() {\n return DefaultType$2;\n }\n static get NAME() {\n return NAME$3;\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent();\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n };\n }\n _getContent() {\n return this._resolvePossibleFunction(this._config.content);\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$2 = 'scrollspy';\nconst DATA_KEY$2 = 'bs.scrollspy';\nconst EVENT_KEY$2 = `.${DATA_KEY$2}`;\nconst DATA_API_KEY = '.data-api';\nconst EVENT_ACTIVATE = `activate${EVENT_KEY$2}`;\nconst EVENT_CLICK = `click${EVENT_KEY$2}`;\nconst EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$2}${DATA_API_KEY}`;\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';\nconst CLASS_NAME_ACTIVE$1 = 'active';\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]';\nconst SELECTOR_TARGET_LINKS = '[href]';\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';\nconst SELECTOR_NAV_LINKS = '.nav-link';\nconst SELECTOR_NAV_ITEMS = '.nav-item';\nconst SELECTOR_LIST_ITEMS = '.list-group-item';\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;\nconst SELECTOR_DROPDOWN = '.dropdown';\nconst SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';\nconst Default$1 = {\n offset: null,\n // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n};\nconst DefaultType$1 = {\n offset: '(number|null)',\n // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n};\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map();\n this._observableSections = new Map();\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;\n this._activeTarget = null;\n this._observer = null;\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n };\n this.refresh(); // initialize\n }\n\n // Getters\n static get Default() {\n return Default$1;\n }\n static get DefaultType() {\n return DefaultType$1;\n }\n static get NAME() {\n return NAME$2;\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables();\n this._maybeEnableSmoothScroll();\n if (this._observer) {\n this._observer.disconnect();\n } else {\n this._observer = this._getNewObserver();\n }\n for (const section of this._observableSections.values()) {\n this._observer.observe(section);\n }\n }\n dispose() {\n this._observer.disconnect();\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body;\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));\n }\n return config;\n }\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return;\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK);\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash);\n if (observableSection) {\n event.preventDefault();\n const root = this._rootElement || window;\n const height = observableSection.offsetTop - this._element.offsetTop;\n if (root.scrollTo) {\n root.scrollTo({\n top: height,\n behavior: 'smooth'\n });\n return;\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height;\n }\n });\n }\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n };\n return new IntersectionObserver(entries => this._observerCallback(entries), options);\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop;\n this._process(targetElement(entry));\n };\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;\n this._previousScrollData.parentScrollTop = parentScrollTop;\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null;\n this._clearActiveClass(targetElement(entry));\n continue;\n }\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop;\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry);\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return;\n }\n continue;\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry);\n }\n }\n }\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map();\n this._observableSections = new Map();\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target);\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue;\n }\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor);\n this._observableSections.set(anchor.hash, observableSection);\n }\n }\n }\n _process(target) {\n if (this._activeTarget === target) {\n return;\n }\n this._clearActiveClass(this._config.target);\n this._activeTarget = target;\n target.classList.add(CLASS_NAME_ACTIVE$1);\n this._activateParents(target);\n EventHandler.trigger(this._element, EVENT_ACTIVATE, {\n relatedTarget: target\n });\n }\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE$1);\n return;\n }\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both