bolognese 1.6.11 → 1.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +19 -16
- data/bolognese.gemspec +5 -5
- data/lib/bolognese/doi_utils.rb +1 -1
- data/lib/bolognese/metadata.rb +11 -10
- data/lib/bolognese/metadata_utils.rb +1 -1
- data/lib/bolognese/readers/bibtex_reader.rb +0 -1
- data/lib/bolognese/readers/citeproc_reader.rb +2 -14
- data/lib/bolognese/readers/codemeta_reader.rb +4 -7
- data/lib/bolognese/readers/crossref_reader.rb +3 -5
- data/lib/bolognese/readers/datacite_reader.rb +3 -5
- data/lib/bolognese/readers/ris_reader.rb +3 -9
- data/lib/bolognese/readers/schema_org_reader.rb +13 -6
- data/lib/bolognese/version.rb +1 -1
- data/lib/bolognese/writers/codemeta_writer.rb +1 -1
- data/lib/bolognese/writers/jats_writer.rb +1 -1
- data/lib/bolognese/writers/schema_org_writer.rb +1 -1
- data/spec/author_utils_spec.rb +1 -1
- data/spec/cli_spec.rb +2 -2
- data/spec/datacite_utils_spec.rb +14 -15
- data/spec/doi_utils_spec.rb +7 -7
- data/spec/fixtures/schema_org.json +5 -0
- data/spec/fixtures/schema_org_gtex.json +0 -1
- data/spec/fixtures/schema_org_list.json +0 -5
- data/spec/fixtures/schema_org_topmed.json +0 -1
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/default.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_bibtex.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_citation.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_crossref.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_datacite.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_jats.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_schema_org.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/default.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_bibtex.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_citation.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite_json.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_jats.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_schema_org.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/default.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_bibtex.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_datacite.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/crossref.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/datacite.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/jalc.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/kisti.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/medra.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/op.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/author.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/no_author.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/single_author.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/with_organization.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_state.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_title.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_alternate_identifiers.yml +51 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_description.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_identifiers.yml +51 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license_name.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_state.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/validates_against_schema.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/doi_with_protocol.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/dx_doi_org_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/force_test_resolver.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/https_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/test_resolver.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/test_resolver_http.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi_with_special_characters.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/not_a_doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/sandbox_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/crossref.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/datacite.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/jalc.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/kisti.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/medra.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_a_valid_prefix.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_found.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/op.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi_with_protocol.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/dx_doi_org_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/force_test_resolver.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/https_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/test_resolver.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/test_resolver_http.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref.yml +41 -33
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +41 -33
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite.yml +40 -32
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite_doi_http.yml +40 -32
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/github.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/orcid.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/schema_org.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +41 -33
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/bibtex.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/citeproc.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/codemeta.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crosscite.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crossref.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite_json.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/ris.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/schema_org.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_string/crosscite.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_for_match.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_match.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_no_match.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_for_match.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_match.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_no_match.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org/with_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org_creators/with_affiliation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org_creators/without_affiliation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/metadata_reports.yml +23 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/JaLC.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/KISTI.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/OP.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/another_book.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/another_book_chapter.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/author_literal.yml +15 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_chapter.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_chapter_with_RDF_for_container.yml +17 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/component.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dataset.yml +35 -31
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dataset_usda.yml +29 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/date_in_future.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/empty_given_name.yml +14 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/invalid_date.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_original_language_title.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with_RDF_for_container.yml +18 -16
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with_funding.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_issue.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/mEDRA.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/markup.yml +26 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/missing_creator.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/multiple_titles.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/not_found_error.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/posted_content.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/vor_with_url.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/yet_another_book.yml +18 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/yet_another_book_chapter.yml +17 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_json_metadata/metadata_from_api.yml +22 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/BlogPosting.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_test_system.yml +26 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_test_system_schema_3.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_with_related_id_system.yml +31 -28
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_not_found.yml +23 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Dataset.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_empty_awardTitle.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_schema_version_4.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Referee_report_in_test_system.yml +29 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Schema_org_type.yml +24 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_only_full_name.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_scheme.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_wrong_orcid_scheme.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/content_url.yml +29 -26
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/date.yml +38 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/dissertation.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/doi_with_sign.yml +27 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/empty_subject.yml +26 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/even_more_subject_scheme_FOR.yml +19 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_references.yml +20 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_schema_version_3.yml +42 -38
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/is_identical_to.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/keywords_with_attributes.yml +35 -32
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/leading_and_trailing_whitespace.yml +33 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/more_subject_scheme_FOR.yml +20 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorsName.yml +31 -28
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_licenses.yml +37 -33
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/series-information.yml +25 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/subject_scheme.yml +24 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/subject_scheme_FOR.yml +32 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date/publication_date.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/date.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year-month.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/date.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/year-month.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/year.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/date.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year-month.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/future.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/invalid.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/nil.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/past.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/present.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_familyName.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_Thai.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order.yml +25 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_sort-order.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/hyper-authorship.yml +1180 -1161
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_organization.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_author_names_in_one_field.yml +18 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_name_identifier.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation_and_country.yml +19 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_role.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/only_familyName_and_givenName.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting.yml +26 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +24 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/harvard_dataverse.yml +7 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/pangaea.yml +11 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/zenodo.yml +70 -62
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/only_title.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_and_pages.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_volume_and_pages.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_volume_issue_and_pages.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_as_codemeta_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_from_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_from_url_file.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/unknown_DOI_prefix.yml +13 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_contributors/none.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_creators/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_dates/insert.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_descriptions/insert.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_identifier/doi.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_language/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_person/creator_only_name.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publication_year/insert.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publisher/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/related_identifier.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_rights_list/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_sizes/insert.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_subjects/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_titles/insert.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_version/insert.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_comma.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_family_name.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_known_given_name.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_no_info.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_orcid_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_type_organization.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/missing_comma.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/nil.yml +27 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/overlapping_keys.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/valid.yml +28 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/not_found.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/with_trailing_slash.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/with_trailing_slash_and_to_https.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/SICI_doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_force_datacite_sandbox.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_datacite_sandbox.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_url_without_doi_proxy.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_too_long.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_with_string.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_with_protocol.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/dx_doi_org_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/https_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/not_valid_doi_prefix.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/url_with_one_slash.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi_as_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/ftp.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/invalid_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_options.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/string.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url_with_utf-8.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_array.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_empty_array.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_hash.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_string.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/uri.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash_and_to_https.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array_of_strings.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/first.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/hash.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/nil.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/string.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_only_keep_specific_tags.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_remove_a_tags.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_not_found.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_exists.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org/with_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org_identifiers/with_identifiers.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_doi/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/funder_doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/funder_doi_without_prefix.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/non-funder_doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_https.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_with_spaces.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_wrong_id.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_www.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_as_url.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_with_protocol.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/only_prefix.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/DOI.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/ISSN.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/URL.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/string.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/BlogPosting.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/Dataset.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +19 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/climate_data.yml +14 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/from_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/keywords_subject_scheme.yml +32 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/text.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_pages.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Dataset.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +51 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Missing_author.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +52 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/software_w/version.yml +19 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml +25 -23
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Dataset.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/container_title.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/interactive_resource_without_dates.yml +52 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/journal_article.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/keywords_subject_scheme.yml +32 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/missing_creator.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/multiple_abstracts.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/organization_author.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/software.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/software_w/version.yml +23 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_only_first_page.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_pages.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +14 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite_check_codemeta_v2.yml +14 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/datacite_database_attributes.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_ORCID_ID.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crossref/from_DataCite.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/climate_data.yml +13 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/text.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/with_pages.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/DOI_not_found.yml +10 -10
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Dataset_in_schema_4_0.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru.yml +33 -33
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru_with_doi_in_options.yml +34 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_ORCID_ID.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_editor.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_version.yml +16 -16
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +34 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/book_chapter.yml +21 -21
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +52 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation_schema_org.yml +23 -25
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_editor.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/BlogPosting.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/BlogPosting_schema_org.yml +20 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/journal_article.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/maremma.yml +22 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/with_pages.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/Dataset.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/alternate_name.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/journal_article.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/keywords_with_subject_scheme.yml +31 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/maremma.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/with_pages.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding.yml +18 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +28 -17
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +24 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_Cyark.yml +40 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +18 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_isReferencedBy.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml +16 -17
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/data_catalog.yml +13 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/geo_location_box.yml +36 -28
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +52 -0
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/journal_article.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +25 -27
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/series_information.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml +31 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_schema_org.yml +20 -20
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Dataset.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/journal_article.yml +5 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/with_pages.yml +5 -5
- data/spec/metadata_spec.rb +1 -1
- data/spec/readers/bibtex_reader_spec.rb +3 -3
- data/spec/readers/citeproc_reader_spec.rb +3 -3
- data/spec/readers/codemeta_reader_spec.rb +4 -4
- data/spec/readers/crossref_reader_spec.rb +73 -63
- data/spec/readers/datacite_json_reader_spec.rb +3 -2
- data/spec/readers/datacite_reader_spec.rb +97 -93
- data/spec/readers/ris_reader_spec.rb +4 -4
- data/spec/readers/schema_org_reader_spec.rb +44 -38
- data/spec/writers/bibtex_writer_spec.rb +2 -2
- data/spec/writers/citation_writer_spec.rb +16 -8
- data/spec/writers/citeproc_writer_spec.rb +11 -2
- data/spec/writers/codemeta_writer_spec.rb +0 -1
- data/spec/writers/crosscite_writer_spec.rb +3 -3
- data/spec/writers/datacite_writer_spec.rb +25 -15
- data/spec/writers/jats_writer_spec.rb +17 -3
- data/spec/writers/ris_writer_spec.rb +6 -5
- data/spec/writers/schema_org_writer_spec.rb +15 -18
- metadata +22 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/error_unknown.yml +0 -88
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/jj.yml +0 -87
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/multiple_t.yml +0 -47
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/xs_string_attributes.yml +0 -93
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_timestamp/present.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_crossrer_organization.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/harvard_dataverse_via_identifiers_org.yml +0 -158
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/ornl.yml +0 -706
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_alternate_identifiers/insert.yml +0 -49
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_formats/insert.yml +0 -49
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_person/creator_given_and_family_name.yml +0 -49
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/to_https.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id_lowercase.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_not_found.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/url_to_https/http.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/url_to_https/uri.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/url_to_https/with_trailing_slash.yml +0 -44
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/dataset_neurophysiology.yml +0 -116
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_first_page.yml +0 -46
@@ -1,87 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://doi.org/ra/10.1029
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 200
|
17
|
-
message: ''
|
18
|
-
headers:
|
19
|
-
Date:
|
20
|
-
- Sun, 07 Jul 2019 11:11:07 GMT
|
21
|
-
Content-Type:
|
22
|
-
- application/json;charset=UTF-8
|
23
|
-
Content-Length:
|
24
|
-
- '54'
|
25
|
-
Connection:
|
26
|
-
- keep-alive
|
27
|
-
Set-Cookie:
|
28
|
-
- __cfduid=d26383c418bbd3aa008a740becda77da21562497867; expires=Mon, 06-Jul-20
|
29
|
-
11:11:07 GMT; path=/; domain=.doi.org; HttpOnly
|
30
|
-
Expect-Ct:
|
31
|
-
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
32
|
-
Server:
|
33
|
-
- cloudflare
|
34
|
-
Cf-Ray:
|
35
|
-
- 4f296038ec5464a9-FRA
|
36
|
-
body:
|
37
|
-
encoding: ASCII-8BIT
|
38
|
-
string: |-
|
39
|
-
[
|
40
|
-
{
|
41
|
-
"DOI": "10.1029",
|
42
|
-
"RA": "Crossref"
|
43
|
-
}
|
44
|
-
]
|
45
|
-
http_version:
|
46
|
-
recorded_at: Sun, 07 Jul 2019 11:11:07 GMT
|
47
|
-
- request:
|
48
|
-
method: get
|
49
|
-
uri: https://api.crossref.org/works/10.1029/ar035/transform/application/vnd.crossref.unixsd+xml
|
50
|
-
body:
|
51
|
-
encoding: US-ASCII
|
52
|
-
string: ''
|
53
|
-
headers:
|
54
|
-
User-Agent:
|
55
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
56
|
-
Accept:
|
57
|
-
- text/xml
|
58
|
-
response:
|
59
|
-
status:
|
60
|
-
code: 200
|
61
|
-
message: OK
|
62
|
-
headers:
|
63
|
-
Link:
|
64
|
-
- <http://dx.doi.org/10.1029/ar035>; rel="canonical"
|
65
|
-
Access-Control-Allow-Origin:
|
66
|
-
- "*"
|
67
|
-
Access-Control-Allow-Headers:
|
68
|
-
- X-Requested-With
|
69
|
-
Content-Length:
|
70
|
-
- '115055'
|
71
|
-
Server:
|
72
|
-
- http-kit
|
73
|
-
Date:
|
74
|
-
- Sun, 07 Jul 2019 11:11:08 GMT
|
75
|
-
X-Rate-Limit-Limit:
|
76
|
-
- '50'
|
77
|
-
X-Rate-Limit-Interval:
|
78
|
-
- 1s
|
79
|
-
Connection:
|
80
|
-
- close
|
81
|
-
body:
|
82
|
-
encoding: ASCII-8BIT
|
83
|
-
string: !binary |-
|
84
|
-
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0iYm9va190aXRsZSI+MTAuMTAyOS9BUjAzNTwvZG9pPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0icHVibGlzaGVyLW5hbWUiIHR5cGU9InN0cmluZyI+V2lsZXk8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0icHJlZml4LW5hbWUiIHR5cGU9InN0cmluZyI+V2lsZXkgKEJsYWNrd2VsbCBQdWJsaXNoaW5nKTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+MzExPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjUwMTI4MDczPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+ODkzODA2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9InNlcmllcy1pZCIgdHlwZT0ibnVtYmVyIj44OTAwODQ8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iZGVwb3NpdC10aW1lc3RhbXAiIHR5cGU9Im51bWJlciI+MjAxMTA5MDcyMTM1PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMTExPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDE5LTA2LTE1VDA1OjExOjEyWjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDExLTA5LTA4VDIxOjU1OjU1WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjE2PC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxib29rIGJvb2tfdHlwZT0ibW9ub2dyYXBoIj4NCiAgICAgICAgICAgICAgPGJvb2tfc2VyaWVzX21ldGFkYXRhIGxhbmd1YWdlPSJlbiI+DQogICAgICAgICAgICAgICAgPHNlcmllc19tZXRhZGF0YT4NCiAgICAgICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgICAgIDx0aXRsZT5BbnRhcmN0aWMgUmVzZWFyY2ggU2VyaWVzPC90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICAgICAgPGlzc24+MDA2Ni00NjM0PC9pc3NuPg0KICAgICAgICAgICAgICAgICAgPGNvZGVuPkFOVFNBNDwvY29kZW4+DQogICAgICAgICAgICAgICAgPC9zZXJpZXNfbWV0YWRhdGE+DQogICAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iZmlyc3QiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPlJpY2hhcmQgRnJhbms8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPk1jR2lubmlzPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8L2NvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgICAgPHRpdGxlPkJpb2dlb2dyYXBoeSBvZiBMYW50ZXJuZmlzaGVzIChNeWN0b3BoaWRhZSkgU291dGggb2YgMzDCsFM8L3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICAgIDx2b2x1bWU+MzU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICA8cHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICAgICAgICAgIDx5ZWFyPjE5ODI8L3llYXI+DQogICAgICAgICAgICAgICAgPC9wdWJsaWNhdGlvbl9kYXRlPg0KICAgICAgICAgICAgICAgIDxpc2JuPjAtODc1OTAtMTgxLTY8L2lzYm4+DQogICAgICAgICAgICAgICAgPHB1Ymxpc2hlcj4NCiAgICAgICAgICAgICAgICAgIDxwdWJsaXNoZXJfbmFtZT5BbWVyaWNhbiBHZW9waHlzaWNhbCBVbmlvbjwvcHVibGlzaGVyX25hbWU+DQogICAgICAgICAgICAgICAgICA8cHVibGlzaGVyX3BsYWNlPldhc2hpbmd0b24sIEQuIEMuPC9wdWJsaXNoZXJfcGxhY2U+DQogICAgICAgICAgICAgICAgPC9wdWJsaXNoZXI+DQogICAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDI5L0FSMDM1PC9kb2k+DQogICAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2RvaS53aWxleS5jb20vMTAuMTAyOS9BUjAzNTwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YWRkaTcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UGFsYWVvZ2VvZ3IuIFBhbGFlb2NsaW1hdG9sLiBQYWxhZW9lY29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGF0aXR1ZGluYWwgZ3JhZGllbnRzIGluIHRlcnRpYXJ5IG1vbC1sdXNjYW4gZmF1bmFzIG9mIHRoZSBQYWNpZmljIGNvYXN0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFkZGljb3R0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI4NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMTYvMDAzMS0wMTgyKDcwKTkwMTAzLTM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFobHM3MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZpc2guIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5LaW5kcyBhbmQgYWJ1bmRhbmNlIG9mIGZpc2ggbGFydmFlIGluIHRoZSBlYXN0ZXJuIHRyb3BpY2FsIFBhY2lmaWMsIGJhc2VkIG9uIGNvbGxlY3Rpb25zIG1hZGUgb24gRWFzdHJvcGFjIEk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QWhsc3Ryb208L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42OTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphbGNvOTEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Bbm4uIE1hZy4gTmF0LiBIaXN0Liwgc2VyLiA2PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5OYXR1cmFsIGhpc3Rvcnkgbm90ZXMgZnJvbSBILk0uIEluZGlhbiBNYXJpbmUgU3VydmV5IFN0ZWFtZXIgSW52ZXN0aWdhdG9yLiBOby4gMTYuIE9uIHRoZSBiYXRoeWJpYWwgZmlzaGVzIGNvbGxlY3RlZCBJbiB0aGUgQmF5IG9mIEJlbmdhbCBkdXJpbmcgdGhlIHNlYXNvbiAxODg5LTkwPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFsY29jazwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg5MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMjIyOTM5MDA4Njk0MDI3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphbmRyNjYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBhbmQgbGlmZSBoaXN0b3J5IG9mIENhbGFub2lkZXMgYWN1dHVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFuZHJld3M8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTc3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFuZHI1OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IEtvbXBsLiBBbnRhcmt0LiBFa3NwZWQuIEFrYWQuIE5hdWsgU1NTUiwgR2lkcm9sLiBHaWRyb2staGltLiBHZW9sLiBCaW9sLiBJc3NsZWQuIEQvRS8gT2IgMTk1NS0xOTU2PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MaXN0IG9mIGljaHRoeW9sb2dpY2FsIHN0YXRpb25zIHdpdGggcHJlbGltaW5hcnkgY2hhcmFjdGVyaXphdGlvbiBvZiB0aGUgaGF1bHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QW5kcmlhc2hldjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFuZHI2MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IFNvdi4gQW50YXJrdC4gRWtzcGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGlzdCBvZiBpY2h0aHlvbG9naWNhbCBzdGF0aW9ucyB3aXRoIHByZWxpbWluYXJ5IGNoYXJhY3Rlcml6YXRpb24gb2YgdGhlIGhhdWxzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFuZHJpYXNoZXY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjI3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFuZHI2MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkl6di4gQWthZC4gTmF1ayBTU1NSIEZhdW55IE1vcmVpPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CYXRoeXBlbGFnaWMgZmlzaGVkIG9mIHRoZSBBbnRhcmN0aWMuIDEuIEZhbWlseSBNeWN0b3BoaWRhZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BbmRyaWFzaGV2PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIxNjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT45PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YW5nZTY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Qm9sbi4gSW5zdC4gQmlvbC4gTWFyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QWxpbWVudGFjaW9uIGRlIGxhcyBtZXJsdXphIGVuIGxhIHJlZ2lvbiBkZWwgVGFsdWQgQ29udGluZW50YWwgQXJnZW50aW5vLCBlcG9jYSBpbnRlcm5hbCAoTWVybHVjaWlkYWUsIE1lcmx1Y2l1cyBtZXJsdWNpdXMgaHViYnNpKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BbmdlbGVzY3U8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWNrNjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBNdXMuIENvbXAuIFpvb2wuIEhhcnYuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgbWVzb3BlbGFnaWMgZmlzaGVzIGNvbGxlY3RlZCBkdXJpbmcgY3J1aXNlIDE3IG9mIHRoZSBSL1YgQ2hhaW4gd2l0aCBhIG1ldGhvZCBvZiBhbmFseXppbmcgZmF1bmFsIHRyYW5zZWN0czwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYWNrdXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTM5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE0NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWNrNjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NYXIuIEJpb2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NZXNvcGVsYWdpYyBmaXNoZXMgYW5kIHRoZXJtYWwgZnJvbnRzIGluIHRoZSB3ZXN0ZXJuIFNhcmdhc3NvIFNlYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYWNrdXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDA3L0JGMDAzNTM0Mjc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJhY2s3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIE1hci4gUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiBtZXNvcGVsYWdpYyBmaXNoZXMgaW4gdGhlIGVxdWF0b3JpYWwgYW5kIHdlc3Rlcm4gTm9ydGggQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFja3VzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWtlNTQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGNpcmN1bXBvbGFyIGNvbnRpbnVpdHkgb2YgQW50YXJjdGljIHBsYW5rdG9uIHNwZWNpZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjAxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJha2U1OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaXN0cmlidXRpb24gYW5kIGxpZmUgaGlzdG9yeSBvZiBFdXBoYXVzaWlhIHRyaWFjYW50aGEgSG9sdCBhbmQgVGF0ZXJzdGFsPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJha2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMwOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWtlNjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGxhdGl0dWRpbmFsIGRpc3RyaWJ1dGlvbiBvZiBFdXBoYXVzaWEgc3BlY2llcyBpbiB0aGUgc3VyZmFjZSB3YXRlcnMgb2YgdGhlIEluZGlhbiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYWtlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMDk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFsZTcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBhbmQgZW5kZW1pc20gb2Ygc29tZSBBbnRhcmN0aWMgbWljcm9wbGFua3RvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BbnRhcmN0aWMgZWNvbG9neTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJhbGVjaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNDM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+STwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYXJuMjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Bbm4uIFMuIEFmci4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBtb25vZ3JhcGggb2YgbWFyaW5lIGZpc2hlcyBvZiBTb3V0aCBBZnJpY2EuIDE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFybmFyZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMzU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFyczU5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJ1ZHkgU292LiBBbnRhcmt0LiBFa3NwZWQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MaXN0IG9mIGljaHRoeW9sb2dpY2FsIGNvbGxlY3Rpb25zPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJhcnN1a292PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM3OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT4xOTY5IFBsYW5rdG9uaWMgRm9yYW1pbmlmZXJhPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmUnPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWNrNjNhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Vm9wLiBJa2h0aW9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TmV3IGRhdGEgb24gdGhlIGxhbnRlcm5maXNoIGdlbmVyYSBFbGVjdHJvbmEgYW5kIFByb3RvbXljdG9waHVtIChQaXNjZXMsIE15Y3RvcGhpZGFlKSBvZiB0aGUgc291dGhlcm4gaGVtaXNwaGVyZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWNrNjNiIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJ1ZHkgSW5zdC4gT2tlYW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5vcnRoIFBhY2lmaWMgc3BlY2llcyBvZiB0aGUgZ2VudXMgUHJvdG9teWN0b3BodW0gKE15Y3RvcGhpZGFlLCBQaXNjZXMpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJlY2tlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazY0YSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IEluc3QuIE9rZWFub2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TbGVuZGVydGFpbGVkIGxhbnRlcm5maXNoZXMgKEdlbmVyYSBMb3dlaW5hLCBUYXJsZXRvbmJlYW5pYSwgR29uaWNodGh5cywgYW5kIENlbnRyb2JyYW5jaHVzKSBvZiB0aGUgUGFjaWZpYyBhbmQgSW5kaWFuIE9jZWFucy4gU3lzdGVtYXRpY3MgYW5kIGRpc3RyaWJ1dGlvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazY0YiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk9rZWFub2xvZ2l5YTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIHRlbXBlcmF0ZS1jb2xkIHdhdGVyIG15Y3RvcGhpZCBjb21wbGV4IChNeWN0b3BoaWRhZSwgUGlzY2VzKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NDY0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWNrNjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBJbnN0LiBPa2Vhbm9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyBvZiB0aGUgZ2VudXMgSHlnb3BodW0uIFN5c3RlbWF0aWNzIGFuZCBkaXN0cmlidXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVja2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjgwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlY2s2N2EiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBJbnN0LiBPa2Vhbm9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKSBmcm9tIHRoZSBQZXRyIExlYmVkZXYgQXRsYW50aWMgZXhwZWRpdGlvbnMgMTk2MS0xOTY0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJlY2tlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWNrNjdiIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWViMzciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5ab29sb2dpY2E8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlByZWxpbWluYXJ5IGxpc3Qgb2YgQmVybXVkYSBkZWVwc2VhIGZpc2hlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWViZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVlYjQzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Wm9vbG9naWNhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5FYXN0ZXJuIFBhY2lmaWMgRXhwZWRpdGlvbiBvZiB0aGUgTmV3IFlvcmsgWm9vbG9naWNhbCBTb2NpZXR5IFhYWElJSS4gUGFjaWZpYyBNeWN0b3BoaWRhZSAoRmlzaGVzKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWViZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWtsNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CaW9nZW9ncmFwaGljYWwgZGl2aXNpb24gb2YgdGhlIHBlbGFnaWFsIG9mIHRoZSBQYWNpZmljIE9jZWFuIChpbiBzdXJmYWNlIGFuZCBpbnRlcm1lZGlhdGUgd2F0ZXJzKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5CaW9sb2d5IG9mIHRoZSBQYWNpZmljIE9jZWFuPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVrbGVtaXNoZXY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlcnI2NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZpc2guIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdXJ2ZXkgb2YgcGVsYWdpYyBmaXNoZXMgb2YgdGhlIENhbGlmb3JuaWEgQ3VycmVudCBhcmVhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJlcnJ5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYyNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpibGFjNjRhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q2FoLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvbnRyaWJ1dGlvbiBhIGxhIGNvbm5haXNzYW5jZSBkZXMgcG9pc3NvbnMgZGUgbGEgZmFtaWxsZSBNeWN0b3BoaWRhZSBkYW5zIGxhIHBhcnRpZSBvcmllbnRhbGUgZHUgR29sZmUgZGUgR3VpbmVzcyAoVGVsZW9zdGVpLCBDbHVwZWlmb3JtaSwgTXljdG9waGlkYWUpLiAxLiBMZXMgZ2VucmVzIEVsZWN0cm9uYSBHb29kZSBhbmQgQmVhbiAxODk1LCBIeWdvcGh1bSBCb2xpbiAxOTM5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJsYWNoZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJsYWM2NGIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DYWguIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q29udHJpYnV0aW9uIGEgbGEgY29ubmFpc3NhbmNlIGRlcyBwb2lzc29ucyBkZSBsYSBmYW1pbGxlIE15Y3RvcGhpZGFlIGRhbnMgbGEgcGFydGllIG9yaWVudGFsZSBkdSBHb2xmZSBkZSBHdWluZXNzIChUZWxlb3N0ZWksIENsdXBlaWZvcm1pLCBNeWN0b3BoaWRhZSkuIDIuIExlcyBnZW5yZXMgRGlvZ2VuaWNodGh5czwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CbGFjaGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJsYWM2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZpc2guIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NaWNyb25la3RvbiBvZiB0aGUgZWFzdGVybiB0cm9waWNhbCBQYWNpZmljIE9jZWFuOiBGYW1pbHkgY29tcG9zaXRpb24sIGRpc3RyaWJ1dGlvbiwgYXZvaWRhbmNlLCBhbmQgcmVsYXRpb24gdG8gdHVuYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CbGFja2J1cm48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NzE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib2lzNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NYWpvciBjdXJyZW50cyBpbiB0aGUgTm9ydGggYW5kIFNvdXRoIEF0bGFudGljIE9jZWFucyBiZXR3ZWVuIDY0wrBOIGFuZCA2MMKwUzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Cb2lzdmVydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib2xpMzkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TdGFuZm9yZCBJY2h0aHlvbC4gQnVsbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgcmV2aWV3IG9mIHRoZSBteWN0b3BoaWQgZmlzaGVzIG9mIHRoZSBQYWNpZmljIGNvYXN0IG9mIHRoZSBVbml0ZWQgU3RhdGVzIGFuZCBvZiBsb3dlciBDYWxpZm9ybmlhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvbGluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjg5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym9saTQ2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3RhbmZvcmQgSWNodGh5b2wuIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MYW50ZXJuZmlzaGVzIGZyb20gSW52ZXN0aWdhdG9yIHN0YXRpb24gNjcwLCBJbmRpYW4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm9saW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib2xpNTkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Ob3J0aCBBdGxhbnRpYyBEZWVwLVNlYSBFeHBlZGl0aW9uLCAxOTEwPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmlvbWkuIE15Y3RvcGhpZGFlLiBSZXBvcnQgb2YgdGhlIFNjaWVudGlmaWMgcmVzdWx0cyBvZiBNaWNoYWVsIFNhcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm9saW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT43PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym9sdDY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SHlkcm9iaW9sb2dpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SGlkcm9sb2dpYSBkZSBsYXMgYWd1YXMgc3VmZXJmaWNpYWxlcyBlbiBsYSBwYXJ0ZSBvY2NpZGVudGFsIGRlbCBBdGxhbnRpYyBzdXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm9sdG92c2tveTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJvbmE0MCI+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+SWNvbm9ncmFmZmlhIGRlbGxhIGZhdW5hIGl0YWxpY2EgcGVyIGxhIHF1YXRyZSBjbGFzc2kgZGVnbGkgYW5hbWFsaSB2ZXJ0ZWJyYXRpPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm9uYXBhcnRlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg0MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib3RuNjYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5JbmYuIEJ1bGwuIFNvdi4gQW50YXJrdC4gRWtzcGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGxpbWl0cyBvZiB0aGUgV2VzdCBXaW5kIERyaWZ0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvdG5pa292PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib3VsMDIiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QaXNjZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+UmVwb3J0IG9uIHRoZSBjb2xsZWN0aW9ucyBvZiBuYXR1cmFsIGhpc3RvcnkgbWFkZSBpbiBBbnRhcmN0aWMgcmVnaW9ucyBkdXJpbmcgdGhlIHZveWFnZSBvZiB0aGUgU291dGhlcm4gQ3Jvc3M8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Cb3VsZW5nZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTc0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YnJhdTA0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Wm9vbC4gQW56ZWlnZXI8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpZSBHYXR0dW5nIE15Y3RvcGh1bTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CcmF1ZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mzc3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xMDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJyYXUwNiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlZhbGRpdmlhIDE4OTjigJMxODk5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaWUgVGllZnNlZSBGaXNjaGUuIDEuIFN5c3RlbWF0aXNjaGVyIFRlaWwuIFdpc3MuIEVyZ2ViZW4uIER0LiBUaWVmc2VlIEV4cGVkPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJyYXVlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YnJpZzY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3lzdGVtLiBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T2NlYW5pYyBJc2xhbmRzLCBlbmRlbWlzbSwgYW5kIG1hcmluZSBwYWxlb3RlbXBlcmF0dXJlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CcmlnZ3M8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTUzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4yPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8yNDExNjM0PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpicmlnNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TeXN0LiBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBmYXVuYWwgaGlzdG9yeSBvZiB0aGUgTm9ydGggQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnJpZ2dzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8yNDEyMDI1PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpicmluNjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBTY3JpcHBzIEluc3RuLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gb2YgUGFjaWZpYyBFdXBoYXVzaWlkczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CcmludG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjUxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpicm9kNjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5PY2Vhbm9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgdGF4b25vbXkgb2YgbWFyaW5lIHBsYW5rdG9uIG9yZ2FuaXNtcyBhbmQgb2NlYW5vZ3JhcGh5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJyb2Rza2V5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJ1cmw2MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk4uWi4gRGVwLiBTY2kuIEluZC4gUmVzLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SHlkcm9sb2d5IG9mIGNpcmN1bXBvbGFyIHdhdGVycyBzb3V0aCBvZiBOZXcgWmVhbGFuZDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CdXJsaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTQzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJ1c3M2NSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN0dWRpZXMgb2YgdGhlIG1pZHdhdGVyIGZpc2hlcyBvZiB0aGUgUGVydS1DaGlsZSBUcmVuY2g8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QW50YXJjdGljIFJlcy4gU2VyLjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJ1c3Npbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTg1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Y2hhcDQ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q29wZWlhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIG5ldyBuYW1lIGZvciBNeWN0b3BodW0gb2N1bGV1bSBDaGFwbWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkNoYXBtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4yMzA3LzE0MzgyNTA8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNvY2MyOSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkdpb3JuLiBTY2kuIExldHQuIEFydGkgU2ljaWxpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3UgZGkgYWxjdW5pIHBlc2NpIE1hcmkgZGkgTWVzc2luYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Db2NjbzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4Mjk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Y29jYzM4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TnVvdmkuIEFubi4gU2NpLiBOYXQuIEJvbGduYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3UgZGkgYWxjdW5pIFNhbG1vbmlkaSBkZWwgTWFyIGRpIE1lc3NpbmEsIGxldHRlcmEgYWwgQy4gRC4gQy4gTC4gQm9uYXBhcnRlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkNvY2NvPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODM4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNvaGU3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2MuIENhbGlmLiBBY2FkLiBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Ib3cgbWFueSByZWNlbnQgZmlzaGVzIGFyZSB0aGVyZT8gZnJpIEZlc3RzY2hyaWZ0IGZvciBHZW9yZ2UgU3ByYWd1ZSBNeWVycyBpbiBob25vciBvZiBoaXMgc2l4dHktZmlmdGggYmlydGhkYXk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Q29oZW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzQxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Y29sZTcyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0LiBIaXMuIE11cy4gTG9zIEFuZ2VsZXMsIENvdW50eSBDb250ci4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RG9yc2FkZW5hIHlhY3F1aW5hZSwgYSBuZXcgZ2VudXMgYW5kIHNwZWNpZXMgb2YgbXljdG9waGlkIGZpc2ggZnJvbSB0aGUgZWFzdGVybiBOb3J0aCBQYWNpZmljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkNvbGVtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Y3JhZDcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2NpLiBSZXMuIFNFIFBhY2lmLiBFeHBlZC4gQW50b24gQnJ1dW4gUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TWlkd2F0ZXIgRmlzaGVzIGZyb20gdGhlIGVhc3Rlcm4gc291dGggUGFjaWZpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5DcmFkZG9jazwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGFuaTY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Qm9ueSBmaXNoZXMgb2YgdGhlIE1haWtvcCBkZXBvc2l0cyBvZiB0aGUgQ2F1Y2FzdXMuIFRyYW5zbGF0ZWQgZnJvbSBSdXNzaWFuLCBjYXRhbG9ndWUgMTg4NTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EYW5pbGNoZW5rbzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkYXZpNTUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiBTYWdpdHRhIGdhemVsbGUgUml0dGVyLVphaG9uZXk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGF2aWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjM1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRhdmk1OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIG9mIHRoZSBDaGFldG9nbmF0aGEgb2YgdGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRhdmlkPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIwMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkYXZpNjMiPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlNvbWUgYXNwZWN0cyBvZiBzcGVjaWF0aW9uIG9uIENoYWV0b2duYXRoYS4gUHVibC48L3Nlcmllc190aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EYXZpZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkYXZ5NzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSByZXZpZXcgb2YgdGhlIGxhbnRlcm5maXNoIGdlbnVzIFRhYW4taW5naWNodGh5cyAoRmFtaWx5IE15Y3RvcGhpZGFlKSB3aXRoIHRoZSBkZXNjcmlwdGlvbiBvZiBhIG5ldyBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRhdnk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Njc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkZWFjMzMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBnZW5lcmFsIGFjY291bnQgb2YgdGhlIGh5ZHJvbG9neSBvZiB0aGUgU291dGggQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGVhY29uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTMzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRlYWMzNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgaHlkcm9sb2d5IG9mIHRoZSBTb3V0aGVybiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EZWFjb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5MNTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzNzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkZWFjNjMiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIFNlYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRlYWNvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRlZmE2MSI+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+UGh5c2ljYWwgb2Vhbm9ncmFwaHk8L3Nlcmllc190aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EZWZhbnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRldmU2NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk4uWi4gSi4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3h5Z2VuIGlzb3RvcGUgcGFsZW90ZW1wZXJhdHVyZSBtZWFzdXJlbWVudHMgb24gTmV3IFplYWxhbmQgVGVydGlhcnkgZm9zc2lsczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EZXZlcmVhdXg8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTg0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGV3aTcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGNoYXJhY3RlciBvZiB0aGUgbWlkd2F0ZXIgZmlzaCBmYXVuYSBvZiB0aGUgUm9zcyBTZWEsIEFudGFyY3RpY2E8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGV3aXR0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMwNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGV3aTYwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3RhbmZvcmQgSWNodGh5b2wuIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GaXNoZXMgb2YgdGhlIFN0YW5mb3JkIEFudGFyY3RpYyBiaW9sb2dpY2FsIHJlc2VhcmNoIHByb2dyYW0gMTk1OC0xOTU5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRld2l0dDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Nzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRpZXQ2MyI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+R2VuZXJhbCBvY2Vhbm9ncmFwaHk8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EaWV0cmljaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTplYmVsNjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EYW5hIFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk1lbGFtcGhhaWRhZS4gSS4gU3lzdGVtYXRpY3MgYW5kIHpvb2dlb2dyYXBoeSBvZiB0aGUgc3BlY2llcyBpbiB0aGUgYmF0aHlwZWxhZ2ljIGZpc2ggZ2VudXMgTWVsYW1waGFlcyBHw7xudGhlcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5FYmVsaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZWJlbDY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gSW50LiBDb25mLiwgVHJvcGljYWwgT2NlYW5vZ3IuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5ab29nZW9ncmFwaHkgb2YgdHJvcGljYWwgZGVlcCBzZWEgYW5pbWFsczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5FYmVsaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU5MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmVpZ2U4OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFtZXIuIFNjaS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5vdGVzIGZyb20gdGhlIFNhbiBEaWVnbyBCaW9sb2dpY2FsIExhYm9yYXRvcnkuIFRoZSBmaXNoZXMgb2YgQ29ydGV6IEJhbmtzLiBXZXN0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkVpZ2VubWFubjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDg8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg4OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTplaWdlOTAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBDYWxpZi4gQWNhZC4gU2NpLiwgU2VyLiAyPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BZGRpdGlvbiB0byB0aGUgZmF1bmEgb2YgU2FuIERpZWdvPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkVpZ2VubWFubjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZWttYTUzIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5ab29nZW9ncmFwaHkgb2YgdGhlIHNlYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkVrbWFuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTUzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmVsLXM3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBoeXRvcGxhbmt0b24gcHJvZHVjdGlvbiBvZiB0aGUgU291dGggUGFjaWZpYyBhbmQgdGhlIFBhY2lmaWMgc2VjdG9yIG9mIHRoZSBBbnRhcmN0aWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RWwtU2F5ZWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTk0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTplc3RlNDciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBNdXMuIEhpc3QuIE5hdC4gUGFyaXMuLCBTZXIuIDI8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlJldmlzaW9uIGRlcyB0eXBlcyBteWN0b3BoaWRlcyAoU2NvcGUtbGlkZXMpIGR1IE11c2V1bTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Fc3RldmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Njc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmZWxsNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DcmV0YWNlb3VzIGFuZCB0ZXJ0aWFyeSBzdXJmYWNlIGN1cnJlbnRzIG9mIHRoZSBvY2VhbnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QW5udWFsIFJldmlldzwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZlbGw8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzE3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zml0YzY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q29udHJpYi4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Rm9zc2lsIGxhbnRlcm5maXNoIG90b2xpdGhzIG9mIENhbGlmb3JuaWEsIHdpdGggbm90ZXMgb24gZm9zc2lsIG15Y3RvcGhpZGFlIG9mIE5vcnRoIEFtZXJpY2EuIExvcyBBbmdlbGVzIENvdW50eSBNdXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Rml0Y2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zml0YzY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Si4gRmlzaC4gUmVzLiBCZC4gQ2FuLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaCBvdG9saXRocyBpbiBjZXRhY2VhbiBzdG9tYWNocyBhbmQgdGhlaXIgaW1wb3J0YW5jZSBpbiBpbnRlcnByZXRpbmcgZmVlZGluZyBoYWJpdHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Rml0Y2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjU2MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTM5L2Y2OC0yMjc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZsZW02MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlR1YXRhcmE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5ldyBaZWFsYW5kIGJpb2dlb2dyYXBoeSwgYSBwYWxlb250b2xvZ2lzdCdzIGFwcHJvYWNoPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZsZW1pbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZmxlbTY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gVS5TLiBOYXRubC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGF4b25vbXksIGRpc3RyaWJ1dGlvbiwgYW5kIHBvbHltb3JwaGlzbSBpbiB0aGUgTGFiaWRvY2VyYSBqb2xsYWUgZ3JvdXAgd2l0aCByZW1hcmtzIG9uIGV2b2x1dGlvbiB3aXRoaW4gdGhlIGdyb3VwIChDb3BlcG9kYTogQ2FsYW5vaWRlYSk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RmxlbWluZ2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTIwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zNTY3PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNTQ3OS9zaS4wMDk2MzgwMS4xMjAtMzU2Ny4xPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmb3dsMDEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBBY2FkLiBOYXQuIFNjaS4gUGhpIGxhZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk15Y3RvcGh1bSBwaGVuZ29kZXMgaW4gdGhlIE5vcnRoIEF0bGFudGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZvd2xlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MjA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zm93bDI1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW0uIE11cy4gTm92aXQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5OZXcgdGF4b25vbWljIG5hbWVzIG9mIFdlc3QgQWZyaWNhbiBtYXJpbmUgZmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZvd2xlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE2Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyNTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmb3h0NTYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiB0aGUgc3RhbmRpbmcgY3JvcCBvZiB6b29wbGFua3RvbiBpbiB0aGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Rm94dG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE5MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmb3h0NjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U2FscGEgZnVzaWZvcm1pcyBhbmQgcmVsYXRlZCBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZveHRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZveHQ2NSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIGFuZCBsaWZlIGhpc3Rvcnkgb2YgU2FscGEgdGhvbXBzb25pIEZveHRvbiB3aXRoIG9ic2VydmF0aW9ucyBvbiBhIHJlbGF0ZWQgc3BlY2llcywgU2FscGEgZ2VybGFjaGVpIEZveHRvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Gb3h0b248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmcmFrNzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OYXR1cmU8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkluZmx1ZW5jZSBvZiBjb250aW5lbnRhbCBwb3NpdGlvbnMgb24gZWFybHkgVGVydGlhcnkgY2xpbWF0ZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RnJha2VzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjk3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI0MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDM4LzI0MDA5N2EwPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmcmFzMzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Bbm4uIE1hZy4gTmF0LiBIaXN0LiwgU2VyLiAxMDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U29tZSBpbnRlcmVzdGluZyBXZXN0IEFmcmljYW4gZmlzaGVzLCB3aXRoIGRlc2NyaXB0aW9ucyBvZiBhIG5ldyBnZW51cyBhbmQgdHdvIG5ldyBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZyYXNlci1CcnVubmVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIxNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTMxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAyMjI5MzMxMDg2NzMzODY8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZyYXM0OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2MuIFpvb2wuIFNvYy4gTG9uZG9uPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIGNsYXNzaWZpY2F0aW9uIG9mIHRoZSBmaXNoZXMgb2YgdGhlIEZhbWlseSBNeWN0b3BoaWRhZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GcmFzZXItQnJ1bm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDEwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjExODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTQ5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZyaWU2NCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBoeXNpY2FsIG9jZWFub2dyYXBoaWMgZGF0YSBvYnRhaW5lZCBkdXJpbmcgRWx0YW5pbiBjcnVpc2VzIDQsIDUgYW5kIDYgaW4gdGhlIERyYWtlIFBhc3NhZ2UsIGFsb25nIHRoZSBDaGlsZWFuIGNvYXN0IGFuZCBpbiB0aGUgQnJhbnNmaWVsZCBzdHJhaXQsIEp1bmUsIDE5NjItSmFudXJ5LCAxOTYzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZyaWVkbWFuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZyb3M2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGwuIFNjcmlwcHMgSW5zdG4uIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSByZXZpc2lvbiBvZiB0aGUgR2VudXMgQ2xhdXNvY2FsYW51cyAoQ29wZXBvZGE6IENhbGFub2lkZWEpIHdpdGggcmVtYXJrcyBvbiBkaXN0cmlidXRpb24gcGF0dGVybnMgaW4gZGlhZ25vc3RpYyBjaGFyYWN0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZyb3N0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2FybTk5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBNdXMuIENvbXAuIFpvb2wuIEhhcnYuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5SZXBvcnRzIG9mIGFuIGV4cGxvcmF0aW9uIG9mZiB0aGUgd2VzdCBjb2FzdHMgb2YgTWV4aWNvLCBDZW50cmFsIGFuZCBTb3V0aCBBbWVyaWNhLCBhbmQgb2ZmIHRoZSBHYWxhcGFnb3MgSXNsYW5kcywgaW4gY2hhcmdlIG9mIEFsZXhhbmRlciBBZ2Fzc2l6LCBieSB0aGUgVS5TLiBGaXNoIENvbW1pc3Npb24gU3RlYW1lciBBbGJhdHJvc3MsIGR1cmluZyAxODkxLCBMaWV1dC4gQ29tbWFuZGVyIFouIEwuIFRhbm5lciBVLiBTLiBOLiwgY29tbWFuZGluPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdhcm1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODk5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdhcm42N2EiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NZW0uIE4uWi4gT2NlYW5vZ3IuIEluc3QuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5IeWRyb2xvZ3kgb2YgdGhlIHNvdXRod2VzdCBUYXNtYW4gU2VhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdhcm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdhcm42N2IiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NZW0uIE4uWi4gT2NlYW5vZ3IuIEluc3QuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5IeWRyb2xvZ3kgb2YgdGhlIHNvdXRoZXJuIEhpa3VyYW5naSB0cmVuY2ggcmVnaW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdhcm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdhdHQwMyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubmFsaSBBZ3JpYy4gUm9tYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmljaGVyY2hlIHN1Z2xpIG92Z2F3aSBsdW1pbm9zaSBkZWkgcGVzY2k8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2F0dGk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2liYjY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q29udHJpYi4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGhvdG9uZWN0ZXMgbXVuaWZpY3VzLCBhIG5ldyBzcGVjaWVzIG9mIG1lbGFub3N0b21hdGlkIGZpc2ggZnJvbSB0aGUgc291dGggUGFjaWZpYyBTdWJ0cm9waWNhbCBDb252ZXJnZW5jZSwgd2l0aCByZW1hcmtzIG9uIHRoZSBjb252ZXJnZW5jZSBGYXVuYS4gTG9zIEFuZ2VsZXMgQ291bnR5IE11czwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HaWJiczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE0OTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnaWxiOTEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBVLlMuIE5hdG4uIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlByZWxpbWluYXJ5IHJlcG9ydCBvbiB0aGUgZmlzaGVzIGNvbGxlY3RlZCBieSB0aGUgc3RlYW1lciBBbGJhdHJvc3Mgb24gdGhlIFBhY2lmaWMgY29hc3Qgb2YgTm9ydGggQW1lcmljYSBkdXJpbmcgdGhlIHllYXIgMTg4OTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HaWxiZXJ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODkxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjU0Nzkvc2kuMDA5NjM4MDEuMTMtNzk3LjQ5PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnaWxiMDUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBVLlMuIEZpc2guIENvbW0uPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGVlcCBzZWEgZmlzaGVzIG9mIHRoZSBIYXdhaWlhbiBJc2xhbmRzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpbGJlcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTc1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lsYjExIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gQW0uIE11cy4gTmF0LiBIaXN0Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Tm90ZXMgb24gbGFudGVybmZpc2hlcyBmcm9tIFNvdXRoZXJuIFNlYXMsIGNvbGxlY3RlZCBieSBKLiBULiBOaWNob2xzIGluIDE5MDY8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2lsYmVydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnaWxiMTMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NZW0uIENhcm5lZy4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGxhbnRlcm5maXNoZXMgb2YgSmFwYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2lsYmVydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTEzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdpbGI5NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2MuIFUuUy4gTmF0bC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVwb3J0IG9uIHRoZSBmaXNoZXMgZHJlZGdlZCBpbiBkZWVwIHdhdGVyIG5lYXIgdGhlIEhhd2FpaWFuIElzbGFuZHMsIHdpdGggZGVzY3JpcHRpb25zIGFuZCBmaWd1cmVzIG9mIHR3ZW50eSB0aHJlZSBuZXcgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HaWxiZXJ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQwMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg5NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC41NDc5L3NpLjAwOTYzODAxLjE5LTExMTQuNDAzPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnaWxjMDQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NYXIuIEludmVzdC4gUy4gQWZyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U291dGggQWZyaWNhbiBmaXNoZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2lsY2hyaXN0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lzdDUwIj4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5Hb25pY2h0aHlzLCBlaW4gZmlzY2ggYXVzIGRlciBCYWkgdm9uIE1hZGVpcmEgSXNpczwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpc3RlbDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT43MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xODUwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODUwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdvb2Q5NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNwZWMuIEJ1bGwuIFUuUy4gTmF0bi4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T2NlYW5pYyBpY2h0aHlvbG9neTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hb29kZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z29vZDY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gQnIuIE11cy4gTmF0LiBIaXN0LiBHZW9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIHJlbGF0aW9uc2hpcHMgb2YgY2VydGFpbiBVcHBlciBDcmV0YWNlb3VzIHRlbGVjb3N0cyB3aXRoIHNwZWNpYWwgcmVmZXJlbmNlIHRvIHRoZSBNeWN0b3Bob2lkczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hb29keTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z29yZCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+U3RydWN0dXJlIG9mIGFudGFyY3RpYyB3YXRlcnMgYmV0d2VlbiAyMMKwVyBhbmQgMTcwwrBXPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R29yZG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnb3JkNzFhIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T2NlYW5vZ3JhcGh5IG9mIGFudGFyY3RpYyB3YXRlcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QW50YXJjdGljIFJlcy4gU2VyLjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdvcmRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z29yZDcxYiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFudGFyY3RpYyBwb2xhciBmcm9udCB6b25lPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkFudGFyY3RpYyBSZXMuIFNlci48L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hb3Jkb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjA1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdvcmQ3MCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+Q2lyY3VtcG9sYXIgY2hhcmFjdGVyaXN0aWNzIG9mIEFudGFydGljIHdhdGVyczwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdvcmRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpncmFuNjYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DYWguIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q29yaW9saXMgQ3JvaXNpZXJlIEFsaXplLiBJbmRpdmlkdWFsaXphdGlvbiBkZSBwbHVzaWVycyBpY2h0eW9mYXVuZXMgbGUgbG9uZyBkZSBsJ2VxdWF0ZXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R3JhbmRwZXJyaW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1ZW4zNiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIHJlcG9ydCBvbiBvY2Vhbm9ncmFwaGljYWwgaW52ZXN0aWdhdGlvbnMgaW4gUGVydSBDb2FzdGFsIEN1cnJlbnQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R3VlbnRoZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1bnQ2NCI+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+Q2F0YWxvZ3VlIG9mIHRoZSBmaXNoZXMgaW4gdGhlIEJyaXRpc2ggTXVzZXVtPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R8O8bnRoZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODY0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1bnQ3MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIE11cy4gR29kZWZmcm95PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5ad2VpdGVyIGljaHRoeW9sb2dpc2NoZXIgQmVpdHJhZyBuYWNoIEV4ZW1wbGFyZW4gYXVzIGRlbSBNdXNldW0gR29kZWZmcm95PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkfDvG50aGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI1NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4NzM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z3VudDc2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uLiBNYWcuIE5hdC4gSGlzdC4sIFNlci4gNDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVtYXJrcyBvbiBmaXNoZXMgd2l0aCBkZXNjcmlwdGlvbnMgb2YgbmV3IHNwZWNpZXMgaW4gdGhlIEJyaXRpc2ggTXVzZXVtLCBjaGllZmx5IGZyb20gc291dGhlcm4gc2VhczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hw7xudGhlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zODk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQzPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4NzY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTA4MC8wMDIyMjkzNzYwODY4MTk3NTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z3VudDc4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uLiBNYWcuIE5hdC4gSGlzdC4sIFNlci4gNTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UHJlbGltaW5hcnkgbm90aWNlcyBvZiBkZWVwLXNlYSBmaXNoZXMgY29sbGVjdGVkIGR1cmluZyB0aGUgdm95YWdlIG9mIHRoZSBILk0uUy4gQ2hhbGxlbmdlcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hw7xudGhlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+ODwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODc4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAyMjI5Mzc4MDg2ODI0MDY8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1bnQ4NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNoYWxsZW5nZXIgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVwb3J0IG9uIHRoZSBkZWVwLXNlYSBmaXNoZXMgY29sbGVjdGVkIGJ5IEguTS5TLiBDaGFsbGVuZ2VyIGR1cmluZyB0aGUgeWVhcnMgMTg3My0xODc2PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkfDvG50aGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjU3PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4ODc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGFtbzY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGVlcCBTZWEgUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIEVhc3QgQXVzdHJhbGlhbiBDdXJyZW50LCAxOTYwLTE5NjQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFtb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODk5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhhbW83MCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+V2VzdGVybiBib3VuZGFyeSBjdXJyZW50cywgU2NpZW50aWZpYyBFeHBsb3JhdGlvbiBvZiB0aGUgU291dGggUGFjaWZpYzwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhhbW9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhhcmQ1NiI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIG9wZW4gc2VhOiBJdHMgbmF0dXJhbCBoaXN0b3J5LiAxLiBUaGUgd29ybGQgb2YgcGxhbmt0b248L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IYXJkeTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoYXJkMzUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGxhbmt0b24gb2YgdGhlIFNvdXRoIEdlb3JnaWEgd2hhbGluZyBncm91bmRzIGFuZCBhZGphY2VudCB3YXRlcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFyZHk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5JSTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzNTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoYXJ0NDIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGh5dG9wbGFua3RvbiBwZXJpb2RpY2l0eSBpbiBBbnRhcmN0aWMgc3VyZmFjZSB3YXRlcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGFzbDY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SHZhbHJhZC4gU2tyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW4gYW5hbHlzaXMgb2YgdGhlIHBoeXRvcGxhbmt0b24gb2YgdGhlIFBhY2lmaWMgU291dGhlcm4gT2NlYW46IEFidW5kYW5jZSwgY29tcG9zaXRpb24sIGFuZCBkaXN0cmlidXRpb24gZHVyaW5nIHRoZSBCcmF0ZWdnIEV4cGVkaXRpb24sIDE5NDctMTk0ODwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IYXNsZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjUyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhheXM2OCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNsaW1hdGljIHJlY29yZCBvZiBsYXRlIENlbm96b2ljIEFudGFyY3RpYyBPY2VhbiBzZWRpbWVudHMgcmVsYXRlZCB0byB0aGUgcmVjb3JkIG9mIHdvcmxkIGNsaW1hdGU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+UGFsZW9jb2xvZ3kgb2YgQWZyaWNhIGFuZCBvZiB0aGUgU3Vycm91bmRpbmcgSXNsYW5kcyBhbmQgb2YgQW50YXJjdGljYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhheXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTM5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGF5czY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+R2VvbC4gU29jLiBBbS4gQnVsbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBsaW9jZW5lLVBsZWlzdG9jZW5lIHNlZGltZW50cyBvZiB0aGUgZXF1YXRvcmlhbCBQYWNpZmljOiBUaGVpciBwYWxlb21hZ25ldGljLCBiaW9zdHJhdGlncmFwaGljLCBhbmQgY2xpbWF0aWMgcmVjb3JkPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhheXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ4MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTMwLzAwMTYtNzYwNigxOTY5KTgwWzE0ODE6UFNPVEVQXTIuMC5DTzsyPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoZWF0NjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OLlouIEouIE1hci4gRnJlc2h3YXRlciBSZXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5HZW9zdHJvcGhpYyBjdXJyZW50cyBkZXJpdmVkIGZyb20gb2NlYW5pYyBkZW5zaXR5IG1lYXN1cmVtZW50cyBub3J0aCBhbmQgc291dGggb2YgdGhlIFN1YnRyb3BpY2FsIENvbnZlcmdlbmNlIGVhc3Qgb2YgTmV3IFplYWxhbmQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGVhdGg8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NjU5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMjg4MzMwLjE5NjguOTUxNTI2MzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGVyZDY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5Tb3V0aGVybiBPY2Vhbi4gRW5jeWNsb3BhZWRpYSBvZiBPY2Vhbm9ncmFwaHk8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IZXJkbWFuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omh1YmI2NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlpvb2wuIE1lZGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGFydmlsdXgsIGEgbmV3IGdlbnVzIG9mIG15Y3RvcGhpZCBmaXNoZXMgZnJvbSB0aGUgbm9ydGhlYXN0ZXJuIFBhY2lmaWMsIHdpdGggdHdvIG5ldyBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkh1YmJzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ0NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpodXJsNjkiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkFtcGhpcG9kYSBIeXBlcmlpZGVhPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SHVybGV5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTppc2FhNTIiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Jc2FhY3MtS2lkZCBtaWR3YXRlciB0cmF3bDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Jc2FhY3M8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6amFjbzY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGh5c2ljYWwgYW5kIGNoZW1pY2FsIG9jZWFub2dyYXBoaWMgb2JzZXJ2YXRpb25zIGluIHRoZSBTb3V0aGVybiBPY2VhbnMsIFUuUy4tTi5TLiBFbHRhbmluIGNydWlzZXMgMTYtMjE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SmFjb2JzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmphY282NyI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBoeXNpY2FsIGFuZCBjaGVtaWNhbCBvY2Vhbm9ncmFwaGljIG9ic2VydmF0aW9ucyBpbiB0aGUgU291dGhlcm4gT2NlYW5zLCBVLlMuLU4uUy4gRWx0YW5pbiBjcnVpc2VzIDIyLTI3PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkphY29iczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpqb2huMzYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIHNvdXRoZXJuIHNwZWNpZXMgb2YgdGhlIGdlbnVzIEV1cGhhdXNpYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Kb2huPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpqb2huOTAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBab29sLiBTb2MuIExvbmRvbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T24gc29tZSBuZXcgc3BlY2llcyBvZiBmaXNoIGZyb20gTWFkZWlyYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Kb2huc29uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ1MjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg5MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpqb2huNjMiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CaW9sb2dpY2FsIHNwZWNpZXMsIHdhdGVyLW1hc3NlcyBhbmQgY3VycmVudHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIFNlYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkpvaG5zb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzgxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a2FuZTY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gb2YgUGFyYXRoZW1pc3RvIGdhdWRpLWNoYXVkZGkgKEd1ZXIuKSB3aXRoIG9ic2VydmF0aW9ucyBvbiBpdHMgbGlmZSBoaXN0b3J5IGluIHRoZSAwwrAgdG8gMjDCsEUgc2VjdG9yIG9mIHRoZSBTb3V0aGVybiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LYW5lPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprYXNoNjciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBBa2FkLiBOYXVrIFNTU1IsIEluc3QuIE9rZWFub2w8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9uIHRoZSBxdWFudGl0YXRpdmUgZGlzdHJpYnV0aW9uIG9mIHRoZSBsYW50ZXJuZmlzaGVzIChNeWN0b3BoaWRhZSBzZW5zdWxhdG8pIGluIHRoZSBBdGxhbnRpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LYXNoa2luPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprZW1wMjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIERpc2NvdmVyeSBpbnZlc3RpZ2F0aW9uczogT2JqZWN0cywgZXF1aXBtZW50LCBhbmQgbWV0aG9kcywgMjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omtlbm43MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRlZXAgU2VhIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBsZWlzdG9jZW5lIHBhbGVvY2xpbWF0ZXMgYW5kIGZvcmFtaW5pZmVyYWwgYmlvc3RyYXRpZ3JhcGh5IGluIHN1YmFudGFyY3RpYyBkZWVwIHNlYSBjb3JlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW5uZXR0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmtlbnQ3MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkdlb2wuIFNvYy4gQW0uIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DbGltYXRlIGNoYW5nZSBpbiB0aGUgTm9ydGggUGFjaWZpYyB1c2luZyBpY2UtcmFmdGVkIGRldHJpdHVzIGFzIGNsaW1hdGUgaW5kaWNhdG9yPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktlbnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mjc0MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT44MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMzAvMDAxNi03NjA2KDE5NzEpODJbMjc0MTpDQ0lUTlBdMi4wLkNPOzI8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omtub3g2MyI+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+UHJvYmxlbXMgb2Ygc3BlY2lhdGlvbiBpbiBpbnRlcnRpZGFsIGFuaW1hbHMgd2l0aCBzcGVjaWFsIHJlZmVyZW5jZSB0byBOZXcgWmVhbGFuZCBzaG9yZXMuIFB1YmwuPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S25veDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprbm94NzAiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CaW9sb2dpY2FsIG9jZWFub2dyYXBoeSBvZiB0aGUgU291dGggUGFjaWZpYywgU2NpZW50aWZpYyBFeHBsb3JhdGlvbiBvZiB0aGUgU291dGggUGFjaWZpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Lbm94PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a29ibDcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGxhbmt0b24gcHJpbWFyeSBwcm9kdWN0aW9uIG9mIHRoZSB3b3JsZCBvY2VhbiwgU2NpZW50aWZpYyBFeHBsb3JhdGlvbiBvZiB0aGUgU291dGggUGFjaWZpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Lb2JsZW50ei1NaXNoa2U8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTgzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprb3J0NjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbnQuIEFtLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIEFudGFyY3RpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Lb3J0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjExMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMDc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDM4L3NjaWVudGlmaWNhbWVyaWNhbjA5NjItMTEzPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprb3J0NjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5JbmYuIEJ5dWxsLiBTYi4gQW50YXJrdC4gRWtzcGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Qm91bmRhcmllcyBvZiB0aGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S29ydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprcmVmNTgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EdC4gQW50YXJrdC4gRXhwZWQuIDE5MzgtMzk8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFudGFya3Rpc2NoZSBGaXNjaGUgdW5kIGRlbiBQbGFua3RvbmZhbmdlbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LcmVmZnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a3JlZjcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QmVyLiBEdC4gV2lzcy4gS29tbW4uIE1lZXJlc2ZvcnNjaC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlp1ciBTeXN0ZW1hdGljayB1bmQgdmVyYmVpdHVuZyBkZXIgR2F0dHVuZyBMYW1wYWRlbmEgR29vZGUgYW5kIEJlYW4sIDE4OTYgKE9zdGVpY2h0aHllcywgTXljdG9waG9pZGVpLCBNeWN0b3BoaWRhZSkgaW4gQXRsYW50aXNjaGVuIE9jZWFuLCBtaXQgQmVzY2hyZWlidW5nIGVpbmVyIE5ldmVuIEFydDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LcmVmZnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjcxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmtyZWY3NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJlci4gRHQuIFdpc3MuIEtvbW1uLiBNZWVyZXNmb3JzY2guPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbnZlc3RpZ2F0aW9ucyBvbiBtaWR3YXRlciBmaXNoIGluIHRoZSBBdGxhbnRpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LcmVmZnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjI2PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTc0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omt1bGk2MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IEFrYWQuIE5hdWsgU1NTUiwgSW5zdC4gT2tlYW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxhbXBhbnljdGlkcyAoR2VudXMgTGFtcGFueWN0dXMpIG9mIHRoZSBmYXIgZWFzdGVybiBzZWFzIGFuZCB0aGUgTm9ydGh3ZXN0ZXJuIFBhY2lmaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3VsaWtvdmE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTY2PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omt1bGk2MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IEFrYWQuIE5hdWsgU1NTUiwgSW5zdC4gT2tlYW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk1hdGVyaWFsIG9uIHRoZSBsYW50ZXJuZmlzaCBnZW51cyBEaWFwaHVzIChGYW1pbHkgU2NvcGVsaWRhZSkgaW4gdGhlIHdlc3Rlcm4gcGFydCBvZiB0aGUgUGFjaWZpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LdWxpa292YTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmxlZ2E2NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNhaC4gT2NlYW5vZ3IuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DeWNsZXMgYmlvbG9naXF1ZXMgZGVzIHBvaXNzb25zIG1lc29wZWxhZ2lxdWVzIGRhbnMgbCdlc3QgZGUgbCdPY2VhbiBJbmRpZW4uIDEuIFNjb3BlbG9wc2lzIG11bHRpcHVuY3RhdHVzIEJyYXVlciwgR29ub3N0b21hIHNwLiBhbmQgTm90b2x5Y2hudXMgdmFsZGl2aWFlIEJyYXVlcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5MZWdhbmQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NDc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmxlZ2E2N2EiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DYWguIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q3ljbGVzIGJpb2xvZ2lxdWVzIGRlcyBwb2lzc29ucyBtZXNvcGVsLWFnaXF1ZXMgZGFucyBsJ2VzdCBkZSBsJ09jZWFuIEluZGllbi4gMi4gRGlzdHJpYnV0aW9uIG1veWVubmUgZGVzIHByaW5jaXBhbCBlc3BlY2VzIGRlbGwnaWNodHlvZmF1bmU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TGVnYW5kPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjczPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpsbG95NjMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5HZW9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGVjdG9uaWMgaGlzdG9yeSBBbWVyaWNhbiBPcm9nYW46IEFtZXJpY2Fucy1UZWN0b25pYyBwb2xlLCBhIHN5bXBvc2l1bTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5MbG95ZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44ODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omxvbm4wNSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPldpc3MuIEVyZ2Vibi4gU2Nod2VkLiBTdWItcG9sYXJleHBlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBmaXNoZXMgb2YgdGhlIFN3ZWRpc2ggU291dGggUG9sYXIgRXhwZWRpdGlvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Mw7ZubmJlcmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT42PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bHV0azkyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Sy4gRGFuc2tlIFZpZGVuc2suIFNlbHNrLiBTa3IuLCBTZXIuIDY8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNwb2xpYSBBdGxhbnRpY2EuIFNjb3BlbGluaSBtdXNldSB6b29sb2dpY2kgSGF1bmllbnNpcy4gQmlkcmFnIHRpbCBLaW5kc3RhYiBvbSBkZXQgYWFibmUgSGF1cyBsYWtlc2lsZCBlbGxlciBTY29wZWxpbmVyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkzDvHRrZW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjIxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWFjazM3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBzZWFzb25hbCBjaXJjdWxhdGlvbiBvZiB0aGUgYW50YXJjdGljIG1hY3JvcGxhbmt0b248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWFja2ludG9zaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zNjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWFjazQ2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBhbnRhcmN0aWMgY29udmVyZ2VuY2UgYW5kIHRoZSBkaXN0cmlidXRpb24gb2Ygc3VyZmFjZSB0ZW1wZXJhdHVyZXMgaW4gQW50YXJjdGljIHdhdGVyczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NYWNraW50b3NoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptYXJnNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbnRhcmN0aWMgZ2xhY2lhdGlvbiBkdXJpbmcgdGhlIFRlcnRpYXJ5IHJlY29yZGVkIGluIHN1YmFudGFyY3RpYyBkZWVwLXNlYSBjb3JlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NYXJnb2xpczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDg1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE3MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTI2L3NjaWVuY2UuMTcwLjM5NjIuMTA4NTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWFycjYyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBuYXR1cmFsIGhpc3RvcnkgYW5kIGdlb2dyYXBoeSBvZiB0aGUgQW50YXJjdGljIEtyaWxsIChFdXBoYXVzaWEgU3VwZXJiYSBEYW5hPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1hcnI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWF1YzY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BZHZhbmNlcyBpbiBtYXJpbmUgYmlvbG9neTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlRoZSBiaW9sb2d5IG9mIGV1cGhhdXNpaWRzLjwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1hdWNobGluZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWF5cjYzIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BbmltYWwgc3BlY2llcyBhbmQgZXZvbHV0aW9uPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWF5cjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC40MTU5L2hhcnZhcmQuOTc4MDY3NDg2NTMyNzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWNjdTE1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RW5kZWF2b3VyIDE5MDktMTkxNDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmlvbG9naWNhbCByZXN1bHRzIG9mIGZpc2hpbmcgZXhwZXJpbWVudHMgY2FycmllZCBvbiBieSB0aGUgRi5JLlM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNDdWxsb2NoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEwNDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWNjdTIzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UmVjLiBBdXN0LiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GaXNoZXMgZnJvbSBBdXN0cmFsaWEgYW5kIExvcmQgSG93ZSBJc2xhbmQuIDI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNDdWxsb2NoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjExMDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyMzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptY2N1MjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NZW0uIEF1c3QuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgY2hlY2tsaXN0IG9mIHRoZSBmaXNoZXMgcmVjb3JkZWQgZnJvbSBBdXN0cmFsaWE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNDdWxsb2NoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MeKAkzU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyOTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zODUzL2ouMDA2Ny0xOTY3LjUuMTkyOS40NzM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1jZ2k3NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNjaWVuY2U8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvdW50ZXJjbG9ja3dpc2UgY2lyY3VsYXRpb24gaW4gdGhlIFBhY2lmaWMgU3ViYW50YXJjdGljIHNlY3RvciBvZiB0aGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNHaW5uaXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NzM2PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE4Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTI2L3NjaWVuY2UuMTg2LjQxNjUuNzM2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptY2dpNzciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Fdm9sdXRpb24gd2l0aGluIHBlbGFnaWMgZWNvc3lzdGVtczogQXNwZWN0cyBvZiB0aGUgZGlzdHJpYnV0aW9uIGFuZCBldm9sdXRpb24gb2YgdGhlIEZhbWlseSBNeWN0b3BoaWRhZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NY0dpbm5pczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41NDc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTc3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1jZ283MSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9jZWFuaWMgYmlvZ2VvZ3JhcGh5IG9mIHRoZSBQYWNpZmljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jR293YW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWNpbjY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2NpZW5jZTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q29jY29saXRocyBhcyBwYWxlb2NsaW1hdGljIGluZGljYXRvcnMgb2YgUGxlaXN0b2NlbmUgZ2xhY2lhdGlvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NY0ludHlyZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzE0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTI2L3NjaWVuY2UuMTU4LjM4MDYuMTMxNDwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWVhZDY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBTZWFycyBGZG4uIE1hci4gUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmFtaWx5IENobG9yb3BodGhhbG1pZGFlLiBGaXNoZXMgb2YgdGhlIFdlc3Rlcm4gTm9ydGggQXRsYW50aWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWVhZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1lYWQ1MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIEZpc2guIFJlcy4gQmQuIENhbi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgY29sbGVjdGlvbiBvZiBvY2VhbmljIGZpc2hlcyBmcm9tIG9mZiBOb3J0aGVhc3Rlcm4gSmFwYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWVhZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41NjA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjg8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTM5L2Y1My0wMzM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1pZHQ1NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNjaWVudC4gUmVzdWx0cyBCcmF0ZWdnIEV4cGVkLiAxOTQ3LTE5NDg8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBhY2lmaWMgQW50YXJjdGljIFdhdGVyczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NaWR0dHVuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptaWxlNzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5NYXIuIEJpb2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UeXBlcyBvZiBsYXJ2YWwgZGV2ZWxvcG1lbnQgaW4gbWFyaW5lIGJvdHRvbSBpbnZlcnRlYnJhdGVzLCB0aGVpciBkaXN0cmlidXRpb24gYW5kIGVjb2xvZ2ljYWwgc2lnbmlmaWNhbmNlOiBBIHJlLWV2YWx1YXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWlsZWlrb3Zza3k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTkzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9CRjAwMzUyODA5PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptb3JlODgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBTb2MuIFBoaWxvbWF0aC4sIFBhcmlzLCBTZXIuIDc8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxlIHNjb3BlbGUgZGUgVmVyYW55LCBTY29wZWx1cyB2ZXJhbnlpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1vcmVhdTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg4ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptb3NlNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBMb3MgQW5nZWxlcyBDb3VudHkgTXVzLiBOYXQuIEhpc3QuLCBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EZXZlbG9wbWVudCBvZiBsYW50ZXJuZmlzaGVzIChGYW1pbHkgTXljdG9waGlkYWUpIGluIHRoZSBDYWxpZm9ybmlhIGN1cnJlbnQuIDEuIFNwZWNpZXMgd2l0aCBuYXJyb3ctZXllZCBsYXJ2YWU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TW9zZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1vc2U3MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZpc2guIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EZXZlbG9wbWVudCBvZiB0aGUgbGFudGVybmZpc2ggU2NvcGVsb3BzaXMgbXVsdGlwdW5jdGF0dXMgQnJhdWVyIDE5MDYsIHdpdGggYSBkaXNjdXNzaW9uIG9mIGl0cyBwcm9wb3NlZCBtZWNoYW5pc20gZm9yIHRoZSBldm9sdXRpb24gb2YgcGhvdG9waG9yZSBwYXR0ZXJucyBpbiBsYW50ZXJuZmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1vc2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU0MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1vc2U3NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZpc2guIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Sb2xlIG9mIGxhcnZhbCBzdGFnZXMgaW4gc3lzdGVtYXRpYyBpbnZlc3RpZ2F0aW9ucyBvZiBtYXJpbmUgdGVsZW9zdHM6IFRoZSBNeWN0b3BoaWRhZSwgQSBDYXNlIFN0dWR5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1vc2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM5MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTc0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om11cm82MyI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBwcmluY2lwYWwgaHlkcm9sb2dpY2FsIGZlYXR1cmVzIG9mIHRoZSBQYWNpZmljIE9jZWFuLiBUcmFuc2xhdGVkIGZyb20gUnVzc2lhbiwgY2F0YWxvZ3VlIDc1MzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NdXJvbXRzZXY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bmFmcDY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGFuYSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MYW50ZXJuZmlzaGVzIG9mIHRoZSBnZW5lcmEgTG9iaWFuY2hpYSBhbmQgRGlhcGh1cyBpbiB0aGUgTm9ydGggQXRsYW50aWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TmFmcGFrdGl0aXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpuYWZwNjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBMb3MgQW5nZWxlcyBDb3VudHkgTXVzLiBOYXQuIEhpc3QuLCBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MYW50ZXJuZmlzaGVzIChGYW1pbHkgTXljdG9waGlkYWUpIGNvbGxlY3RlZCBkdXJpbmcgY3J1aXNlcyAzIGFuZCA2IG9mIHRoZSBSL1YgQW50b24gQnJ1dW4gaW4gdGhlIEluZGlhbiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5OYWZwYWt0aXRpczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bmFmcDY4YSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkxvcyBBbmdlbGVzIENvdW50eSBNdXMuIENvbnRyLiBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5SZXZpZXcgb2YgdGhlIGxhbnRlcm5maXNoIGdlbnVzIExhbXBhZGVuYSB3aXRoIGEgZGVzY3JpcHRpb24gb2YgYSBuZXcgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5OYWZwYWt0aXRpczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEzODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpuZXdlNjYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BdXQuIEouIE1hci4gRnJlc2h3YXRlciBSZXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TZWFzb25hbCBjaGFuZ2VzIGluIHRoZSBoeWRyb2xvZ2ljYWwgYW5kIGJpb2xvZ2ljYWwgZW52aXJvbm1lbnRzIG9mZiBQb3J0IEhhY2tpbmcsIFN5ZG5leTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5OZXdlbGw8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Nzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTA3MS9NRjk2NjAwNzc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om5vcm0zMCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PY2VhbmljIGZpc2hlcyBhbmQgZmxhdGZpc2hlcyBjb2xsZWN0ZWQgaW4gMTkyNS0xOTI3PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk5vcm1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpub3JtMzciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5SZXAuIEJBTlogQW50YXJjdC4gUmVzLiBFeHBlZC4sIFNlci4gQjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk5vcm1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4yPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bm9ybTM4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvYXN0IEZpc2hlcy4gMy4gVGhlIGFudGFyY3RpYyB6b25lPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk5vcm1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjU5NjIvYmhsLnBhcnQuMTk0MTI8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om9kYXk2NSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGwuIE11cy4gQ29tcC4gWm9vbC4gSGFydi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgc3R1ZHkgb2YgdGhlIGVmZmVjdHMgb2YgZXhwYXRyaWF0aW9uIG9uIHRoZSBnb25hZHMgb2YgdGhlIHR3byBteWN0b3BoaWQgZmlzaGVzIGluIHRoZSBOb3J0aCBBdGxhbnRpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5PJ0RheTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT43NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6b3JyZTY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SHlkcm9sb2d5IG9mIHRoZSBzb3V0aGVhc3QgSW5kaWFuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk9ycmVuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om9zdGE2NSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFudGFyY3RpYyBvY2Vhbm9ncmFwaHksIEVjb2xvZ3kgYW5kIGJpb2dlb2dyYXBoeSBvZiB0aGUgYW50YXJjdGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPk1vbm9nci4gQmlvbC48L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Pc3RhcG9mZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45NzY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cGFwcDEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RHQuIFN1ZHBvbC4gRXhwZWQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaWUgRmlzY2hlIGRlciBEZXV0c2NoZW4gU3VkcG9sYXIgRXhwZWRpdGlvbiAxOTAxLTE5MDMuIDIuIERpZSBGaXNjaGUgZGVyIEFudGFyY3RpYyBhdWcgU3ViYW50YXJjdGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBhcHBlbmhlaW08L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTYyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnBhcHAxNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkR0LiBTdWRwb2wuIEV4cGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGllIEZpc2hlbiBkZXIgU3VkcG9sYXIgRXhwZWRpdGlvbiAxOTAxLTE5MDMuIDIuIERpZSB0aWVmc2UgRmlzaGU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UGFwcGVuaGVpbTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxNDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpwYXJpNzAiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JY2h0aHlvZmF1bmEgb2YgdGhlIGVwaXBlbGFnaWMgem9uZS4gVHJhbnNsYXRlZCBmcm9tIFJ1c3NpYW4sIGNhdGFsb2d1ZSA1NTM4PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBhcmluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnBhcnIyOCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGwuIEJpbmdoYW0gT2NlYW5vZ3IuIENvbGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EZWVwc2VhIGZpc2hlcyBvZiB0aGUgb3JkZXIgSW5pb21pIGZyb20gdGhlIHdhdGVycyBhcm91bmQgdGhlIEJhaGFtYSBhbmQgQmVybXVkYSBJc2xhbmRzLCB3aXRoIGFubm90YXRlZCBrZXlzIHRvIHRoZSBTdWQtaWRhZSwgTXljdG9waGlkYWUsIFNjb3BlbGFyY2hpZGFlLCBFdmVybWFuZWxsaWRhZSwgT21vc3VkaWRhZSwgQ2V0b21pbWlkYWUsIGFuZCBSb25kZWxldGlpZGFlIG9mIHRoZSB3b3JsZDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYXJyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnBheHQ2N2EiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Db3BlaWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgZGlzdHJpYnV0aW9uYWwgYW5hbHlzaXMgZm9yIHRoZSBsYW50ZXJuZmlzaGVzIChGYW1pbHkgTXljdG9waGlkYWUpIG9mIHRoZSBTYW4gUGVkcm8gQmFzaW4sIENhbGlmb3JuaWE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UGF4dG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQyMjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMTQ0MjEzMTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cGF4dDY3YiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNhbGlmLiBGaXNoIEdhbWU8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkJpb2xvZ2ljYWwgbm90ZXMgb24gc291dGhlcm4gQ2FsaWZvcm5pYSBsYW50ZXJuZmlzaGVzIChGYW1pbHkgTXljdG9waGlkYWUpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBheHRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMTQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpwYXh0NzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBMb3MgQW5nZWxlcyBDb3VudHkgTmF0LiBIaXN0LiBNdXMuLCBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Pc3Rlb2xvZ3kgYW5kIHJlbGF0aW9uc2hpcHMgb2YgdGhlIGxhbnRlcm5mIGlzaGVzIChGYW1pbHkgTXljdG9waGlkYWUpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBheHRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnB5dGM2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIE9jZWFub2dyLiBTb2MuIEphcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPldhdGVyIG1hc3NlcyBhbmQgdGhlaXIgcHJvcGVydGllcyBhdCAxNjDCsFcgaW4gdGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlB5dGNvd2l0ejwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmFmaTEwIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5JbmRpY2UgZCdsdHRpb2xvZ2lhIFNpY2lsaWFuYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJhZmluZXNxdWU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4MTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmVnYTEzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJhbnMuIFIuIFNvYy4gRWRpbmIuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgQW50YXJjdGljIGZpc2hlcyBvZiB0aGUgU2NvdHRpc2ggTmF0aW9uYWwgQW50YXJjdGljIGV4cGVkaXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UmVnYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjI5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTEzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMTcvUzAwODA0NTY4MDAwMDM5NTE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJlZ2ExNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk5hdHVyYWwgSGlzdG9yeSwgQnIuIEFudGFyY3QuIFRlcnJhIE5vdmEgRXhwZWQuIDE5MTAsIFpvb2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GaXNoZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UmVnYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmVpZDY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Sm9obnMgSG9wa2lucyBPY2Vhbm9nci4gU3R1ZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkludGVybWVkaWF0ZSB3YXRlcnMgb2YgdGhlIFBhY2lmaWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UmVpZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmVpbjM3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGFuc2sgVmlkLiBTZWxzay4gQWZoLiBDb3BlbmhhZ2VuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JY2h0aHlvbG9naXNrZSBiaWRyYWcgdGlsIGRlbiBncm9ubGFuZHNrYSBmYXVuYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5SZWluaGFyZHQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4Mzc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmljaDQ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5JY2h0aHlvbG9neSBvZiB0aGUgdm95YWdlIG9mIEguTS5TPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UmljaGFyZHNvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg0NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpyaWNoNDgiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5FcmVidXMgYW5kIFRlcnJvcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5FcmVidXMgYW5kIFRlcnJvcjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJpY2hhcmRzb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODQ4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJvY2g2MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkF1c3QuIEouIE1hci4gRnJlc2h3YXRlciBSZXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgaW50ZXJtZWRpYXRlIHdhdGVycyBvZiB0aGUgVGFzbWFuIGFuZCBDb3JhbCBzZWFzLiAxLiBUaGUgMjYuODAgc2lnbWEgdCBzdXJmYWNlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJvY2hmb3JkPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNzEvTUY5NjAwMTI3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpyb3BlNjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBVLlMuIE5hdG4uIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN5c3RlbWF0aWNzIGFuZCB6b29nZW9ncmFwaHkgb2YgdGhlIHdvcmxkd2lkZSBiYXRoeXBlbGFnaWMgc3F1aWQgQmF0aHl0ZXV0aGlzIChDZXBoYWxvcG9kYSwgT2Vnb3BzaWRhKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Sb3BlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI5MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC41NDc5L3NpLjAzNjI5MjM2LjI5MS4xPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpyb3RoNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PY2Vhbm9ncmFwaHkgb2YgdGhlIENvcmFsIGFuZCBUYXNtYW4gc2VhczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5PY2Vhbm9ncmFwaHkgYW5kIE1hcmluZSBCaW9sb2d5LCBBbm51YWwgUmV2aWV3PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Um90aHNjaGk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NDk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzYXZhNjAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TeXN0LiBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RXZvbHV0aW9uIG9mIGEgUGVuaW5zdWxhciBIZXJwZXRvZmF1bmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2F2YWdlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE4NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT45PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMjQxMTk2NzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2F2YTY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3R1ZGllcyBvbiBBbnRhcmN0aWMgb2NlYW5vbG9neS4gQmlvbG9naWNhbCBzdGF0aW9ucyBvY2N1cGllZCBieSB0aGUgVVNOUyBFbHRhbi08L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2F2YWdlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnNhdmE2NiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN0dWRpZXMgaW4gQW50YXJjdGljIG9jZWFub2xvZ3kuIEJpb2xvZ2ljYWwgc3RhdGlvbnMgb2NjdXBpZWQgYnkgdGhlIFVTTlMgRWx0YW4tPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNhdmFnZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzYXZhNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdHVkaWVzIGluIEFudGFyY3RpYyBvY2Vhbm9sb2d5LiBCaW9sb2dpY2FsIHN0YXRpb25zIG9jY3VwaWVkIGJ5IHRoZSBVU05TIEVsdGFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNhdmFnZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzY2hlNjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EdC4gSHlkcm9nci4gWi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9uIHRoZSByZWxhdGlvbiBiZXR3ZWVuIHRoZSB3aW5kcyBvZmYgU291dGh3ZXN0IEFmcmljYSBhbmQgdGhlIEJlbmd1ZWxhIEN1cnJlbnQgYW5kIEFndWxoYXMgQ3VycmVudCBwZW5ldHJhdGlvbnMgaW4gdGhlIFNvdXRoIEF0bGFudGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNjaGVsbDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9CRjAyMjM1NzI1PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzY3JpNjkiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QaHlzaWNhbCBhbmQgY2hlbWljYWwgZGF0YSBmcm9tIHRoZSBTY29ycGlvIGV4cGVkaXRpb24gaW4gdGhlIFNvdXRoIFBhY2lmaWMgT2NlYW4sIFVTTlMgRWx0YW5pbiBjcnVpc2VzIDI4IGFuZCAyOTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TY3JpcHBzIEluc3RpdHV0aW9uIG9mIE9jZWFub2dyYXBoeSwgV29vZHMgSG9sZSBPY2Vhbm9ncmFwaGljIEluc3RpdHV0aW9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnNoYWM3NSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBhbGVvdGVtcGVyYXR1cmUgaGlzdG9yeSBvZiB0aGUgQ2Vub3pvaWMgYW5kIHRoZSBpbml0aWF0aW9uIG9mIEFudGFyY3RpYyBnbGFjaWF0aW9uOiBPeHlnZW4gYW5hbHlzZXMgaW4gRFNEUCBzaXRlcyAyNzcsIDI3OSwgYW5kIDI4MTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5Jbml0aWFsIHJlcG9ydHMgb2YgdGhlIERlZXAgU2VhIERyaWxsaW5nIFByb2plY3Q8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TaGFja2xldG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjc0MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzaGFuNjYiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5IeWRyb2xvZ3kgb2YgdGhlIHNvdXRoIGFuZCB3ZXN0IGNvYXN0cyBvZiBBZnJpY2E8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2hhbm5vbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzaGloNjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EYW5hIFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBzeXN0ZW1hdGljcyBhbmQgYmlvbG9neSBvZiB0aGUgZmFtaWx5IFBocm9uaW1pZGFlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNoaWg8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzbWl0MzMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcmFucy4gUi4gU29jLiBTLiBBZnIuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5OZXcgTXljdG9waGlkIGZpc2ggZnJvbSBTb3V0aCBBZnJpY2E8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U21pdGg8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTMzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAzNTkxOTMzMDk1MTkzMTc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnN2ZXI0MiI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIG9jZWFuczwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlN2ZXJkcnVwPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTQyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnRhZnQ2MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIE1hci4gUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGlzdHJpYnV0aW9uIG9mIHNhbGluaXR5IGFuZCBkaXNzb2x2ZWQgb3h5Z2VuIG9uIHN1cmZhY2VzIG9mIHVuaWZvcm0gcG90ZW50aWFsIHNwZWNpZmljLXZvbHVtZSBpbiB0aGUgU291dGggQXRsYW50aWMsIFNvdXRoIFBhY2lmaWMsIGFuZCBJbmRpYW4gb2NlYW5zPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlRhZnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjJsPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnRhbmkyOCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlZpZGVuc2suIE1lZGRyLiBEYW5zayBOYXR1cmguIEZvcmVuLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3lub3BzaXMgb2Ygc2NvcGVsaWRzIGluIHRoZSBOb3J0aCBBdGxhbnRpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Uw6RuaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjg2PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnR1bmkzMiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlZpZGVuc2suIE1lZGRyLiBEYW5zayBOYXR1cmguIEZvcmVuLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Tm90ZXMgb24gc2NvcGVsaWRzIGZyb20gdGhlIERhbmEgZXhwZWRpdGlvbi4gMTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5UdW5pbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjk0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTMyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnRlYmI2MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIG9mIHBlbGFnaWMgcG9seWNoYWV0ZXMgaW4gdGhlIFNvdXRoIEF0bGFudGljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlRlYmJsZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6dHJ1bjY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Vm9wci4gSWNodGlvbDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TmV3IG9ic2VydmF0aW9ucyBvbiB0aGUgZGlzdHJpYnV0aW9uIG9mIEVsZWN0cm9uYSByaXNzb2kgKENvY2NvKSBhbmQgRGlhcGh1cyBvc3RlbmZlbGRpIFR1bmluZyAoTXljdG9waGlkYWUpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlRydW5vdjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41OTU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp2aWdsNjYiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPk9jZWFuczogTGltaXRzLCBkZWZpbml0aW9ucywgYW5kIGRpbWVuc2lvbnMsIEVuY3ljbG9wYWVkaWEgb2YgT2NlYW5vZ3JhcGh5PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+VmlnbGllcmk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6dm9ybzY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2Fyc2lhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIG9mIHpvb3BsYW5rdG9uIGluIHRoZSBTb3V0aGVybiBPY2VhbiBhbmQgaXRzIGRlcGVuZGVuY2Ugb24gdGhlIGNpcmN1bGF0aW9uIG9mIHdhdGVyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlZvcm9uaW5hPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI3NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMzY0ODI3LjE5NjguMTA0MTMzOTE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OndhaXQwNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlJlYy4gQXVzdC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QWRkaXRpb24gdG8gdGhlIGZpc2ggZmF1bmEgb2YgTG9yZCBIb3dlIElzbGFuZCwgNDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XYWl0ZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjM4NTMvai4wMDY3LTE5NzUuNS4xOTA0LjEwNTM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OndhaXQxMSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlJlYy4gQ2FudGVyYnVyeSBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GaXNoZXMuIDI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2FpdGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTU3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YWl0MTYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BdXN0cmFsYXMuIEFudGFyY3QuIEV4cGVkLiwgU2VyLiBDLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldhaXRlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YWxzNjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5MaW1tb2wuIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VmVydGljYWwgZGlzdHJpYnV0aW9uIG9mIGFudGFyY3RpYyBwaHl0by1wbGFua3Rvbi4gMi4gQSBjb21wYXJpc29uIG9mIHBoeXRvLXBsYW5rdG9uIHN0YW5kaW5nIGNyb3BzIGluIHRoZSBTb3V0aGVybiBPY2VhbiB3aXRoIHRoYXQgb2YgdGhlIEZsb3JpZGEgU3RyYWl0czwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XYWxzaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjQzMTkvbG8uMTk2OS4xNC4xLjAwODY8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OndhcnI3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkdlbmVyYWwgY2lyY3VsYXRpb24gb2YgdGhlIFNvdXRoIFBhY2lmaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2FycmVuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YXRrNzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbnRhcmN0aWMgYm90dG9tIHdhdGVyOiBNYWpvciBjaGFuZ2UgaW4gdmVsb2NpdHkgZHVyaW5nIHRoZSBsYXRlIENlbm96b2ljIGJldHdlZW4gQXVzdHJhbGlhIGFuZCBBbnRhcmN0aWNhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldhdGtpbnM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODEzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE3Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTI2L3NjaWVuY2UuMTczLjM5OTkuODEzPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aGl0MzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5SZWMuIEF1c3QuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN0dWRpZXMgaW4gSWNodGh5b2xvZ3kuIDQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2hpdGxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTMxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjM4NTMvai4wMDY3LTE5NzUuMTguMTkzMS43MjA8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OndoaXQzMiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlJlYy4gQXVzdC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3R1ZGllcyBpbiBJY2h0aHlvbG9neS4gNjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XaGl0bGV5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMyMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zODUzL2ouMDA2Ny0xOTc1LjE4LjE5MzIuNzM3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aGl0NDEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BdXN0LiBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBsYW50ZXJuZmlzaCBmcm9tIE1hY3F1YXJpZSBJc2xhbmQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2hpdGxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aGl0NDMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BdXN0LiBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SWNodGh5b2xvZ2ljYWwgbm90ZXMgYW5kIGlsbHVzdHJhdGlvbnMuIDI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2hpdGxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2hpdDUzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UmVjLiBBdXN0LiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdHVkaWVzIGluIEljaHRoeW9sb2d5LiAxNjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XaGl0bGV5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEzMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTUzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjM4NTMvai4wMDY3LTE5NzUuMjMuMTk1My42Mjc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ondpc242MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNvcGVpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBuZXcgZ2VudXMgYW5kIHNwZWNpZXMgb2YgbXljdG9waGlkIGZpc2ggZnJvbSB0aGUgc291dGgtY2VudHJhbCBQYWNpZmljIE9jZWFuLCB3aXRoIG5vdGVzIG9uIHJlbGF0ZWQgZ2VuZXJhIGFuZCB0aGUgZGVzaWduYXRpb24gb2YgYSBuZXcgdHJpYmUsIEVsZWN0cm9uaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2lzbmVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPkk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8xNDQxMjcwPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aXNuNzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Db3BlaWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRlc2NyaXB0aW9ucyBvZiBlaWdodCBuZXcgc3BlY2llcyBvZiBteWN0b3BoaWQgZmlzaGVzIGZyb20gdGhlIGVhc3Rlcm4gUGFjaWZpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XaXNuZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+STwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4yMzA3LzE0NDE1OTc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ondvb3M3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkVhc3Rlcm4gYm91bmRhcnkgY3VycmVudHMgaW4gU291dGggUGFjaWZpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Xb29zdGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3b29zNjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBNYXIuIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBQZXJ1LUNoaWxlIHVuZGVyY3VycmVudDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Xb29zdGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIxMjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ondvb3M2MyI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkVhc3Rlcm4gYm91bmRhcnkgY3VycmVudHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIHNlYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldvb3N0ZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjUzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d3VzdDM2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U2NoaWNodHVuZyBhbmQgWmlrdWxhdGlvbiBkZXMgQXRsYW50aXNjaGVuIE96ZWFucy4gRHQuIEF0bGFudC4gRXhwZWQuIE1ldGVvciAxOTI14oCTMTkyNzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Xw7xzdDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3eXJ0NjBhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RHQuIEh5ZHJvZ3IuIFouPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgYW50YXJjdGljIGNpcmN1bXBvbGFyIGN1cnJlbnQgYW5kIHRoZSBhbnRhcmN0aWMgcG9sYXIgZnJvbnQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V3lydGtpPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvQkYwMjIyNjE5NzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d3lydDYwYiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN1cmZhY2UgY2lyY3VsYXRpb24gaW4gdGhlIENvcmFsIGFuZCBUYXNtYW4gc2VhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPld5cnRraTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3eXJ0NjMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBTY3JpcHBzIEluc3QuIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGhvcml6b250YWwgYW5kIHZlcnRpY2FsIGZpZWxkIG9mIG1vdGlvbiBpbiB0aGUgUGVydSBDdXJyZW50PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPld5cnRraTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ond5cnQ2NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkludC4gSi4gT2NlYW5vZ3IuIExpbW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNpcmN1bGF0aW9uIGFuZCB3YXRlciBtYXNzZXMgaW4gdGhlIGVhc3Rlcm4gZXF1YXRvcmlhbCBQYWNpZmljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPld5cnRraTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp6dWdtMTEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBJbnN0LiBPY2Vhbm9nci4gTW9uYWNvPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaWFnbm9zZXMgZGVzIHBvaXNzb25zIG5vdXZlYXV4IHByb3ZlbmFudCBkZXMgY2FtcGdhbmVzIGR1IHlhY2h0IFByaW5jZXNzIEFsaWNlIDE5MDEtMTkxMDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5adWdtYXllcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE5Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgPC9ib29rX3Nlcmllc19tZXRhZGF0YT4NCiAgICAgICAgICAgIDwvYm9vaz4NCiAgICAgICAgICA8L2Nyb3NzcmVmPg0KICAgICAgICA8L2RvaV9yZWNvcmQ+DQogICAgICA8L3F1ZXJ5Pg0KICAgIDwvYm9keT4NCiAgPC9xdWVyeV9yZXN1bHQ+DQo8L2Nyb3NzcmVmX3Jlc3VsdD4=
|
85
|
-
http_version:
|
86
|
-
recorded_at: Sun, 07 Jul 2019 11:11:08 GMT
|
87
|
-
recorded_with: VCR 3.0.3
|
@@ -1,47 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://doi.org/ra/10.3280
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.3; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 200
|
17
|
-
message: ''
|
18
|
-
headers:
|
19
|
-
Date:
|
20
|
-
- Thu, 04 Jul 2019 13:45:42 GMT
|
21
|
-
Content-Type:
|
22
|
-
- application/json;charset=UTF-8
|
23
|
-
Content-Length:
|
24
|
-
- '51'
|
25
|
-
Connection:
|
26
|
-
- keep-alive
|
27
|
-
Set-Cookie:
|
28
|
-
- __cfduid=da05a7d2fa59e8555ee2d62c1f6d7b8821562247942; expires=Fri, 03-Jul-20
|
29
|
-
13:45:42 GMT; path=/; domain=.doi.org; HttpOnly
|
30
|
-
Expect-Ct:
|
31
|
-
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
32
|
-
Server:
|
33
|
-
- cloudflare
|
34
|
-
Cf-Ray:
|
35
|
-
- 4f118a876833cd93-CDG
|
36
|
-
body:
|
37
|
-
encoding: ASCII-8BIT
|
38
|
-
string: |-
|
39
|
-
[
|
40
|
-
{
|
41
|
-
"DOI": "10.3280",
|
42
|
-
"RA": "mEDRA"
|
43
|
-
}
|
44
|
-
]
|
45
|
-
http_version:
|
46
|
-
recorded_at: Thu, 04 Jul 2019 13:45:42 GMT
|
47
|
-
recorded_with: VCR 3.0.3
|
data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/xs_string_attributes.yml
DELETED
@@ -1,93 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://doi.org/ra/10.17630
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.1; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 200
|
17
|
-
message: ''
|
18
|
-
headers:
|
19
|
-
Date:
|
20
|
-
- Wed, 03 Jul 2019 19:25:24 GMT
|
21
|
-
Content-Type:
|
22
|
-
- application/json;charset=UTF-8
|
23
|
-
Content-Length:
|
24
|
-
- '55'
|
25
|
-
Connection:
|
26
|
-
- keep-alive
|
27
|
-
Set-Cookie:
|
28
|
-
- __cfduid=d97282bc04ae4cb05ca5562b1e5d073ad1562181924; expires=Thu, 02-Jul-20
|
29
|
-
19:25:24 GMT; path=/; domain=.doi.org; HttpOnly
|
30
|
-
Expect-Ct:
|
31
|
-
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
32
|
-
Server:
|
33
|
-
- cloudflare
|
34
|
-
Cf-Ray:
|
35
|
-
- 4f0b3ec569d269aa-CDG
|
36
|
-
body:
|
37
|
-
encoding: ASCII-8BIT
|
38
|
-
string: |-
|
39
|
-
[
|
40
|
-
{
|
41
|
-
"DOI": "10.17630",
|
42
|
-
"RA": "DataCite"
|
43
|
-
}
|
44
|
-
]
|
45
|
-
http_version:
|
46
|
-
recorded_at: Wed, 03 Jul 2019 19:25:24 GMT
|
47
|
-
- request:
|
48
|
-
method: get
|
49
|
-
uri: https://api.datacite.org/dois/10.17630/bb43e6a3-72e0-464c-9fdd-fbe5d3e56a09
|
50
|
-
body:
|
51
|
-
encoding: US-ASCII
|
52
|
-
string: ''
|
53
|
-
headers:
|
54
|
-
User-Agent:
|
55
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.1; mailto:info@datacite.org)
|
56
|
-
Accept:
|
57
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
58
|
-
response:
|
59
|
-
status:
|
60
|
-
code: 200
|
61
|
-
message: OK
|
62
|
-
headers:
|
63
|
-
Date:
|
64
|
-
- Wed, 03 Jul 2019 19:25:25 GMT
|
65
|
-
Content-Type:
|
66
|
-
- application/json; charset=utf-8
|
67
|
-
Connection:
|
68
|
-
- keep-alive
|
69
|
-
Status:
|
70
|
-
- 200 OK
|
71
|
-
X-Anonymous-Consumer:
|
72
|
-
- 'true'
|
73
|
-
Cache-Control:
|
74
|
-
- max-age=0, private, must-revalidate
|
75
|
-
Vary:
|
76
|
-
- Accept-Encoding, Origin
|
77
|
-
X-Request-Id:
|
78
|
-
- 8e6e05ff-a193-4e56-afea-7f1b5c2c6522
|
79
|
-
Etag:
|
80
|
-
- W/"d590d4e8b944afbfaeda7ef60639033a"
|
81
|
-
X-Runtime:
|
82
|
-
- '0.025109'
|
83
|
-
X-Powered-By:
|
84
|
-
- Phusion Passenger 6.0.2
|
85
|
-
Server:
|
86
|
-
- nginx/1.15.8 + Phusion Passenger 6.0.2
|
87
|
-
body:
|
88
|
-
encoding: ASCII-8BIT
|
89
|
-
string: !binary |-
|
90
|
-
eyJkYXRhIjp7ImlkIjoiMTAuMTc2MzAvYmI0M2U2YTMtNzJlMC00NjRjLTlmZGQtZmJlNWQzZTU2YTA5IiwidHlwZSI6ImRvaXMiLCJhdHRyaWJ1dGVzIjp7ImRvaSI6IjEwLjE3NjMwL2JiNDNlNmEzLTcyZTAtNDY0Yy05ZmRkLWZiZTVkM2U1NmEwOSIsInByZWZpeCI6IjEwLjE3NjMwIiwic3VmZml4IjoiYmI0M2U2YTMtNzJlMC00NjRjLTlmZGQtZmJlNWQzZTU2YTA5IiwiaWRlbnRpZmllcnMiOlt7ImlkZW50aWZpZXIiOiJodHRwczovL2RvaS5vcmcvMTAuMTc2MzAvYmI0M2U2YTMtNzJlMC00NjRjLTlmZGQtZmJlNWQzZTU2YTA5IiwiaWRlbnRpZmllclR5cGUiOiJET0kifV0sImNyZWF0b3JzIjpbeyJuYW1lIjoiSGF5d29vZCwgUmFwaGFlbGxlIERhd24iLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiUmFwaGFlbGxlIERhd24iLCJmYW1pbHlOYW1lIjoiSGF5d29vZCIsImFmZmlsaWF0aW9uIjoiU2Nob29sIG9mIFBoeXNpY3MgYW5kIEFzdHJvbm9teSJ9LHsibmFtZSI6IkNhbWVyb24sIEFuZHJldyBDb2xsaWVyIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IkFuZHJldyBDb2xsaWVyIiwiZmFtaWx5TmFtZSI6IkNhbWVyb24iLCJhZmZpbGlhdGlvbiI6IlNjaG9vbCBvZiBQaHlzaWNzIGFuZCBBc3Ryb25vbXkifSx7Im5hbWUiOiJVbnJ1aCwgWS4gQy4gIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IlkuIEMuICIsImZhbWlseU5hbWUiOiJVbnJ1aCJ9LHsibmFtZSI6IkxvdmlzLCBDLiAiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiQy4gIiwiZmFtaWx5TmFtZSI6IkxvdmlzIn0seyJuYW1lIjoiTGFuemEsIEEuRi4gIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IkEuRi4gIiwiZmFtaWx5TmFtZSI6IkxhbnphIn0seyJuYW1lIjoiTGxhbWEsIEpvc2VwaCIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJKb3NlcGgiLCJmYW1pbHlOYW1lIjoiTGxhbWEiLCJhZmZpbGlhdGlvbiI6IlNjaG9vbCBvZiBQaHlzaWNzIGFuZCBBc3Ryb25vbXkifSx7Im5hbWUiOiJEZWxldWlsLCBNLiAiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiTS4gIiwiZmFtaWx5TmFtZSI6IkRlbGV1aWwifSx7Im5hbWUiOiJGYXJlcywgUmltIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IlJpbSIsImZhbWlseU5hbWUiOiJGYXJlcyJ9LHsibmFtZSI6IkdpbGxvbiwgTS4gIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6Ik0uICIsImZhbWlseU5hbWUiOiJHaWxsb24ifSx7Im5hbWUiOiJNb3V0b3UsIEMuICIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJDLiAiLCJmYW1pbHlOYW1lIjoiTW91dG91In0seyJuYW1lIjoiUGVwZSwgRi4gIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IkYuICIsImZhbWlseU5hbWUiOiJQZXBlIn0seyJuYW1lIjoiUG9sbGFjY28sIEQuICIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJELiAiLCJmYW1pbHlOYW1lIjoiUG9sbGFjY28ifSx7Im5hbWUiOiJRdWVsb3osIEQuICIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJELiAiLCJmYW1pbHlOYW1lIjoiUXVlbG96In0seyJuYW1lIjoiU8OpZ3JhbnNhbiwgRC4gIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IkQuICIsImZhbWlseU5hbWUiOiJTw6lncmFuc2FuIn1dLCJ0aXRsZXMiOlt7ImxhbmciOiJlbiIsInRpdGxlIjoiRGF0YSB1bmRlcnBpbm5pbmcgLSBUaGUgU3VuIGFzIGEgcGxhbmV0LWhvc3Qgc3RhcjogUHJveGllcyBmcm9tIFNETyBpbWFnZXMgZm9yIEhBUlBTIHJhZGlhbC12ZWxvY2l0eSB2YXJpYXRpb25zIn1dLCJwdWJsaXNoZXIiOiJVbml2ZXJzaXR5IG9mIFN0IEFuZHJld3MiLCJjb250YWluZXIiOnt9LCJwdWJsaWNhdGlvblllYXIiOjIwMTYsInN1YmplY3RzIjpbXSwiY29udHJpYnV0b3JzIjpbeyJuYW1lIjoiSGF5d29vZCwgUmFwaGFlbGxlIERhd24iLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiUmFwaGFlbGxlIERhd24iLCJmYW1pbHlOYW1lIjoiSGF5d29vZCIsImNvbnRyaWJ1dG9yVHlwZSI6IkNvbnRhY3RQZXJzb24ifV0sImRhdGVzIjpbeyJkYXRlIjoiMjAxNi0wMS0yMCIsImRhdGVUeXBlIjoiQXZhaWxhYmxlIn0seyJkYXRlIjoiMjAxNiIsImRhdGVUeXBlIjoiSXNzdWVkIn1dLCJsYW5ndWFnZSI6bnVsbCwidHlwZXMiOnsicmlzIjoiREFUQSIsImJpYnRleCI6Im1pc2MiLCJjaXRlcHJvYyI6ImRhdGFzZXQiLCJzY2hlbWFPcmciOiJEYXRhc2V0IiwicmVzb3VyY2VUeXBlIjoiRGF0YXNldCIsInJlc291cmNlVHlwZUdlbmVyYWwiOiJBdWRpb3Zpc3VhbCJ9LCJyZWxhdGVkSWRlbnRpZmllcnMiOltdLCJzaXplcyI6WyIxS0IiLCI2S0IiLCIyNUtCIiwiNEtCIiwiMTFLQiIsIjdNQiJdLCJmb3JtYXRzIjpbImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIsImFwcGxpY2F0aW9uL3gtcnRmIiwidGV4dC9wbGFpbiIsInRleHQvcGxhaW4iLCJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iLCJhcHBsaWNhdGlvbi94LWd6aXAiXSwidmVyc2lvbiI6bnVsbCwicmlnaHRzTGlzdCI6W3sicmlnaHRzIjoiQ0MgQlkiLCJyaWdodHNVcmkiOiJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS80LjAifSx7InJpZ2h0cyI6IkNDIEJZIiwicmlnaHRzVXJpIjoiaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvNC4wIn0seyJyaWdodHMiOiJDQyBCWSIsInJpZ2h0c1VyaSI6Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzQuMCJ9LHsicmlnaHRzIjoiQ0MgQlkiLCJyaWdodHNVcmkiOiJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS80LjAifSx7InJpZ2h0cyI6IkNDIEJZIiwicmlnaHRzVXJpIjoiaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvNC4wIn0seyJyaWdodHMiOiJDQyBCWSIsInJpZ2h0c1VyaSI6Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzQuMCJ9XSwiZGVzY3JpcHRpb25zIjpbeyJsYW5nIjoiZW4iLCJkZXNjcmlwdGlvblR5cGUiOiJBYnN0cmFjdCJ9XSwiZ2VvTG9jYXRpb25zIjpbXSwiZnVuZGluZ1JlZmVyZW5jZXMiOlt7ImF3YXJkVGl0bGUiOiJBc3Ryb25vbXkgYXQgU3QgQW5kcmV3cyAyMDE1LTIwMTgiLCJmdW5kZXJOYW1lIjoiU2NpZW5jZSAmIFRlY2hub2xvZ3kgRmFjaWxpdGllcyBDb3VuY2lsIiwiYXdhcmROdW1iZXIiOiJTVC9NMDAxMjk2LzEifSx7ImF3YXJkVGl0bGUiOiJFVEFFQVJUSCIsImZ1bmRlck5hbWUiOiJFdXJvcGVhbiBDb21taXNzaW9uIn0seyJhd2FyZFRpdGxlIjoiU3QgQW5kcnJld3MgQXN0cm9ub215IFBBVFQgbGlua2VkIFRyYXZlbCBhbmQgc3Vic2lzdGVuY2UiLCJmdW5kZXJOYW1lIjoiU2NpZW5jZSAmIFRlY2hub2xvZ3kgRmFjaWxpdGllcyBDb3VuY2lsIiwiYXdhcmROdW1iZXIiOiJTVC9JMDAwNjY2LzEifSx7ImF3YXJkVGl0bGUiOiJBc3Ryb3BoeXNpY3MgYXQgU3QgQW5kcmV3czogMjAxMiAtIDIwMTQiLCJmdW5kZXJOYW1lIjoiU2NpZW5jZSAmIFRlY2hub2xvZ3kgRmFjaWxpdGllcyBDb3VuY2lsIiwiYXdhcmROdW1iZXIiOiJTVC9KMDAxNjUxLzEifSx7ImF3YXJkVGl0bGUiOiJBc3Ryb3BoeXNpY3MgYXQgU3QuQW5kcmV3cyIsImZ1bmRlck5hbWUiOiJQUEFSQyAtIE5vdyBTVEZDIiwiYXdhcmROdW1iZXIiOiJQUC9EMDAwODkwLzEifSx7ImF3YXJkVGl0bGUiOiJQYXR0IExpbmtlZCBUcmF2ZWwgJiBTdWJzaXN0ZW5jZSIsImZ1bmRlck5hbWUiOiJTY2llbmNlICYgVGVjaG5vbG9neSBGYWNpbGl0aWVzIENvdW5jaWwiLCJhd2FyZE51bWJlciI6IlNUL0cwMDEwMDYvMSJ9XSwieG1sIjoiUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaVZWUkdMVGdpSUhOMFlXNWtZV3h2Ym1VOUlubGxjeUkvUGp4eVpYTnZkWEpqWlNCNGMyazZjMk5vWlcxaFRHOWpZWFJwYjI0OUltaDBkSEE2THk5a1lYUmhZMmwwWlM1dmNtY3ZjMk5vWlcxaEwydGxjbTVsYkMwMElHaDBkSEE2THk5elkyaGxiV0V1WkdGMFlXTnBkR1V1YjNKbkwyMWxkR0V2YTJWeWJtVnNMVFF2YldWMFlXUmhkR0V1ZUhOa0lpQjRiV3h1Y3owaWFIUjBjRG92TDJSaGRHRmphWFJsTG05eVp5OXpZMmhsYldFdmEyVnlibVZzTFRRaUlIaHRiRzV6T25oemFUMGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFdGFXNXpkR0Z1WTJVaVBqeHBaR1Z1ZEdsbWFXVnlJR2xrWlc1MGFXWnBaWEpVZVhCbFBTSkVUMGtpUGpFd0xqRTNOak13TDJKaU5ETmxObUV6TFRjeVpUQXRORFkwWXkwNVptUmtMV1ppWlRWa00yVTFObUV3T1R3dmFXUmxiblJwWm1sbGNqNDhZM0psWVhSdmNuTStQR055WldGMGIzSStQR055WldGMGIzSk9ZVzFsUGtoaGVYZHZiMlFzSUZKaGNHaGhaV3hzWlNCRVlYZHVQQzlqY21WaGRHOXlUbUZ0WlQ0OFoybDJaVzVPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStVbUZ3YUdGbGJHeGxJRVJoZDI0OEwyZHBkbVZ1VG1GdFpUNDhabUZ0YVd4NVRtRnRaU0I0YzJrNmRIbHdaVDBpZUhNNmMzUnlhVzVuSWlCNGJXeHVjenA0Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNUzlZVFV4VFkyaGxiV0VpUGtoaGVYZHZiMlE4TDJaaGJXbHNlVTVoYldVK1BHRm1abWxzYVdGMGFXOXVJSGh6YVRwMGVYQmxQU0o0Y3pwemRISnBibWNpSUhodGJHNXpPbmh6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXhMMWhOVEZOamFHVnRZU0krVTJOb2IyOXNJRzltSUZCb2VYTnBZM01nWVc1a0lFRnpkSEp2Ym05dGVUd3ZZV1ptYVd4cFlYUnBiMjQrUEM5amNtVmhkRzl5UGp4amNtVmhkRzl5UGp4amNtVmhkRzl5VG1GdFpUNURZVzFsY205dUxDQkJibVJ5WlhjZ1EyOXNiR2xsY2p3dlkzSmxZWFJ2Y2s1aGJXVStQR2RwZG1WdVRtRnRaU0I0YzJrNmRIbHdaVDBpZUhNNmMzUnlhVzVuSWlCNGJXeHVjenA0Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNUzlZVFV4VFkyaGxiV0VpUGtGdVpISmxkeUJEYjJ4c2FXVnlQQzluYVhabGJrNWhiV1UrUEdaaGJXbHNlVTVoYldVZ2VITnBPblI1Y0dVOUluaHpPbk4wY21sdVp5SWdlRzFzYm5NNmVITTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURFdldFMU1VMk5vWlcxaElqNURZVzFsY205dVBDOW1ZVzFwYkhsT1lXMWxQanhoWm1acGJHbGhkR2x2YmlCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBsTmphRzl2YkNCdlppQlFhSGx6YVdOeklHRnVaQ0JCYzNSeWIyNXZiWGs4TDJGbVptbHNhV0YwYVc5dVBqd3ZZM0psWVhSdmNqNDhZM0psWVhSdmNqNDhZM0psWVhSdmNrNWhiV1UrVlc1eWRXZ3NJRmt1SUVNdUlEd3ZZM0psWVhSdmNrNWhiV1UrUEdkcGRtVnVUbUZ0WlNCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBsa3VJRU11SUR3dloybDJaVzVPWVcxbFBqeG1ZVzFwYkhsT1lXMWxJSGh6YVRwMGVYQmxQU0o0Y3pwemRISnBibWNpSUhodGJHNXpPbmh6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXhMMWhOVEZOamFHVnRZU0krVlc1eWRXZzhMMlpoYldsc2VVNWhiV1UrUEM5amNtVmhkRzl5UGp4amNtVmhkRzl5UGp4amNtVmhkRzl5VG1GdFpUNU1iM1pwY3l3Z1F5NGdQQzlqY21WaGRHOXlUbUZ0WlQ0OFoybDJaVzVPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStReTRnUEM5bmFYWmxiazVoYldVK1BHWmhiV2xzZVU1aGJXVWdlSE5wT25SNWNHVTlJbmh6T25OMGNtbHVaeUlnZUcxc2JuTTZlSE05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01ERXZXRTFNVTJOb1pXMWhJajVNYjNacGN6d3ZabUZ0YVd4NVRtRnRaVDQ4TDJOeVpXRjBiM0krUEdOeVpXRjBiM0krUEdOeVpXRjBiM0pPWVcxbFBreGhibnBoTENCQkxrWXVJRHd2WTNKbFlYUnZjazVoYldVK1BHZHBkbVZ1VG1GdFpTQjRjMms2ZEhsd1pUMGllSE02YzNSeWFXNW5JaUI0Yld4dWN6cDRjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRWlQa0V1Umk0Z1BDOW5hWFpsYms1aGJXVStQR1poYldsc2VVNWhiV1VnZUhOcE9uUjVjR1U5SW5oek9uTjBjbWx1WnlJZ2VHMXNibk02ZUhNOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREV2V0UxTVUyTm9aVzFoSWo1TVlXNTZZVHd2Wm1GdGFXeDVUbUZ0WlQ0OEwyTnlaV0YwYjNJK1BHTnlaV0YwYjNJK1BHTnlaV0YwYjNKT1lXMWxQa3hzWVcxaExDQktiM05sY0dnOEwyTnlaV0YwYjNKT1lXMWxQanhuYVhabGJrNWhiV1VnZUhOcE9uUjVjR1U5SW5oek9uTjBjbWx1WnlJZ2VHMXNibk02ZUhNOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREV2V0UxTVUyTm9aVzFoSWo1S2IzTmxjR2c4TDJkcGRtVnVUbUZ0WlQ0OFptRnRhV3g1VG1GdFpTQjRjMms2ZEhsd1pUMGllSE02YzNSeWFXNW5JaUI0Yld4dWN6cDRjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRWlQa3hzWVcxaFBDOW1ZVzFwYkhsT1lXMWxQanhoWm1acGJHbGhkR2x2YmlCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBsTmphRzl2YkNCdlppQlFhSGx6YVdOeklHRnVaQ0JCYzNSeWIyNXZiWGs4TDJGbVptbHNhV0YwYVc5dVBqd3ZZM0psWVhSdmNqNDhZM0psWVhSdmNqNDhZM0psWVhSdmNrNWhiV1UrUkdWc1pYVnBiQ3dnVFM0Z1BDOWpjbVZoZEc5eVRtRnRaVDQ4WjJsMlpXNU9ZVzFsSUhoemFUcDBlWEJsUFNKNGN6cHpkSEpwYm1jaUlIaHRiRzV6T25oelBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF4TDFoTlRGTmphR1Z0WVNJK1RTNGdQQzluYVhabGJrNWhiV1UrUEdaaGJXbHNlVTVoYldVZ2VITnBPblI1Y0dVOUluaHpPbk4wY21sdVp5SWdlRzFzYm5NNmVITTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURFdldFMU1VMk5vWlcxaElqNUVaV3hsZFdsc1BDOW1ZVzFwYkhsT1lXMWxQand2WTNKbFlYUnZjajQ4WTNKbFlYUnZjajQ4WTNKbFlYUnZjazVoYldVK1JtRnlaWE1zSUZKcGJUd3ZZM0psWVhSdmNrNWhiV1UrUEdkcGRtVnVUbUZ0WlNCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBsSnBiVHd2WjJsMlpXNU9ZVzFsUGp4bVlXMXBiSGxPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStSbUZ5WlhNOEwyWmhiV2xzZVU1aGJXVStQQzlqY21WaGRHOXlQanhqY21WaGRHOXlQanhqY21WaGRHOXlUbUZ0WlQ1SGFXeHNiMjRzSUUwdUlEd3ZZM0psWVhSdmNrNWhiV1UrUEdkcGRtVnVUbUZ0WlNCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBrMHVJRHd2WjJsMlpXNU9ZVzFsUGp4bVlXMXBiSGxPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStSMmxzYkc5dVBDOW1ZVzFwYkhsT1lXMWxQand2WTNKbFlYUnZjajQ4WTNKbFlYUnZjajQ4WTNKbFlYUnZjazVoYldVK1RXOTFkRzkxTENCRExpQThMMk55WldGMGIzSk9ZVzFsUGp4bmFYWmxiazVoYldVZ2VITnBPblI1Y0dVOUluaHpPbk4wY21sdVp5SWdlRzFzYm5NNmVITTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURFdldFMU1VMk5vWlcxaElqNURMaUE4TDJkcGRtVnVUbUZ0WlQ0OFptRnRhV3g1VG1GdFpTQjRjMms2ZEhsd1pUMGllSE02YzNSeWFXNW5JaUI0Yld4dWN6cDRjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRWlQazF2ZFhSdmRUd3ZabUZ0YVd4NVRtRnRaVDQ4TDJOeVpXRjBiM0krUEdOeVpXRjBiM0krUEdOeVpXRjBiM0pPWVcxbFBsQmxjR1VzSUVZdUlEd3ZZM0psWVhSdmNrNWhiV1UrUEdkcGRtVnVUbUZ0WlNCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBrWXVJRHd2WjJsMlpXNU9ZVzFsUGp4bVlXMXBiSGxPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStVR1Z3WlR3dlptRnRhV3g1VG1GdFpUNDhMMk55WldGMGIzSStQR055WldGMGIzSStQR055WldGMGIzSk9ZVzFsUGxCdmJHeGhZMk52TENCRUxpQThMMk55WldGMGIzSk9ZVzFsUGp4bmFYWmxiazVoYldVZ2VITnBPblI1Y0dVOUluaHpPbk4wY21sdVp5SWdlRzFzYm5NNmVITTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURFdldFMU1VMk5vWlcxaElqNUVMaUE4TDJkcGRtVnVUbUZ0WlQ0OFptRnRhV3g1VG1GdFpTQjRjMms2ZEhsd1pUMGllSE02YzNSeWFXNW5JaUI0Yld4dWN6cDRjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRWlQbEJ2Ykd4aFkyTnZQQzltWVcxcGJIbE9ZVzFsUGp3dlkzSmxZWFJ2Y2o0OFkzSmxZWFJ2Y2o0OFkzSmxZWFJ2Y2s1aGJXVStVWFZsYkc5NkxDQkVMaUE4TDJOeVpXRjBiM0pPWVcxbFBqeG5hWFpsYms1aGJXVWdlSE5wT25SNWNHVTlJbmh6T25OMGNtbHVaeUlnZUcxc2JuTTZlSE05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01ERXZXRTFNVTJOb1pXMWhJajVFTGlBOEwyZHBkbVZ1VG1GdFpUNDhabUZ0YVd4NVRtRnRaU0I0YzJrNmRIbHdaVDBpZUhNNmMzUnlhVzVuSWlCNGJXeHVjenA0Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNUzlZVFV4VFkyaGxiV0VpUGxGMVpXeHZland2Wm1GdGFXeDVUbUZ0WlQ0OEwyTnlaV0YwYjNJK1BHTnlaV0YwYjNJK1BHTnlaV0YwYjNKT1lXMWxQbFBEcVdkeVlXNXpZVzRzSUVRdUlEd3ZZM0psWVhSdmNrNWhiV1UrUEdkcGRtVnVUbUZ0WlNCNGMyazZkSGx3WlQwaWVITTZjM1J5YVc1bklpQjRiV3h1Y3pwNGN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TVM5WVRVeFRZMmhsYldFaVBrUXVJRHd2WjJsMlpXNU9ZVzFsUGp4bVlXMXBiSGxPWVcxbElIaHphVHAwZVhCbFBTSjRjenB6ZEhKcGJtY2lJSGh0Ykc1ek9uaHpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBeEwxaE5URk5qYUdWdFlTSStVOE9wWjNKaGJuTmhiand2Wm1GdGFXeDVUbUZ0WlQ0OEwyTnlaV0YwYjNJK1BDOWpjbVZoZEc5eWN6NDhkR2wwYkdWelBqeDBhWFJzWlNCNGJXdzZiR0Z1WnowaVpXNGlQa1JoZEdFZ2RXNWtaWEp3YVc1dWFXNW5JQzBnVkdobElGTjFiaUJoY3lCaElIQnNZVzVsZEMxb2IzTjBJSE4wWVhJNklGQnliM2hwWlhNZ1puSnZiU0JUUkU4Z2FXMWhaMlZ6SUdadmNpQklRVkpRVXlCeVlXUnBZV3d0ZG1Wc2IyTnBkSGtnZG1GeWFXRjBhVzl1Y3p3dmRHbDBiR1UrUEM5MGFYUnNaWE0rUEhCMVlteHBjMmhsY2o1VmJtbDJaWEp6YVhSNUlHOW1JRk4wSUVGdVpISmxkM004TDNCMVlteHBjMmhsY2o0OGNIVmliR2xqWVhScGIyNVpaV0Z5UGpJd01UWThMM0IxWW14cFkyRjBhVzl1V1dWaGNqNDhjbVZ6YjNWeVkyVlVlWEJsSUhKbGMyOTFjbU5sVkhsd1pVZGxibVZ5WVd3OUlrRjFaR2x2ZG1semRXRnNJajVFWVhSaGMyVjBQQzl5WlhOdmRYSmpaVlI1Y0dVK1BHTnZiblJ5YVdKMWRHOXljejQ4WTI5dWRISnBZblYwYjNJZ1kyOXVkSEpwWW5WMGIzSlVlWEJsUFNKRGIyNTBZV04wVUdWeWMyOXVJajQ4WTI5dWRISnBZblYwYjNKT1lXMWxQa2hoZVhkdmIyUXNJRkpoY0doaFpXeHNaU0JFWVhkdVBDOWpiMjUwY21saWRYUnZjazVoYldVK1BHZHBkbVZ1VG1GdFpTQjRjMms2ZEhsd1pUMGllSE02YzNSeWFXNW5JaUI0Yld4dWN6cDRjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRWlQbEpoY0doaFpXeHNaU0JFWVhkdVBDOW5hWFpsYms1aGJXVStQR1poYldsc2VVNWhiV1VnZUhOcE9uUjVjR1U5SW5oek9uTjBjbWx1WnlJZ2VHMXNibk02ZUhNOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREV2V0UxTVUyTm9aVzFoSWo1SVlYbDNiMjlrUEM5bVlXMXBiSGxPWVcxbFBqd3ZZMjl1ZEhKcFluVjBiM0krUEM5amIyNTBjbWxpZFhSdmNuTStQR1JoZEdWelBqeGtZWFJsSUdSaGRHVlVlWEJsUFNKQmRtRnBiR0ZpYkdVaVBqSXdNVFl0TURFdE1qQThMMlJoZEdVK1BDOWtZWFJsY3o0OGMybDZaWE0rUEhOcGVtVStNVXRDUEM5emFYcGxQanh6YVhwbFBqWkxRand2YzJsNlpUNDhjMmw2WlQ0eU5VdENQQzl6YVhwbFBqeHphWHBsUGpSTFFqd3ZjMmw2WlQ0OGMybDZaVDR4TVV0Q1BDOXphWHBsUGp4emFYcGxQamROUWp3dmMybDZaVDQ4TDNOcGVtVnpQanhtYjNKdFlYUnpQanhtYjNKdFlYUStZWEJ3YkdsallYUnBiMjR2YjJOMFpYUXRjM1J5WldGdFBDOW1iM0p0WVhRK1BHWnZjbTFoZEQ1aGNIQnNhV05oZEdsdmJpOTRMWEowWmp3dlptOXliV0YwUGp4bWIzSnRZWFErZEdWNGRDOXdiR0ZwYmp3dlptOXliV0YwUGp4bWIzSnRZWFErZEdWNGRDOXdiR0ZwYmp3dlptOXliV0YwUGp4bWIzSnRZWFErWVhCd2JHbGpZWFJwYjI0dmIyTjBaWFF0YzNSeVpXRnRQQzltYjNKdFlYUStQR1p2Y20xaGRENWhjSEJzYVdOaGRHbHZiaTk0TFdkNmFYQThMMlp2Y20xaGRENDhMMlp2Y20xaGRITStQSEpwWjJoMGMweHBjM1ErUEhKcFoyaDBjeUJ5YVdkb2RITlZVa2s5SW1oMGRIQTZMeTlqY21WaGRHbDJaV052YlcxdmJuTXViM0puTDJ4cFkyVnVjMlZ6TDJKNUx6UXVNQzhpUGtORElFSlpQQzl5YVdkb2RITStQSEpwWjJoMGN5QnlhV2RvZEhOVlVrazlJbWgwZEhBNkx5OWpjbVZoZEdsMlpXTnZiVzF2Ym5NdWIzSm5MMnhwWTJWdWMyVnpMMko1THpRdU1DOGlQa05ESUVKWlBDOXlhV2RvZEhNK1BISnBaMmgwY3lCeWFXZG9kSE5WVWtrOUltaDBkSEE2THk5amNtVmhkR2wyWldOdmJXMXZibk11YjNKbkwyeHBZMlZ1YzJWekwySjVMelF1TUM4aVBrTkRJRUpaUEM5eWFXZG9kSE0rUEhKcFoyaDBjeUJ5YVdkb2RITlZVa2s5SW1oMGRIQTZMeTlqY21WaGRHbDJaV052YlcxdmJuTXViM0puTDJ4cFkyVnVjMlZ6TDJKNUx6UXVNQzhpUGtORElFSlpQQzl5YVdkb2RITStQSEpwWjJoMGN5QnlhV2RvZEhOVlVrazlJbWgwZEhBNkx5OWpjbVZoZEdsMlpXTnZiVzF2Ym5NdWIzSm5MMnhwWTJWdWMyVnpMMko1THpRdU1DOGlQa05ESUVKWlBDOXlhV2RvZEhNK1BISnBaMmgwY3lCeWFXZG9kSE5WVWtrOUltaDBkSEE2THk5amNtVmhkR2wyWldOdmJXMXZibk11YjNKbkwyeHBZMlZ1YzJWekwySjVMelF1TUM4aVBrTkRJRUpaUEM5eWFXZG9kSE0rUEM5eWFXZG9kSE5NYVhOMFBqeGtaWE5qY21sd2RHbHZibk0rUEdSbGMyTnlhWEIwYVc5dUlHUmxjMk55YVhCMGFXOXVWSGx3WlQwaVFXSnpkSEpoWTNRaUlIaHRiRHBzWVc1blBTSmxiaUkrUEM5a1pYTmpjbWx3ZEdsdmJqNDhMMlJsYzJOeWFYQjBhVzl1Y3o0OFpuVnVaR2x1WjFKbFptVnlaVzVqWlhNK1BHWjFibVJwYm1kU1pXWmxjbVZ1WTJVK1BHWjFibVJsY2s1aGJXVStVMk5wWlc1alpTQW1ZVzF3T3lCVVpXTm9ibTlzYjJkNUlFWmhZMmxzYVhScFpYTWdRMjkxYm1OcGJEd3ZablZ1WkdWeVRtRnRaVDQ4WVhkaGNtUk9kVzFpWlhJK1UxUXZUVEF3TVRJNU5pOHhQQzloZDJGeVpFNTFiV0psY2o0OFlYZGhjbVJVYVhSc1pUNUJjM1J5YjI1dmJYa2dZWFFnVTNRZ1FXNWtjbVYzY3lBeU1ERTFMVEl3TVRnOEwyRjNZWEprVkdsMGJHVStQQzltZFc1a2FXNW5VbVZtWlhKbGJtTmxQanhtZFc1a2FXNW5VbVZtWlhKbGJtTmxQanhtZFc1a1pYSk9ZVzFsUGtWMWNtOXdaV0Z1SUVOdmJXMXBjM05wYjI0OEwyWjFibVJsY2s1aGJXVStQR0YzWVhKa1ZHbDBiR1UrUlZSQlJVRlNWRWc4TDJGM1lYSmtWR2wwYkdVK1BDOW1kVzVrYVc1blVtVm1aWEpsYm1ObFBqeG1kVzVrYVc1blVtVm1aWEpsYm1ObFBqeG1kVzVrWlhKT1lXMWxQbE5qYVdWdVkyVWdKbUZ0Y0RzZ1ZHVmphRzV2Ykc5bmVTQkdZV05wYkdsMGFXVnpJRU52ZFc1amFXdzhMMloxYm1SbGNrNWhiV1UrUEdGM1lYSmtUblZ0WW1WeVBsTlVMMGt3TURBMk5qWXZNVHd2WVhkaGNtUk9kVzFpWlhJK1BHRjNZWEprVkdsMGJHVStVM1FnUVc1a2NuSmxkM01nUVhOMGNtOXViMjE1SUZCQlZGUWdiR2x1YTJWa0lGUnlZWFpsYkNCaGJtUWdjM1ZpYzJsemRHVnVZMlU4TDJGM1lYSmtWR2wwYkdVK1BDOW1kVzVrYVc1blVtVm1aWEpsYm1ObFBqeG1kVzVrYVc1blVtVm1aWEpsYm1ObFBqeG1kVzVrWlhKT1lXMWxQbE5qYVdWdVkyVWdKbUZ0Y0RzZ1ZHVmphRzV2Ykc5bmVTQkdZV05wYkdsMGFXVnpJRU52ZFc1amFXdzhMMloxYm1SbGNrNWhiV1UrUEdGM1lYSmtUblZ0WW1WeVBsTlVMMG93TURFMk5URXZNVHd2WVhkaGNtUk9kVzFpWlhJK1BHRjNZWEprVkdsMGJHVStRWE4wY205d2FIbHphV056SUdGMElGTjBJRUZ1WkhKbGQzTTZJREl3TVRJZ0xTQXlNREUwUEM5aGQyRnlaRlJwZEd4bFBqd3ZablZ1WkdsdVoxSmxabVZ5Wlc1alpUNDhablZ1WkdsdVoxSmxabVZ5Wlc1alpUNDhablZ1WkdWeVRtRnRaVDVRVUVGU1F5QXRJRTV2ZHlCVFZFWkRQQzltZFc1a1pYSk9ZVzFsUGp4aGQyRnlaRTUxYldKbGNqNVFVQzlFTURBd09Ea3dMekU4TDJGM1lYSmtUblZ0WW1WeVBqeGhkMkZ5WkZScGRHeGxQa0Z6ZEhKdmNHaDVjMmxqY3lCaGRDQlRkQzVCYm1SeVpYZHpQQzloZDJGeVpGUnBkR3hsUGp3dlpuVnVaR2x1WjFKbFptVnlaVzVqWlQ0OFpuVnVaR2x1WjFKbFptVnlaVzVqWlQ0OFpuVnVaR1Z5VG1GdFpUNVRZMmxsYm1ObElDWmhiWEE3SUZSbFkyaHViMnh2WjNrZ1JtRmphV3hwZEdsbGN5QkRiM1Z1WTJsc1BDOW1kVzVrWlhKT1lXMWxQanhoZDJGeVpFNTFiV0psY2o1VFZDOUhNREF4TURBMkx6RThMMkYzWVhKa1RuVnRZbVZ5UGp4aGQyRnlaRlJwZEd4bFBsQmhkSFFnVEdsdWEyVmtJRlJ5WVhabGJDQW1ZVzF3T3lCVGRXSnphWE4wWlc1alpUd3ZZWGRoY21SVWFYUnNaVDQ4TDJaMWJtUnBibWRTWldabGNtVnVZMlUrUEM5bWRXNWthVzVuVW1WbVpYSmxibU5sY3o0OEwzSmxjMjkxY21ObFBnPT0iLCJ1cmwiOiJodHRwczovL3Jpc3dlYi5zdC1hbmRyZXdzLmFjLnVrL3BvcnRhbC9lbi9kYXRhc2V0cy9kYXRhLXVuZGVycGlubmluZy0tdGhlLXN1bi1hcy1hLXBsYW5ldGhvc3Qtc3Rhci1wcm94aWVzLWZyb20tc2RvLWltYWdlcy1mb3ItaGFycHMtcmFkaWFsdmVsb2NpdHktdmFyaWF0aW9ucyhiYjQzZTZhMy03MmUwLTQ2NGMtOWZkZC1mYmU1ZDNlNTZhMDkpLmh0bWwiLCJjb250ZW50VXJsIjpudWxsLCJtZXRhZGF0YVZlcnNpb24iOjMsInNjaGVtYVZlcnNpb24iOm51bGwsInNvdXJjZSI6bnVsbCwiaXNBY3RpdmUiOnRydWUsInN0YXRlIjoiZmluZGFibGUiLCJyZWFzb24iOm51bGwsImNyZWF0ZWQiOiIyMDE2LTAxLTIwVDExOjMxOjQ2LjAwMC0wNTowMCIsInJlZ2lzdGVyZWQiOiIyMDE2LTAxLTIwVDExOjMxOjQ2LjAwMC0wNTowMCIsInB1Ymxpc2hlZCI6IjIwMTYiLCJ1cGRhdGVkIjoiMjAxOS0wNi0yOVQwNTozMjo0MS4wMDAtMDQ6MDAifSwicmVsYXRpb25zaGlwcyI6eyJjbGllbnQiOnsiZGF0YSI6eyJpZCI6ImJsLnN0YW5kcmV3IiwidHlwZSI6ImNsaWVudHMifX0sIm1lZGlhIjp7ImRhdGEiOltdfX19LCJpbmNsdWRlZCI6W3siaWQiOiJibC5zdGFuZHJldyIsInR5cGUiOiJjbGllbnRzIiwiYXR0cmlidXRlcyI6eyJuYW1lIjoiVW5pdmVyc2l0eSBvZiBTdCBBbmRyZXdzIiwic3ltYm9sIjoiQkwuU1RBTkRSRVciLCJ5ZWFyIjoyMDE1LCJjb250YWN0TmFtZSI6IkFubmEgQ2xlbWVudHMiLCJjb250YWN0RW1haWwiOiJha2NAc3QtYW5kcmV3cy5hYy51ayIsImRlc2NyaXB0aW9uIjoiVGhlIFN0IEFuZHJld3MgcmVzZWFyY2ggcG9ydGFsIGZlYXR1cmVzIHRoZSByZXNlYXJjaCBhY3Rpdml0aWVzIHdpdGhpbiB0aGUgVW5pdmVyc2l0eSBvZiBTdCBBbmRyZXdzLiIsImRvbWFpbnMiOiJzdC1hbmRyZXdzLmFjLnVrIiwidXJsIjoiaHR0cHM6Ly9yaXN3ZWIuc3QtYW5kcmV3cy5hYy51ay9wb3J0YWwvZW4vZGF0YXNldHMvaW5kZXguaHRtbCIsImNyZWF0ZWQiOiIyMDE1LTA0LTAxVDA4OjE3OjIwLjAwMC0wNDowMCIsInVwZGF0ZWQiOiIyMDE4LTEyLTI2VDAzOjU2OjAxLjAwMC0wNTowMCIsImlzQWN0aXZlIjp0cnVlLCJoYXNQYXNzd29yZCI6dHJ1ZX0sInJlbGF0aW9uc2hpcHMiOnsicHJvdmlkZXIiOnsiZGF0YSI6eyJpZCI6ImJsIiwidHlwZSI6InByb3ZpZGVycyJ9fSwicmVwb3NpdG9yeSI6eyJkYXRhIjp7ImlkIjoiMTAuMTc2MTYvUjM4NzhRIiwidHlwZSI6InJlcG9zaXRvcmllcyJ9fSwicHJlZml4ZXMiOnsiZGF0YSI6W3siaWQiOiIxMC4xNzYzMCIsInR5cGUiOiJwcmVmaXhlcyJ9XX19fV19
|
91
|
-
http_version:
|
92
|
-
recorded_at: Wed, 03 Jul 2019 19:25:25 GMT
|
93
|
-
recorded_with: VCR 3.0.3
|
@@ -1,44 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.7; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/xml
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 200
|
17
|
-
message: OK
|
18
|
-
headers:
|
19
|
-
Link:
|
20
|
-
- !binary |-
|
21
|
-
PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY8OoIENyb3NhcyI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTUyMTItNzA1Mj47IHRpdGxlPSJKZWZmcmV5IEdyZXRoZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTkzNzctMDc5Nz47IHRpdGxlPSJEYXZpZCBLZW5uZWR5IjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODQ3OS0wMjYyPjsgdGl0bGU9Ikhlbm5pbmcgSGVybWpha29iIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtOTg1My01NjY4PjsgdGl0bGU9IlBoaWxpcHBlIFJvY2NhLVNlcnJhIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMjE4OC0yNTcwPjsgdGl0bGU9Ikd1c3Rhdm8gRHVyYW5kIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PjsgdGl0bGU9IlJvYmluIEJlcmpvbiI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTgyNDktNzM4OD47IHRpdGxlPSJTZWJhc3RpYW4gS2FyY2hlciI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MT47IHRpdGxlPSJNYXJ5YW5uIE1hcnRvbmUiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy00MDYwLTczNjA+OyB0aXRsZT0iVGltb3RoeSBDbGFyayI7IHJlbD0iYXV0aG9yIg==
|
22
|
-
Access-Control-Allow-Origin:
|
23
|
-
- "*"
|
24
|
-
Access-Control-Allow-Headers:
|
25
|
-
- X-Requested-With
|
26
|
-
Content-Length:
|
27
|
-
- '16202'
|
28
|
-
Server:
|
29
|
-
- http-kit
|
30
|
-
Date:
|
31
|
-
- Sat, 18 Apr 2020 05:14:49 GMT
|
32
|
-
X-Rate-Limit-Limit:
|
33
|
-
- '50'
|
34
|
-
X-Rate-Limit-Interval:
|
35
|
-
- 1s
|
36
|
-
Connection:
|
37
|
-
- close
|
38
|
-
body:
|
39
|
-
encoding: ASCII-8BIT
|
40
|
-
string: !binary |-
|
41
|
-
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0icG9zdGVkX2NvbnRlbnQiPjEwLjExMDEvMDk3MTk2PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwcmVmaXgtbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+MjQ2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjg3MTA4NDg0PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+MjIyMTgxNDwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJkZXBvc2l0LXRpbWVzdGFtcCIgdHlwZT0ibnVtYmVyIj4yMDE5MDcxNjEzMzgxMjg0MDAwPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMTAxPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDIwLTAxLTE4VDAyOjUzOjU3WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDE2LTEyLTI5VDA2OjEwOjE1WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjEyPC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxwb3N0ZWRfY29udGVudCB0eXBlPSJwcmVwcmludCIgbGFuZ3VhZ2U9ImVuIiBtZXRhZGF0YV9kaXN0cmlidXRpb25fb3B0cz0iYW55Ij4NCiAgICAgICAgICAgICAgPGdyb3VwX3RpdGxlPlNjaWVudGlmaWMgQ29tbXVuaWNhdGlvbiBhbmQgRWR1Y2F0aW9uPC9ncm91cF90aXRsZT4NCiAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iZmlyc3QiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+TWFydGluPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+RmVubmVyPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTE0MTktMjQwNTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5NZXJjw6g8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Dcm9zYXM8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTMwNC0xOTM5PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkplZmZyZXk8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5HcmV0aGU8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkRhdmlkPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+S2VubmVkeTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi05Mzc3LTA3OTc8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SGVubmluZzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkhlcm1qYWtvYjwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+UGhpbGlwcGU8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Sb2NjYS1TZXJyYTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+R3VzdGF2bzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkR1cmFuZDwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+Um9iaW48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5CZXJqb248L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPlNlYmFzdGlhbjwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkthcmNoZXI8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPk1hcnlhbm48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5NYXJ0b25lPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5UaW1vdGh5PC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+Q2xhcms8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtNDA2MC03MzYwPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICA8L2NvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+QSBEYXRhIENpdGF0aW9uIFJvYWRtYXAgZm9yIFNjaG9sYXJseSBEYXRhIFJlcG9zaXRvcmllczwvdGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8cG9zdGVkX2RhdGU+DQogICAgICAgICAgICAgICAgPG1vbnRoPjEyPC9tb250aD4NCiAgICAgICAgICAgICAgICA8ZGF5PjI4PC9kYXk+DQogICAgICAgICAgICAgICAgPHllYXI+MjAxNjwveWVhcj4NCiAgICAgICAgICAgICAgPC9wb3N0ZWRfZGF0ZT4NCiAgICAgICAgICAgICAgPGFjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgICA8bW9udGg+MTA8L21vbnRoPg0KICAgICAgICAgICAgICAgIDxkYXk+MDk8L2RheT4NCiAgICAgICAgICAgICAgICA8eWVhcj4yMDE3PC95ZWFyPg0KICAgICAgICAgICAgICA8L2FjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgPGluc3RpdHV0aW9uPg0KICAgICAgICAgICAgICAgIDxpbnN0aXR1dGlvbl9uYW1lPmJpb1J4aXY8L2luc3RpdHV0aW9uX25hbWU+DQogICAgICAgICAgICAgIDwvaW5zdGl0dXRpb24+DQogICAgICAgICAgICAgIDxpdGVtX251bWJlciBpdGVtX251bWJlcl90eXBlPSJwaXNhIj5iaW9yeGl2OzA5NzE5NnYyPC9pdGVtX251bWJlcj4NCiAgICAgICAgICAgICAgPGphdHM6YWJzdHJhY3QgeG1sbnM6amF0cz0iaHR0cDovL3d3dy5uY2JpLm5sbS5uaWguZ292L0pBVFMxIj4NCiAgICAgICAgICAgICAgICA8amF0czp0aXRsZT5BYnN0cmFjdDwvamF0czp0aXRsZT4NCiAgICAgICAgICAgICAgICA8amF0czpwPg0KICAgICAgICAgICAgICAgICAgVGhpcyBhcnRpY2xlIHByZXNlbnRzIGEgcHJhY3RpY2FsIHJvYWRtYXAgZm9yIHNjaG9sYXJseSBkYXRhIHJlcG9zaXRvcmllcyB0byBpbXBsZW1lbnQgZGF0YSBjaXRhdGlvbiBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYSBzeW5vcHNpcyBhbmQgaGFybW9uaXphdGlvbiBvZiB0aGUgcmVjb21tZW5kYXRpb25zIG9mIG1ham9yIHNjaWVuY2UgcG9saWN5IGJvZGllcy4gVGhlIHJvYWRtYXAgd2FzIGRldmVsb3BlZCBieSB0aGUgUmVwb3NpdG9yaWVzIEV4cGVydCBHcm91cCwgYXMgcGFydCBvZiB0aGUgRGF0YSBDaXRhdGlvbiBJbXBsZW1lbnRhdGlvbiBQaWxvdCAoRENJUCkgcHJvamVjdCwgYW4gaW5pdGlhdGl2ZSBvZiBGT1JDRTExLm9yZyBhbmQgdGhlIE5JSCBCaW9DQURESUUgKA0KICAgICAgICAgICAgICAgICAgPGphdHM6ZXh0LWxpbmsgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIGV4dC1saW5rLXR5cGU9InVyaSIgeGxpbms6aHJlZj0iaHR0cHM6Ly9iaW9jYWRkaWUub3JnIj5odHRwczovL2Jpb2NhZGRpZS5vcmc8L2phdHM6ZXh0LWxpbms+DQogICAgICAgICAgICAgICAgICApIHByb2dyYW0uIFRoZSByb2FkbWFwIG1ha2VzIDExIHNwZWNpZmljIHJlY29tbWVuZGF0aW9ucywgZ3JvdXBlZCBpbnRvIHRocmVlIHBoYXNlcyBvZiBpbXBsZW1lbnRhdGlvbjogYSkgcmVxdWlyZWQgc3RlcHMgbmVlZGVkIHRvIHN1cHBvcnQgdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYikgcmVjb21tZW5kZWQgc3RlcHMgdGhhdCBmYWNpbGl0YXRlIGFydGljbGUvZGF0YSBwdWJsaWNhdGlvbiB3b3JrZmxvd3MsIGFuZCBjKSBvcHRpb25hbCBzdGVwcyB0aGF0IGZ1cnRoZXIgaW1wcm92ZSBkYXRhIGNpdGF0aW9uIHN1cHBvcnQgcHJvdmlkZWQgYnkgZGF0YSByZXBvc2l0b3JpZXMuDQogICAgICAgICAgICAgICAgPC9qYXRzOnA+DQogICAgICAgICAgICAgIDwvamF0czphYnN0cmFjdD4NCiAgICAgICAgICAgICAgPHByb2dyYW0geG1sbnM9Imh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3JlbGF0aW9ucy54c2QiPg0KICAgICAgICAgICAgICAgIDxyZWxhdGVkX2l0ZW0+DQogICAgICAgICAgICAgICAgICA8aW50cmFfd29ya19yZWxhdGlvbiByZWxhdGlvbnNoaXAtdHlwZT0iaXNQcmVwcmludE9mIiBpZGVudGlmaWVyLXR5cGU9ImRvaSI+MTAuMTAzOC9zNDE1OTctMDE5LTAwMzEtODwvaW50cmFfd29ya19yZWxhdGlvbj4NCiAgICAgICAgICAgICAgICA8L3JlbGF0ZWRfaXRlbT4NCiAgICAgICAgICAgICAgPC9wcm9ncmFtPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC4xMTAxLzA5NzE5NjwvZG9pPg0KICAgICAgICAgICAgICAgIDx0aW1lc3RhbXA+MjAxOTA3MTYxMzM4MTI4NDAwMDwvdGltZXN0YW1wPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vYmlvcnhpdi5vcmcvbG9va3VwL2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgPGNvbGxlY3Rpb24gcHJvcGVydHk9ImNyYXdsZXItYmFzZWQiPg0KICAgICAgICAgICAgICAgICAgPGl0ZW0gY3Jhd2xlcj0iaVBhcmFkaWdtcyI+DQogICAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwczovL3N5bmRpY2F0aW9uLmhpZ2h3aXJlLm9yZy9jb250ZW50L2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgICA8L2l0ZW0+DQogICAgICAgICAgICAgICAgPC9jb2xsZWN0aW9uPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgICA8Y2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEiPg0KICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbGV0aW4gb2YgdGhlIEFtZXJpY2FuIFxsZG90czwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW4gaW50cm9kdWN0aW9uIHRvIHRoZSBqb2ludCBwcmluY2lwbGVzIGZvciBkYXRhIGNpdGF0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+QWx0bWFuLCBNLiAsICZhbXA7IENyb3NhcywgTS4gKDIwMTMpLiBUaGUgRXZvbHV0aW9uIG9mIERhdGEgQ2l0YXRpb246IEZyb20gUHJpbmNpcGxlcyB0byBJbXBsZW1lbnRhdGlvbi4gSUFTU0lTVCBRdWFydGVybHkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9zY2hvbGFyLmhhcnZhcmQuZWR1L21lcmNlY3Jvc2FzL3B1YmxpY2F0aW9ucy9ldm9sdXRpb24tZGF0YS1jaXRhdGlvbi1wcmluY2lwbGVzLWltcGxlbWVudGF0aW9uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjMiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5CaW9TY2hlbWFzLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwOi8vYmlvc2NoZW1hcy5vcmcvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjQiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjI0ODEvZHNqLk9TT00xMy0wNDM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+Q09EQVRBLUlDU1RJIFRhc2sgR3JvdXAgb24gRGF0YSBDaXRhdGlvbiBTdGFuZGFyZHMgYW5kIFByYWN0aWNlLiAoMjAxMykuIE91dCBvZiBDaXRlLCBPdXQgb2YgTWluZDogVGhlIEN1cnJlbnQgU3RhdGUgb2YgUHJhY3RpY2UsIFBvbGljeSwgYW5kIFRlY2hub2xvZ3kgZm9yIHRoZSBDaXRhdGlvbiBvZiBEYXRhLiBEYXRhIFNjaWVuY2UgSm91cm5hbCwgMTIoMCkuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNDgxL2Rzai5PU09NMTMtMDQzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjUiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBEYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBKb2ludCBEZWNsYXJhdGlvbiBvZiBEYXRhIENpdGF0aW9uIFByaW5jaXBsZXMuIEZvcmNlMTEuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNTQ5MC9hOTdmLWVneWs8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuNiI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGEgQ2l0YXRpb25zOiBBIFByaW1lci4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2ZvcmNlMTEuZ2l0aHViLmlvL2RhdGEtY2l0YXRpb24tcHJpbWVyLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi43Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RGF0YUNpdGUgTWV0YWRhdGEgV29ya2luZy4gKDIwMTYpLiBEYXRhQ2l0ZSBNZXRhZGF0YSBTY2hlbWEgZm9yIHRoZSBQdWJsaWNhdGlvbiBhbmQgQ2l0YXRpb24gb2YgUmVzZWFyY2ggRGF0YSB2NC4wLiBEYXRhQ2l0ZS4gUmV0cmlldmVkIGZyb20gaHR0cDovL3NlYXJjaC5kYXRhY2l0ZS5vcmcvd29ya3MvMTAuNTQzOC8wMDEzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhQ2l0ZSBTZWFyY2guICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vc2VhcmNoLmRhdGFjaXRlLm9yZy88L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuOSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFNZWQgfCBiaW9DQURESUUgRERJLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwczovL2RhdGFtZWQub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFzZXQgLSBzY2hlbWEub3JnLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAxMiwgMjAxNiwgZnJvbSBodHRwczovL3NjaGVtYS5vcmcvRGF0YXNldDwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkR1YmxpbiBDb3JlIE1ldGFkYXRhIEVsZW1lbnQgU2V0LCBWZXJzaW9uIDEuMS4gKDIwMTIpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2R1YmxpbmNvcmUub3JnL2RvY3VtZW50cy8yMDEyLzA2LzE0L2RjZXMvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEyIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RUxJWElSIERhdGEgZm9yIGxpZmUuICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vd3d3LmVsaXhpci1ldXJvcGUub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMyI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkhhbW1vbmQsIFQuICwgSGFubmF5LCBULiAsICZhbXA7IEx1bmQsIEIuICgyMDA0KS4gUkRGIFNpdGUgU3VtbWFyeSAxLjAgTW9kdWxlczogUFJJU00uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE0Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+UHVibGlzaGluZyBSZXF1aXJlbWVudHMgZm9yIEluZHVzdHJ5IFN0YW5kYXJkIE1ldGFkYXRhIChQUklTTSkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9wdXJsLm9yZy9yc3MvMS4wL21vZHVsZXMvcHJpc20vPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE1Ij4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zMzg5L2ZuaW5mLjIwMTYuMDAwMzQ8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+SG9ub3IsIEwuIEIuICwgSGFzZWxncm92ZSwgQy4gLCBGcmF6aWVyLCBKLiBBLiAsICZhbXA7IEtlbm5lZHksIEQuIE4uICgyMDE2KS4gRGF0YSBDaXRhdGlvbiBpbiBOZXVyb2ltYWdpbmc6IFByb3Bvc2VkIEJlc3QgUHJhY3RpY2VzIGZvciBEYXRhIElkZW50aWZpY2F0aW9uIGFuZCBBdHRyaWJ1dGlvbi4gRnJvbnRpZXJzIGluIE5ldXJvaW5mb3JtYXRpY3MsIDEwLiBodHRwczovL2RvaS5vcmcvMTAuMzM4OS9mbmluZi4yMDE2LjAwMDM0PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE2Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+S2luZywgR2FyeSAsICZhbXA7IEFsdG1hbiwgTWljYWggLiAoMjAwNykuIEEgUHJvcG9zZWQgU3RhbmRhcmQgZm9yIHRoZSBTY2hvbGFybHkgQ2l0YXRpb24gb2YgUXVhbnRpdGF0aXZlIERhdGEuIGh0dHBzOi8vZG9pLm9yZy8xMC4xMDQ1L21hcmNoMjAwNy1hbHRtYW48L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTciPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xNTI1Mi9tc2IuMjAxNTY2NTg8L2RvaT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5QcmVmaXggQ29tbW9ucy4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ByZWZpeGNvbW1vbnMvcHJlZml4ZXM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTkiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5SRkMgMzk4NiAtIFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllciAoVVJJKTogR2VuZXJpYyBTeW50YXguICgyMDA1KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHA6Ly93d3cucmZjLWJhc2Uub3JnL3JmYy0zOTg2Lmh0bWw8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjAiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMzgvc2RhdGEuMjAxNy41OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5TYW5zb25lLCBBLiAsIEdvbnphbGV6LUJlbHRyYW4sIEEuICwgJmFtcDsgUm9jY2EtU2VycmEsIFAuICgyMDE2KS4gREFUUywgdGhlIGRhdGEgdGFnIHN1aXRlIHRvIGVuYWJsZSBkaXNjb3ZlcmFiaWxpdHkgb2YgZGF0YXNldHMuIFNjaWVudGlmaWMgRGF0YSA0LCBBcnRpY2xlIG51bWJlcjogMTcwMDU5ICgyMDE3KSBodHRwczovL2RvaS5vcmcvMTAuMTAzOC9zZGF0YS4yMDE3LjU5PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjIxIj4NCiAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBlZXJKIENvbXB1dGVyIFNjaWVuY2U8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPmU4NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjg2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Tb2Z0d2FyZSBjaXRhdGlvbiBwcmluY2lwbGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yMiI+DQogICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QZWVySiBDb21wdXRlciBTY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT5lMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFjaGlldmluZyBodW1hbiBhbmQgbWFjaGluZSBhY2Nlc3NpYmlsaXR5IG9mIGNpdGVkIGRhdGEgaW4gc2Nob2xhcmx5IHB1YmxpY2F0aW9uczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjMiPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTI2L3NjaWVuY2UuYWFoNjE2ODwvZG9pPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yNCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlRyZWxvYXIsIEEuICgyMDExKS4gRGVuIEhhYWcgUGVyc2lzdGVudCBPYmplY3QgSWRlbnRpZmllciDigJMgTGlua2VkIE9wZW4gRGF0YSBNYW5pZmVzdG8uIFplbm9kby4gaHR0cHM6Ly9kb2kub3JnLzEwLjUyODEvemVub2RvLjU1NjY2PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjI1Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+VWhsaXIsIFAuIEUuIChFZC4pLiAoMjAxMikuIEZvciBBdHRyaWJ1dGlvbjogRGV2ZWxvcGluZyBEYXRhIEF0dHJpYnV0aW9uIGFuZCBDaXRhdGlvbiBQcmFjdGljZXMgYW5kIFN0YW5kYXJkczogU3VtbWFyeSBvZiBhbiBJbnRlcm5hdGlvbmFsIFdvcmtzaG9wLiBSZXRyaWV2ZWQgZnJvbSBodHRwczovL3d3dy5uYXAuZWR1L2NhdGFsb2cvMTM1NjQvZm9yLWF0dHJpYnV0aW9uLWRldmVsb3BpbmctZGF0YS1hdHRyaWJ1dGlvbi1hbmQtY2l0YXRpb24tcHJhY3RpY2VzLWFuZC1zdGFuZGFyZHM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjYiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC9kb2k+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlZhbiBkZSBTb21wZWwsIEguICwgJmFtcDsgTmVsc29uLCBNLiBMLiAoMjAxNSkuIFJlbWluaXNjaW5nIEFib3V0IDE1IFllYXJzIG9mIEludGVyb3BlcmFiaWxpdHkgRWZmb3J0cy4gRC1MaWIgTWFnYXppbmUsIDIxKDExLzEyKS4gaHR0cHM6Ly9kb2kub3JnLzEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgPC9jaXRhdGlvbl9saXN0Pg0KICAgICAgICAgICAgPC9wb3N0ZWRfY29udGVudD4NCiAgICAgICAgICA8L2Nyb3NzcmVmPg0KICAgICAgICA8L2RvaV9yZWNvcmQ+DQogICAgICA8L3F1ZXJ5Pg0KICAgIDwvYm9keT4NCiAgPC9xdWVyeV9yZXN1bHQ+DQo8L2Nyb3NzcmVmX3Jlc3VsdD4=
|
42
|
-
http_version:
|
43
|
-
recorded_at: Sat, 18 Apr 2020 05:14:49 GMT
|
44
|
-
recorded_with: VCR 3.0.3
|
data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_crossrer_organization.yml
DELETED
@@ -1,44 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.5; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/xml
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 200
|
17
|
-
message: OK
|
18
|
-
headers:
|
19
|
-
Link:
|
20
|
-
- !binary |-
|
21
|
-
PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY8OoIENyb3NhcyI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTUyMTItNzA1Mj47IHRpdGxlPSJKZWZmcmV5IEdyZXRoZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTkzNzctMDc5Nz47IHRpdGxlPSJEYXZpZCBLZW5uZWR5IjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODQ3OS0wMjYyPjsgdGl0bGU9Ikhlbm5pbmcgSGVybWpha29iIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtOTg1My01NjY4PjsgdGl0bGU9IlBoaWxpcHBlIFJvY2NhLVNlcnJhIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMjE4OC0yNTcwPjsgdGl0bGU9Ikd1c3Rhdm8gRHVyYW5kIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PjsgdGl0bGU9IlJvYmluIEJlcmpvbiI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTgyNDktNzM4OD47IHRpdGxlPSJTZWJhc3RpYW4gS2FyY2hlciI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MT47IHRpdGxlPSJNYXJ5YW5uIE1hcnRvbmUiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy00MDYwLTczNjA+OyB0aXRsZT0iVGltb3RoeSBDbGFyayI7IHJlbD0iYXV0aG9yIg==
|
22
|
-
Access-Control-Allow-Origin:
|
23
|
-
- "*"
|
24
|
-
Access-Control-Allow-Headers:
|
25
|
-
- X-Requested-With
|
26
|
-
Content-Length:
|
27
|
-
- '16202'
|
28
|
-
Server:
|
29
|
-
- http-kit
|
30
|
-
Date:
|
31
|
-
- Fri, 07 Feb 2020 22:40:43 GMT
|
32
|
-
X-Rate-Limit-Limit:
|
33
|
-
- '50'
|
34
|
-
X-Rate-Limit-Interval:
|
35
|
-
- 1s
|
36
|
-
Connection:
|
37
|
-
- close
|
38
|
-
body:
|
39
|
-
encoding: ASCII-8BIT
|
40
|
-
string: !binary |-
|
41
|
-
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0icG9zdGVkX2NvbnRlbnQiPjEwLjExMDEvMDk3MTk2PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwcmVmaXgtbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+MjQ2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjg3MTA4NDg0PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+MjIyMTgxNDwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJkZXBvc2l0LXRpbWVzdGFtcCIgdHlwZT0ibnVtYmVyIj4yMDE5MDcxNjEzMzgxMjg0MDAwPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMTAxPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDIwLTAxLTE4VDAyOjUzOjU3WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDE2LTEyLTI5VDA2OjEwOjE1WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjEyPC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxwb3N0ZWRfY29udGVudCB0eXBlPSJwcmVwcmludCIgbGFuZ3VhZ2U9ImVuIiBtZXRhZGF0YV9kaXN0cmlidXRpb25fb3B0cz0iYW55Ij4NCiAgICAgICAgICAgICAgPGdyb3VwX3RpdGxlPlNjaWVudGlmaWMgQ29tbXVuaWNhdGlvbiBhbmQgRWR1Y2F0aW9uPC9ncm91cF90aXRsZT4NCiAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iZmlyc3QiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+TWFydGluPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+RmVubmVyPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTE0MTktMjQwNTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5NZXJjw6g8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Dcm9zYXM8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTMwNC0xOTM5PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkplZmZyZXk8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5HcmV0aGU8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkRhdmlkPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+S2VubmVkeTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi05Mzc3LTA3OTc8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SGVubmluZzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkhlcm1qYWtvYjwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+UGhpbGlwcGU8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Sb2NjYS1TZXJyYTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+R3VzdGF2bzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkR1cmFuZDwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+Um9iaW48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5CZXJqb248L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPlNlYmFzdGlhbjwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkthcmNoZXI8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPk1hcnlhbm48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5NYXJ0b25lPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5UaW1vdGh5PC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+Q2xhcms8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtNDA2MC03MzYwPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICA8L2NvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+QSBEYXRhIENpdGF0aW9uIFJvYWRtYXAgZm9yIFNjaG9sYXJseSBEYXRhIFJlcG9zaXRvcmllczwvdGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8cG9zdGVkX2RhdGU+DQogICAgICAgICAgICAgICAgPG1vbnRoPjEyPC9tb250aD4NCiAgICAgICAgICAgICAgICA8ZGF5PjI4PC9kYXk+DQogICAgICAgICAgICAgICAgPHllYXI+MjAxNjwveWVhcj4NCiAgICAgICAgICAgICAgPC9wb3N0ZWRfZGF0ZT4NCiAgICAgICAgICAgICAgPGFjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgICA8bW9udGg+MTA8L21vbnRoPg0KICAgICAgICAgICAgICAgIDxkYXk+MDk8L2RheT4NCiAgICAgICAgICAgICAgICA8eWVhcj4yMDE3PC95ZWFyPg0KICAgICAgICAgICAgICA8L2FjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgPGluc3RpdHV0aW9uPg0KICAgICAgICAgICAgICAgIDxpbnN0aXR1dGlvbl9uYW1lPmJpb1J4aXY8L2luc3RpdHV0aW9uX25hbWU+DQogICAgICAgICAgICAgIDwvaW5zdGl0dXRpb24+DQogICAgICAgICAgICAgIDxpdGVtX251bWJlciBpdGVtX251bWJlcl90eXBlPSJwaXNhIj5iaW9yeGl2OzA5NzE5NnYyPC9pdGVtX251bWJlcj4NCiAgICAgICAgICAgICAgPGphdHM6YWJzdHJhY3QgeG1sbnM6amF0cz0iaHR0cDovL3d3dy5uY2JpLm5sbS5uaWguZ292L0pBVFMxIj4NCiAgICAgICAgICAgICAgICA8amF0czp0aXRsZT5BYnN0cmFjdDwvamF0czp0aXRsZT4NCiAgICAgICAgICAgICAgICA8amF0czpwPg0KICAgICAgICAgICAgICAgICAgVGhpcyBhcnRpY2xlIHByZXNlbnRzIGEgcHJhY3RpY2FsIHJvYWRtYXAgZm9yIHNjaG9sYXJseSBkYXRhIHJlcG9zaXRvcmllcyB0byBpbXBsZW1lbnQgZGF0YSBjaXRhdGlvbiBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYSBzeW5vcHNpcyBhbmQgaGFybW9uaXphdGlvbiBvZiB0aGUgcmVjb21tZW5kYXRpb25zIG9mIG1ham9yIHNjaWVuY2UgcG9saWN5IGJvZGllcy4gVGhlIHJvYWRtYXAgd2FzIGRldmVsb3BlZCBieSB0aGUgUmVwb3NpdG9yaWVzIEV4cGVydCBHcm91cCwgYXMgcGFydCBvZiB0aGUgRGF0YSBDaXRhdGlvbiBJbXBsZW1lbnRhdGlvbiBQaWxvdCAoRENJUCkgcHJvamVjdCwgYW4gaW5pdGlhdGl2ZSBvZiBGT1JDRTExLm9yZyBhbmQgdGhlIE5JSCBCaW9DQURESUUgKA0KICAgICAgICAgICAgICAgICAgPGphdHM6ZXh0LWxpbmsgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIGV4dC1saW5rLXR5cGU9InVyaSIgeGxpbms6aHJlZj0iaHR0cHM6Ly9iaW9jYWRkaWUub3JnIj5odHRwczovL2Jpb2NhZGRpZS5vcmc8L2phdHM6ZXh0LWxpbms+DQogICAgICAgICAgICAgICAgICApIHByb2dyYW0uIFRoZSByb2FkbWFwIG1ha2VzIDExIHNwZWNpZmljIHJlY29tbWVuZGF0aW9ucywgZ3JvdXBlZCBpbnRvIHRocmVlIHBoYXNlcyBvZiBpbXBsZW1lbnRhdGlvbjogYSkgcmVxdWlyZWQgc3RlcHMgbmVlZGVkIHRvIHN1cHBvcnQgdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYikgcmVjb21tZW5kZWQgc3RlcHMgdGhhdCBmYWNpbGl0YXRlIGFydGljbGUvZGF0YSBwdWJsaWNhdGlvbiB3b3JrZmxvd3MsIGFuZCBjKSBvcHRpb25hbCBzdGVwcyB0aGF0IGZ1cnRoZXIgaW1wcm92ZSBkYXRhIGNpdGF0aW9uIHN1cHBvcnQgcHJvdmlkZWQgYnkgZGF0YSByZXBvc2l0b3JpZXMuDQogICAgICAgICAgICAgICAgPC9qYXRzOnA+DQogICAgICAgICAgICAgIDwvamF0czphYnN0cmFjdD4NCiAgICAgICAgICAgICAgPHByb2dyYW0geG1sbnM9Imh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3JlbGF0aW9ucy54c2QiPg0KICAgICAgICAgICAgICAgIDxyZWxhdGVkX2l0ZW0+DQogICAgICAgICAgICAgICAgICA8aW50cmFfd29ya19yZWxhdGlvbiByZWxhdGlvbnNoaXAtdHlwZT0iaXNQcmVwcmludE9mIiBpZGVudGlmaWVyLXR5cGU9ImRvaSI+MTAuMTAzOC9zNDE1OTctMDE5LTAwMzEtODwvaW50cmFfd29ya19yZWxhdGlvbj4NCiAgICAgICAgICAgICAgICA8L3JlbGF0ZWRfaXRlbT4NCiAgICAgICAgICAgICAgPC9wcm9ncmFtPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC4xMTAxLzA5NzE5NjwvZG9pPg0KICAgICAgICAgICAgICAgIDx0aW1lc3RhbXA+MjAxOTA3MTYxMzM4MTI4NDAwMDwvdGltZXN0YW1wPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vYmlvcnhpdi5vcmcvbG9va3VwL2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgPGNvbGxlY3Rpb24gcHJvcGVydHk9ImNyYXdsZXItYmFzZWQiPg0KICAgICAgICAgICAgICAgICAgPGl0ZW0gY3Jhd2xlcj0iaVBhcmFkaWdtcyI+DQogICAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwczovL3N5bmRpY2F0aW9uLmhpZ2h3aXJlLm9yZy9jb250ZW50L2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgICA8L2l0ZW0+DQogICAgICAgICAgICAgICAgPC9jb2xsZWN0aW9uPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgICA8Y2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEiPg0KICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbGV0aW4gb2YgdGhlIEFtZXJpY2FuIFxsZG90czwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW4gaW50cm9kdWN0aW9uIHRvIHRoZSBqb2ludCBwcmluY2lwbGVzIGZvciBkYXRhIGNpdGF0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+QWx0bWFuLCBNLiAsICZhbXA7IENyb3NhcywgTS4gKDIwMTMpLiBUaGUgRXZvbHV0aW9uIG9mIERhdGEgQ2l0YXRpb246IEZyb20gUHJpbmNpcGxlcyB0byBJbXBsZW1lbnRhdGlvbi4gSUFTU0lTVCBRdWFydGVybHkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9zY2hvbGFyLmhhcnZhcmQuZWR1L21lcmNlY3Jvc2FzL3B1YmxpY2F0aW9ucy9ldm9sdXRpb24tZGF0YS1jaXRhdGlvbi1wcmluY2lwbGVzLWltcGxlbWVudGF0aW9uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjMiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5CaW9TY2hlbWFzLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwOi8vYmlvc2NoZW1hcy5vcmcvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjQiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjI0ODEvZHNqLk9TT00xMy0wNDM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+Q09EQVRBLUlDU1RJIFRhc2sgR3JvdXAgb24gRGF0YSBDaXRhdGlvbiBTdGFuZGFyZHMgYW5kIFByYWN0aWNlLiAoMjAxMykuIE91dCBvZiBDaXRlLCBPdXQgb2YgTWluZDogVGhlIEN1cnJlbnQgU3RhdGUgb2YgUHJhY3RpY2UsIFBvbGljeSwgYW5kIFRlY2hub2xvZ3kgZm9yIHRoZSBDaXRhdGlvbiBvZiBEYXRhLiBEYXRhIFNjaWVuY2UgSm91cm5hbCwgMTIoMCkuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNDgxL2Rzai5PU09NMTMtMDQzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjUiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBEYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBKb2ludCBEZWNsYXJhdGlvbiBvZiBEYXRhIENpdGF0aW9uIFByaW5jaXBsZXMuIEZvcmNlMTEuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNTQ5MC9hOTdmLWVneWs8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuNiI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGEgQ2l0YXRpb25zOiBBIFByaW1lci4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2ZvcmNlMTEuZ2l0aHViLmlvL2RhdGEtY2l0YXRpb24tcHJpbWVyLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi43Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RGF0YUNpdGUgTWV0YWRhdGEgV29ya2luZy4gKDIwMTYpLiBEYXRhQ2l0ZSBNZXRhZGF0YSBTY2hlbWEgZm9yIHRoZSBQdWJsaWNhdGlvbiBhbmQgQ2l0YXRpb24gb2YgUmVzZWFyY2ggRGF0YSB2NC4wLiBEYXRhQ2l0ZS4gUmV0cmlldmVkIGZyb20gaHR0cDovL3NlYXJjaC5kYXRhY2l0ZS5vcmcvd29ya3MvMTAuNTQzOC8wMDEzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhQ2l0ZSBTZWFyY2guICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vc2VhcmNoLmRhdGFjaXRlLm9yZy88L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuOSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFNZWQgfCBiaW9DQURESUUgRERJLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwczovL2RhdGFtZWQub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFzZXQgLSBzY2hlbWEub3JnLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAxMiwgMjAxNiwgZnJvbSBodHRwczovL3NjaGVtYS5vcmcvRGF0YXNldDwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkR1YmxpbiBDb3JlIE1ldGFkYXRhIEVsZW1lbnQgU2V0LCBWZXJzaW9uIDEuMS4gKDIwMTIpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2R1YmxpbmNvcmUub3JnL2RvY3VtZW50cy8yMDEyLzA2LzE0L2RjZXMvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEyIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RUxJWElSIERhdGEgZm9yIGxpZmUuICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vd3d3LmVsaXhpci1ldXJvcGUub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMyI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkhhbW1vbmQsIFQuICwgSGFubmF5LCBULiAsICZhbXA7IEx1bmQsIEIuICgyMDA0KS4gUkRGIFNpdGUgU3VtbWFyeSAxLjAgTW9kdWxlczogUFJJU00uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE0Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+UHVibGlzaGluZyBSZXF1aXJlbWVudHMgZm9yIEluZHVzdHJ5IFN0YW5kYXJkIE1ldGFkYXRhIChQUklTTSkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9wdXJsLm9yZy9yc3MvMS4wL21vZHVsZXMvcHJpc20vPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE1Ij4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zMzg5L2ZuaW5mLjIwMTYuMDAwMzQ8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+SG9ub3IsIEwuIEIuICwgSGFzZWxncm92ZSwgQy4gLCBGcmF6aWVyLCBKLiBBLiAsICZhbXA7IEtlbm5lZHksIEQuIE4uICgyMDE2KS4gRGF0YSBDaXRhdGlvbiBpbiBOZXVyb2ltYWdpbmc6IFByb3Bvc2VkIEJlc3QgUHJhY3RpY2VzIGZvciBEYXRhIElkZW50aWZpY2F0aW9uIGFuZCBBdHRyaWJ1dGlvbi4gRnJvbnRpZXJzIGluIE5ldXJvaW5mb3JtYXRpY3MsIDEwLiBodHRwczovL2RvaS5vcmcvMTAuMzM4OS9mbmluZi4yMDE2LjAwMDM0PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE2Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+S2luZywgR2FyeSAsICZhbXA7IEFsdG1hbiwgTWljYWggLiAoMjAwNykuIEEgUHJvcG9zZWQgU3RhbmRhcmQgZm9yIHRoZSBTY2hvbGFybHkgQ2l0YXRpb24gb2YgUXVhbnRpdGF0aXZlIERhdGEuIGh0dHBzOi8vZG9pLm9yZy8xMC4xMDQ1L21hcmNoMjAwNy1hbHRtYW48L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTciPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xNTI1Mi9tc2IuMjAxNTY2NTg8L2RvaT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5QcmVmaXggQ29tbW9ucy4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ByZWZpeGNvbW1vbnMvcHJlZml4ZXM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTkiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5SRkMgMzk4NiAtIFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllciAoVVJJKTogR2VuZXJpYyBTeW50YXguICgyMDA1KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHA6Ly93d3cucmZjLWJhc2Uub3JnL3JmYy0zOTg2Lmh0bWw8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjAiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMzgvc2RhdGEuMjAxNy41OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5TYW5zb25lLCBBLiAsIEdvbnphbGV6LUJlbHRyYW4sIEEuICwgJmFtcDsgUm9jY2EtU2VycmEsIFAuICgyMDE2KS4gREFUUywgdGhlIGRhdGEgdGFnIHN1aXRlIHRvIGVuYWJsZSBkaXNjb3ZlcmFiaWxpdHkgb2YgZGF0YXNldHMuIFNjaWVudGlmaWMgRGF0YSA0LCBBcnRpY2xlIG51bWJlcjogMTcwMDU5ICgyMDE3KSBodHRwczovL2RvaS5vcmcvMTAuMTAzOC9zZGF0YS4yMDE3LjU5PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjIxIj4NCiAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBlZXJKIENvbXB1dGVyIFNjaWVuY2U8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPmU4NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjg2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Tb2Z0d2FyZSBjaXRhdGlvbiBwcmluY2lwbGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yMiI+DQogICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QZWVySiBDb21wdXRlciBTY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT5lMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFjaGlldmluZyBodW1hbiBhbmQgbWFjaGluZSBhY2Nlc3NpYmlsaXR5IG9mIGNpdGVkIGRhdGEgaW4gc2Nob2xhcmx5IHB1YmxpY2F0aW9uczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjMiPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTI2L3NjaWVuY2UuYWFoNjE2ODwvZG9pPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yNCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlRyZWxvYXIsIEEuICgyMDExKS4gRGVuIEhhYWcgUGVyc2lzdGVudCBPYmplY3QgSWRlbnRpZmllciDigJMgTGlua2VkIE9wZW4gRGF0YSBNYW5pZmVzdG8uIFplbm9kby4gaHR0cHM6Ly9kb2kub3JnLzEwLjUyODEvemVub2RvLjU1NjY2PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjI1Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+VWhsaXIsIFAuIEUuIChFZC4pLiAoMjAxMikuIEZvciBBdHRyaWJ1dGlvbjogRGV2ZWxvcGluZyBEYXRhIEF0dHJpYnV0aW9uIGFuZCBDaXRhdGlvbiBQcmFjdGljZXMgYW5kIFN0YW5kYXJkczogU3VtbWFyeSBvZiBhbiBJbnRlcm5hdGlvbmFsIFdvcmtzaG9wLiBSZXRyaWV2ZWQgZnJvbSBodHRwczovL3d3dy5uYXAuZWR1L2NhdGFsb2cvMTM1NjQvZm9yLWF0dHJpYnV0aW9uLWRldmVsb3BpbmctZGF0YS1hdHRyaWJ1dGlvbi1hbmQtY2l0YXRpb24tcHJhY3RpY2VzLWFuZC1zdGFuZGFyZHM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjYiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC9kb2k+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlZhbiBkZSBTb21wZWwsIEguICwgJmFtcDsgTmVsc29uLCBNLiBMLiAoMjAxNSkuIFJlbWluaXNjaW5nIEFib3V0IDE1IFllYXJzIG9mIEludGVyb3BlcmFiaWxpdHkgRWZmb3J0cy4gRC1MaWIgTWFnYXppbmUsIDIxKDExLzEyKS4gaHR0cHM6Ly9kb2kub3JnLzEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgPC9jaXRhdGlvbl9saXN0Pg0KICAgICAgICAgICAgPC9wb3N0ZWRfY29udGVudD4NCiAgICAgICAgICA8L2Nyb3NzcmVmPg0KICAgICAgICA8L2RvaV9yZWNvcmQ+DQogICAgICA8L3F1ZXJ5Pg0KICAgIDwvYm9keT4NCiAgPC9xdWVyeV9yZXN1bHQ+DQo8L2Nyb3NzcmVmX3Jlc3VsdD4=
|
42
|
-
http_version:
|
43
|
-
recorded_at: Fri, 07 Feb 2020 22:40:44 GMT
|
44
|
-
recorded_with: VCR 3.0.3
|
@@ -1,158 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: https://identifiers.org/doi/10.7910/DVN/NJ7XSO
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
User-Agent:
|
11
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
12
|
-
Accept:
|
13
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
|
-
response:
|
15
|
-
status:
|
16
|
-
code: 302
|
17
|
-
message: ''
|
18
|
-
headers:
|
19
|
-
Location:
|
20
|
-
- https://doi.org/10.7910/DVN/NJ7XSO
|
21
|
-
Content-Type:
|
22
|
-
- text/html;charset=UTF-8
|
23
|
-
Content-Length:
|
24
|
-
- '0'
|
25
|
-
Date:
|
26
|
-
- Thu, 18 Jul 2019 06:21:57 GMT
|
27
|
-
Via:
|
28
|
-
- 1.1 google
|
29
|
-
Alt-Svc:
|
30
|
-
- clear
|
31
|
-
body:
|
32
|
-
encoding: ASCII-8BIT
|
33
|
-
string: ''
|
34
|
-
http_version:
|
35
|
-
recorded_at: Thu, 18 Jul 2019 06:21:58 GMT
|
36
|
-
- request:
|
37
|
-
method: get
|
38
|
-
uri: https://doi.org/10.7910/DVN/NJ7XSO
|
39
|
-
body:
|
40
|
-
encoding: US-ASCII
|
41
|
-
string: ''
|
42
|
-
headers:
|
43
|
-
User-Agent:
|
44
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
45
|
-
Accept:
|
46
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
47
|
-
response:
|
48
|
-
status:
|
49
|
-
code: 302
|
50
|
-
message: ''
|
51
|
-
headers:
|
52
|
-
Date:
|
53
|
-
- Thu, 18 Jul 2019 06:21:59 GMT
|
54
|
-
Content-Type:
|
55
|
-
- text/html;charset=utf-8
|
56
|
-
Content-Length:
|
57
|
-
- '233'
|
58
|
-
Connection:
|
59
|
-
- keep-alive
|
60
|
-
Set-Cookie:
|
61
|
-
- __cfduid=d805c46e685bdf63500cd38f6f809e7531563430919; expires=Fri, 17-Jul-20
|
62
|
-
06:21:59 GMT; path=/; domain=.doi.org; HttpOnly
|
63
|
-
Vary:
|
64
|
-
- Accept
|
65
|
-
Location:
|
66
|
-
- https://dataverse.harvard.edu/citation?persistentId=doi:10.7910/DVN/NJ7XSO
|
67
|
-
Expires:
|
68
|
-
- Thu, 18 Jul 2019 06:36:11 GMT
|
69
|
-
Strict-Transport-Security:
|
70
|
-
- max-age=3600; includeSubDomains
|
71
|
-
Expect-Ct:
|
72
|
-
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
73
|
-
Server:
|
74
|
-
- cloudflare
|
75
|
-
Cf-Ray:
|
76
|
-
- 4f825bccf93e9ab6-FRA
|
77
|
-
body:
|
78
|
-
encoding: ASCII-8BIT
|
79
|
-
string: |-
|
80
|
-
<html><head><title>Handle Redirect</title></head>
|
81
|
-
<body><a href="https://dataverse.harvard.edu/citation?persistentId=doi:10.7910/DVN/NJ7XSO">https://dataverse.harvard.edu/citation?persistentId=doi:10.7910/DVN/NJ7XSO</a></body></html>
|
82
|
-
http_version:
|
83
|
-
recorded_at: Thu, 18 Jul 2019 06:21:59 GMT
|
84
|
-
- request:
|
85
|
-
method: get
|
86
|
-
uri: https://dataverse.harvard.edu/citation?persistentId=doi:10.7910/DVN/NJ7XSO
|
87
|
-
body:
|
88
|
-
encoding: US-ASCII
|
89
|
-
string: ''
|
90
|
-
headers:
|
91
|
-
User-Agent:
|
92
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
93
|
-
Accept:
|
94
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
95
|
-
response:
|
96
|
-
status:
|
97
|
-
code: 302
|
98
|
-
message: Found
|
99
|
-
headers:
|
100
|
-
Cache-Control:
|
101
|
-
- no-cache="set-cookie"
|
102
|
-
Content-Language:
|
103
|
-
- en-US
|
104
|
-
Content-Type:
|
105
|
-
- text/html;charset=ISO-8859-1
|
106
|
-
Date:
|
107
|
-
- Thu, 18 Jul 2019 06:21:59 GMT
|
108
|
-
Location:
|
109
|
-
- https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/NJ7XSO
|
110
|
-
Server:
|
111
|
-
- Apache
|
112
|
-
Set-Cookie:
|
113
|
-
- AWSELB=EB1179591E49E298C6825A3028F74991071DEE12D3BAFE6DCC623DFD9C0ECBC077EB23E90FDBD3EC37C4E69D8B958E3FBF8CF81403222DF6AABE0F6509EF79AB1D548B7265;PATH=/;MAX-AGE=28800
|
114
|
-
Content-Length:
|
115
|
-
- '229'
|
116
|
-
Connection:
|
117
|
-
- keep-alive
|
118
|
-
body:
|
119
|
-
encoding: ASCII-8BIT
|
120
|
-
string: "<html>\r\n<head><title>Document moved</title></head>\r\n<body><h1>Document
|
121
|
-
moved</h1>\r\nThis document has moved <a href=\"https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/NJ7XSO\">here</a>.<p>\r\n</body>\r\n</html>\r\n"
|
122
|
-
http_version:
|
123
|
-
recorded_at: Thu, 18 Jul 2019 06:21:59 GMT
|
124
|
-
- request:
|
125
|
-
method: get
|
126
|
-
uri: https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/NJ7XSO
|
127
|
-
body:
|
128
|
-
encoding: US-ASCII
|
129
|
-
string: ''
|
130
|
-
headers:
|
131
|
-
User-Agent:
|
132
|
-
- Mozilla/5.0 (compatible; Maremma/4.2.6; mailto:info@datacite.org)
|
133
|
-
Accept:
|
134
|
-
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
135
|
-
response:
|
136
|
-
status:
|
137
|
-
code: 200
|
138
|
-
message: OK
|
139
|
-
headers:
|
140
|
-
Cache-Control:
|
141
|
-
- no-cache="set-cookie"
|
142
|
-
Content-Type:
|
143
|
-
- text/html;charset=UTF-8
|
144
|
-
Date:
|
145
|
-
- Thu, 18 Jul 2019 06:22:00 GMT
|
146
|
-
Server:
|
147
|
-
- Apache
|
148
|
-
Set-Cookie:
|
149
|
-
- JSESSIONID=3bea0295b23c896a6f6085b77625; Path=/; Secure; HttpOnly, AWSELB=EB1179591E49E298C6825A3028F74991071DEE12D3003932193CF2C36310550FD24D4C34ECDBD3EC37C4E69D8B958E3FBF8CF814030B5CB9749AB70FE33A8BB5BB36A149CB;PATH=/;MAX-AGE=28800
|
150
|
-
Connection:
|
151
|
-
- keep-alive
|
152
|
-
body:
|
153
|
-
encoding: ASCII-8BIT
|
154
|
-
string: !binary |-
|
155
|
-
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnID8+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgbGFuZz0iZW4iIHhtbDpsYW5nPSJlbiI+PGhlYWQgaWQ9ImpfaWR0MTgiPjwhLS0gR2xvYmFsIFNpdGUgVGFnIChndGFnLmpzKSAtIEdvb2dsZSBBbmFseXRpY3MgLS0+CjxzY3JpcHQgYXN5bmM9ImFzeW5jIiBzcmM9Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0YWcvanM/aWQ9VUEtNjE3NTMzMzQtMSI+PC9zY3JpcHQ+CjxzY3JpcHQ+CiAgd2luZG93LmRhdGFMYXllciA9IHdpbmRvdy5kYXRhTGF5ZXIgfHwgW107CiAgZnVuY3Rpb24gZ3RhZygpe2RhdGFMYXllci5wdXNoKGFyZ3VtZW50cyk7fQogIGd0YWcoJ2pzJywgbmV3IERhdGUoKSk7CgogIGd0YWcoJ2NvbmZpZycsICdVQS02MTc1MzMzNC0xJyk7Cjwvc2NyaXB0PgoKICAgICAgICAgICAgPHRpdGxlPlN1bW1hcnkgZGF0YSBhbmt5bG9zaW5nIHNwb25keWxpdGlzIEdXQVMgLSBIYXJ2YXJkIERhdGF2ZXJzZTwvdGl0bGU+CgkgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CgkgICAgPG1ldGEgbmFtZT0iREMuaWRlbnRpZmllciIgY29udGVudD0iZG9pOjEwLjc5MTAvRFZOL05KN1hTTyIgLz4KCSAgICA8bWV0YSBuYW1lPSJEQy50eXBlIiBjb250ZW50PSJEYXRhc2V0IiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnRpdGxlIiBjb250ZW50PSJTdW1tYXJ5IGRhdGEgYW5reWxvc2luZyBzcG9uZHlsaXRpcyBHV0FTIiAvPgogICAgICAgICAgICA8bWV0YSBuYW1lPSJEQy5kYXRlIiBjb250ZW50PSIyMDE3LTA5LTMwIiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnB1Ymxpc2hlciIgY29udGVudD0iSGFydmFyZCBEYXRhdmVyc2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmRlc2NyaXB0aW9uIiBjb250ZW50PSJTdW1tYXJ5IG9mIGFzc29jaWF0aW9uIHRlc3RzIGZvciBOYXR1cmUgR2VuZXRpY3MgcHVibGljYXRpb24gJnF1b3Q7SWRlbnRpZmljYXRpb24gb2YgbXVsdGlwbGUgcmlzayB2YXJpYW50cyBmb3IgYW5reWxvc2luZyBzcG9uZHlsaXRpcyB0aHJvdWdoIGhpZ2gtZGVuc2l0eSBnZW5vdHlwaW5nIG9mIGltbXVuZS1yZWxhdGVkIGxvY2kmcXVvdDsuIiAvPgogICAgICAgICAgICA8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJJbnRlcm5hdGlvbmFsIEdlbmV0aWNzIG9mIEFua3lsb3NpbmcgU3BvbmR5bGl0aXMgQ29uc29ydGl1bSAoSUdBUykiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLnN1YmplY3QiIGNvbnRlbnQ9Ik1lZGljaW5lLCBIZWFsdGggYW5kIExpZmUgU2NpZW5jZXMiIC8+CiAgICAgICAgICAgICAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IlN1bW1hcnkgZGF0YSBhbmt5bG9zaW5nIHNwb25keWxpdGlzIEdXQVMiIC8+CiAgICAgICAgICAgICAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0iYXJ0aWNsZSIgLz4KICAgICAgICAgICAgICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2RhdGFzZXQueGh0bWw/cGVyc2lzdGVudElkPWRvaToxMC43OTEwL0RWTi9OSjdYU08iIC8+CiAgICAgICAgICAgICAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2phdmF4LmZhY2VzLnJlc291cmNlL2ltYWdlcy9kYXRhdmVyc2UtaWNvbi0xMjAwLnBuZy54aHRtbCIgLz4KICAgICAgICAgICAgICAgIDxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkhhcnZhcmQgRGF0YXZlcnNlIiAvPgogICAgICAgICAgICAgICAgPG1ldGEgcHJvcGVydHk9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJTdW1tYXJ5IG9mIGFzc29jaWF0aW9uIHRlc3RzIGZvciBOYXR1cmUgR2VuZXRpY3MgcHVibGljYXRpb24gJnF1b3Q7SWRlbnRpZmljYXRpb24gb2YgbXVsdGlwbGUgcmlzayB2YXJpYW50cyBmb3IgYW5reWxvc2luZyBzcG9uZHlsaXRpcyB0aHJvdWdoIGhpZ2gtZGVucy4uLiIgLz4KICAgICAgICAgICAgICAgICAgICA8bWV0YSBwcm9wZXJ0eT0iYXJ0aWNsZTphdXRob3IiIGNvbnRlbnQ9IkludGVybmF0aW9uYWwgR2VuZXRpY3Mgb2YgQW5reWxvc2luZyBTcG9uZHlsaXRpcyBDb25zb3J0aXVtIChJR0FTKSIgLz4KICAgICAgICAgICAgICAgIDxtZXRhIHByb3BlcnR5PSJhcnRpY2xlOnB1Ymxpc2hlZF90aW1lIiBjb250ZW50PSIyMDE3LTA5LTMwIiAvPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj57IkBjb250ZXh0IjoiaHR0cDovL3NjaGVtYS5vcmciLCJAdHlwZSI6IkRhdGFzZXQiLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNzkxMC9EVk4vTko3WFNPIiwiaWRlbnRpZmllciI6Imh0dHBzOi8vZG9pLm9yZy8xMC43OTEwL0RWTi9OSjdYU08iLCJuYW1lIjoiU3VtbWFyeSBkYXRhIGFua3lsb3Npbmcgc3BvbmR5bGl0aXMgR1dBUyIsImNyZWF0b3IiOlt7Im5hbWUiOiJJbnRlcm5hdGlvbmFsIEdlbmV0aWNzIG9mIEFua3lsb3NpbmcgU3BvbmR5bGl0aXMgQ29uc29ydGl1bSAoSUdBUykifV0sImF1dGhvciI6W3sibmFtZSI6IkludGVybmF0aW9uYWwgR2VuZXRpY3Mgb2YgQW5reWxvc2luZyBTcG9uZHlsaXRpcyBDb25zb3J0aXVtIChJR0FTKSJ9XSwiZGF0ZVB1Ymxpc2hlZCI6IjIwMTctMDktMzAiLCJkYXRlTW9kaWZpZWQiOiIyMDE3LTA5LTMwIiwidmVyc2lvbiI6IjEiLCJkZXNjcmlwdGlvbiI6WyJTdW1tYXJ5IG9mIGFzc29jaWF0aW9uIHRlc3RzIGZvciBOYXR1cmUgR2VuZXRpY3MgcHVibGljYXRpb24gXCJJZGVudGlmaWNhdGlvbiBvZiBtdWx0aXBsZSByaXNrIHZhcmlhbnRzIGZvciBhbmt5bG9zaW5nIHNwb25keWxpdGlzIHRocm91Z2ggaGlnaC1kZW5zaXR5IGdlbm90eXBpbmcgb2YgaW1tdW5lLXJlbGF0ZWQgbG9jaVwiLiJdLCJrZXl3b3JkcyI6WyJNZWRpY2luZSwgSGVhbHRoIGFuZCBMaWZlIFNjaWVuY2VzIiwiIEdlbm9tZS1XaWRlIEFzc29jaWF0aW9uIFN0dWRpZXMiLCJBbmt5bG9zaW5nIHNwb25keWxpdGlzIl0sImNpdGF0aW9uIjpbeyJAdHlwZSI6IkNyZWF0aXZlV29yayIsInRleHQiOiIxMC4xMDM4L25nLjI2NjcifV0sImxpY2Vuc2UiOnsiQHR5cGUiOiJEYXRhc2V0IiwidGV4dCI6IkNDMCIsInVybCI6Imh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9wdWJsaWNkb21haW4vemVyby8xLjAvIn0sImluY2x1ZGVkSW5EYXRhQ2F0YWxvZyI6eyJAdHlwZSI6IkRhdGFDYXRhbG9nIiwibmFtZSI6IkhhcnZhcmQgRGF0YXZlcnNlIiwidXJsIjoiaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUifSwicHVibGlzaGVyIjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwibmFtZSI6IkhhcnZhcmQgRGF0YXZlcnNlIn0sInByb3ZpZGVyIjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwibmFtZSI6IkhhcnZhcmQgRGF0YXZlcnNlIn0sImRpc3RyaWJ1dGlvbiI6W3siQHR5cGUiOiJEYXRhRG93bmxvYWQiLCJuYW1lIjoiQXNpYW5fQ2FzZV9Db250cm9sX1Jlc3VsdHMudHh0IiwiZmlsZUZvcm1hdCI6InRleHQvcGxhaW4iLCJjb250ZW50U2l6ZSI6MTE1NzI0MTIsImRlc2NyaXB0aW9uIjoiU3VtbWFyeSBkYXRhIGZvciBBc2lhbiBjb2hvcnQiLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNzkxMC9EVk4vTko3WFNPL0szTlJNTyIsImlkZW50aWZpZXIiOiJodHRwczovL2RvaS5vcmcvMTAuNzkxMC9EVk4vTko3WFNPL0szTlJNTyIsImNvbnRlbnRVcmwiOiJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvYWNjZXNzL2RhdGFmaWxlLzMwNTU0MjQifSx7IkB0eXBlIjoiRGF0YURvd25sb2FkIiwibmFtZSI6IkV1cm9wZWFuX0FzaWFuX0Nhc2VfQ29udHJvbF9SZXN1bHRzLnR4dCIsImZpbGVGb3JtYXQiOiJ0ZXh0L3BsYWluIiwiY29udGVudFNpemUiOjExMjQ1NDk2LCJkZXNjcmlwdGlvbiI6IlN1bW1hcnkgZGF0YSBmb3IgY29tYmluZWQgY29ob3J0IiwiQGlkIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjc5MTAvRFZOL05KN1hTTy9IQTJTVlIiLCJpZGVudGlmaWVyIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjc5MTAvRFZOL05KN1hTTy9IQTJTVlIiLCJjb250ZW50VXJsIjoiaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2FjY2Vzcy9kYXRhZmlsZS8zMDU1NDI1In0seyJAdHlwZSI6IkRhdGFEb3dubG9hZCIsIm5hbWUiOiJFdXJvcGVhbl9DYXNlX0NvbnRyb2xfUmVzdWx0cy50eHQiLCJmaWxlRm9ybWF0IjoidGV4dC9wbGFpbiIsImNvbnRlbnRTaXplIjoxMzMzNzE4MywiZGVzY3JpcHRpb24iOiJTdW1tYXJ5IGRhdGEgZm9yIEV1cm9wZWFuIGNvaG9ydCIsIkBpZCI6Imh0dHBzOi8vZG9pLm9yZy8xMC43OTEwL0RWTi9OSjdYU08vSU40NUdaIiwiaWRlbnRpZmllciI6Imh0dHBzOi8vZG9pLm9yZy8xMC43OTEwL0RWTi9OSjdYU08vSU40NUdaIiwiY29udGVudFVybCI6Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9hY2Nlc3MvZGF0YWZpbGUvMzA1NTQyNiJ9XX0KCiAgICAgICAgICAgICAgICA8L3NjcmlwdD4KICAgICAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS90aGVtZS5jc3MueGh0bWw/bG49cHJpbWVmYWNlcy1ib290c3RyYXAiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pxdWVyeS9qcXVlcnkuanMueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9Ni4yIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanF1ZXJ5L2pxdWVyeS1wbHVnaW5zLmpzLnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9sbj1wcmltZWZhY2VzJmFtcDt2PTYuMiI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2NvcmUuanMueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9Ni4yIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY29tcG9uZW50cy5qcy54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/bG49cHJpbWVmYWNlcyZhbXA7dj02LjIiPjwvc2NyaXB0PjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jb21wb25lbnRzLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/bG49cHJpbWVmYWNlcyZhbXA7dj02LjIiIC8+PGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL3dhdGVybWFyay93YXRlcm1hcmsuY3NzLnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9sbj1wcmltZWZhY2VzJmFtcDt2PTYuMiIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2Uvd2F0ZXJtYXJrL3dhdGVybWFyay5qcy54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/bG49cHJpbWVmYWNlcyZhbXA7dj02LjIiPjwvc2NyaXB0PjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9maWxldXBsb2FkL2ZpbGV1cGxvYWQuY3NzLnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9sbj1wcmltZWZhY2VzJmFtcDt2PTYuMiIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvZmlsZXVwbG9hZC9maWxldXBsb2FkLmpzLnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9sbj1wcmltZWZhY2VzJmFtcDt2PTYuMiI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmlmKHdpbmRvdy5QcmltZUZhY2VzKXtQcmltZUZhY2VzLnNldHRpbmdzLmxvY2FsZT0nZW4nO308L3NjcmlwdD4KICAgICAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxODB4MTgwIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdi9hcHBsZS10b3VjaC1pY29uLnBuZy54aHRtbCIgLz4KICAgICAgICA8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3BuZyIgc2l6ZXM9IjMyeDMyIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdi9mYXZpY29uLTMyeDMyLnBuZy54aHRtbCIgLz4KICAgICAgICA8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3BuZyIgc2l6ZXM9IjE2eDE2IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdi9mYXZpY29uLTE2eDE2LnBuZy54aHRtbCIgLz4KICAgICAgICA8bGluayByZWw9Im1hbmlmZXN0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdi9zaXRlLndlYm1hbmlmZXN0LnhodG1sIiAvPgogICAgICAgIDxsaW5rIHJlbD0ibWFzay1pY29uIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdi9zYWZhcmktcGlubmVkLXRhYi5zdmcueGh0bWwiIGNvbG9yPSIjZGE1MzJjIiAvPgogICAgICAgIDxtZXRhIG5hbWU9Im1zYXBwbGljYXRpb24tVGlsZUNvbG9yIiBjb250ZW50PSIjZGE1MzJjIiAvPgogICAgICAgIDxtZXRhIG5hbWU9InRoZW1lLWNvbG9yIiBjb250ZW50PSIjZmZmZmZmIiAvPgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpbWFnZV9zcmMiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9pbWFnZXMvZGF0YXZlcnNlcHJvamVjdC5wbmcueGh0bWwiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2Nzcy9ib290c3RyYXAubWluLmNzcy54aHRtbD92ZXJzaW9uPTQuMTUuMSIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvYnMvY3NzL2Jvb3RzdHJhcC10aGVtZS5taW4uY3NzLnhodG1sP3ZlcnNpb249NC4xNS4xIiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jc3MvaWUtY29tcGF0LmNzcy54aHRtbD92ZXJzaW9uPTQuMTUuMSIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL293bC5jYXJvdXNlbC5jc3MueGh0bWw/dmVyc2lvbj00LjE1LjEiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2Nzcy9mb250Y3VzdG9tLmNzcy54aHRtbD92ZXJzaW9uPTQuMTUuMSIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL3NvY2ljb24uY3NzLnhodG1sP3ZlcnNpb249NC4xNS4xIiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jc3Mvc3RydWN0dXJlLmNzcy54aHRtbD92ZXJzaW9uPTQuMTUuMSIgLz4KICAgICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgICAgIC8vIEJyZWFrIG91dCBvZiBpZnJhbWUKICAgICAgICAgICAgICAgIGlmICh3aW5kb3cgIT09IHRvcCkgdG9wLmxvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uOwogICAgICAgICAgICA8L3NjcmlwdD4KICAgICAgICAgICAgPHN0eWxlPgogICAgICAgICAgICAgICAgLyogQ3VzdG9tIENTUyAqLwogICAgICAgICAgICAgICAgI25hdmJhckZpeGVkIGRpdi5uYXZiYXItaGVhZGVyIGltZy5uYXZiYXItYnJhbmQuY3VzdG9tLWxvZ28ge2hlaWdodDo1MHB4ICFpbXBvcnRhbnQ7fQojZGF0YXZlcnNlRGVzYyBzcGFuID4gc3BhbiA+IHNwYW4gPiBoMyB7Zm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O30KCm5hdi5uYXZiYXIubmF2YmFyLWRlZmF1bHQge2JhY2tncm91bmQ6ICNlY2VjZWMgIWltcG9ydGFudDt9Ci8qICNmb290ZXIge2JhY2tncm91bmQ6ICNlY2VjZWMgIWltcG9ydGFudDsgcGFkZGluZy10b3A6MS4yNWVtO30gKi8KCiAgICAgICAgICAgIDwvc3R5bGU+PC9oZWFkPjxib2R5PgoJPGEgaHJlZj0iI2NvbnRlbnQiIGNsYXNzPSJzci1vbmx5Ij5Ta2lwIHRvIG1haW4gY29udGVudDwvYT4KICAgIAogICAgPGRpdiBpZD0iZGF0YXZlcnNlLWhlYWRlci1ibG9jayI+PG5hdiByb2xlPSJuYXZpZ2F0aW9uIiBpZD0ibmF2YmFyRml4ZWQiIGNsYXNzPSJuYXZiYXIgbmF2YmFyLWRlZmF1bHQgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaGVhZGVyIj4KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im5hdmJhci10b2dnbGUiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiN0b3BOYXZCYXIiIGFyaWEtcHJlc3NlZD0iZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3Itb25seSI+VG9nZ2xlIG5hdmlnYXRpb248L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvIj48aW1nIHNyYz0iL2xvZ29zL25hdmJhci9sb2dvLnBuZztqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjUiIGNsYXNzPSJuYXZiYXItYnJhbmQgY3VzdG9tLWxvZ28iIC8+CiAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2UiIGlkPSJ0b3BOYXZCYXIiPgogICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IG5hdmJhci1uYXYgbmF2YmFyLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPlNlYXJjaCA8YiBjbGFzcz0iY2FyZXQiPjwvYj48L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiIHN0eWxlPSJwYWRkaW5nOjEycHg7bWluLXdpZHRoOjM1MHB4OyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9ImZvcm0taW5saW5lIiByb2xlPSJzZWFyY2giPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9InNyLW9ubHkiIGZvcj0ibmF2YmFyc2VhcmNoIj5TZWFyY2g8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9Im5hdmJhcnNlYXJjaCIgdHlwZT0idGV4dCIgY2xhc3M9ImZvcm0tY29udHJvbCIgc2l6ZT0iMjgiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJTZWFyY2ggYWxsIGRhdGF2ZXJzZXMuLi4iIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYnRuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0id2luZG93LmxvY2F0aW9uID0gJy9kYXRhdmVyc2UvaGFydmFyZD9xPScgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2YmFyc2VhcmNoJykudmFsdWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIj48L3NwYW4+IEZpbmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+QWJvdXQ8L2E+PC9saT4KCiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vZ3VpZGVzLmRhdGF2ZXJzZS5vcmcvZW4vNC4xNS4xL3VzZXIiIHRhcmdldD0iX2JsYW5rIj5Vc2VyIEd1aWRlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgo8Zm9ybSBpZD0ial9pZHQ2NCIgbmFtZT0ial9pZHQ2NCIgbWV0aG9kPSJwb3N0IiBhY3Rpb249Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9wZXJzaXN0ZW50SWQ9ZG9pOjEwLjc5MTAvRFZOL05KN1hTTyIgY2xhc3M9Im5hdmJhci1mb3JtIG5hdmJhci1sZWZ0IG5hdmJhci1mb3JtLWxpbmsiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJqX2lkdDY0IiB2YWx1ZT0ial9pZHQ2NCIgLz4KPGEgaWQ9ImpfaWR0NjQ6al9pZHQ2NSIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtqX2lkdDY0OmpfaWR0NjUmcXVvdDssdTomcXVvdDtjb250YWN0RGlhbG9nJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignY29udGFjdEZvcm0nKS5zaG93KCk7fX0pO3JldHVybiBmYWxzZTsiPlN1cHBvcnQ8L2E+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iamF2YXguZmFjZXMuVmlld1N0YXRlIiBpZD0ial9pZDE6amF2YXguZmFjZXMuVmlld1N0YXRlOjAiIHZhbHVlPSItNjI4NTg4MjA0NTE2NjMzNTUxNDo0NzgzNjg3Nzk1NjA4MDIxMjYiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPgo8L2Zvcm0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGF2ZXJzZXVzZXIueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P2VkaXRNb2RlPUNSRUFURSZhbXA7cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2lnbiBVcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2xvZ2lucGFnZS54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTG9nIEluCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvbmF2PgogICAgICAgIAogICAgICAgIDxub3NjcmlwdD4KICAgICAgICAgICAgPGRpdiBpZD0ibm9zY3JpcHQtYWxlcnQiIGNsYXNzPSJiZy1kYW5nZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWxlcnQgY29udGFpbmVyIHRleHQtZGFuZ2VyIG5vLW1hcmdpbi1ib3R0b20iPlBsZWFzZSBlbmFibGUgSmF2YVNjcmlwdCBpbiB5b3VyIGJyb3dzZXIuIEl0IGlzIHJlcXVpcmVkIHRvIHVzZSBtb3N0IG9mIHRoZSBmZWF0dXJlcyBvZiBEYXRhdmVyc2UuCiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9ub3NjcmlwdD4KPGZvcm0gaWQ9ImpfaWR0MTE4IiBuYW1lPSJqX2lkdDExOCIgbWV0aG9kPSJwb3N0IiBhY3Rpb249Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9wZXJzaXN0ZW50SWQ9ZG9pOjEwLjc5MTAvRFZOL05KN1hTTyIgY2xhc3M9ImZvcm0taW5saW5lIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ial9pZHQxMTgiIHZhbHVlPSJqX2lkdDExOCIgLz4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iamF2YXguZmFjZXMuVmlld1N0YXRlIiBpZD0ial9pZDE6amF2YXguZmFjZXMuVmlld1N0YXRlOjAiIHZhbHVlPSItNjI4NTg4MjA0NTE2NjMzNTUxNDo0NzgzNjg3Nzk1NjA4MDIxMjYiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPgo8L2Zvcm0+PGRpdiBpZD0iYnJlYWRjcnVtYk5hdkJsb2NrIiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJCbG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYnJlYWRjcnVtYkxuazAiIGhyZWY9Ii9kYXRhdmVyc2UvaGFydmFyZCI+SGFydmFyZCBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgIDwvZGl2PjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQ2Fycm90Ij4gJmd0OyA8L3NwYW4+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJicmVhZGNydW1iQmxvY2siPjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQWN0aXZlIj5TdW1tYXJ5IGRhdGEgYW5reWxvc2luZyBzcG9uZHlsaXRpcyBHV0FTPC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBpZD0ibWVzc2FnZVBhbmVsIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIG1lc3NhZ2VQYW5lbCI+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBpZD0iY29udGVudCI+Cjxmb3JtIGlkPSJkYXRhc2V0Rm9ybSIgbmFtZT0iZGF0YXNldEZvcm0iIG1ldGhvZD0icG9zdCIgYWN0aW9uPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/cGVyc2lzdGVudElkPWRvaToxMC43OTEwL0RWTi9OSjdYU08iIGVuY3R5cGU9ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtIiB2YWx1ZT0iZGF0YXNldEZvcm0iIC8+CjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50Ij48ZGl2IGlkPSJ0b3BEYXRhc2V0QmxvY2siPjxkaXYgaWQ9ImFjdGlvbkJ1dHRvbkJsb2NrIiBjbGFzcz0iYnV0dG9uLWJsb2NrIGNsZWFyZml4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBwdWxsLXJpZ2h0IiByb2xlPSJncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG4tZ3JvdXAgcHVsbC1yaWdodCIgaWQ9ImRhdGFzZXRCdXR0b25CYXIiIHJvbGU9Imdyb3VwIj48YSBpZD0iZGF0YXNldEZvcm06al9pZHQzMDUiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgdGV4dC1idXR0b24gYnRuLWNvbnRhY3QgYm9vdHN0cmFwLWJ1dHRvbi10b29sdGlwIiBhcmlhLWxhYmVsPSJFbWFpbCBEYXRhc2V0IENvbnRhY3QiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQzMDUmcXVvdDssdTomcXVvdDtjb250YWN0RGlhbG9nJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignY29udGFjdEZvcm0nKS5zaG93KCk7fSxmaTomcXVvdDtkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHRpdGxlPSJFbWFpbCBEYXRhc2V0IENvbnRhY3QiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1lbnZlbG9wZSI+PC9zcGFuPiBDb250YWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDMwNyIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCB0ZXh0LWJ1dHRvbiBidG4tc2hhcmUgYm9vdHN0cmFwLWJ1dHRvbi10b29sdGlwIiBhcmlhLWxhYmVsPSJTaGFyZSBEYXRhc2V0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MzA3JnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignc2hhcmVEaWFsb2cnKS5zaG93KCk7c2hhcnJyZSgpOzt9LGZpOiZxdW90O2RhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdGl0bGU9IlNoYXJlIERhdGFzZXQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zaGFyZSI+PC9zcGFuPiBTaGFyZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TaGFyZSBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPlNoYXJlIHRoaXMgZGF0YXNldCBvbiB5b3VyIGZhdm9yaXRlIHNvY2lhbCBtZWRpYSBuZXR3b3Jrcy48L3A+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InNoYXJycmUtd2lkZ2V0IiBkYXRhLXVybD0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvZGF0YXNldC54aHRtbD9wZXJzaXN0ZW50SWQ9ZG9pOjEwLjc5MTAvRFZOL05KN1hTTyIgZGF0YS10ZXh0PSJWaWV3IHRoaXMgZGF0YXNldC4iPjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdzaGFyZURpYWxvZycpLmhpZGUoKSIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNoYXJlRGlhbG9nIix7aWQ6ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0ibWV0cmljcy1ibG9jayIgY2xhc3M9ImNvbC14cy0zIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJtZXRyaWNzLWxhYmVsIiBjbGFzcz0iY29sLXhzLTQgc21hbGwgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zdGF0cyI+PC9zcGFuPiBNZXRyaWNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWV0cmljcy1jb250ZW50IiBjbGFzcz0iY29sLXhzLTggc21hbGwgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJtZXRyaWNzLWRvd25sb2FkcyI+MTA5IERvd25sb2Fkczwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRhdGFzZXRWZXJzaW9uQmxvY2siIGNsYXNzPSJjb250YWluZXItZmx1aWQiPjxkaXYgaWQ9InRpdGxlLWJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMSB2Y2VudGVyIHRpdGxlLXByZXZpZXctaWNvbi1ibG9jayI+PHNwYW4gY2xhc3M9Imljb24tZGF0YXNldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMSB2Y2VudGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InRpdGxlIj4gU3VtbWFyeSBkYXRhIGFua3lsb3Npbmcgc3BvbmR5bGl0aXMgR1dBUzwvc3Bhbj48c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtZGVmYXVsdCI+VmVyc2lvbiAxLjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InJvdyBjaXRhdGlvbi1ibG9jayI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyICBhbGVydCBhbGVydC1pbmZvIGJnLWNpdGF0aW9uIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93ICI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNyBjb2wtbWQtOCBjaXRhdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNpdGF0aW9uLXNlbGVjdCIgb25jbGljaz0iaWYgKGV2ZW50LnRhcmdldCkgeyBzZWxlY3RUZXh0KGV2ZW50LnRhcmdldCk7IH0gZWxzZXsgc2VsZWN0VGV4dCh0aGlzKTsgfSI+SW50ZXJuYXRpb25hbCBHZW5ldGljcyBvZiBBbmt5bG9zaW5nIFNwb25keWxpdGlzIENvbnNvcnRpdW0gKElHQVMpLCAyMDE3LCAiU3VtbWFyeSBkYXRhIGFua3lsb3Npbmcgc3BvbmR5bGl0aXMgR1dBUyIsIDxhIGhyZWY9Imh0dHBzOi8vZG9pLm9yZy8xMC43OTEwL0RWTi9OSjdYU08iIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2RvaS5vcmcvMTAuNzkxMC9EVk4vTko3WFNPPC9hPiwgSGFydmFyZCBEYXRhdmVyc2UsIFYxCiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iY29sLXhzLTUgY29sLW1kLTQgdGV4dC1yaWdodCBjaXRhdGlvbi1kb3dubG9hZCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBkcm9wZG93bi10b2dnbGUgZG93bmxvYWRDaXRhdGlvbiIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxpc3QiPjwvc3Bhbj4gQ2l0ZSBEYXRhc2V0IDxzcGFuIGNsYXNzPSJjYXJldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IHB1bGwtcmlnaHQgdGV4dC1sZWZ0IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzZi5qcy54aHRtbD9sbj1qYXZheC5mYWNlcyI+PC9zY3JpcHQ+DQo8YSBpZD0iZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsiIGhyZWY9IiMiIG9uY2xpY2s9Im1vamFycmEuanNmY2xqcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGF0YXNldEZvcm0nKSx7J2RhdGFzZXRGb3JtOmVuZE5vdGVMaW5rJzonZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsnfSwnJyk7cmV0dXJuIGZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5kTm90ZSBYTUwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpyaXNMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpyaXNMaW5rJzonZGF0YXNldEZvcm06cmlzTGluayd9LCcnKTtyZXR1cm4gZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpiaWJMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpiaWJMaW5rJzonZGF0YXNldEZvcm06YmliTGluayd9LCdfYmxhbmsnKTtyZXR1cm4gZmFsc2UiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmliVGVYCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzbWFsbCB0ZXh0LW11dGVkIHRleHQtcmlnaHQgY2l0YXRpb24tc3RhbmRhcmRzIj5MZWFybiBhYm91dCA8YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5vcmcvYmVzdC1wcmFjdGljZXMvZGF0YS1jaXRhdGlvbiIgdGl0bGU9IkRhdGEgQ2l0YXRpb24gLSBEYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+RGF0YSBDaXRhdGlvbiBTdGFuZGFyZHM8L2E+LjwvZGl2PjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PjxkaXYgaWQ9ImRhdGFzZXQtc3VtbWFyeS1tZXRhZGF0YSIgY2xhc3M9InJvdyBwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IG1ldGFkYXRhLXBhbmVsLWJvZHkiPjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RzRGVzY3JpcHRpb24iIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tcXVlc3Rpb24tc2lnbiB0b29sdGlwLWljb24iIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgZGF0YS1vcmlnaW5hbC10aXRsZT0iQSBzdW1tYXJ5IGRlc2NyaWJpbmcgdGhlIHB1cnBvc2UsIG5hdHVyZSwgYW5kIHNjb3BlIG9mIHRoZSBEYXRhc2V0LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TdW1tYXJ5IG9mIGFzc29jaWF0aW9uIHRlc3RzIGZvciBOYXR1cmUgR2VuZXRpY3MgcHVibGljYXRpb24gIklkZW50aWZpY2F0aW9uIG9mIG11bHRpcGxlIHJpc2sgdmFyaWFudHMgZm9yIGFua3lsb3Npbmcgc3BvbmR5bGl0aXMgdGhyb3VnaCBoaWdoLWRlbnNpdHkgZ2Vub3R5cGluZyBvZiBpbW11bmUtcmVsYXRlZCBsb2NpIi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX3N1YmplY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3ViamVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEb21haW4tc3BlY2lmaWMgU3ViamVjdCBDYXRlZ29yaWVzIHRoYXQgYXJlIHRvcGljYWxseSByZWxldmFudCB0byB0aGUgRGF0YXNldC4iPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5NZWRpY2luZSwgSGVhbHRoIGFuZCBMaWZlIFNjaWVuY2VzPC9kaXY+PC9kaXY+PGRpdiBpZD0ia2V5d29yZHMiIGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLZXl3b3JkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IktleSB0ZXJtcyB0aGF0IGRlc2NyaWJlIGltcG9ydGFudCBhc3BlY3RzIG9mIHRoZSBEYXRhc2V0LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPiBHZW5vbWUtV2lkZSBBc3NvY2lhdGlvbiBTdHVkaWVzLCBBbmt5bG9zaW5nIHNwb25keWxpdGlzPC9kaXY+PC9kaXY+PGRpdiBpZD0icHVibGljYXRpb24iIGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxhdGVkIFB1YmxpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlB1YmxpY2F0aW9ucyB0aGF0IHVzZSB0aGUgZGF0YSBmcm9tIHRoaXMgRGF0YXNldC4iPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4xMC4xMDM4L25nLjI2NjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9ub3Rlc1RleHQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tcXVlc3Rpb24tc2lnbiB0b29sdGlwLWljb24iIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgZGF0YS1vcmlnaW5hbC10aXRsZT0iQWRkaXRpb25hbCBpbXBvcnRhbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIERhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+RXVyb3BlYW5fQ2FzZV9Db250cm9sX1Jlc3VsdHMudHh0OiBzdW1tYXJ5IGRhdGEgZm9yIEV1cm9wZWFuIGNvaG9ydCBBc2lhbl9DYXNlX0NvbnRyb2xfUmVzdWx0cy50eHQ6IHN1bW1hcnkgZGF0YSBmb3IgQXNpYW4gY29ob3J0IEV1cm9wZWFuX0FzaWFuX0Nhc2VfQ29udHJvbF9SZXN1bHRzLnR4dDogc3VtbWFyeSBkYXRhIGZvciBjb21iaW5lZCBjb2hvcnQ8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJjb250ZW50VGFicyI+PGRpdiBpZD0iZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpkYXRhc2V0TG9ja2VkRm9yQW55UmVhc29uVmFyaWFibGUiIHR5cGU9ImhpZGRlbiIgbmFtZT0iZGF0YXNldEZvcm06ZGF0YXNldExvY2tlZEZvckFueVJlYXNvblZhcmlhYmxlIiB2YWx1ZT0iZmFsc2UiIC8+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpkYXRhc2V0U3RhdGVDaGFuZ2VkVmFyaWFibGUiIHR5cGU9ImhpZGRlbiIgbmFtZT0iZGF0YXNldEZvcm06ZGF0YXNldFN0YXRlQ2hhbmdlZFZhcmlhYmxlIiB2YWx1ZT0iZmFsc2UiIC8+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQ1MTEiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmVmcmVzaEFsbExvY2tzQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0NTExIixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06al9pZHQ1MTEiLHU6ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQiLHBhOmFyZ3VtZW50c1swXSxmaToiZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCJ9KTt9PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQ1MTIiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmVmcmVzaEFsbENvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDUxMiIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOmpfaWR0NTEyIix1OiJkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCBkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUgbWVzc2FnZVBhbmVsIixwYTphcmd1bWVudHNbMF0sZmk6ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQifSk7fTwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOnJlZnJlc2hCdXR0b24iIG5hbWU9ImRhdGFzZXRGb3JtOnJlZnJlc2hCdXR0b24iIGNsYXNzPSIiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOnJlZnJlc2hCdXR0b24mcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCBkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUmcXVvdDssZmk6JnF1b3Q7ZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPnVpLWJ1dHRvbjwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsInJlZnJlc2hCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoSWZTdGlsbExvY2tlZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiByZWZyZXNoSWZTdGlsbExvY2tlZCgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoJ2lucHV0W2lkJD0iZGF0YXNldExvY2tlZEZvckFueVJlYXNvblZhcmlhYmxlIl0nKS52YWwoKSA9PT0gJ3RydWUnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiBkYXRhc2V0IGlzIGxvY2tlZCwgaW5zdHJ1Y3QgdGhlIHBhZ2UgdG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdhaXQgYW5kIGNoZWNrIGFnYWluOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2FpdEFuZENoZWNrTG9ja0FnYWluKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBpZiBub3QgbG9ja2VkLCBoYXMgaXQganVzdCBiZWVuIHVubG9ja2VkPwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoJ2lucHV0W2lkJD0iZGF0YXNldFN0YXRlQ2hhbmdlZFZhcmlhYmxlIl0nKS52YWwoKSA9PT0gJ3RydWUnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRm9yIHdoYXRldmVyIHVua25vd24gUHJpbWVGYWNlcyByZWFzb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGUgcGFnZSBuZWVkcyB0byBiZSByZWZyZXNoZWQgdHdpY2UsIGZvciBhbGwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGUgcHVsbCBkb3duIG1lbnVzIHRvIHVwZGF0ZSBwcm9wZXJseToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoQWxsQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFlvdSBjYW4ndCBqdXN0IHJ1biAyIHJlZnJlc2hBbGxDb21tYW5kKClzIGluIGEgcm93CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZWl0aGVyOyBiZWNhdXNlIHRoZSBjb21tYW5kIGhhcyBhbiAidXBkYXRlPUBhbGwiIG9uIGl0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNvIEkgZ3Vlc3MgaWYgeW91IHRyeSB0byBleGVjdXRlIHRoZSAybmQgb25lIHJpZ2h0IGFmdGVyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhlIGZpcnN0IG9uZSwgdGhpcyBmcmFnbWVudCBpcyBzdGlsbCBnb2luZyB0byBiZSBsb2FkaW5nIC0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzbyB0aGVyZSB3b3VsZCBub3QgeWV0IGJlIGEgY29tbWFuZCB0byBydW4hIChpdCBuZWVkcyB0bwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJlIHJlbmRlcmVkLCBiZWZvcmUgeW91IGNhbiBleGVjdXRlIGl0LCB0aGF0IGlzKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzIGJ1dHRvbiBkb2Vzbid0IGRvIGFueXRoaW5nLCBidXQgaXQgaGFzIGFuIHVwZGF0ZT0iQGFsbCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYXR0cmlidXRlOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJyZWZyZXNoQnV0dG9uIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3JlZnJlc2hBbGxDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTUwMCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHdhaXRBbmRDaGVja0xvY2tBZ2FpbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZWZyZXNoIHRoZSBsb2NrIGluIHRoZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYmFja2luZyBiZWFuOyBpLmUuLCBjaGVjaywgaWYgdGhlIGluZ2VzdCBoYXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFscmVhZHkgY29tcGxldGVkIGluIHRoZSBiYWNrZ3JvdW5kOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8kKCdidXR0b25baWQkPSJyZWZyZXNoQnV0dG9uIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9yZWZyZXNoTG9ja0NvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hBbGxMb2Nrc0NvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTAwMDApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXciIGNsYXNzPSJ1aS10YWJzIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLWhpZGRlbi1jb250YWluZXIgdWktdGFicy10b3AiIGRhdGEtd2lkZ2V0PSJjb250ZW50Ij48dWwgY2xhc3M9InVpLXRhYnMtbmF2IHVpLWhlbHBlci1yZXNldCB1aS13aWRnZXQtaGVhZGVyIHVpLWNvcm5lci1hbGwiIHJvbGU9InRhYmxpc3QiPjxsaSBjbGFzcz0idWktdGFicy1oZWFkZXIgdWktc3RhdGUtZGVmYXVsdCB1aS10YWJzLXNlbGVjdGVkIHVpLXN0YXRlLWFjdGl2ZSB1aS1jb3JuZXItdG9wIiByb2xlPSJ0YWIiIGFyaWEtZXhwYW5kZWQ9InRydWUiIGFyaWEtc2VsZWN0ZWQ9InRydWUiIGRhdGEtaW5kZXg9IjAiPjxhIGhyZWY9IiNkYXRhc2V0Rm9ybTp0YWJWaWV3OmRhdGFGaWxlc1RhYiIgdGFiaW5kZXg9Ii0xIj5GaWxlczwvYT48L2xpPjxsaSBjbGFzcz0idWktdGFicy1oZWFkZXIgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItdG9wIiByb2xlPSJ0YWIiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgZGF0YS1pbmRleD0iMSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6bWV0YWRhdGFNYXBUYWIiIHRhYmluZGV4PSItMSI+TWV0YWRhdGE8L2E+PC9saT48bGkgY2xhc3M9InVpLXRhYnMtaGVhZGVyIHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLXRvcCIgcm9sZT0idGFiIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGRhdGEtaW5kZXg9IjIiPjxhIGhyZWY9IiNkYXRhc2V0Rm9ybTp0YWJWaWV3OnRlcm1zVGFiIiB0YWJpbmRleD0iLTEiPlRlcm1zPC9hPjwvbGk+PGxpIGNsYXNzPSJ1aS10YWJzLWhlYWRlciB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBkYXRhLWluZGV4PSIzIj48YSBocmVmPSIjZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYiIgdGFiaW5kZXg9Ii0xIj5WZXJzaW9uczwvYT48L2xpPjwvdWw+PGRpdiBjbGFzcz0idWktdGFicy1wYW5lbHMiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZGF0YUZpbGVzVGFiIiBjbGFzcz0idWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIiByb2xlPSJ0YWJwYW5lbCIgYXJpYS1oaWRkZW49ImZhbHNlIiBkYXRhLWluZGV4PSIwIj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0OTI1IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJlZnJlc2hQYWdpbmF0b3IgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0OTI1IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpqX2lkdDkyNSIsdToiZGF0YXNldEZvcm0iLHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0OTMyIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJlYmluZENvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0OTMyIixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpqX2lkdDkzMiIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7amF2YXNjcmlwdDpiaW5kX2JzdWlfY29tcG9uZW50cygpOzt9LHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiIGNsYXNzPSJ1aS1kYXRhdGFibGUgdWktd2lkZ2V0IiBzdHlsZT0ibWFyZ2luLXJpZ2h0OjFweDsiPjxkaXYgY2xhc3M9InVpLWRhdGF0YWJsZS1oZWFkZXIgdWktd2lkZ2V0LWhlYWRlciB1aS1jb3JuZXItdG9wIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6ZmlsZXNIZWFkZXJCbG9jayIgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNSI+PGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNlYXJjaEZpbGVzIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMiIHR5cGU9InRleHQiIG9ua2V5cHJlc3M9ImlmIChldmVudC5rZXlDb2RlID09IDEzKSB7IHN1Ym1pdHNlYXJjaCgpOyByZXR1cm4gZmFsc2U7IH0iIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIGZvcm0tY29udHJvbCIgLz48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJpbnB1dFNlYXJjaFRlcm0iLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNlYXJjaEZpbGVzIn0pOzwvc2NyaXB0PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0Ml9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJXYXRlcm1hcmsiLCJ3aWRnZXRfZGF0YXNldEZvcm1fdGFiVmlld19maWxlc1RhYmxlX2pfaWR0OTQyIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0MiIsdmFsdWU6IlNlYXJjaCB0aGlzIGRhdGFzZXQuLi4iLHRhcmdldDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNlYXJjaEZpbGVzIn0pO30pOzwvc2NyaXB0PjxpbnB1dCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNob3dBY2Nlc3NQb3B1cCIgdHlwZT0iaGlkZGVuIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2hvd0FjY2Vzc1BvcHVwIiB2YWx1ZT0iZmFsc2UiIC8+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0OTQzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnN1Ym1pdHNlYXJjaCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0MyIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0MyBAd2lkZ2V0VmFyKGlucHV0U2VhcmNoVGVybSkiLHU6ImRhdGFzZXRGb3JtIixwczp0cnVlLHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpbnB1dC1ncm91cC1idG4iPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ5NDUiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0NSZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDk0NSBAd2lkZ2V0VmFyKGlucHV0U2VhcmNoVGVybSkmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSZxdW90Oyxwczp0cnVlfSk7cmV0dXJuIGZhbHNlOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIj48L3NwYW4+IEZpbmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNyB0ZXh0LXJpZ2h0Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6ZmlsZXNCdXR0b25zIiBjbGFzcz0idWktb3V0cHV0cGFuZWwgdWktd2lkZ2V0Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6dXBsb2FkQ29tcHV0ZUJsb2NrIiBjbGFzcz0iYnV0dG9uLWJsb2NrIHB1bGwtcmlnaHQgbm8tbWFyZ2luLXRvcCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tYm90dG9tOjEwcHg7IiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wteHMtOSB0ZXh0LWxlZnQiPjxkaXYgc3R5bGU9ImZvbnQtd2VpZ2h0Om5vcm1hbDsiIGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj5GaWx0ZXIgYnk8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW4tcmlnaHQ6MjBweDsiIGNsYXNzPSJidG4tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tbGluayBkcm9wZG93bi10b2dnbGUiIHN0eWxlPSJwYWRkaW5nOjA7IiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZpbGUgVHlwZTogPHNwYW4gY2xhc3M9IiI+QWxsPC9zcGFuPiA8c3BhbiBjbGFzcz0iY2FyZXQiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZOSjdYU08mYW1wO3ZlcnNpb249JmFtcDtxPSZhbXA7ZmlsZUFjY2Vzcz0mYW1wO2ZpbGVUYWc9JmFtcDtmaWxlU29ydEZpZWxkPSZhbXA7ZmlsZVNvcnRPcmRlcj0iPjxzcGFuIGNsYXNzPSJoaWdobGlnaHRCb2xkIj5BbGw8L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgcm9sZT0ic2VwYXJhdG9yIiBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPJmFtcDt2ZXJzaW9uPSZhbXA7cT0mYW1wO2ZpbGVUeXBlR3JvdXBGYWNldD0lMjJUZXh0JTIyJmFtcDtmaWxlQWNjZXNzPSZhbXA7ZmlsZVRhZz0mYW1wO2ZpbGVTb3J0RmllbGQ9JmFtcDtmaWxlU29ydE9yZGVyPSI+PHNwYW4gY2xhc3M9IiI+VGV4dCAoMyk8L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLXJpZ2h0OjIwcHg7IiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWxpbmsgZHJvcGRvd24tdG9nZ2xlIiBzdHlsZT0icGFkZGluZzowOyIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBY2Nlc3M6IDxzcGFuIGNsYXNzPSIiPkFsbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPJmFtcDt2ZXJzaW9uPSZhbXA7cT0mYW1wO2ZpbGVUeXBlR3JvdXBGYWNldD0mYW1wO2ZpbGVUYWc9JmFtcDtmaWxlU29ydEZpZWxkPSZhbXA7ZmlsZVNvcnRPcmRlcj0iPjxzcGFuIGNsYXNzPSJoaWdobGlnaHRCb2xkIj5BbGw8L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgcm9sZT0ic2VwYXJhdG9yIiBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPJmFtcDt2ZXJzaW9uPSZhbXA7cT0mYW1wO2ZpbGVUeXBlR3JvdXBGYWNldD0mYW1wO2ZpbGVBY2Nlc3M9UHVibGljJmFtcDtmaWxlVGFnPSZhbXA7ZmlsZVNvcnRGaWVsZD0mYW1wO2ZpbGVTb3J0T3JkZXI9Ij48c3BhbiBjbGFzcz0iIj5QdWJsaWMgKDMpPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPjwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMyB0ZXh0LXJpZ2h0ICI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNvcnQiPjwvc3Bhbj4gU29ydCA8c3BhbiBjbGFzcz0iY2FyZXQiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSBwdWxsLXJpZ2h0IHRleHQtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPJmFtcDt2ZXJzaW9uPSZhbXA7cT0mYW1wO2ZpbGVUeXBlR3JvdXBGYWNldD0mYW1wO2ZpbGVBY2Nlc3M9Ij48c3BhbiBjbGFzcz0iaGlnaGxpZ2h0Qm9sZCI+TmFtZSAoQS1aKTwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZOSjdYU08mYW1wO3ZlcnNpb249JmFtcDtxPSZhbXA7ZmlsZVR5cGVHcm91cEZhY2V0PSZhbXA7ZmlsZUFjY2Vzcz0mYW1wO2ZpbGVTb3J0RmllbGQ9bmFtZSZhbXA7ZmlsZVNvcnRPcmRlcj1kZXNjIj48c3BhbiBjbGFzcz0iIj5OYW1lIChaLUEpPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9wZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMCUyRkRWTiUyRk5KN1hTTyZhbXA7dmVyc2lvbj0mYW1wO3E9JmFtcDtmaWxlVHlwZUdyb3VwRmFjZXQ9JmFtcDtmaWxlQWNjZXNzPSZhbXA7ZmlsZVNvcnRGaWVsZD1kYXRlIj48c3BhbiBjbGFzcz0iIj5OZXdlc3Q8L3NwYW4+PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPJmFtcDt2ZXJzaW9uPSZhbXA7cT0mYW1wO2ZpbGVUeXBlR3JvdXBGYWNldD0mYW1wO2ZpbGVBY2Nlc3M9JmFtcDtmaWxlU29ydEZpZWxkPWRhdGUmYW1wO2ZpbGVTb3J0T3JkZXI9ZGVzYyI+PHNwYW4gY2xhc3M9IiI+T2xkZXN0PC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9wZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMCUyRkRWTiUyRk5KN1hTTyZhbXA7dmVyc2lvbj0mYW1wO3E9JmFtcDtmaWxlVHlwZUdyb3VwRmFjZXQ9JmFtcDtmaWxlQWNjZXNzPSZhbXA7ZmlsZVNvcnRGaWVsZD1zaXplIj48c3BhbiBjbGFzcz0iIj5TaXplPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9wZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMCUyRkRWTiUyRk5KN1hTTyZhbXA7dmVyc2lvbj0mYW1wO3E9JmFtcDtmaWxlVHlwZUdyb3VwRmFjZXQ9JmFtcDtmaWxlQWNjZXNzPSZhbXA7ZmlsZVNvcnRGaWVsZD10eXBlIj48c3BhbiBjbGFzcz0iIj5UeXBlPC9zcGFuPjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLXRhYmxld3JhcHBlciI+PHRhYmxlIHJvbGU9ImdyaWQiPjx0aGVhZCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2hlYWQiPjx0ciByb2xlPSJyb3ciPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0MTExMyIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciIgcm9sZT0iY29sdW1uaGVhZGVyIiBzY29wZT0iY29sIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS1jaGtib3gtYWxsIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgYXJpYS1sYWJlbD0iU2VsZWN0IEFsbCIgYXJpYS1jaGVja2VkPSJmYWxzZSIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQxMTE0IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtZmlsZS1tZXRhZGF0YSIgcm9sZT0iY29sdW1uaGVhZGVyIiBhcmlhLWxhYmVsPSJ7MH0gdG8gezF9IG9mIHsyfSB7MiwgY2hvaWNlLCAwI0ZpbGVzfDEjRmlsZXwyI0ZpbGVzfSIgc2NvcGU9ImNvbCI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmZpbGVzSGVhZGVyQ291bnQiPjxzcGFuIGNsYXNzPSJoaWdobGlnaHRCb2xkIj4xIHRvIDMgb2YgMyBGaWxlczwvc3Bhbj48L2Rpdj48L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDExNDkiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICIgcm9sZT0iY29sdW1uaGVhZGVyIiBzY29wZT0iY29sIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6ZG93bmxvYWRCdXR0b25CbG9ja05vcm1hbCIgY2xhc3M9ImJ0bi1ncm91cCI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDExNzEiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IGJ0bi1kb3dubG9hZCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQxMTcxJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm0mcXVvdDt9KTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZG93bmxvYWQtYWx0Ij48L3NwYW4+IERvd25sb2FkCiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2Pjwvc3Bhbj48L3RoPjwvdHI+PC90aGVhZD48dGJvZHkgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9kYXRhIiBjbGFzcz0idWktZGF0YXRhYmxlLWRhdGEgdWktd2lkZ2V0LWNvbnRlbnQiPjx0ciBkYXRhLXJpPSIwIiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNWVkNTdhNjUyZS02NzI4NGEzNzJjMjkiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtZXZlbiB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIGFyaWEtY2hlY2tlZD0iZmFsc2UiIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWZpbGUtZmxleGJveCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtZmlsZS10aHVtYiBwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+PHNwYW4gY2xhc3M9Imljb24tZG9jdW1lbnQgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWxlLW1ldGFkYXRhLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9maWxlLnhodG1sP3BlcnNpc3RlbnRJZD1kb2k6MTAuNzkxMC9EVk4vTko3WFNPL0szTlJNTyZhbXA7dmVyc2lvbj0xLjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQXNpYW5fQ2FzZV9Db250cm9sX1Jlc3VsdHMudHh0CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVUeXBlT3V0cHV0UmVndWxhciI+UGxhaW4gVGV4dDwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZVNpemUiPiAtIDExLjAgTUI8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gU2VwIDMwLCAyMDE3PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlRG93bmxvYWRDb3VudCI+IC0gMzQgRG93bmxvYWRzPC9zcGFuPjxkaXYgc3R5bGU9IndvcmQtYnJlYWs6IGJyZWFrLWFsbDsiIGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGUtY2hlY2tzdW0iPk1ENTogYmNjMDZhZWJmOTZjOTU0MDk5NTE5MmM4OWM5MWZiMjM8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iZmlsZURlc2NyaXB0aW9uIHNtYWxsIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZURlc2NOb25FbXB0eSI+U3VtbWFyeSBkYXRhIGZvciBBc2lhbiBjb2hvcnQ8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmpfaWR0MTIzOCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQgYnRuLWRvd25sb2FkIiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmpfaWR0MTIzOCZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmpfaWR0MTIzOCZxdW90O30pO3JldHVybiBmYWxzZTsiPgogICAgICAgIAogICAgICAgIAogICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWRvd25sb2FkLWFsdCI+PC9zcGFuPiBEb3dubG9hZAogICAgPC9hPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iMSIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTVlZDU3YTg3YjktOTlhYmMxNjJiNDU4IiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLW9kZCB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIGFyaWEtY2hlY2tlZD0iZmFsc2UiIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWZpbGUtZmxleGJveCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtZmlsZS10aHVtYiBwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+PHNwYW4gY2xhc3M9Imljb24tZG9jdW1lbnQgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWxlLW1ldGFkYXRhLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9maWxlLnhodG1sP3BlcnNpc3RlbnRJZD1kb2k6MTAuNzkxMC9EVk4vTko3WFNPL0hBMlNWUiZhbXA7dmVyc2lvbj0xLjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgRXVyb3BlYW5fQXNpYW5fQ2FzZV9Db250cm9sX1Jlc3VsdHMudHh0CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVUeXBlT3V0cHV0UmVndWxhciI+UGxhaW4gVGV4dDwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZVNpemUiPiAtIDEwLjcgTUI8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gU2VwIDMwLCAyMDE3PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlRG93bmxvYWRDb3VudCI+IC0gMjkgRG93bmxvYWRzPC9zcGFuPjxkaXYgc3R5bGU9IndvcmQtYnJlYWs6IGJyZWFrLWFsbDsiIGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGUtY2hlY2tzdW0iPk1ENTogMGFlN2I0NjM5NjI2ZWJhZDZhYjc3ZjU0YmZjZmRkNmQ8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iZmlsZURlc2NyaXB0aW9uIHNtYWxsIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZURlc2NOb25FbXB0eSI+U3VtbWFyeSBkYXRhIGZvciBjb21iaW5lZCBjb2hvcnQ8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmpfaWR0MTIzOCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQgYnRuLWRvd25sb2FkIiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmpfaWR0MTIzOCZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmpfaWR0MTIzOCZxdW90O30pO3JldHVybiBmYWxzZTsiPgogICAgICAgIAogICAgICAgIAogICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWRvd25sb2FkLWFsdCI+PC9zcGFuPiBEb3dubG9hZAogICAgPC9hPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iMiIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTVlZDU3YWFiN2UtOTBhMmI2YzExMmViIiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWV2ZW4gdWktZGF0YXRhYmxlLXNlbGVjdGFibGUiIHJvbGU9InJvdyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiIGNsYXNzPSJ1aS1zZWxlY3Rpb24tY29sdW1uIHRleHQtY2VudGVyIj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2NoZWNrYm94IiBhcmlhLWNoZWNrZWQ9ImZhbHNlIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1maWxlLWZsZXhib3giPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWZpbGUtdGh1bWIgcHVsbC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aHVtYm5haWwtYmxvY2sgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1tZXRhZGF0YS1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZmlsZS54aHRtbD9wZXJzaXN0ZW50SWQ9ZG9pOjEwLjc5MTAvRFZOL05KN1hTTy9JTjQ1R1omYW1wO3ZlcnNpb249MS4wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV1cm9wZWFuX0Nhc2VfQ29udHJvbF9SZXN1bHRzLnR4dAogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPlBsYWluIFRleHQ8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVTaXplIj4gLSAxMi43IE1CPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlQ3JlYXRlUHVibGlzaERhdGUiPiAtIFNlcCAzMCwgMjAxNzwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZURvd25sb2FkQ291bnQiPiAtIDQ2IERvd25sb2Fkczwvc3Bhbj48ZGl2IHN0eWxlPSJ3b3JkLWJyZWFrOiBicmVhay1hbGw7IiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlLWNoZWNrc3VtIj5NRDU6IDg3NmJiM2I2MDA0NjBmZGJmYWJjMDFlYjA4YzQxNDk3PC9zcGFuPjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9ImZpbGVEZXNjcmlwdGlvbiBzbWFsbCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVEZXNjTm9uRW1wdHkiPlN1bW1hcnkgZGF0YSBmb3IgRXVyb3BlYW4gY29ob3J0PC9zcGFuPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtYWN0aW9uIHRleHQtcmlnaHQgIj48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpqX2lkdDEyMzgiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IGJ0bi1kb3dubG9hZCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpqX2lkdDEyMzgmcXVvdDsscDomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpqX2lkdDEyMzgmcXVvdDt9KTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICAKICAgICAgICAKICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1kb3dubG9hZC1hbHQiPjwvc3Bhbj4gRG93bmxvYWQKICAgIDwvYT48L2Rpdj48L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfc2VsZWN0aW9uIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfc2VsZWN0aW9uIiBhdXRvY29tcGxldGU9Im9mZiIgdmFsdWU9IiIgLz48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGF0YVRhYmxlIiwiZmlsZXNUYWJsZSIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHNlbGVjdGlvbk1vZGU6ImNoZWNrYm94Iixncm91cENvbHVtbkluZGV4ZXM6W10sYmVoYXZpb3JzOntyb3dVbnNlbGVjdDpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLGU6InJvd1Vuc2VsZWN0IixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe3JlYmluZENvbW1hbmQoKTt9fSxleHQpO30scm93VW5zZWxlY3RDaGVja2JveDpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLGU6InJvd1Vuc2VsZWN0Q2hlY2tib3giLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7cmViaW5kQ29tbWFuZCgpO319LGV4dCk7fSxyb3dEYmxzZWxlY3Q6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJyb3dEYmxzZWxlY3QiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7cmViaW5kQ29tbWFuZCgpO319LGV4dCk7fSxwYWdlOmZ1bmN0aW9uKGV4dCxldmVudCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsZToicGFnZSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtyZWZyZXNoUGFnaW5hdG9yKCkscmViaW5kQ29tbWFuZCgpO319LGV4dCk7fSxyb3dTZWxlY3Q6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJyb3dTZWxlY3QiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7cmViaW5kQ29tbWFuZCgpO319LGV4dCk7fSx0b2dnbGVTZWxlY3Q6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixlOiJ0b2dnbGVTZWxlY3QiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsdToiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7cmViaW5kQ29tbWFuZCgpO319LGV4dCk7fSxyb3dTZWxlY3RDaGVja2JveDpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLGU6InJvd1NlbGVjdENoZWNrYm94IixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSIsb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe3JlYmluZENvbW1hbmQoKTt9fSxleHQpO319fSk7fSk7PC9zY3JpcHQ+PC9kaXY+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzptZXRhZGF0YU1hcFRhYiIgY2xhc3M9InVpLXRhYnMtcGFuZWwgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWJvdHRvbSB1aS1oZWxwZXItaGlkZGVuIiByb2xlPSJ0YWJwYW5lbCIgYXJpYS1oaWRkZW49InRydWUiIGRhdGEtaW5kZXg9IjEiPjxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayB0YWItaGVhZGVyIG1hcmdpbi1ib3R0b20gdGV4dC1yaWdodCI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBidG4tZXhwb3J0IGRyb3Bkb3duLXRvZ2dsZSIgdHlwZT0iYnV0dG9uIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4cG9ydCI+PC9zcGFuPiBFeHBvcnQgTWV0YWRhdGEgPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+PC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiIHJvbGU9Im1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/ZXhwb3J0ZXI9ZGN0ZXJtcyZhbXA7cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAvRFZOL05KN1hTTyIgdGFyZ2V0PSJfYmxhbmsiPkR1YmxpbiBDb3JlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/ZXhwb3J0ZXI9ZGRpJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vTko3WFNPIiB0YXJnZXQ9Il9ibGFuayI+RERJPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/ZXhwb3J0ZXI9RGF0YWNpdGUmYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9OSjdYU08iIHRhcmdldD0iX2JsYW5rIj5EYXRhQ2l0ZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P2V4cG9ydGVyPWRhdGF2ZXJzZV9qc29uJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vTko3WFNPIiB0YXJnZXQ9Il9ibGFuayI+SlNPTjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1P2V4cG9ydGVyPU9BSV9PUkUmYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9OSjdYU08iIHRhcmdldD0iX2JsYW5rIj5PQUlfT1JFPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2UuaGFydmFyZC5lZHUvYXBpL2RhdGFzZXRzL2V4cG9ydDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/ZXhwb3J0ZXI9b2FpX2RhdGFjaXRlJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vTko3WFNPIiB0YXJnZXQ9Il9ibGFuayI+T3BlbkFJUkU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvZGF0YXNldHMvZXhwb3J0O2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNT9leHBvcnRlcj1zY2hlbWEub3JnJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vTko3WFNPIiB0YXJnZXQ9Il9ibGFuayI+U2NoZW1hLm9yZyBKU09OLUxEPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbC1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgPGRpdiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjcGFuZWxDb2xsYXBzZTAiIGNsYXNzPSJwYW5lbC1oZWFkaW5nIHRleHQtaW5mbyI+CiAgICAgICAgICAgICAgICAgICAgQ2l0YXRpb24gTWV0YWRhdGEgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9InBhbmVsQ29sbGFwc2UwIiBjbGFzcz0iY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgbWV0YWRhdGEtcGFuZWwtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9wZXJzaXN0ZW50SWQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0YXNldCBQZXJzaXN0ZW50IElECiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSB1bmlxdWUgcGVyc2lzdGVudCBpZGVudGlmaWVyIGZvciBhIGRhdGFzZXQsIHdoaWNoIGNhbiBiZSBhIEhhbmRsZSBvciBET0kgaW4gRGF0YXZlcnNlLiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2k6MTAuNzkxMC9EVk4vTko3WFNPCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9wdWJsaWNhdGlvbkRhdGUiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHVibGljYXRpb24gRGF0ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgcHVibGljYXRpb24gZGF0ZSBvZiBhIGRhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMTctMDktMzAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX3RpdGxlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpdGxlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkZ1bGwgdGl0bGUgYnkgd2hpY2ggdGhlIERhdGFzZXQgaXMga25vd24uIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+U3VtbWFyeSBkYXRhIGFua3lsb3Npbmcgc3BvbmR5bGl0aXMgR1dBUzwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9hdXRob3IiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXV0aG9yCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBwZXJzb24ocyksIGNvcnBvcmF0ZSBib2R5KGllcyksIG9yIGFnZW5jeShpZXMpIHJlc3BvbnNpYmxlIGZvciBjcmVhdGluZyB0aGUgd29yay4iPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5JbnRlcm5hdGlvbmFsIEdlbmV0aWNzIG9mIEFua3lsb3NpbmcgU3BvbmR5bGl0aXMgQ29uc29ydGl1bSAoSUdBUykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9kYXRhc2V0Q29udGFjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250YWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBjb250YWN0KHMpIGZvciB0aGlzIERhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+VXNlIGVtYWlsIGJ1dHRvbiBhYm92ZSB0byBjb250YWN0LgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPkxpLCBaaGl4aXUgKFFVVCkgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZHNEZXNjcmlwdGlvbiIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJBIHN1bW1hcnkgZGVzY3JpYmluZyB0aGUgcHVycG9zZSwgbmF0dXJlLCBhbmQgc2NvcGUgb2YgdGhlIERhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+U3VtbWFyeSBvZiBhc3NvY2lhdGlvbiB0ZXN0cyBmb3IgTmF0dXJlIEdlbmV0aWNzIHB1YmxpY2F0aW9uICJJZGVudGlmaWNhdGlvbiBvZiBtdWx0aXBsZSByaXNrIHZhcmlhbnRzIGZvciBhbmt5bG9zaW5nIHNwb25keWxpdGlzIHRocm91Z2ggaGlnaC1kZW5zaXR5IGdlbm90eXBpbmcgb2YgaW1tdW5lLXJlbGF0ZWQgbG9jaSIuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfc3ViamVjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJqZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkRvbWFpbi1zcGVjaWZpYyBTdWJqZWN0IENhdGVnb3JpZXMgdGhhdCBhcmUgdG9waWNhbGx5IHJlbGV2YW50IHRvIHRoZSBEYXRhc2V0LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPk1lZGljaW5lLCBIZWFsdGggYW5kIExpZmUgU2NpZW5jZXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfa2V5d29yZCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLZXl3b3JkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IktleSB0ZXJtcyB0aGF0IGRlc2NyaWJlIGltcG9ydGFudCBhc3BlY3RzIG9mIHRoZSBEYXRhc2V0LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPkdlbm9tZS1XaWRlIEFzc29jaWF0aW9uIFN0dWRpZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPkFua3lsb3Npbmcgc3BvbmR5bGl0aXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9wdWJsaWNhdGlvbiIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxhdGVkIFB1YmxpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlB1YmxpY2F0aW9ucyB0aGF0IHVzZSB0aGUgZGF0YSBmcm9tIHRoaXMgRGF0YXNldC4iPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij4xMC4xMDM4L25nLjI2NjcgZG9pOiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9ub3Rlc1RleHQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90ZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tcXVlc3Rpb24tc2lnbiB0b29sdGlwLWljb24iIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgZGF0YS1vcmlnaW5hbC10aXRsZT0iQWRkaXRpb25hbCBpbXBvcnRhbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIERhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+RXVyb3BlYW5fQ2FzZV9Db250cm9sX1Jlc3VsdHMudHh0OiBzdW1tYXJ5IGRhdGEgZm9yIEV1cm9wZWFuIGNvaG9ydCBBc2lhbl9DYXNlX0NvbnRyb2xfUmVzdWx0cy50eHQ6IHN1bW1hcnkgZGF0YSBmb3IgQXNpYW4gY29ob3J0IEV1cm9wZWFuX0FzaWFuX0Nhc2VfQ29udHJvbF9SZXN1bHRzLnR4dDogc3VtbWFyeSBkYXRhIGZvciBjb21iaW5lZCBjb2hvcnQ8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZGVwb3NpdG9yIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlcG9zaXRvcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgcGVyc29uIChGYW1pbHkgTmFtZSwgR2l2ZW4gTmFtZSkgb3IgdGhlIG5hbWUgb2YgdGhlIG9yZ2FuaXphdGlvbiB0aGF0IGRlcG9zaXRlZCB0aGlzIERhdGFzZXQgdG8gdGhlIHJlcG9zaXRvcnkuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48ZGl2IGNsYXNzPSJjb2wtc20tOSI+TGksIFpoaXhpdTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9kYXRlT2ZEZXBvc2l0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlcG9zaXQgRGF0ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEYXRlIHRoYXQgdGhlIERhdGFzZXQgd2FzIGRlcG9zaXRlZCBpbnRvIHRoZSByZXBvc2l0b3J5LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PGRpdiBjbGFzcz0iY29sLXNtLTkiPjIwMTctMDktMzA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dGVybXNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIiBkYXRhLWluZGV4PSIyIj4KICAgIDxkaXYgY2xhc3M9InBhbmVsLWdyb3VwIj4KICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2VUT1UiIGNsYXNzPSJwYW5lbC1oZWFkaW5nIHRleHQtaW5mbyI+CiAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZSDCoDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWNoZXZyb24tdXAiPjwvc3Bhbj4KICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlVE9VIiBjbGFzcz0iY29sbGFwc2UgaW4iPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dG91RnJhZ21lbnQiPgogICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXYWl2ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSB3YWl2ZXIgaW5mb3JtcyBkYXRhIGRvd25sb2FkZXJzIGhvdyB0aGV5IGNhbiB1c2UgdGhpcyBkYXRhc2V0LiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPk91ciA8YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5vcmcvYmVzdC1wcmFjdGljZXMvZGF0YXZlcnNlLWNvbW11bml0eS1ub3JtcyIgdGl0bGU9IkRhdGF2ZXJzZSBDb21tdW5pdHkgTm9ybXMgLSBEYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+Q29tbXVuaXR5IE5vcm1zPC9hPiBhcyB3ZWxsIGFzIGdvb2Qgc2NpZW50aWZpYyBwcmFjdGljZXMgZXhwZWN0IHRoYXQgcHJvcGVyIGNyZWRpdCBpcyBnaXZlbiB2aWEgY2l0YXRpb24uIFBsZWFzZSB1c2UgdGhlIGRhdGEgY2l0YXRpb24gYWJvdmUsIGdlbmVyYXRlZCBieSB0aGUgRGF0YXZlcnNlLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5DQzAgLSAiUHVibGljIERvbWFpbiBEZWRpY2F0aW9uIiA8aW1nIHNyYz0iL3Jlc291cmNlcy9pbWFnZXMvY2MwLnBuZyIgYWx0PSJDQzAiIGNsYXNzPSJ3YWl2ZXItQ0MwLWlubGluZSIgLz48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlR3Vlc3Rib29rIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICBHdWVzdGJvb2sgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZUd1ZXN0Ym9vayIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+CiAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9HdWVzdGJvb2siIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgR3Vlc3Rib29rCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlVzZXIgaW5mb3JtYXRpb24gKGkuZS4sIG5hbWUsIGVtYWlsLCBpbnN0aXR1dGlvbiwgYW5kIHBvc2l0aW9uKSB3aWxsIGJlIGNvbGxlY3RlZCB3aGVuIGZpbGVzIGFyZSBkb3dubG9hZGVkLiI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIGd1ZXN0Ym9vayBpcyBhc3NpZ25lZCB0byB0aGlzIGRhdGFzZXQsIHlvdSB3aWxsIG5vdCBiZSBwcm9tcHRlZCB0byBwcm92aWRlIGFueSBpbmZvcm1hdGlvbiBvbiBmaWxlIGRvd25sb2FkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8L2Rpdj48L2Rpdj4gCiAgICA8L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2siIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgbGFyZ2VQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2tfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlByZXZpZXcgR3Vlc3Rib29rPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIj4KICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgVXBvbiBkb3dubG9hZGluZyBmaWxlcyB0aGUgZ3Vlc3Rib29rIGFza3MgZm9yIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24uCiAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgIEd1ZXN0Ym9vayBOYW1lCiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTgiPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJmb3JtLWNvbnRyb2wtc3RhdGljIj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgQ29sbGVjdGVkIERhdGEKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJVc2VyIGRhdGEgY29sbGVjdGVkIGJ5IHRoZSBndWVzdGJvb2suIj48L3NwYW4+CiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTgiPgogICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJmb3JtLWNvbnRyb2wtc3RhdGljIj5BY2NvdW50IEluZm9ybWF0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRigndmlld0d1ZXN0Ym9vaycpLmhpZGUoKSIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9va19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJ2aWV3R3Vlc3Rib29rIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9vayIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIiBkYXRhLWluZGV4PSIzIj4KCiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgIC8qIFZlcnNpb24gdGFiOiBSZXRyaWV2ZSBkYXRhIGFmdGVyIHBhZ2UgbG9hZCAqLwogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgcHJlbG9hZF9tZXNzYWdlID0gIihMb2FkaW5nIHZlcnNpb25zLi4uKSI7CiAgICAgICAgICAgICQoJyNkYXRhc2V0Rm9ybVxcOnRhYlZpZXdcXDp2ZXJzaW9uc1RhYmxlX2RhdGEgdHIudWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UgdGQnKS50ZXh0KHByZWxvYWRfbWVzc2FnZSk7CiAgICAgICAgICAgIHBvc3RMb2FkVmVyc2lvblRhYkxpc3QoKTsKICAgICAgIH0pOwogICA8L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0MTY1MCIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5wb3N0TG9hZFZlcnNpb25UYWJMaXN0ID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpqX2lkdDE2NTAiLGY6ImRhdGFzZXRGb3JtIixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0MTY1MCIsdToiZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlIixwYTphcmd1bWVudHNbMF19KTt9PC9zY3JpcHQ+CiAgICA8ZGl2IGNsYXNzPSJ0ZXh0LXJpZ2h0IG1hcmdpbi1ib3R0b20iPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9ucyIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ2RldGFpbHNCbG9ja3MnKS5zaG93KCk7cG9zdF9kaWZmZXJlbmNlcygpOzt9fSk7cmV0dXJuIGZhbHNlOyIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+RGlyZWN0PC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV90YWJWaWV3X2NvbXBhcmVWZXJzaW9ucyIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9ucyJ9KTs8L3NjcmlwdD4KICAgIDwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZSIgY2xhc3M9InVpLWRhdGF0YWJsZSB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWRhdGF0YWJsZS10YWJsZXdyYXBwZXIiPjx0YWJsZSByb2xlPSJncmlkIj48dGhlYWQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZV9oZWFkIj48dHIgcm9sZT0icm93Ij48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZTpqX2lkdDE2NTYiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1zbS0xIHRleHQtY2VudGVyIiByb2xlPSJjb2x1bW5oZWFkZXIiIGFyaWEtbGFiZWw9IkRhdGFzZXQiIHNjb3BlPSJjb2wiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPkRhdGFzZXQ8L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZTpqX2lkdDE2NjgiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IiByb2xlPSJjb2x1bW5oZWFkZXIiIGFyaWEtbGFiZWw9IlN1bW1hcnkiIHNjb3BlPSJjb2wiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPlN1bW1hcnk8L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZTpqX2lkdDE3MTAiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1zbS0zIiByb2xlPSJjb2x1bW5oZWFkZXIiIGFyaWEtbGFiZWw9IkNvbnRyaWJ1dG9ycyIgc2NvcGU9ImNvbCI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+Q29udHJpYnV0b3JzPC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxNzEzIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMiIgcm9sZT0iY29sdW1uaGVhZGVyIiBhcmlhLWxhYmVsPSJQdWJsaXNoZWQiIHNjb3BlPSJjb2wiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPlB1Ymxpc2hlZDwvc3Bhbj48L3RoPjwvdHI+PC90aGVhZD48dGJvZHkgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZV9kYXRhIiBjbGFzcz0idWktZGF0YXRhYmxlLWRhdGEgdWktd2lkZ2V0LWNvbnRlbnQiPjx0ciBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UiPjx0ZCBjb2xzcGFuPSI0Ij5ObyByZWNvcmRzIGZvdW5kLjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRhdGFUYWJsZSIsInZlcnNpb25zVGFibGUiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlIixncm91cENvbHVtbkluZGV4ZXM6W119KTt9KTs8L3NjcmlwdD48L2Rpdj48L2Rpdj48aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iZGF0YXNldEZvcm06dGFiVmlld19hY3RpdmVJbmRleCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlld19hY3RpdmVJbmRleCIgdmFsdWU9IjAiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJUYWJWaWV3IiwiY29udGVudCIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3IixlZmZlY3REdXJhdGlvbjoibm9ybWFsIixzY3JvbGxhYmxlOmZhbHNlLGJlaGF2aW9yczp7dGFiQ2hhbmdlOmZ1bmN0aW9uKGV4dCxldmVudCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXciLGU6InRhYkNoYW5nZSIscDoiZGF0YXNldEZvcm06dGFiVmlldyIsdToiZGF0YXNldEZvcm06dGFiVmlldyIsb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe2JpbmRfYnN1aV9jb21wb25lbnRzKCk7O319LGV4dCk7fX19KTs8L3NjcmlwdD48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTgiIGNsYXNzPSJ1aS1ibG9ja3VpLWNvbnRlbnQgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktaGVscGVyLWhpZGRlbiB1aS1zaGFkb3ciPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcxOF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJCbG9ja1VJIiwiYmxvY2tEYXRhc2V0Rm9ybSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MTgiLGJsb2NrOiJkYXRhc2V0Rm9ybSJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZEludmFsaWQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZEludmFsaWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlc3RyaWN0ZWQgRmlsZXMgU2VsZWN0ZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFRoZSByZXN0cmljdGVkIGZpbGUocykgc2VsZWN0ZWQgbWF5IG5vdCBiZSBkb3dubG9hZGVkIGJlY2F1c2UgeW91IGhhdmUgbm90IGJlZW4gZ3JhbnRlZCBhY2Nlc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZG93bmxvYWRJbnZhbGlkJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkSW52YWxpZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZEludmFsaWQiLHtpZDoiZGF0YXNldEZvcm06ZG93bmxvYWRJbnZhbGlkIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRNaXhlZCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkTWl4ZWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlc3RyaWN0ZWQgRmlsZXMgU2VsZWN0ZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFRoZSByZXN0cmljdGVkIGZpbGUocykgc2VsZWN0ZWQgbWF5IG5vdCBiZSBkb3dubG9hZGVkIGJlY2F1c2UgeW91IGhhdmUgbm90IGJlZW4gZ3JhbnRlZCBhY2Nlc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8dGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+Q2xpY2sgQ29udGludWUgdG8gZG93bmxvYWQgdGhlIGZpbGVzIHlvdSBoYXZlIGFjY2VzcyB0byBkb3dubG9hZC48L3A+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzI3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MjciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdkb3dubG9hZE1peGVkJykuaGlkZSgpfSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3MjcmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzI3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MjciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzI3In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRignZG93bmxvYWRNaXhlZCcpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRNaXhlZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZE1peGVkIix7aWQ6ImRhdGFzZXRGb3JtOmRvd25sb2FkTWl4ZWQiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkZWxldGVDb25maXJtYXRpb24iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZWxldGVDb25maXJtYXRpb25fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlbGV0ZSBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZGF0YXNldCBhbmQgYWxsIG9mIGl0cyBmaWxlcz8gWW91IGNhbm5vdCB1bmRlbGV0ZSB0aGlzIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTczMSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzMxIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYmNuKHRoaXMsZXZlbnQsW2Z1bmN0aW9uKGV2ZW50KXtQRignZGVsZXRlQ29uZmlybWF0aW9uJykuaGlkZSgpfSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3MzEmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzMxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MzEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzMxIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRignZGVsZXRlQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkZWxldGVDb25maXJtYXRpb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVsZXRlQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlbGV0ZUNvbmZpcm1hdGlvbiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlbGV0ZVZlcnNpb25Db25maXJtYXRpb24iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWxldGUgRHJhZnQgVmVyc2lvbjwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGRyYWZ0IHZlcnNpb24/IEZpbGVzIHdpbGwgYmUgcmV2ZXJ0ZWQgdG8gdGhlIG1vc3QgcmVjZW50bHkgcHVibGlzaGVkIHZlcnNpb24uIFlvdSBjYW5ub3QgdW5kZWxldGUgdGhpcyBkcmFmdC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzM0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MzQiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpfSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3MzQmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzM0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3MzQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzM0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRignZGVsZXRlVmVyc2lvbkNvbmZpcm1hdGlvbicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGVsZXRlVmVyc2lvbkNvbmZpcm1hdGlvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlbGV0ZVZlcnNpb25Db25maXJtYXRpb24iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlVucHVibGlzaGVkIERhdGFzZXQgUHJpdmF0ZSBVUkw8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsUGFuZWxDYW5ub3RDcmVhdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFByaXZhdGUgVVJMIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB1bnB1Ymxpc2hlZCB2ZXJzaW9ucyBvZiBkYXRhc2V0cy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ3ByaXZhdGVVcmxDb25maXJtYXRpb24nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJwcml2YXRlVXJsQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRpc2FibGVQcml2YXRlVXJsQ29uZmlybWF0aW9uIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGlzYWJsZVByaXZhdGVVcmxDb25maXJtYXRpb25fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlVucHVibGlzaGVkIERhdGFzZXQgUHJpdmF0ZSBVUkw8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRpc2FibGUgdGhlIFByaXZhdGUgVVJMPyBJZiB5b3UgaGF2ZSBzaGFyZWQgdGhlIFByaXZhdGUgVVJMIHdpdGggb3RoZXJzIHRoZXkgd2lsbCBubyBsb25nZXIgYmUgYWJsZSB0byB1c2UgaXQgdG8gYWNjZXNzIHlvdXIgdW5wdWJsaXNoZWQgZGF0YXNldC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzU0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTQiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbicpLmhpZGUoKTt9LGZ1bmN0aW9uKGV2ZW50KXtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTc1NCZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOnByaXZhdGVVcmxQYW5lbCBtZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+WWVzLCBEaXNhYmxlIFByaXZhdGUgVVJMPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzU0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc1NCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2Rpc2FibGVQcml2YXRlVXJsQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdwcml2YXRlVXJsQ29uZmlybWF0aW9uJykuc2hvdygpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbl90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVsZXRlIEZpbGVzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBUaGUgZmlsZShzKSB3aWxsIGJlIGRlbGV0ZWQgYWZ0ZXIgeW91IGNsaWNrIG9uIHRoZSBEZWxldGUgYnV0dG9uLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBGaWxlcyB3aWxsIG5vdCBiZSByZW1vdmVkIGZyb20gcHJldmlvdXNseSBwdWJsaXNoZWQgdmVyc2lvbnMgb2YgdGhlIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2MCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzYwIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYmNuKHRoaXMsZXZlbnQsW2Z1bmN0aW9uKGV2ZW50KXtQRignZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uJykuaGlkZSgpfSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3NjAmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+RGVsZXRlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2MF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzYwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc2MCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2RlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpkZWxldGVTZWxlY3RlZEZpbGVDb25maXJtYXRpb24iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpjb21wdXRlSW52YWxpZCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmNvbXB1dGVJbnZhbGlkX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5Db21wdXRlPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBUaGlzIGRhdGFzZXQgY29udGFpbnMgcmVzdHJpY3RlZCBmaWxlcyB5b3UgbWF5IG5vdCBjb21wdXRlIG9uIGJlY2F1c2UgeW91IGhhdmUgbm90IGJlZW4gZ3JhbnRlZCBhY2Nlc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignY29tcHV0ZUludmFsaWQnKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06Y29tcHV0ZUludmFsaWRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiY29tcHV0ZUludmFsaWQiLHtpZDoiZGF0YXNldEZvcm06Y29tcHV0ZUludmFsaWQiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjMiIGNsYXNzPSJ1aS1vdXRwdXRwYW5lbCB1aS13aWRnZXQiPjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWFjY2Vzc2lvbiBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVhY2Nlc3Npb24/IFRoZSBzZWxlY3RlZCB2ZXJzaW9uKHMpIHdpbGwgbm8gbG9uZ2VyIGJlIHZpZXdhYmxlIGJ5IHRoZSBwdWJsaWMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc5MCIgdmFsdWU9IlllcyIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVhY2Nlc3Npb25CbG9jaycpLmhpZGUoKSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBObwogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb25fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlYWNjZXNzaW9uIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWFjY2Vzc2lvbiB0aGlzIGRhdGFzZXQ/IEl0IHdpbGwgbm8gbG9uZ2VyIGJlIHZpZXdhYmxlIGJ5IHRoZSBwdWJsaWMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc5MyIgdmFsdWU9IlllcyIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdkZWFjY2Vzc2lvbkJsb2NrJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBObwogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpoaWRkZW5SZWFzb25JbnB1dCIgbmFtZT0iZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXQiIHR5cGU9InRleHQiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIiAvPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmhpZGRlblJlYXNvbklucHV0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0IiwiaGlkZGVuUmVhc29uSW5wdXQiLHtpZDoiZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXQifSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06Y29tcGFyZVR3byIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5WZXJzaW9uIERpZmZlcmVuY2VzIERldGFpbHM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj4gPHNwYW4gY2xhc3M9InRleHQtZGFuZ2VyIj5QbGVhc2Ugc2VsZWN0IHR3byB2ZXJzaW9ucyB0byB2aWV3IHRoZSBkaWZmZXJlbmNlcy48L3NwYW4+PC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignY29tcGFyZVR3bycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImNvbXBhcmVUd28iLHtpZDoiZGF0YXNldEZvcm06Y29tcGFyZVR3byIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3MiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgbGFyZ2VQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5WZXJzaW9uIERpZmZlcmVuY2VzIERldGFpbHM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0idmVyc2lvbi10aXRsZSIgY2xhc3M9Im1hcmdpbi1ib3R0b20taGFsZiI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InZlcnNpb24tZGV0YWlscy1ibG9jayIgY2xhc3M9IiBjbGVhcmZpeCBtYXJnaW4tYm90dG9tLWhhbGYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHVsbC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCoAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb246IDxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExhc3QgVXBkYXRlZDogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InB1bGwtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbjogPGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGFzdCBVcGRhdGVkOiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIG1hcmdpbi1ib3R0b20iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGV0YWlsc0Jsb2NrcycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRG9uZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGV0YWlsc0Jsb2NrcyIse2lkOiJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBkb3dubG9hZGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yRG93bmxvYWQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvckRvd25sb2FkIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWQiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3NfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyBmb3IgYWNjZXNzIHJlcXVlc3QuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2Vzc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGUiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRlbGV0ZV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGRlbGV0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JEZWxldGUnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JEZWxldGUiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGUiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXN0cmljdF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgdW5yZXN0cmljdGVkIGZpbGUocykgdG8gYmUgcmVzdHJpY3RlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvclJlc3RyaWN0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVzdHJpY3RfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JSZXN0cmljdCIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCByZXN0cmljdGVkIGZpbGUocykgdG8gYmUgdW5yZXN0cmljdGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3RfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0Iix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGFfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBlZGl0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0VGFnc190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGVkaXRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvckVkaXRUYWdzJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdFRhZ3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JFZGl0VGFncyIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODgyIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJlZnJlc2hUYWdzQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0MTg4MiIsZjoiZGF0YXNldEZvcm0iLHU6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiLG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignZmlsZVRhZ3NQb3B1cCcpLnNob3coKTs7fSxwYTphcmd1bWVudHNbMF19KTt9PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkVkaXQgVGFnczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4ODMiPjwvc3Bhbj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuZm9jdXMoJ2RhdGFzZXRGb3JtOmZpbGVUYWdzTWVudURTJyk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj5TZWxlY3QgZXhpc3RpbmcgZmlsZSB0YWdzIG9yIGNyZWF0ZSBuZXcgdGFncyB0byBkZXNjcmliZSB5b3VyIGZpbGVzLiBFYWNoIGZpbGUgY2FuIGhhdmUgbW9yZSB0aGFuIG9uZSB0YWcuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIiBuYW1lPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIGRhdGFzZXRGb3JtJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignZmlsZVRhZ3NQb3B1cCcpLmhpZGUoKTt9fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+U2F2ZSBDaGFuZ2VzPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9maWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbiIse2lkOiJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbiJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uIiBuYW1lPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWxpbmsiIG9uY2xpY2s9IlByaW1lRmFjZXMuYmNuKHRoaXMsZXZlbnQsW2Z1bmN0aW9uKGV2ZW50KXtQRignZmlsZVRhZ3NQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTt9LGZ1bmN0aW9uKGV2ZW50KXtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24mcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2ZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJmaWxlVGFnc1BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NTaWduVXBMb2dJbiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NTaWduVXBMb2dJbl90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVxdWVzdCBBY2Nlc3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIHRleHQtZGFuZ2VyIj48L3NwYW4+wqAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LWRhbmdlciI+WW91IG5lZWQgdG8gPGEgaHJlZj0iL2RhdGF2ZXJzZXVzZXIueGh0bWw/ZWRpdE1vZGU9Q1JFQVRFJnJlZGlyZWN0UGFnZT0lMkZkYXRhc2V0LnhodG1sJTNGcGVyc2lzdGVudElkJTNEZG9pJTNBMTAuNzkxMCUyRkRWTiUyRk5KN1hTTyIgdGFyZ2V0PSJfc2VsZiIgdGl0bGU9IlNpZ24gVXAgZm9yIGEgRGF0YXZlcnNlIEFjY291bnQiPlNpZ24gVXA8L2E+IG9yIDxhIGhyZWY9Ii9sb2dpbnBhZ2UueGh0bWw/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGTko3WFNPIiB0YXJnZXQ9Il9zZWxmIiB0aXRsZT0iTG9nIGludG8geW91ciBEYXRhdmVyc2UgQWNjb3VudCI+TG9nIEluPC9hPiB0byByZXF1ZXN0IGFjY2VzcyB0byB0aGlzIGZpbGUuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdhY2Nlc3NTaWduVXBMb2dJbl9wb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NTaWduVXBMb2dJbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJhY2Nlc3NTaWduVXBMb2dJbl9wb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTphY2Nlc3NTaWduVXBMb2dJbiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmNvbmZpZ3VyZVRvb2xQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmNvbmZpZ3VyZVRvb2xQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CgogICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj48c3BhbiBjbGFzcz0idGV4dC1sZWZ0Ij4gPGJyLz48L3NwYW4+CiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxOTE4IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE5MTgiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdjb25maWd1cmVUb29sUG9wdXAnKS5oaWRlKCk7fSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE5MTgmcXVvdDssdTomcXVvdDttZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxOTE4X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE5MTgiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxOTE4In0pOzwvc2NyaXB0PgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWxpbmsiIG9uY2xpY2s9IlBGKCdjb25maWd1cmVUb29sUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmNvbmZpZ3VyZVRvb2xQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJjb25maWd1cmVUb29sUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06Y29uZmlndXJlVG9vbFBvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRhdGFzZXQgVGVybXM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxOTIwIj48L3NwYW4+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmZvY3VzKG51bGwsICdkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwJyk7fSk7PC9zY3JpcHQ+CiAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICBQbGVhc2UgY29uZmlybSBhbmQvb3IgY29tcGxldGUgdGhlIGluZm9ybWF0aW9uIG5lZWRlZCBiZWxvdyBpbiBvcmRlciB0byBjb250aW51ZS4KICAgICAgICA8L3A+PGRpdiBpZD0iZGF0YXNldEZvcm06Z3Vlc3Rib29rTWVzc2FnZXMiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgbWVzc2FnZVBhbmVsIj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTk5NyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxOTk3IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxOTk3JnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxOTk3JnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm06Z3Vlc3Rib29rVUlGcmFnbWVudCZxdW90OyxwYTpbe25hbWU6JnF1b3Q7RE9fR0JfVkFMSURBVElPTiZxdW90Oyx2YWx1ZTomcXVvdDt0cnVlJnF1b3Q7fV19KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5BY2NlcHQ8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxOTk3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE5OTciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxOTk3In0pOzwvc2NyaXB0PgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWxpbmsiIG9uY2xpY2s9IlBGKCdkb3dubG9hZFBvcHVwJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgIENhbmNlbAogICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRvd25sb2FkUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06ZG93bmxvYWRQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUGFja2FnZVBvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRQYWNrYWdlUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlBhY2thZ2UgRmlsZSBEb3dubG9hZDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnBhY2thZ2VQb3B1cERvd25sb2FkSW5mbyI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIj4KICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2sgbm8tbWFyZ2luLXRvcCI+VXNlIHRoZSBEb3dubG9hZCBVUkwgaW4gYSBXZ2V0IGNvbW1hbmQgb3IgYSBkb3dubG9hZCBtYW5hZ2VyIHRvIGRvd25sb2FkIHRoaXMgcGFja2FnZSBmaWxlLiBEb3dubG9hZCB2aWEgd2ViIGJyb3dzZXIgaXMgbm90IHJlY29tbWVuZGVkLiA8YSBocmVmPSJodHRwOi8vZ3VpZGVzLmRhdGF2ZXJzZS5vcmcvZW4vNC4xNS4xL3VzZXIvZmluZC11c2UtZGF0YS5odG1sI2Rvd25sb2FkaW5nLWEtZGF0YXZlcnNlLXBhY2thZ2UtdmlhLXVybCIgdGl0bGU9IlVzZXIgR3VpZGUgLSBEb3dubG9hZGluZyBhIERhdGF2ZXJzZSBQYWNrYWdlIHZpYSBVUkwiIHRhcmdldD0iX2JsYW5rIj5Vc2VyIEd1aWRlIC0gRG93bmxvYWRpbmcgYSBEYXRhdmVyc2UgUGFja2FnZSB2aWEgVVJMPC9hPgogICAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIG1hcmdpbi1ib3R0b20iPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjAxMyIgY2xhc3M9InVpLW91dHB1dHBhbmVsIHVpLXdpZGdldCI+CiAgICAgICAgPGRpdiBpZD0iZmlsZUluZm9JbmNsdWRlLWZpbGVzVGFibGUiIGNsYXNzPSJjb2wtc20tMTIgcm93Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icHVsbC1sZWZ0IGNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+PHNwYW4gY2xhc3M9Imljb24tb3RoZXIgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0xMCBjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmaWxlTmFtZU9yaWdpbmFsIj4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj48L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJzdGF0aWM6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InN0YXRpYzpmaWxlU2l6ZSI+IC0gPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJzdGF0aWM6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJzdGF0aWM6ZmlsZS1jaGVja3N1bSI+OiA8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIj4KICAgICAgICAgICAgPGxhYmVsPkRvd25sb2FkIFVSTDwvbGFiZWw+IAogICAgICAgICAgICA8cD48Y29kZT5odHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvYWNjZXNzL2RhdGFmaWxlLzwvY29kZT48L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIGJ1dHRvbi1ibG9jayBtYXJnaW4tdG9wIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZFBhY2thZ2VQb3B1cENhbmNlbEJ1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06ZG93bmxvYWRQYWNrYWdlUG9wdXBDYW5jZWxCdXR0b24iIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdkb3dubG9hZFBhY2thZ2VQb3B1cCcpLmhpZGUoKTt9LGZ1bmN0aW9uKGV2ZW50KXtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmRvd25sb2FkUGFja2FnZVBvcHVwQ2FuY2VsQnV0dG9uJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm06ZG93bmxvYWRQYWNrYWdlUG9wdXAmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRQYWNrYWdlUG9wdXBDYW5jZWxCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2Rvd25sb2FkUGFja2FnZVBvcHVwQ2FuY2VsQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOmRvd25sb2FkUGFja2FnZVBvcHVwQ2FuY2VsQnV0dG9uIn0pOzwvc2NyaXB0PgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUGFja2FnZVBvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRvd25sb2FkUGFja2FnZVBvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmRvd25sb2FkUGFja2FnZVBvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIGxhcmdlUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXF1ZXN0IEFjY2Vzczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgUGxlYXNlIGNvbmZpcm0gYW5kL29yIGNvbXBsZXRlIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgYmVsb3cgaW4gb3JkZXIgdG8gcmVxdWVzdCBhY2Nlc3MgdG8gZmlsZXMgaW4gdGhpcyBkYXRhc2V0LgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQyMDQ3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDIwNDciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDIwNDcmcXVvdDssdTomcXVvdDtAKFtpZCQ9cmVxdWVzdEFjY2Vzc1BvcHVwQnV0dG9uXSkmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7O319KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5BY2NlcHQ8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQyMDQ3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDIwNDciLHtpZDoiZGF0YXNldEZvcm06al9pZHQyMDQ3In0pOzwvc2NyaXB0PgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWxpbmsiIG9uY2xpY2s9IlBGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJyZXF1ZXN0QWNjZXNzUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWREYXRhU3Vic2V0UG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RG93bmxvYWQgRGF0YSBTdWJzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+TGluayBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjA1MyI+PC9zcGFuPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5mb2N1cygnZGF0YXNldEZvcm06ZGF0YXZlcnNlTGlua05hbWUnKTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj5FbnRlciB0aGUgbmFtZSBvZiB0aGUgZGF0YXZlcnNlIHlvdSB3b3VsZCBsaWtlIHRvIGxpbmsgdGhpcyBkYXRhc2V0IHRvLiBJZiB5b3UgbmVlZCB0byByZW1vdmUgdGhpcyBsaW5rIGluIHRoZSBmdXR1cmUsIHBsZWFzZSBjb250YWN0IDxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIwNTciIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQyMDU3JnF1b3Q7LHU6JnF1b3Q7Y29udGFjdERpYWxvZyZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ2xpbmtEYXRhc2V0Rm9ybScpLmhpZGUoKTtQRignY29udGFjdEZvcm0nKS5zaG93KCk7fX0pO3JldHVybiBmYWxzZTsiPkhhcnZhcmQgRGF0YXZlcnNlIFN1cHBvcnQ8L2E+LgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wteHMtMyBjb250cm9sLWxhYmVsIj5Zb3VyIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTgiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmxpbmtOYW1lQ29udGVudCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRhdGF2ZXJzZUxpbmtOYW1lIiBjbGFzcz0idWktYXV0b2NvbXBsZXRlIERyb3Bkb3duUG9wdXAiIHN0eWxlPSJ3aWR0aDo3NSU7Ij48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOmRhdGF2ZXJzZUxpbmtOYW1lX2lucHV0IiBuYW1lPSJkYXRhc2V0Rm9ybTpkYXRhdmVyc2VMaW5rTmFtZV9pbnB1dCIgdHlwZT0idGV4dCIgY2xhc3M9InVpLWF1dG9jb21wbGV0ZS1pbnB1dCB1aS1pbnB1dGZpZWxkIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iRW50ZXIgRGF0YXZlcnNlIE5hbWUiIHZhbHVlPSIiIC8+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpkYXRhdmVyc2VMaW5rTmFtZV9oaW5wdXQiIG5hbWU9ImRhdGFzZXRGb3JtOmRhdGF2ZXJzZUxpbmtOYW1lX2hpbnB1dCIgdHlwZT0iaGlkZGVuIiBhdXRvY29tcGxldGU9Im9mZiIgLz48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGF0YXZlcnNlTGlua05hbWVfcGFuZWwiIGNsYXNzPSJ1aS1hdXRvY29tcGxldGUtcGFuZWwgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1oZWxwZXItaGlkZGVuIHVpLXNoYWRvdyB1aS1pbnB1dC1vdmVybGF5IERyb3Bkb3duUG9wdXBQYW5lbCIgcm9sZT0ibGlzdGJveCI+PC9zcGFuPjwvc3Bhbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkYXRhdmVyc2VMaW5rTmFtZV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJBdXRvQ29tcGxldGUiLCJ3aWRnZXRfZGF0YXNldEZvcm1fZGF0YXZlcnNlTGlua05hbWUiLHtpZDoiZGF0YXNldEZvcm06ZGF0YXZlcnNlTGlua05hbWUiLGRlbGF5OjEwMDAsZm9yY2VTZWxlY3Rpb246dHJ1ZSxzY3JvbGxIZWlnaHQ6MTgwLGVtcHR5TWVzc2FnZToiTm8gbGlua2FibGUgZGF0YXZlcnNlcyBhdmFpbGFibGUuIixiZWhhdmlvcnM6e2l0ZW1TZWxlY3Q6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06ZGF0YXZlcnNlTGlua05hbWUiLGU6Iml0ZW1TZWxlY3QiLHA6ImRhdGFzZXRGb3JtOmRhdGF2ZXJzZUxpbmtOYW1lIixmaToiZGF0YXNldEZvcm06bGlua05hbWVDb250ZW50In0sZXh0KTt9LGl0ZW1VbnNlbGVjdDpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpkYXRhdmVyc2VMaW5rTmFtZSIsZToiaXRlbVVuc2VsZWN0IixwOiJkYXRhc2V0Rm9ybTpkYXRhdmVyc2VMaW5rTmFtZSIsZmk6ImRhdGFzZXRGb3JtOmxpbmtOYW1lQ29udGVudCJ9LGV4dCk7fX19KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIwNjUiIGFyaWEtbGl2ZT0icG9saXRlIiBjbGFzcz0idWktbWVzc2FnZSI+PC9kaXY+PC9kaXY+ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpzYXZlTGlua0J1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06c2F2ZUxpbmtCdXR0b24iIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpzYXZlTGlua0J1dHRvbiZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOmxpbmtOYW1lQ29udGVudCBAKFtpZCQ9TWVzc2FnZXNdKSZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7aWYgKGFyZ3MgJmFtcDsmYW1wOyAhYXJncy52YWxpZGF0aW9uRmFpbGVkKSBsaW5rRGF0YXNldENvbW1hbmQoKTs7fSxwYTpbe25hbWU6JnF1b3Q7RE9fRFNfTElOS19WQUxJREFUSU9OJnF1b3Q7LHZhbHVlOiZxdW90O3RydWUmcXVvdDt9XX0pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPlNhdmUgTGlua2VkIERhdGFzZXQ8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2F2ZUxpbmtCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX3NhdmVMaW5rQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOnNhdmVMaW5rQnV0dG9uIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRignbGlua0RhdGFzZXRGb3JtJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpsaW5rRGF0YXNldEZvcm1fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwibGlua0RhdGFzZXRGb3JtIix7aWQ6ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjA2OSIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5saW5rRGF0YXNldENvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDIwNjkiLGY6ImRhdGFzZXRGb3JtIix1OiJtZXNzYWdlUGFuZWwgQChbaWQkPU1lc3NhZ2VzXSkiLG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignbGlua0RhdGFzZXRGb3JtJykuaGlkZSgpOzt9LHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpjb21wdXRlQmF0Y2hMaXN0UG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06Y29tcHV0ZUJhdGNoTGlzdFBvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5Db21wdXRlIEJhdGNoPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXJlbW92ZSI+PC9zcGFuPkNsZWFyIEJhdGNoPGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQyMDcxIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDIwNzEiIGNsYXNzPSIgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MjA3MSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPnVpLWJ1dHRvbjwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIwNzFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MjA3MSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDIwNzEifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pjx0YWJsZSBpZD0iZGF0YXNldEZvcm06Y29tcHV0ZUJhdGNoIiBjbGFzcz0idGFibGUgdGFibGUtc3RyaXBlZCI+Cjx0aGVhZD4KPHRyPgo8dGggc2NvcGU9ImNvbCI+RGF0YXNldDwvdGg+Cjx0aCBzY29wZT0iY29sIj5EYXRhc2V0IFBlcnNpc3RlbnQgSUQ8L3RoPgo8dGggc2NvcGU9ImNvbCI+PC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8dHI+PHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj48L3Rib2R5Pgo8L3RhYmxlPgoKICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS87anNlc3Npb25pZD0zYmVhMDI5NWIyM2M4OTZhNmY2MDg1Yjc3NjI1IiBvbmNsaWNrPSJQRignY29tcHV0ZUJhdGNoTGlzdFBvcHVwJykuaGlkZSgpIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCI+Q29tcHV0ZSBCYXRjaDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2NvbXB1dGVCYXRjaExpc3RQb3B1cCcpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06Y29tcHV0ZUJhdGNoTGlzdFBvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImNvbXB1dGVCYXRjaExpc3RQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpjb21wdXRlQmF0Y2hMaXN0UG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RmlsZSBSZXN0cmljdGlvbnM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQyMDg4Ij48L3NwYW4+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmZvY3VzKCdkYXRhc2V0Rm9ybTp0ZXJtc0FjY2Vzc0lucHV0Jyk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtc0FjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1xdWVzdGlvbi1zaWduIHRvb2x0aXAtaWNvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJbmZvcm1hdGlvbiBvbiBob3cgYW5kIGlmIHVzZXJzIGNhbiBnYWluIGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48dGV4dGFyZWEgaWQ9ImRhdGFzZXRGb3JtOnRlcm1zQWNjZXNzSW5wdXQiIG5hbWU9ImRhdGFzZXRGb3JtOnRlcm1zQWNjZXNzSW5wdXQiIGNvbHM9IjIwIiByb3dzPSI1IiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPjwvdGV4dGFyZWE+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGVybXNBY2Nlc3NJbnB1dF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJJbnB1dFRleHRhcmVhIiwiaW5wdXR0b2EiLHtpZDoiZGF0YXNldEZvcm06dGVybXNBY2Nlc3NJbnB1dCIsYXV0b1Jlc2l6ZTpmYWxzZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfUmVxdWVzdEFjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVxdWVzdCBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gdG9vbHRpcC1pY29uIiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGRhdGEtb3JpZ2luYWwtdGl0bGU9IklmIGNoZWNrZWQsIHVzZXJzIGNhbiByZXF1ZXN0IGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzIiBjbGFzcz0idWktc2VsZWN0Ym9vbGVhbmNoZWNrYm94IHVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzX2lucHV0IiBuYW1lPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzX2lucHV0IiB0eXBlPSJjaGVja2JveCIgYXV0b2NvbXBsZXRlPSJvZmYiIGFyaWEtaGlkZGVuPSJ0cnVlIiBhcmlhLWNoZWNrZWQ9ImZhbHNlIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1sYWJlbCI+RW5hYmxlIGFjY2VzcyByZXF1ZXN0PC9zcGFuPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJTZWxlY3RCb29sZWFuQ2hlY2tib3giLCJpbnB1dGZhciIse2lkOiJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIwOTIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MjA5MiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmJjbih0aGlzLGV2ZW50LFtmdW5jdGlvbihldmVudCl7UEYoJ2FjY2Vzc1BvcHVwJykuaGlkZSgpfSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDIwOTImcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSBtZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQyMDkyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDIwOTIiLHtpZDoiZGF0YXNldEZvcm06al9pZHQyMDkyIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2FjY2Vzc1BvcHVwJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTphY2Nlc3NQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJhY2Nlc3NQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTphY2Nlc3NQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmlucmV2aWV3IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmlucmV2aWV3X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TdWJtaXQgZm9yIFJldmlldzwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBZb3Ugd2lsbCBub3QgYmUgYWJsZSB0byBtYWtlIGNoYW5nZXMgdG8gdGhpcyBkYXRhc2V0IHdoaWxlIGl0IGlzIGluIHJldmlldy4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjA5NiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQyMDk2IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYmNuKHRoaXMsZXZlbnQsW2Z1bmN0aW9uKGV2ZW50KXtQRignaW5yZXZpZXcnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7fSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDIwOTYmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+U3VibWl0PC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjA5Nl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQyMDk2Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MjA5NiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ2lucmV2aWV3JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTppbnJldmlld19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJpbnJldmlldyIse2lkOiJkYXRhc2V0Rm9ybTppbnJldmlldyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnB1Ymxpc2hDb25maXJtIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnB1Ymxpc2hDb25maXJtX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHB1Ymxpc2ggdGhpcyBkYXRhc2V0PyBPbmNlIHlvdSBkbyBzbyBpdCBtdXN0IHJlbWFpbiBwdWJsaXNoZWQuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48ZGl2IGlkPSJ0ZXJtcy1hZ3JlZW1lbnQtYmxvY2siIGNsYXNzPSJ3ZWxsIj5CeSBkZWZhdWx0IGRhdGFzZXRzIGFyZSBwdWJsaXNoZWQgd2l0aCB0aGUgQ0MwLeKAnFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbuKAnSB3YWl2ZXIuIExlYXJuIG1vcmUgYWJvdXQgdGhlIENDMCB3YWl2ZXIgPGEgdGFyZ2V0PV9ibGFuayBocmVmPSdodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9jaG9vc2UvemVyby8nPmhlcmU8L2E+LiA8YnI+PGJyPiBUbyBwdWJsaXNoIHdpdGggY3VzdG9tIFRlcm1zIG9mIFVzZSwgY2xpY2sgdGhlIENhbmNlbCBidXR0b24gYW5kIGdvIHRvIHRoZSBUZXJtcyB0YWIgZm9yIHRoaXMgZGF0YXNldC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIxMDIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MjEwMiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmJjbih0aGlzLGV2ZW50LFtmdW5jdGlvbihldmVudCl7UEYoJ3B1Ymxpc2hDb25maXJtJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpO30sZnVuY3Rpb24oZXZlbnQpe1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQyMTAyJnF1b3Q7fSk7cmV0dXJuIGZhbHNlO31dKTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjEwMl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQyMTAyIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MjEwMiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ3B1Ymxpc2hDb25maXJtJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpwdWJsaXNoQ29uZmlybV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJwdWJsaXNoQ29uZmlybSIse2lkOiJkYXRhc2V0Rm9ybTpwdWJsaXNoQ29uZmlybSIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnB1Ymxpc2hQYXJlbnQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06cHVibGlzaFBhcmVudF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+VGhpcyBkYXRhc2V0IGNhbm5vdCBiZSBwdWJsaXNoZWQgdW50aWwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvaGFydmFyZCIgdGl0bGU9IkhhcnZhcmQgRGF0YXZlcnNlIj5IYXJ2YXJkIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+IGlzIHB1Ymxpc2hlZC4gV291bGQgeW91IGxpa2UgdG8gcHVibGlzaCBib3RoIHJpZ2h0IG5vdz8KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPjxkaXYgaWQ9InRlcm1zLWFncmVlbWVudC1ibG9jayIgY2xhc3M9IndlbGwiPkJ5IGRlZmF1bHQgZGF0YXNldHMgYXJlIHB1Ymxpc2hlZCB3aXRoIHRoZSBDQzAt4oCcUHVibGljIERvbWFpbiBEZWRpY2F0aW9u4oCdIHdhaXZlci4gTGVhcm4gbW9yZSBhYm91dCB0aGUgQ0MwIHdhaXZlciAKPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2Nob29zZS96ZXJvLyIgcmVsPSJub2ZvbGxvdyI+aGVyZTwvYT4uIAo8YnI+Cjxicj4gVG8gcHVibGlzaCB3aXRoIGN1c3RvbSBUZXJtcyBvZiBVc2UsIGNsaWNrIHRoZSBDYW5jZWwgYnV0dG9uIGFuZCBnbyB0byB0aGUgVGVybXMgdGFiIGZvciB0aGlzIGRhdGFzZXQuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9uY2UgeW91IHB1Ymxpc2ggdGhpcyBkYXRhc2V0IGl0IG11c3QgcmVtYWluIHB1Ymxpc2hlZC4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjExNCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQyMTE0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYmNuKHRoaXMsZXZlbnQsW2Z1bmN0aW9uKGV2ZW50KXtQRigncHVibGlzaFBhcmVudCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTt9LGZ1bmN0aW9uKGV2ZW50KXtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MjExNCZxdW90O30pO3JldHVybiBmYWxzZTt9XSk7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5ZZXMsIFB1Ymxpc2ggQm90aDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIxMTRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MjExNCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDIxMTQifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWxpbmsiIG9uY2xpY2s9IlBGKCdwdWJsaXNoUGFyZW50JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpwdWJsaXNoUGFyZW50X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInB1Ymxpc2hQYXJlbnQiLHtpZDoiZGF0YXNldEZvcm06cHVibGlzaFBhcmVudCIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnJlbGVhc2VEcmFmdCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpyZWxlYXNlRHJhZnRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIxMTYiPjwvc3Bhbj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuZm9jdXMoJ2RhdGFzZXRGb3JtOm9wdGlvbnMnKTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlcHVibGlzaCB0aGlzIGRhdGFzZXQ/CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48ZGl2IGlkPSJ0ZXJtcy1hZ3JlZW1lbnQtYmxvY2siIGNsYXNzPSJ3ZWxsIj5CeSBkZWZhdWx0IGRhdGFzZXRzIGFyZSBwdWJsaXNoZWQgd2l0aCB0aGUgQ0MwLeKAnFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbuKAnSB3YWl2ZXIuIExlYXJuIG1vcmUgYWJvdXQgdGhlIENDMCB3YWl2ZXIgCjxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9jaG9vc2UvemVyby8iIHJlbD0ibm9mb2xsb3ciPmhlcmU8L2E+LiAKPGJyPgo8YnI+IFRvIHB1Ymxpc2ggd2l0aCBjdXN0b20gVGVybXMgb2YgVXNlLCBjbGljayB0aGUgQ2FuY2VsIGJ1dHRvbiBhbmQgZ28gdG8gdGhlIFRlcm1zIHRhYiBmb3IgdGhpcyBkYXRhc2V0LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBpZiB0aGlzIGlzIGEgbWlub3Igb3IgbWFqb3IgdmVyc2lvbiB1cGRhdGUuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+PHRhYmxlIGlkPSJkYXRhc2V0Rm9ybTpvcHRpb25zIiByb2xlPSJwcmVzZW50YXRpb24iIGNsYXNzPSJ1aS1zZWxlY3RvbmVyYWRpbyB1aS13aWRnZXQiPjx0cj48dGQ+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24gdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06b3B0aW9uczowIiBuYW1lPSJkYXRhc2V0Rm9ybTpvcHRpb25zIiB0eXBlPSJyYWRpbyIgdmFsdWU9IjEiIGNoZWNrZWQ9ImNoZWNrZWQiIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24tYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQgdWktc3RhdGUtYWN0aXZlIj48c3BhbiBjbGFzcz0idWktcmFkaW9idXR0b24taWNvbiB1aS1pY29uIHVpLWljb24tYnVsbGV0IHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48bGFiZWwgZm9yPSJkYXRhc2V0Rm9ybTpvcHRpb25zOjAiPk1pbm9yIFJlbGVhc2UgKDEuMSk8L2xhYmVsPjwvdGQ+PHRkPjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MSIgbmFtZT0iZGF0YXNldEZvcm06b3B0aW9ucyIgdHlwZT0icmFkaW8iIHZhbHVlPSIyIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uLWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktcmFkaW9idXR0b24taWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjxsYWJlbCBmb3I9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MSI+TWFqb3IgUmVsZWFzZSAoMi4wKTwvbGFiZWw+PC90ZD48L3RyPjwvdGFibGU+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06b3B0aW9uc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJTZWxlY3RPbmVSYWRpbyIsIndpZGdldF9kYXRhc2V0Rm9ybV9vcHRpb25zIix7aWQ6ImRhdGFzZXRGb3JtOm9wdGlvbnMifSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQyMTI4IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDIxMjgiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5iY24odGhpcyxldmVudCxbZnVuY3Rpb24oZXZlbnQpe1BGKCdyZWxlYXNlRHJhZnQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7fSxmdW5jdGlvbihldmVudCl7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDIxMjgmcXVvdDt9KTtyZXR1cm4gZmFsc2U7fV0pOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQyMTI4X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDIxMjgiLHtpZDoiZGF0YXNldEZvcm06al9pZHQyMTI4In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRigncmVsZWFzZURyYWZ0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdHlwZT0iYnV0dG9uIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWxlYXNlRHJhZnRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicmVsZWFzZURyYWZ0Iix7aWQ6ImRhdGFzZXRGb3JtOnJlbGVhc2VEcmFmdCIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOm1heU5vdFJlbGVhc2UiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06bWF5Tm90UmVsZWFzZV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCIgYXJpYS1sYWJlbD0iQ2xvc2UiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+VGhpcyBkYXRhc2V0IGNhbm5vdCBiZSBwdWJsaXNoZWQgdW50aWwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UueGh0bWw/YWxpYXM9aGFydmFyZCIgdGl0bGU9IkhhcnZhcmQgRGF0YXZlcnNlIj5IYXJ2YXJkIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+ICBpcyBwdWJsaXNoZWQgYnkgaXRzIGFkbWluaXN0cmF0b3IuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ21heU5vdFJlbGVhc2UnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB0eXBlPSJidXR0b24iPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06bWF5Tm90UmVsZWFzZV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJtYXlOb3RSZWxlYXNlIix7aWQ6ImRhdGFzZXRGb3JtOm1heU5vdFJlbGVhc2UiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTptYXlub3RQdWJsaXNoUGFyZW50IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOm1heW5vdFB1Ymxpc2hQYXJlbnRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPlRoaXMgZGF0YXNldCBjYW5ub3QgYmUgcHVibGlzaGVkIHVudGlsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlL2hhcnZhcmQiIHRpdGxlPSJIYXJ2YXJkIERhdGF2ZXJzZSI+SGFydmFyZCBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiBhbmQgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiAgYXJlIHB1Ymxpc2hlZC4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignbWF5bm90UHVibGlzaFBhcmVudCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTptYXlub3RQdWJsaXNoUGFyZW50X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsIm1heW5vdFB1Ymxpc2hQYXJlbnQiLHtpZDoiZGF0YXNldEZvcm06bWF5bm90UHVibGlzaFBhcmVudCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbmRCYWNrVG9Db250cmlidXRvciIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZW5kQmFja1RvQ29udHJpYnV0b3JfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJldHVybiB0byBBdXRob3I8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gUmV0dXJuIHRoaXMgZGF0YXNldCB0byBjb250cmlidXRvciBmb3IgbW9kaWZpY2F0aW9uLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIxNTAiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MjE1MCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmJjbih0aGlzLGV2ZW50LFtmdW5jdGlvbihldmVudCl7UEYoJ3NlbmRCYWNrVG9Db250cmlidXRvcicpLmhpZGUoKX0sZnVuY3Rpb24oZXZlbnQpe1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQyMTUwJnF1b3Q7fSk7cmV0dXJuIGZhbHNlO31dKTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjE1MF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQyMTUwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MjE1MCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tbGluayIgb25jbGljaz0iUEYoJ3NlbmRCYWNrVG9Db250cmlidXRvcicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHR5cGU9ImJ1dHRvbiI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VuZEJhY2tUb0NvbnRyaWJ1dG9yX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbmRCYWNrVG9Db250cmlidXRvciIse2lkOiJkYXRhc2V0Rm9ybTpzZW5kQmFja1RvQ29udHJpYnV0b3IiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDIxNTIiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmV0dXJuVG9BdXRob3JDb21tYW5kID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06al9pZHQyMTUyIixmOiJkYXRhc2V0Rm9ybSIscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmF4LmZhY2VzLlZpZXdTdGF0ZSIgaWQ9ImpfaWQxOmphdmF4LmZhY2VzLlZpZXdTdGF0ZTowIiB2YWx1ZT0iLTYyODU4ODIwNDUxNjYzMzU1MTQ6NDc4MzY4Nzc5NTYwODAyMTI2IiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9wb3ZlckhUTUwoJ0FsbG93ZWQgSFRNTCBUYWdzJyk7CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gb3BlbkRpYWxvZygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RldGFpbHMnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG9wZW5Db21wYXJlVHdvKCkgewogICAgICAgICAgICAgICAgICAgICAgICBQRignY29tcGFyZVR3bycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdENoZWNrQm94ZXMoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCd2ZXJzaW9uc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ICE9PSAyKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignY29tcGFyZVR3bycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9ImNvbXBhcmVWZXJzaW9ucyJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RmlsZXNTZWxlY3RlZEZvclJlc3RyaWN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yUmVzdHJpY3QnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYWNjZXNzUG9wdXAnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yVGFncygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ2ZpbGVzVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3RGaWxlc0ZvckVkaXRUYWdzJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFRhZ3NDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEZpbGVzU2VsZWN0ZWRGb3JEZWxldGUoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCdmaWxlc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RmlsZXNGb3JEZWxldGUnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yRWRpdE1ldGFkYXRhKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IC8vZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEkgY29tbWVudGVkIG91dCB0aGUgY29kZSBiZWxvdzsgaWYgdGhlcmUncwogICAgICAgICAgICAgICAgICAgICAgICAvLyAxIG9yIG1vcmUgZmlsZSBzZWxlY3RlZCwgSSBkb24ndCB3YW50IHRoaXMKICAgICAgICAgICAgICAgICAgICAgICAgLy8gbWV0aG9kIHRvIGFjdGl2YXRlIHRoZSBwOnJlbW90ZUNvbW1hbmQgdGhhdAogICAgICAgICAgICAgICAgICAgICAgICAvLyBpc3N1ZXMgdGhlIHJlZGlyZWN0IHRvIHRoZSBlZGl0IHBhZ2UgKG9yCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRvIGFueXRoaW5nIGVsc2UgZm9yIHRoYXQgbWF0dGVyKS4gRG9pbmcKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXQgdGhpcyB3YXkgd2FzLCBmb3Igc29tZSByZWFzb24sIGNhdXNpbmcKICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcyBwYWdlIHRvIHN0aWxsIHRyeSB0byByZW5kZXIgKD8/KSwgaW4KICAgICAgICAgICAgICAgICAgICAgICAgLy8gc29tZSBwYXJ0aWFsLCBoYWxmLWJha2VkIHN0YXRlIC0gd2l0aCBubwogICAgICAgICAgICAgICAgICAgICAgICAvLyB3b3JraW5nVmVyc2lvbiBwcmVzZW50LCBldGMuIC0gdGhhdCByZXN1bHRlZAogICAgICAgICAgICAgICAgICAgICAgICAvLyBpbiBzb21lIE5VTEwgcG9pbnRlcnMgaW4gdGhlIGxvZ3MuLi4gU28sCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGluc3RlYWQsIHRoZSByZWRpcmVjdCB3aWxsIGJlIGRvbmUgYnkgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGRpcmVjdCBhY3Rpb249IGF0dHJpYnV0ZSBpbiB0aGUgb3JpZ2luYWwKICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29tbWFuZEJ1dHRvbi4gLS0gTC5BLiA0LjIuMQogICAgICAgICAgICAgICAgICAgICAgICAvL29wZW5FZGl0RmlsZXNQYWdlQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAvL30KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlVGVtcGxhdGUoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9InVwZGF0ZVRlbXBsYXRlIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05ld2x5UmVzdHJpY3RlZCgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoJ2lucHV0W2lkJD0ic2hvd0FjY2Vzc1BvcHVwIl0nKS52YWwoKSA9PT0gJ3RydWUnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYWNjZXNzUG9wdXAnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJkYXRhc2V0U2F2ZSJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB1cGRhdGVIaWRkZW5SZWFzb24odGV4dEFyZWEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnaW5wdXRbaWQkPSJoaWRkZW5SZWFzb25JbnB1dCJdJykudmFsKHRleHRBcmVhLnZhbHVlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICA8L3NjcmlwdD4KICAgICAgICA8L2Rpdj4KCiAgICA8ZGl2IGlkPSJmb290ZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLXNtLTggc21hbGwiPgogICAgICAgICAgICAgICAgICAgIDxwPkNvcHlyaWdodCAmIzE2OTsgMjAxOSwgVGhlIFByZXNpZGVudCAmIzM4OyBGZWxsb3dzIG9mIEhhcnZhcmQgQ29sbGVnZcKgfMKgIDxhIGhyZWY9Imh0dHA6Ly9iZXN0LXByYWN0aWNlcy5kYXRhdmVyc2Uub3JnL2hhcnZhcmQtcG9saWNpZXMvaGFydmFyZC1wcml2YWN5LXBvbGljeS5odG1sIiB0YXJnZXQ9Il9ibGFuayI+UHJpdmFjeSBQb2xpY3k8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9wPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTQgdGV4dC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG93ZXJlZGJ5bG9nbyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlBvd2VyZWQgYnk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kYXRhdmVyc2Uub3JnLyIgdGl0bGU9IlRoZSBEYXRhdmVyc2UgUHJvamVjdCIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSIvcmVzb3VyY2VzL2ltYWdlcy9kYXRhdmVyc2VfcHJvamVjdF9sb2dvLnN2ZyIgd2lkdGg9IjExOCIgaGVpZ2h0PSI0MCIgb25lcnJvcj0idGhpcy5zcmM9Jy9yZXNvdXJjZXMvaW1hZ2VzL2RhdGF2ZXJzZXByb2plY3RfbG9nby5wbmcnIiBhbHQ9IlRoZSBEYXRhdmVyc2UgUHJvamVjdCIgLz48L2E+PHNwYW4gY2xhc3M9InZlcnNpb24iPnYuIDQuMTUuMSBidWlsZCAxMzc3LTcwMWI1NmI8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj48c3R5bGU+CiNmZWVkYmFja1RhYiB7CiAgICBwb3NpdGlvbjpmaXhlZDsKICAgIGJvdHRvbTowOwogICAgcmlnaHQ6NTBweDsKfQojZmVlZGJhY2tUYWIgYnV0dG9uLmJ0bi1mZWVkYmFjayB7CiAgICBtYXJnaW4tcmlnaHQ6ODlweDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKfQouYnRuLWZlZWRiYWNrIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzU1QjI4OwogIGJvcmRlci1jb2xvcjogI0M1NUIyODsKICBjb2xvcjogI2ZmZjsKfQouYnRuLWZlZWRiYWNrOmhvdmVyLAouYnRuLWZlZWRiYWNrOmZvY3VzLAouYnRuLWZlZWRiYWNrOmFjdGl2ZSwKLmJ0bi1mZWVkYmFjay5hY3RpdmUgewogIGJhY2tncm91bmQtY29sb3I6ICNiMDUxMjQ7CiAgYm9yZGVyLWNvbG9yOiAjOWI0NzFmOwogIGNvbG9yOiAjZmZmOwp9Ci5idG4tZmVlZGJhY2suZGlzYWJsZWQ6aG92ZXIsCi5idG4tZmVlZGJhY2suZGlzYWJsZWQ6Zm9jdXMsCi5idG4tZmVlZGJhY2suZGlzYWJsZWQ6YWN0aXZlLAouYnRuLWZlZWRiYWNrLmRpc2FibGVkLmFjdGl2ZSwKLmJ0bi1mZWVkYmFja1tkaXNhYmxlZF06aG92ZXIsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdOmZvY3VzLAouYnRuLWZlZWRiYWNrW2Rpc2FibGVkXTphY3RpdmUsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdLmFjdGl2ZSwKZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZmVlZGJhY2s6aG92ZXIsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrOmZvY3VzLApmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1mZWVkYmFjazphY3RpdmUsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrLmFjdGl2ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjogI0M1NUIyODsKICBib3JkZXItY29sb3I6ICNDNTVCMjg7Cn0KI2ZlZWRiYWNrVGFiQm9keSBkaXYucGFuZWwgewogICAgd2lkdGg6MTkwcHg7CiAgICBtYXJnaW46MDsKICAgIGJhY2tncm91bmQ6I0Y4RjhGODsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Cn0KPC9zdHlsZT4KCjxkaXYgaWQ9ImZlZWRiYWNrVGFiIj4KICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1mZWVkYmFjayIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI2ZlZWRiYWNrVGFiQm9keSI+CiAgICAgICAgRmVlZGJhY2sKICAgIDwvYnV0dG9uPgogICAgPGRpdiBpZD0iZmVlZGJhY2tUYWJCb2R5IiBjbGFzcz0iY29sbGFwc2UiPgogICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgSGVscCBpbXByb3ZlIERhdGF2ZXJzZTogVm9sdW50ZWVyIGZvciBvbmxpbmUgdXNhYmlsaXR5IHJlc2VhcmNoIQogICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1mZWVkYmFjayIgaHJlZj0iaHR0cHM6Ly9nb28uZ2wvZm9ybXMvcDd1dTNHZmlXWVNsSnJzaTEiIHJvbGU9ImJ1dHRvbiIgdGFyZ2V0PSJfYmxhbmsiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNmZWVkYmFja1RhYkJvZHkiPgogICAgICAgICAgICAgICAgICBMZWFybiBNb3JlCiAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4KPGRpdiBpZD0iYWpheFN0YXR1c1BhbmVsIj48ZGl2IGlkPSJhamF4U3RhdHVzUGFuZWxfc3RhcnQiIHN0eWxlPSJkaXNwbGF5Om5vbmUiPjxpbWcgc3JjPSIvcmVzb3VyY2VzL2ltYWdlcy9hamF4LWxvYWRpbmcuZ2lmO2pzZXNzaW9uaWQ9M2JlYTAyOTViMjNjODk2YTZmNjA4NWI3NzYyNSIgYWx0PSJMb2FkaW5nIiAvPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImFqYXhTdGF0dXNQYW5lbF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJBamF4U3RhdHVzIiwid2lkZ2V0X2FqYXhTdGF0dXNQYW5lbCIse2lkOiJhamF4U3RhdHVzUGFuZWwifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iY29udGFjdERpYWxvZyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJjb250YWN0RGlhbG9nX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5Db250YWN0IEhhcnZhcmQgRGF0YXZlcnNlIFN1cHBvcnQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIiBhcmlhLWxhYmVsPSJDbG9zZSI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48ZGl2IGlkPSJqX2lkdDIxNzgiPgo8Zm9ybSBpZD0iZW1haWxGb3JtIiBuYW1lPSJlbWFpbEZvcm0iIG1ldGhvZD0icG9zdCIgYWN0aW9uPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTNiZWEwMjk1YjIzYzg5NmE2ZjYwODViNzc2MjU/cGVyc2lzdGVudElkPWRvaToxMC43OTEwL0RWTi9OSjdYU08iIGNsYXNzPSJmb3JtLWhvcml6b250YWwiIGVuY3R5cGU9ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImVtYWlsRm9ybSIgdmFsdWU9ImVtYWlsRm9ybSIgLz4KPHNwYW4gaWQ9ImVtYWlsRm9ybTpqX2lkdDIxNzkiPjwvc3Bhbj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuZm9jdXMobnVsbCwgJ2NvbnRhY3REaWFsb2cnKTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWVzc2FnZVRvIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+VG88L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9Im1lc3NhZ2VUbyIgY2xhc3M9ImZvcm0tY29udHJvbC1zdGF0aWMiPkhhcnZhcmQgRGF0YXZlcnNlIFN1cHBvcnQ8L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJ1c2VyRW1haWwiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj5Gcm9tIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PGlucHV0IGlkPSJlbWFpbEZvcm06dXNlckVtYWlsIiBuYW1lPSJlbWFpbEZvcm06dXNlckVtYWlsIiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBzaXplPSIzMCIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTp1c2VyRW1haWxfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJ3aWRnZXRfZW1haWxGb3JtX3VzZXJFbWFpbCIse2lkOiJlbWFpbEZvcm06dXNlckVtYWlsIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWVzc2FnZVN1YmplY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj5TdWJqZWN0IDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48aW5wdXQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdCIgbmFtZT0iZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0IiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiIC8+PHNjcmlwdCBpZD0iZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0Iiwid2lkZ2V0X2VtYWlsRm9ybV9tZXNzYWdlU3ViamVjdCIse2lkOiJlbWFpbEZvcm06bWVzc2FnZVN1YmplY3QifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4gICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0idXNlck1lc3NhZ2UiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj5NZXNzYWdlIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48dGV4dGFyZWEgaWQ9ImVtYWlsRm9ybTp1c2VyTWVzc2FnZSIgbmFtZT0iZW1haWxGb3JtOnVzZXJNZXNzYWdlIiBjb2xzPSIyMCIgcm93cz0iMTAiIG1heGxlbmd0aD0iMjE0NzQ4MzY0NyIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0YXJlYSB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIGZvcm0tY29udHJvbCI+PC90ZXh0YXJlYT48c2NyaXB0IGlkPSJlbWFpbEZvcm06dXNlck1lc3NhZ2VfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0YXJlYSIsIndpZGdldF9lbWFpbEZvcm1fdXNlck1lc3NhZ2UiLHtpZDoiZW1haWxGb3JtOnVzZXJNZXNzYWdlIixhdXRvUmVzaXplOmZhbHNlfSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLW9mZnNldC0zIGNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+PHNwYW4gY2xhc3M9ImhpZ2hsaWdodEJvbGQiPlBsZWFzZSBmaWxsIHRoaXMgb3V0IHRvIHByb3ZlIHlvdSBhcmUgbm90IGEgcm9ib3QuPC9zcGFuPiA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4gKyAgPSA8aW5wdXQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3VtIiBuYW1lPSJlbWFpbEZvcm06bWVzc2FnZVN1bSIgdHlwZT0idGV4dCIgc2l6ZT0iNCIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiIC8+PHNjcmlwdCBpZD0iZW1haWxGb3JtOm1lc3NhZ2VTdW1fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJ3aWRnZXRfZW1haWxGb3JtX21lc3NhZ2VTdW0iLHtpZDoiZW1haWxGb3JtOm1lc3NhZ2VTdW0ifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJlbWFpbEZvcm06al9pZHQyMTk3IiBuYW1lPSJlbWFpbEZvcm06al9pZHQyMTk3IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZW1haWxGb3JtOmpfaWR0MjE5NyZxdW90Oyx1OiZxdW90O2VtYWlsRm9ybSZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7aWYgKGFyZ3MgJmFtcDsmYW1wOyAhYXJncy52YWxpZGF0aW9uRmFpbGVkKSBQRignY29udGFjdEZvcm0nKS5oaWRlKCk7O30scGE6W3tuYW1lOiZxdW90O0RPX1ZBTElEQVRJT04mcXVvdDssdmFsdWU6JnF1b3Q7dHJ1ZSZxdW90O31dLGZpOiZxdW90O2pfaWR0MjE3OCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPlNlbmQgTWVzc2FnZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJlbWFpbEZvcm06al9pZHQyMTk3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9lbWFpbEZvcm1fal9pZHQyMTk3Iix7aWQ6ImVtYWlsRm9ybTpqX2lkdDIxOTcifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1saW5rIiBvbmNsaWNrPSJQRignY29udGFjdEZvcm0nKS5oaWRlKCkiIHR5cGU9ImJ1dHRvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbAogICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPC9kaXY+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iamF2YXguZmFjZXMuVmlld1N0YXRlIiBpZD0ial9pZDE6amF2YXguZmFjZXMuVmlld1N0YXRlOjAiIHZhbHVlPSItNjI4NTg4MjA0NTE2NjMzNTUxNDo0NzgzNjg3Nzk1NjA4MDIxMjYiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPgo8L2Zvcm0+PC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iY29udGFjdERpYWxvZ19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJjb250YWN0Rm9ybSIse2lkOiJjb250YWN0RGlhbG9nIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvYnMvanMvYm9vdHN0cmFwLm1pbi5qcy54aHRtbD92ZXJzaW9uPTQuMTUuMSI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvaWUtY29tcGF0LmpzLnhodG1sP3ZlcnNpb249NC4xNS4xIj48L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9qcy9kdl9yZWJpbmRfYm9vdHN0cmFwX3VpLmpzLnhodG1sP3ZlcnNpb249NC4xNS4xIj48L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9qcy9vd2wuY2Fyb3VzZWwuanMueGh0bWw/dmVyc2lvbj00LjE1LjEiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2pxdWVyeS5tYXRjaEhlaWdodC5qcy54aHRtbD92ZXJzaW9uPTQuMTUuMSI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvanF1ZXJ5LnNoYXJycmUuanMueGh0bWw/dmVyc2lvbj00LjE1LjEiPjwvc2NyaXB0PiAgCiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvY2xpcGJvYXJkLm1pbi5qcy54aHRtbD92ZXJzaW9uPTQuMTUuMSI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgLy88IVtDREFUQVsKICAgICAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgLy8gTmF2YmFyIFNlYXJjaCBUb2dnbGUKICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjbmF2YmFyLXNlYXJjaC10b2dnbGUnLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50KCJsaSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAkKCJmb3JtLm5hdmJhci1mb3JtW3JvbGU9J3NlYXJjaCddIikuc2hvdygpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAkKCdib2R5JykuY2xpY2soZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoISQoZS50YXJnZXQpLmNsb3Nlc3QoImZvcm0ubmF2YmFyLWZvcm1bcm9sZT0nc2VhcmNoJ10iKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiZm9ybS5uYXZiYXItZm9ybVtyb2xlPSdzZWFyY2gnXSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiI25hdmJhci1zZWFyY2gtdG9nZ2xlIikucGFyZW50KCJsaSIpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgLy8gUmViaW5kIGJvb3RzdHJhcCBVSSBjb21wb25lbnRzCiAgICAgICAgICAgICAgICBiaW5kX2JzdWlfY29tcG9uZW50cygpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAvL11dPgogICAgICAgIDwvc2NyaXB0PjwvYm9keT4KPC9odG1sPg==
|
156
|
-
http_version:
|
157
|
-
recorded_at: Thu, 18 Jul 2019 06:22:01 GMT
|
158
|
-
recorded_with: VCR 3.0.3
|