bolognese 0.9.92 → 0.9.93
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +8 -8
- data/lib/bolognese/doi_utils.rb +1 -1
- data/lib/bolognese/readers/datacite_reader.rb +5 -8
- data/lib/bolognese/version.rb +1 -1
- data/lib/bolognese/writers/codemeta_writer.rb +1 -1
- data/spec/doi_utils_spec.rb +7 -7
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/default.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_bibtex.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_citation.yml +16 -17
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_crossref.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_datacite.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_jats.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_schema_org.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/default.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_bibtex.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_citation.yml +40 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite_json.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_jats.yml +37 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_schema_org.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/default.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_bibtex.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_datacite.yml +19 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/crossref.yml +7 -7
- data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/datacite.yml +18 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/author.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/no_author.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/single_author.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/with_organization.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_id.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_state.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_title.yml +37 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_state.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/validates_against_schema.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/not_a_doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/sandbox_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/url.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/crossref.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/datacite.yml +23 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/medra.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_a_valid_prefix.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_found.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi_with_protocol.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/dx_doi_org_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/force_test_resolver.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/https_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/test_resolver.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/test_resolver_http.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/doi_with_protocol.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/dx_doi_org_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/force_test_resolver.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/https_url.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/test_resolver.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_search/test_resolver_http.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref.yml +34 -46
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +33 -45
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite.yml +38 -50
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite_doi_http.yml +38 -50
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/github.yml +27 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/orcid.yml +27 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/schema_org.yml +28 -40
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +33 -45
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/bibtex.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/citeproc.yml +29 -38
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/codemeta.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crosscite.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crossref.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite_json.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/ris.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/schema_org.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_string/crosscite.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org/with_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/maremma.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/no_codemeta_json.yml +8 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/not_found_error.yml +8 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_chapter.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dataset.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/date_in_future.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article.yml +12 -12
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/not_found_error.yml +13 -13
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/posted_content.yml +14 -14
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/BlogPosting.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_test_system.yml +26 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_not_found.yml +29 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Dataset.yml +36 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding.yml +27 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_schema_version_4.yml +30 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Referee_report_in_test_system.yml +28 -42
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_only_full_name.yml +28 -37
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_scheme.yml +27 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_wrong_orcid_scheme.yml +40 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/date.yml +41 -48
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/empty_subject.yml +41 -41
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_schema_version_3.yml +27 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/is_identical_to.yml +36 -35
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/keywords_with_attributes.yml +28 -47
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/leading_and_trailing_whitespace.yml +41 -51
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorName.yml +37 -40
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_licenses.yml +27 -34
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/date.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year-month.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/date.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year-month.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_ORCID.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_jacow_org_scheme.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_multiple_name_identifier.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_no_ORCID.yml +17 -36
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_familyName.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_multiple_names_in_display-order.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_Thai.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_sort-order.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/hyper-authorship.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_organization.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_author_names_in_one_field.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_name_identifier.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation_and_country.yml +17 -48
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_role.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/only_familyName_and_givenName.yml +2 -2
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/harvard_dataverse.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/not_found_error.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/ornl_daac.yml +98 -66
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/pangaea.yml +2 -2
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/zenodo.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +10 -10
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/unknown_DOI_prefix.yml +8 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_alternate_identifiers/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_contributors/none.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_creators/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_dates/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_descriptions/insert.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_identifier/doi.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_person/creator_only_name.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publication_year/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publisher/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/related_identifier.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_rights_list/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_subjects/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_titles/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_version/insert.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_comma.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_family_name.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_known_given_name.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_no_info.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_type_organization.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/missing_comma.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/nil.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/overlapping_keys.yml +29 -38
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/valid.yml +30 -39
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/SICI_doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_force_datacite_sandbox.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_datacite_sandbox.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_url_without_doi_proxy.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_too_long.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_with_string.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_with_protocol.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/dx_doi_org_url.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/https_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/not_valid_doi_prefix.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/url_with_one_slash.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi_as_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/ftp.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/invalid_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_options.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/string.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url_with_utf-8.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/uri.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array_of_strings.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/first.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/hash.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/nil.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/string.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_only_keep_specific_tags.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_remove_a_tags.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org/with_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_https.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_with_spaces.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_wrong_id.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_www.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_as_url.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_with_protocol.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/only_prefix.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/DOI.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/ISSN.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/URL.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/string.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/BlogPosting.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/Dataset.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +17 -48
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/from_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/maremma.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/text.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_pages.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Dataset.yml +20 -28
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article.yml +6 -7
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +7 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Dataset.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/container_title.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/journal_article.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/maremma.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/multiple_abstracts.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/software.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_pages.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +17 -30
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/datacite_database_attributes.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/maremma.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_ORCID_ID.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crossref/from_DataCite.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/maremma.yml +8 -8
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/DOI_not_found.yml +19 -22
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Dataset_in_schema_4_0.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru.yml +17 -55
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru_with_doi_in_options.yml +17 -55
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/maremma.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_ORCID_ID.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_editor.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +17 -55
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/book_chapter.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/maremma.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation_schema_org.yml +15 -19
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_editor.yml +3 -3
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting.yml +17 -29
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +15 -15
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/Dataset.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/alternate_name.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/journal_article.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/maremma.yml +10 -10
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/with_pages.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_isReferencedBy.yml +17 -24
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/journal_article.yml +4 -4
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +11 -11
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_Citeproc_JSON.yml +18 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Crossref_DOI.yml +18 -18
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Dataset.yml +35 -42
- data/spec/writers/crosscite_writer_spec.rb +2 -2
- metadata +2 -5
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting.yml +0 -4824
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_DataCite_JSON.yml +0 -4773
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/DataONE.yml +0 -4773
@@ -2,13 +2,13 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri: https://
|
5
|
+
uri: https://search.datacite.org/api?fl=doi,url,xml,state,allocator_symbol,datacentre_symbol,media,minted,updated&q=doi:10.14463/gbv:873056442&wt=json
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Maremma - https://github.com/datacite/maremma
|
11
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
12
12
|
Accept:
|
13
13
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
14
|
response:
|
@@ -17,33 +17,26 @@ http_interactions:
|
|
17
17
|
message: OK
|
18
18
|
headers:
|
19
19
|
Date:
|
20
|
-
- Sun,
|
20
|
+
- Sun, 01 Apr 2018 09:08:52 GMT
|
21
21
|
Content-Type:
|
22
|
-
- application/
|
22
|
+
- application/json;charset=UTF-8
|
23
23
|
Connection:
|
24
24
|
- keep-alive
|
25
|
-
Status:
|
26
|
-
- 200 OK
|
27
|
-
X-Anonymous-Consumer:
|
28
|
-
- 'true'
|
29
|
-
Cache-Control:
|
30
|
-
- max-age=0, private, must-revalidate
|
31
|
-
Vary:
|
32
|
-
- Accept-Encoding, Origin
|
33
|
-
X-Request-Id:
|
34
|
-
- 8c0ba5d6-0d08-4a80-a3b7-0ed7331d1117
|
35
|
-
Etag:
|
36
|
-
- W/"91ef5320dd22b90ad4516f60fefa1e06"
|
37
|
-
X-Runtime:
|
38
|
-
- '0.087745'
|
39
|
-
X-Powered-By:
|
40
|
-
- Phusion Passenger 5.2.0
|
41
25
|
Server:
|
42
|
-
- nginx/1.
|
26
|
+
- nginx/1.10.3 (Ubuntu)
|
27
|
+
Access-Control-Allow-Origin:
|
28
|
+
- "*"
|
29
|
+
Access-Control-Allow-Methods:
|
30
|
+
- GET, POST, PUT, DELETE, OPTIONS
|
31
|
+
Access-Control-Allow-Headers:
|
32
|
+
- DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,Authorization
|
33
|
+
Access-Control-Expose-Headers:
|
34
|
+
- DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range,Authorization
|
43
35
|
body:
|
44
36
|
encoding: ASCII-8BIT
|
45
|
-
string:
|
46
|
-
|
37
|
+
string: '{"responseHeader":{"status":0,"QTime":2},"response":{"numFound":1,"start":0,"docs":[{"datacentre_symbol":"TIB.TIB","xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtMi4yIiB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly9kYXRhY2l0ZS5vcmcvc2NoZW1hL2tlcm5lbC0yLjIgaHR0cDovL3NjaGVtYS5kYXRhY2l0ZS5vcmcvbWV0YS9rZXJuZWwtMi4yL21ldGFkYXRhLnhzZCI+CiAgICAgIDxpZGVudGlmaWVyIGlkZW50aWZpZXJUeXBlPSJET0kiPjEwLjE0NDYzL0dCVjo4NzMwNTY0NDI8L2lkZW50aWZpZXI+CiAgICAgIDxjcmVhdG9ycz4KICAgICAgICAgPGNyZWF0b3I+CiAgICAgICAgICAgIDxjcmVhdG9yTmFtZT5TY2h1bWFjaGVyLCBILiBDLjwvY3JlYXRvck5hbWU+CiAgICAgICAgIDwvY3JlYXRvcj4KICAgICAgICAgPGNyZWF0b3I+CiAgICAgICAgICAgIDxjcmVhdG9yTmFtZT5XYXJuc3RvcmZmLCBHLiBILiBMLjwvY3JlYXRvck5hbWU+CiAgICAgICAgIDwvY3JlYXRvcj4KICAgICAgPC9jcmVhdG9ycz4KICAgICAgPHRpdGxlcz4KICAgICAgICAgPHRpdGxlPlNhbW1sdW5nIHZvbiBIw7xsZnN0YWZlbG48L3RpdGxlPgogICAgICA8L3RpdGxlcz4KICAgICAgPHB1Ymxpc2hlcj5UZWNobmlzY2hlIEluZm9ybWF0aW9uc2JpYmxpb3RoZWsgKFRJQik8L3B1Ymxpc2hlcj4KICAgICAgPHB1YmxpY2F0aW9uWWVhcj4yMDE2PC9wdWJsaWNhdGlvblllYXI+CiAgICAgIDxzdWJqZWN0cz4KICAgICAgICAgPHN1YmplY3Q+SGlsZnN0YWZlbG48L3N1YmplY3Q+CiAgICAgICAgIDxzdWJqZWN0IHN1YmplY3RTY2hlbWU9ImxpbnNlYXJjaCI+RWFydGggU2NpZW5jZTwvc3ViamVjdD4KICAgICAgICAgPHN1YmplY3Qgc3ViamVjdFNjaGVtZT0iYmsiPjM4LjczIEdlb2TDpHNpZTwvc3ViamVjdD4KICAgICAgPC9zdWJqZWN0cz4KICAgICAgPGNvbnRyaWJ1dG9ycz4KICAgICAgICAgPGNvbnRyaWJ1dG9yIGNvbnRyaWJ1dG9yVHlwZT0iSG9zdGluZ0luc3RpdHV0aW9uIj4KICAgICAgICAgICAgPGNvbnRyaWJ1dG9yTmFtZT5USUIgLSBUZWNobmlzY2hlIEluZm9ybWF0aW9uc2JpYmxpb3RoZWsgVW5pdmVyc2l0w6R0c2JpYmxpb3RoZWsgSGFubm92ZXI8L2NvbnRyaWJ1dG9yTmFtZT4KICAgICAgICAgPC9jb250cmlidXRvcj4KICAgICAgICAgPGNvbnRyaWJ1dG9yIGNvbnRyaWJ1dG9yVHlwZT0iRGF0YU1hbmFnZXIiPgogICAgICAgICAgICA8Y29udHJpYnV0b3JOYW1lPlRlY2huaXNjaGUgSW5mb3JtYXRpb25zYmlibGlvdGhlayBVbml2ZXJzaXTDpHRzYmlibGlvdGhlayBIYW5ub3ZlcjwvY29udHJpYnV0b3JOYW1lPgogICAgICAgICA8L2NvbnRyaWJ1dG9yPgogICAgICA8L2NvbnRyaWJ1dG9ycz4KICAgICAgPGRhdGVzPgogICAgICAgICA8ZGF0ZSBkYXRlVHlwZT0iSXNzdWVkIj4yMDE2PC9kYXRlPgogICAgICAgICA8ZGF0ZSBkYXRlVHlwZT0iQ29weXJpZ2h0ZWQiPjIwMTY8L2RhdGU+CiAgICAgIDwvZGF0ZXM+CiAgICAgIDxsYW5ndWFnZT5kZTwvbGFuZ3VhZ2U+CiAgICAgIDxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iVGV4dCI+Qm9vazwvcmVzb3VyY2VUeXBlPgogICAgICA8YWx0ZXJuYXRlSWRlbnRpZmllcnM+CiAgICAgICAgIDxhbHRlcm5hdGVJZGVudGlmaWVyIGFsdGVybmF0ZUlkZW50aWZpZXJUeXBlPSJmaXJzdGlkIj5HQlY6ODczMDU2NDQyPC9hbHRlcm5hdGVJZGVudGlmaWVyPgogICAgICAgICA8YWx0ZXJuYXRlSWRlbnRpZmllciBhbHRlcm5hdGVJZGVudGlmaWVyVHlwZT0icHBuIj44NzMwNTY0NDI8L2FsdGVybmF0ZUlkZW50aWZpZXI+CiAgICAgICAgIDxhbHRlcm5hdGVJZGVudGlmaWVyIGFsdGVybmF0ZUlkZW50aWZpZXJUeXBlPSJmdHgtaWQiPlRJQktBVDo4NzMwNTY0NDI8L2FsdGVybmF0ZUlkZW50aWZpZXI+CiAgICAgIDwvYWx0ZXJuYXRlSWRlbnRpZmllcnM+CiAgICAgIDxzaXplcz4KICAgICAgICAgPHNpemU+MSBPbmxpbmUtUmVzc291cmNlICgyMjEsIDMxIFNlaXRlbik8L3NpemU+CiAgICAgIDwvc2l6ZXM+CiAgICAgIDxmb3JtYXRzPgogICAgICAgICA8Zm9ybWF0PmFwcGxpY2F0aW9uL3BkZjwvZm9ybWF0PgogICAgICA8L2Zvcm1hdHM+CiAgICAgIDx2ZXJzaW9uPjEuMDwvdmVyc2lvbj4KICAgICAgPHJpZ2h0cz5UZWNobmlzY2hlIEluZm9ybWF0aW9uc2JpYmxpb3RoZWsgKFRJQik8L3JpZ2h0cz4KICAgPC9yZXNvdXJjZT4=","allocator_symbol":"TIB","minted":"2016-11-24T08:00:30Z","state":"findable","updated":"2018-01-19T01:49:36Z","doi":"10.14463/GBV:873056442"}]}}
|
38
|
+
|
39
|
+
'
|
47
40
|
http_version:
|
48
|
-
recorded_at: Sun,
|
41
|
+
recorded_at: Sun, 01 Apr 2018 09:08:52 GMT
|
49
42
|
recorded_with: VCR 3.0.3
|
data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/only_familyName_and_givenName.yml
CHANGED
@@ -19,7 +19,7 @@ http_interactions:
|
|
19
19
|
Server:
|
20
20
|
- PANGAEA/1.0
|
21
21
|
Date:
|
22
|
-
- Sun,
|
22
|
+
- Sun, 01 Apr 2018 09:08:51 GMT
|
23
23
|
Vary:
|
24
24
|
- Accept
|
25
25
|
Link:
|
@@ -41,5 +41,5 @@ http_interactions:
|
|
41
41
|
string: !binary |-
|
42
42
|
PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQo8aGVhZD4KPG1ldGEgY2hhcnNldD0iVVRGLTgiPg0KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLCBtaW5pbXVtLXNjYWxlPTEsIG1heGltdW0tc2NhbGU9MSwgdXNlci1zY2FsYWJsZT1ubyI+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6NDAwLDYwMCw0MDBpdGFsaWMsNzAwLDcwMGl0YWxpYyw2MDBpdGFsaWMsMzAwLDMwMGl0YWxpYyw4MDAsODAwaXRhbGljIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fzc2V0cy92LjMwM2YzMWRkYjczZjBlOTg1MDgyZWY1NmZhYzY4YWE4L2Jvb3RzdHJhcC0yNGNvbC9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3YuMzAzZjMxZGRiNzNmMGU5ODUwODJlZjU2ZmFjNjhhYTgvY3NzL3BhbmdhZWEuY3NzIj4KPCEtLVtpZiBsdGUgSUUgOV0+DQo8c3R5bGU+I3RvcGljcy1wdWxsZG93bi13cmFwcGVyIGxhYmVsOmFmdGVyIHsgZGlzcGxheTpub25lOyB9PC9zdHlsZT4NCjwhW2VuZGlmXS0tPg0KPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fzc2V0cy92LjMwM2YzMWRkYjczZjBlOTg1MDgyZWY1NmZhYzY4YWE4L2Zhdmljb24uaWNvIj4NCjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS9hc3NldHMvdi4zMDNmMzFkZGI3M2YwZTk4NTA4MmVmNTZmYWM2OGFhOC9mYXZpY29uLmljbyIgdHlwZT0iaW1hZ2Uvdm5kLm1pY3Jvc29mdC5pY29uIj4NCjxsaW5rIHJlbD0iaW1hZ2Vfc3JjIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9Imh0dHBzOi8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3NvY2lhbC1pY29ucy9wYW5nYWVhLXNoYXJlLnBuZyI+DQo8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3NvY2lhbC1pY29ucy9wYW5nYWVhLXNoYXJlLnBuZyI+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeS8xLjEyLjQvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2pxdWVyeS5tYXRjaEhlaWdodC8wLjcuMC9qcXVlcnkubWF0Y2hIZWlnaHQtbWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLy93d3cucGFuZ2FlYS5kZS9hc3NldHMvdi4zMDNmMzFkZGI3M2YwZTk4NTA4MmVmNTZmYWM2OGFhOC9ib290c3RyYXAtMjRjb2wvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3YuMzAzZjMxZGRiNzNmMGU5ODUwODJlZjU2ZmFjNjhhYTgvanMvZGF0YWNvbWJvLW1pbi5qcyI+PC9zY3JpcHQ+Cjx0aXRsZT5Kb2hhbnNzb24sIEUgZXQgYWwuICgyMDE0KTogSHlkcm9sb2dpY2FsIGFuZCBtZXRlb3JvbG9naWNhbCBpbnZlc3RpZ2F0aW9ucyBpbiBhIGxha2UgbmVhciBLYW5nZXJsdXNzdWFxLCB3ZXN0IEdyZWVubGFuZDwvdGl0bGU+CjxtZXRhIG5hbWU9InRpdGxlIiBjb250ZW50PSJIeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIGludmVzdGlnYXRpb25zIGluIGEgbGFrZSBuZWFyIEthbmdlcmx1c3N1YXEsIHdlc3QgR3JlZW5sYW5kIiAvPgo8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IkpvaGFuc3NvbiwgRW1tYTsgQmVyZ2x1bmQsIFN0ZW47IExpbmRib3JnLCBUb2JpYXM7IFBldHJvbmUsIEpvaGFubmVzOyB2YW4gQXMsIERpcms7IEd1c3RhZnNzb24sIExhcnMtR8O2cmFuOyBOw6RzbHVuZCwgSmVucy1PdmU7IExhdWRvbiwgSGphbG1hciIgLz4KPG1ldGEgbmFtZT0iZGF0ZSIgY29udGVudD0iMjAxNC0wOS0yNSIgLz4KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IkBzdXBwbGVtZW50OyBAY2l0YWJsZTsgQGNpdGFibGVXaXRoQ2hpbGRzOyBAYXV0aG9yNTI4NDU7IEBhdXRob3I1Mjg0NjsgQGF1dGhvcjUyODQ3OyBAYXV0aG9yNTI4NDg7IEBhdXRob3I1Mjg0OTsgQGF1dGhvcjUyODUwOyBAYXV0aG9yNTI4NTE7IEBhdXRob3I1Mjg1MjsgQGV2ZW50Mjc0NTk3NzsgQHRlcm0zMTIyMzsgQGdlb2NvZGUxNjAwOyBAZ2VvY29kZTE2MDE7IEBqb3VybmFsMTY1OTA7IEBsaWNlbnNlMTsgQHByb2plY3Q0MjI2OyBAcmVmNjU0MDg7IEByZWY2NTQzNTsgQHJlZjY1NDc3OyBAdG9wb3R5cGUyIiAvPgo8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iSm9oYW5zc29uLCBFbW1hOyBCZXJnbHVuZCwgU3RlbjsgTGluZGJvcmcsIFRvYmlhczsgUGV0cm9uZSwgSm9oYW5uZXM7IHZhbiBBcywgRGlyazsgR3VzdGFmc3NvbiwgTGFycy1Hw7ZyYW47IE7DpHNsdW5kLCBKZW5zLU92ZTsgTGF1ZG9uLCBIamFsbWFyICgyMDE0KTogSHlkcm9sb2dpY2FsIGFuZCBtZXRlb3JvbG9naWNhbCBpbnZlc3RpZ2F0aW9ucyBpbiBhIGxha2UgbmVhciBLYW5nZXJsdXNzdWFxLCB3ZXN0IEdyZWVubGFuZC4gUEFOR0FFQSwgaHR0cHM6Ly9kb2kub3JnLzEwLjE1OTQvUEFOR0FFQS44MzYxNzgsIFN1cHBsZW1lbnQgdG86IEpvaGFuc3NvbiwgRSBldCBhbC4gKDIwMTUpOiBIeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIGludmVzdGlnYXRpb25zIGluIGEgcGVyaWdsYWNpYWwgbGFrZSBjYXRjaG1lbnQgbmVhciBLYW5nZXJsdXNzdWFxLCB3ZXN0IEdyZWVubGFuZCAtIHByZXNlbnRhdGlvbiBvZiBhIG5ldyBtdWx0aS1wYXJhbWV0ZXIgZGF0YSBzZXQuIEVhcnRoIFN5c3RlbSBTY2llbmNlIERhdGEsIDcoMSksIDkzLTEwOCwgaHR0cHM6Ly9kb2kub3JnLzEwLjUxOTQvZXNzZC03LTkzLTIwMTUiIC8+CjxtZXRhIG5hbWU9Imdlby5wb3NpdGlvbiIgY29udGVudD0iNjcuMTI1OTQwOy01MC4xODAzNzAiIC8+CjxtZXRhIG5hbWU9IklDQk0iIGNvbnRlbnQ9IjY3LjEyNTk0MCwgLTUwLjE4MDM3MCIgLz4KPCEtLUJFR0lOOiBEdWJsaW4gQ29yZSBkZXNjcmlwdGlvbi0tPgo8bGluayByZWw9InNjaGVtYS5EQyIgaHJlZj0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIC8+CjxsaW5rIHJlbD0ic2NoZW1hLkRDVEVSTVMiIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYy90ZXJtcy8iIC8+CjxtZXRhIG5hbWU9IkRDLnRpdGxlIiBjb250ZW50PSJIeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIGludmVzdGlnYXRpb25zIGluIGEgbGFrZSBuZWFyIEthbmdlcmx1c3N1YXEsIHdlc3QgR3JlZW5sYW5kIiAvPgo8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJKb2hhbnNzb24sIEVtbWEiIC8+CjxtZXRhIG5hbWU9IkRDLmNyZWF0b3IiIGNvbnRlbnQ9IkJlcmdsdW5kLCBTdGVuIiAvPgo8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJMaW5kYm9yZywgVG9iaWFzIiAvPgo8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJQZXRyb25lLCBKb2hhbm5lcyIgLz4KPG1ldGEgbmFtZT0iREMuY3JlYXRvciIgY29udGVudD0idmFuIEFzLCBEaXJrIiAvPgo8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJHdXN0YWZzc29uLCBMYXJzLUfDtnJhbiIgLz4KPG1ldGEgbmFtZT0iREMuY3JlYXRvciIgY29udGVudD0iTsOkc2x1bmQsIEplbnMtT3ZlIiAvPgo8bWV0YSBuYW1lPSJEQy5jcmVhdG9yIiBjb250ZW50PSJMYXVkb24sIEhqYWxtYXIiIC8+CjxtZXRhIG5hbWU9IkRDLnB1Ymxpc2hlciIgY29udGVudD0iUEFOR0FFQSIgLz4KPG1ldGEgbmFtZT0iREMuc291cmNlIiBjb250ZW50PSJTdXBwbGVtZW50IHRvOiBKb2hhbnNzb24sIEUgZXQgYWwuICgyMDE1KTogSHlkcm9sb2dpY2FsIGFuZCBtZXRlb3JvbG9naWNhbCBpbnZlc3RpZ2F0aW9ucyBpbiBhIHBlcmlnbGFjaWFsIGxha2UgY2F0Y2htZW50IG5lYXIgS2FuZ2VybHVzc3VhcSwgd2VzdCBHcmVlbmxhbmQgLSBwcmVzZW50YXRpb24gb2YgYSBuZXcgbXVsdGktcGFyYW1ldGVyIGRhdGEgc2V0LiBFYXJ0aCBTeXN0ZW0gU2NpZW5jZSBEYXRhLCA3KDEpLCA5My0xMDgsIGh0dHBzOi8vZG9pLm9yZy8xMC41MTk0L2Vzc2QtNy05My0yMDE1IiAvPgo8bWV0YSBuYW1lPSJEQy5kYXRlIiBjb250ZW50PSIyMDE0LTA5LTI1IiBzY2hlbWU9IkRDVEVSTVMuVzNDRFRGIiAvPgo8bWV0YSBuYW1lPSJEQy50eXBlIiBjb250ZW50PSJEYXRhc2V0IiAvPgo8bWV0YSBuYW1lPSJEQy5sYW5ndWFnZSIgY29udGVudD0iZW4iIHNjaGVtZT0iRENURVJNUy5SRkMzMDY2IiAvPgo8bWV0YSBuYW1lPSJEQ1RFUk1TLmxpY2Vuc2UiIHNjaGVtZT0iRENURVJNUy5VUkkiIGNvbnRlbnQ9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzMuMC8iIC8+CjxtZXRhIG5hbWU9IkRDLmlkZW50aWZpZXIiIGNvbnRlbnQ9Imh0dHBzOi8vZG9pLm9yZy8xMC4xNTk0L1BBTkdBRUEuODM2MTc4IiBzY2hlbWU9IkRDVEVSTVMuVVJJIiAvPgo8bWV0YSBuYW1lPSJEQy5mb3JtYXQiIGNvbnRlbnQ9ImFwcGxpY2F0aW9uL3ppcCwgNTY2My4wIGtCeXRlcyIgLz4KPG1ldGEgbmFtZT0iREMucmVsYXRpb24iIGNvbnRlbnQ9Ik1hcCBvZiBUd28gQm9hdCBMYWtlIGluIEdyZWVubGFuZCAoanBnIDEzIE1CKSB3aXRoIHBvc2l0aW9uIG9mIHNhbXBsaW5nIHNpdGVzIChVUkk6IGh0dHA6Ly9zdG9yZS5wYW5nYWVhLmRlL1B1YmxpY2F0aW9ucy9Kb2hhbnNzb25FX2V0X2FsXzIwMTQvdHdvYm9hdGxha2VfZ3JlZW5sYW5kLmpwZykiIC8+CjxtZXRhIG5hbWU9IkRDLnJlbGF0aW9uIiBjb250ZW50PSJUaW1lIGxhcHMgcGhvdG9zIG9mIGxha2UgMjAxMi0wOS0wNSB0byAyMDEzLTA4LTE0IChtb3YgZmlsZSwgemlwcGVkIDIwNSBNQikgKFVSSTogaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9UaW1lbGFwc2VfVEJMLnppcCkiIC8+CjwhLS1FTkQ6IER1YmxpbiBDb3JlIGRlc2NyaXB0aW9uLS0+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii8vbWFwcy5nb29nbGVhcGlzLmNvbS9tYXBzL2FwaS9qcz92PTMmYW1wO2xhbmd1YWdlPWVuJmFtcDtrZXk9QUl6YVN5RFNpVmpQUzVZdmFuWnNFSDRSdkswZ0VyNDZVby0xckNRIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8qPCFbQ0RBVEFbKi9qUXVlcnkoZnVuY3Rpb24oJCkgeyByZXR1cm4gaW5pdGlhbGl6ZVNtYWxsRGF0YXNldEdNYXAoODM2MTc4LCdoYXNoPTM0MjY2OWYxMmVkNGE2NGM0YzNiM2I3MzE0ODQ2ODcxJyxuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzKG5ldyBnb29nbGUubWFwcy5MYXRMbmcoNjcuMTI1OTQsLTUwLjE4MDM3KSxuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKDY3LjEyNTk0LC01MC4xODAzNykpLHVuZGVmaW5lZCk7IH0pOy8qXV0+Ki88L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLy9kMWJ4aDh1YXMxbW53Ny5jbG91ZGZyb250Lm5ldC9hc3NldHMvZW1iZWQuanMiPjwvc2NyaXB0Pgo8bGluayByZWw9ImNpdGUtYXMiIGhyZWY9Imh0dHBzOi8vZG9pLm9yZy8xMC4xNTk0L1BBTkdBRUEuODM2MTc4Ij4KPGxpbmsgcmVsPSJkZXNjcmliZWRieSIgaHJlZj0iaHR0cHM6Ly9kb2kucGFuZ2FlYS5kZS8xMC4xNTk0L1BBTkdBRUEuODM2MTc4P2Zvcm1hdD1tZXRhZGF0YV9qc29ubGQiIHR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iPgo8bGluayByZWw9ImRlc2NyaWJlZGJ5IiBocmVmPSJodHRwczovL2RvaS5wYW5nYWVhLmRlLzEwLjE1OTQvUEFOR0FFQS44MzYxNzg/Zm9ybWF0PWNpdGF0aW9uX3JpcyIgdHlwZT0iYXBwbGljYXRpb24veC1yZXNlYXJjaC1pbmZvLXN5c3RlbXMiPgo8bGluayByZWw9ImRlc2NyaWJlZGJ5IiBocmVmPSJodHRwczovL2RvaS5wYW5nYWVhLmRlLzEwLjE1OTQvUEFOR0FFQS44MzYxNzg/Zm9ybWF0PWNpdGF0aW9uX2JpYnRleCIgdHlwZT0iYXBwbGljYXRpb24veC1iaWJ0ZXgiPgo8bGluayByZWw9Iml0ZW0iIGhyZWY9Imh0dHA6Ly9zdG9yZS5wYW5nYWVhLmRlL1B1YmxpY2F0aW9ucy9Kb2hhbnNzb25FX2V0X2FsXzIwMTQvam9oYW5zc29uX2V0YWwtMjAxNC56aXAiIHR5cGU9ImFwcGxpY2F0aW9uL3ppcCI+CjxsaW5rIHJlbD0iYXV0aG9yIiBocmVmPSJodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDEtNjA1OC0xNDY2Ij4KPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj57IkBjb250ZXh0IjoiaHR0cDovL3NjaGVtYS5vcmcvIiwiQGlkIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjE1OTQvUEFOR0FFQS44MzYxNzgiLCJAdHlwZSI6IkRhdGFzZXQiLCJpZGVudGlmaWVyIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjE1OTQvUEFOR0FFQS44MzYxNzgiLCJ1cmwiOiJodHRwczovL2RvaS5wYW5nYWVhLmRlLzEwLjE1OTQvUEFOR0FFQS44MzYxNzgiLCJjcmVhdG9yIjpbeyJAdHlwZSI6IlBlcnNvbiIsImZhbWlseU5hbWUiOiJKb2hhbnNzb24iLCJnaXZlbk5hbWUiOiJFbW1hIiwiZW1haWwiOiJlbW1hLmpvaGFuc3NvbkBza2Iuc2UifSx7IkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6IkJlcmdsdW5kIiwiZ2l2ZW5OYW1lIjoiU3RlbiJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiTGluZGJvcmciLCJnaXZlbk5hbWUiOiJUb2JpYXMiLCJlbWFpbCI6InRvYmlhcy5saW5kYm9yZ0Bza2Iuc2UifSx7IkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6IlBldHJvbmUiLCJnaXZlbk5hbWUiOiJKb2hhbm5lcyIsImVtYWlsIjoiam9oYW5uZXMucGV0cm9uZUBza2Iuc2UifSx7IkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6InZhbiBBcyIsImdpdmVuTmFtZSI6IkRpcmsifSx7IkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6Ikd1c3RhZnNzb24iLCJnaXZlbk5hbWUiOiJMYXJzLUfDtnJhbiJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiTsOkc2x1bmQiLCJnaXZlbk5hbWUiOiJKZW5zLU92ZSJ9LHsiQGlkIjoiaHR0cHM6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTYwNTgtMTQ2NiIsIkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6IkxhdWRvbiIsImdpdmVuTmFtZSI6IkhqYWxtYXIiLCJpZGVudGlmaWVyIjoiaHR0cHM6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTYwNTgtMTQ2NiJ9XSwibmFtZSI6Ikh5ZHJvbG9naWNhbCBhbmQgbWV0ZW9yb2xvZ2ljYWwgaW52ZXN0aWdhdGlvbnMgaW4gYSBsYWtlIG5lYXIgS2FuZ2VybHVzc3VhcSwgd2VzdCBHcmVlbmxhbmQiLCJwdWJsaXNoZXIiOnsiQHR5cGUiOiJPcmdhbml6YXRpb24iLCJuYW1lIjoiUEFOR0FFQSIsImRpc2FtYmlndWF0aW5nRGVzY3JpcHRpb24iOiJEYXRhIFB1Ymxpc2hlciBmb3IgRWFydGggJiBFbnZpcm9ubWVudGFsIFNjaWVuY2UiLCJ1cmwiOiJodHRwczovL3d3dy5wYW5nYWVhLmRlLyJ9LCJpbmNsdWRlZEluRGF0YUNhdGFsb2ciOnsiQHR5cGUiOiJEYXRhQ2F0YWxvZyIsIm5hbWUiOiJQQU5HQUVBIiwiZGlzYW1iaWd1YXRpbmdEZXNjcmlwdGlvbiI6IkRhdGEgUHVibGlzaGVyIGZvciBFYXJ0aCAmIEVudmlyb25tZW50YWwgU2NpZW5jZSIsInVybCI6Imh0dHBzOi8vd3d3LnBhbmdhZWEuZGUvIn0sImRhdGVQdWJsaXNoZWQiOiIyMDE0LTA5LTI1IiwiaXNQYXJ0T2YiOnsiQGlkIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjUxOTQvZXNzZC03LTkzLTIwMTUiLCJAdHlwZSI6IlB1YmxpY2F0aW9uSXNzdWUiLCJpZGVudGlmaWVyIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjUxOTQvZXNzZC03LTkzLTIwMTUiLCJ1cmwiOiJodHRwczovL2RvaS5vcmcvMTAuNTE5NC9lc3NkLTctOTMtMjAxNSIsImNyZWF0b3IiOlt7IkB0eXBlIjoiUGVyc29uIiwiZmFtaWx5TmFtZSI6IkpvaGFuc3NvbiIsImdpdmVuTmFtZSI6IkVtbWEiLCJlbWFpbCI6ImVtbWEuam9oYW5zc29uQHNrYi5zZSJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiQmVyZ2x1bmQiLCJnaXZlbk5hbWUiOiJTdGVuIn0seyJAdHlwZSI6IlBlcnNvbiIsImZhbWlseU5hbWUiOiJMaW5kYm9yZyIsImdpdmVuTmFtZSI6IlRvYmlhcyIsImVtYWlsIjoidG9iaWFzLmxpbmRib3JnQHNrYi5zZSJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiUGV0cm9uZSIsImdpdmVuTmFtZSI6IkpvaGFubmVzIiwiZW1haWwiOiJqb2hhbm5lcy5wZXRyb25lQHNrYi5zZSJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoidmFuIEFzIiwiZ2l2ZW5OYW1lIjoiRGlyayJ9LHsiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiR3VzdGFmc3NvbiIsImdpdmVuTmFtZSI6IkxhcnMtR8O2cmFuIn0seyJAdHlwZSI6IlBlcnNvbiIsImZhbWlseU5hbWUiOiJOw6RzbHVuZCIsImdpdmVuTmFtZSI6IkplbnMtT3ZlIn0seyJAaWQiOiJodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDEtNjA1OC0xNDY2IiwiQHR5cGUiOiJQZXJzb24iLCJmYW1pbHlOYW1lIjoiTGF1ZG9uIiwiZ2l2ZW5OYW1lIjoiSGphbG1hciIsImlkZW50aWZpZXIiOiJodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDEtNjA1OC0xNDY2In1dLCJuYW1lIjoiSHlkcm9sb2dpY2FsIGFuZCBtZXRlb3JvbG9naWNhbCBpbnZlc3RpZ2F0aW9ucyBpbiBhIHBlcmlnbGFjaWFsIGxha2UgY2F0Y2htZW50IG5lYXIgS2FuZ2VybHVzc3VhcSwgd2VzdCBHcmVlbmxhbmQgLSBwcmVzZW50YXRpb24gb2YgYSBuZXcgbXVsdGktcGFyYW1ldGVyIGRhdGEgc2V0IiwiZGF0ZVB1Ymxpc2hlZCI6IjIwMTUiLCJpc3N1ZU51bWJlciI6IjcoMSkiLCJwYWdpbmF0aW9uIjoiOTMtMTA4IiwiaXNQYXJ0T2YiOnsiQHR5cGUiOiJDcmVhdGl2ZVdvcmtTZXJpZXMiLCJuYW1lIjoiRWFydGggU3lzdGVtIFNjaWVuY2UgRGF0YSJ9fSwiZGVzY3JpcHRpb24iOiJGZXcgaHlkcm9sb2dpY2FsIHN0dWRpZXMgaGF2ZSBiZWVuIG1hZGUgaW4gR3JlZW5sYW5kLCBvdGhlciB0aGFuIG9uIGdsYWNpYWwgaHlkcm9sb2d5IGFzc29jaWF0ZWQgd2l0aCB0aGUgaWNlIHNoZWV0LiBVbmRlcnN0YW5kaW5nIHBlcm1hZnJvc3QgaHlkcm9sb2d5IGFuZCBoeWRyb2NsaW1hdGljIGNoYW5nZSBhbmQgdmFyaWFiaWxpdHksIGhvd2V2ZXIsIHByb3ZpZGVzIGtleSBpbmZvcm1hdGlvbiBmb3IgdW5kZXJzdGFuZGluZyBjbGltYXRlIGNoYW5nZSBlZmZlY3RzIGFuZCBmZWVkYmFja3MgaW4gdGhlIEFyY3RpYyBsYW5kc2NhcGUuIFRoaXMgcGFwZXIgcHJlc2VudHMgYSBuZXcgZXh0ZW5zaXZlIGFuZCBkZXRhaWxlZCBoeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIG9wZW4gYWNjZXNzIGRhdGFzZXQsIHdpdGggaGlnaCB0ZW1wb3JhbCByZXNvbHV0aW9uIGZyb20gYSAxLjU2IGttKioyIHBlcm1hZnJvc3QgY2F0Y2htZW50IHdpdGggYSBsYWtlIHVuZGVybGFpbiBieSBhIHRocm91Z2ggdGFsaWsgY2xvc2UgdG8gdGhlIGljZSBzaGVldCBpbiB0aGUgS2FuZ2VybHVzc3VhcSByZWdpb24sIHdlc3Rlcm4gR3JlZW5sYW5kLiBUaGUgcGFwZXIgZGVzY3JpYmVzIHRoZSBoeWRyb2xvZ2ljYWwgc2l0ZSBpbnZlc3RpZ2F0aW9ucyBhbmQgdXRpbGl6ZWQgZXF1aXBtZW50LCBhcyB3ZWxsIGFzIHRoZSBkYXRhIGNvbGxlY3Rpb24gYW5kIHByb2Nlc3NpbmcuIFRoZSBpbnZlc3RpZ2F0aW9ucyB3ZXJlIHBlcmZvcm1lZCBiZXR3ZWVuIDIwMTAgYW5kIDIwMTMuIFRoZSBoaWdoIHNwYXRpYWwgcmVzb2x1dGlvbiwgd2l0aGluIHRoZSBpbnZlc3RpZ2F0ZWQgYXJlYSwgb2YgdGhlIGRhdGFzZXQgbWFrZXMgaXQgaGlnaGx5IHN1aXRhYmxlIGZvciB2YXJpb3VzIGRldGFpbGVkIGh5ZHJvbG9naWNhbCBhbmQgZWNvbG9naWNhbCBzdHVkaWVzIG9uIGNhdGNobWVudCBzY2FsZS4iLCJjaXRhdGlvbiI6W3siQGlkIjoiaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC90d29ib2F0bGFrZV9ncmVlbmxhbmQuanBnIiwiQHR5cGUiOiJXZWJQYWdlIiwiaWRlbnRpZmllciI6Imh0dHA6Ly9zdG9yZS5wYW5nYWVhLmRlL1B1YmxpY2F0aW9ucy9Kb2hhbnNzb25FX2V0X2FsXzIwMTQvdHdvYm9hdGxha2VfZ3JlZW5sYW5kLmpwZyIsInVybCI6Imh0dHA6Ly9zdG9yZS5wYW5nYWVhLmRlL1B1YmxpY2F0aW9ucy9Kb2hhbnNzb25FX2V0X2FsXzIwMTQvdHdvYm9hdGxha2VfZ3JlZW5sYW5kLmpwZyIsIm5hbWUiOiJNYXAgb2YgVHdvIEJvYXQgTGFrZSBpbiBHcmVlbmxhbmQgKGpwZyAxMyBNQikgd2l0aCBwb3NpdGlvbiBvZiBzYW1wbGluZyBzaXRlcyJ9LHsiQGlkIjoiaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9UaW1lbGFwc2VfVEJMLnppcCIsIkB0eXBlIjoiV2ViUGFnZSIsImlkZW50aWZpZXIiOiJodHRwOi8vc3RvcmUucGFuZ2FlYS5kZS9QdWJsaWNhdGlvbnMvSm9oYW5zc29uRV9ldF9hbF8yMDE0L1RpbWVsYXBzZV9UQkwuemlwIiwidXJsIjoiaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9UaW1lbGFwc2VfVEJMLnppcCIsIm5hbWUiOiJUaW1lIGxhcHMgcGhvdG9zIG9mIGxha2UgMjAxMi0wOS0wNSB0byAyMDEzLTA4LTE0IChtb3YgZmlsZSwgemlwcGVkIDIwNSBNQikifV0sInNwYXRpYWxDb3ZlcmFnZSI6eyJAdHlwZSI6IlBsYWNlIiwiZ2VvIjp7IkB0eXBlIjoiR2VvQ29vcmRpbmF0ZXMiLCJsYXRpdHVkZSI6NjcuMTI1OTQsImxvbmdpdHVkZSI6LTUwLjE4MDM3fX0sImluTGFuZ3VhZ2UiOiJlbiIsImxpY2Vuc2UiOiJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS8zLjAvIiwia2V5d29yZHMiOiJAc3VwcGxlbWVudDsgQGNpdGFibGU7IEBjaXRhYmxlV2l0aENoaWxkczsgQGF1dGhvcjUyODQ1OyBAYXV0aG9yNTI4NDY7IEBhdXRob3I1Mjg0NzsgQGF1dGhvcjUyODQ4OyBAYXV0aG9yNTI4NDk7IEBhdXRob3I1Mjg1MDsgQGF1dGhvcjUyODUxOyBAYXV0aG9yNTI4NTI7IEBldmVudDI3NDU5Nzc7IEB0ZXJtMzEyMjM7IEBnZW9jb2RlMTYwMDsgQGdlb2NvZGUxNjAxOyBAam91cm5hbDE2NTkwOyBAbGljZW5zZTE7IEBwcm9qZWN0NDIyNjsgQHJlZjY1NDA4OyBAcmVmNjU0MzU7IEByZWY2NTQ3NzsgQHRvcG90eXBlMiIsImRpc3RyaWJ1dGlvbiI6eyJAdHlwZSI6IkRhdGFEb3dubG9hZCIsImZpbGVGb3JtYXQiOiJhcHBsaWNhdGlvbi96aXAiLCJjb250ZW50VXJsIjoiaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9qb2hhbnNzb25fZXRhbC0yMDE0LnppcCJ9fTwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Lyo8IVtDREFUQVsqLw0KKGZ1bmN0aW9uKGkscyxvLGcscixhLG0pe2lbJ0dvb2dsZUFuYWx5dGljc09iamVjdCddPXI7aVtyXT1pW3JdfHxmdW5jdGlvbigpew0KKGlbcl0ucT1pW3JdLnF8fFtdKS5wdXNoKGFyZ3VtZW50cyl9LGlbcl0ubD0xKm5ldyBEYXRlKCk7YT1zLmNyZWF0ZUVsZW1lbnQobyksDQptPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pDQp9KSh3aW5kb3csZG9jdW1lbnQsJ3NjcmlwdCcsJy8vd3d3Lmdvb2dsZS1hbmFseXRpY3MuY29tL2FuYWx5dGljcy5qcycsJ2dhJyk7DQpnYSgnY3JlYXRlJywgJ1VBLTMwNjI0MTUwLTEnLCAncGFuZ2FlYS5kZScpOw0KZ2EoJ3NldCcsICdhbm9ueW1pemVJcCcsIHRydWUpOw0KZ2EoJ3NlbmQnLCAncGFnZXZpZXcnKTsNCi8qXV0+Ki88L3NjcmlwdD4NCjwvaGVhZD4NCjxib2R5IGNsYXNzPSJob21lcGFnZS1sYXlvdXQiPg0KPGRpdiBpZD0iaGVhZGVyLXdyYXBwZXIiPg0KICA8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPg0KICAgIDxoZWFkZXIgY2xhc3M9InJvdyI+PCEtLSB2b2xsZSBTY3JlZW4tQnJlaXRlIC0tPg0KICAgICAgPGRpdiBjbGFzcz0iY29udGVudC13cmFwcGVyIj48IS0tIG1heC4gQnJlaXRlIC0tPg0KICAgICAgICA8ZGl2IGlkPSJsb2dpbi1hcmVhLXdyYXBwZXIiIGNsYXNzPSJoaWRkZW4tcHJpbnQiPjxkaXYgaWQ9ImxvZ2luLWFyZWEiPjxzcGFuIGlkPSJ1c2VyLW5hbWUiPk5vdCBsb2dnZWQgaW48L3NwYW4+PGEgaWQ9InNpZ251cC1idXR0b24iIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXBsdXMtc2lnbiBzZWxmLXJlZmVyZXItbGluayIgdGl0bGU9IlNpZ24gVXAgLyBDcmVhdGUgQWNjb3VudCIgYXJpYS1sYWJlbD0iU2lnbiB1cCIgdGFyZ2V0PSJfc2VsZiIgcmVsPSJub2ZvbGxvdyIgaHJlZj0iaHR0cHM6Ly93d3cucGFuZ2FlYS5kZS91c2VyL3NpZ251cC5waHA/cmVmZXJlcj1odHRwcyUzQSUyRiUyRnd3dy5wYW5nYWVhLmRlJTJGIiBkYXRhLXRlbXBsYXRlPSJodHRwczovL3d3dy5wYW5nYWVhLmRlL3VzZXIvc2lnbnVwLnBocD9yZWZlcmVyPSN1IyI+PC9hPjxhIGlkPSJsb2dpbi1idXR0b24iIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvZy1pbiBzZWxmLXJlZmVyZXItbGluayIgdGl0bGU9IkxvZyBJbiIgYXJpYS1sYWJlbD0iTG9nIGluIiB0YXJnZXQ9Il9zZWxmIiByZWw9Im5vZm9sbG93IiBocmVmPSJodHRwczovL3d3dy5wYW5nYWVhLmRlL3VzZXIvbG9naW4ucGhwP3JlZmVyZXI9aHR0cHMlM0ElMkYlMkZ3d3cucGFuZ2FlYS5kZSUyRiIgZGF0YS10ZW1wbGF0ZT0iaHR0cHM6Ly93d3cucGFuZ2FlYS5kZS91c2VyL2xvZ2luLnBocD9yZWZlcmVyPSN1IyI+PC9hPjwvZGl2PjwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJibGluZHNwYWx0ZSBoZWFkZXItYmxvY2sgY29sLWxnLTMgY29sLW1kLTQiPjwvZGl2Pg0KICAgICAgICANCiAgICAgICAgPGRpdiBpZD0iaGVhZGVyLWxvZ28tYmxvY2siIGNsYXNzPSJoZWFkZXItYmxvY2sgY29sLWxnLTMgY29sLW1kLTQgY29sLXNtLTQgY29sLXhzLTgiPg0KICAgICAgICAgIDxkaXYgaWQ9InBhbmdhZWEtbG9nbyI+DQogICAgICAgICAgICA8YSB0aXRsZT0iUEFOR0FFQSBob21lIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlLyIgY2xhc3M9ImhvbWUtbGluayI+PGltZyBzcmM9Ii8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3YuMzAzZjMxZGRiNzNmMGU5ODUwODJlZjU2ZmFjNjhhYTgvbGF5b3V0LWltYWdlcy9wYW5nYWVhLWxvZ28ucG5nIiBhbHQ9IlBBTkdBRUEgaG9tZSI+PC9hPg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgDQogICAgICAgIDxkaXYgaWQ9ImhlYWRlci1taWQtYmxvY2siIGNsYXNzPSJoZWFkZXItYmxvY2sgY29sLWxnLTEyIGNvbC1tZC05IGNvbC1zbS0yMCBjb2wteHMtMTYiPg0KICAgICAgICAgIDxkaXYgaWQ9InBhbmdhZWEtbG9nby1oZWFkbGluZSI+DQogICAgICAgICAgICBQQU5HQUVBPHNwYW4gY2xhc3M9InB1bmt0Ij4uPC9zcGFuPg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgIDxkaXYgaWQ9InBhbmdhZWEtbG9nby1zbG9nYW4iPg0KICAgICAgICAgICAgPHNwYW4+RGF0YSBQdWJsaXNoZXIgZm9yIEVhcnRoICZhbXA7IDwvc3Bhbj48c3BhbiBjbGFzcz0ibm93cmFwIj5FbnZpcm9ubWVudGFsIFNjaWVuY2U8L3NwYW4+DQogICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPGRpdiBpZD0ic2VhcmNoLWFyZWEtaGVhZGVyIiBjbGFzcz0icm93Ij48L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIA0KICAgICAgICA8ZGl2IGlkPSJoZWFkZXItbWFpbi1tZW51LWJsb2NrIiBjbGFzcz0iaGVhZGVyLWJsb2NrIGhpZGRlbi1wcmludCBjb2wtbGctNiBjb2wtbWQtNyBjb2wtc20tMjQgY29sLXhzLTI0Ij4NCiAgICAgICAgICA8bmF2IGlkPSJtYWluLW5hdiI+DQogICAgICAgICAgICA8dWw+DQogICAgICAgICAgICAgIDxsaSBpZD0ibWVudS1zZWFyY2giPg0KICAgICAgICAgICAgICAgIDwhLS0gY2xhc3Mgb24gbGluayBpcyBpbXBvcnRhbnQsIGRvbid0IGNoYW5nZSEhISAtLT4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlLyIgY2xhc3M9ImhvbWUtbGluayI+U2VhcmNoPC9hPg0KICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICA8bGkgaWQ9Im1lbnUtc3VibWl0Ij4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL3N1Ym1pdC8iPlN1Ym1pdDwvYT4NCiAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgPGxpIGlkPSJtZW51LWFib3V0Ij4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fib3V0LyI+QWJvdXQ8L2E+DQogICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgIDxsaSBpZD0ibWVudS1jb250YWN0Ij4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2NvbnRhY3QvIj5Db250YWN0PC9hPg0KICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICA8L25hdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgPC9kaXY+DQogICAgPC9oZWFkZXI+DQogIDwvZGl2Pg0KPC9kaXY+DQo8ZGl2IGlkPSJmbGV4LXdyYXBwZXIiPg0KPGRpdiBpZD0ibWFpbi1jb250YWluZXIiIGNsYXNzPSJjb250YWluZXItZmx1aWQiPg0KPGRpdiBpZD0ibWFpbi1yb3ciIGNsYXNzPSJyb3cgbWFpbi1yb3ciPg0KPGRpdiBpZD0ibWFpbiIgY2xhc3M9ImNvbC1sZy0yNCBjb2wtbWQtMjQgY29sLXNtLTI0IGNvbC14cy0yNCI+DQo8ZGl2IGlkPSJkYXRhc2V0Ij4KPGRpdiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNCBjb2wtc20tMjQgY29sLXhzLTI0IGhpZGRlbi14cyBoaWRkZW4tc20iPjxkaXYgY2xhc3M9InRpdGxlIGNpdGF0aW9uIj5DaXRhdGlvbjo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNvbC1sZy0yMSBjb2wtbWQtMjAgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0iZGVzY3IgdG9wLWJvcmRlciI+PGRpdiBpZD0iZ21hcC1kYXRhc2V0LXdyYXBwZXIiIGNsYXNzPSJnbWFwLXdyYXBwZXIgaGlkZGVuLXByaW50IGNvbC1sZy04IGNvbC1tZC04IGNvbC1zbS0yNCBjb2wteHMtMjQiPjxkaXYgY2xhc3M9ImVtYmVkLXJlc3BvbnNpdmUgZW1iZWQtcmVzcG9uc2l2ZS00YnkzIj48ZGl2IGlkPSJnbWFwLWRhdGFzZXQiIGNsYXNzPSJlbWJlZC1yZXNwb25zaXZlLWl0ZW0iPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxoMSBjbGFzcz0iTWV0YUhlYWRlckl0ZW0gY2l0YXRpb24iPjxzdHJvbmc+PGEgY2xhc3M9InBvcG92ZXItbGluayBsaW5rLXVuc3R5bGVkIiBocmVmPSIjIiBkYXRhLXRpdGxlPSImbHQ7c3BhbiZndDtKb2hhbnNzb24sIEVtbWEmbHQ7YSBjbGFzcz0mcXVvdDtzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoJnF1b3Q7IHRhcmdldD0mcXVvdDtfYmxhbmsmcXVvdDsgcmVsPSZxdW90O25vZm9sbG93JnF1b3Q7IHRpdGxlPSZxdW90O1NlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdKb2hhbnNzb24sIEVtbWEnLi4uJnF1b3Q7IGFyaWEtbGFiZWw9JnF1b3Q7U2VhcmNoIFBBTkdBRUEgZm9yIG90aGVyIGRhdGFzZXRzIHJlbGF0ZWQgdG8gJ0pvaGFuc3NvbiwgRW1tYScmcXVvdDsgaHJlZj0mcXVvdDsvL3d3dy5wYW5nYWVhLmRlLz9xPWF1dGhvciUzQWVtYWlsJTNBZW1tYS5qb2hhbnNzb24lNDBza2Iuc2UmcXVvdDsmZ3Q7Jmx0Oy9hJmd0OyZsdDsvc3BhbiZndDsiIGRhdGEtY29udGVudD0iJmx0O2RpdiZndDsmbHQ7ZGl2Jmd0OyZsdDthIGNsYXNzPSZxdW90O21haWwtbGluayB0ZXh0LW5vd3JhcCB3aWRlLWljb24tbGluayZxdW90OyBocmVmPSZxdW90O21haWx0bzplbW1hLmpvaGFuc3NvbkBza2Iuc2UmcXVvdDsmZ3Q7ZW1tYS5qb2hhbnNzb25Ac2tiLnNlJmx0Oy9hJmd0OyZsdDsvZGl2Jmd0OyYjMTA7Jmx0Oy9kaXYmZ3Q7JiMxMDsiPkpvaGFuc3NvbiwgRW1tYTwvYT47IEJlcmdsdW5kLCBTdGVuOyA8YSBjbGFzcz0icG9wb3Zlci1saW5rIGxpbmstdW5zdHlsZWQiIGhyZWY9IiMiIGRhdGEtdGl0bGU9IiZsdDtzcGFuJmd0O0xpbmRib3JnLCBUb2JpYXMmbHQ7YSBjbGFzcz0mcXVvdDtzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoJnF1b3Q7IHRhcmdldD0mcXVvdDtfYmxhbmsmcXVvdDsgcmVsPSZxdW90O25vZm9sbG93JnF1b3Q7IHRpdGxlPSZxdW90O1NlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdMaW5kYm9yZywgVG9iaWFzJy4uLiZxdW90OyBhcmlhLWxhYmVsPSZxdW90O1NlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdMaW5kYm9yZywgVG9iaWFzJyZxdW90OyBocmVmPSZxdW90Oy8vd3d3LnBhbmdhZWEuZGUvP3E9YXV0aG9yJTNBZW1haWwlM0F0b2JpYXMubGluZGJvcmclNDBza2Iuc2UmcXVvdDsmZ3Q7Jmx0Oy9hJmd0OyZsdDsvc3BhbiZndDsiIGRhdGEtY29udGVudD0iJmx0O2RpdiZndDsmbHQ7ZGl2Jmd0OyZsdDthIGNsYXNzPSZxdW90O21haWwtbGluayB0ZXh0LW5vd3JhcCB3aWRlLWljb24tbGluayZxdW90OyBocmVmPSZxdW90O21haWx0bzp0b2JpYXMubGluZGJvcmdAc2tiLnNlJnF1b3Q7Jmd0O3RvYmlhcy5saW5kYm9yZ0Bza2Iuc2UmbHQ7L2EmZ3Q7Jmx0Oy9kaXYmZ3Q7JiMxMDsmbHQ7L2RpdiZndDsmIzEwOyI+TGluZGJvcmcsIFRvYmlhczwvYT47IDxhIGNsYXNzPSJwb3BvdmVyLWxpbmsgbGluay11bnN0eWxlZCIgaHJlZj0iIyIgZGF0YS10aXRsZT0iJmx0O3NwYW4mZ3Q7UGV0cm9uZSwgSm9oYW5uZXMmbHQ7YSBjbGFzcz0mcXVvdDtzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoJnF1b3Q7IHRhcmdldD0mcXVvdDtfYmxhbmsmcXVvdDsgcmVsPSZxdW90O25vZm9sbG93JnF1b3Q7IHRpdGxlPSZxdW90O1NlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdQZXRyb25lLCBKb2hhbm5lcycuLi4mcXVvdDsgYXJpYS1sYWJlbD0mcXVvdDtTZWFyY2ggUEFOR0FFQSBmb3Igb3RoZXIgZGF0YXNldHMgcmVsYXRlZCB0byAnUGV0cm9uZSwgSm9oYW5uZXMnJnF1b3Q7IGhyZWY9JnF1b3Q7Ly93d3cucGFuZ2FlYS5kZS8/cT1hdXRob3IlM0FlbWFpbCUzQWpvaGFubmVzLnBldHJvbmUlNDBza2Iuc2UmcXVvdDsmZ3Q7Jmx0Oy9hJmd0OyZsdDsvc3BhbiZndDsiIGRhdGEtY29udGVudD0iJmx0O2RpdiZndDsmbHQ7ZGl2Jmd0OyZsdDthIGNsYXNzPSZxdW90O21haWwtbGluayB0ZXh0LW5vd3JhcCB3aWRlLWljb24tbGluayZxdW90OyBocmVmPSZxdW90O21haWx0bzpqb2hhbm5lcy5wZXRyb25lQHNrYi5zZSZxdW90OyZndDtqb2hhbm5lcy5wZXRyb25lQHNrYi5zZSZsdDsvYSZndDsmbHQ7L2RpdiZndDsmIzEwOyZsdDsvZGl2Jmd0OyYjMTA7Ij5QZXRyb25lLCBKb2hhbm5lczwvYT47IHZhbiBBcywgRGlyazsgR3VzdGFmc3NvbiwgTGFycy1Hw7ZyYW47IE7DpHNsdW5kLCBKZW5zLU92ZTsgPGEgY2xhc3M9InBvcG92ZXItbGluayBsaW5rLXVuc3R5bGVkIiBocmVmPSIjIiBkYXRhLXRpdGxlPSImbHQ7c3BhbiZndDtMYXVkb24sIEhqYWxtYXImbHQ7YSBjbGFzcz0mcXVvdDtzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoJnF1b3Q7IHRhcmdldD0mcXVvdDtfYmxhbmsmcXVvdDsgcmVsPSZxdW90O25vZm9sbG93JnF1b3Q7IHRpdGxlPSZxdW90O1NlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdMYXVkb24sIEhqYWxtYXInLi4uJnF1b3Q7IGFyaWEtbGFiZWw9JnF1b3Q7U2VhcmNoIFBBTkdBRUEgZm9yIG90aGVyIGRhdGFzZXRzIHJlbGF0ZWQgdG8gJ0xhdWRvbiwgSGphbG1hcicmcXVvdDsgaHJlZj0mcXVvdDsvL3d3dy5wYW5nYWVhLmRlLz9xPWF1dGhvciUzQW9yY2lkJTNBMDAwMC0wMDAxLTYwNTgtMTQ2NiZxdW90OyZndDsmbHQ7L2EmZ3Q7Jmx0Oy9zcGFuJmd0OyIgZGF0YS1jb250ZW50PSImbHQ7ZGl2Jmd0OyZsdDtkaXYmZ3Q7Jmx0O2EgY2xhc3M9JnF1b3Q7b3JjaWQtbGluayB0ZXh0LW5vd3JhcCB3aWRlLWljb24tbGluayZxdW90OyB0YXJnZXQ9JnF1b3Q7X2JsYW5rJnF1b3Q7IGhyZWY9JnF1b3Q7aHR0cHM6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTYwNTgtMTQ2NiZxdW90OyZndDtodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDEtNjA1OC0xNDY2Jmx0Oy9hJmd0OyZsdDsvZGl2Jmd0OyYjMTA7Jmx0Oy9kaXYmZ3Q7JiMxMDsiPkxhdWRvbiwgSGphbG1hcjwvYT4gKDIwMTQpOjwvc3Ryb25nPiBIeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIGludmVzdGlnYXRpb25zIGluIGEgbGFrZSBuZWFyIEthbmdlcmx1c3N1YXEsIHdlc3QgR3JlZW5sYW5kLiA8ZW0+UEFOR0FFQTwvZW0+LCA8YSByZWw9Im5vZm9sbG93IGJvb2ttYXJrIiBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuMTU5NC9QQU5HQUVBLjgzNjE3OCIgZGF0YS10aXRsZT0iJmx0O3NwYW4mZ3Q7UGVyc2lzdGVudCBET0kgTmFtZSZsdDsvc3BhbiZndDsiIGRhdGEtY29udGVudD0iJmx0O2RpdiBjbGFzcz0mcXVvdDtsaW5rLWRlc2NyaXB0aW9uJnF1b3Q7Jmd0OyZsdDtwJmd0O0EgJmx0O2EgaHJlZj0mcXVvdDtodHRwczovL2RvaS5vcmcvJnF1b3Q7IGNsYXNzPSZxdW90O2RvaS1saW5rJnF1b3Q7IHRhcmdldD0mcXVvdDtfYmxhbmsmcXVvdDsmZ3Q7RE9JIG5hbWUmbHQ7L2EmZ3Q7IHNoYWxsIGJlIHVzZWQgdG8gY2l0ZSBhbmQgbGluayBQQU5HQUVBIGRhdGEgc2V0cy4mbHQ7L3AmZ3Q7JiMxMDsmbHQ7cCZndDtBICZsdDtiJmd0O0RPSSBuYW1lJmx0Oy9iJmd0OyBpcyBndWFyYW50ZWVkIHRvIG5ldmVyIGNoYW5nZSwgc28geW91IGNhbiB1c2UgaXQgdG8gbGluayBwZXJtYW5lbnRseSB0byBkYXRhIHNldHMgb3IgZG9jdW1lbnRzLiAmbHQ7YiZndDtJZiB5b3Ugd2FudCB0byBjaXRlIHRoaXMgZGF0YSBzZXQsIHVzZSB0aGUgZnVsbCBjaXRhdGlvbiBhbmQgYWRkIHRoaXMgbGluayBhcyBhIHBlcnNpc3RlbnQgcmVmZXJlbmNlLiZsdDsvYiZndDsmbHQ7L3AmZ3Q7JiMxMDsmbHQ7ZGl2Jmd0O1lvdSBtYXkgdXNlIHlvdXIgYnJvd3NlcidzICZsdDtjb2RlJmd0O2NvcHkgbGluayBsb2NhdGlvbiZsdDsvY29kZSZndDsgZnVuY3Rpb25hbGl0eSB0byByZXRyaWV2ZSB0aGUgbGluayEgWW91IGNhbiBhbHNvIGRvd25sb2FkIHRoZSBjaXRhdGlvbiBpbiBzZXZlcmFsIGZvcm1hdHMgb24gdGhpcyBwYWdlLiZsdDsvZGl2Jmd0OyYjMTA7Jmx0Oy9kaXYmZ3Q7JiMxMDsiIGNsYXNzPSJ0ZXh0LWxpbmt3cmFwIHBvcG92ZXItbGluayBkb2ktbGluayI+aHR0cHM6Ly9kb2kub3JnLzEwLjE1OTQvUEFOR0FFQS44MzYxNzg8L2E+LDxociBjbGFzcz0ic3BhY2VyIiBhcmlhLWhpZGRlbj0idHJ1ZSIgLz4KPGVtPlN1cHBsZW1lbnQgdG86PC9lbT4gSm9oYW5zc29uLCBFIGV0IGFsLiAoMjAxNSk6IEh5ZHJvbG9naWNhbCBhbmQgbWV0ZW9yb2xvZ2ljYWwgaW52ZXN0aWdhdGlvbnMgaW4gYSBwZXJpZ2xhY2lhbCBsYWtlIGNhdGNobWVudCBuZWFyIEthbmdlcmx1c3N1YXEsIHdlc3QgR3JlZW5sYW5kIC0gcHJlc2VudGF0aW9uIG9mIGEgbmV3IG11bHRpLXBhcmFtZXRlciBkYXRhIHNldC4gPGVtPkVhcnRoIFN5c3RlbSBTY2llbmNlIERhdGE8L2VtPiwgPHN0cm9uZz43KDEpPC9zdHJvbmc+LCA5My0xMDgsIDxhIGNsYXNzPSJ0ZXh0LWxpbmt3cmFwIGRvaS1saW5rIiBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuNTE5NC9lc3NkLTctOTMtMjAxNSIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vZG9pLm9yZy8xMC41MTk0L2Vzc2QtNy05My0yMDE1PC9hPjwvaDE+CjxwIGNsYXNzPSJob3d0b2NpdGUiPjxzbWFsbD48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1idWxsaG9ybiI+PC9zcGFuPiA8c3Ryb25nPkFsd2F5cyBxdW90ZSBhYm92ZSBjaXRhdGlvbiB3aGVuIHVzaW5nIGRhdGEhPC9zdHJvbmc+IFlvdSBjYW4gZG93bmxvYWQgdGhlIGNpdGF0aW9uIGluIHNldmVyYWwgZm9ybWF0cyBiZWxvdy48L3NtYWxsPjwvcD4KPHAgY2xhc3M9ImRhdGEtYnV0dG9ucyI+PGEgcmVsPSJub2ZvbGxvdyBkZXNjcmliZWRieSIgdGl0bGU9IkV4cG9ydCBjaXRhdGlvbiB0byBSZWZlcmVuY2UgTWFuYWdlciwgRW5kTm90ZSwgUHJvQ2l0ZSIgaHJlZj0iP2Zvcm1hdD1jaXRhdGlvbl9yaXMiIGNsYXNzPSJhY3Rpb25idXR0b25saW5rIj48c3BhbiBjbGFzcz0iYWN0aW9uYnV0dG9uIj5SSVMgQ2l0YXRpb248L3NwYW4+PC9hPjxhIHJlbD0ibm9mb2xsb3cgZGVzY3JpYmVkYnkiIHRpdGxlPSJFeHBvcnQgY2l0YXRpb24gdG8gQmliVGVYIiBocmVmPSI/Zm9ybWF0PWNpdGF0aW9uX2JpYnRleCIgY2xhc3M9ImFjdGlvbmJ1dHRvbmxpbmsiPjxzcGFuIGNsYXNzPSJhY3Rpb25idXR0b24iPjxzcGFuIHN0eWxlPSJmb250LXZhcmlhbnQ6c21hbGwtY2FwczsiPkJpYlRlWDwvc3Bhbj4gQ2l0YXRpb248L3NwYW4+PC9hPjxhIHJlbD0ibm9mb2xsb3ciIHRpdGxlPSJFeHBvcnQgY2l0YXRpb24gYXMgcGxhaW4gdGV4dCIgaHJlZj0iP2Zvcm1hdD1jaXRhdGlvbl90ZXh0IiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImFjdGlvbmJ1dHRvbmxpbmsgc2hhcmUtbGluayI+PHNwYW4gY2xhc3M9ImFjdGlvbmJ1dHRvbiI+VGV4dCBDaXRhdGlvbjwvc3Bhbj48L2E+PHNwYW4gY2xhc3M9InNlcGFyYXRvciI+PC9zcGFuPjxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJzZWxmLXJlZmVyZXItbGluayBzaGFyZS1saW5rIGFjdGlvbmJ1dHRvbmxpbmsiIGhyZWY9Ii8vd3d3LnBhbmdhZWEuZGUvbm9qcy5waHAiIGRhdGEtdGVtcGxhdGU9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9zaGFyZXIucGhwP3U9I3UjJmFtcDt0PSN0IyIgdGl0bGU9IlNoYXJlIGRhdGFzZXQgb24gRmFjZWJvb2siIHRhcmdldD0iX2JsYW5rIj48c3BhbiBjbGFzcz0iYWN0aW9uYnV0dG9uIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zaGFyZSI+PC9zcGFuPiBGYWNlYm9vazwvc3Bhbj48L2E+PGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9InNlbGYtcmVmZXJlci1saW5rIHNoYXJlLWxpbmsgYWN0aW9uYnV0dG9ubGluayIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS9ub2pzLnBocCIgZGF0YS10ZW1wbGF0ZT0iaHR0cHM6Ly90d2l0dGVyLmNvbS9pbnRlbnQvdHdlZXQ/dXJsPSN1IyZhbXA7dGV4dD0jdCMiIHRpdGxlPSJTaGFyZSBkYXRhc2V0IG9uIFR3aXR0ZXIiIHRhcmdldD0iX2JsYW5rIj48c3BhbiBjbGFzcz0iYWN0aW9uYnV0dG9uIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zaGFyZSI+PC9zcGFuPiBUd2l0dGVyPC9zcGFuPjwvYT48YSByZWw9Im5vZm9sbG93IiBjbGFzcz0ic2VsZi1yZWZlcmVyLWxpbmsgc2hhcmUtbGluayBhY3Rpb25idXR0b25saW5rIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL25vanMucGhwIiBkYXRhLXRlbXBsYXRlPSJodHRwczovL3BsdXMuZ29vZ2xlLmNvbS9zaGFyZT91cmw9I3UjJmFtcDtobD1lbiIgdGl0bGU9IlNoYXJlIGRhdGFzZXQgb24gR29vZ2xlKyIgdGFyZ2V0PSJfYmxhbmsiPjxzcGFuIGNsYXNzPSJhY3Rpb25idXR0b24iPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNoYXJlIj48L3NwYW4+IEdvb2dsZSs8L3NwYW4+PC9hPjxzcGFuIGNsYXNzPSJzZXBhcmF0b3IiPjwvc3Bhbj48YSByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayIgdGl0bGU9IkRpc3BsYXkgZXZlbnRzIGluIG1hcCIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS9hZHZhbmNlZC9nbWFwLWRhdGFzZXQucGhwP2lkPTgzNjE3OCZhbXA7dmlld3BvcnRCQk9YPS01MC4xODAzNyw2Ny4xMjU5NCwtNTAuMTgwMzcsNjcuMTI1OTQiIGNsYXNzPSJhY3Rpb25idXR0b25saW5rIj48c3BhbiBjbGFzcz0iYWN0aW9uYnV0dG9uIj5TaG93IE1hcDwvc3Bhbj48L2E+PGEgcmVsPSJub2ZvbGxvdyIgdGl0bGU9IkRpc3BsYXkgZXZlbnRzIGluIEdvb2dsZSBFYXJ0aCIgaHJlZj0iP2Zvcm1hdD1ldmVudHNfa21sIiBjbGFzcz0iYWN0aW9uYnV0dG9ubGluayI+PHNwYW4gY2xhc3M9ImFjdGlvbmJ1dHRvbiI+R29vZ2xlIEVhcnRoPC9zcGFuPjwvYT48c3BhbiBjbGFzcz0ic2VwYXJhdG9yIj48L3NwYW4+PHNwYW4gZGF0YS1iYWRnZS10eXBlPSIxIiBkYXRhLWRvaT0iMTAuMTU5NC9QQU5HQUVBLjgzNjE3OCIgZGF0YS1iYWRnZS1wb3BvdmVyPSJyaWdodCIgZGF0YS1oaWRlLW5vLW1lbnRpb25zPSJ0cnVlIiBjbGFzcz0iYWx0bWV0cmljLWVtYmVkIj48L3NwYW4+PC9wPgo8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTQgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0idGl0bGUiPkFic3RyYWN0OjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckFic3RyYWN0Ij5GZXcgaHlkcm9sb2dpY2FsIHN0dWRpZXMgaGF2ZSBiZWVuIG1hZGUgaW4gR3JlZW5sYW5kLCBvdGhlciB0aGFuIG9uIGdsYWNpYWwgaHlkcm9sb2d5IGFzc29jaWF0ZWQgd2l0aCB0aGUgaWNlIHNoZWV0LiBVbmRlcnN0YW5kaW5nIHBlcm1hZnJvc3QgaHlkcm9sb2d5IGFuZCBoeWRyb2NsaW1hdGljIGNoYW5nZSBhbmQgdmFyaWFiaWxpdHksIGhvd2V2ZXIsIHByb3ZpZGVzIGtleSBpbmZvcm1hdGlvbiBmb3IgdW5kZXJzdGFuZGluZyBjbGltYXRlIGNoYW5nZSBlZmZlY3RzIGFuZCBmZWVkYmFja3MgaW4gdGhlIEFyY3RpYyBsYW5kc2NhcGUuIFRoaXMgcGFwZXIgcHJlc2VudHMgYSBuZXcgZXh0ZW5zaXZlIGFuZCBkZXRhaWxlZCBoeWRyb2xvZ2ljYWwgYW5kIG1ldGVvcm9sb2dpY2FsIG9wZW4gYWNjZXNzIGRhdGFzZXQsIHdpdGggaGlnaCB0ZW1wb3JhbCByZXNvbHV0aW9uIGZyb20gYSAxLjU2IGttKioyIHBlcm1hZnJvc3QgY2F0Y2htZW50IHdpdGggYSBsYWtlIHVuZGVybGFpbiBieSBhIHRocm91Z2ggdGFsaWsgY2xvc2UgdG8gdGhlIGljZSBzaGVldCBpbiB0aGUgS2FuZ2VybHVzc3VhcSByZWdpb24sIHdlc3Rlcm4gR3JlZW5sYW5kLiBUaGUgcGFwZXIgZGVzY3JpYmVzIHRoZSBoeWRyb2xvZ2ljYWwgc2l0ZSBpbnZlc3RpZ2F0aW9ucyBhbmQgdXRpbGl6ZWQgZXF1aXBtZW50LCBhcyB3ZWxsIGFzIHRoZSBkYXRhIGNvbGxlY3Rpb24gYW5kIHByb2Nlc3NpbmcuIFRoZSBpbnZlc3RpZ2F0aW9ucyB3ZXJlIHBlcmZvcm1lZCBiZXR3ZWVuIDIwMTAgYW5kIDIwMTMuIFRoZSBoaWdoIHNwYXRpYWwgcmVzb2x1dGlvbiwgd2l0aGluIHRoZSBpbnZlc3RpZ2F0ZWQgYXJlYSwgb2YgdGhlIGRhdGFzZXQgbWFrZXMgaXQgaGlnaGx5IHN1aXRhYmxlIGZvciB2YXJpb3VzIGRldGFpbGVkIGh5ZHJvbG9naWNhbCBhbmQgZWNvbG9naWNhbCBzdHVkaWVzIG9uIGNhdGNobWVudCBzY2FsZS48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJ0aXRsZSI+RnVydGhlciBkZXRhaWxzOjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckl0ZW0iPjxhIHRhcmdldD0iX3NlbGYiIGhyZWY9Imh0dHA6Ly9zdG9yZS5wYW5nYWVhLmRlL1B1YmxpY2F0aW9ucy9Kb2hhbnNzb25FX2V0X2FsXzIwMTQvdHdvYm9hdGxha2VfZ3JlZW5sYW5kLmpwZyI+TWFwIG9mIFR3byBCb2F0IExha2UgaW4gR3JlZW5sYW5kIChqcGcgMTMgTUIpIHdpdGggcG9zaXRpb24gb2Ygc2FtcGxpbmcgc2l0ZXM8L2E+PGEgY2xhc3M9InNlYXJjaGxpbmsgZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93IiB0aXRsZT0iU2VhcmNoIFBBTkdBRUEgZm9yIG90aGVyIGRhdGFzZXRzIHJlbGF0ZWQgdG8gdGhpcyBwdWJsaWNhdGlvbi4uLiIgYXJpYS1sYWJlbD0iU2VhcmNoIFBBTkdBRUEgZm9yIG90aGVyIGRhdGFzZXRzIHJlbGF0ZWQgdG8gdGhpcyBwdWJsaWNhdGlvbiIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS8/cT0lNDByZWY2NTQ3NyI+PC9hPjwvZGl2Pgo8ZGl2IGNsYXNzPSJNZXRhSGVhZGVySXRlbSI+PGEgdGFyZ2V0PSJfc2VsZiIgaHJlZj0iaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9UaW1lbGFwc2VfVEJMLnppcCI+VGltZSBsYXBzIHBob3RvcyBvZiBsYWtlIDIwMTItMDktMDUgdG8gMjAxMy0wOC0xNCAobW92IGZpbGUsIHppcHBlZCAyMDUgTUIpPC9hPjxhIGNsYXNzPSJzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyIgdGl0bGU9IlNlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvIHRoaXMgcHVibGljYXRpb24uLi4iIGFyaWEtbGFiZWw9IlNlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvIHRoaXMgcHVibGljYXRpb24iIGhyZWY9Ii8vd3d3LnBhbmdhZWEuZGUvP3E9JTQwcmVmNjU0MDgiPjwvYT48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJ0aXRsZSI+UHJvamVjdChzKTo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNvbC1sZy0yMSBjb2wtbWQtMjAgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0iZGVzY3IiPjxkaXYgY2xhc3M9Ik1ldGFIZWFkZXJJdGVtIj48c3Ryb25nPjxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3d3dy5yZXNlYXJjaGdhdGUubmV0L3Byb2plY3QvR1JlZW5sYW5kLUFuYWxvZ3VlLVN1cmZhY2UtUHJvamVjdC1HUkFTUCI+R1JlZW5sYW5kIEFuYWxvZ3VlIFN1cmZhY2UgUHJvamVjdDwvYT48L3N0cm9uZz4gKEdSQVNQKTxhIGNsYXNzPSJzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyIgdGl0bGU9IlNlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdHUmVlbmxhbmQgQW5hbG9ndWUgU3VyZmFjZSBQcm9qZWN0Jy4uLiIgYXJpYS1sYWJlbD0iU2VhcmNoIFBBTkdBRUEgZm9yIG90aGVyIGRhdGFzZXRzIHJlbGF0ZWQgdG8gJ0dSZWVubGFuZCBBbmFsb2d1ZSBTdXJmYWNlIFByb2plY3QnIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlLz9xPXByb2plY3QlM0FsYWJlbCUzQUdSQVNQIj48L2E+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTQgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0idGl0bGUiPkNvdmVyYWdlOjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckl0ZW0gZ2VvIj48ZW0gY2xhc3M9InVuZmFyYmUiPkxhdGl0dWRlOiA8L2VtPjxzcGFuIGNsYXNzPSJsYXRpdHVkZSI+NjcuMTI1OTQwPC9zcGFuPjxlbSBjbGFzcz0idW5mYXJiZSI+ICogTG9uZ2l0dWRlOiA8L2VtPjxzcGFuIGNsYXNzPSJsb25naXR1ZGUiPi01MC4xODAzNzA8L3NwYW4+PC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTQgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0idGl0bGUiPkV2ZW50KHMpOjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckl0ZW0gZ2VvIj48c3Ryb25nPlRCTDwvc3Ryb25nPjxhIGNsYXNzPSJzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyIgdGl0bGU9IlNlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdUQkwnLi4uIiBhcmlhLWxhYmVsPSJTZWFyY2ggUEFOR0FFQSBmb3Igb3RoZXIgZGF0YXNldHMgcmVsYXRlZCB0byAnVEJMJyIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS8/cT1ldmVudCUzQWxhYmVsJTNBVEJMIj48L2E+PGVtIGNsYXNzPSJ1bmZhcmJlIj4gKiBMYXRpdHVkZTogPC9lbT48c3BhbiBjbGFzcz0ibGF0aXR1ZGUiPjY3LjEyNTk0MDwvc3Bhbj48ZW0gY2xhc3M9InVuZmFyYmUiPiAqIExvbmdpdHVkZTogPC9lbT48c3BhbiBjbGFzcz0ibG9uZ2l0dWRlIj4tNTAuMTgwMzcwPC9zcGFuPjxlbSBjbGFzcz0idW5mYXJiZSI+ICogTG9jYXRpb246IDwvZW0+PHNwYW4+VHdvIEJvYXQgTGFrZSwgS2FuZ2VybHVzc3VhcSwgR3JlZW5sYW5kPC9zcGFuPjxhIGNsYXNzPSJzZWFyY2hsaW5rIGdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyIgdGl0bGU9IlNlYXJjaCBQQU5HQUVBIGZvciBvdGhlciBkYXRhc2V0cyByZWxhdGVkIHRvICdUd28gQm9hdCBMYWtlLCBLYW5nZXJsdXNzdWFxLCBHcmVlbmxhbmQnLi4uIiBhcmlhLWxhYmVsPSJTZWFyY2ggUEFOR0FFQSBmb3Igb3RoZXIgZGF0YXNldHMgcmVsYXRlZCB0byAnVHdvIEJvYXQgTGFrZSwgS2FuZ2VybHVzc3VhcSwgR3JlZW5sYW5kJyIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS8/cT1sb2NhdGlvbiUzQSUyMlR3bytCb2F0K0xha2UlMkMrS2FuZ2VybHVzc3VhcSUyQytHcmVlbmxhbmQlMjIiPjwvYT48L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJ0aXRsZSI+Q29tbWVudDo8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNvbC1sZy0yMSBjb2wtbWQtMjAgY29sLXNtLTI0IGNvbC14cy0yNCI+PGRpdiBjbGFzcz0iZGVzY3IiPjxkaXYgY2xhc3M9Ik1ldGFIZWFkZXJBYnN0cmFjdCI+VGhlIGRhdGFzZXQgY29udGFpbnMgaHlkcm9sb2dpY2FsIGFuZCBtZXRlb3JvbG9naWNhbCBkYXRhIGZyb20gYSBsYWtlIGNhdGNobWVudCBpbiB0aGUgS2FuZ2VybHVzc3VhcSByZWdpb24sIFdlc3Rlcm4gR3JlZW5sYW5kLiBUaGUgaW52ZXN0aWdhdGlvbnMgd2VyZSBwZXJmb3JtZWQgZHVyaW5nIDIwMTAtMjAxMyBhbmQgdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJzIGFyZSBpbmNsdWRlZDogU29pbCBtb2lzdHVyZSwgU29pbCB0ZW1wZXJhdHVyZSwgSHlkcmF1bGljIHByb3BlcnRpZXMgb2YgdGhlIGFjdGl2ZSBsYXllciwgbWV0ZW9yb2xvZ2ljYWwgcGFyYW1ldGVycyBmcm9tIGEgbG9jYWwgd2VhdGhlciBzdGF0aW9uIHdpdGhpbiB0aGUgY2F0Y2htZW50LCB3YXRlciBsZXZlbHMgYW5kIGRpc2NoYXJnZSwgc3VibGltYXRpb24gYW5kIGV2YXBvcnRhdGlvbiBtZWFzdXJtZW50cywgc25vdyBkZXB0aCBhbmQgc25vdyB3YXRlciBjb250ZW50IGRhdGEgYW5kIHRpbWUgbGFwc2UgcGhvdG9zLjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJyb3ciPjxkaXYgY2xhc3M9ImNvbC1sZy0zIGNvbC1tZC00IGNvbC1zbS0yNCBjb2wteHMtMjQiPjxkaXYgY2xhc3M9InRpdGxlIj5MaWNlbnNlOjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckl0ZW0iPjxhIGhyZWY9Imh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzMuMC8iIHJlbD0ibGljZW5zZSIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSIvL3d3dy5wYW5nYWVhLmRlL3NoYXJlZC9waWNzL2xpY2Vuc2VzL0NDLUJZLnBuZyIgc3R5bGU9InZlcnRpY2FsLWFsaWduOmJhc2VsaW5lOyBib3JkZXItd2lkdGg6MDsiIGFsdD0iQ0MtQlkiIC8+IENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24gMy4wIFVucG9ydGVkPC9hPjwvZGl2Pgo8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJyb3ciPjxkaXYgY2xhc3M9ImNvbC1sZy0zIGNvbC1tZC00IGNvbC1zbS0yNCBjb2wteHMtMjQiPjxkaXYgY2xhc3M9InRpdGxlIj5TaXplOjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0Ij48ZGl2IGNsYXNzPSJkZXNjciI+PGRpdiBjbGFzcz0iTWV0YUhlYWRlckl0ZW0iPjU2NjMuMCBrQnl0ZXM8L2Rpdj4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icm93Ij4KPGRpdiBjbGFzcz0iY29sLWxnLTIxIGNvbC1tZC0yMCBjb2wtc20tMjQgY29sLXhzLTI0IGNvbC1sZy1vZmZzZXQtMyBjb2wtbWQtb2Zmc2V0LTQiPgo8ZGl2IGNsYXNzPSJ0ZXh0LWJsb2NrIHRvcC1ib3JkZXIiPgo8aDIgaWQ9ImRvd25sb2FkIj5Eb3dubG9hZCBEYXRhPC9oMj4KPHA+PGEgaHJlZj0iaHR0cDovL3N0b3JlLnBhbmdhZWEuZGUvUHVibGljYXRpb25zL0pvaGFuc3NvbkVfZXRfYWxfMjAxNC9qb2hhbnNzb25fZXRhbC0yMDE0LnppcCIgdGFyZ2V0PSJfc2VsZiI+RG93bmxvYWQgZGF0YXNldDwvYT48L3A+CjwvZGl2PjwvZGl2PjwvZGl2Pgo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPGRpdiBpZD0iZm9vdGVyLXdyYXBwZXIiIGNsYXNzPSJ0b3AtYm9yZGVyIGhpZGRlbi1wcmludCI+DQogIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+DQogICAgPGZvb3RlciBjbGFzcz0icm93Ij48IS0tIHZvbGxlIFNjcmVlbi1CcmVpdGUgLS0+DQogICAgICA8ZGl2IGNsYXNzPSJjb250ZW50LXdyYXBwZXIiPjwhLS0gbWF4LiBCcmVpdGUgLS0+DQogICAgICAgIDxkaXYgY2xhc3M9ImJsaW5kc3BhbHRlIGNvbC1sZy0zIGNvbC1tZC00IGNvbC1zbS00IGNvbC14cy00Ij48L2Rpdj4NCiAgICAgICAgPGRpdiBpZD0iZm9vdGVyLWhvc3RlZC1ieS1hcmVhIiBjbGFzcz0iY29sLWxnLTE4IGNvbC1tZC05IGNvbC1zbS0yNCBjb2wteHMtMjQiPg0KICAgICAgICAgIDwhLS08ZGl2IGNsYXNzPSJjb2wtbGctMjQgY29sLW1kLTI0IGNvbC1zbS0yNCBjb2wteHMtMjQiPi0tPg0KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMiBjb2wtbWQtMjQgY29sLXNtLTI0IGNvbC14cy0yNCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkbGluZSB1bmRlcmxpbmVkIj4NCiAgICAgICAgICAgICAgUEFOR0FFQSBpcyBob3N0ZWQgYnkNCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICA8cD4NCiAgICAgICAgICAgICAgICBBbGZyZWQgV2VnZW5lciBJbnN0aXR1dGUsIEhlbG1ob2x0eiBDZW50ZXIgZm9yIFBvbGFyIGFuZCBNYXJpbmUgUmVzZWFyY2ggKEFXSSk8YnIvPg0KICAgICAgICAgICAgICAgIENlbnRlciBmb3IgTWFyaW5lIEVudmlyb25tZW50YWwgU2NpZW5jZXMsIFVuaXZlcnNpdHkgb2YgQnJlbWVuIChNQVJVTSkNCiAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRsaW5lIHVuZGVybGluZWQiPg0KICAgICAgICAgICAgICBUaGUgU3lzdGVtIGlzIHN1cHBvcnRlZCBieQ0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgIDxwPg0KICAgICAgICAgICAgICAgIFRoZSBFdXJvcGVhbiBDb21taXNzaW9uLCBSZXNlYXJjaDxici8+DQogICAgICAgICAgICAgICAgRmVkZXJhbCBNaW5pc3RyeSBvZiBFZHVjYXRpb24gYW5kIFJlc2VhcmNoIChCTUJGKTxici8+DQogICAgICAgICAgICAgICAgRGV1dHNjaGUgRm9yc2NodW5nc2dlbWVpbnNjaGFmdCAoREZHKTxici8+DQogICAgICAgICAgICAgICAgSW50ZXJuYXRpb25hbCBPY2VhbiBEaXNjb3ZlcnkgUHJvZ3JhbSAoSU9EUCkNCiAgICAgICAgICAgICAgPC9wPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIgY29sLW1kLTI0IGNvbC1zbS0yNCBjb2wteHMtMjQiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGxpbmUgdW5kZXJsaW5lZCI+DQogICAgICAgICAgICAgIFBBTkdBRUEgaXMgbWVtYmVyIG9mDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgPGEgaHJlZj0iLy93d3cuaWNzdS13ZHMub3JnLyIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJJQ1NVIFdvcmxkIERhdGEgU3lzdGVtIj4NCiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJjb2wtbGctNiBjb2wtbWQtNiBjb2wtc20tNiBjb2wteHMtNiIgc3JjPSIvL3d3dy5wYW5nYWVhLmRlL2Fzc2V0cy92LjMwM2YzMWRkYjczZjBlOTg1MDgyZWY1NmZhYzY4YWE4L2xvZ29zL2xvZ28td2RzLWJsb2NrLnBuZyIgYWx0PSJJQ1NVIFdvcmxkIERhdGEgU3lzdGVtIj4NCiAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy53bW8uaW50LyIgdGFyZ2V0PSJfYmxhbmsiIHRpdGxlPSJXb3JsZCBNZXRlb3JvbG9naWNhbCBPcmdhbml6YXRpb24iPg0KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImNvbC1sZy02IGNvbC1tZC02IGNvbC1zbS02IGNvbC14cy02IiBzcmM9Ii8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3YuMzAzZjMxZGRiNzNmMGU5ODUwODJlZjU2ZmFjNjhhYTgvbG9nb3MvbG9nby13bW8tYmxvY2sucG5nIiBhbHQ9IldvcmxkIE1ldGVvcm9sb2dpY2FsIE9yZ2FuaXphdGlvbiI+DQogICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBpZD0iZm9vdGVyLXNvY2lhbC1hcmVhIiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTI0IGNvbC1zbS0yNCBjb2wteHMtMjQiPg0KICAgICAgICAgIDxkaXYgaWQ9ImZvb3Rlci1zb2NpYWwtYXJlYS13cmFwcGVyIiBjbGFzcz0iY29sLWxnLTI0IGNvbC1tZC0yNCBjb2wtc20tMjQgY29sLXhzLTI0Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJsaW5kc3BhbHRlIGNvbC1sZy0wIGNvbC1tZC00Ij48L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0yNCBjb2wtbWQtNSBjb2wtbWQtNSBjb2wteHMtMTAiPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ1bmRlcmxpbmVkIj5TaGFyZSBvbi4uLjwvZGl2Pg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzb2NpYWwtaWNvbnMiPg0KICAgICAgICAgICAgICAgIDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJzZWxmLXJlZmVyZXItbGluayBzaGFyZS1saW5rIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL25vanMucGhwIiBkYXRhLXRlbXBsYXRlPSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vc2hhcmVyLnBocD91PSN1IyZhbXA7dD0jdCMiIHRpdGxlPSJTaGFyZSBvbiBGYWNlYm9vayIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgICAgICAgPGltZyBpZD0iZmFjZWJvb2staWNvbiIgY2xhc3M9ImNvbC1sZy04IGNvbC1tZC04IGNvbC1zbS04IGNvbC14cy04IiBzcmM9Ii8vd3d3LnBhbmdhZWEuZGUvYXNzZXRzL3YuMzAzZjMxZGRiNzNmMGU5ODUwODJlZjU2ZmFjNjhhYTgvc29jaWFsLWljb25zL2ZhY2Vib29rLWljb24ucG5nIiBhbHQ9IkZhY2Vib29rIEljb24iPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgICA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0ic2VsZi1yZWZlcmVyLWxpbmsgc2hhcmUtbGluayIgaHJlZj0iLy93d3cucGFuZ2FlYS5kZS9ub2pzLnBocCIgZGF0YS10ZW1wbGF0ZT0iaHR0cHM6Ly90d2l0dGVyLmNvbS9pbnRlbnQvdHdlZXQ/dXJsPSN1IyZhbXA7dGV4dD0jdCMiIHRpdGxlPSJTaGFyZSBvbiBUd2l0dGVyIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICAgICAgICA8aW1nIGlkPSJ0d2l0dGVyLWljb24iIGNsYXNzPSJjb2wtbGctOCBjb2wtbWQtOCBjb2wtc20tOCBjb2wteHMtOCIgc3JjPSIvL3d3dy5wYW5nYWVhLmRlL2Fzc2V0cy92LjMwM2YzMWRkYjczZjBlOTg1MDgyZWY1NmZhYzY4YWE4L3NvY2lhbC1pY29ucy90d2l0dGVyLWljb24ucG5nIiBhbHQ9IlR3aXR0ZXIgSWNvbiI+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJzZWxmLXJlZmVyZXItbGluayBzaGFyZS1saW5rIiBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL25vanMucGhwIiBkYXRhLXRlbXBsYXRlPSJodHRwczovL3BsdXMuZ29vZ2xlLmNvbS9zaGFyZT91cmw9I3UjJmFtcDtobD1lbiIgdGl0bGU9IlNoYXJlIG9uIEdvb2dsZSsiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImdwbHVzLWljb24iIGNsYXNzPSJjb2wtbGctOCBjb2wtbWQtOCBjb2wtc20tOCBjb2wteHMtOCIgc3JjPSIvL3d3dy5wYW5nYWVhLmRlL2Fzc2V0cy92LjMwM2YzMWRkYjczZjBlOTg1MDgyZWY1NmZhYzY4YWE4L3NvY2lhbC1pY29ucy9ncGx1cy1pY29uLnBuZyIgYWx0PSJHb29nbGUrIEljb24iPg0KICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJsaW5kc3BhbHRlIGNvbG8tbGctMCBjb2wtbWQtMTgiPjwvZGl2Pg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgPGRpdiBpZD0iZm9vdGVyLW1lbnUtYXJlYSIgY2xhc3M9ImNvbC1sZy0yNCBjb2wtbWQtMjQgY29sLXNtLTI0IGNvbC14cy0yNCI+DQogICAgICAgICAgPGRpdiBjbGFzcz0iYmxpbmRzcGFsdGUgY29sLWxnLTMgY29sLW1kLTQgY29sLXNtLTQgY29sLXhzLTQiPjwvZGl2Pg0KICAgICAgICAgIDxkaXYgaWQ9ImZvb3Rlci1tZW51LXdyYXBwZXIiIGNsYXNzPSJjb2wtbGctMjEgY29sLW1kLTIwIGNvbC1zbS0yNCBjb2wteHMtMjQiPg0KICAgICAgICAgICAgPG5hdiBpZD0iZm9vdGVyLW5hdiI+DQogICAgICAgICAgICAgIDx1bD4NCiAgICAgICAgICAgICAgICA8bGkgaWQ9ImFib3V0LWxlZ2FsLW5vdGljZSI+DQogICAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fib3V0L2xlZ2FsLnBocCI+TGVnYWwgbm90aWNlPC9hPg0KICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGlkPSJhYm91dC1wcml2YWN5LXBvbGljeSI+DQogICAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fib3V0L3ByaXZhY3lwb2xpY3kucGhwIj5Qcml2YWN5IHBvbGljeTwvYT4NCiAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgIDxsaSBpZD0iYWJvdXQtY29va2llcyI+DQogICAgICAgICAgICAgICAgICA8YSBocmVmPSIvL3d3dy5wYW5nYWVhLmRlL2Fib3V0L2Nvb2tpZXMucGhwIj5Db29raWVzPC9hPg0KICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgPGxpIGlkPSJhYm91dC1jb250YWN0Ij4NCiAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8vd3d3LnBhbmdhZWEuZGUvY29udGFjdC8iPkNvbnRhY3Q8L2E+DQogICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvbmF2Pg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2xlYXJmaXgiPjwvZGl2Pg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgIDwvZGl2Pg0KICAgIDwvZm9vdGVyPg0KICA8L2Rpdj4NCjwvZGl2Pg0KPC9ib2R5Pgo8L2h0bWw+Cg==
|
43
43
|
http_version:
|
44
|
-
recorded_at: Sun,
|
44
|
+
recorded_at: Sun, 01 Apr 2018 09:08:51 GMT
|
45
45
|
recorded_with: VCR 3.0.3
|
@@ -8,7 +8,7 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Maremma - https://github.com/datacite/maremma
|
11
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
12
12
|
Accept:
|
13
13
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
14
|
response:
|
@@ -29,17 +29,17 @@ http_interactions:
|
|
29
29
|
Location:
|
30
30
|
- "/eating-your-own-dog-food/"
|
31
31
|
Date:
|
32
|
-
- Sun,
|
32
|
+
- Sun, 01 Apr 2018 09:07:34 GMT
|
33
33
|
Server:
|
34
34
|
- AmazonS3
|
35
35
|
Age:
|
36
|
-
- '
|
36
|
+
- '7'
|
37
37
|
X-Cache:
|
38
38
|
- Hit from cloudfront
|
39
39
|
Via:
|
40
|
-
- 1.1
|
40
|
+
- 1.1 b4a55cbff1b10f55c71caa19690c960e.cloudfront.net (CloudFront)
|
41
41
|
X-Amz-Cf-Id:
|
42
|
-
-
|
42
|
+
- PiYKF90NnJ3q74OCFm-SsaoZ4dFao2Mf2nsqorGgC5peSZ1G49af-w==
|
43
43
|
body:
|
44
44
|
encoding: ASCII-8BIT
|
45
45
|
string: |
|
@@ -50,14 +50,14 @@ http_interactions:
|
|
50
50
|
<ul>
|
51
51
|
<li>Code: Found</li>
|
52
52
|
<li>Message: Resource Found</li>
|
53
|
-
<li>RequestId:
|
54
|
-
<li>HostId:
|
53
|
+
<li>RequestId: 9969744BDEDE2DCF</li>
|
54
|
+
<li>HostId: CHCBOci8Ah7seqAe+QhEI4MkzkKUaFeWxNnz62xRgBd+OUDoxKz3/WrhvPncEjkePwujz5xR060=</li>
|
55
55
|
</ul>
|
56
56
|
<hr/>
|
57
57
|
</body>
|
58
58
|
</html>
|
59
59
|
http_version:
|
60
|
-
recorded_at: Sun,
|
60
|
+
recorded_at: Sun, 01 Apr 2018 09:07:41 GMT
|
61
61
|
- request:
|
62
62
|
method: get
|
63
63
|
uri: https://blog.datacite.org/eating-your-own-dog-food/
|
@@ -66,7 +66,7 @@ http_interactions:
|
|
66
66
|
string: ''
|
67
67
|
headers:
|
68
68
|
User-Agent:
|
69
|
-
- Maremma - https://github.com/datacite/maremma
|
69
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
70
70
|
Accept:
|
71
71
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
72
72
|
response:
|
@@ -81,27 +81,27 @@ http_interactions:
|
|
81
81
|
Connection:
|
82
82
|
- keep-alive
|
83
83
|
Date:
|
84
|
-
- Sun,
|
84
|
+
- Sun, 01 Apr 2018 09:07:35 GMT
|
85
85
|
Cache-Control:
|
86
86
|
- max-age=31536000
|
87
87
|
Last-Modified:
|
88
|
-
-
|
88
|
+
- Sat, 17 Mar 2018 06:52:49 GMT
|
89
89
|
Etag:
|
90
90
|
- '"1503fefbb078bce096ab37de682aaef9"'
|
91
91
|
Server:
|
92
92
|
- AmazonS3
|
93
93
|
Age:
|
94
|
-
- '
|
94
|
+
- '7'
|
95
95
|
X-Cache:
|
96
96
|
- Hit from cloudfront
|
97
97
|
Via:
|
98
|
-
- 1.1
|
98
|
+
- 1.1 f5d27f80802e2b6e66ec3970da5568b8.cloudfront.net (CloudFront)
|
99
99
|
X-Amz-Cf-Id:
|
100
|
-
-
|
100
|
+
- "-aA8hrGsojsp7E9okzWAiBPen1XoAZfca4cKjVGRw_EbL3f41hhFcA=="
|
101
101
|
body:
|
102
102
|
encoding: ASCII-8BIT
|
103
103
|
string: !binary |-
|
104
104
|
PCFET0NUWVBFIGh0bWw+CiAgPGh0bWw+CiAgICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICAgIDwhLS0gKDEpIE9wdGltaXplIGZvciBtb2JpbGUgdmVyc2lvbnM6IGh0dHA6Ly9nb28uZ2wvRU9wRmwgLS0+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8IS0tICgxKSBmb3JjZSBsYXRlc3QgSUUgcmVuZGVyaW5nIGVuZ2luZTogYml0Lmx5LzFjOEVpQzkgLS0+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPgoKCiAgICA8dGl0bGU+RWF0aW5nIHlvdXIgb3duIERvZyBGb29kPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJFYXRpbmcgeW91ciBvd24gZG9nIGZvb2QgaXMgYSBzbGFuZyB0ZXJtIHRvIGRlc2NyaWJlIHRoYXQgYW4gb3JnYW5pemF0aW9uIHNob3VsZCBpdHNlbGYgdXNlIHRoZSBwcm9kdWN0cyBhbmQgc2VydmljZXMgaXQgcHJvdmlkZXMuIEZvciBEYXRhQ2l0ZSB0aGlzIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHVzZSBET0lzIHdpdGggYXBwcm9wcmlhdGUgbWV0YWRhdGEgYW5kIHN0cmF0ZWdpZXMgZm9yIGxvbmctdGVybSBwcmVzZXJ2YXRpb24gZm9yLi4uIiAvPgoKICAgIDxtZXRhIG5hbWU9IkhhbmRoZWxkRnJpZW5kbHkiIGNvbnRlbnQ9IlRydWUiIC8+CiAgICA8bWV0YSBuYW1lPSJNb2JpbGVPcHRpbWl6ZWQiIGNvbnRlbnQ9IjMyMCIgLz4KICAgIDxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyI+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1zdGF0dXMtYmFyLXN0eWxlIiBjb250ZW50PSJibGFjay10cmFuc2x1Y2VudCI+CgogICAgPCEtLSBEdWJsaW5Db3JlIE1ldGFkYXRhIC0tPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnRpdGxlIiBjb250ZW50PSJFYXRpbmcgeW91ciBvd24gRG9nIEZvb2QiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6Zm9ybWF0IiBjb250ZW50PSJ0ZXh0L2h0bWwiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6bGFuZ3VhZ2UiIGNvbnRlbnQ9ImVuIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnJpZ2h0cyIgY29udGVudD0iQ0MtQlkiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6c291cmNlIiBjb250ZW50PSJEYXRhQ2l0ZSBCbG9nIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnN1YmplY3QiIGNvbnRlbnQ9IlNjaG9sYXJseSBDb21tdW5pY2F0aW9uIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnR5cGUiIGNvbnRlbnQ9IndlYnNpdGUiIC8+CgoKICAgIDxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkVhdGluZyB5b3VyIG93biBEb2cgRm9vZCIgLz4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iRWF0aW5nIHlvdXIgb3duIGRvZyBmb29kIGlzIGEgc2xhbmcgdGVybSB0byBkZXNjcmliZSB0aGF0IGFuIG9yZ2FuaXphdGlvbiBzaG91bGQgaXRzZWxmIHVzZSB0aGUgcHJvZHVjdHMgYW5kIHNlcnZpY2VzIGl0IHByb3ZpZGVzLiBGb3IgRGF0YUNpdGUgdGhpcyBtZWFucyB0aGF0IHdlIHNob3VsZCB1c2UgRE9JcyB3aXRoIGFwcHJvcHJpYXRlIG1ldGFkYXRhIGFuZCBzdHJhdGVnaWVzIGZvciBsb25nLXRlcm0gcHJlc2VydmF0aW9uIGZvci4uLiIgLz4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9ibG9nLmRhdGFjaXRlLm9yZy9pbWFnZXMvMjAxNi8xMi8yMzA3ODUuanBnIiAvPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9ImJsb2ciIC8+CgogICAgPGxpbmsgaHJlZj0iLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxpYnJlK0Jhc2tlcnZpbGxlOjQwMCw0MDBpLDcwMCIgcmVsPSJzdHlsZXNoZWV0Ij4KICAgIDxsaW5rIGhyZWY9Jy8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1SYWxld2F5OjQwMCw2MDAsNDAwaXRhbGljLDYwMGl0YWxpYycgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CiAgICA8bGluayBocmVmPSIvL21heGNkbi5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjYuMS9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0ndGV4dC9jc3MnPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9hc3NldHMuZGF0YWNpdGUub3JnL3N0eWxlc2hlZXRzL2RhdGFjaXRlLmNzcyIgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CiAgICA8bGluayBocmVmPSJodHRwczovL2Fzc2V0cy5kYXRhY2l0ZS5vcmcvaW1hZ2VzL2Zhdmljb24uaWNvIiByZWw9Imljb24iIHR5cGU9ImltYWdlL2ljbyIgLz4KCiAgICA8c2NyaXB0IHNyYz0iLy9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZml0dmlkcy8xLjEuMC9qcXVlcnkuZml0dmlkcy5taW4uanMiPjwvc2NyaXB0PgoKICAgICAgPHNjcmlwdAogICAgICAgIHNyYz0iLy9kMnd5OGY3YTl1cnNubS5jbG91ZGZyb250Lm5ldC9idWdzbmFnLTIubWluLmpzIgogICAgICAgIGRhdGEtYXBpa2V5PSJjMzdhNTg2MTk2NzA5MWE5YjQyYTFhNzdlMjM1MTE0YSI+CiAgICAgIDwvc2NyaXB0PgoKICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+CiAgICAgIHsiQGNvbnRleHQiOiJodHRwOi8vc2NoZW1hLm9yZyIsIkB0eXBlIjoiQmxvZ1Bvc3RpbmciLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmciLCJuYW1lIjoiRWF0aW5nIHlvdXIgb3duIERvZyBGb29kIiwiYWx0ZXJuYXRlTmFtZSI6Ik1TLTQ5LTM2MzItNTA4MyIsInVybCI6Imh0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLyIsImF1dGhvciI6W3siQHR5cGUiOiJQZXJzb24iLCJAaWQiOiJodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1IiwiZ2l2ZW5OYW1lIjoiTWFydGluIiwiZmFtaWx5TmFtZSI6IkZlbm5lciIsIm5hbWUiOiJNYXJ0aW4gRmVubmVyIn1dLCJwdWJsaXNoZXIiOnsiQHR5cGUiOiJPcmdhbml6YXRpb24iLCJuYW1lIjoiRGF0YUNpdGUifSwiZGF0ZUNyZWF0ZWQiOiIyMDE2LTEyLTIwIiwiZGF0ZVB1Ymxpc2hlZCI6IjIwMTYtMTItMjAiLCJkYXRlTW9kaWZpZWQiOiIyMDE2LTEyLTIwIiwia2V5d29yZHMiOiJkYXRhY2l0ZSwgZG9pLCBtZXRhZGF0YSwgZmVhdHVyZWQiLCJ2ZXJzaW9uIjoiMS4wIiwiZGVzY3JpcHRpb24iOiJFYXRpbmcgeW91ciBvd24gZG9nIGZvb2QgaXMgYSBzbGFuZyB0ZXJtIHRvIGRlc2NyaWJlIHRoYXQgYW4gb3JnYW5pemF0aW9uIHNob3VsZCBpdHNlbGYgdXNlIHRoZSBwcm9kdWN0cyBhbmQgc2VydmljZXMgaXQgcHJvdmlkZXMuIEZvciBEYXRhQ2l0ZSB0aGlzIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHVzZSBET0lzIHdpdGggYXBwcm9wcmlhdGUgbWV0YWRhdGEgYW5kIHN0cmF0ZWdpZXMgZm9yIGxvbmctdGVybSBwcmVzZXJ2YXRpb24gZm9yLi4uIiwibGljZW5zZSI6Imh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS80LjAvIiwiaW1hZ2UiOiJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2ltYWdlcy8yMDE2LzEyLzIzMDc4NS5qcGciLCJpc1BhcnRPZiI6eyJAdHlwZSI6IkJsb2ciLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDAwLTAwU1MiLCJuYW1lIjoiRGF0YUNpdGUgQmxvZyJ9LCJjaXRhdGlvbiI6W3siQHR5cGUiOiJDcmVhdGl2ZVdvcmsiLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIn0seyJAdHlwZSI6IkNyZWF0aXZlV29yayIsIkBpZCI6Imh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzU1RTUtVDVDMCJ9XX0KICAgIDwvc2NyaXB0PgogIDwvaGVhZD4KICA8Ym9keT4KICAgIDxoZWFkZXIgY2xhc3M9ImhlYWRlciIgaWQ9Im5hdnRvcCI+CiAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItd2hpdGUiIHJvbGU9Im5hdmlnYXRpb24iPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaGVhZGVyIgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im5hdmJhci10b2dnbGUiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXZiYXItY29sbGFwc2UiPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgbmF2aWdhdGlvbjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxhIGNsYXNzPSJuYXZiYXItYnJhbmQiIGhyZWY9Ii8iPkRhdGFDaXRlIEJsb2c8L2E+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItY29sbGFwc2UgY29sbGFwc2UiPgogICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2IG5hdmJhci1yaWdodCI+CiAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5kYXRhY2l0ZS5vcmciPlN1cHBvcnQ8L2E+PC9saT4KICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgaWQ9InNpdGVzIj48aSBjbGFzcz0nZmEgZmEtdGgnPjwvaT4gPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+PC9hPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLWdsb2JlIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgSG9tZXBhZ2U8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtcnNzIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgQmxvZzwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkaXZpZGVyIj48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9tZHMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtZGF0YWJhc2UgZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBNRFM8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3NjaGVtYS5kYXRhY2l0ZS5vcmciPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1maWxlLWNvZGUtbyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFNjaGVtYTwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9jaXRhdGlvbi5jcm9zc2NpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtZmlsZS10ZXh0LW8gZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBDaXRhdGlvbiBGb3JtYXR0ZXI8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc2VhcmNoLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLXNlYXJjaCBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFNlYXJjaDwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vb2FpLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLXRhYmxlIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgT0FJLVBNSDwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3RhdHMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtYmFyLWNoYXJ0IGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgU3RhdGlzdGljczwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vYXBpLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLWNvZ3MgZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBSRVNUIEFQSTwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cucmUzZGF0YS5vcmciPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1jdWJlcyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIHJlM2RhdGE8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9zdGF0dXMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtY2FsZW5kYXItY2hlY2stbyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFN0YXR1czwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvaGVhZGVyPgogICAgICA8ZGl2IGNsYXNzPSJ3cmFwcGVyIj4KICAgIDxkaXYgY2xhc3M9InNlY3Rpb24gc2VjdGlvbi13aGl0ZSI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0icm93IHJvdy1zZWN0aW9uIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1tZC1vZmZzZXQtMiBwb3N0LWNvbnRlbnQiPgogICAgICAgICAgICA8YSBuYW1lPSJ0b3BvZnBhZ2UiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zdC1tZXRhIj4KICAgICAgICAgICAgICA8aDE+RWF0aW5nIHlvdXIgb3duIERvZyBGb29kPC9oMT4KICAgICAgICAgICAgICBEZWNlbWJlciAyMCwgMjAxNiBieSBNYXJ0aW4gRmVubmVyCiAgICAgICAgICAgICAg4oCiIDxzcGFuIGNsYXNzPSJwb3N0LXJlYWRpbmctdGltZSI+PC9zcGFuPiByZWFkCiAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZG9pIj48YSBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmciPmh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzRrM20tbnl2ZzwvYT48L3A+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPHA+PGEgaHJlZj0iaHR0cHM6Ly9uZXdyZXB1YmxpYy5jb20vYXJ0aWNsZS8xMTUzNDkvZG9nZm9vZGluZy10ZWNoLXNsYW5nLXdvcmtpbmctb3V0LWdsaXRjaGVzIj5FYXRpbmcgeW91ciBvd24gZG9nIGZvb2Q8L2E+IGlzIGEgc2xhbmcgdGVybSB0byBkZXNjcmliZSB0aGF0IGFuIG9yZ2FuaXphdGlvbiBzaG91bGQgaXRzZWxmIHVzZSB0aGUgcHJvZHVjdHMgYW5kIHNlcnZpY2VzIGl0IHByb3ZpZGVzLiBGb3IgRGF0YUNpdGUgdGhpcyBtZWFucyB0aGF0IHdlIHNob3VsZCB1c2UgRE9JcyB3aXRoIGFwcHJvcHJpYXRlIG1ldGFkYXRhIGFuZCBzdHJhdGVnaWVzIGZvciBsb25nLXRlcm0gcHJlc2VydmF0aW9uIGZvciB0aGUgc2Nob2xhcmx5IG91dHB1dHMgd2UgcHJvZHVjZS4gRm9yIHRoZSBtb3N0IHBhcnQgdGhpcyBpcyBub3QgcmVzZWFyY2ggZGF0YSwgYnV0IHJhdGhlciB0ZWNobmljYWwgZG9jdW1lbnRzIHN1Y2ggYXMgdGhlIERhdGFDaXRlIFNjaGVtYSBhbmQgaXRzIGRvY3VtZW50YXRpb24gPHNwYW4gY2xhc3M9ImNpdGF0aW9uIj4oPGEgaHJlZj0iI3JlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIj4yMDE2PC9hPik8L3NwYW4+LjwvcD4KPHA+VGhlc2Ugb3V0cHV0cyBhbHNvIGluY2x1ZGUgdGhlIHBvc3RzIG9uIHRoaXMgYmxvZywgd2hlcmUgd2UgZGlzY3VzcyB0b3BpY3MgcmVsZXZhbnQgZm9yIHRoZSBEYXRhQ2l0ZSBjb21tdW5pdHksIGJ1dCBhbHNvIG9mIGJyb2FkZXIgaW50ZXJlc3QgdG8gYW55b25lIHdobyBjYXJlcyBhYm91dCByZXNlYXJjaCBkYXRhLCBwZXJzaXN0ZW50IGlkZW50aWZpZXJzLCBhbmQgc2Nob2xhcmx5IGluZnJhc3RydWN0dXJlLiBBbmQgc3RhcnRpbmcgdG9kYXkgYWxsIGJsb2cgcG9zdHMgb24gdGhpcyBibG9nIHdpbGwgaGF2ZSBhIERPSSwgbWV0YWRhdGEgYW5kIHVzZSBhIHBlcnNpc3RlbnQgc3RvcmFnZSBtZWNoYW5pc20uPC9wPgo8ZGl2IGNsYXNzPSJmaWd1cmUiPgo8aW1nIHNyYz0iL2ltYWdlcy8yMDE2LzEyLzIzMDc4NS5qcGciIGFsdD0iUGhvdG8gYnkgQmlsbCBFbXJpY2guIENDIFplcm8uIiAvPgo8cCBjbGFzcz0iY2FwdGlvbiI+UGhvdG8gYnkgPGEgaHJlZj0iaHR0cHM6Ly93d3cucGV4ZWxzLmNvbS9waG90by9ibGFjay1hbmQtdGFuLXlvcmtzaGlyZS10ZXJyaWVyLXB1cHB5LTIzMDc4NS8iPkJpbGwgRW1yaWNoPC9hPi4gPGEgaHJlZj0iaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL3B1YmxpY2RvbWFpbi96ZXJvLzEuMC8iPkNDIFplcm88L2E+LjwvcD4KPC9kaXY+CjxoMyBpZD0idGVjaG5pY2FsLWltcGxlbWVudGF0aW9uIj5UZWNobmljYWwgSW1wbGVtZW50YXRpb248L2gzPgo8cD5UaGlzIGJsb2cgaXMgcG93ZXJlZCBieSB0aGUgc3RhdGljIHNpdGUgZ2VuZXJhdG9yIDxhIGhyZWY9Imh0dHBzOi8vbWlkZGxlbWFuYXBwLmNvbS8iPk1pZGRsZW1hbjwvYT4sIHdpdGggYmxvZyBwb3N0cyB3cml0dGVuIGluIDxhIGhyZWY9Imh0dHA6Ly9jb21tb25tYXJrLm9yZy8iPk1hcmtkb3duPC9hPiBhbmQgY29udmVydGVkIHRvIEhUTUwgdXNpbmcgPGEgaHJlZj0iaHR0cDovL3BhbmRvYy5vcmcvIj5QYW5kb2M8L2E+IGFuZCB0aGUgPGEgaHJlZj0iaHR0cHM6Ly90cmF2aXMtY2kub3JnIj5UcmF2aXMgQ0k8L2E+IGNvbnRpbnVvdXMgaW50ZWdyYXRpb24gc2VydmljZS4gU3RhdGljIHNpdGUgZ2VuZXJhdG9yIG1lYW5zIHRoYXQgdGhlcmUgaXMgbm8gZGF0YWJhc2Ugb3IgYXBwbGljYXRpb24gc2VydmVyIHBvd2VyaW5nIHRoZSBzaXRlLCBtYWtpbmcgd2Vic2l0ZSBhZG1pbnN0cmF0aW9uIHNpbXBsZXIsIGNoZWFwZXIgYW5kIHNhZmVyLiBJbiBhZGRpdGlvbiB0byB0aGUgYmxvZywgdGhlIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZyI+RGF0YUNpdGUgaG9tZXBhZ2U8L2E+IGFuZCA8YSBocmVmPSJodHRwczovL3NjaGVtYS5kYXRhY2l0ZS5vcmciPk1ldGFkYXRhIFNjaGVtYSBzdWJzaXRlPC9hPiBhcmUgYWxzbyBnZW5lcmF0ZWQgdXNpbmcgTWlkZGxlbWFuLjwvcD4KPHA+VGhlIHNpbXBsaWNpdHkgaXMgcGFydGljdWxhcmx5IGltcG9ydGFudCBoZXJlLCBhcyByZWdpc3RlcmluZyB0aGUgRE9JcyBhbmQgbWV0YWRhdGEgY2FuIGJlIGFjY29tcGxpc2hlZCB1c2luZyBhIGNvbW1hbmQgbGluZSB1dGlsaXR5IHdyaXR0ZW4gYnkgRGF0YUNpdGUgc3RhZmYgdGhhdCBkb2VzbuKAmXQgbmVlZCB0byBrbm93IG11Y2ggYWJvdXQgdGhlIGludGVybmFscyBvZiBNaWRkbGVtYW4sIGFuZCB0aHVzIGNhbiBiZSBlYXNpbHkgYWRhcHRlZCB0byBvdGhlciBzdGF0aWMgc2l0ZSBnZW5lcmF0b3JzIHN1Y2ggYXMgPGEgaHJlZj0iaHR0cDovL2pla3lsbHJiLmNvbS8iPkpla3lsbDwvYT4sIDxhIGhyZWY9Imh0dHA6Ly9nb2h1Z28uaW8vIj5IdWdvPC9hPiBvciA8YSBocmVmPSJodHRwczovL2hleG8uaW8vIj5IZXhvPC9hPi4gVGhlIGNvbW1hbmQgbGluZSB1dGlsaXR5IGlzIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhY2l0ZS9jaXJuZWNvIj5DaXJuZWNvPC9hPiwgZ2VuZXJhdGluZyB0aGUgbWV0YWRhdGEgWE1MIGFjY29yZGluZyB0byB0aGUgRGF0YUNpdGUgTWV0YWRhdGEgU2NoZW1hLCBhbmQgcmVnaXN0ZXJpbmcgRE9JIGFuZCBtZXRhZGF0YSB3aXRoIHRoZSBEYXRhQ2l0ZSBNRFMuIExpa2UgYWxsIHRvb2xzIG1lbnRpb25lZCBpbiB0aGlzIHBvc3QgQ2lybmVjbyBpcyBvcGVuIHNvdXJjZSBzb2Z0d2FyZSwgcGxlYXNlIHJlYWNoIG91dCB0byB1cyBpZiB5b3UgYXJlIGludGVyZXN0ZWQgaW4gaW1wbGVtZW50aW5nIHNpbWlsYXIgZnVuY3Rpb25hbGl0eSBmb3IgeW91ciBibG9nLjwvcD4KPGgzIGlkPSJnZW5lcmF0aW5nLWRvaXMiPkdlbmVyYXRpbmcgRE9JczwvaDM+CjxwPlRoZSBET0lzIGZvciB0aGlzIGJsb2cgYXJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5LCB1c2luZyBhIG1vZGlmaWVkIGJhc2UzMiBlbmNvZGluZyBhbGdvcml0aG0gdGhhdCBpcyBwcm92aWRlZCBieSBDaXJuZWNvLCBhcyBkaXNjdXNzZWQgbGFzdCB3ZWVrIDxzcGFuIGNsYXNzPSJjaXRhdGlvbiI+KEZlbm5lciwgPGEgaHJlZj0iI3JlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzAiPjIwMTY8L2E+KTwvc3Bhbj4uIFRoZSBET0kgaXMgZ2VuZXJhdGVkIGFuZCBtaW50ZWQgd2hlbiBhIG5ldyBwb3N0IGlzIHB1c2hlZCB0byA8YSBocmVmPSJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnIiBjbGFzcz0idXJpIj5odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnPC9hPi4gVGhpcyBhdm9pZHMgdHdvIHByb2JsZW1zOiBhKSBET0ktbGlrZSBzdHJpbmdzIGluIHRoZSB3aWxkIGJlZm9yZSBwdWJsaWNhdGlvbiBhbmQgYikgdGhlIHJhbmRvbWx5IGdlbmVyYXRlZCBET0kgZXhpc3RzIGFscmVhZHkgKHdlIGNhbiBzaW1wbHkgZ2VuZXJhdGUgYSBuZXcgb25lKS4gQWxsIERPSXMgYXJlIHNob3J0LCB3aXRob3V0IHNlbWFudGljIGluZm9tYXRpb24gdGhhdCBtaWdodCBjaGFuZ2Ugb3ZlciB0aW1lLCBhbmQgd2l0aCBhIGNoZWNrc3VtIHRvIG1pbmltaXplIHRyYW5zY3JpcHRpb24gZXJyb3JzLCBmb3IgZXhhbXBsZSA8c3Ryb25nPmh0dHBzOi8vZG9pLm9yZy8xMC41NDM4L1hDQkotRzdaWTwvc3Ryb25nPi4gR29pbmcgZm9yd2FyZCB3ZSBlbmNvdXJhZ2UgdXNlcnMgdG8gbGluayB0byB0aGUgRGF0YUNpdGUgQmxvZyB1c2luZyB0aGUgRE9JLCBhcyB0aGVzZSBsaW5rcyB3aWxsIGNvbnRpbnVlIHRvIHdvcmsgZXZlbiBpZiB3ZSBldmVyIG1vdmUgdGhlIGJsb2cgdG8gYSBkaWZmZXJlbnQgbG9jYXRpb24uPC9wPgo8aDMgaWQ9ImdlbmVyYXRpbmctbWV0YWRhdGEiPkdlbmVyYXRpbmcgTWV0YWRhdGE8L2gzPgo8cD5Gb3IgdGhlIGdlbmVyYXRpb24gb2YgbWV0YWRhdGEsIHdlIG5lZWQgdG8gc3RyaWtlIGEgYmFsYW5jZSBiZXR3ZWVuIHNpbXBsZSBhdXRob3IgcHJvdmlkZWQgbWV0YWRhdGEsIGJ1dCByaWNoIGVub3VnaCB0byBhaWQgZGlzY292ZXJ5LiBXZSBhcmUgZG9pbmcgdGhpcyB2aWEgdGhyZWUgbWVjaGFuaXNtczo8L3A+Cjx1bD4KPGxpPm1ldGFkYXRhIHByb3ZpZGVkIGJ5IHRoZSBhdXRob3I8L2xpPgo8bGk+ZGVmYXVsdCBtZXRhZGF0YSBmb3IgdGhlIGJsb2c8L2xpPgo8bGk+bWV0YWRhdGEgYXV0b21hdGljYWxseSBleHRyYWN0ZWQgZnJvbSBjb250ZW50PC9saT4KPC91bD4KPHA+VGhlIG1ldGFkYXRhIHByb3ZpZGVkIGJ5IHRoZSBhdXRob3IgYXJlIHRoZSB0eXBpY2FsIG1ldGFkYXRhIGZvciBibG9nIHBvc3RzLCBwcm92aWRlZCB2aWEgPGEgaHJlZj0iaHR0cHM6Ly9nb2h1Z28uaW8vY29udGVudC9mcm9udC1tYXR0ZXIvIj5ZQU1MIGZyb250IG1hdHRlcjwvYT4gYXQgdGhlIGJlZ2lubmluZyBvZiBlYWNoIHBvc3Q6PC9wPgo8ZGl2IGNsYXNzPSJzb3VyY2VDb2RlIj48cHJlIGNsYXNzPSJzb3VyY2VDb2RlIHlhbWwiPjxjb2RlIGNsYXNzPSJzb3VyY2VDb2RlIHlhbWwiPjxzcGFuIGNsYXNzPSJvdCI+LS0tPC9zcGFuPgo8c3BhbiBjbGFzcz0iZnUiPmxheW91dDo8L3NwYW4+IHBvc3QKPHNwYW4gY2xhc3M9ImZ1Ij50aXRsZTo8L3NwYW4+IEVhdGluZyB5b3VyIG93biBEb2cgRm9vZAo8c3BhbiBjbGFzcz0iZnUiPmF1dGhvcjo8L3NwYW4+IG1mZW5uZXIKPHNwYW4gY2xhc3M9ImZ1Ij5kYXRlOjwvc3Bhbj4gMjAxNi0xMi0xOQo8c3BhbiBjbGFzcz0iZnUiPnRhZ3M6PC9zcGFuPgo8c3BhbiBjbGFzcz0ia3ciPi08L3NwYW4+IGRhdGFjaXRlCjxzcGFuIGNsYXNzPSJrdyI+LTwvc3Bhbj4gZG9pCjxzcGFuIGNsYXNzPSJrdyI+LTwvc3Bhbj4gbWV0YWRhdGEKPHNwYW4gY2xhc3M9Im90Ij4tLS08L3NwYW4+PC9jb2RlPjwvcHJlPjwvZGl2Pgo8cD5XZSBjYW4gcmV1c2UgYWxsIHRoZXNlIG1ldGFkYXRhIHdoZW4gZ2VuZXJhdGluZyBEYXRhQ2l0ZSBtZXRhZGF0YSwgdXNpbmcgdGhlIHRhZ3MgYXMgPGNvZGU+c3ViamVjdHM8L2NvZGU+LjwvcD4KPHA+VGhlIGRlZmF1bHQgbWV0YWRhdGEgYXJlIG1ldGFkYXRhIHRoYXQgYWx3YXlzIHN0YXkgdGhlIHNhbWUgZm9yIHRoZSBibG9nLCBzdWNoIGFzIDxjb2RlPnB1Ymxpc2hlcjwvY29kZT4sIDxjb2RlPkhvc3RpbmdJbnN0aXR1dGlvbjwvY29kZT4gYW5kIDxjb2RlPnJpZ2h0czwvY29kZT4uIFdlIGNhbiBzdG9yZSB0aGVtIGluIGEgc2l0ZS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4gV2UgY2FuIGFsc28gYXNzdW1lIHJlYXNvbmFibGUgZGVmYXVsdHMgdGhhdCBjYW4gYmUgb3ZlcnJpZGRlbiBpbiB0aGUgWUFNTCBmcm9udCBtYXR0ZXIsIGUuZy4gPGNvZGU+cmVzb3VyY2VUeXBlPC9jb2RlPiAod2UgdXNlIDxhIGhyZWY9Imh0dHBzOi8vc2NoZW1hLm9yZy9CbG9nUG9zdGluZyI+QmxvZ1Bvc3Rpbmc8L2E+IHdpdGggPGNvZGU+cmVzb3VyY2VUeXBlR2VuZXJhbDwvY29kZT4gVGV4dCkgYW5kIDxjb2RlPnZlcnNpb248L2NvZGU+LiBXZSBzdG9yZSBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGF1dGhvcnMgb3V0c2lkZSB0aGUgYmxvZyBwb3N0LCBpbmNsdWRpbmcgPGNvZGU+Z2l2ZW5OYW1lPC9jb2RlPiwgPGNvZGU+ZmFtaWx5TmFtZTwvY29kZT4gYW5kIDxjb2RlPm5hbWVJZGVudGlmaWVyPC9jb2RlPiAod2Ugbm93IHNob3cgdGhlIE9SQ0lEIElEIG9mIGV2ZXJ5IGJsb2cgYXV0aG9yIGF0IHRoZSBib3R0b20gb2YgdGhlIHBvc3QpLjwvcD4KPHA+RmluYWxseSwgdGhlcmUgYXJlIG1ldGFkYXRhIHRoYXQgd2UgY2FuIGF1dG9tYXRpY2FsbHkgZXh0cmFjdCBmcm9tIHRoZSBibG9nIHBvc3QsIGFuZCB3ZSBhcmUgY3VycmVudGx5IGRvaW5nIHRoaXMgZm9yIHRoZSA8Y29kZT5kZXNjcmlwdGlvbjwvY29kZT4gYW5kIDxjb2RlPnJlbGF0ZWRJZGVudGlmaWVyPC9jb2RlPi4gVGhpcyBibG9nIHVzZXMgUGFuZG9jIGFuZCBCaWJUZXggdG8gZ2VuZXJhdGUgdGhlIHJlZmVyZW5jZXMgc2VjdGlvbiBhdCB0aGUgZW5kLCBhbmQgd2UgY2FuIGZldGNoIHRoaXMgaW5mb3JtYXRpb24gYW5kIGNvbnZlcnQgaXQgaW50byB0aGUgZm9ybWF0IG5lZWRlZCBmb3IgPGNvZGU+cmVsYXRlZElkZW50aWZpZXI8L2NvZGU+LjwvcD4KPHA+VGFrZW4gdG9nZXRoZXIgd2UgY2FuIHByb3ZpZGUgYWxsIG1ldGFkYXRhIHRoYXQgYXJlIDxlbT5yZXF1aXJlZDwvZW0+IG9yIDxlbT5yZWNvbW1lbmRlZDwvZW0+IGluIHRoZSBNZXRhZGF0YSBTY2hlbWEgZG9jdW1lbnRhdGlvbiA8c3BhbiBjbGFzcz0iY2l0YXRpb24iPig8YSBocmVmPSIjcmVmLWh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzAwMTIiPjIwMTY8L2E+KTwvc3Bhbj4sIGFuZCB3ZSBjYW4gZG8gdGhpcyB3aXRob3V0IGFueSBleHRyYSBlZmZvcnQgZm9yIHRoZSBhdXRob3IuIFRoZSBmdWxsIFhNTCBpcyBhdmFsYWlsYWJsZSA8YSBocmVmPSJodHRwczovL2RhdGEuZGF0YWNpdGUub3JnL2FwcGxpY2F0aW9uL3gtZGF0YWNpdGUreG1sLzEwLjU0MzgvNEszTS1OWVZHIj5oZXJlPC9hPi48L3A+CjxwPk5vdCBhbGwgYmxvZyBwb3N0cyBuZWVkIHRvIGJlIGNpdGVkIGZvcm1hbGx5IHdpdGggbWV0YWRhdGEgaW4gYSA8ZW0+cmVmZXJlbmNlczwvZW0+IGxpc3QgZm9ybWF0dGVkIGFjY29yZGluZyB0byBhIHNwZWNpZmljIGNpdGF0aW9uIHN0eWxlLiBCdXQgdGhlc2UgbWV0YWRhdGEgZ3JlYXRseSBoZWxwIHdpdGggZGlzY292ZXJ5LCBhIHNlYXJjaCBpbiBEYXRhQ2l0ZSBTZWFyY2ggZm9yIDxhIGhyZWY9Imh0dHA6Ly9zZWFyY2guZGF0YWNpdGUub3JnL3dvcmtzP3F1ZXJ5PWVhdGluZytkb2crZm9vZCI+ZWF0aW5nIGRvZyBmb29kPC9hPiB3aWxsIGZvciBleGFtcGxlIGJyaW5nIHVwIHRoaXMgYmxvZyBwb3N0IGFzIHRoZSBmaXJzdCBoaXQuPC9wPgo8aDMgaWQ9InBlcnNpc3RlbnQtc3RvcmFnZSI+UGVyc2lzdGVudCBzdG9yYWdlPC9oMz4KPHA+VXNpbmcgRE9JcyBtZWFucyB0aGF0IHJlYWRlcnMgbm90IG9ubHkgZXhwZWN0IHJpY2ggbWV0YWRhdGEgdGhhdCBoZWxwIHdpdGggY2l0YXRpb24gYW5kIGRpc2NvdmVyeSwgYnV0IGFsc28gdGhhdCBEYXRhQ2l0ZSB0YWtlcyBleHRyYSBjYXJlIHRvIHByZXNlcnZlIHRoZSBibG9nIHBvc3RzLCB0aGlua2luZyBiZXlvbmQgdGhlIHBhcnRpY3VsYXIgdGVjaG5pY2FsIGltcGxlbWVudGF0aW9uIG9yIGV2ZW4gdGhlIGNvbnRpdWluZyBleGlzdGVuY2Ugb2YgdGhpcyBibG9nLiBUaGlzIGlzIGFuIGFyZWEgd2hlcmUgd2UgZG8gbmVlZCB0byBkbyBtb3JlIHdvcmssIHN0YXJ0aW5nIHdpdGggYSBkZWNpc2lvbiBhYm91dCB0aGUgYmVzdCBhcmNoaXZhbCBmb3JtYXQgZm9yIGEgYmxvZyBwb3N0IChIVE1MLCBQREYsIDxhIGhyZWY9Imh0dHBzOi8vamF0cy5ubG0ubmloLmdvdi8iPkpBVFM8L2E+PykuIEZvciBub3cgYmxvZyBwb3N0cyBhcmUgaG9zdGVkIGluIG11bHRpcGxlIEdpdCByZXBvc2l0b3JpZXMgKDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhY2l0ZS9ibG9nIj5vbmUgb2YgdGhlbSBvbiBHaXRodWI8L2E+KSwgYW5kIGluIHR3byBpbmRlcGVuZGVudCBBbWF6b24gUzMgYnVja2V0cyB0aGF0IGVhY2ggdXNlIDxhIGhyZWY9Imh0dHA6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvblMzL2xhdGVzdC9kZXYvVmVyc2lvbmluZy5odG1sIj52ZXJzaW9uaW5nPC9hPi4gTXVsdGlwbGUgbG9jYXRpb25zIHdpdGggdmVyc2lvbmluZyBhcmUgYSBnb29kIHN0YXJ0LCBidXQgbW9yZSB3b3JrIGlzIGNsZWFybHkgbmVlZGVkLjwvcD4KPGgzIGlkPSJyZWZlcmVuY2VzIiBjbGFzcz0idW5udW1iZXJlZCI+UmVmZXJlbmNlczwvaDM+CjxkaXYgaWQ9InJlZnMiIGNsYXNzPSJyZWZlcmVuY2VzIj4KPGRpdiBpZD0icmVmLWh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzAwMTIiPgo8cD5EYXRhQ2l0ZSBNZXRhZGF0YSBXb3JraW5nIEdyb3VwLiAoMjAxNikuIERhdGFDaXRlIE1ldGFkYXRhIFNjaGVtYSBmb3IgdGhlIFB1YmxpY2F0aW9uIGFuZCBDaXRhdGlvbiBvZiBSZXNlYXJjaCBEYXRhIHY0LjAuIDxlbT5EYXRhQ2l0ZTwvZW0+LiA8YSBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIiBjbGFzcz0idXJpIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyPC9hPjwvcD4KPC9kaXY+CjxkaXYgaWQ9InJlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzAiPgo8cD5GZW5uZXIsIE0uICgyMDE2KS4gQ29vbCBET0nigJlzLiA8ZW0+RGF0YUNpdGU8L2VtPi4gPGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjU0MzgvNTVFNS1UNUMwIiBjbGFzcz0idXJpIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzA8L2E+PC9wPgo8L2Rpdj4KPC9kaXY+CgogICAgICAgICAgICA8aHIgd2lkdGg9IjgwJSI+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTUgY29sLW1kLW9mZnNldC0yIHBvc3QtY29udGVudCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbS10ZWFzZXIgY2YiPgogIDxkaXYgY2xhc3M9ImlzTGVmdCI+CiAgICA8c2VjdGlvbiBjbGFzcz0iYXV0aG9yIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImF1dGhvci1pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwczovL3d3dy5ncmF2YXRhci5jb20vYXZhdGFyLzQzNDU5MmEwOTdlOTEyNjE3OTJlYmQ2YjQ5MjA0MmJjP3M9MjUwJmQ9bW0mcj14KSI+QmxvZyBMb2dvPC9kaXY+CiAgICAgICAgPGg0Pk1hcnRpbiBGZW5uZXI8L2g0PgogICAgICAgIDxwIGNsYXNzPSJiaW8iPkRhdGFDaXRlIFRlY2huaWNhbCBEaXJlY3RvcjwvcD4KICAgICAgICA8cCBjbGFzcz0ib3JjaWQiPjxhIGhyZWY9Imh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xNDE5LTI0MDUiPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xNDE5LTI0MDU8L2E+PC9wPgogICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4KICAgICAgPGg0PkVhdGluZyB5b3VyIG93biBEb2cgRm9vZDwvaDQ+CiAgICAgICAgPHAgY2xhc3M9InB1Ymxpc2hlZCI+PGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjU0MzgvNGszbS1ueXZnIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmc8L2E+CiAgICAgIDxwIGNsYXNzPSJwdWJsaXNoZWQiPjxpIGNsYXNzPSJmYSBmYS1jYWxlbmRhciI+PC9pPiA8dGltZSBkYXRldGltZT0iMjAxNi0xMi0yMCAwMDowMCI+RGVjZW1iZXIgMjAsIDIwMTY8L3RpbWU+PC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj48aSBjbGFzcz0iZmEgZmEtaGlzdG9yeSI+PC9pPiA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vZGF0YWNpdGUvYmxvZy9jb21taXRzL21hc3Rlci9zb3VyY2UvcG9zdHMvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLmh0bWwubWQiPkhpc3Rvcnk8L2E+PC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj7CqSAyMDE2IE1hcnRpbiBGZW5uZXIuIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgPGEgaHJlZj0iaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzQuMC8iPkNyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24gbGljZW5zZTwvYT4uPC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj4KICAgICAgICA8aSBjbGFzcz0iZmEgZmEtdGFncyI+PC9pPgogICAgICAgIDxhIGhyZWY9Ii9pbmRleC5odG1sP3RhZz1kYXRhY2l0ZSI+ZGF0YWNpdGU8L2E+LCA8YSBocmVmPSIvaW5kZXguaHRtbD90YWc9ZG9pIj5kb2k8L2E+LCA8YSBocmVmPSIvaW5kZXguaHRtbD90YWc9bWV0YWRhdGEiPm1ldGFkYXRhPC9hPiwgPGEgaHJlZj0iL2luZGV4Lmh0bWw/dGFnPWZlYXR1cmVkIj5mZWF0dXJlZDwvYT4KICAgICAgPC9wPgogICAgPC9zZWN0aW9uPgogIDwvZGl2Pgo8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0yIGNvbC1tZC1vZmZzZXQtMSI+CiAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJib3R0b20tdGVhc2VyIGNmIj4KICA8ZGl2IGNsYXNzPSJpc0xlZnQiPgogICAgPGg1IGNsYXNzPSJpbmRleC1oZWFkbGluZSBmZWF0dXJlZCI+PHNwYW4+U2hhcmUgb248L3NwYW4+PC9oNT4KICAgICAgPGEgY2xhc3M9Imljb24tdHdpdHRlciIgaHJlZj0iaHR0cDovL3R3aXR0ZXIuY29tL3NoYXJlP3RleHQ9T24gdGhlIEBkYXRhY2l0ZSBibG9nOiBFYXRpbmcgeW91ciBvd24gRG9nIEZvb2QmYW1wO3VybD1odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8iCiAgICAgICAgb25jbGljaz0id2luZG93Lm9wZW4odGhpcy5ocmVmLCAndHdpdHRlci1zaGFyZScsICd3aWR0aD01NTAsaGVpZ2h0PTI1NScpO3JldHVybiBmYWxzZTsiPgogICAgICAgIDxpIGNsYXNzPSJmYSBmYS10d2l0dGVyIGZhLTJ4Ij48L2k+PHNwYW4gY2xhc3M9ImhpZGRlbiI+dHdpdHRlcjwvc3Bhbj4KICAgICAgPC9hPgogICAgICA8YSBjbGFzcz0iaWNvbi1mYWNlYm9vayIgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL3NoYXJlci5waHA/dD1PbiB0aGUgQGRhdGFjaXRlIGJsb2c6IEVhdGluZyB5b3VyIG93biBEb2cgRm9vZCZhbXA7dT1odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8iCiAgICAgICAgb25jbGljaz0id2luZG93Lm9wZW4odGhpcy5ocmVmLCAnZmFjZWJvb2stc2hhcmUnLCAnd2lkdGg9NTUwLGhlaWdodD0yNTUnKTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICA8aSBjbGFzcz0iZmEgZmEtZmFjZWJvb2sgZmEtMngiPjwvaT48c3BhbiBjbGFzcz0iaGlkZGVuIj5mYWNlYm9vazwvc3Bhbj4KICAgICAgPC9hPgogIDwvZGl2Pgo8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1tZC1vZmZzZXQtMiBwb3N0LWNvbnRlbnQiPgogICAgICAgICAgICAgIDxkaXYgaWQ9ImRpc3F1c190aHJlYWQiPjwvZGl2Pgo8c2NyaXB0PgogICAgdmFyIGRpc3F1c19jb25maWcgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgdGhpcy5wYWdlLnVybCA9ICdodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8nOwogICAgICAgIHRoaXMucGFnZS5pZGVudGlmaWVyID0gJ2h0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLyc7CiAgICB9OwogICAgKGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBkID0gZG9jdW1lbnQsIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwoKICAgICAgICBzLnNyYyA9ICcvL2RhdGFjaXRlLmRpc3F1cy5jb20vZW1iZWQuanMnOyAgLy8KCiAgICAgICAgcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtdGltZXN0YW1wJywgK25ldyBEYXRlKCkpOwogICAgICAgIChkLmhlYWQgfHwgZC5ib2R5KS5hcHBlbmRDaGlsZChzKTsKICAgIH0pKCk7Cjwvc2NyaXB0Pgo8bm9zY3JpcHQ+UGxlYXNlIGVuYWJsZSBKYXZhU2NyaXB0IHRvIHZpZXcgdGhlIDxhIGhyZWY9Imh0dHBzOi8vZGlzcXVzLmNvbS8/cmVmX25vc2NyaXB0IiByZWw9Im5vZm9sbG93Ij5jb21tZW50cyBwb3dlcmVkIGJ5IERpc3F1cy48L2E+PC9ub3NjcmlwdD4KCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgICA8Zm9vdGVyIGNsYXNzPSdyb3cgZm9vdGVyJz4KICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSdjb2wtbWQtMyBjb2wtc20tNCc+CiAgICAgICAgICA8aDQ+QWJvdXQgRGF0YUNpdGU8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL21pc3Npb24uaHRtbCI+V2hhdCB3ZSBkbzwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2JvYXJkLmh0bWwiPkJvYXJkPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RlZXJpbmcuaHRtbCI+U3RlZXJpbmcgZ3JvdXBzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RhZmYuaHRtbCI+U3RhZmY8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9qb2JvcHBvcnR1bml0aWVzLmh0bWwiPkpvYiBvcHBvcnR1bml0aWVzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zIGNvbC1zbS00Jz4KICAgICAgICAgIDxoND5TZXJ2aWNlczwvaDQ+CiAgICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvZG9pcy5odG1sIj5Bc3NpZ24gRE9JczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3NlYXJjaC5odG1sIj5NZXRhZGF0YSBzZWFyY2g8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9ldmVudGRhdGEuaHRtbCI+RXZlbnQgZGF0YTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3Byb2ZpbGVzLmh0bWwiPlByb2ZpbGVzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvcmUzZGF0YS5odG1sIj5yZTNkYXRhPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvY2l0YXRpb24uaHRtbCI+Q2l0YXRpb24gZm9ybWF0dGVyPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RhdHMuaHRtbCI+U3RhdGlzdGljczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2NvbnRlbnQuaHRtbCI+Q29udGVudCBuZWdvdGlhdGlvbjwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL29haXBtaC5odG1sIj5PQUktUE1IPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zIGNvbC1zbS00Jz4KICAgICAgICAgIDxoND5SZXNvdXJjZXM8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9zY2hlbWEuZGF0YWNpdGUub3JnIj5NZXRhZGF0YSBzY2hlbWE8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5kYXRhY2l0ZS5vcmciPlN1cHBvcnQ8L2E+PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8aDQ+Q29tbXVuaXR5PC9oND4KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9tZW1iZXJzLmh0bWwiPk1lbWJlcnM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9wYXJ0bmVycy5odG1sIj5QYXJ0bmVyczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3N0ZWVyaW5nLmh0bWwiPlN0ZWVyaW5nIGdyb3VwczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2V2ZW50cy5odG1sIj5FdmVudHM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9yb2FkbWFwLmh0bWwiPlJvYWRtYXA8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy91c2VyLXN0b3JpZXMuaHRtbCI+VXNlciBTdG9yaWVzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zJz4KICAgICAgICAgIDxoNCBjbGFzcz0ic2hhcmUiPkNvbnRhY3QgdXM8L2g0PgogICAgICAgICAgPGEgaHJlZj0nbWFpbHRvOnN1cHBvcnRAZGF0YWNpdGUub3JnJyBjbGFzcz0ic2hhcmUiPgogICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtYXQnPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZmVlZC54bWwnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1yc3MnPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vdHdpdHRlci5jb20vZGF0YWNpdGUnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS10d2l0dGVyJz48L2k+CiAgICAgICAgICA8L2E+CiAgICAgICAgICA8YSBocmVmPSdodHRwczovL2dpdGh1Yi5jb20vZGF0YWNpdGUvZGF0YWNpdGUnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1naXRodWInPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2RhdGFjaXRlJyBjbGFzcz0ic2hhcmUiPgogICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtbGlua2VkaW4nPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy90ZXJtcy5odG1sIj5UZXJtcyBhbmQgY29uZGl0aW9uczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3ByaXZhY3kuaHRtbCI+UHJpdmFjeSBwb2xpY3k8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9hY2tub3dsZWRnbWVudHMuaHRtbCI+QWNrbm93bGVkZ2VtZW50czwvYT48L2xpPgogICAgICAgICAgPC91bD4KICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9zdGF0dXMuZGF0YWNpdGUub3JnIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb2xvci1kb3QiPjwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbG9yLWRlc2NyaXB0aW9uIj48L3NwYW4+CiAgICAgICAgICA8L2E+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9mb290ZXI+CiAgICA8c2NyaXB0IHNyYz0iLy9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTIuMS40Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLy9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4zLjYvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLy9jZG4uc3RhdHVzcGFnZS5pby9zZS12Mi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9hc3NldHMuZGF0YWNpdGUub3JnL2phdmFzY3JpcHRzL2RlZmF1bHQuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii9qYXZhc2NyaXB0cy9yZWFkaW5nVGltZS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii9qYXZhc2NyaXB0cy9pbmRleC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iL2phdmFzY3JpcHRzL3NlYXJjaC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGlkPSJkc3EtY291bnQtc2NyIiBzcmM9Ii8vZGF0YWNpdGUuZGlzcXVzLmNvbS9jb3VudC5qcyIgYXN5bmM+PC9zY3JpcHQ+CiAgICA8c2NyaXB0PgogICAgICAoZnVuY3Rpb24oaSxzLG8sZyxyLGEsbSl7aVsnR29vZ2xlQW5hbHl0aWNzT2JqZWN0J109cjtpW3JdPWlbcl18fGZ1bmN0aW9uKCl7CiAgICAgIChpW3JdLnE9aVtyXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfSxpW3JdLmw9MSpuZXcgRGF0ZSgpO2E9cy5jcmVhdGVFbGVtZW50KG8pLAogICAgICBtPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pCiAgICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnLy93d3cuZ29vZ2xlLWFuYWx5dGljcy5jb20vYW5hbHl0aWNzLmpzJywnZ2EnKTsKCiAgICAgIGdhKCdjcmVhdGUnLCAnVUEtMjI4MDYxOTYtNicsICdhdXRvJyk7CiAgICAgIGdhKCdzZW5kJywgJ3BhZ2V2aWV3Jyk7CiAgICA8L3NjcmlwdD4KICA8L2JvZHk+CjwvaHRtbD4K
|
105
105
|
http_version:
|
106
|
-
recorded_at: Sun,
|
106
|
+
recorded_at: Sun, 01 Apr 2018 09:07:41 GMT
|
107
107
|
recorded_with: VCR 3.0.3
|
@@ -8,7 +8,7 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Maremma - https://github.com/datacite/maremma
|
11
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
12
12
|
Accept:
|
13
13
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
14
|
response:
|
@@ -29,17 +29,17 @@ http_interactions:
|
|
29
29
|
Location:
|
30
30
|
- "/eating-your-own-dog-food/"
|
31
31
|
Date:
|
32
|
-
- Sun,
|
32
|
+
- Sun, 01 Apr 2018 09:07:34 GMT
|
33
33
|
Server:
|
34
34
|
- AmazonS3
|
35
35
|
Age:
|
36
|
-
- '
|
36
|
+
- '1'
|
37
37
|
X-Cache:
|
38
38
|
- Hit from cloudfront
|
39
39
|
Via:
|
40
|
-
- 1.1
|
40
|
+
- 1.1 b4a55cbff1b10f55c71caa19690c960e.cloudfront.net (CloudFront)
|
41
41
|
X-Amz-Cf-Id:
|
42
|
-
-
|
42
|
+
- UDrm3T-_aBQ4rStAytyOz65NDYXnP3eCxJee0Wk3AENcCCXFNB6u_w==
|
43
43
|
body:
|
44
44
|
encoding: ASCII-8BIT
|
45
45
|
string: |
|
@@ -50,14 +50,14 @@ http_interactions:
|
|
50
50
|
<ul>
|
51
51
|
<li>Code: Found</li>
|
52
52
|
<li>Message: Resource Found</li>
|
53
|
-
<li>RequestId:
|
54
|
-
<li>HostId:
|
53
|
+
<li>RequestId: 9969744BDEDE2DCF</li>
|
54
|
+
<li>HostId: CHCBOci8Ah7seqAe+QhEI4MkzkKUaFeWxNnz62xRgBd+OUDoxKz3/WrhvPncEjkePwujz5xR060=</li>
|
55
55
|
</ul>
|
56
56
|
<hr/>
|
57
57
|
</body>
|
58
58
|
</html>
|
59
59
|
http_version:
|
60
|
-
recorded_at: Sun,
|
60
|
+
recorded_at: Sun, 01 Apr 2018 09:07:35 GMT
|
61
61
|
- request:
|
62
62
|
method: get
|
63
63
|
uri: https://blog.datacite.org/eating-your-own-dog-food/
|
@@ -66,7 +66,7 @@ http_interactions:
|
|
66
66
|
string: ''
|
67
67
|
headers:
|
68
68
|
User-Agent:
|
69
|
-
- Maremma - https://github.com/datacite/maremma
|
69
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
70
70
|
Accept:
|
71
71
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
72
72
|
response:
|
@@ -81,27 +81,27 @@ http_interactions:
|
|
81
81
|
Connection:
|
82
82
|
- keep-alive
|
83
83
|
Date:
|
84
|
-
- Sun,
|
84
|
+
- Sun, 01 Apr 2018 09:07:35 GMT
|
85
85
|
Cache-Control:
|
86
86
|
- max-age=31536000
|
87
87
|
Last-Modified:
|
88
|
-
-
|
88
|
+
- Sat, 17 Mar 2018 06:52:49 GMT
|
89
89
|
Etag:
|
90
90
|
- '"1503fefbb078bce096ab37de682aaef9"'
|
91
91
|
Server:
|
92
92
|
- AmazonS3
|
93
93
|
Age:
|
94
|
-
- '
|
94
|
+
- '1'
|
95
95
|
X-Cache:
|
96
96
|
- Hit from cloudfront
|
97
97
|
Via:
|
98
|
-
- 1.1
|
98
|
+
- 1.1 f5d27f80802e2b6e66ec3970da5568b8.cloudfront.net (CloudFront)
|
99
99
|
X-Amz-Cf-Id:
|
100
|
-
-
|
100
|
+
- TGyieCdPIy7fcJ9A-_3wpfUTo5daYwnD3RM-Ww1iG6xH09vWPBUOSw==
|
101
101
|
body:
|
102
102
|
encoding: ASCII-8BIT
|
103
103
|
string: !binary |-
|
104
104
|
PCFET0NUWVBFIGh0bWw+CiAgPGh0bWw+CiAgICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICAgIDwhLS0gKDEpIE9wdGltaXplIGZvciBtb2JpbGUgdmVyc2lvbnM6IGh0dHA6Ly9nb28uZ2wvRU9wRmwgLS0+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICA8IS0tICgxKSBmb3JjZSBsYXRlc3QgSUUgcmVuZGVyaW5nIGVuZ2luZTogYml0Lmx5LzFjOEVpQzkgLS0+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPgoKCiAgICA8dGl0bGU+RWF0aW5nIHlvdXIgb3duIERvZyBGb29kPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJFYXRpbmcgeW91ciBvd24gZG9nIGZvb2QgaXMgYSBzbGFuZyB0ZXJtIHRvIGRlc2NyaWJlIHRoYXQgYW4gb3JnYW5pemF0aW9uIHNob3VsZCBpdHNlbGYgdXNlIHRoZSBwcm9kdWN0cyBhbmQgc2VydmljZXMgaXQgcHJvdmlkZXMuIEZvciBEYXRhQ2l0ZSB0aGlzIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHVzZSBET0lzIHdpdGggYXBwcm9wcmlhdGUgbWV0YWRhdGEgYW5kIHN0cmF0ZWdpZXMgZm9yIGxvbmctdGVybSBwcmVzZXJ2YXRpb24gZm9yLi4uIiAvPgoKICAgIDxtZXRhIG5hbWU9IkhhbmRoZWxkRnJpZW5kbHkiIGNvbnRlbnQ9IlRydWUiIC8+CiAgICA8bWV0YSBuYW1lPSJNb2JpbGVPcHRpbWl6ZWQiIGNvbnRlbnQ9IjMyMCIgLz4KICAgIDxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyI+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1zdGF0dXMtYmFyLXN0eWxlIiBjb250ZW50PSJibGFjay10cmFuc2x1Y2VudCI+CgogICAgPCEtLSBEdWJsaW5Db3JlIE1ldGFkYXRhIC0tPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnRpdGxlIiBjb250ZW50PSJFYXRpbmcgeW91ciBvd24gRG9nIEZvb2QiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6Zm9ybWF0IiBjb250ZW50PSJ0ZXh0L2h0bWwiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6bGFuZ3VhZ2UiIGNvbnRlbnQ9ImVuIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnJpZ2h0cyIgY29udGVudD0iQ0MtQlkiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0iZGM6c291cmNlIiBjb250ZW50PSJEYXRhQ2l0ZSBCbG9nIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnN1YmplY3QiIGNvbnRlbnQ9IlNjaG9sYXJseSBDb21tdW5pY2F0aW9uIiAvPgogICAgPG1ldGEgcHJvcGVydHk9ImRjOnR5cGUiIGNvbnRlbnQ9IndlYnNpdGUiIC8+CgoKICAgIDxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkVhdGluZyB5b3VyIG93biBEb2cgRm9vZCIgLz4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iRWF0aW5nIHlvdXIgb3duIGRvZyBmb29kIGlzIGEgc2xhbmcgdGVybSB0byBkZXNjcmliZSB0aGF0IGFuIG9yZ2FuaXphdGlvbiBzaG91bGQgaXRzZWxmIHVzZSB0aGUgcHJvZHVjdHMgYW5kIHNlcnZpY2VzIGl0IHByb3ZpZGVzLiBGb3IgRGF0YUNpdGUgdGhpcyBtZWFucyB0aGF0IHdlIHNob3VsZCB1c2UgRE9JcyB3aXRoIGFwcHJvcHJpYXRlIG1ldGFkYXRhIGFuZCBzdHJhdGVnaWVzIGZvciBsb25nLXRlcm0gcHJlc2VydmF0aW9uIGZvci4uLiIgLz4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaHR0cHM6Ly9ibG9nLmRhdGFjaXRlLm9yZy9pbWFnZXMvMjAxNi8xMi8yMzA3ODUuanBnIiAvPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9ImJsb2ciIC8+CgogICAgPGxpbmsgaHJlZj0iLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxpYnJlK0Jhc2tlcnZpbGxlOjQwMCw0MDBpLDcwMCIgcmVsPSJzdHlsZXNoZWV0Ij4KICAgIDxsaW5rIGhyZWY9Jy8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1SYWxld2F5OjQwMCw2MDAsNDAwaXRhbGljLDYwMGl0YWxpYycgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CiAgICA8bGluayBocmVmPSIvL21heGNkbi5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjYuMS9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0ndGV4dC9jc3MnPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9hc3NldHMuZGF0YWNpdGUub3JnL3N0eWxlc2hlZXRzL2RhdGFjaXRlLmNzcyIgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CiAgICA8bGluayBocmVmPSJodHRwczovL2Fzc2V0cy5kYXRhY2l0ZS5vcmcvaW1hZ2VzL2Zhdmljb24uaWNvIiByZWw9Imljb24iIHR5cGU9ImltYWdlL2ljbyIgLz4KCiAgICA8c2NyaXB0IHNyYz0iLy9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZml0dmlkcy8xLjEuMC9qcXVlcnkuZml0dmlkcy5taW4uanMiPjwvc2NyaXB0PgoKICAgICAgPHNjcmlwdAogICAgICAgIHNyYz0iLy9kMnd5OGY3YTl1cnNubS5jbG91ZGZyb250Lm5ldC9idWdzbmFnLTIubWluLmpzIgogICAgICAgIGRhdGEtYXBpa2V5PSJjMzdhNTg2MTk2NzA5MWE5YjQyYTFhNzdlMjM1MTE0YSI+CiAgICAgIDwvc2NyaXB0PgoKICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+CiAgICAgIHsiQGNvbnRleHQiOiJodHRwOi8vc2NoZW1hLm9yZyIsIkB0eXBlIjoiQmxvZ1Bvc3RpbmciLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmciLCJuYW1lIjoiRWF0aW5nIHlvdXIgb3duIERvZyBGb29kIiwiYWx0ZXJuYXRlTmFtZSI6Ik1TLTQ5LTM2MzItNTA4MyIsInVybCI6Imh0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLyIsImF1dGhvciI6W3siQHR5cGUiOiJQZXJzb24iLCJAaWQiOiJodHRwczovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1IiwiZ2l2ZW5OYW1lIjoiTWFydGluIiwiZmFtaWx5TmFtZSI6IkZlbm5lciIsIm5hbWUiOiJNYXJ0aW4gRmVubmVyIn1dLCJwdWJsaXNoZXIiOnsiQHR5cGUiOiJPcmdhbml6YXRpb24iLCJuYW1lIjoiRGF0YUNpdGUifSwiZGF0ZUNyZWF0ZWQiOiIyMDE2LTEyLTIwIiwiZGF0ZVB1Ymxpc2hlZCI6IjIwMTYtMTItMjAiLCJkYXRlTW9kaWZpZWQiOiIyMDE2LTEyLTIwIiwia2V5d29yZHMiOiJkYXRhY2l0ZSwgZG9pLCBtZXRhZGF0YSwgZmVhdHVyZWQiLCJ2ZXJzaW9uIjoiMS4wIiwiZGVzY3JpcHRpb24iOiJFYXRpbmcgeW91ciBvd24gZG9nIGZvb2QgaXMgYSBzbGFuZyB0ZXJtIHRvIGRlc2NyaWJlIHRoYXQgYW4gb3JnYW5pemF0aW9uIHNob3VsZCBpdHNlbGYgdXNlIHRoZSBwcm9kdWN0cyBhbmQgc2VydmljZXMgaXQgcHJvdmlkZXMuIEZvciBEYXRhQ2l0ZSB0aGlzIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHVzZSBET0lzIHdpdGggYXBwcm9wcmlhdGUgbWV0YWRhdGEgYW5kIHN0cmF0ZWdpZXMgZm9yIGxvbmctdGVybSBwcmVzZXJ2YXRpb24gZm9yLi4uIiwibGljZW5zZSI6Imh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS80LjAvIiwiaW1hZ2UiOiJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2ltYWdlcy8yMDE2LzEyLzIzMDc4NS5qcGciLCJpc1BhcnRPZiI6eyJAdHlwZSI6IkJsb2ciLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDAwLTAwU1MiLCJuYW1lIjoiRGF0YUNpdGUgQmxvZyJ9LCJjaXRhdGlvbiI6W3siQHR5cGUiOiJDcmVhdGl2ZVdvcmsiLCJAaWQiOiJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIn0seyJAdHlwZSI6IkNyZWF0aXZlV29yayIsIkBpZCI6Imh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzU1RTUtVDVDMCJ9XX0KICAgIDwvc2NyaXB0PgogIDwvaGVhZD4KICA8Ym9keT4KICAgIDxoZWFkZXIgY2xhc3M9ImhlYWRlciIgaWQ9Im5hdnRvcCI+CiAgICAgIDxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItd2hpdGUiIHJvbGU9Im5hdmlnYXRpb24iPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaGVhZGVyIgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im5hdmJhci10b2dnbGUiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXZiYXItY29sbGFwc2UiPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgbmF2aWdhdGlvbjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxhIGNsYXNzPSJuYXZiYXItYnJhbmQiIGhyZWY9Ii8iPkRhdGFDaXRlIEJsb2c8L2E+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItY29sbGFwc2UgY29sbGFwc2UiPgogICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2IG5hdmJhci1yaWdodCI+CiAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5kYXRhY2l0ZS5vcmciPlN1cHBvcnQ8L2E+PC9saT4KICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgaWQ9InNpdGVzIj48aSBjbGFzcz0nZmEgZmEtdGgnPjwvaT4gPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+PC9hPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLWdsb2JlIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgSG9tZXBhZ2U8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtcnNzIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgQmxvZzwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkaXZpZGVyIj48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9tZHMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtZGF0YWJhc2UgZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBNRFM8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3NjaGVtYS5kYXRhY2l0ZS5vcmciPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1maWxlLWNvZGUtbyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFNjaGVtYTwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9jaXRhdGlvbi5jcm9zc2NpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtZmlsZS10ZXh0LW8gZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBDaXRhdGlvbiBGb3JtYXR0ZXI8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc2VhcmNoLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLXNlYXJjaCBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFNlYXJjaDwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vb2FpLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLXRhYmxlIGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgT0FJLVBNSDwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3RhdHMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtYmFyLWNoYXJ0IGZhLWZ3Jz48L2k+CiAgICAgICAgICAgICAgICAgICAgU3RhdGlzdGljczwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vYXBpLmRhdGFjaXRlLm9yZyI+CiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9J2ZhIGZhLWNvZ3MgZmEtZncnPjwvaT4KICAgICAgICAgICAgICAgICAgICBSRVNUIEFQSTwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cucmUzZGF0YS5vcmciPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1jdWJlcyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIHJlM2RhdGE8L2E+CiAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZGl2aWRlciI+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9zdGF0dXMuZGF0YWNpdGUub3JnIj4KICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtY2FsZW5kYXItY2hlY2stbyBmYS1mdyc+PC9pPgogICAgICAgICAgICAgICAgICAgIFN0YXR1czwvYT4KICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvaGVhZGVyPgogICAgICA8ZGl2IGNsYXNzPSJ3cmFwcGVyIj4KICAgIDxkaXYgY2xhc3M9InNlY3Rpb24gc2VjdGlvbi13aGl0ZSI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0icm93IHJvdy1zZWN0aW9uIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1tZC1vZmZzZXQtMiBwb3N0LWNvbnRlbnQiPgogICAgICAgICAgICA8YSBuYW1lPSJ0b3BvZnBhZ2UiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zdC1tZXRhIj4KICAgICAgICAgICAgICA8aDE+RWF0aW5nIHlvdXIgb3duIERvZyBGb29kPC9oMT4KICAgICAgICAgICAgICBEZWNlbWJlciAyMCwgMjAxNiBieSBNYXJ0aW4gRmVubmVyCiAgICAgICAgICAgICAg4oCiIDxzcGFuIGNsYXNzPSJwb3N0LXJlYWRpbmctdGltZSI+PC9zcGFuPiByZWFkCiAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZG9pIj48YSBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmciPmh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzRrM20tbnl2ZzwvYT48L3A+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPHA+PGEgaHJlZj0iaHR0cHM6Ly9uZXdyZXB1YmxpYy5jb20vYXJ0aWNsZS8xMTUzNDkvZG9nZm9vZGluZy10ZWNoLXNsYW5nLXdvcmtpbmctb3V0LWdsaXRjaGVzIj5FYXRpbmcgeW91ciBvd24gZG9nIGZvb2Q8L2E+IGlzIGEgc2xhbmcgdGVybSB0byBkZXNjcmliZSB0aGF0IGFuIG9yZ2FuaXphdGlvbiBzaG91bGQgaXRzZWxmIHVzZSB0aGUgcHJvZHVjdHMgYW5kIHNlcnZpY2VzIGl0IHByb3ZpZGVzLiBGb3IgRGF0YUNpdGUgdGhpcyBtZWFucyB0aGF0IHdlIHNob3VsZCB1c2UgRE9JcyB3aXRoIGFwcHJvcHJpYXRlIG1ldGFkYXRhIGFuZCBzdHJhdGVnaWVzIGZvciBsb25nLXRlcm0gcHJlc2VydmF0aW9uIGZvciB0aGUgc2Nob2xhcmx5IG91dHB1dHMgd2UgcHJvZHVjZS4gRm9yIHRoZSBtb3N0IHBhcnQgdGhpcyBpcyBub3QgcmVzZWFyY2ggZGF0YSwgYnV0IHJhdGhlciB0ZWNobmljYWwgZG9jdW1lbnRzIHN1Y2ggYXMgdGhlIERhdGFDaXRlIFNjaGVtYSBhbmQgaXRzIGRvY3VtZW50YXRpb24gPHNwYW4gY2xhc3M9ImNpdGF0aW9uIj4oPGEgaHJlZj0iI3JlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIj4yMDE2PC9hPik8L3NwYW4+LjwvcD4KPHA+VGhlc2Ugb3V0cHV0cyBhbHNvIGluY2x1ZGUgdGhlIHBvc3RzIG9uIHRoaXMgYmxvZywgd2hlcmUgd2UgZGlzY3VzcyB0b3BpY3MgcmVsZXZhbnQgZm9yIHRoZSBEYXRhQ2l0ZSBjb21tdW5pdHksIGJ1dCBhbHNvIG9mIGJyb2FkZXIgaW50ZXJlc3QgdG8gYW55b25lIHdobyBjYXJlcyBhYm91dCByZXNlYXJjaCBkYXRhLCBwZXJzaXN0ZW50IGlkZW50aWZpZXJzLCBhbmQgc2Nob2xhcmx5IGluZnJhc3RydWN0dXJlLiBBbmQgc3RhcnRpbmcgdG9kYXkgYWxsIGJsb2cgcG9zdHMgb24gdGhpcyBibG9nIHdpbGwgaGF2ZSBhIERPSSwgbWV0YWRhdGEgYW5kIHVzZSBhIHBlcnNpc3RlbnQgc3RvcmFnZSBtZWNoYW5pc20uPC9wPgo8ZGl2IGNsYXNzPSJmaWd1cmUiPgo8aW1nIHNyYz0iL2ltYWdlcy8yMDE2LzEyLzIzMDc4NS5qcGciIGFsdD0iUGhvdG8gYnkgQmlsbCBFbXJpY2guIENDIFplcm8uIiAvPgo8cCBjbGFzcz0iY2FwdGlvbiI+UGhvdG8gYnkgPGEgaHJlZj0iaHR0cHM6Ly93d3cucGV4ZWxzLmNvbS9waG90by9ibGFjay1hbmQtdGFuLXlvcmtzaGlyZS10ZXJyaWVyLXB1cHB5LTIzMDc4NS8iPkJpbGwgRW1yaWNoPC9hPi4gPGEgaHJlZj0iaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL3B1YmxpY2RvbWFpbi96ZXJvLzEuMC8iPkNDIFplcm88L2E+LjwvcD4KPC9kaXY+CjxoMyBpZD0idGVjaG5pY2FsLWltcGxlbWVudGF0aW9uIj5UZWNobmljYWwgSW1wbGVtZW50YXRpb248L2gzPgo8cD5UaGlzIGJsb2cgaXMgcG93ZXJlZCBieSB0aGUgc3RhdGljIHNpdGUgZ2VuZXJhdG9yIDxhIGhyZWY9Imh0dHBzOi8vbWlkZGxlbWFuYXBwLmNvbS8iPk1pZGRsZW1hbjwvYT4sIHdpdGggYmxvZyBwb3N0cyB3cml0dGVuIGluIDxhIGhyZWY9Imh0dHA6Ly9jb21tb25tYXJrLm9yZy8iPk1hcmtkb3duPC9hPiBhbmQgY29udmVydGVkIHRvIEhUTUwgdXNpbmcgPGEgaHJlZj0iaHR0cDovL3BhbmRvYy5vcmcvIj5QYW5kb2M8L2E+IGFuZCB0aGUgPGEgaHJlZj0iaHR0cHM6Ly90cmF2aXMtY2kub3JnIj5UcmF2aXMgQ0k8L2E+IGNvbnRpbnVvdXMgaW50ZWdyYXRpb24gc2VydmljZS4gU3RhdGljIHNpdGUgZ2VuZXJhdG9yIG1lYW5zIHRoYXQgdGhlcmUgaXMgbm8gZGF0YWJhc2Ugb3IgYXBwbGljYXRpb24gc2VydmVyIHBvd2VyaW5nIHRoZSBzaXRlLCBtYWtpbmcgd2Vic2l0ZSBhZG1pbnN0cmF0aW9uIHNpbXBsZXIsIGNoZWFwZXIgYW5kIHNhZmVyLiBJbiBhZGRpdGlvbiB0byB0aGUgYmxvZywgdGhlIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZyI+RGF0YUNpdGUgaG9tZXBhZ2U8L2E+IGFuZCA8YSBocmVmPSJodHRwczovL3NjaGVtYS5kYXRhY2l0ZS5vcmciPk1ldGFkYXRhIFNjaGVtYSBzdWJzaXRlPC9hPiBhcmUgYWxzbyBnZW5lcmF0ZWQgdXNpbmcgTWlkZGxlbWFuLjwvcD4KPHA+VGhlIHNpbXBsaWNpdHkgaXMgcGFydGljdWxhcmx5IGltcG9ydGFudCBoZXJlLCBhcyByZWdpc3RlcmluZyB0aGUgRE9JcyBhbmQgbWV0YWRhdGEgY2FuIGJlIGFjY29tcGxpc2hlZCB1c2luZyBhIGNvbW1hbmQgbGluZSB1dGlsaXR5IHdyaXR0ZW4gYnkgRGF0YUNpdGUgc3RhZmYgdGhhdCBkb2VzbuKAmXQgbmVlZCB0byBrbm93IG11Y2ggYWJvdXQgdGhlIGludGVybmFscyBvZiBNaWRkbGVtYW4sIGFuZCB0aHVzIGNhbiBiZSBlYXNpbHkgYWRhcHRlZCB0byBvdGhlciBzdGF0aWMgc2l0ZSBnZW5lcmF0b3JzIHN1Y2ggYXMgPGEgaHJlZj0iaHR0cDovL2pla3lsbHJiLmNvbS8iPkpla3lsbDwvYT4sIDxhIGhyZWY9Imh0dHA6Ly9nb2h1Z28uaW8vIj5IdWdvPC9hPiBvciA8YSBocmVmPSJodHRwczovL2hleG8uaW8vIj5IZXhvPC9hPi4gVGhlIGNvbW1hbmQgbGluZSB1dGlsaXR5IGlzIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhY2l0ZS9jaXJuZWNvIj5DaXJuZWNvPC9hPiwgZ2VuZXJhdGluZyB0aGUgbWV0YWRhdGEgWE1MIGFjY29yZGluZyB0byB0aGUgRGF0YUNpdGUgTWV0YWRhdGEgU2NoZW1hLCBhbmQgcmVnaXN0ZXJpbmcgRE9JIGFuZCBtZXRhZGF0YSB3aXRoIHRoZSBEYXRhQ2l0ZSBNRFMuIExpa2UgYWxsIHRvb2xzIG1lbnRpb25lZCBpbiB0aGlzIHBvc3QgQ2lybmVjbyBpcyBvcGVuIHNvdXJjZSBzb2Z0d2FyZSwgcGxlYXNlIHJlYWNoIG91dCB0byB1cyBpZiB5b3UgYXJlIGludGVyZXN0ZWQgaW4gaW1wbGVtZW50aW5nIHNpbWlsYXIgZnVuY3Rpb25hbGl0eSBmb3IgeW91ciBibG9nLjwvcD4KPGgzIGlkPSJnZW5lcmF0aW5nLWRvaXMiPkdlbmVyYXRpbmcgRE9JczwvaDM+CjxwPlRoZSBET0lzIGZvciB0aGlzIGJsb2cgYXJlIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5LCB1c2luZyBhIG1vZGlmaWVkIGJhc2UzMiBlbmNvZGluZyBhbGdvcml0aG0gdGhhdCBpcyBwcm92aWRlZCBieSBDaXJuZWNvLCBhcyBkaXNjdXNzZWQgbGFzdCB3ZWVrIDxzcGFuIGNsYXNzPSJjaXRhdGlvbiI+KEZlbm5lciwgPGEgaHJlZj0iI3JlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzAiPjIwMTY8L2E+KTwvc3Bhbj4uIFRoZSBET0kgaXMgZ2VuZXJhdGVkIGFuZCBtaW50ZWQgd2hlbiBhIG5ldyBwb3N0IGlzIHB1c2hlZCB0byA8YSBocmVmPSJodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnIiBjbGFzcz0idXJpIj5odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnPC9hPi4gVGhpcyBhdm9pZHMgdHdvIHByb2JsZW1zOiBhKSBET0ktbGlrZSBzdHJpbmdzIGluIHRoZSB3aWxkIGJlZm9yZSBwdWJsaWNhdGlvbiBhbmQgYikgdGhlIHJhbmRvbWx5IGdlbmVyYXRlZCBET0kgZXhpc3RzIGFscmVhZHkgKHdlIGNhbiBzaW1wbHkgZ2VuZXJhdGUgYSBuZXcgb25lKS4gQWxsIERPSXMgYXJlIHNob3J0LCB3aXRob3V0IHNlbWFudGljIGluZm9tYXRpb24gdGhhdCBtaWdodCBjaGFuZ2Ugb3ZlciB0aW1lLCBhbmQgd2l0aCBhIGNoZWNrc3VtIHRvIG1pbmltaXplIHRyYW5zY3JpcHRpb24gZXJyb3JzLCBmb3IgZXhhbXBsZSA8c3Ryb25nPmh0dHBzOi8vZG9pLm9yZy8xMC41NDM4L1hDQkotRzdaWTwvc3Ryb25nPi4gR29pbmcgZm9yd2FyZCB3ZSBlbmNvdXJhZ2UgdXNlcnMgdG8gbGluayB0byB0aGUgRGF0YUNpdGUgQmxvZyB1c2luZyB0aGUgRE9JLCBhcyB0aGVzZSBsaW5rcyB3aWxsIGNvbnRpbnVlIHRvIHdvcmsgZXZlbiBpZiB3ZSBldmVyIG1vdmUgdGhlIGJsb2cgdG8gYSBkaWZmZXJlbnQgbG9jYXRpb24uPC9wPgo8aDMgaWQ9ImdlbmVyYXRpbmctbWV0YWRhdGEiPkdlbmVyYXRpbmcgTWV0YWRhdGE8L2gzPgo8cD5Gb3IgdGhlIGdlbmVyYXRpb24gb2YgbWV0YWRhdGEsIHdlIG5lZWQgdG8gc3RyaWtlIGEgYmFsYW5jZSBiZXR3ZWVuIHNpbXBsZSBhdXRob3IgcHJvdmlkZWQgbWV0YWRhdGEsIGJ1dCByaWNoIGVub3VnaCB0byBhaWQgZGlzY292ZXJ5LiBXZSBhcmUgZG9pbmcgdGhpcyB2aWEgdGhyZWUgbWVjaGFuaXNtczo8L3A+Cjx1bD4KPGxpPm1ldGFkYXRhIHByb3ZpZGVkIGJ5IHRoZSBhdXRob3I8L2xpPgo8bGk+ZGVmYXVsdCBtZXRhZGF0YSBmb3IgdGhlIGJsb2c8L2xpPgo8bGk+bWV0YWRhdGEgYXV0b21hdGljYWxseSBleHRyYWN0ZWQgZnJvbSBjb250ZW50PC9saT4KPC91bD4KPHA+VGhlIG1ldGFkYXRhIHByb3ZpZGVkIGJ5IHRoZSBhdXRob3IgYXJlIHRoZSB0eXBpY2FsIG1ldGFkYXRhIGZvciBibG9nIHBvc3RzLCBwcm92aWRlZCB2aWEgPGEgaHJlZj0iaHR0cHM6Ly9nb2h1Z28uaW8vY29udGVudC9mcm9udC1tYXR0ZXIvIj5ZQU1MIGZyb250IG1hdHRlcjwvYT4gYXQgdGhlIGJlZ2lubmluZyBvZiBlYWNoIHBvc3Q6PC9wPgo8ZGl2IGNsYXNzPSJzb3VyY2VDb2RlIj48cHJlIGNsYXNzPSJzb3VyY2VDb2RlIHlhbWwiPjxjb2RlIGNsYXNzPSJzb3VyY2VDb2RlIHlhbWwiPjxzcGFuIGNsYXNzPSJvdCI+LS0tPC9zcGFuPgo8c3BhbiBjbGFzcz0iZnUiPmxheW91dDo8L3NwYW4+IHBvc3QKPHNwYW4gY2xhc3M9ImZ1Ij50aXRsZTo8L3NwYW4+IEVhdGluZyB5b3VyIG93biBEb2cgRm9vZAo8c3BhbiBjbGFzcz0iZnUiPmF1dGhvcjo8L3NwYW4+IG1mZW5uZXIKPHNwYW4gY2xhc3M9ImZ1Ij5kYXRlOjwvc3Bhbj4gMjAxNi0xMi0xOQo8c3BhbiBjbGFzcz0iZnUiPnRhZ3M6PC9zcGFuPgo8c3BhbiBjbGFzcz0ia3ciPi08L3NwYW4+IGRhdGFjaXRlCjxzcGFuIGNsYXNzPSJrdyI+LTwvc3Bhbj4gZG9pCjxzcGFuIGNsYXNzPSJrdyI+LTwvc3Bhbj4gbWV0YWRhdGEKPHNwYW4gY2xhc3M9Im90Ij4tLS08L3NwYW4+PC9jb2RlPjwvcHJlPjwvZGl2Pgo8cD5XZSBjYW4gcmV1c2UgYWxsIHRoZXNlIG1ldGFkYXRhIHdoZW4gZ2VuZXJhdGluZyBEYXRhQ2l0ZSBtZXRhZGF0YSwgdXNpbmcgdGhlIHRhZ3MgYXMgPGNvZGU+c3ViamVjdHM8L2NvZGU+LjwvcD4KPHA+VGhlIGRlZmF1bHQgbWV0YWRhdGEgYXJlIG1ldGFkYXRhIHRoYXQgYWx3YXlzIHN0YXkgdGhlIHNhbWUgZm9yIHRoZSBibG9nLCBzdWNoIGFzIDxjb2RlPnB1Ymxpc2hlcjwvY29kZT4sIDxjb2RlPkhvc3RpbmdJbnN0aXR1dGlvbjwvY29kZT4gYW5kIDxjb2RlPnJpZ2h0czwvY29kZT4uIFdlIGNhbiBzdG9yZSB0aGVtIGluIGEgc2l0ZS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4gV2UgY2FuIGFsc28gYXNzdW1lIHJlYXNvbmFibGUgZGVmYXVsdHMgdGhhdCBjYW4gYmUgb3ZlcnJpZGRlbiBpbiB0aGUgWUFNTCBmcm9udCBtYXR0ZXIsIGUuZy4gPGNvZGU+cmVzb3VyY2VUeXBlPC9jb2RlPiAod2UgdXNlIDxhIGhyZWY9Imh0dHBzOi8vc2NoZW1hLm9yZy9CbG9nUG9zdGluZyI+QmxvZ1Bvc3Rpbmc8L2E+IHdpdGggPGNvZGU+cmVzb3VyY2VUeXBlR2VuZXJhbDwvY29kZT4gVGV4dCkgYW5kIDxjb2RlPnZlcnNpb248L2NvZGU+LiBXZSBzdG9yZSBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGF1dGhvcnMgb3V0c2lkZSB0aGUgYmxvZyBwb3N0LCBpbmNsdWRpbmcgPGNvZGU+Z2l2ZW5OYW1lPC9jb2RlPiwgPGNvZGU+ZmFtaWx5TmFtZTwvY29kZT4gYW5kIDxjb2RlPm5hbWVJZGVudGlmaWVyPC9jb2RlPiAod2Ugbm93IHNob3cgdGhlIE9SQ0lEIElEIG9mIGV2ZXJ5IGJsb2cgYXV0aG9yIGF0IHRoZSBib3R0b20gb2YgdGhlIHBvc3QpLjwvcD4KPHA+RmluYWxseSwgdGhlcmUgYXJlIG1ldGFkYXRhIHRoYXQgd2UgY2FuIGF1dG9tYXRpY2FsbHkgZXh0cmFjdCBmcm9tIHRoZSBibG9nIHBvc3QsIGFuZCB3ZSBhcmUgY3VycmVudGx5IGRvaW5nIHRoaXMgZm9yIHRoZSA8Y29kZT5kZXNjcmlwdGlvbjwvY29kZT4gYW5kIDxjb2RlPnJlbGF0ZWRJZGVudGlmaWVyPC9jb2RlPi4gVGhpcyBibG9nIHVzZXMgUGFuZG9jIGFuZCBCaWJUZXggdG8gZ2VuZXJhdGUgdGhlIHJlZmVyZW5jZXMgc2VjdGlvbiBhdCB0aGUgZW5kLCBhbmQgd2UgY2FuIGZldGNoIHRoaXMgaW5mb3JtYXRpb24gYW5kIGNvbnZlcnQgaXQgaW50byB0aGUgZm9ybWF0IG5lZWRlZCBmb3IgPGNvZGU+cmVsYXRlZElkZW50aWZpZXI8L2NvZGU+LjwvcD4KPHA+VGFrZW4gdG9nZXRoZXIgd2UgY2FuIHByb3ZpZGUgYWxsIG1ldGFkYXRhIHRoYXQgYXJlIDxlbT5yZXF1aXJlZDwvZW0+IG9yIDxlbT5yZWNvbW1lbmRlZDwvZW0+IGluIHRoZSBNZXRhZGF0YSBTY2hlbWEgZG9jdW1lbnRhdGlvbiA8c3BhbiBjbGFzcz0iY2l0YXRpb24iPig8YSBocmVmPSIjcmVmLWh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzAwMTIiPjIwMTY8L2E+KTwvc3Bhbj4sIGFuZCB3ZSBjYW4gZG8gdGhpcyB3aXRob3V0IGFueSBleHRyYSBlZmZvcnQgZm9yIHRoZSBhdXRob3IuIFRoZSBmdWxsIFhNTCBpcyBhdmFsYWlsYWJsZSA8YSBocmVmPSJodHRwczovL2RhdGEuZGF0YWNpdGUub3JnL2FwcGxpY2F0aW9uL3gtZGF0YWNpdGUreG1sLzEwLjU0MzgvNEszTS1OWVZHIj5oZXJlPC9hPi48L3A+CjxwPk5vdCBhbGwgYmxvZyBwb3N0cyBuZWVkIHRvIGJlIGNpdGVkIGZvcm1hbGx5IHdpdGggbWV0YWRhdGEgaW4gYSA8ZW0+cmVmZXJlbmNlczwvZW0+IGxpc3QgZm9ybWF0dGVkIGFjY29yZGluZyB0byBhIHNwZWNpZmljIGNpdGF0aW9uIHN0eWxlLiBCdXQgdGhlc2UgbWV0YWRhdGEgZ3JlYXRseSBoZWxwIHdpdGggZGlzY292ZXJ5LCBhIHNlYXJjaCBpbiBEYXRhQ2l0ZSBTZWFyY2ggZm9yIDxhIGhyZWY9Imh0dHA6Ly9zZWFyY2guZGF0YWNpdGUub3JnL3dvcmtzP3F1ZXJ5PWVhdGluZytkb2crZm9vZCI+ZWF0aW5nIGRvZyBmb29kPC9hPiB3aWxsIGZvciBleGFtcGxlIGJyaW5nIHVwIHRoaXMgYmxvZyBwb3N0IGFzIHRoZSBmaXJzdCBoaXQuPC9wPgo8aDMgaWQ9InBlcnNpc3RlbnQtc3RvcmFnZSI+UGVyc2lzdGVudCBzdG9yYWdlPC9oMz4KPHA+VXNpbmcgRE9JcyBtZWFucyB0aGF0IHJlYWRlcnMgbm90IG9ubHkgZXhwZWN0IHJpY2ggbWV0YWRhdGEgdGhhdCBoZWxwIHdpdGggY2l0YXRpb24gYW5kIGRpc2NvdmVyeSwgYnV0IGFsc28gdGhhdCBEYXRhQ2l0ZSB0YWtlcyBleHRyYSBjYXJlIHRvIHByZXNlcnZlIHRoZSBibG9nIHBvc3RzLCB0aGlua2luZyBiZXlvbmQgdGhlIHBhcnRpY3VsYXIgdGVjaG5pY2FsIGltcGxlbWVudGF0aW9uIG9yIGV2ZW4gdGhlIGNvbnRpdWluZyBleGlzdGVuY2Ugb2YgdGhpcyBibG9nLiBUaGlzIGlzIGFuIGFyZWEgd2hlcmUgd2UgZG8gbmVlZCB0byBkbyBtb3JlIHdvcmssIHN0YXJ0aW5nIHdpdGggYSBkZWNpc2lvbiBhYm91dCB0aGUgYmVzdCBhcmNoaXZhbCBmb3JtYXQgZm9yIGEgYmxvZyBwb3N0IChIVE1MLCBQREYsIDxhIGhyZWY9Imh0dHBzOi8vamF0cy5ubG0ubmloLmdvdi8iPkpBVFM8L2E+PykuIEZvciBub3cgYmxvZyBwb3N0cyBhcmUgaG9zdGVkIGluIG11bHRpcGxlIEdpdCByZXBvc2l0b3JpZXMgKDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhY2l0ZS9ibG9nIj5vbmUgb2YgdGhlbSBvbiBHaXRodWI8L2E+KSwgYW5kIGluIHR3byBpbmRlcGVuZGVudCBBbWF6b24gUzMgYnVja2V0cyB0aGF0IGVhY2ggdXNlIDxhIGhyZWY9Imh0dHA6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvblMzL2xhdGVzdC9kZXYvVmVyc2lvbmluZy5odG1sIj52ZXJzaW9uaW5nPC9hPi4gTXVsdGlwbGUgbG9jYXRpb25zIHdpdGggdmVyc2lvbmluZyBhcmUgYSBnb29kIHN0YXJ0LCBidXQgbW9yZSB3b3JrIGlzIGNsZWFybHkgbmVlZGVkLjwvcD4KPGgzIGlkPSJyZWZlcmVuY2VzIiBjbGFzcz0idW5udW1iZXJlZCI+UmVmZXJlbmNlczwvaDM+CjxkaXYgaWQ9InJlZnMiIGNsYXNzPSJyZWZlcmVuY2VzIj4KPGRpdiBpZD0icmVmLWh0dHBzOi8vZG9pLm9yZy8xMC41NDM4LzAwMTIiPgo8cD5EYXRhQ2l0ZSBNZXRhZGF0YSBXb3JraW5nIEdyb3VwLiAoMjAxNikuIERhdGFDaXRlIE1ldGFkYXRhIFNjaGVtYSBmb3IgdGhlIFB1YmxpY2F0aW9uIGFuZCBDaXRhdGlvbiBvZiBSZXNlYXJjaCBEYXRhIHY0LjAuIDxlbT5EYXRhQ2l0ZTwvZW0+LiA8YSBocmVmPSJodHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyIiBjbGFzcz0idXJpIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC8wMDEyPC9hPjwvcD4KPC9kaXY+CjxkaXYgaWQ9InJlZi1odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzAiPgo8cD5GZW5uZXIsIE0uICgyMDE2KS4gQ29vbCBET0nigJlzLiA8ZW0+RGF0YUNpdGU8L2VtPi4gPGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjU0MzgvNTVFNS1UNUMwIiBjbGFzcz0idXJpIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC81NUU1LVQ1QzA8L2E+PC9wPgo8L2Rpdj4KPC9kaXY+CgogICAgICAgICAgICA8aHIgd2lkdGg9IjgwJSI+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTUgY29sLW1kLW9mZnNldC0yIHBvc3QtY29udGVudCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbS10ZWFzZXIgY2YiPgogIDxkaXYgY2xhc3M9ImlzTGVmdCI+CiAgICA8c2VjdGlvbiBjbGFzcz0iYXV0aG9yIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImF1dGhvci1pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwczovL3d3dy5ncmF2YXRhci5jb20vYXZhdGFyLzQzNDU5MmEwOTdlOTEyNjE3OTJlYmQ2YjQ5MjA0MmJjP3M9MjUwJmQ9bW0mcj14KSI+QmxvZyBMb2dvPC9kaXY+CiAgICAgICAgPGg0Pk1hcnRpbiBGZW5uZXI8L2g0PgogICAgICAgIDxwIGNsYXNzPSJiaW8iPkRhdGFDaXRlIFRlY2huaWNhbCBEaXJlY3RvcjwvcD4KICAgICAgICA8cCBjbGFzcz0ib3JjaWQiPjxhIGhyZWY9Imh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xNDE5LTI0MDUiPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xNDE5LTI0MDU8L2E+PC9wPgogICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4KICAgICAgPGg0PkVhdGluZyB5b3VyIG93biBEb2cgRm9vZDwvaDQ+CiAgICAgICAgPHAgY2xhc3M9InB1Ymxpc2hlZCI+PGEgaHJlZj0iaHR0cHM6Ly9kb2kub3JnLzEwLjU0MzgvNGszbS1ueXZnIj5odHRwczovL2RvaS5vcmcvMTAuNTQzOC80azNtLW55dmc8L2E+CiAgICAgIDxwIGNsYXNzPSJwdWJsaXNoZWQiPjxpIGNsYXNzPSJmYSBmYS1jYWxlbmRhciI+PC9pPiA8dGltZSBkYXRldGltZT0iMjAxNi0xMi0yMCAwMDowMCI+RGVjZW1iZXIgMjAsIDIwMTY8L3RpbWU+PC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj48aSBjbGFzcz0iZmEgZmEtaGlzdG9yeSI+PC9pPiA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vZGF0YWNpdGUvYmxvZy9jb21taXRzL21hc3Rlci9zb3VyY2UvcG9zdHMvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLmh0bWwubWQiPkhpc3Rvcnk8L2E+PC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj7CqSAyMDE2IE1hcnRpbiBGZW5uZXIuIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgPGEgaHJlZj0iaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzQuMC8iPkNyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24gbGljZW5zZTwvYT4uPC9wPgogICAgICA8cCBjbGFzcz0icHVibGlzaGVkIj4KICAgICAgICA8aSBjbGFzcz0iZmEgZmEtdGFncyI+PC9pPgogICAgICAgIDxhIGhyZWY9Ii9pbmRleC5odG1sP3RhZz1kYXRhY2l0ZSI+ZGF0YWNpdGU8L2E+LCA8YSBocmVmPSIvaW5kZXguaHRtbD90YWc9ZG9pIj5kb2k8L2E+LCA8YSBocmVmPSIvaW5kZXguaHRtbD90YWc9bWV0YWRhdGEiPm1ldGFkYXRhPC9hPiwgPGEgaHJlZj0iL2luZGV4Lmh0bWw/dGFnPWZlYXR1cmVkIj5mZWF0dXJlZDwvYT4KICAgICAgPC9wPgogICAgPC9zZWN0aW9uPgogIDwvZGl2Pgo8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0yIGNvbC1tZC1vZmZzZXQtMSI+CiAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJib3R0b20tdGVhc2VyIGNmIj4KICA8ZGl2IGNsYXNzPSJpc0xlZnQiPgogICAgPGg1IGNsYXNzPSJpbmRleC1oZWFkbGluZSBmZWF0dXJlZCI+PHNwYW4+U2hhcmUgb248L3NwYW4+PC9oNT4KICAgICAgPGEgY2xhc3M9Imljb24tdHdpdHRlciIgaHJlZj0iaHR0cDovL3R3aXR0ZXIuY29tL3NoYXJlP3RleHQ9T24gdGhlIEBkYXRhY2l0ZSBibG9nOiBFYXRpbmcgeW91ciBvd24gRG9nIEZvb2QmYW1wO3VybD1odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8iCiAgICAgICAgb25jbGljaz0id2luZG93Lm9wZW4odGhpcy5ocmVmLCAndHdpdHRlci1zaGFyZScsICd3aWR0aD01NTAsaGVpZ2h0PTI1NScpO3JldHVybiBmYWxzZTsiPgogICAgICAgIDxpIGNsYXNzPSJmYSBmYS10d2l0dGVyIGZhLTJ4Ij48L2k+PHNwYW4gY2xhc3M9ImhpZGRlbiI+dHdpdHRlcjwvc3Bhbj4KICAgICAgPC9hPgogICAgICA8YSBjbGFzcz0iaWNvbi1mYWNlYm9vayIgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL3NoYXJlci5waHA/dD1PbiB0aGUgQGRhdGFjaXRlIGJsb2c6IEVhdGluZyB5b3VyIG93biBEb2cgRm9vZCZhbXA7dT1odHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8iCiAgICAgICAgb25jbGljaz0id2luZG93Lm9wZW4odGhpcy5ocmVmLCAnZmFjZWJvb2stc2hhcmUnLCAnd2lkdGg9NTUwLGhlaWdodD0yNTUnKTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICA8aSBjbGFzcz0iZmEgZmEtZmFjZWJvb2sgZmEtMngiPjwvaT48c3BhbiBjbGFzcz0iaGlkZGVuIj5mYWNlYm9vazwvc3Bhbj4KICAgICAgPC9hPgogIDwvZGl2Pgo8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC04IGNvbC1tZC1vZmZzZXQtMiBwb3N0LWNvbnRlbnQiPgogICAgICAgICAgICAgIDxkaXYgaWQ9ImRpc3F1c190aHJlYWQiPjwvZGl2Pgo8c2NyaXB0PgogICAgdmFyIGRpc3F1c19jb25maWcgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgdGhpcy5wYWdlLnVybCA9ICdodHRwczovL2Jsb2cuZGF0YWNpdGUub3JnL2VhdGluZy15b3VyLW93bi1kb2ctZm9vZC8nOwogICAgICAgIHRoaXMucGFnZS5pZGVudGlmaWVyID0gJ2h0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZWF0aW5nLXlvdXItb3duLWRvZy1mb29kLyc7CiAgICB9OwogICAgKGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBkID0gZG9jdW1lbnQsIHMgPSBkLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwoKICAgICAgICBzLnNyYyA9ICcvL2RhdGFjaXRlLmRpc3F1cy5jb20vZW1iZWQuanMnOyAgLy8KCiAgICAgICAgcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtdGltZXN0YW1wJywgK25ldyBEYXRlKCkpOwogICAgICAgIChkLmhlYWQgfHwgZC5ib2R5KS5hcHBlbmRDaGlsZChzKTsKICAgIH0pKCk7Cjwvc2NyaXB0Pgo8bm9zY3JpcHQ+UGxlYXNlIGVuYWJsZSBKYXZhU2NyaXB0IHRvIHZpZXcgdGhlIDxhIGhyZWY9Imh0dHBzOi8vZGlzcXVzLmNvbS8/cmVmX25vc2NyaXB0IiByZWw9Im5vZm9sbG93Ij5jb21tZW50cyBwb3dlcmVkIGJ5IERpc3F1cy48L2E+PC9ub3NjcmlwdD4KCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgICA8Zm9vdGVyIGNsYXNzPSdyb3cgZm9vdGVyJz4KICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSdjb2wtbWQtMyBjb2wtc20tNCc+CiAgICAgICAgICA8aDQ+QWJvdXQgRGF0YUNpdGU8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL21pc3Npb24uaHRtbCI+V2hhdCB3ZSBkbzwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2JvYXJkLmh0bWwiPkJvYXJkPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RlZXJpbmcuaHRtbCI+U3RlZXJpbmcgZ3JvdXBzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RhZmYuaHRtbCI+U3RhZmY8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9qb2JvcHBvcnR1bml0aWVzLmh0bWwiPkpvYiBvcHBvcnR1bml0aWVzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zIGNvbC1zbS00Jz4KICAgICAgICAgIDxoND5TZXJ2aWNlczwvaDQ+CiAgICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvZG9pcy5odG1sIj5Bc3NpZ24gRE9JczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3NlYXJjaC5odG1sIj5NZXRhZGF0YSBzZWFyY2g8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9ldmVudGRhdGEuaHRtbCI+RXZlbnQgZGF0YTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3Byb2ZpbGVzLmh0bWwiPlByb2ZpbGVzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvcmUzZGF0YS5odG1sIj5yZTNkYXRhPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvY2l0YXRpb24uaHRtbCI+Q2l0YXRpb24gZm9ybWF0dGVyPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5kYXRhY2l0ZS5vcmcvc3RhdHMuaHRtbCI+U3RhdGlzdGljczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2NvbnRlbnQuaHRtbCI+Q29udGVudCBuZWdvdGlhdGlvbjwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL29haXBtaC5odG1sIj5PQUktUE1IPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zIGNvbC1zbS00Jz4KICAgICAgICAgIDxoND5SZXNvdXJjZXM8L2g0PgogICAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9zY2hlbWEuZGF0YWNpdGUub3JnIj5NZXRhZGF0YSBzY2hlbWE8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3VwcG9ydC5kYXRhY2l0ZS5vcmciPlN1cHBvcnQ8L2E+PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8aDQ+Q29tbXVuaXR5PC9oND4KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9tZW1iZXJzLmh0bWwiPk1lbWJlcnM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9wYXJ0bmVycy5odG1sIj5QYXJ0bmVyczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3N0ZWVyaW5nLmh0bWwiPlN0ZWVyaW5nIGdyb3VwczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL2V2ZW50cy5odG1sIj5FdmVudHM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9yb2FkbWFwLmh0bWwiPlJvYWRtYXA8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy91c2VyLXN0b3JpZXMuaHRtbCI+VXNlciBTdG9yaWVzPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2NvbC1tZC0zJz4KICAgICAgICAgIDxoNCBjbGFzcz0ic2hhcmUiPkNvbnRhY3QgdXM8L2g0PgogICAgICAgICAgPGEgaHJlZj0nbWFpbHRvOnN1cHBvcnRAZGF0YWNpdGUub3JnJyBjbGFzcz0ic2hhcmUiPgogICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtYXQnPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vYmxvZy5kYXRhY2l0ZS5vcmcvZmVlZC54bWwnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1yc3MnPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vdHdpdHRlci5jb20vZGF0YWNpdGUnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS10d2l0dGVyJz48L2k+CiAgICAgICAgICA8L2E+CiAgICAgICAgICA8YSBocmVmPSdodHRwczovL2dpdGh1Yi5jb20vZGF0YWNpdGUvZGF0YWNpdGUnIGNsYXNzPSJzaGFyZSI+CiAgICAgICAgICAgIDxpIGNsYXNzPSdmYSBmYS1naXRodWInPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9J2h0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2RhdGFjaXRlJyBjbGFzcz0ic2hhcmUiPgogICAgICAgICAgICA8aSBjbGFzcz0nZmEgZmEtbGlua2VkaW4nPjwvaT4KICAgICAgICAgIDwvYT4KICAgICAgICAgIDx1bD4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy90ZXJtcy5odG1sIj5UZXJtcyBhbmQgY29uZGl0aW9uczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZGF0YWNpdGUub3JnL3ByaXZhY3kuaHRtbCI+UHJpdmFjeSBwb2xpY3k8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmRhdGFjaXRlLm9yZy9hY2tub3dsZWRnbWVudHMuaHRtbCI+QWNrbm93bGVkZ2VtZW50czwvYT48L2xpPgogICAgICAgICAgPC91bD4KICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9zdGF0dXMuZGF0YWNpdGUub3JnIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb2xvci1kb3QiPjwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbG9yLWRlc2NyaXB0aW9uIj48L3NwYW4+CiAgICAgICAgICA8L2E+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9mb290ZXI+CiAgICA8c2NyaXB0IHNyYz0iLy9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTIuMS40Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLy9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvMy4zLjYvanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLy9jZG4uc3RhdHVzcGFnZS5pby9zZS12Mi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9hc3NldHMuZGF0YWNpdGUub3JnL2phdmFzY3JpcHRzL2RlZmF1bHQuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii9qYXZhc2NyaXB0cy9yZWFkaW5nVGltZS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii9qYXZhc2NyaXB0cy9pbmRleC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iL2phdmFzY3JpcHRzL3NlYXJjaC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IGlkPSJkc3EtY291bnQtc2NyIiBzcmM9Ii8vZGF0YWNpdGUuZGlzcXVzLmNvbS9jb3VudC5qcyIgYXN5bmM+PC9zY3JpcHQ+CiAgICA8c2NyaXB0PgogICAgICAoZnVuY3Rpb24oaSxzLG8sZyxyLGEsbSl7aVsnR29vZ2xlQW5hbHl0aWNzT2JqZWN0J109cjtpW3JdPWlbcl18fGZ1bmN0aW9uKCl7CiAgICAgIChpW3JdLnE9aVtyXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfSxpW3JdLmw9MSpuZXcgRGF0ZSgpO2E9cy5jcmVhdGVFbGVtZW50KG8pLAogICAgICBtPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pCiAgICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnLy93d3cuZ29vZ2xlLWFuYWx5dGljcy5jb20vYW5hbHl0aWNzLmpzJywnZ2EnKTsKCiAgICAgIGdhKCdjcmVhdGUnLCAnVUEtMjI4MDYxOTYtNicsICdhdXRvJyk7CiAgICAgIGdhKCdzZW5kJywgJ3BhZ2V2aWV3Jyk7CiAgICA8L3NjcmlwdD4KICA8L2JvZHk+CjwvaHRtbD4K
|
105
105
|
http_version:
|
106
|
-
recorded_at: Sun,
|
106
|
+
recorded_at: Sun, 01 Apr 2018 09:07:35 GMT
|
107
107
|
recorded_with: VCR 3.0.3
|
data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/harvard_dataverse.yml
CHANGED
@@ -21,17 +21,17 @@ http_interactions:
|
|
21
21
|
Content-Type:
|
22
22
|
- text/html;charset=UTF-8
|
23
23
|
Date:
|
24
|
-
- Sun,
|
24
|
+
- Sun, 01 Apr 2018 09:07:39 GMT
|
25
25
|
Server:
|
26
26
|
- Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.2k-fips
|
27
27
|
Set-Cookie:
|
28
|
-
- JSESSIONID=
|
28
|
+
- JSESSIONID=0764ebea9ef361b74c0bbe843991; Path=/; Secure; HttpOnly, AWSELB=EB1179591E49E298C6825A3028F74991071DEE12D3003932193CF2C36310550FD24D4C34ECDBD3EC37C4E69D8B958E3FBF8CF814030B5CB9749AB70FE33A8BB5BB36A149CB;PATH=/;MAX-AGE=28800
|
29
29
|
Connection:
|
30
30
|
- keep-alive
|
31
31
|
body:
|
32
32
|
encoding: ASCII-8BIT
|
33
33
|
string: !binary |-
|
34
|
-
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnID8+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgbGFuZz0iZW4iPjxoZWFkPgogICAgICAgICAgICA8dGl0bGU+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDggLSBOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlPC90aXRsZT4KCSAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KCSAgICA8bWV0YSBuYW1lPSJEQy5pZGVudGlmaWVyIiBjb250ZW50PSJkb2k6MTAuNzkxMC9EVk4vR0FPQzAzIiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnR5cGUiIGNvbnRlbnQ9IkRhdGFzZXQiIC8+CgkgICAgPG1ldGEgbmFtZT0iREMudGl0bGUiIGNvbnRlbnQ9IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiAvPgogICAgICAgICAgICA8bWV0YSBuYW1lPSJEQy5kYXRlIiBjb250ZW50PSIyMDE4LTAzLTE2IiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnB1Ymxpc2hlciIgY29udGVudD0iSGFydmFyZCBEYXRhdmVyc2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmRlc2NyaXB0aW9uIiBjb250ZW50PSJOYXRpb25hbCBsYWJvciBmb3JjZSBzdXJ2ZXkgaW4gSW5kb25lc2lhLiBTdXJ2ZWkgYW5na2F0YW4ga2VyamEgbmFzaW9uYWwuIDIwMDgiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmNyZWF0b3IiIGNvbnRlbnQ9IkJhZGFuIFB1c2F0IFN0YXRpc3RpayIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0iREMuc3ViamVjdCIgY29udGVudD0iU29jaWFsIFNjaWVuY2VzIiAvPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj57IkBjb250ZXh0IjoiaHR0cDovL3NjaGVtYS5vcmciLCJAdHlwZSI6IkRhdGFzZXQiLCJpZGVudGlmaWVyIjoiaHR0cDovL2R4LmRvaS5vcmcvMTAuNzkxMC9EVk4vR0FPQzAzIiwibmFtZSI6IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiwiYXV0aG9yIjpbeyJuYW1lIjoiQmFkYW4gUHVzYXQgU3RhdGlzdGlrIn1dLCJkYXRlUHVibGlzaGVkIjoiMjAxOC0wMy0xNiIsImRhdGVNb2RpZmllZCI6IjIwMTgtMDMtMTYiLCJ2ZXJzaW9uIjoiMSIsImRlc2NyaXB0aW9uIjoiTmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4Iiwia2V5d29yZHMiOlsiU29jaWFsIFNjaWVuY2VzIiwiTGFib3IgU3VwcGx5LCBJbmRvbmVzaWEsIFN0YXRpc3RpY3MiXSwic2NoZW1hVmVyc2lvbiI6Imh0dHBzOi8vc2NoZW1hLm9yZy92ZXJzaW9uLzMuMyIsImxpY2Vuc2UiOnsiQHR5cGUiOiJEYXRhc2V0IiwidGV4dCI6IkxpY2Vuc2VkIGVsZWN0cm9uaWMgcmVzb3VyY2VzIGFyZSByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBVbmRlciBIYXJ2YXJkJ3MgbGljZW5zZXMgZm9yIGVsZWN0cm9uaWMgcmVzb3VyY2VzLCB1c2VycyBnZW5lcmFsbHkgbWF5IG5vdDogcGVybWl0IGFueW9uZSBvdGhlciB0aGFuIGF1dGhvcml6ZWQgdXNlcnMgdG8gdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IG1vZGlmeSBvciBjcmVhdGUgYSBkZXJpdmF0aXZlIHdvcmsgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyB3aXRob3V0IHRoZSBwZXJtaXNzaW9uIG9mIHRoZSBsaWNlbnNvcjsgcmVtb3ZlLCBvYnNjdXJlIG9yIG1vZGlmeSBhbnkgY29weXJpZ2h0IG9yIG90aGVyIG5vdGljZXMgaW5jbHVkZWQgaW4gdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gdGhlIHNhbGUgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscy4gVXNlcnMgYXJlIGluZGl2aWR1YWxseSByZXNwb25zaWJsZSBmb3IgY29tcGxpYW5jZSB3aXRoIHRoZXNlIHRlcm1zLiJ9LCJpbmNsdWRlZEluRGF0YUNhdGFsb2ciOnsiQHR5cGUiOiJEYXRhQ2F0YWxvZyIsIm5hbWUiOiJIYXJ2YXJkIERhdGF2ZXJzZSIsInVybCI6Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1In0sInByb3ZpZGVyIjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwibmFtZSI6IkRhdGF2ZXJzZSJ9fQoKICAgICAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LUxhbmd1YWdlIiBjb250ZW50PSJlbiIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgRGF0YXZlcnNlIFByb2plY3QgaXMgYW4gb3BlbiBzb3VyY2Ugc29mdHdhcmUgYXBwbGljYXRpb24gdG8gc2hhcmUsIGNpdGUgYW5kIGFyY2hpdmUgZGF0YS4gRGF0YXZlcnNlIHByb3ZpZGVzIGEgcm9idXN0IGluZnJhc3RydWN0dXJlIGZvciBkYXRhIHN0ZXdhcmRzIHRvIGhvc3QgYW5kIGFyY2hpdmUgZGF0YSwgd2hpbGUgb2ZmZXJpbmcgcmVzZWFyY2hlcnMgYW4gZWFzeSB3YXkgdG8gc2hhcmUgYW5kIGdldCBjcmVkaXQgZm9yIHRoZWlyIGRhdGEuIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS90aGVtZS5jc3MueGh0bWw/bG49cHJpbWVmYWNlcy1ib290c3RyYXAiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pxdWVyeS9qcXVlcnkuanMueGh0bWw7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanF1ZXJ5L2pxdWVyeS1wbHVnaW5zLmpzLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9sbj1wcmltZWZhY2VzJmFtcDt2PTUuMyI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3ByaW1lZmFjZXMuanMueGh0bWw7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvcHJpbWVmYWNlcy5jc3MueGh0bWw7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS93YXRlcm1hcmsvd2F0ZXJtYXJrLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3dhdGVybWFyay93YXRlcm1hcmsuanMueGh0bWw7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1P2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvZmlsZXVwbG9hZC9maWxldXBsb2FkLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2ZpbGV1cGxvYWQvZmlsZXVwbG9hZC5qcy54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZih3aW5kb3cuUHJpbWVGYWNlcyl7fTwvc2NyaXB0PgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpY29uIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdmljb25kYXRhdmVyc2UucG5nLnhodG1sIiAvPgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpbWFnZV9zcmMiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9pbWFnZXMvZGF0YXZlcnNlcHJvamVjdC5wbmcueGh0bWwiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2Nzcy9ib290c3RyYXAubWluLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9jc3MvYm9vdHN0cmFwLXRoZW1lLm1pbi5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2llLWNvbXBhdC5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL293bC5jYXJvdXNlbC5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2ZvbnRjdXN0b20uY3NzLnhodG1sP3ZlcnNpb249NC44LjQiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2Nzcy9zb2NpY29uLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jc3Mvc3RydWN0dXJlLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgICAgICA8c2NyaXB0PgogICAgICAgICAgICAgICAgLy8gQnJlYWsgb3V0IG9mIGlmcmFtZQogICAgICAgICAgICAgICAgaWYgKHdpbmRvdyAhPT0gdG9wKSB0b3AubG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247CiAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgICAgICAvKiBDdXN0b20gQ1NTICovCiAgICAgICAgICAgICAgICAjbmF2YmFyRml4ZWQgZGl2Lm5hdmJhci1oZWFkZXIgaW1nLm5hdmJhci1icmFuZC5jdXN0b20tbG9nbyB7aGVpZ2h0OjUwcHggIWltcG9ydGFudDt9CiNkYXRhdmVyc2VEZXNjIHNwYW4gPiBzcGFuID4gc3BhbiA+IGgzIHtmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7fQoKICAgICAgICAgICAgPC9zdHlsZT48L2hlYWQ+PGJvZHk+Cgk8YSBocmVmPSIjY29udGVudCIgY2xhc3M9InNyLW9ubHkiPlNraXAgdG8gbWFpbiBjb250ZW50PC9hPgogICAgCiAgICA8ZGl2IGlkPSJkYXRhdmVyc2UtaGVhZGVyLWJsb2NrIj4KICAgICAgICA8IS0tIE5hdmJhciBQYW5lbCAtLT48bmF2IHJvbGU9Im5hdmlnYXRpb24iIGlkPSJuYXZiYXJGaXhlZCIgY2xhc3M9Im5hdmJhciBuYXZiYXItZGVmYXVsdCBuYXZiYXItZml4ZWQtdG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhci1oZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3RvcE5hdkJhciIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgbmF2aWdhdGlvbjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4gICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8iPjxpbWcgc3JjPSIvbG9nb3MvbmF2YmFyL2xvZ28ucG5nO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNSIgY2xhc3M9Im5hdmJhci1icmFuZCBjdXN0b20tbG9nbyIgLz4KICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9InRvcE5hdkJhciI+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2YmFyLW5hdiBuYXZiYXItcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgaWQ9Im5hdmJhci1zZWFyY2gtdG9nZ2xlIiB0aXRsZT0iU2VhcmNoIGFsbCBkYXRhdmVyc2VzLi4uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9Im5hdmJhci1mb3JtIG5hdmJhci1sZWZ0IiByb2xlPSJzZWFyY2giIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0ic3Itb25seSIgZm9yPSJuYXZiYXJzZWFyY2giPlNlYXJjaDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPSJuYXZiYXJzZWFyY2giIHR5cGU9InRleHQiIGNsYXNzPSJzZWFyY2gtaW5wdXQgdWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIgc2l6ZT0iMjgiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJTZWFyY2ggYWxsIGRhdGF2ZXJzZXMuLi4iIC8+ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0id2luZG93LmxvY2F0aW9uID0gJy9kYXRhdmVyc2UvaGFydmFyZD9xPScgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2YmFyc2VhcmNoJykudmFsdWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNlYXJjaCI+PC9zcGFuPiBGaW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJvdXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2d1aWRlcy5kYXRhdmVyc2Uub3JnL2VuLzQuOC40L3VzZXIiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVc2VyIEd1aWRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+Cjxmb3JtIGlkPSJqX2lkdDU2IiBuYW1lPSJqX2lkdDU2IiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1P3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBjbGFzcz0ibmF2YmFyLWZvcm0gbmF2YmFyLWxlZnQgbmF2YmFyLWZvcm0tbGluayI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImpfaWR0NTYiIHZhbHVlPSJqX2lkdDU2IiAvPgo8YSBpZD0ial9pZHQ1NjpqX2lkdDU3IiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2pfaWR0NTY6al9pZHQ1NyZxdW90Oyx1OiZxdW90O2NvbnRhY3REaWFsb2cmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdjb250YWN0Rm9ybScpLnNob3coKTt9fSk7cmV0dXJuIGZhbHNlOyI+U3VwcG9ydDwvYT48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJqYXZheC5mYWNlcy5WaWV3U3RhdGUiIGlkPSJqX2lkMTpqYXZheC5mYWNlcy5WaWV3U3RhdGU6MCIgdmFsdWU9IjQ4MTk5ODA2NTUwOTIwNjM2MjI6NDM5ODE4ODE2NTEwNjg1Mzk5MyIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+CjwvZm9ybT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvZGF0YXZlcnNldXNlci54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/ZWRpdE1vZGU9Q1JFQVRFJmFtcDtyZWRpcmVjdFBhZ2U9JTJGZGF0YXNldC54aHRtbCUzRnBlcnNpc3RlbnRJZCUzRGRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaWduIFVwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIvbG9naW5wYWdlLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9yZWRpcmVjdFBhZ2U9JTJGZGF0YXNldC54aHRtbCUzRnBlcnNpc3RlbnRJZCUzRGRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMb2cgSW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC9uYXY+CiAgICAgICAgPCEtLSBIZWFkZXIgUGFuZWwgLS0+CiAgICAgICAgPCEtLSBGSVhNRTogUmF0aGVyIHRoYW4gaGFyZC1jb2RpbmcgIkZGRkZGRiIsIGdldCBpdCBmcm9tIHRoZSBiYWNrZW5kIChUaGVtZVdpZGdldEZyYWdtZW50LkRFRkFVTFRfQkFDS0dST1VORF9DT0xPUikuIC0tPjxkaXYgc3R5bGU9ImJhY2tncm91bmQ6I0Y1RjVGNTsiIGlkPSJkYXRhdmVyc2VIZWFkZXIiIGNsYXNzPSJjb250YWluZXIgYmctbXV0ZWQiPgogICAgICAgICAgICA8IS0tIEZJWE1FOiBSYXRoZXIgdGhhbiBoYXJkLWNvZGluZyAiRkZGRkZGIiwgZ2V0IGl0IGZyb20gdGhlIGJhY2tlbmQgKFRoZW1lV2lkZ2V0RnJhZ21lbnQuREVGQVVMVF9MT0dPX0JBQ0tHUk9VTkRfQ09MT1IpLiAtLT48ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOkxFRlQ7YmFja2dyb3VuZDojZmZmZmZmOyIgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckxvZ28iPgogICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9sb2dvcy8xNzkvbmRzLmdpZiIgYWx0PSJOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlIiAvPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkYXRhdmVyc2VIZWFkZXJCbG9jayI+PGRpdiBjbGFzcz0iZGF0YXZlcnNlSGVhZGVyQ2VsbCBkYXRhdmVyc2VIZWFkZXJOYW1lIj4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlL25kcyIgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckRhdGF2ZXJzZU5hbWUiIHN0eWxlPSJjb2xvcjojOWEzODM4OyI+TnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZTwvYT48c3BhbiBzdHlsZT0iY29sb3I6Izg4ODg4ODsiPiAoSGFydmFyZCBVbml2ZXJzaXR5KTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJkYXRhdmVyc2VIZWFkZXJDZWxsIGRhdGF2ZXJzZUhlYWRlckxpbmsiPjxhIGhyZWY9Imh0dHA6Ly9oY2wuaGFydmFyZC5lZHUvbGlicmFyaWVzL2xhbW9udC9jb2xsZWN0aW9ucy9udW1lcmljZGF0YS9zZXJ2aWNlcy5jZm0iIHN0eWxlPSJjb2xvcjojOWEzODM4OyIgdGFyZ2V0PSJfYmxhbmsiPkhvbWUgUGFnZTwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBpZD0iYnJlYWRjcnVtYk5hdkJsb2NrIiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJCbG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYnJlYWRjcnVtYkxuazAiIGhyZWY9Ii9kYXRhdmVyc2UvaGFydmFyZCI+SGFydmFyZCBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgIDwvZGl2PjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQ2Fycm90Ij4gJmd0OyA8L3NwYW4+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJicmVhZGNydW1iQmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9ImJyZWFkY3J1bWJMbmsxIiBocmVmPSIvZGF0YXZlcnNlL0hhcnZhcmRTdWJzY3JpcHRpb25EYXRhIj5IYXJ2YXJkIFN1YnNjcmlwdGlvbiBEYXRhIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPC9kaXY+PHNwYW4gY2xhc3M9ImJyZWFkY3J1bWJDYXJyb3QiPiAmZ3Q7IDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJCbG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYnJlYWRjcnVtYkxuazIiIGhyZWY9Ii9kYXRhdmVyc2UvbmRzIj5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj48c3BhbiBjbGFzcz0iYnJlYWRjcnVtYkNhcnJvdCI+ICZndDsgPC9zcGFuPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYkJsb2NrIj48c3BhbiBjbGFzcz0iYnJlYWRjcnVtYkFjdGl2ZSI+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDg8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KCiAgICAgICAgCgogICAgICAgIDwhLS0gTWVzc2FnZSBQYW5lbCAtLT48ZGl2IGlkPSJtZXNzYWdlUGFuZWwiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgbWVzc2FnZVBhbmVsIj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIGlkPSJjb250ZW50Ij4KPGZvcm0gaWQ9ImRhdGFzZXRGb3JtIiBuYW1lPSJkYXRhc2V0Rm9ybSIgbWV0aG9kPSJwb3N0IiBhY3Rpb249Ii9kYXRhc2V0LnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9wZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMCUyRkRWTiUyRkdBT0MwMyIgZW5jdHlwZT0iYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZGF0YXNldEZvcm0iIHZhbHVlPSJkYXRhc2V0Rm9ybSIgLz4KCiAgICAgICAgICAgICAgICAgICAgPCEtLSBIZWFkZXIgLyBCdXR0b24gUGFuZWwgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBWaWV3IGVkaXRNb2RlIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50Ij48ZGl2IGlkPSJ0b3BEYXRhc2V0QmxvY2siPjxkaXYgaWQ9ImFjdGlvbkJ1dHRvbkJsb2NrIiBjbGFzcz0iYnV0dG9uLWJsb2NrIGNsZWFyZml4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBwdWxsLXJpZ2h0IiByb2xlPSJncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFZGl0L1B1Ymxpc2ggQnV0dG9uIEdyb3VwIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHVibGlzaC9TdWJtaXQgZm9yIFJldmlldy9SZXR1cm4gdG8gQXV0aG9yIEJ1dHRvbiBHcm91cCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogUHVibGlzaC9TdWJtaXQgZm9yIFJldmlldy9SZXR1cm4gdG8gQXV0aG9yIEJ1dHRvbiBHcm91cCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVkaXQgQnV0dG9uIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBFZGl0IEJ1dHRvbiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogRWRpdC9MaW5rL1B1Ymxpc2ggQnV0dG9uIEdyb3VwIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29udGFjdC9TaGFyZSBCdXR0b24gR3JvdXAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidG4tZ3JvdXAgcHVsbC1yaWdodCIgaWQ9ImRhdGFzZXRCdXR0b25CYXIiIHJvbGU9Imdyb3VwIj48YSBpZD0iZGF0YXNldEZvcm06al9pZHQyNTIiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgdGV4dC1idXR0b24gYm9vdHN0cmFwLWJ1dHRvbi10b29sdGlwIiBhcmlhLWxhYmVsPSJFbWFpbCBEYXRhc2V0IENvbnRhY3QiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQyNTImcXVvdDssdTomcXVvdDtjb250YWN0RGlhbG9nJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignY29udGFjdEZvcm0nKS5zaG93KCk7fSxmaTomcXVvdDtkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHRpdGxlPSJFbWFpbCBEYXRhc2V0IENvbnRhY3QiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1lbnZlbG9wZSI+PC9zcGFuPiBDb250YWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDI1NCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCB0ZXh0LWJ1dHRvbiBib290c3RyYXAtYnV0dG9uLXRvb2x0aXAiIGFyaWEtbGFiZWw9IlNoYXJlIERhdGFzZXQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQyNTQmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdzaGFyZURpYWxvZycpLnNob3coKTtzaGFycnJlKCk7O30sZmk6JnF1b3Q7ZGF0YXNldEZvcm06dG9wRGF0YXNldEJsb2NrRnJhZ21lbnQmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0aXRsZT0iU2hhcmUgRGF0YXNldCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNoYXJlIj48L3NwYW4+IFNoYXJlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBpZD0iZGF0YXNldEZvcm06c2hhcmVEaWFsb2ciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2hhcmVEaWFsb2dfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNoYXJlIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gU2hhcmUgdGhpcyBkYXRhc2V0IG9uIHlvdXIgZmF2b3JpdGUgc29jaWFsIG1lZGlhIG5ldHdvcmtzLjwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ic2hhcnJyZS13aWRnZXQiIGRhdGEtdXJsPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9kYXRhc2V0LnhodG1sP3BlcnNpc3RlbnRJZD1kb2k6MTAuNzkxMC9EVk4vR0FPQzAzIiBkYXRhLXRleHQ9IlZpZXcgdGhpcyBkYXRhc2V0LiI+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJQRignc2hhcmVEaWFsb2cnKS5oaWRlKCkiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHZhbHVlPSJDbG9zZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzaGFyZURpYWxvZ19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzaGFyZURpYWxvZyIse2lkOiJkYXRhc2V0Rm9ybTpzaGFyZURpYWxvZyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQ6IENvbnRhY3QvU2hhcmUgQnV0dG9uIEdyb3VwIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFZpZXcgRGF0YXNldCBWZXJzaW9ucyBCdXR0b24gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDQuMi4xOiByZXBsYWNlZCBwZXJtaXNzaW9uU2VydmljZUJlYW4ub24oRGF0YXNldFBhZ2UuZGF0YXNldCkuaGFzKCdWaWV3VW5wdWJsaXNoZWREYXRhc2V0Jykgd2l0aCBEYXRhc2V0UGFnZS5jYW5WaWV3VW5wdWJsaXNoZWREYXRhc2V0KCkgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogRGF0YXNldCBWZXJzaW9ucyBCdXR0b24gLS0+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBNZXRyaWNzIC0tPjxkaXYgaWQ9Im1ldHJpY3MtYmxvY2siIGNsYXNzPSJjb2wteHMtMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWV0cmljcy1sYWJlbCIgY2xhc3M9ImNvbC14cy00IHNtYWxsIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc3RhdHMiPjwvc3Bhbj4gTWV0cmljcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Im1ldHJpY3MtY29udGVudCIgY2xhc3M9ImNvbC14cy04IHNtYWxsIHRleHQtY2VudGVyIj48c3BhbiBjbGFzcz0ibWV0cmljcy1kb3dubG9hZHMiPjAgRG93bmxvYWRzPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQ6IE1ldHJpY3MgLS0+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJkYXRhc2V0VmVyc2lvbkJsb2NrIiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj48ZGl2IGlkPSJ0aXRsZS1ibG9jayIgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEgdmNlbnRlciB0aXRsZS1wcmV2aWV3LWljb24tYmxvY2siPjxzcGFuIGNsYXNzPSJpY29uLWRhdGFzZXQiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTEgdmNlbnRlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJ0aXRsZSI+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDg8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gREFUQVNFVCBWRVJTSU9OIE5VTUJFUiAtLT48c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtZGVmYXVsdCI+VmVyc2lvbiAxLjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENJVEFUSU9OIEJMT0NLIC0tPgogICAgCiAgICA8ZGl2IGlkPSJjaXRhdGlvbi1ibG9jayIgY2xhc3M9InJvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyICBhbGVydCBhbGVydC1pbmZvIGJnLWNpdGF0aW9uIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93ICI+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjaXRhdGlvbiIgY2xhc3M9ImNvbC14cy03IGNvbC1tZC04Ij4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD0iY2l0YXRpb24tc2VsZWN0IiBvbmNsaWNrPSJpZiAoZXZlbnQudGFyZ2V0KSB7IHNlbGVjdFRleHQoZXZlbnQudGFyZ2V0KTsgfSBlbHNleyBzZWxlY3RUZXh0KHRoaXMpOyB9Ij5CYWRhbiBQdXNhdCBTdGF0aXN0aWssIDIwMTgsICJUaGUgTmF0aW9uYWwgTGFib3IgRm9yY2UgOiBTQUtFUk5BUywgMjAwOCIsIDxhIGhyZWY9Imh0dHA6Ly9keC5kb2kub3JnLzEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPmRvaToxMC43OTEwL0RWTi9HQU9DMDM8L2E+LCBIYXJ2YXJkIERhdGF2ZXJzZSwgVjEKICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGlkPSJjaXRhdGlvbi1kb3dubG9hZCIgY2xhc3M9ImNvbC1zbS01IGNvbC1tZC00IHRleHQtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJkb3dubG9hZENpdGF0aW9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IGRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxpc3QiPjwvc3Bhbj4gQ2l0ZSBEYXRhc2V0IDxzcGFuIGNsYXNzPSJjYXJldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IHB1bGwtcmlnaHQgdGV4dC1sZWZ0IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzZi5qcy54aHRtbD9sbj1qYXZheC5mYWNlcyI+PC9zY3JpcHQ+DQo8YSBpZD0iZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsiIGhyZWY9IiMiIG9uY2xpY2s9Im1vamFycmEuanNmY2xqcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGF0YXNldEZvcm0nKSx7J2RhdGFzZXRGb3JtOmVuZE5vdGVMaW5rJzonZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsnfSwnJyk7cmV0dXJuIGZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5kTm90ZSBYTUwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpyaXNMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpyaXNMaW5rJzonZGF0YXNldEZvcm06cmlzTGluayd9LCcnKTtyZXR1cm4gZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGlkPSJkYXRhc2V0Rm9ybTpiaWJMaW5rIiBocmVmPSIjIiBvbmNsaWNrPSJtb2phcnJhLmpzZmNsanMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2RhdGFzZXRGb3JtJykseydkYXRhc2V0Rm9ybTpiaWJMaW5rJzonZGF0YXNldEZvcm06YmliTGluayd9LCdfYmxhbmsnKTtyZXR1cm4gZmFsc2UiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmliVGVYCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJjaXRhdGlvbi1zdGFuZGFyZHMiIGNsYXNzPSJzbWFsbCB0ZXh0LW11dGVkIHRleHQtcmlnaHQiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBMZWFybiBhYm91dCA8YSBocmVmPSJodHRwOi8vYmVzdC1wcmFjdGljZXMuZGF0YXZlcnNlLm9yZy9kYXRhLWNpdGF0aW9uLyIgdGl0bGU9IkdldCBSZWNvZ25pdGlvbjogRGF0YSBDaXRhdGlvbiAgLSBEYXRhdmVyc2UgQmVzdCBQcmFjdGljZXMiIHRhcmdldD0iX2JsYW5rIj5EYXRhIENpdGF0aW9uIFN0YW5kYXJkczwvYT4uPC9kaXY+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogQ0lUQVRJT04gQkxPQ0sgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEJFR0lOOiBEQVRBU0VUIFNVTU1BUlkgLS0+PGRpdiBpZD0iZGF0YXNldC1zdW1tYXJ5LW1ldGFkYXRhIiBjbGFzcz0icm93IHBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgbWV0YWRhdGEtcGFuZWwtYm9keSI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZHNEZXNjcmlwdGlvbiIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJBIHN1bW1hcnkgZGVzY3JpYmluZyB0aGUgcHVycG9zZSwgbmF0dXJlLCBhbmQgc2NvcGUgb2YgdGhlIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcG91bmQgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pk5hdGlvbmFsIGxhYm9yIGZvcmNlIHN1cnZleSBpbiBJbmRvbmVzaWEuIFN1cnZlaSBhbmdrYXRhbiBrZXJqYSBuYXNpb25hbC4gMjAwOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfc3ViamVjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEb21haW4tc3BlY2lmaWMgU3ViamVjdCBDYXRlZ29yaWVzIHRoYXQgYXJlIHRvcGljYWxseSByZWxldmFudCB0byB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+U29jaWFsIFNjaWVuY2VzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPjwvZGl2PjxkaXYgaWQ9ImtleXdvcmRzIiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iS2V5IHRlcm1zIHRoYXQgZGVzY3JpYmUgaW1wb3J0YW50IGFzcGVjdHMgb2YgdGhlIERhdGFzZXQuIj5LZXl3b3JkPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPkxhYm9yIFN1cHBseSwgSW5kb25lc2lhLCBTdGF0aXN0aWNzPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogREFUQVNFVCBTVU1NQVJZIC0tPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8IS0tIEVORCBWaWV3IGVkaXRNb2RlIC0tPgoKICAgICAgICAgICAgICAgICAgICA8IS0tIENyZWF0ZS9FZGl0IGVkaXRNb2RlIC0tPgogICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EIENyZWF0ZS9FZGl0IGVkaXRNb2RlIC0tPgoKICAgICAgICAgICAgICAgICAgICA8IS0tIEVkaXQgZWRpdE1vZGUgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQgSGVhZGVyIC8gQnV0dG9uIFBhbmVsIC0tPgogICAgICAgICAgICAgICAgICAgIDwhLS0gVmlldy9UYWJzIGluZm9Nb2RlIC0tPgogICAgICAgICAgICAgICAgICAgIDwhLS0gVGFicyAtLT48ZGl2IGlkPSJjb250ZW50VGFicyI+PGRpdiBpZD0iZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCI+IDwhLS0gcmVuZGVyZWQ9Il97ZW1wdHkgRGF0YXNldFBhZ2UuZWRpdE1vZGV9IiAtLT48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOmRhdGFzZXRMb2NrZWRGb3JJbmdlc3RWYXJpYWJsZSIgdHlwZT0iaGlkZGVuIiBuYW1lPSJkYXRhc2V0Rm9ybTpkYXRhc2V0TG9ja2VkRm9ySW5nZXN0VmFyaWFibGUiIHZhbHVlPSJmYWxzZSIgLz48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOmRhdGFzZXRTdGF0ZUNoYW5nZWRWYXJpYWJsZSIgdHlwZT0iaGlkZGVuIiBuYW1lPSJkYXRhc2V0Rm9ybTpkYXRhc2V0U3RhdGVDaGFuZ2VkVmFyaWFibGUiIHZhbHVlPSJmYWxzZSIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmVmcmVzaEluZ2VzdExvY2tDb21tYW5kID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06al9pZHQ0ODgiLGY6ImRhdGFzZXRGb3JtIixwOiJkYXRhc2V0Rm9ybTpqX2lkdDQ4OCIsdToiZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCIscGE6YXJndW1lbnRzWzBdLGZpOiJkYXRhc2V0Rm9ybTpwYWdlUmVmcmVzaEZyYWdtZW50In0pO308L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmVmcmVzaEFsbENvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDQ4OSIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOmpfaWR0NDg5Iix1OiJkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCBkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUgbWVzc2FnZVBhbmVsIixwYTphcmd1bWVudHNbMF0sZmk6ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQifSk7fTwvc2NyaXB0PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gc2VlIHRoZSBjb21tZW50IGluIHRoZSBqYXZhc2NyaXB0IGJlbG93IHRoYXQgZXhwbGFpbnMgd2hhdCB0aGlzIGJ1dHRvbiBpcyBmb3IgLS0+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiIgY2xhc3M9IiIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uJnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50IGRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSBtZXNzYWdlUGFuZWwmcXVvdDssZmk6JnF1b3Q7ZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPnVpLWJ1dHRvbjwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsInJlZnJlc2hCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06cmVmcmVzaEJ1dHRvbiJ9KTs8L3NjcmlwdD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZWFkeShmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hJZlN0aWxsTG9ja2VkKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHJlZnJlc2hJZlN0aWxsTG9ja2VkKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgnaW5wdXRbaWQkPSJkYXRhc2V0TG9ja2VkRm9ySW5nZXN0VmFyaWFibGUiXScpLnZhbCgpID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIGRhdGFzZXQgaXMgbG9ja2VkLCBpbnN0cnVjdCB0aGUgcGFnZSB0bwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gd2FpdCBhbmQgY2hlY2sgYWdhaW46CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0QW5kQ2hlY2tMb2NrQWdhaW4oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIG5vdCBsb2NrZWQsIGhhcyBpdCBqdXN0IGJlZW4gdW5sb2NrZWQ/CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgnaW5wdXRbaWQkPSJkYXRhc2V0U3RhdGVDaGFuZ2VkVmFyaWFibGUiXScpLnZhbCgpID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBGb3Igd2hhdGV2ZXIgdW5rbm93biBQcmltZUZhY2VzIHJlYXNvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBwYWdlIG5lZWRzIHRvIGJlIHJlZnJlc2hlZCB0d2ljZSwgZm9yIGFsbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBwdWxsIGRvd24gbWVudXMgdG8gdXBkYXRlIHByb3Blcmx5OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hBbGxDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gWW91IGNhbid0IGp1c3QgcnVuIDIgcmVmcmVzaEFsbENvbW1hbmQoKXMgaW4gYSByb3cKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlaXRoZXI7IGJlY2F1c2UgdGhlIGNvbW1hbmQgaGFzIGFuICJ1cGRhdGU9QGFsbCIgb24gaXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc28gSSBndWVzcyBpZiB5b3UgdHJ5IHRvIGV4ZWN1dGUgdGhlIDJuZCBvbmUgcmlnaHQgYWZ0ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGUgZmlyc3Qgb25lLCB0aGlzIGZyYWdtZW50IGlzIHN0aWxsIGdvaW5nIHRvIGJlIGxvYWRpbmcgLQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNvIHRoZXJlIHdvdWxkIG5vdCB5ZXQgYmUgYSBjb21tYW5kIHRvIHJ1biEgKGl0IG5lZWRzIHRvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYmUgcmVuZGVyZWQsIGJlZm9yZSB5b3UgY2FuIGV4ZWN1dGUgaXQsIHRoYXQgaXMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgYnV0dG9uIGRvZXNuJ3QgZG8gYW55dGhpbmcsIGJ1dCBpdCBoYXMgYW4gdXBkYXRlPSJAYWxsIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBhdHRyaWJ1dGU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9InJlZnJlc2hCdXR0b24iXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcmVmcmVzaEFsbENvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxNTAwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gd2FpdEFuZENoZWNrTG9ja0FnYWluKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJlZnJlc2ggdGhlIGxvY2sgaW4gdGhlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBiYWNraW5nIGJlYW47IGkuZS4sIGNoZWNrLCBpZiB0aGUgaW5nZXN0IGhhcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYWxyZWFkeSBjb21wbGV0ZWQgaW4gdGhlIGJhY2tncm91bmQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQoJ2J1dHRvbltpZCQ9InJlZnJlc2hCdXR0b24iXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3JlZnJlc2hMb2NrQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaEluZ2VzdExvY2tDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDEwMDAwKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NjcmlwdD48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3IiBjbGFzcz0idWktdGFicyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1oaWRkZW4tY29udGFpbmVyIHVpLXRhYnMtdG9wIiBkYXRhLXdpZGdldD0iY29udGVudCI+PHVsIGNsYXNzPSJ1aS10YWJzLW5hdiB1aS1oZWxwZXItcmVzZXQgdWktaGVscGVyLWNsZWFyZml4IHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLWFsbCIgcm9sZT0idGFibGlzdCI+PGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLXRhYnMtc2VsZWN0ZWQgdWktc3RhdGUtYWN0aXZlIHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0idHJ1ZSIgYXJpYS1zZWxlY3RlZD0idHJ1ZSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6ZGF0YUZpbGVzVGFiIiB0YWJpbmRleD0iLTEiPkZpbGVzPC9hPjwvbGk+PGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48YSBocmVmPSIjZGF0YXNldEZvcm06dGFiVmlldzptZXRhZGF0YU1hcFRhYiIgdGFiaW5kZXg9Ii0xIj5NZXRhZGF0YTwvYT48L2xpPjxsaSBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItdG9wIiByb2xlPSJ0YWIiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6dGVybXNUYWIiIHRhYmluZGV4PSItMSI+VGVybXM8L2E+PC9saT48bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLXRvcCIgcm9sZT0idGFiIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjxhIGhyZWY9IiNkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFiIiB0YWJpbmRleD0iLTEiPlZlcnNpb25zPC9hPjwvbGk+PC91bD48ZGl2IGNsYXNzPSJ1aS10YWJzLXBhbmVscyI+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpkYXRhRmlsZXNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0iZmFsc2UiPgoKICAgIDwhLS0gRmlsZXMgVGFibGUgLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIiBjbGFzcz0idWktZGF0YXRhYmxlIHVpLXdpZGdldCB1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZSIgc3R5bGU9Im1hcmdpbi1yaWdodDoxcHg7Ij48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtaGVhZGVyIHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLXRvcCI+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmZpbGVzSGVhZGVyQmxvY2siIGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYiPgogICAgICAgICAgICAgICAgICAgIDwhLS0gZGF0YXNldCBmaWxlIHNlYXJjaCAtLT4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlcyIgdHlwZT0idGV4dCIgb25rZXlwcmVzcz0iaWYgKGV2ZW50LmtleUNvZGUgPT0gMTMpIHsgc3VibWl0c2VhcmNoKCk7IHJldHVybiBmYWxzZTsgfSIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsImlucHV0U2VhcmNoVGVybSIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMifSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIldhdGVybWFyayIsIndpZGdldF9kYXRhc2V0Rm9ybV90YWJWaWV3X2ZpbGVzVGFibGVfal9pZHQ2OTQiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk0Iix2YWx1ZToiU2VhcmNoIHRoaXMgZGF0YXNldC4uLiIsdGFyZ2V0OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2VhcmNoRmlsZXMifSwid2F0ZXJtYXJrIik7fSk7PC9zY3JpcHQ+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6c2hvd0FjY2Vzc1BvcHVwIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzaG93QWNjZXNzUG9wdXAiIHZhbHVlPSJmYWxzZSIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+c3VibWl0c2VhcmNoID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk1IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk1IEB3aWRnZXRWYXIoaW5wdXRTZWFyY2hUZXJtKSIsdToiZGF0YXNldEZvcm0iLHBzOnRydWUscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImlucHV0LWdyb3VwLWJ0biI+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDY5NyIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk3JnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk3IEB3aWRnZXRWYXIoaW5wdXRTZWFyY2hUZXJtKSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtJnF1b3Q7LHBzOnRydWV9KTtyZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giPjwvc3Bhbj4gRmluZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IiBzdHlsZT0ibWFyZ2luLWJvdHRvbTo2cHg7Ij4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImZpbGVzSGVhZGVyQ291bnQiIGNsYXNzPSJjb2wteHMtMiB0ZXh0LWxlZnQiPgogICAgICAgICAgICAgICAgICAgIDwhLS0gRmlsZXMgQ291bnQgLS0+PHNwYW4gY2xhc3M9ImhpZ2hsaWdodEJvbGQiPjUgRmlsZXM8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImZpbGVzQnV0dG9ucyIgY2xhc3M9ImNvbC14cy0xMCI+CiAgICAgICAgICAgICAgICAgICAgPCEtLSA0LjIuMTogcmVwbGFjZWQgcGVybWlzc2lvbnNXcmFwcGVyLmNhbklzc3VlVXBkYXRlRGF0YXNldENvbW1hbmQoRGF0YXNldFBhZ2UuZGF0YXNldCkgd2l0aCBEYXRhc2V0UGFnZS5jYW5VcGRhdGVEYXRhc2V0KCkgLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnVwbG9hZENvbXB1dGVCbG9jayIgY2xhc3M9ImJ1dHRvbi1ibG9jayB0YWItaGVhZGVyIHB1bGwtcmlnaHQgdGV4dC1yaWdodCI+CjwhLS0gICAgICAgICAgICAgICAgICAgICAgICAmbHQ7aDpvdXRwdXRMaW5rIHZhbHVlPSIiIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbmRlcmVkPSJmYWxzZSImZ3Q7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ09NUFVURSBCVVRUT04gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbHQ7c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1mbGFzaCIvJmd0OyBDb21wdXRlCiAgICAgICAgICAgICAgICAgICAgICAgICZsdDsvaDpvdXRwdXRMaW5rJmd0Oy0tPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkRhdGFzZXQgcGcgb25seSo6IC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSoqKldoZW4gaXQgaXMgcG9zc2libGUgdG8gY29tcHV0ZSBvbiBhbiBlbnRpcmUgZGF0YXNldCwgY29tbWVudCB0aGlzIGluLS0+CjwhLS0gICAgICAgICAgICAgICAgICAgICZsdDtoOm91dHB1dExpbmsgdmFsdWU9IiIgdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB0YXJnZXQ9Il9ibGFuayIgcmVuZGVyZWQ9ImZhbHNlIiZndDsgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbHQ7c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1mbGFzaCIvJmd0OyBDb21wdXRlCiAgICAgICAgICAgICAgICAgICAgICAgICZsdDsvaDpvdXRwdXRMaW5rJmd0Oy0tPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InVpLXdpZGdldC1oZWFkZXIgdWktZGF0YXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyIj48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXItYm94Ij48dGFibGUgcm9sZT0iZ3JpZCI+PHRoZWFkIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfaGVhZCI+PHRyIHJvbGU9InJvdyI+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ3NDEiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiIHJvbGU9ImNvbHVtbmhlYWRlciIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPjwvc3Bhbj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktY2hrYm94LWFsbCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NzQyIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtZmlsZS10aHVtYiIgcm9sZT0iY29sdW1uaGVhZGVyIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ3NTciIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1maWxlLW1ldGFkYXRhIiByb2xlPSJjb2x1bW5oZWFkZXIiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPjwvc3Bhbj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0NzkwIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+CiAgICAgICAgICAgICAgICA8IS0tIEVESVQgLS0+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDwhLS0gRE9XTkxPQUQgLS0+PC9zcGFuPjwvdGg+PC90cj48L3RoZWFkPjwvdGFibGU+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLXNjcm9sbGFibGUtYm9keSIgdGFiaW5kZXg9Ii0xIj48dGFibGUgcm9sZT0iZ3JpZCI+PHRib2R5IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfZGF0YSIgY2xhc3M9InVpLWRhdGF0YWJsZS1kYXRhIHVpLXdpZGdldC1jb250ZW50Ij48dHIgZGF0YS1yaT0iMCIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5ZDJjZGMtMmRhMjU5ODI2ZmU4IiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWV2ZW4gdWktZGF0YXRhYmxlLXNlbGVjdGFibGUiIHJvbGU9InJvdyIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjIwcHggIWltcG9ydGFudDsiIGNsYXNzPSJ1aS1zZWxlY3Rpb24tY29sdW1uIHRleHQtY2VudGVyIj48ZGl2IGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX2NoZWNrYm94IiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDo2NHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0iY29sLWZpbGUtdGh1bWIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aHVtYm5haWwtYmxvY2sgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgICAgPCEtLSBUaHVtYm5haWwgUHJldmlldyAtLT4KCiAgICAgICAgICAgICAgICA8IS0tIERlZmF1bHQgSWNvbiAtLT48c3BhbiBjbGFzcz0iaWNvbi1kb2N1bWVudCBmaWxlLXRodW1ibmFpbC1pY29uIHRleHQtbXV0ZWQiPjwvc3Bhbj4KCiAgICAgICAgICAgICAgICA8IS0tIHRoZSAidGVtcCBwcmV2aWV3IiBpcyBmb3IgbmV3LCBub3QgeWV0IHNhdmVkIGZpbGVzOyB0aGVzZSBzaG91bGQgbmV2ZXIgYXBwZWFyIG9uIHRoaXMgcGFnZSAtIGFzIHdlIG5vdyBoYXZlIHRoZSBlZGl0ZmlsZXNwYWdlIGZvciB0aGF0LCBjb3JyZWN0PyAtLT4KCiAgICAgICAgICAgICAgICA8IS0tIFJlc3RyaWN0ZWQgRmlsZSBJY29uIC0tPjxkaXYgY2xhc3M9ImZpbGUtaWNvbi1yZXN0cmljdGVkLWJsb2NrIj4gICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1sb2NrIHRleHQtZGFuZ2VyIj48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtbWV0YWRhdGEiPgogICAgICAgICAgICAgICAgPCEtLSByZW5kZXJlZD0iIyB7IShmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24ucmVsZWFzZWQgb3IgZmlsZU1ldGFkYXRhLmRhdGFzZXRWZXJzaW9uLmRlYWNjZXNzaW9uZWQpfSIgLS0+PGEgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVOYW1lTGluayIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZU5hbWVMaW5rIiBocmVmPSIvZmlsZS54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/ZmlsZUlkPTMxMzE4NTQmYW1wO3ZlcnNpb249UkVMRUFTRUQmYW1wO3ZlcnNpb249LjAiPkt1ZXNpb25lciBTYWtlcm5hcyAyMDA4LnBkZjwvYT4KCiAgICAgICAgICAgIDwhLS0gVFlQRSArIFNJWkUgKyBEQVRFICsgQ0hFQ0tTVU0gLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPgogICAgICAgICAgICAgICAgPCEtLSBpZDozMTMxODU0IC0tPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPkFkb2JlIFBERjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZVNpemUiPiAtIDM3My42IEtCPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlQ3JlYXRlUHVibGlzaERhdGUiPiAtIE1hciAxNiwgMjAxODwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZURvd25sb2FkQ291bnQiPiAtIDAgRG93bmxvYWRzPC9zcGFuPjxkaXYgY2xhc3M9ImNoZWNrc3VtLWJsb2NrIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZS1jaGVja3N1bSI+TUQ1OiBjNzY4OWYwNDdlY2Q4NWEyMDdjMWFiN2ExM2VlMzJkNTwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwhLS0gVU5GICsgVmFyaWFibGVzLCBPYnNlcnN2YXRpb25zIC0tPjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtYWN0aW9uIHRleHQtcmlnaHQgIj48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPgogICAgCiAgICA8IS0tIENvbXB1dGUgQnV0dG9uICpGaWxlIHBnIG9ubHkqOiAtLT4KICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkRhdGFzZXQgcGcgb25seSo6IC0tPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iMSIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5Y2JiM2QtNjYxZmQ1ZTIwY2UyIiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLW9kZCB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICA8IS0tIFRodW1ibmFpbCBQcmV2aWV3IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gRGVmYXVsdCBJY29uIC0tPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgoKICAgICAgICAgICAgICAgIDwhLS0gdGhlICJ0ZW1wIHByZXZpZXciIGlzIGZvciBuZXcsIG5vdCB5ZXQgc2F2ZWQgZmlsZXM7IHRoZXNlIHNob3VsZCBuZXZlciBhcHBlYXIgb24gdGhpcyBwYWdlIC0gYXMgd2Ugbm93IGhhdmUgdGhlIGVkaXRmaWxlc3BhZ2UgZm9yIHRoYXQsIGNvcnJlY3Q/IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gUmVzdHJpY3RlZCBGaWxlIEljb24gLS0+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8IS0tIHJlbmRlcmVkPSIjIHshKGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5yZWxlYXNlZCBvciBmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24uZGVhY2Nlc3Npb25lZCl9IiAtLT48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9maWxlSWQ9MzEzMTg1NSZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+TGF5b3V0IFNha2VybmFzIDIwMDggQWd1c3R1cy5kb2M8L2E+CgogICAgICAgICAgICA8IS0tIFRZUEUgKyBTSVpFICsgREFURSArIENIRUNLU1VNIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj4KICAgICAgICAgICAgICAgIDwhLS0gaWQ6MzEzMTg1NSAtLT48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj5NUyBXb3JkPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlU2l6ZSI+IC0gMTQ4LjUgS0I8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlLWNoZWNrc3VtIj5NRDU6IGQ5MDA1ODA1OTY5MjczZTk0YTY0YzEzMjhhNTg2NWYyPC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPCEtLSBVTkYgKyBWYXJpYWJsZXMsIE9ic2Vyc3ZhdGlvbnMgLS0+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAKICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkZpbGUgcGcgb25seSo6IC0tPgogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+PC9kaXY+PC90ZD48L3RyPjx0ciBkYXRhLXJpPSIyIiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNjIwYjljYmQwYS1iYWM1ODVhYzA0YzYiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtZXZlbiB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICA8IS0tIFRodW1ibmFpbCBQcmV2aWV3IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gRGVmYXVsdCBJY29uIC0tPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgoKICAgICAgICAgICAgICAgIDwhLS0gdGhlICJ0ZW1wIHByZXZpZXciIGlzIGZvciBuZXcsIG5vdCB5ZXQgc2F2ZWQgZmlsZXM7IHRoZXNlIHNob3VsZCBuZXZlciBhcHBlYXIgb24gdGhpcyBwYWdlIC0gYXMgd2Ugbm93IGhhdmUgdGhlIGVkaXRmaWxlc3BhZ2UgZm9yIHRoYXQsIGNvcnJlY3Q/IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gUmVzdHJpY3RlZCBGaWxlIEljb24gLS0+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8IS0tIHJlbmRlcmVkPSIjIHshKGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5yZWxlYXNlZCBvciBmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24uZGVhY2Nlc3Npb25lZCl9IiAtLT48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9maWxlSWQ9MzEzMTg1NiZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+UV9TQUswODA4LnBkZjwvYT4KCiAgICAgICAgICAgIDwhLS0gVFlQRSArIFNJWkUgKyBEQVRFICsgQ0hFQ0tTVU0gLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPgogICAgICAgICAgICAgICAgPCEtLSBpZDozMTMxODU2IC0tPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPkFkb2JlIFBERjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZVNpemUiPiAtIDE0My4wIEtCPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlQ3JlYXRlUHVibGlzaERhdGUiPiAtIE1hciAxNiwgMjAxODwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZURvd25sb2FkQ291bnQiPiAtIDAgRG93bmxvYWRzPC9zcGFuPjxkaXYgY2xhc3M9ImNoZWNrc3VtLWJsb2NrIj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjI6ZmlsZS1jaGVja3N1bSI+TUQ1OiAyY2Q5OGY3NDUyNDc3MzIzOGRiZGJmZjBlMzI2MDA3ODwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwhLS0gVU5GICsgVmFyaWFibGVzLCBPYnNlcnN2YXRpb25zIC0tPjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBjbGFzcz0iY29sLWZpbGUtYWN0aW9uIHRleHQtcmlnaHQgIj48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPgogICAgCiAgICA8IS0tIENvbXB1dGUgQnV0dG9uICpGaWxlIHBnIG9ubHkqOiAtLT4KICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkRhdGFzZXQgcGcgb25seSo6IC0tPjwvZGl2PjwvdGQ+PC90cj48dHIgZGF0YS1yaT0iMyIgZGF0YS1yaz0iczM6Ly9kdm4tY2xvdWQ6MTYyMGI5ZDE5ZTMtOTQ2ZmRiZWJlYWQxIiBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLW9kZCB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICA8IS0tIFRodW1ibmFpbCBQcmV2aWV3IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gRGVmYXVsdCBJY29uIC0tPjxzcGFuIGNsYXNzPSJpY29uLW90aGVyIGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgoKICAgICAgICAgICAgICAgIDwhLS0gdGhlICJ0ZW1wIHByZXZpZXciIGlzIGZvciBuZXcsIG5vdCB5ZXQgc2F2ZWQgZmlsZXM7IHRoZXNlIHNob3VsZCBuZXZlciBhcHBlYXIgb24gdGhpcyBwYWdlIC0gYXMgd2Ugbm93IGhhdmUgdGhlIGVkaXRmaWxlc3BhZ2UgZm9yIHRoYXQsIGNvcnJlY3Q/IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gUmVzdHJpY3RlZCBGaWxlIEljb24gLS0+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8IS0tIHJlbmRlcmVkPSIjIHshKGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5yZWxlYXNlZCBvciBmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24uZGVhY2Nlc3Npb25lZCl9IiAtLT48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjM6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9maWxlSWQ9MzEzMTg1NyZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+c2FrMDhhZ3RfdHJhbnNmZXJ1bGFuZy5kYmY8L2E+CgogICAgICAgICAgICA8IS0tIFRZUEUgKyBTSVpFICsgREFURSArIENIRUNLU1VNIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj4KICAgICAgICAgICAgICAgIDwhLS0gaWQ6MzEzMTg1NyAtLT48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjM6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj5Vbmtub3duPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlU2l6ZSI+IC0gMzIzLjUgTUI8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlLWNoZWNrc3VtIj5NRDU6IGJhNmE1ZjYzZTEwZGVlNDZhMDAyNWYxMmY3NWE0YTBmPC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPCEtLSBVTkYgKyBWYXJpYWJsZXMsIE9ic2Vyc3ZhdGlvbnMgLS0+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAKICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkZpbGUgcGcgb25seSo6IC0tPgogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+PC9kaXY+PC90ZD48L3RyPjx0ciBkYXRhLXJpPSI0IiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNjIwYjlkNWMwZC1lOTE4OTJiNDk4MGEiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtZXZlbiB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICA8IS0tIFRodW1ibmFpbCBQcmV2aWV3IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gRGVmYXVsdCBJY29uIC0tPjxzcGFuIGNsYXNzPSJpY29uLW90aGVyIGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgoKICAgICAgICAgICAgICAgIDwhLS0gdGhlICJ0ZW1wIHByZXZpZXciIGlzIGZvciBuZXcsIG5vdCB5ZXQgc2F2ZWQgZmlsZXM7IHRoZXNlIHNob3VsZCBuZXZlciBhcHBlYXIgb24gdGhpcyBwYWdlIC0gYXMgd2Ugbm93IGhhdmUgdGhlIGVkaXRmaWxlc3BhZ2UgZm9yIHRoYXQsIGNvcnJlY3Q/IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gUmVzdHJpY3RlZCBGaWxlIEljb24gLS0+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8IS0tIHJlbmRlcmVkPSIjIHshKGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5yZWxlYXNlZCBvciBmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24uZGVhY2Nlc3Npb25lZCl9IiAtLT48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjQ6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9maWxlSWQ9MzEzMTg1OCZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+c2FrMDhmZWIuZGJmPC9hPgoKICAgICAgICAgICAgPCEtLSBUWVBFICsgU0laRSArIERBVEUgKyBDSEVDS1NVTSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+CiAgICAgICAgICAgICAgICA8IS0tIGlkOjMxMzE4NTggLS0+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVUeXBlT3V0cHV0UmVndWxhciI+VW5rbm93bjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjQ6ZmlsZVNpemUiPiAtIDMzLjIgTUI8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlLWNoZWNrc3VtIj5NRDU6IDM4ZWU1YjNjMTAwMWY0ZTYxZWY1MmI4M2I1NjdlODMxPC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPCEtLSBVTkYgKyBWYXJpYWJsZXMsIE9ic2Vyc3ZhdGlvbnMgLS0+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAKICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkZpbGUgcGcgb25seSo6IC0tPgogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+PC9kaXY+PC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS13aWRnZXQtaGVhZGVyIHVpLWRhdGF0YWJsZS1zY3JvbGxhYmxlLWZvb3RlciI+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLXNjcm9sbGFibGUtZm9vdGVyLWJveCI+PHRhYmxlIHJvbGU9ImdyaWQiPjwvdGFibGU+PC9kaXY+PC9kaXY+PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9zZWxlY3Rpb24iIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9zZWxlY3Rpb24iIGF1dG9jb21wbGV0ZT0ib2ZmIiB2YWx1ZT0iIiAvPjxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfc2Nyb2xsU3RhdGUiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9zY3JvbGxTdGF0ZSIgYXV0b2NvbXBsZXRlPSJvZmYiIHZhbHVlPSIwLDAiIC8+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRhdGFUYWJsZSIsImZpbGVzVGFibGUiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIixzZWxlY3Rpb25Nb2RlOiJjaGVja2JveCIsc2Nyb2xsYWJsZTp0cnVlLGxpdmVTY3JvbGw6dHJ1ZSxzY3JvbGxTdGVwOjI1LHNjcm9sbExpbWl0OjUsc2Nyb2xsV2lkdGg6IjEwMCUiLHNjcm9sbEhlaWdodDoiOTIlIixsaXZlU2Nyb2xsQnVmZmVyOjB9KTt9KTs8L3NjcmlwdD48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3Om1ldGFkYXRhTWFwVGFiIiBjbGFzcz0idWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIHVpLWhlbHBlci1oaWRkZW4iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIHRhYi1oZWFkZXIgbWFyZ2luLWJvdHRvbSB0ZXh0LXJpZ2h0Ij48ZGl2IGNsYXNzPSJidG4tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IGRyb3Bkb3duLXRvZ2dsZSIgdHlwZT0iYnV0dG9uIiBzdHlsZUNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhwb3J0Ij48L3NwYW4+IEV4cG9ydCBNZXRhZGF0YSA8c3BhbiBjbGFzcz0iY2FyZXQiPjwvc3Bhbj48L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSIgcm9sZT0ibWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvZGF0YXNldHMvZXhwb3J0O2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9leHBvcnRlcj1kY3Rlcm1zJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vR0FPQzAzIiB0YXJnZXQ9Il9ibGFuayI+RHVibGluIENvcmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvZGF0YXNldHMvZXhwb3J0O2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9leHBvcnRlcj1kZGkmYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9HQU9DMDMiIHRhcmdldD0iX2JsYW5rIj5EREk8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvZGF0YXNldHMvZXhwb3J0O2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9leHBvcnRlcj1kYXRhdmVyc2VfanNvbiZhbXA7cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPkpTT048L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdS9hcGkvZGF0YXNldHMvZXhwb3J0O2pzZXNzaW9uaWQ9NzY2Yzk4M2M1YjI2ZTk4MWNlOTg3MWFmZDFiNT9leHBvcnRlcj1zY2hlbWEub3JnJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vR0FPQzAzIiB0YXJnZXQ9Il9ibGFuayI+U2NoZW1hLm9yZyBKU09OLUxEPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD48L2Rpdj48L2Rpdj4KICAgIDwhLS0gVmlldyBNb2RlIC0tPjxkaXYgY2xhc3M9InBhbmVsLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlMCIgY2xhc3M9InBhbmVsLWhlYWRpbmcgdGV4dC1pbmZvIj4KICAgICAgICAgICAgICAgICAgICBDaXRhdGlvbiBNZXRhZGF0YSDCoDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWNoZXZyb24tdXAiPjwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZTAiIGNsYXNzPSJjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSBtZXRhZGF0YS1wYW5lbC1ib2R5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX3B1YmxpY2F0aW9uRGF0ZSIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgdW5pcXVlIHBlcnNpc3RlbnQgaWRlbnRpZmllciBmb3IgYSBEYXRhc2V0LCB3aGljaCBjYW4gYmUgYSBIYW5kbGUgb3IgRE9JIGluIERhdGF2ZXJzZS4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0YXNldCBQZXJzaXN0ZW50IElECiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9pOjEwLjc5MTAvRFZOL0dBT0MwMwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfcHVibGljYXRpb25EYXRlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBwdWJsaWNhdGlvbiBkYXRlIG9mIGEgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHVibGljYXRpb24gRGF0ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMTgtMDMtMTYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX3RpdGxlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkZ1bGwgdGl0bGUgYnkgd2hpY2ggdGhlIERhdGFzZXQgaXMga25vd24uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpdGxlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHJpbWl0aXZlIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9hdXRob3IiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIHBlcnNvbihzKSwgY29ycG9yYXRlIGJvZHkoaWVzKSwgb3IgYWdlbmN5KGllcykgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSB3b3JrLiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBdXRob3IKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPkJhZGFuIFB1c2F0IFN0YXRpc3RpawogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RhdGFzZXRDb250YWN0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBjb250YWN0KHMpIGZvciB0aGlzIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnRhY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBVc2UgZW1haWwgYnV0dG9uIGFib3ZlIHRvIGNvbnRhY3QuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+QmFsZGlzc2Vyb3R0bywgSm9obiAoSGFydmFyZCBVbml2ZXJzaXR5KSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9kc0Rlc2NyaXB0aW9uIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkEgc3VtbWFyeSBkZXNjcmliaW5nIHRoZSBwdXJwb3NlLCBuYXR1cmUsIGFuZCBzY29wZSBvZiB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVzY3JpcHRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPk5hdGlvbmFsIGxhYm9yIGZvcmNlIHN1cnZleSBpbiBJbmRvbmVzaWEuIFN1cnZlaSBhbmdrYXRhbiBrZXJqYSBuYXNpb25hbC4gMjAwOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX3N1YmplY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iRG9tYWluLXNwZWNpZmljIFN1YmplY3QgQ2F0ZWdvcmllcyB0aGF0IGFyZSB0b3BpY2FsbHkgcmVsZXZhbnQgdG8gdGhlIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+U29jaWFsIFNjaWVuY2VzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9rZXl3b3JkIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IktleSB0ZXJtcyB0aGF0IGRlc2NyaWJlIGltcG9ydGFudCBhc3BlY3RzIG9mIHRoZSBEYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLZXl3b3JkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHJpbWl0aXZlIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5MYWJvciBTdXBwbHksIEluZG9uZXNpYSwgU3RhdGlzdGljcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RlcG9zaXRvciIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgcGVyc29uIChGYW1pbHkgTmFtZSwgR2l2ZW4gTmFtZSkgb3IgdGhlIG5hbWUgb2YgdGhlIG9yZ2FuaXphdGlvbiB0aGF0IGRlcG9zaXRlZCB0aGlzIERhdGFzZXQgdG8gdGhlIHJlcG9zaXRvcnkuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlcG9zaXRvcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5CYWxkaXNzZXJvdHRvLCBKb2huPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9kYXRlT2ZEZXBvc2l0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkRhdGUgdGhhdCB0aGUgRGF0YXNldCB3YXMgZGVwb3NpdGVkIGludG8gdGhlIHJlcG9zaXRvcnkuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlcG9zaXQgRGF0ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij4yMDE4LTAzLTA5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICA8IS0tIEVkaXQgTW9kZSAtLT48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnRlcm1zVGFiIiBjbGFzcz0idWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIHVpLWhlbHBlci1oaWRkZW4iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CjwhLS0gVEVSTVMgLS0+CiAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ncm91cCI+CiAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlVE9VIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICBUZXJtcyBvZiBVc2UgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZVRPVSIgY2xhc3M9ImNvbGxhcHNlIGluIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnRvdUZyYWdtZW50Ij4KICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIHdhaXZlciBpbmZvcm1zIGRhdGEgZG93bmxvYWRlcnMgaG93IHRoZXkgY2FuIHVzZSB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXYWl2ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj5PdXIgPGEgaHJlZj0iaHR0cDovL2Jlc3QtcHJhY3RpY2VzLmRhdGF2ZXJzZS5vcmcvaGFydmFyZC1wb2xpY2llcy9jb21tdW5pdHktbm9ybXMuaHRtbCIgdGl0bGU9IkRhdGF2ZXJzZSBDb21tdW5pdHkgTm9ybXMgLSBEYXRhdmVyc2UgQmVzdCBQcmFjdGljZXMiIHRhcmdldD0iX2JsYW5rIj5Db21tdW5pdHkgTm9ybXM8L2E+IGFzIHdlbGwgYXMgZ29vZCBzY2llbnRpZmljIHByYWN0aWNlcyBleHBlY3QgdGhhdCBwcm9wZXIgY3JlZGl0IGlzIGdpdmVuIHZpYSBjaXRhdGlvbi4gUGxlYXNlIHVzZSB0aGUgZGF0YSBjaXRhdGlvbiBhYm92ZSwgZ2VuZXJhdGVkIGJ5IHRoZSBEYXRhdmVyc2UuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIHdhaXZlciBoYXMgYmVlbiBzZWxlY3RlZCBmb3IgdGhpcyBkYXRhc2V0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zVXNlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJPdXRsaW5lcyBob3cgdGhpcyBkYXRhIGNhbiBiZSB1c2VkIG9uY2UgZG93bmxvYWRlZC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+TGljZW5zZWQgZWxlY3Ryb25pYyByZXNvdXJjZXMgYXJlIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIFVuZGVyIEhhcnZhcmQncyBsaWNlbnNlcyBmb3IgZWxlY3Ryb25pYyByZXNvdXJjZXMsIHVzZXJzIGdlbmVyYWxseSBtYXkgbm90OiBwZXJtaXQgYW55b25lIG90aGVyIHRoYW4gYXV0aG9yaXplZCB1c2VycyB0byB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgbW9kaWZ5IG9yIGNyZWF0ZSBhIGRlcml2YXRpdmUgd29yayBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIHdpdGhvdXQgdGhlIHBlcm1pc3Npb24gb2YgdGhlIGxpY2Vuc29yOyByZW1vdmUsIG9ic2N1cmUgb3IgbW9kaWZ5IGFueSBjb3B5cmlnaHQgb3Igb3RoZXIgbm90aWNlcyBpbmNsdWRlZCBpbiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB0aGUgc2FsZSBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzLiBVc2VycyBhcmUgaW5kaXZpZHVhbGx5IHJlc3BvbnNpYmxlIGZvciBjb21wbGlhbmNlIHdpdGggdGhlc2UgdGVybXMuCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEFkZGl0aW9uYWwgSW5mb3JtYXRpb24KICAgICAgICAgICAgICAgICAgICAgICAmbHQ7dWk6ZnJhZ21lbnQgcmVuZGVyZWQ9IiMgeyFlbXB0eSBlZGl0TW9kZSBvciBlbXB0eSBlZGl0TW9kZSBhbmQgKCFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLmNvbmZpZGVudGlhbGl0eURlY2xhcmF0aW9uIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLnNwZWNpYWxQZXJtaXNzaW9ucyBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5yZXN0cmljdGlvbnMgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuY2l0YXRpb25SZXF1aXJlbWVudHMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuZGVwb3NpdG9yUmVxdWlyZW1lbnRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuY29uZGl0aW9ucyBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5kaXNjbGFpbWVyKX0iJmd0OyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICA8IS0tICZsdDsvdWk6ZnJhZ21lbnQmZ3Q7CiAgICAgICAgICAgICAgICAgICAgICAgRU5EOiBBZGRpdGlvbmFsIEluZm9ybWF0aW9uIC0tPgogICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICA8ZGl2IGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNwYW5lbENvbGxhcHNlVE9BIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPlJlc3RyaWN0ZWQgRmlsZXMgKyBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgwqA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1jaGV2cm9uLXVwIj48L3NwYW4+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGRpdiBpZD0icGFuZWxDb2xsYXBzZVRPQSIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Jlc3RyaWN0ZWRGaWxlcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIG51bWJlciBvZiByZXN0cmljdGVkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc3RyaWN0ZWQgRmlsZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlcmUgYXJlIDUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtc0FjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iSW5mb3JtYXRpb24gb24gaG93IGFuZCBpZiB1c2VycyBjYW4gZ2FpbiBhY2Nlc3MgdG8gdGhlIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1JlcXVlc3RBY2Nlc3MiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IklmIGNoZWNrZWQsIHVzZXJzIGNhbiByZXF1ZXN0IGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXF1ZXN0IEFjY2VzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5Vc2VycyBtYXkgbm90IHJlcXVlc3QgYWNjZXNzIHRvIGZpbGVzLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICA8IS0tIEFkZGl0aW9uYWwgSW5mb3JtYXRpb24KICAgICAgICAgICAgICAgICAgICZsdDt1aTpmcmFnbWVudCByZW5kZXJlZD0iIyB7IWVtcHR5IGVkaXRNb2RlIG9yIGVtcHR5IGVkaXRNb2RlIGFuZCAoIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuZGF0YUFjY2Vzc1BsYWNlIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3Mub3JpZ2luYWxBcmNoaXZlIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLmF2YWlsYWJpbGl0eVN0YXR1cyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLmNvbnRhY3RGb3JBY2Nlc3Mgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3Muc2l6ZU9mQ29sbGVjdGlvbiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLnN0dWR5Q29tcGxldGlvbil9IiZndDsgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICA8IS0tICZsdDsvdWk6ZnJhZ21lbnQmZ3Q7CiAgICAgICAgICAgICAgICAgICBFTkQ6IEFkZGl0aW9uYWwgSW5mb3JtYXRpb24gLS0+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2VHdWVzdGJvb2siIGNsYXNzPSJwYW5lbC1oZWFkaW5nIHRleHQtaW5mbyI+CiAgICAgICAgICAgICAgIEd1ZXN0Ym9vayDCoDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWNoZXZyb24tdXAiPjwvc3Bhbj4KICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlR3Vlc3Rib29rIiBjbGFzcz0iY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5Ij4KICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX0d1ZXN0Ym9vayIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJVc2VyIGluZm9ybWF0aW9uIChpLmUuLCBuYW1lLCBlbWFpbCwgaW5zdGl0dXRpb24sIGFuZCBwb3NpdGlvbikgd2lsbCBiZSBjb2xsZWN0ZWQgd2hlbiBmaWxlcyBhcmUgZG93bmxvYWRlZC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3Vlc3Rib29rCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5ObyBndWVzdGJvb2sgaXMgYXNzaWduZWQgdG8gdGhpcyBkYXRhc2V0LCB5b3Ugd2lsbCBub3QgYmUgcHJvbXB0ZWQgdG8gcHJvdmlkZSBhbnkgaW5mb3JtYXRpb24gb24gZmlsZSBkb3dubG9hZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPC9kaXY+PC9kaXY+IAogICAgPC9kaXY+CiAgICA8IS0tIC8gVEVSTVMgLS0+CgogICAgPCEtLSBQcmV2aWV3IEd1ZXN0Ym9vayAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2siIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgbGFyZ2VQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2tfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlByZXZpZXcgR3Vlc3Rib29rPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPgogICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICBVcG9uIGRvd25sb2FkaW5nIGZpbGVzIHRoZSBndWVzdGJvb2sgYXNrcyBmb3IgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbi4KICAgICAgICAgICAgPC9wPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgR3Vlc3Rib29rIE5hbWUKICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImZvcm0tY29udHJvbC1zdGF0aWMiPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJVc2VyIGRhdGEgY29sbGVjdGVkIGJ5IHRoZSBndWVzdGJvb2suIj4KICAgICAgICAgICAgICAgICAgICAgICBDb2xsZWN0ZWQgRGF0YQogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImZvcm0tY29udHJvbC1zdGF0aWMiPkFjY291bnQgSW5mb3JtYXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iUEYoJ3ZpZXdHdWVzdGJvb2snKS5oaWRlKCkiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHZhbHVlPSJDbG9zZSI+CiAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2tfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwidmlld0d1ZXN0Ym9vayIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OnByZXZpZXdHdWVzdGJvb2siLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD4KICAgIDwhLS0gLyBQcmV2aWV3IEd1ZXN0Ym9vayAtLT48L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFiIiBjbGFzcz0idWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIHVpLWhlbHBlci1oaWRkZW4iIHJvbGU9InRhYnBhbmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CjwhLS0gVkVSU0lPTlMgLS0+CiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgIC8qIFZlcnNpb24gdGFiOiBSZXRyaWV2ZSBkYXRhIGFmdGVyIHBhZ2UgbG9hZCAqLwogICAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgcHJlbG9hZF9tZXNzYWdlID0gIihMb2FkaW5nIHZlcnNpb25zLi4uKSI7CiAgICAgICAgICAgICQoJyNkYXRhc2V0Rm9ybVxcOnRhYlZpZXdcXDp2ZXJzaW9uc1RhYmxlX2RhdGEgdHIudWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UgdGQnKS50ZXh0KHByZWxvYWRfbWVzc2FnZSk7CiAgICAgICAgICAgIHBvc3RMb2FkVmVyc2lvblRhYkxpc3QoKTsKICAgICAgIH0pOwogICA8L3NjcmlwdD4KICAgPCEtLSBSZXRyaWV2ZSB2ZXJzaW9uIGRpZmZlcmVuY2VzIGFmdGVyIHRoZSBwYWdlIGxvYWQgLS0+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBvc3RMb2FkVmVyc2lvblRhYkxpc3QgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmpfaWR0MTI3NSIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXc6al9pZHQxMjc1Iix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGUiLHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD4KICAgIDxkaXYgY2xhc3M9InRleHQtcmlnaHQgbWFyZ2luLWJvdHRvbSI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9ucyZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignZGV0YWlsc0Jsb2NrcycpLnNob3coKTtwb3N0X2RpZmZlcmVuY2VzKCk7O319KTtyZXR1cm4gZmFsc2U7IiBzdHlsZT0iZGlzcGxheTpub25lIiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5EaXJlY3Q8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX3RhYlZpZXdfY29tcGFyZVZlcnNpb25zIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zIn0pOzwvc2NyaXB0PgogICAgPC9kaXY+PGRpdiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlIiBjbGFzcz0idWktZGF0YXRhYmxlIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktZGF0YXRhYmxlLXRhYmxld3JhcHBlciI+PHRhYmxlIHJvbGU9ImdyaWQiPjx0aGVhZCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlX2hlYWQiPjx0ciByb2xlPSJyb3ciPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlOmpfaWR0MTI4MyIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgY29sLXNtLTEgdGV4dC1jZW50ZXIiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+RGF0YXNldDwvc3Bhbj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlOmpfaWR0MTI5NiIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+U3VtbWFyeTwvc3Bhbj48L3RoPjx0aCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlOmpfaWR0MTMzOSIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgY29sLXNtLTMiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+Q29udHJpYnV0b3JzPC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMzQzIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMiIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5QdWJsaXNoZWQ8L3NwYW4+PC90aD48L3RyPjwvdGhlYWQ+PHRib2R5IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGVfZGF0YSIgY2xhc3M9InVpLWRhdGF0YWJsZS1kYXRhIHVpLXdpZGdldC1jb250ZW50Ij48dHIgY2xhc3M9InVpLXdpZGdldC1jb250ZW50IHVpLWRhdGF0YWJsZS1lbXB0eS1tZXNzYWdlIj48dGQgY29sc3Bhbj0iNCI+Tm8gcmVjb3JkcyBmb3VuZC48L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEYXRhVGFibGUiLCJ2ZXJzaW9uc1RhYmxlIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZSJ9KTt9KTs8L3NjcmlwdD4KPCEtLSAvIFZFUlNJT05TIC0tPjwvZGl2PjwvZGl2PjxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3X2FjdGl2ZUluZGV4IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3X2FjdGl2ZUluZGV4IiB2YWx1ZT0iMCIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlld19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIlRhYlZpZXciLCJjb250ZW50Iix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXciLGVmZmVjdER1cmF0aW9uOiJub3JtYWwiLHNjcm9sbGFibGU6ZmFsc2UsYmVoYXZpb3JzOnt0YWJDaGFuZ2U6ZnVuY3Rpb24oZXh0LGV2ZW50KSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06dGFiVmlldyIsZToidGFiQ2hhbmdlIixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3Iix1OiJkYXRhc2V0Rm9ybTp0YWJWaWV3IixvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7YmluZF9ic3VpX2NvbXBvbmVudHMoKTs7fX0sZXh0KTt9fX0pOzwvc2NyaXB0PjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EIFZpZXcvVGFicyBpbmZvTW9kZSAtLT4KCiAgICAgICAgICAgICAgICAgICAgPCEtLSBDcmVhdGUgTWV0YWRhdGEgVGlwIC0tPgoKICAgICAgICAgICAgICAgICAgICA8IS0tIENyZWF0ZS9TYXZlIERhdGFzZXQgQnV0dG9uIFBhbmVsIC0tPgogICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBDcmVhdGUvU2F2ZSBEYXRhc2V0IEJ1dHRvbiBQYW5lbCAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTQiIGNsYXNzPSJ1aS1ibG9ja3VpLWNvbnRlbnQgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktaGVscGVyLWhpZGRlbiB1aS1zaGFkb3ciPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM1NF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJCbG9ja1VJIiwiYmxvY2tEYXRhc2V0Rm9ybSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNTQiLGJsb2NrOiJkYXRhc2V0Rm9ybSJ9KTt9KTs8L3NjcmlwdD4KCiAgICAgICAgICAgICAgICAgICAgPCEtLSBQb3B1cHMgLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzU2IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzU2X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXN0cmljdGVkIEZpbGVzIFNlbGVjdGVkPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFRoZSByZXN0cmljdGVkIGZpbGUocykgc2VsZWN0ZWQgbWF5IG5vdCBiZSBkb3dubG9hZGVkIGJlY2F1c2UgeW91IGhhdmUgbm90IGJlZW4gZ3JhbnRlZCBhY2Nlc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM2MSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzYxIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2Rvd25sb2FkSW52YWxpZCcpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzYxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzNjEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzYxIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZG93bmxvYWRJbnZhbGlkIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM1NiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM2MyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM2M190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVzdHJpY3RlZCBGaWxlcyBTZWxlY3RlZDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBUaGUgcmVzdHJpY3RlZCBmaWxlKHMpIHNlbGVjdGVkIG1heSBub3QgYmUgZG93bmxvYWRlZCBiZWNhdXNlIHlvdSBoYXZlIG5vdCBiZWVuIGdyYW50ZWQgYWNjZXNzLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBDbGljayBDb250aW51ZSB0byBkb3dubG9hZCB0aGUgZmlsZXMgeW91IGhhdmUgYWNjZXNzIHRvIGRvd25sb2FkLjwvcD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzEiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTM3MSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkb3dubG9hZE1peGVkJykuaGlkZSgpO1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxMzcxJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm0mcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM3MSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNzEifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzcyIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzIiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZG93bmxvYWRNaXhlZCcpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzcyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzNzIiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzcyIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNjNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZG93bmxvYWRNaXhlZCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNjMiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzQiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRlbGV0ZSBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBkYXRhc2V0PyBZb3UgY2Fubm90IHVuZGVsZXRlIHRoaXMgZGF0YXNldC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc2IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzYiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlQ29uZmlybWF0aW9uJykuaGlkZSgpO1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxMzc2JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzNzYiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzc2In0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3NyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzc3IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZUNvbmZpcm1hdGlvbicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzNzciLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzc3In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVsZXRlQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM3NCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3OSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3OV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVsZXRlIERyYWZ0IFZlcnNpb248L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGRyYWZ0IHZlcnNpb24/IFlvdSBjYW5ub3QgdW5kZWxldGUgdGhpcyBkcmFmdC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzgxIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzODEiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlVmVyc2lvbkNvbmZpcm1hdGlvbicpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTM4MSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM4MV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMzgxIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM4MSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzODIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTM4MiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzODJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM4MiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzODIifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3OV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM3OSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnByaXZhdGVVcmxJZF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VW5wdWJsaXNoZWQgRGF0YXNldCBQcml2YXRlIFVSTDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PGRpdiBpZD0iZGF0YXNldEZvcm06cHJpdmF0ZVVybFBhbmVsQ2Fubm90Q3JlYXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQcml2YXRlIFVSTCBjYW4gb25seSBiZSB1c2VkIHdpdGggdW5wdWJsaXNoZWQgdmVyc2lvbnMgb2YgZGF0YXNldHMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDEiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQwMSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRigncHJpdmF0ZVVybENvbmZpcm1hdGlvbicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDAxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0MDEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDAxIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cHJpdmF0ZVVybElkX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInByaXZhdGVVcmxDb25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06cHJpdmF0ZVVybElkIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDAzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDAzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5VbnB1Ymxpc2hlZCBEYXRhc2V0IFByaXZhdGUgVVJMPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkaXNhYmxlIHRoZSBQcml2YXRlIFVSTD8gSWYgeW91IGhhdmUgc2hhcmVkIHRoZSBQcml2YXRlIFVSTCB3aXRoIG90aGVycyB0aGV5IHdpbGwgbm8gbG9uZ2VyIGJlIGFibGUgdG8gdXNlIGl0IHRvIGFjY2VzcyB5b3VyIHVucHVibGlzaGVkIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwNSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDA1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbicpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE0MDUmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybTpwcml2YXRlVXJsUGFuZWwgbWVzc2FnZVBhbmVsJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+WWVzLCBEaXNhYmxlIFByaXZhdGUgVVJMPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwNV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDA1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQwNSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQwNiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGlzYWJsZVByaXZhdGVVcmxDb25maXJtYXRpb24nKS5oaWRlKCk7UEYoJ3ByaXZhdGVVcmxDb25maXJtYXRpb24nKS5zaG93KCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwNl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDA2Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQwNiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDAzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRpc2FibGVQcml2YXRlVXJsQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQwMyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwOCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwOF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVsZXRlIEZpbGVzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IFRoZSBmaWxlKHMpIHdpbGwgYmUgZGVsZXRlZCBhZnRlciB5b3UgY2xpY2sgb24gdGhlIERlbGV0ZSBidXR0b24uPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEZpbGVzIHdpbGwgbm90IGJlIHJlbW92ZWQgZnJvbSBwcmV2aW91c2x5IHB1Ymxpc2hlZCB2ZXJzaW9ucyBvZiB0aGUgZGF0YXNldC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDEzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlU2VsZWN0ZWRGaWxlQ29uZmlybWF0aW9uJykuaGlkZSgpO1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNDEzJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+RGVsZXRlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxM19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDEzIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQxMyJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQxNCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVTZWxlY3RlZEZpbGVDb25maXJtYXRpb24nKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTQxNCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE0MTQifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwOF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWxldGVTZWxlY3RlZEZpbGVDb25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDA4Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDE2IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDE2X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EYXRhc2V0IENvbXB1dGUgTm90IFN1cHBvcnRlZDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBZb3UgY2Fubm90IGNvbXB1dGUgb24gdGhpcyBkYXRhc2V0IGJlY2F1c2UgdGhpcyBmdW5jdGlvbmFsaXR5IGlzIG5vdCBlbmFibGVkIHlldC4gUGxlYXNlIGNsaWNrIG9uIGEgZmlsZSB0byBhY2Nlc3MgY29tcHV0aW5nIGZlYXR1cmVzLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTgiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQxOCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkYXRhc2V0Q29tcHV0ZUFjY2Vzc0RlbmllZFBvcHVwJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MThfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTQxOCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE0MTgifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxNl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkYXRhc2V0Q29tcHV0ZUFjY2Vzc0RlbmllZFBvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQxNiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQmxvY2siIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25CbG9ja190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVhY2Nlc3Npb24gRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBPbmNlIHlvdSBkZWFjY2Vzc2lvbiB0aGlzIGRhdGFzZXQgaXQgd2lsbCBubyBsb25nZXIgYmUgdmlld2FibGUgYnkgdGhlIHB1YmxpYy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0icmVhc29uT3B0aW9ucyI+V2hhdCBpcyB0aGUgcmVhc29uIGZvciBkZWFjY2Vzc2lvbj8gPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tYXN0ZXJpc2sgdGV4dC1kYW5nZXIiIHRpdGxlPSJSZXF1aXJlZCBmaWVsZCI+PC9zcGFuPjwvbGFiZWw+PHNlbGVjdCBpZD0iZGF0YXNldEZvcm06cmVhc29uT3B0aW9ucyIgbmFtZT0iZGF0YXNldEZvcm06cmVhc29uT3B0aW9ucyIgY2xhc3M9ImZvcm0tY29udHJvbCIgc2l6ZT0iMSI+CTxvcHRpb24gdmFsdWU9IjAiIHNlbGVjdGVkPSJzZWxlY3RlZCI+U2VsZWN0Li4uPC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSIxIj5UaGVyZSBpcyBpZGVudGlmaWFibGUgZGF0YSBpbiBvbmUgb3IgbW9yZSBmaWxlczwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iMiI+VGhlIHJlc2VhcmNoIGFydGljbGUgaGFzIGJlZW4gcmV0cmFjdGVkPC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSIzIj5UaGUgZGF0YXNldCBoYXMgYmVlbiB0cmFuc2ZlcnJlZCB0byBhbm90aGVyIHJlcG9zaXRvcnk8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjQiPklSQiByZXF1ZXN0PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSI1Ij5MZWdhbCBpc3N1ZSBvciBEYXRhIFVzYWdlIEFncmVlbWVudDwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iNiI+Tm90IGEgdmFsaWQgZGF0YXNldDwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iNyI+T3RoZXIgKFBsZWFzZSB0eXBlIHJlYXNvbiBpbiBzcGFjZSBwcm92aWRlZCBiZWxvdyk8L29wdGlvbj4KPC9zZWxlY3Q+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9InJlYXNvbkZvckRlYWNjZXNzaW9uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2UgZW50ZXIgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcmVhc29uIGZvciBkZWFjY2Vzc2lvbi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+PHRleHRhcmVhIGlkPSJkYXRhc2V0Rm9ybTpyZWFzb25Gb3JEZWFjY2Vzc2lvbiIgbmFtZT0iZGF0YXNldEZvcm06cmVhc29uRm9yRGVhY2Nlc3Npb24iIGNvbHM9IjQwIiByb3dzPSIyIiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIG9ua2V5dXA9InVwZGF0ZUhpZGRlblJlYXNvbih0aGlzKTsiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPjwvdGV4dGFyZWE+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cmVhc29uRm9yRGVhY2Nlc3Npb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0YXJlYSIsInJlYXNvbkZvckRlYWNjZXNzaW9uIix7aWQ6ImRhdGFzZXRGb3JtOnJlYXNvbkZvckRlYWNjZXNzaW9uIixhdXRvUmVzaXplOmZhbHNlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDM2IiBhcmlhLWxpdmU9InBvbGl0ZSIgY2xhc3M9InVpLW1lc3NhZ2UiPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIGFwcGxpY2FibGUsIHBsZWFzZSBsZWF2ZSBhIFVSTCB3aGVyZSB0aGlzIGRhdGFzZXQgY2FuIGJlIGFjY2Vzc2VkIGFmdGVyIGRlYWNjZXNzaW9uaW5nLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOmZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiIgbmFtZT0iZGF0YXNldEZvcm06Zm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiIC8+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06Zm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0IiwiZm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIix7aWQ6ImRhdGFzZXRGb3JtOmZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiJ9KTs8L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp3YXRlcm1hcmtfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiV2F0ZXJtYXJrIiwid2lkZ2V0X2RhdGFzZXRGb3JtX3dhdGVybWFyayIse2lkOiJkYXRhc2V0Rm9ybTp3YXRlcm1hcmsiLHZhbHVlOiJPcHRpb25hbCBkYXRhc2V0IHNpdGUsIGh0dHA6XC9cLy4uLiIsdGFyZ2V0OiJkYXRhc2V0Rm9ybTpmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24ifSwid2F0ZXJtYXJrIik7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NDEiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGVhY2Nlc3Npb25CbG9jaycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE0NDEmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJidXR0b24iPkNhbmNlbDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25CbG9ja19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWFjY2Vzc2lvbkJsb2NrIix7aWQ6ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQmxvY2siLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbl90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVhY2Nlc3Npb24gRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVhY2Nlc3Npb24/IFRoZSBzZWxlY3RlZCB2ZXJzaW9uKHMpIHdpbGwgbm8gbG9uZ2VyIGJlIHZpZXdhYmxlIGJ5IHRoZSBwdWJsaWMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQ0NCIgdmFsdWU9IlllcyIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVhY2Nlc3Npb25CbG9jaycpLmhpZGUoKSIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iTm8iIG9uY2xpY2s9IlBGKCdkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbicpLmhpZGUoKSI+Tm88L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25Db25maXJtYXRpb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGVhY2Nlc3Npb25Db25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25Db25maXJtYXRpb24iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbiIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbl90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVhY2Nlc3Npb24gRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVhY2Nlc3Npb24gdGhpcyBkYXRhc2V0PyBJdCB3aWxsIG5vIGxvbmdlciBiZSB2aWV3YWJsZSBieSB0aGUgcHVibGljLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NDciIHZhbHVlPSJZZXMiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbicpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RlYWNjZXNzaW9uQmxvY2snKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iTm8iIG9uY2xpY2s9IlBGKCdkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbicpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7Ij5ObzwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uVmVyc2lvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwic2VsZWN0RGVhY2Nlc3Npb25WZXJzaW9uIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uVmVyc2lvbiJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblZlcnNpb24iIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QbGVhc2UgU2VsZWN0IFZlcnNpb24ocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+UGxlYXNlIHNlbGVjdCB2ZXJzaW9uKHMpIGZvciBkZWFjY2Vzc2lvbmluZy48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uUmVhc29uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJzZWxlY3REZWFjY2Vzc2lvblJlYXNvbiIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblJlYXNvbiJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3REZWFjY2Vzc2lvblJlYXNvbiIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlBsZWFzZSBTZWxlY3QgUmVhc29uPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlBsZWFzZSBzZWxlY3QgcmVhc29uIGZvciBkZWFjY2Vzc2lvbmluZy48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmVudGVyRm9yd2FyZFVybF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwiZW50ZXJGb3J3YXJkVXJsIix7aWQ6ImRhdGFzZXRGb3JtOmVudGVyRm9yd2FyZFVybCJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTplbnRlckZvcndhcmRVcmwiIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5JbnZhbGlkIFVSTDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5QbGVhc2UgZW50ZXIgdmFsaWQgZm9yd2FyZGluZyBVUkwuPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTplbnRlck90aGVyUmVhc29uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJlbnRlck90aGVyUmVhc29uIix7aWQ6ImRhdGFzZXRGb3JtOmVudGVyT3RoZXJSZWFzb24ifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZW50ZXJPdGhlclJlYXNvbiIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkVudGVyIGFkZGl0aW9uYWwgaW5mb3JtYXRpb248L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+UGxlYXNlIGVudGVyIHRleHQgZm9yIHJlYXNvbiBmb3IgZGVhY2Nlc3Npb25pbmcuPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWFzb25Ub29NYW55Q2hhcmFjdGVyc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJDb25maXJtRGlhbG9nIiwicmVhc29uVG9vTWFueUNoYXJhY3RlcnMiLHtpZDoiZGF0YXNldEZvcm06cmVhc29uVG9vTWFueUNoYXJhY3RlcnMifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cmVhc29uVG9vTWFueUNoYXJhY3RlcnMiIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZyB1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5MaW1pdCAxMDAwIGNoYXJhY3RlcnM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+VGV4dCBmb3IgcmVhc29uIGZvciBkZWFjY2Vzc2lvbmluZyBtYXkgYmUgbm8gbG9uZ2VyIHRoYW4gMTAwMCBjaGFyYWN0ZXJzLjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpoaWRkZW5SZWFzb25JbnB1dCIgbmFtZT0iZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXQiIHR5cGU9InRleHQiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIiAvPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmhpZGRlblJlYXNvbklucHV0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0IiwiaGlkZGVuUmVhc29uSW5wdXQiLHtpZDoiZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXQifSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06Y29tcGFyZVR3byIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5WZXJzaW9uIERpZmZlcmVuY2VzIERldGFpbHM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIHRleHQtZGFuZ2VyIj48L3NwYW4+IDxzcGFuIGNsYXNzPSJ0ZXh0LWRhbmdlciI+UGxlYXNlIHNlbGVjdCB0d28gdmVyc2lvbnMgdG8gdmlldyB0aGUgZGlmZmVyZW5jZXMuPC9zcGFuPjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0NTAiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQ1MCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdjb21wYXJlVHdvJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQ1MF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDUwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQ1MCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06Y29tcGFyZVR3b19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJjb21wYXJlVHdvIix7aWQ6ImRhdGFzZXRGb3JtOmNvbXBhcmVUd28iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIGxhcmdlUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZGV0YWlsc0Jsb2Nrc190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VmVyc2lvbiBEaWZmZXJlbmNlcyBEZXRhaWxzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0idmVyc2lvbi10aXRsZSIgY2xhc3M9Im1hcmdpbi1ib3R0b20taGFsZiI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9InZlcnNpb24tZGV0YWlscy1ibG9jayIgY2xhc3M9IiBjbGVhcmZpeCBtYXJnaW4tYm90dG9tLWhhbGYiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHVsbC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCoAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb246IDxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExhc3QgVXBkYXRlZDogCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InB1bGwtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbjogPGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGFzdCBVcGRhdGVkOiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIG1hcmdpbi1ib3R0b20iPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUyNyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTI3IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RldGFpbHNCbG9ja3MnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+RG9uZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MjdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTUyNyIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1MjcifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGV0YWlsc0Jsb2NrcyIse2lkOiJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWRfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGRvd25sb2FkZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzMCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTMwIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yRG93bmxvYWQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNTMwJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNTMwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE1MzAiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNTMwIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRvd25sb2FkX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yRG93bmxvYWQiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2VzcyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2Vzc190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCBhIGZpbGUgb3IgZmlsZXMgZm9yIGFjY2VzcyByZXF1ZXN0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzMiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTUzMyIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUzMyZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzM19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTMzIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUzMyJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2VzcyIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3MiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRlbGV0ZSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRGVsZXRlX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBkZWxldGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTUzNiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvckRlbGV0ZScpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1MzYmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTUzNiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1MzYifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRGVsZXRlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yRGVsZXRlIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRGVsZXRlIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXN0cmljdCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVzdHJpY3RfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgdW5yZXN0cmljdGVkIGZpbGUocykgdG8gYmUgcmVzdHJpY3RlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTM5IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzkiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JSZXN0cmljdCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1MzkmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTUzOSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1MzkifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVzdHJpY3RfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JSZXN0cmljdCIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IHJlc3RyaWN0ZWQgZmlsZShzKSB0byBiZSB1bnJlc3RyaWN0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTU0MiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTQyIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1NDImcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTU0MiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1NDIifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3QiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCBhIGZpbGUgb3IgZmlsZXMgdG8gYmUgZWRpdGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDUiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTU0NSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YScpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1NDUmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTU0NSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1NDUifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0VGFncyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdFRhZ3NfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGVkaXRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTQ4IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDgiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JFZGl0VGFncycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1NDgmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDhfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTU0OCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1NDgifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdFRhZ3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JFZGl0VGFncyIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJlZnJlc2hUYWdzQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0MTU1MCIsZjoiZGF0YXNldEZvcm0iLHU6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiLG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRignZmlsZVRhZ3NQb3B1cCcpLnNob3coKTs7fSxwYTphcmd1bWVudHNbMF19KTt9PC9zY3JpcHQ+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gV2Ugbm8gbG9uZ2VyIG5lZWQgdGhpcyByZW1vdGVDb21tYW5kOyBzZWUgbXkgY29tbWVudHMgaW4gdGhlIGphdmFzY3JpcHQgbWV0aG9kIHRlc3RGaWxlc1NlbGVjdGVkRm9yRWRpdE1ldGFkYXRhKCkgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBmb3IgbW9yZSBpbmZvLiAtIEwuQS4gNC4yLjEgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBwOnJlbW90ZUNvbW1hbmQgIG5hbWU9Im9wZW5FZGl0RmlsZXNQYWdlQ29tbWFuZCIgYWN0aW9uPSIge0RhdGFzZXRQYWdlLmVkaXRGaWxlTWV0YWRhdGEoKX0iICAvIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5FZGl0IFRhZ3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFNlbGVjdCBleGlzdGluZyBmaWxlIHRhZ3Mgb3IgY3JlYXRlIG5ldyB0YWdzIHRvIGRlc2NyaWJlIHlvdXIgZmlsZXMuIEVhY2ggZmlsZSBjYW4gaGF2ZSBtb3JlIHRoYW4gb25lIHRhZy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24iIG5hbWU9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24mcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUgZGF0YXNldEZvcm0mcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdmaWxlVGFnc1BvcHVwJykuaGlkZSgpO319KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5TYXZlIENoYW5nZXM8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2ZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBTYXZlQnV0dG9uIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iIG5hbWU9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2ZpbGVUYWdzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9maWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24ifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZmlsZVRhZ3NQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+VXBsb2FkIEZpbGVzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBSU1lOQyBVUExPQUQgUE9QVVAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIHRleHQtZGFuZ2VyIj48L3NwYW4+PHNwYW4gY2xhc3M9InRleHQtZGFuZ2VyIj4gWW91IGNhbiBub3QgdXBsb2FkIGFkZGl0aW9uYWwgZmlsZXMgdG8gdGhpcyBkYXRhc2V0Ljwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MDQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTYwNCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdyc3luY1VwbG9hZF9wb3B1cCcpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE2MDQmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSBtZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MDRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTYwNCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2MDQifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORCBSU1lOQyBVUExPQUQgUE9QVVAgLS0+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicnN5bmNVcGxvYWRfcG9wdXAiLHtpZDoiZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXAiLG1vZGFsOnRydWUsYmVoYXZpb3JzOntjbG9zZTpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cCIsZToiY2xvc2UiLHA6ImRhdGFzZXRGb3JtOnJzeW5jVXBsb2FkSW5mb1BvcHVwIix1OiJkYXRhc2V0Rm9ybSBtZXNzYWdlUGFuZWwifSxleHQpO319fSk7fSk7PC9zY3JpcHQ+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gUmVxdWVzdCBBY2Nlc3MgU2lnbiBVcC9Mb2cgSW4gQnV0dG9uIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYwNyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MDdfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlcXVlc3QgQWNjZXNzPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIHRleHQtZGFuZ2VyIj48L3NwYW4+wqAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LWRhbmdlciI+WW91IG5lZWQgdG8gPGEgaHJlZj0iL2RhdGF2ZXJzZXVzZXIueGh0bWw/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzJmFtcDtlZGl0TW9kZT1DUkVBVEUiIHRhcmdldD0iX3NlbGYiIHRpdGxlPSJTaWduIFVwIGZvciBhIERhdGF2ZXJzZSBBY2NvdW50Ij5TaWduIFVwPC9hPiBvciA8YSBocmVmPSIvbG9naW5wYWdlLnhodG1sP3JlZGlyZWN0UGFnZT0lMkZkYXRhc2V0LnhodG1sJTNGcGVyc2lzdGVudElkJTNEZG9pJTNBMTAuNzkxMCUyRkRWTiUyRkdBT0MwMyIgdGFyZ2V0PSJfc2VsZiIgdGl0bGU9IkxvZyBpbnRvIHlvdXIgRGF0YXZlcnNlIEFjY291bnQiPkxvZyBJbjwvYT4gdG8gcmVxdWVzdCBhY2Nlc3MgdG8gdGhpcyBmaWxlLjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYxMyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjEzIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2FjY2Vzc1NpZ25VcExvZ0luX3BvcHVwJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE2MTMmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MTNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTYxMyIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2MTMifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYwN19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJhY2Nlc3NTaWduVXBMb2dJbl9wb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE2MDciLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogUmVxdWVzdCBBY2Nlc3MgU2lnbiBVcC9Mb2cgSW4gQnV0dG9uIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgbGFyZ2VQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5Eb3dubG9hZCBGaWxlPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBQbGVhc2UgY29uZmlybSBhbmQvb3IgY29tcGxldGUgdGhlIGluZm9ybWF0aW9uIG5lZWRlZCBiZWxvdyBpbiBvcmRlciB0byBkb3dubG9hZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuCiAgICAgICAgPC9wPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmd1ZXN0Ym9va01lc3NhZ2VzIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIG1lc3NhZ2VQYW5lbCI+CiAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiIGZvcj0iZ3Vlc3Rib29rX3RvdSI+CiAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgVXNlCiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHJlYWQtdGVybXMiPkxpY2Vuc2VkIGVsZWN0cm9uaWMgcmVzb3VyY2VzIGFyZSByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBVbmRlciBIYXJ2YXJkJ3MgbGljZW5zZXMgZm9yIGVsZWN0cm9uaWMgcmVzb3VyY2VzLCB1c2VycyBnZW5lcmFsbHkgbWF5IG5vdDogcGVybWl0IGFueW9uZSBvdGhlciB0aGFuIGF1dGhvcml6ZWQgdXNlcnMgdG8gdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IG1vZGlmeSBvciBjcmVhdGUgYSBkZXJpdmF0aXZlIHdvcmsgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyB3aXRob3V0IHRoZSBwZXJtaXNzaW9uIG9mIHRoZSBsaWNlbnNvcjsgcmVtb3ZlLCBvYnNjdXJlIG9yIG1vZGlmeSBhbnkgY29weXJpZ2h0IG9yIG90aGVyIG5vdGljZXMgaW5jbHVkZWQgaW4gdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gdGhlIHNhbGUgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscy4gVXNlcnMgYXJlIGluZGl2aWR1YWxseSByZXNwb25zaWJsZSBmb3IgY29tcGxpYW5jZSB3aXRoIHRoZXNlIHRlcm1zLgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIiBmb3I9Imd1ZXN0Ym9va190b2EiPgogICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIEFjY2VzcwogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSByZWFkLXRlcm1zIj5UaGlzIGRhdGFzZXQgaXMgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gSGFydmFyZCBhZmZpbGlhdGVzIG1heSBhY2Nlc3MgdGhlIGRhdGEgYnkgbG9nZ2luZyBpbnRvIHRoaXMgc3lzdGVtIHZpYSB0aGUgaW5zdGl0dXRpb25hbCBsb2dpbiBhbmQgc2VsZWN0aW5nIEhhcnZhcmQgVW5pdmVyc2l0eS4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE2OTAiIGhyZWY9IiMiIGNsYXNzPSJ1aS1jb21tYW5kbGluayB1aS13aWRnZXQgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTY5MCZxdW90OyxwOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTY5MCZxdW90Oyx1OiZxdW90O0AoW2lkJD1NZXNzYWdlc10pJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtpZiAoYXJncyAmYW1wOyZhbXA7ICFhcmdzLnZhbGlkYXRpb25GYWlsZWQpIFBGKCdkb3dubG9hZFBvcHVwJykuaGlkZSgpOzt9LHBhOlt7bmFtZTomcXVvdDtET19HQl9WQUxJREFUSU9OJnF1b3Q7LHZhbHVlOiZxdW90O3RydWUmcXVvdDt9XX0pO3JldHVybiBmYWxzZTsiIHR5cGU9ImJ1dHRvbiI+QWNjZXB0PC9hPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2Rvd25sb2FkUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB2YWx1ZT0iQ2FuY2VsIj5DYW5jZWw8L2J1dHRvbj4KICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRvd25sb2FkUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06ZG93bmxvYWRQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NQb3B1cF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVxdWVzdCBBY2Nlc3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFBsZWFzZSBjb25maXJtIGFuZC9vciBjb21wbGV0ZSB0aGUgaW5mb3JtYXRpb24gbmVlZGVkIGJlbG93IGluIG9yZGVyIHRvIHJlcXVlc3QgYWNjZXNzIHRvIGZpbGVzIGluIHRoaXMgZGF0YXNldC4KICAgICAgICA8L3A+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCIgZm9yPSJndWVzdGJvb2tfdG91Ij4KICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBVc2UKICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgcmVhZC10ZXJtcyI+TGljZW5zZWQgZWxlY3Ryb25pYyByZXNvdXJjZXMgYXJlIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIFVuZGVyIEhhcnZhcmQncyBsaWNlbnNlcyBmb3IgZWxlY3Ryb25pYyByZXNvdXJjZXMsIHVzZXJzIGdlbmVyYWxseSBtYXkgbm90OiBwZXJtaXQgYW55b25lIG90aGVyIHRoYW4gYXV0aG9yaXplZCB1c2VycyB0byB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgbW9kaWZ5IG9yIGNyZWF0ZSBhIGRlcml2YXRpdmUgd29yayBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIHdpdGhvdXQgdGhlIHBlcm1pc3Npb24gb2YgdGhlIGxpY2Vuc29yOyByZW1vdmUsIG9ic2N1cmUgb3IgbW9kaWZ5IGFueSBjb3B5cmlnaHQgb3Igb3RoZXIgbm90aWNlcyBpbmNsdWRlZCBpbiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB0aGUgc2FsZSBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzLiBVc2VycyBhcmUgaW5kaXZpZHVhbGx5IHJlc3BvbnNpYmxlIGZvciBjb21wbGlhbmNlIHdpdGggdGhlc2UgdGVybXMuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiIGZvcj0iZ3Vlc3Rib29rX3RvYSI+CiAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHJlYWQtdGVybXMiPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5LgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcxMSIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNzExJnF1b3Q7LHU6JnF1b3Q7QChbaWQkPXJlcXVlc3RBY2Nlc3NQb3B1cEJ1dHRvbl0pJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtQRigncmVxdWVzdEFjY2Vzc1BvcHVwJykuaGlkZSgpOzt9fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0iYnV0dG9uIj4KICAgICAgICAgICAgICAgIEFjY2VwdAogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRigncmVxdWVzdEFjY2Vzc1BvcHVwJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyIgdmFsdWU9IkNhbmNlbCI+Q2FuY2VsPC9idXR0b24+CiAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInJlcXVlc3RBY2Nlc3NQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkRGF0YVN1YnNldFBvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5Eb3dubG9hZCBEYXRhIFN1YnNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWREYXRhU3Vic2V0UG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZG93bmxvYWREYXRhU3Vic2V0UG9wdXAiLHtpZDoiZGF0YXNldEZvcm06ZG93bmxvYWREYXRhU3Vic2V0UG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MTgiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzE4X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EYXRhIE5vdCBQdWJsaXNoZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBJbiBvcmRlciB0byBtYXAgeW91ciBkYXRhIHdpdGggV29ybGRNYXAsIHlvdXIgZGF0YSBtdXN0IGJlIHB1Ymxpc2hlZC4gUGxlYXNlIHB1Ymxpc2ggdGhpcyBkYXRhc2V0LCB0aGVuIHJldHJ5IHRoZSBNYXAgRGF0YSBmZWF0dXJlLjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdtYXBEYXRhX3BvcHVwJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MThfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwibWFwRGF0YV9wb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3MTgiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpsaW5rRGF0YXNldEZvcm0iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06bGlua0RhdGFzZXRGb3JtX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5MaW5rIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdsaW5rRGF0YXNldEZvcm0nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpsaW5rRGF0YXNldEZvcm1fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwibGlua0RhdGFzZXRGb3JtIix7aWQ6ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmFjY2Vzc1BvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmFjY2Vzc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5GaWxlIFJlc3RyaWN0aW9uczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9UZXJtc0FjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iSW5mb3JtYXRpb24gb24gaG93IGFuZCBpZiB1c2VycyBjYW4gZ2FpbiBhY2Nlc3MgdG8gdGhlIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48dGV4dGFyZWEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc0NSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzQ1IiBjb2xzPSIyMCIgcm93cz0iNSIgbWF4bGVuZ3RoPSIyMTQ3NDgzNjQ3IiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHRhcmVhIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIj5UaGlzIGRhdGFzZXQgaXMgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gSGFydmFyZCBhZmZpbGlhdGVzIG1heSBhY2Nlc3MgdGhlIGRhdGEgYnkgbG9nZ2luZyBpbnRvIHRoaXMgc3lzdGVtIHZpYSB0aGUgaW5zdGl0dXRpb25hbCBsb2dpbiBhbmQgc2VsZWN0aW5nIEhhcnZhcmQgVW5pdmVyc2l0eS4NCg0KPC90ZXh0YXJlYT48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NDVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0YXJlYSIsImlucHV0dG9hIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc0NSIsYXV0b1Jlc2l6ZTpmYWxzZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfUmVxdWVzdEFjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iSWYgY2hlY2tlZCwgdXNlcnMgY2FuIHJlcXVlc3QgYWNjZXNzIHRvIHRoZSByZXN0cmljdGVkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlcXVlc3QgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzIiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NfaW5wdXQiIG5hbWU9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NfaW5wdXQiIHR5cGU9ImNoZWNrYm94IiBhdXRvY29tcGxldGU9Im9mZiIgYXJpYS1jaGVja2VkPSJmYWxzZSIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtbGFiZWwiPkVuYWJsZSBhY2Nlc3MgcmVxdWVzdDwvc3Bhbj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiU2VsZWN0Qm9vbGVhbkNoZWNrYm94IiwiaW5wdXRmYXIiLHtpZDoiZGF0YXNldEZvcm06cmVxdWVzdEFjY2VzcyJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzQ5IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NDkiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignYWNjZXNzUG9wdXAnKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3NDkmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSBtZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NDlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc0OSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NDkifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzUyIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTIiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignYWNjZXNzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1Ml9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzUyIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc1MiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmFjY2Vzc1BvcHVwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImFjY2Vzc1BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmFjY2Vzc1BvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06aW5yZXZpZXciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06aW5yZXZpZXdfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlN1Ym1pdCBmb3IgUmV2aWV3PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gWW91IHdpbGwgbm90IGJlIGFibGUgdG8gbWFrZSBjaGFuZ2VzIHRvIHRoaXMgZGF0YXNldCB3aGlsZSBpdCBpcyBpbiByZXZpZXcuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTUiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdpbnJldmlldycpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNzU1JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+U3VibWl0PC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzU1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc1NSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdpbnJldmlldycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzU2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3NTYiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzU2In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTppbnJldmlld19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJpbnJldmlldyIse2lkOiJkYXRhc2V0Rm9ybTppbnJldmlldyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PgoKICAgICAgICAgICAgICAgICAgICA8IS0tIFB1Ymxpc2gvU3VibWl0IGZvciBSZXZpZXcgRGlhbG9ncyAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTkiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzU5X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHVibGlzaCB0aGlzIGRhdGFzZXQ/IE9uY2UgeW91IGRvIHNvIGl0IG11c3QgcmVtYWluIHB1Ymxpc2hlZC4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPjxkaXYgaWQ9InRlcm1zLWFncmVlbWVudC1ibG9jayIgY2xhc3M9IndlbGwiPkJ5IGRlZmF1bHQgZGF0YXNldHMgYXJlIHB1Ymxpc2hlZCB3aXRoIHRoZSBDQzAt4oCcUHVibGljIERvbWFpbiBEZWRpY2F0aW9u4oCdIHdhaXZlci4gTGVhcm4gbW9yZSBhYm91dCB0aGUgQ0MwIHdhaXZlciA8YSB0YXJnZXQ9X2JsYW5rIGhyZWY9J2h0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2Nob29zZS96ZXJvLyc+aGVyZTwvYT4uIDxicj48YnI+IFRvIHB1Ymxpc2ggd2l0aCBjdXN0b20gVGVybXMgb2YgVXNlLCBjbGljayB0aGUgQ2FuY2VsIGJ1dHRvbiBhbmQgZ28gdG8gdGhlIFRlcm1zIHRhYiBmb3IgdGhpcyBkYXRhc2V0LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2NCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzY0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3B1Ymxpc2hDb25maXJtJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3NjQmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc2NCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NjQifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzY1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncHVibGlzaENvbmZpcm0nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzY1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc2NSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzU5X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInB1Ymxpc2hDb25maXJtIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc1OSIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2NyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjdfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+VGhpcyBkYXRhc2V0IGNhbm5vdCBiZSBwdWJsaXNoZWQgdW50aWwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvbmRzIiB0aXRsZT0iTnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZSI+TnVtZXJpYyBEYXRhIFNlcnZpY2VzIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+IGlzIHB1Ymxpc2hlZC4gV291bGQgeW91IGxpa2UgdG8gcHVibGlzaCBib3RoIHJpZ2h0IG5vdz8KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPjxkaXYgaWQ9InRlcm1zLWFncmVlbWVudC1ibG9jayIgY2xhc3M9IndlbGwiPkJ5IGRlZmF1bHQgZGF0YXNldHMgYXJlIHB1Ymxpc2hlZCB3aXRoIHRoZSBDQzAt4oCcUHVibGljIERvbWFpbiBEZWRpY2F0aW9u4oCdIHdhaXZlci4gTGVhcm4gbW9yZSBhYm91dCB0aGUgQ0MwIHdhaXZlciAKPGEgaHJlZj0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvY2hvb3NlL3plcm8vIiByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uIAo8YnI+Cjxicj4gVG8gcHVibGlzaCB3aXRoIGN1c3RvbSBUZXJtcyBvZiBVc2UsIGNsaWNrIHRoZSBDYW5jZWwgYnV0dG9uIGFuZCBnbyB0byB0aGUgVGVybXMgdGFiIGZvciB0aGlzIGRhdGFzZXQuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBPbmNlIHlvdSBwdWJsaXNoIHRoaXMgZGF0YXNldCBpdCBtdXN0IHJlbWFpbiBwdWJsaXNoZWQuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NzgiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc3OCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdwdWJsaXNoUGFyZW50JykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3NzgmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5ZZXMsIFB1Ymxpc2ggQm90aDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NzhfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc3OCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NzgifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzc5IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NzkiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncHVibGlzaFBhcmVudCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzc5X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3NzkiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzc5In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicHVibGlzaFBhcmVudCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NjciLG1vZGFsOnRydWUsd2lkdGg6IjcwJSJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3ODEiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzgxX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcmVwdWJsaXNoIHRoaXMgZGF0YXNldD8KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPjxkaXYgaWQ9InRlcm1zLWFncmVlbWVudC1ibG9jayIgY2xhc3M9IndlbGwiPkJ5IGRlZmF1bHQgZGF0YXNldHMgYXJlIHB1Ymxpc2hlZCB3aXRoIHRoZSBDQzAt4oCcUHVibGljIERvbWFpbiBEZWRpY2F0aW9u4oCdIHdhaXZlci4gTGVhcm4gbW9yZSBhYm91dCB0aGUgQ0MwIHdhaXZlciAKPGEgaHJlZj0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvY2hvb3NlL3plcm8vIiByZWw9Im5vZm9sbG93IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uIAo8YnI+Cjxicj4gVG8gcHVibGlzaCB3aXRoIGN1c3RvbSBUZXJtcyBvZiBVc2UsIGNsaWNrIHRoZSBDYW5jZWwgYnV0dG9uIGFuZCBnbyB0byB0aGUgVGVybXMgdGFiIGZvciB0aGlzIGRhdGFzZXQuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFNlbGVjdCBpZiB0aGlzIGlzIGEgbWlub3Igb3IgbWFqb3IgdmVyc2lvbiB1cGRhdGUuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+PHRhYmxlIGlkPSJkYXRhc2V0Rm9ybTpvcHRpb25zIiBjbGFzcz0idWktc2VsZWN0b25lcmFkaW8gdWktd2lkZ2V0Ij48dHI+PHRkPjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MCIgbmFtZT0iZGF0YXNldEZvcm06b3B0aW9ucyIgdHlwZT0icmFkaW8iIHZhbHVlPSIxIiBjaGVja2VkPSJjaGVja2VkIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uLWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0IHVpLXN0YXRlLWFjdGl2ZSI+PHNwYW4gY2xhc3M9InVpLXJhZGlvYnV0dG9uLWljb24gdWktaWNvbiB1aS1pY29uLWJ1bGxldCB1aS1jIj48L3NwYW4+PC9kaXY+PC9kaXY+PC90ZD48dGQ+PGxhYmVsIGZvcj0iZGF0YXNldEZvcm06b3B0aW9uczowIj5NaW5vciBSZWxlYXNlICgxLjEpPC9sYWJlbD48L3RkPjx0ZD48ZGl2IGNsYXNzPSJ1aS1yYWRpb2J1dHRvbiB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IGlkPSJkYXRhc2V0Rm9ybTpvcHRpb25zOjEiIG5hbWU9ImRhdGFzZXRGb3JtOm9wdGlvbnMiIHR5cGU9InJhZGlvIiB2YWx1ZT0iMiIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1yYWRpb2J1dHRvbi1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLXJhZGlvYnV0dG9uLWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZD48bGFiZWwgZm9yPSJkYXRhc2V0Rm9ybTpvcHRpb25zOjEiPk1ham9yIFJlbGVhc2UgKDIuMCk8L2xhYmVsPjwvdGQ+PC90cj48L3RhYmxlPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOm9wdGlvbnNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiU2VsZWN0T25lUmFkaW8iLCJ3aWRnZXRfZGF0YXNldEZvcm1fb3B0aW9ucyIse2lkOiJkYXRhc2V0Rm9ybTpvcHRpb25zIn0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8cD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc5MyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzkzIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3JlbGVhc2VEcmFmdCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3OTMmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc5MyIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3OTMifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzk1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncmVsZWFzZURyYWZ0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc5NSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3OTUifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc4MV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJyZWxlYXNlRHJhZnQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzgxIixtb2RhbDp0cnVlLHdpZHRoOiI3MCUifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzk3IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc5N190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj5UaGlzIGRhdGFzZXQgY2Fubm90IGJlIHB1Ymxpc2hlZCB1bnRpbCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2RhdGF2ZXJzZS54aHRtbD9hbGlhcz1uZHMiIHRpdGxlPSJOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlIj5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gIGlzIHB1Ymxpc2hlZCBieSBpdHMgYWRtaW5pc3RyYXRvci4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgwNSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxODA1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ21heU5vdFJlbGVhc2UnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgwNV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxODA1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgwNSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzk3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsIm1heU5vdFJlbGVhc2UiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzk3Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxODA3IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgwN190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj5UaGlzIGRhdGFzZXQgY2Fubm90IGJlIHB1Ymxpc2hlZCB1bnRpbCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2RhdGF2ZXJzZS9uZHMiIHRpdGxlPSJOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlIj5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gYW5kIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlL0hhcnZhcmRTdWJzY3JpcHRpb25EYXRhIiB0aXRsZT0iSGFydmFyZCBTdWJzY3JpcHRpb24gRGF0YSBEYXRhdmVyc2UiPkhhcnZhcmQgU3Vic2NyaXB0aW9uIERhdGEgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gIGFyZSBwdWJsaXNoZWQuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MTkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTgxOSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdtYXlub3RQdWJsaXNoUGFyZW50JykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MTlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTgxOSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE4MTkifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgwN19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJtYXlub3RQdWJsaXNoUGFyZW50Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgwNyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyMSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MjFfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJldHVybiB0byBBdXRob3I8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBSZXR1cm4gdGhpcyBkYXRhc2V0IHRvIGNvbnRyaWJ1dG9yIGZvciBtb2RpZmljYXRpb24uCiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyMyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxODIzIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbmRCYWNrVG9Db250cmlidXRvcicpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTgyMyZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyM19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxODIzIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgyMyJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MjQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTgyNCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZW5kQmFja1RvQ29udHJpYnV0b3InKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyNF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxODI0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgyNCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODIxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbmRCYWNrVG9Db250cmlidXRvciIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE4MjEiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmV0dXJuVG9BdXRob3JDb21tYW5kID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06al9pZHQxODI2IixmOiJkYXRhc2V0Rm9ybSIscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmVudGVyUmV0dXJuUmVhc29uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJlbnRlclJldHVyblJlYXNvbiIse2lkOiJkYXRhc2V0Rm9ybTplbnRlclJldHVyblJlYXNvbiJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTplbnRlclJldHVyblJlYXNvbiIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlcXVpcmVkIGVudHJ5PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlJlYXNvbiBmb3IgcmV0dXJuIHRvIGF1dGhvciBpcyByZXF1aXJlZDwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+ICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogUHVibGlzaC9TdWJtaXQgZm9yIFJldmlldyBEaWFsb2dzIC0tPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmF4LmZhY2VzLlZpZXdTdGF0ZSIgaWQ9ImpfaWQxOmphdmF4LmZhY2VzLlZpZXdTdGF0ZTowIiB2YWx1ZT0iNDgxOTk4MDY1NTA5MjA2MzYyMjo0Mzk4MTg4MTY1MTA2ODUzOTkzIiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL3Jlc291cmNlcy9qcy9kcm9waW5zLmpzIiBpZD0iZHJvcGJveGpzIj48L3NjcmlwdD4KICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHBvcG92ZXJIVE1MKCdBbGxvd2VkIEhUTUwgVGFncycpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RSZXR1cm5SZWFzb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJldHVyblJlYXNvblRleHQgPSBQRigncmV0dXJuUmVhc29uJykuanEudmFsKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXR1cm5SZWFzb25UZXh0Lmxlbmd0aD09PTApewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2VudGVyUmV0dXJuUmVhc29uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbmRCYWNrVG9Db250cmlidXRvcicpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVyblRvQXV0aG9yQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIG9wZW5EaWFsb2coKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZXRhaWxzJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBvcGVuQ29tcGFyZVR3bygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2NvbXBhcmVUd28nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RDaGVja0JveGVzKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRigndmVyc2lvbnNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCAhPT0gMikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2NvbXBhcmVUd28nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJjb21wYXJlVmVyc2lvbnMiXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEZpbGVzU2VsZWN0ZWRGb3JSZXN0cmljdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ2ZpbGVzVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3RGaWxlc0ZvclJlc3RyaWN0Jykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2FjY2Vzc1BvcHVwJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RmlsZXNTZWxlY3RlZEZvclRhZ3MoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCdmaWxlc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RmlsZXNGb3JFZGl0VGFncycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hUYWdzQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yRGVsZXRlKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yRGVsZXRlJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RmlsZXNTZWxlY3RlZEZvckVkaXRNZXRhZGF0YSgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ2ZpbGVzVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YScpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSAvL2Vsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBJIGNvbW1lbnRlZCBvdXQgdGhlIGNvZGUgYmVsb3c7IGlmIHRoZXJlJ3MKICAgICAgICAgICAgICAgICAgICAgICAgLy8gMSBvciBtb3JlIGZpbGUgc2VsZWN0ZWQsIEkgZG9uJ3Qgd2FudCB0aGlzCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIG1ldGhvZCB0byBhY3RpdmF0ZSB0aGUgcDpyZW1vdGVDb21tYW5kIHRoYXQKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXNzdWVzIHRoZSByZWRpcmVjdCB0byB0aGUgZWRpdCBwYWdlIChvcgogICAgICAgICAgICAgICAgICAgICAgICAvLyBkbyBhbnl0aGluZyBlbHNlIGZvciB0aGF0IG1hdHRlcikuIERvaW5nCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGl0IHRoaXMgd2F5IHdhcywgZm9yIHNvbWUgcmVhc29uLCBjYXVzaW5nCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgcGFnZSB0byBzdGlsbCB0cnkgdG8gcmVuZGVyICg/PyksIGluCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNvbWUgcGFydGlhbCwgaGFsZi1iYWtlZCBzdGF0ZSAtIHdpdGggbm8KICAgICAgICAgICAgICAgICAgICAgICAgLy8gd29ya2luZ1ZlcnNpb24gcHJlc2VudCwgZXRjLiAtIHRoYXQgcmVzdWx0ZWQKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaW4gc29tZSBOVUxMIHBvaW50ZXJzIGluIHRoZSBsb2dzLi4uIFNvLAogICAgICAgICAgICAgICAgICAgICAgICAvLyBpbnN0ZWFkLCB0aGUgcmVkaXJlY3Qgd2lsbCBiZSBkb25lIGJ5IHRoZQogICAgICAgICAgICAgICAgICAgICAgICAvLyBkaXJlY3QgYWN0aW9uPSBhdHRyaWJ1dGUgaW4gdGhlIG9yaWdpbmFsCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbW1hbmRCdXR0b24uIC0tIEwuQS4gNC4yLjEKICAgICAgICAgICAgICAgICAgICAgICAgLy9vcGVuRWRpdEZpbGVzUGFnZUNvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgLy99CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHVwZGF0ZVRlbXBsYXRlKCkgewogICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJ1cGRhdGVUZW1wbGF0ZSJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcmVnaXN0ZXJEYXRhc2V0KCkgewogICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJyZWdpc3RlckRhdGFzZXQiXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrTmV3bHlSZXN0cmljdGVkKCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgnaW5wdXRbaWQkPSJzaG93QWNjZXNzUG9wdXAiXScpLnZhbCgpID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdhY2Nlc3NQb3B1cCcpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9ImRhdGFzZXRTYXZlIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHVwZGF0ZUhpZGRlblJlYXNvbih0ZXh0QXJlYSkgewogICAgICAgICAgICAgICAgICAgICAgICAkKCdpbnB1dFtpZCQ9ImhpZGRlblJlYXNvbklucHV0Il0nKS52YWwodGV4dEFyZWEudmFsdWUpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RGVhY2Nlc3Npb25WZXJzaW9uU2VsZWN0aW9uKHRlc3RWZXJzaW9uKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBkZWFjY2Vzc2lvblRleHQgPSAkKCdpbnB1dFtpZCQ9ImhpZGRlblJlYXNvbklucHV0Il0nKS52YWwoKTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHVybEVudHJ5ID0gJCgnaW5wdXRbaWQkPSJmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24iXScpLnZhbCgpOwogICAgICAgICAgICAgICAgICAgICAgICA7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2YWxpZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0ZXN0VmVyc2lvbiA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ3ZlcnNpb25EZWFjY2Vzc2lvblRhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWRhdGVVUkwodXJsRW50cnkpID09PSBmYWxzZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdlbnRlckZvcndhcmRVcmwnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgic2VsZWN0W2lkJD0ncmVhc29uT3B0aW9ucyddIG9wdGlvbjpzZWxlY3RlZCIpLnZhbCgpID09PSAnNycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGVhY2Nlc3Npb25UZXh0ID09PSAnJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZW50ZXJPdGhlclJlYXNvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRlYWNjZXNzaW9uVGV4dC5sZW5ndGggPj0gMTAwMSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdyZWFzb25Ub29NYW55Q2hhcmFjdGVycycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWQgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCJzZWxlY3RbaWQkPSdyZWFzb25PcHRpb25zJ10gb3B0aW9uOnNlbGVjdGVkIikudmFsKCkgPT09ICcwJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdERlYWNjZXNzaW9uUmVhc29uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWxpZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRlc3RWZXJzaW9uID09PSBmYWxzZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZWFjY2Vzc2lvbkFsbENvbmZpcm1hdGlvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3REZWFjY2Vzc2lvblZlcnNpb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2RlYWNjZXNzaW9uQ29uZmlybWF0aW9uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVVSTCh0ZXh0dmFsKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0ZXh0dmFsID09PSAnJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHVybHJlZ2V4ID0gbmV3IFJlZ0V4cCgiXihodHRwfGh0dHBzfGZ0cClcOi8vKFthLXpBLVowLTlcLlwtXSsoXDpbYS16QS1aMC05XC4mJSRcLV0rKSpAKSooKDI1WzAtNV18MlswLTRdWzAtOV18WzAtMV17MX1bMC05XXsyfXxbMS05XXsxfVswLTldezF9fFsxLTldKVwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAtMV17MX1bMC05XXsyfXxbMS05XXsxfVswLTldezF9fFsxLTldfDApXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMC0xXXsxfVswLTldezJ9fFsxLTldezF9WzAtOV17MX18WzEtOV18MClcLigyNVswLTVdfDJbMC00XVswLTldfFswLTFdezF9WzAtOV17Mn18WzEtOV17MX1bMC05XXsxfXxbMC05XSl8KFthLXpBLVowLTlcLV0rXC4pKlthLXpBLVowLTlcLV0rXC4oY29tfGVkdXxnb3Z8aW50fG1pbHxuZXR8b3JnfGJpenxhcnBhfGluZm98bmFtZXxwcm98YWVyb3xjb29wfG11c2V1bXxbYS16QS1aXXsyfSkpKFw6WzAtOV0rKSooLygkfFthLXpBLVowLTlcLlwsXD9cJ1xcXCsmJSQjXD1+X1wtXSspKSokIik7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxyZWdleC50ZXN0KHRleHR2YWwpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBvcGVuRHJvcGJveENob29zZXIoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBSZXF1aXJlZC4gQ2FsbGVkIHdoZW4gYSB1c2VyIHNlbGVjdHMgYW4gaXRlbSBpbiB0aGUgQ2hvb3Nlci4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChmaWxlcykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhc3MgdGhlIEpTT04taXplZCBvdXRwdXQgb2YgdGhlIENob29zZXIgdG8gdGhlIGJhY2tpbmcgYmVhbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB2aWEgYSBoaWRkZW4gaW5wdXQgZmllbGQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnaW5wdXRbaWQkPSJkcm9wQm94U2VsZWN0aW9uSW5wdXQiXScpLnZhbChKU09OLnN0cmluZ2lmeShmaWxlcykpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vYWxlcnQoSlNPTi5zdHJpbmdpZnkoZmlsZXMpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUcmlnZ2VyIHRoZSB1cGxvYWQgcHJvY2Vzc2luZyBtZXRob2QgaW4gdGhlIGJhY2tpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBiZWFuLCB2aWEgYW4gaW52aXNpYmxlIGNvbW1hbmRCdXR0b246CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0iZHJvcEJveEJ1dHRvbiJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rVHlwZTogImRpcmVjdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdWx0aXNlbGVjdDogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgICAgICAgICAgRHJvcGJveC5jaG9vc2Uob3B0aW9ucyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgPC9zY3JpcHQ+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPCEtLSBGT09URVIgQkxPQ0sgLS0+CgogICAgPGRpdiBpZD0iZm9vdGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPjxkaXYgY2xhc3M9ImNvbC1zbS04IHNtYWxsIj4KICAgICAgICAgICAgICAgICAgICA8cD5Db3B5cmlnaHQgJiMxNjk7IDIwMTgsIFRoZSBQcmVzaWRlbnQgJiMzODsgRmVsbG93cyBvZiBIYXJ2YXJkIENvbGxlZ2XCoHzCoCA8YSBocmVmPSJodHRwOi8vYmVzdC1wcmFjdGljZXMuZGF0YXZlcnNlLm9yZy9oYXJ2YXJkLXBvbGljaWVzL2hhcnZhcmQtcHJpdmFjeS1wb2xpY3kuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPlByaXZhY3kgUG9saWN5PC9hPgogICAgICAgICAgICAgICAgICAgIDwvcD48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS00IHRleHQtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvd2VyZWRieWxvZ28iPgogICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5Qb3dlcmVkIGJ5PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vZGF0YXZlcnNlLm9yZy8iIHRpdGxlPSJUaGUgRGF0YXZlcnNlIFByb2plY3QiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iL3Jlc291cmNlcy9pbWFnZXMvZGF0YXZlcnNlcHJvamVjdF9sb2dvLnBuZyIgYWx0PSJUaGUgRGF0YXZlcnNlIFByb2plY3QiIC8+PC9hPjxzcGFuIGNsYXNzPSJ2ZXJzaW9uIj52LiA0LjguNDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PjxzdHlsZT4KI2ZlZWRiYWNrVGFiIHsKICAgIHBvc2l0aW9uOmZpeGVkOwogICAgYm90dG9tOjA7CiAgICByaWdodDo1MHB4Owp9CiNmZWVkYmFja1RhYiBidXR0b24uYnRuLWZlZWRiYWNrIHsKICAgIG1hcmdpbi1yaWdodDo4OXB4OwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOwp9Ci5idG4tZmVlZGJhY2sgewogIGJhY2tncm91bmQtY29sb3I6ICNDNTVCMjg7CiAgYm9yZGVyLWNvbG9yOiAjQzU1QjI4OwogIGNvbG9yOiAjZmZmOwp9Ci5idG4tZmVlZGJhY2s6aG92ZXIsCi5idG4tZmVlZGJhY2s6Zm9jdXMsCi5idG4tZmVlZGJhY2s6YWN0aXZlLAouYnRuLWZlZWRiYWNrLmFjdGl2ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2IwNTEyNDsKICBib3JkZXItY29sb3I6ICM5YjQ3MWY7CiAgY29sb3I6ICNmZmY7Cn0KLmJ0bi1mZWVkYmFjay5kaXNhYmxlZDpob3ZlciwKLmJ0bi1mZWVkYmFjay5kaXNhYmxlZDpmb2N1cywKLmJ0bi1mZWVkYmFjay5kaXNhYmxlZDphY3RpdmUsCi5idG4tZmVlZGJhY2suZGlzYWJsZWQuYWN0aXZlLAouYnRuLWZlZWRiYWNrW2Rpc2FibGVkXTpob3ZlciwKLmJ0bi1mZWVkYmFja1tkaXNhYmxlZF06Zm9jdXMsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdOmFjdGl2ZSwKLmJ0bi1mZWVkYmFja1tkaXNhYmxlZF0uYWN0aXZlLApmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1mZWVkYmFjazpob3ZlciwKZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZmVlZGJhY2s6Zm9jdXMsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrOmFjdGl2ZSwKZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZmVlZGJhY2suYWN0aXZlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzU1QjI4OwogIGJvcmRlci1jb2xvcjogI0M1NUIyODsKfQojZmVlZGJhY2tUYWJCb2R5IGRpdi5wYW5lbCB7CiAgICB3aWR0aDoxOTBweDsKICAgIG1hcmdpbjowOwogICAgYmFja2dyb3VuZDojRjhGOEY4OwogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MDsKfQo8L3N0eWxlPgoKPGRpdiBpZD0iZmVlZGJhY2tUYWIiPgogICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWZlZWRiYWNrIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjZmVlZGJhY2tUYWJCb2R5Ij4KICAgICAgICBGZWVkYmFjawogICAgPC9idXR0b24+CiAgICA8ZGl2IGlkPSJmZWVkYmFja1RhYkJvZHkiIGNsYXNzPSJjb2xsYXBzZSI+CiAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWxlZnQiPgogICAgICAgICAgICAgICAgICBIZWxwIGltcHJvdmUgRGF0YXZlcnNlOiBWb2x1bnRlZXIgZm9yIG9ubGluZSB1c2FiaWxpdHkgcmVzZWFyY2ghCiAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLWZlZWRiYWNrIiBocmVmPSJodHRwczovL2dvby5nbC9mb3Jtcy9wN3V1M0dmaVdZU2xKcnNpMSIgcm9sZT0iYnV0dG9uIiB0YXJnZXQ9Il9ibGFuayIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI2ZlZWRiYWNrVGFiQm9keSI+CiAgICAgICAgICAgICAgICAgIExlYXJuIE1vcmUKICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2Pgo8ZGl2IGlkPSJhamF4U3RhdHVzUGFuZWwiPjxkaXYgaWQ9ImFqYXhTdGF0dXNQYW5lbF9zdGFydCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PGltZyBzcmM9Ii9yZXNvdXJjZXMvaW1hZ2VzL2FqYXgtbG9hZGluZy5naWY7anNlc3Npb25pZD03NjZjOTgzYzViMjZlOTgxY2U5ODcxYWZkMWI1IiBhbHQ9IkxvYWRpbmciIC8+PC9kaXY+PGRpdiBpZD0iYWpheFN0YXR1c1BhbmVsX2NvbXBsZXRlIiBzdHlsZT0iZGlzcGxheTpub25lIj4KICAgICAgICAgICAgICAgIDwhLS0gRE8gTk9USElORyAtLT48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJhamF4U3RhdHVzUGFuZWxfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQWpheFN0YXR1cyIsIndpZGdldF9hamF4U3RhdHVzUGFuZWwiLHtpZDoiYWpheFN0YXR1c1BhbmVsIn0pO30pOzwvc2NyaXB0PgogICAgPCEtLSBEaWFsb2cgQ29udGFjdCBGb3JtIC0tPjxkaXYgaWQ9ImNvbnRhY3REaWFsb2ciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iY29udGFjdERpYWxvZ190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+Q29udGFjdCBIYXJ2YXJkIERhdGF2ZXJzZSBTdXBwb3J0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48ZGl2IGlkPSJqX2lkdDE4NTUiPgo8Zm9ybSBpZD0iZW1haWxGb3JtIiBuYW1lPSJlbWFpbEZvcm0iIG1ldGhvZD0icG9zdCIgYWN0aW9uPSIvZGF0YXNldC54aHRtbDtqc2Vzc2lvbmlkPTc2NmM5ODNjNWIyNmU5ODFjZTk4NzFhZmQxYjU/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMiIGNsYXNzPSJmb3JtLWhvcml6b250YWwiIGVuY3R5cGU9ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImVtYWlsRm9ybSIgdmFsdWU9ImVtYWlsRm9ybSIgLz4KCiAgICAgICAgICAgICAgICA8IS0tIHRvOiBTdXBwb3J0IC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWVzc2FnZVRvIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+VG88L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9Im1lc3NhZ2VUbyIgY2xhc3M9ImZvcm0tY29udHJvbC1zdGF0aWMiPkhhcnZhcmQgRGF0YXZlcnNlIFN1cHBvcnQ8L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwhLS0gZnJvbSBlbWFpbCAobm90IGxvZ2dlZCBpbikgLS0+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9InVzZXJFbWFpbCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPkZyb20gPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tYXN0ZXJpc2sgdGV4dC1kYW5nZXIiIHRpdGxlPSJSZXF1aXJlZCBmaWVsZCI+PC9zcGFuPjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48aW5wdXQgaWQ9ImVtYWlsRm9ybTp1c2VyRW1haWwiIG5hbWU9ImVtYWlsRm9ybTp1c2VyRW1haWwiIHR5cGU9InRleHQiIHZhbHVlPSIiIHNpemU9IjMwIiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiIC8+PHNjcmlwdCBpZD0iZW1haWxGb3JtOnVzZXJFbWFpbF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsIndpZGdldF9lbWFpbEZvcm1fdXNlckVtYWlsIix7aWQ6ImVtYWlsRm9ybTp1c2VyRW1haWwifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPCEtLSBzdWJqZWN0IC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWVzc2FnZVN1YmplY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj5TdWJqZWN0IDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij48aW5wdXQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdCIgbmFtZT0iZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0IiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiIC8+PHNjcmlwdCBpZD0iZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0Iiwid2lkZ2V0X2VtYWlsRm9ybV9tZXNzYWdlU3ViamVjdCIse2lkOiJlbWFpbEZvcm06bWVzc2FnZVN1YmplY3QifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4gICAKICAgICAgICAgICAgICAgIDwhLS0gbWVzc2FnZSAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9InVzZXJNZXNzYWdlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+TWVzc2FnZSA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PHRleHRhcmVhIGlkPSJlbWFpbEZvcm06dXNlck1lc3NhZ2UiIG5hbWU9ImVtYWlsRm9ybTp1c2VyTWVzc2FnZSIgY29scz0iMjAiIHJvd3M9IjEwIiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPjwvdGV4dGFyZWE+PHNjcmlwdCBpZD0iZW1haWxGb3JtOnVzZXJNZXNzYWdlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIklucHV0VGV4dGFyZWEiLCJ3aWRnZXRfZW1haWxGb3JtX3VzZXJNZXNzYWdlIix7aWQ6ImVtYWlsRm9ybTp1c2VyTWVzc2FnZSIsYXV0b1Jlc2l6ZTpmYWxzZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8IS0tIHZhbGlkYXRpb24gLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tb2Zmc2V0LTMgY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICA8cD48c3BhbiBjbGFzcz0iaGlnaGxpZ2h0Qm9sZCI+UGxlYXNlIGZpbGwgdGhpcyBvdXQgdG8gcHJvdmUgeW91IGFyZSBub3QgYSByb2JvdC48L3NwYW4+IDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPiArICA9IDxpbnB1dCBpZD0iZW1haWxGb3JtOm1lc3NhZ2VTdW0iIG5hbWU9ImVtYWlsRm9ybTptZXNzYWdlU3VtIiB0eXBlPSJ0ZXh0IiBzaXplPSI0IiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIgLz48c2NyaXB0IGlkPSJlbWFpbEZvcm06bWVzc2FnZVN1bV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsIndpZGdldF9lbWFpbEZvcm1fbWVzc2FnZVN1bSIse2lkOiJlbWFpbEZvcm06bWVzc2FnZVN1bSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPCEtLSBzZW5kIHwgY2FuY2VsIGJ1dHRvbnMgLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxhIGlkPSJlbWFpbEZvcm06al9pZHQxODczIiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtlbWFpbEZvcm06al9pZHQxODczJnF1b3Q7LHU6JnF1b3Q7ZW1haWxGb3JtJnF1b3Q7LG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtpZiAoYXJncyAmYW1wOyZhbXA7ICFhcmdzLnZhbGlkYXRpb25GYWlsZWQpIFBGKCdjb250YWN0Rm9ybScpLmhpZGUoKTs7fSxwYTpbe25hbWU6JnF1b3Q7RE9fVkFMSURBVElPTiZxdW90Oyx2YWx1ZTomcXVvdDt0cnVlJnF1b3Q7fV0sZmk6JnF1b3Q7al9pZHQxODU1JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyI+U2VuZCBNZXNzYWdlPC9hPgogICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJQRignY29udGFjdEZvcm0nKS5oaWRlKCkiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHZhbHVlPSJDYW5jZWwiPgogICAgICAgICAgICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZGl2PjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmF4LmZhY2VzLlZpZXdTdGF0ZSIgaWQ9ImpfaWQxOmphdmF4LmZhY2VzLlZpZXdTdGF0ZTowIiB2YWx1ZT0iNDgxOTk4MDY1NTA5MjA2MzYyMjo0Mzk4MTg4MTY1MTA2ODUzOTkzIiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImNvbnRhY3REaWFsb2dfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiY29udGFjdEZvcm0iLHtpZDoiY29udGFjdERpYWxvZyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9InN0YXR1c0luZm8iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0ic3RhdHVzSW5mb190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IlBGKCdzdGF0dXNJbmZvJykuaGlkZSgpIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iQ2xvc2UiPgogICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0ic3RhdHVzSW5mb19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzdGF0dXNJbmZvIix7aWQ6InN0YXR1c0luZm8iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9qcy9ib290c3RyYXAubWluLmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2pzL2Jvb3RzdHJhcC1ob3Zlci1kcm9wZG93bi5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvaWUtY29tcGF0LmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2R2X3JlYmluZF9ib290c3RyYXBfdWkuanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvb3dsLmNhcm91c2VsLmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2pxdWVyeS5tYXRjaEhlaWdodC5qcy54aHRtbD92ZXJzaW9uPTQuOC40Ij48L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9qcy9qcXVlcnkuc2hhcnJyZS5qcy54aHRtbD92ZXJzaW9uPTQuOC40Ij48L3NjcmlwdD4gIAogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2NsaXBib2FyZC5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgLy88IVtDREFUQVsKICAgICAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgLy8gTmF2YmFyIFNlYXJjaCBUb2dnbGUKICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjbmF2YmFyLXNlYXJjaC10b2dnbGUnLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50KCJsaSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAkKCJmb3JtLm5hdmJhci1mb3JtW3JvbGU9J3NlYXJjaCddIikuc2hvdygpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAkKCdib2R5JykuY2xpY2soZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoISQoZS50YXJnZXQpLmNsb3Nlc3QoImZvcm0ubmF2YmFyLWZvcm1bcm9sZT0nc2VhcmNoJ10iKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiZm9ybS5uYXZiYXItZm9ybVtyb2xlPSdzZWFyY2gnXSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiI25hdmJhci1zZWFyY2gtdG9nZ2xlIikucGFyZW50KCJsaSIpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgLy8gUmViaW5kIGJvb3RzdHJhcCBVSSBjb21wb25lbnRzCiAgICAgICAgICAgICAgICBiaW5kX2JzdWlfY29tcG9uZW50cygpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAvL11dPgogICAgICAgIDwvc2NyaXB0PgogICAgPHNjcmlwdD48IS0tIEdvb2dsZSBBbmFseXRpY3MgU25pcHBldCAtLT4KICAgICAgICAoZnVuY3Rpb24oaSxzLG8sZyxyLGEsbSl7aVsnR29vZ2xlQW5hbHl0aWNzT2JqZWN0J109cjtpW3JdPWlbcl18fGZ1bmN0aW9uKCl7CiAgICAgICAgIChpW3JdLnE9aVtyXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfSxpW3JdLmw9MSpuZXcgRGF0ZSgpO2E9cy5jcmVhdGVFbGVtZW50KG8pLAogICAgICAgICBtPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pCiAgICAgICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnLy93d3cuZ29vZ2xlLWFuYWx5dGljcy5jb20vYW5hbHl0aWNzLmpzJywnZ2EnKTsKIAogICAgICAgICAgZ2EoJ2NyZWF0ZScsICJVQS02MTc1MzMzNC0xIiwgJ2F1dG8nKTsKCiAgICAgICAgICBnYSgnc2VuZCcsICdwYWdldmlldycsIHsKICAgICAgICAgICAgJ2hpdFR5cGUnOiAnc29jaWFsJywKICAgICAgICAgICAgJ3NvY2lhbE5ldHdvcmsnOiAnZmFjZWJvb2snLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3NlbmQnLAogICAgICAgICAgICAnc29jaWFsVGFyZ2V0JzogJ2h0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1JywKICAgICAgICAgICAgJ3BhZ2UnOiAnL2RhdGFzZXQueGh0bWw/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMnCiAgICAgICAgICB9LCB7CiAgICAgICAgICAgICdoaXRUeXBlJzogJ3NvY2lhbCcsCiAgICAgICAgICAgICdzb2NpYWxOZXR3b3JrJzogJ3R3aXR0ZXInLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3R3ZWV0JywKICAgICAgICAgICAgJ3NvY2lhbFRhcmdldCc6ICdodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdScsCiAgICAgICAgICAgICdwYWdlJzogJy9kYXRhc2V0LnhodG1sP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzJwogICAgICAgICAgfSk7CiAgICAgICAgCgk8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4=
|
34
|
+
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnID8+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgbGFuZz0iZW4iPjxoZWFkPgogICAgICAgICAgICA8dGl0bGU+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDggLSBOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlPC90aXRsZT4KCSAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KCSAgICA8bWV0YSBuYW1lPSJEQy5pZGVudGlmaWVyIiBjb250ZW50PSJkb2k6MTAuNzkxMC9EVk4vR0FPQzAzIiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnR5cGUiIGNvbnRlbnQ9IkRhdGFzZXQiIC8+CgkgICAgPG1ldGEgbmFtZT0iREMudGl0bGUiIGNvbnRlbnQ9IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiAvPgogICAgICAgICAgICA8bWV0YSBuYW1lPSJEQy5kYXRlIiBjb250ZW50PSIyMDE4LTAzLTE2IiAvPgoJICAgIDxtZXRhIG5hbWU9IkRDLnB1Ymxpc2hlciIgY29udGVudD0iSGFydmFyZCBEYXRhdmVyc2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmRlc2NyaXB0aW9uIiBjb250ZW50PSJOYXRpb25hbCBsYWJvciBmb3JjZSBzdXJ2ZXkgaW4gSW5kb25lc2lhLiBTdXJ2ZWkgYW5na2F0YW4ga2VyamEgbmFzaW9uYWwuIDIwMDgiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9IkRDLmNyZWF0b3IiIGNvbnRlbnQ9IkJhZGFuIFB1c2F0IFN0YXRpc3RpayIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0iREMuc3ViamVjdCIgY29udGVudD0iU29jaWFsIFNjaWVuY2VzIiAvPgogICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIj57IkBjb250ZXh0IjoiaHR0cDovL3NjaGVtYS5vcmciLCJAdHlwZSI6IkRhdGFzZXQiLCJpZGVudGlmaWVyIjoiaHR0cDovL2R4LmRvaS5vcmcvMTAuNzkxMC9EVk4vR0FPQzAzIiwibmFtZSI6IlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiwiYXV0aG9yIjpbeyJuYW1lIjoiQmFkYW4gUHVzYXQgU3RhdGlzdGlrIn1dLCJkYXRlUHVibGlzaGVkIjoiMjAxOC0wMy0xNiIsImRhdGVNb2RpZmllZCI6IjIwMTgtMDMtMTYiLCJ2ZXJzaW9uIjoiMSIsImRlc2NyaXB0aW9uIjoiTmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4Iiwia2V5d29yZHMiOlsiU29jaWFsIFNjaWVuY2VzIiwiTGFib3IgU3VwcGx5LCBJbmRvbmVzaWEsIFN0YXRpc3RpY3MiXSwic2NoZW1hVmVyc2lvbiI6Imh0dHBzOi8vc2NoZW1hLm9yZy92ZXJzaW9uLzMuMyIsImxpY2Vuc2UiOnsiQHR5cGUiOiJEYXRhc2V0IiwidGV4dCI6IkxpY2Vuc2VkIGVsZWN0cm9uaWMgcmVzb3VyY2VzIGFyZSByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBVbmRlciBIYXJ2YXJkJ3MgbGljZW5zZXMgZm9yIGVsZWN0cm9uaWMgcmVzb3VyY2VzLCB1c2VycyBnZW5lcmFsbHkgbWF5IG5vdDogcGVybWl0IGFueW9uZSBvdGhlciB0aGFuIGF1dGhvcml6ZWQgdXNlcnMgdG8gdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IG1vZGlmeSBvciBjcmVhdGUgYSBkZXJpdmF0aXZlIHdvcmsgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyB3aXRob3V0IHRoZSBwZXJtaXNzaW9uIG9mIHRoZSBsaWNlbnNvcjsgcmVtb3ZlLCBvYnNjdXJlIG9yIG1vZGlmeSBhbnkgY29weXJpZ2h0IG9yIG90aGVyIG5vdGljZXMgaW5jbHVkZWQgaW4gdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgdXNlIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMsIGluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gdGhlIHNhbGUgb2YgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscy4gVXNlcnMgYXJlIGluZGl2aWR1YWxseSByZXNwb25zaWJsZSBmb3IgY29tcGxpYW5jZSB3aXRoIHRoZXNlIHRlcm1zLiJ9LCJpbmNsdWRlZEluRGF0YUNhdGFsb2ciOnsiQHR5cGUiOiJEYXRhQ2F0YWxvZyIsIm5hbWUiOiJIYXJ2YXJkIERhdGF2ZXJzZSIsInVybCI6Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1In0sInByb3ZpZGVyIjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIiwibmFtZSI6IkRhdGF2ZXJzZSJ9fQoKICAgICAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LUxhbmd1YWdlIiBjb250ZW50PSJlbiIgLz4KICAgICAgICAgICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiIC8+CiAgICAgICAgICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgRGF0YXZlcnNlIFByb2plY3QgaXMgYW4gb3BlbiBzb3VyY2Ugc29mdHdhcmUgYXBwbGljYXRpb24gdG8gc2hhcmUsIGNpdGUgYW5kIGFyY2hpdmUgZGF0YS4gRGF0YXZlcnNlIHByb3ZpZGVzIGEgcm9idXN0IGluZnJhc3RydWN0dXJlIGZvciBkYXRhIHN0ZXdhcmRzIHRvIGhvc3QgYW5kIGFyY2hpdmUgZGF0YSwgd2hpbGUgb2ZmZXJpbmcgcmVzZWFyY2hlcnMgYW4gZWFzeSB3YXkgdG8gc2hhcmUgYW5kIGdldCBjcmVkaXQgZm9yIHRoZWlyIGRhdGEuIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS90aGVtZS5jc3MueGh0bWw/bG49cHJpbWVmYWNlcy1ib290c3RyYXAiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pxdWVyeS9qcXVlcnkuanMueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanF1ZXJ5L2pxdWVyeS1wbHVnaW5zLmpzLnhodG1sO2pzZXNzaW9uaWQ9MDc2NGViZWE5ZWYzNjFiNzRjMGJiZTg0Mzk5MT9sbj1wcmltZWZhY2VzJmFtcDt2PTUuMyI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3ByaW1lZmFjZXMuanMueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvcHJpbWVmYWNlcy5jc3MueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIiAvPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS93YXRlcm1hcmsvd2F0ZXJtYXJrLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTA3NjRlYmVhOWVmMzYxYjc0YzBiYmU4NDM5OTE/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL3dhdGVybWFyay93YXRlcm1hcmsuanMueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2xuPXByaW1lZmFjZXMmYW1wO3Y9NS4zIj48L3NjcmlwdD48bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvZmlsZXVwbG9hZC9maWxldXBsb2FkLmNzcy54aHRtbDtqc2Vzc2lvbmlkPTA3NjRlYmVhOWVmMzYxYjc0YzBiYmU4NDM5OTE/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiIC8+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2ZpbGV1cGxvYWQvZmlsZXVwbG9hZC5qcy54aHRtbDtqc2Vzc2lvbmlkPTA3NjRlYmVhOWVmMzYxYjc0YzBiYmU4NDM5OTE/bG49cHJpbWVmYWNlcyZhbXA7dj01LjMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZih3aW5kb3cuUHJpbWVGYWNlcyl7fTwvc2NyaXB0PgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpY29uIiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvaW1hZ2VzL2Zhdmljb25kYXRhdmVyc2UucG5nLnhodG1sIiAvPgogICAgICAgIDxsaW5rIHR5cGU9ImltYWdlL3BuZyIgcmVsPSJpbWFnZV9zcmMiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9pbWFnZXMvZGF0YXZlcnNlcHJvamVjdC5wbmcueGh0bWwiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2Nzcy9ib290c3RyYXAubWluLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9jc3MvYm9vdHN0cmFwLXRoZW1lLm1pbi5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2llLWNvbXBhdC5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL293bC5jYXJvdXNlbC5jc3MueGh0bWw/dmVyc2lvbj00LjguNCIgLz4KICAgICAgICA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvamF2YXguZmFjZXMucmVzb3VyY2UvY3NzL2ZvbnRjdXN0b20uY3NzLnhodG1sP3ZlcnNpb249NC44LjQiIC8+CiAgICAgICAgPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2phdmF4LmZhY2VzLnJlc291cmNlL2Nzcy9zb2NpY29uLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgIDxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9jc3Mvc3RydWN0dXJlLmNzcy54aHRtbD92ZXJzaW9uPTQuOC40IiAvPgogICAgICAgICAgICA8c2NyaXB0PgogICAgICAgICAgICAgICAgLy8gQnJlYWsgb3V0IG9mIGlmcmFtZQogICAgICAgICAgICAgICAgaWYgKHdpbmRvdyAhPT0gdG9wKSB0b3AubG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb247CiAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgICAgICAvKiBDdXN0b20gQ1NTICovCiAgICAgICAgICAgICAgICAjbmF2YmFyRml4ZWQgZGl2Lm5hdmJhci1oZWFkZXIgaW1nLm5hdmJhci1icmFuZC5jdXN0b20tbG9nbyB7aGVpZ2h0OjUwcHggIWltcG9ydGFudDt9CiNkYXRhdmVyc2VEZXNjIHNwYW4gPiBzcGFuID4gc3BhbiA+IGgzIHtmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7fQoKICAgICAgICAgICAgPC9zdHlsZT48L2hlYWQ+PGJvZHk+Cgk8YSBocmVmPSIjY29udGVudCIgY2xhc3M9InNyLW9ubHkiPlNraXAgdG8gbWFpbiBjb250ZW50PC9hPgogICAgCiAgICA8ZGl2IGlkPSJkYXRhdmVyc2UtaGVhZGVyLWJsb2NrIj4KICAgICAgICA8IS0tIE5hdmJhciBQYW5lbCAtLT48bmF2IHJvbGU9Im5hdmlnYXRpb24iIGlkPSJuYXZiYXJGaXhlZCIgY2xhc3M9Im5hdmJhciBuYXZiYXItZGVmYXVsdCBuYXZiYXItZml4ZWQtdG9wIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdmJhci1oZWFkZXIiPgogICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3RvcE5hdkJhciIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzci1vbmx5Ij5Ub2dnbGUgbmF2aWdhdGlvbjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4gICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii8iPjxpbWcgc3JjPSIvbG9nb3MvbmF2YmFyL2xvZ28ucG5nO2pzZXNzaW9uaWQ9MDc2NGViZWE5ZWYzNjFiNzRjMGJiZTg0Mzk5MSIgY2xhc3M9Im5hdmJhci1icmFuZCBjdXN0b20tbG9nbyIgLz4KICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9InRvcE5hdkJhciI+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgbmF2YmFyLW5hdiBuYXZiYXItcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgaWQ9Im5hdmJhci1zZWFyY2gtdG9nZ2xlIiB0aXRsZT0iU2VhcmNoIGFsbCBkYXRhdmVyc2VzLi4uIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zZWFyY2giPjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9Im5hdmJhci1mb3JtIG5hdmJhci1sZWZ0IiByb2xlPSJzZWFyY2giIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0ic3Itb25seSIgZm9yPSJuYXZiYXJzZWFyY2giPlNlYXJjaDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPSJuYXZiYXJzZWFyY2giIHR5cGU9InRleHQiIGNsYXNzPSJzZWFyY2gtaW5wdXQgdWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIgc2l6ZT0iMjgiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJTZWFyY2ggYWxsIGRhdGF2ZXJzZXMuLi4iIC8+ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0id2luZG93LmxvY2F0aW9uID0gJy9kYXRhdmVyc2UvaGFydmFyZD9xPScgKyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2YmFyc2VhcmNoJykudmFsdWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNlYXJjaCI+PC9zcGFuPiBGaW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9kYXRhdmVyc2Uub3JnIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJvdXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CgogICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2d1aWRlcy5kYXRhdmVyc2Uub3JnL2VuLzQuOC40L3VzZXIiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVc2VyIEd1aWRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+Cjxmb3JtIGlkPSJqX2lkdDU2IiBuYW1lPSJqX2lkdDU2IiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBjbGFzcz0ibmF2YmFyLWZvcm0gbmF2YmFyLWxlZnQgbmF2YmFyLWZvcm0tbGluayI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImpfaWR0NTYiIHZhbHVlPSJqX2lkdDU2IiAvPgo8YSBpZD0ial9pZHQ1NjpqX2lkdDU3IiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2pfaWR0NTY6al9pZHQ1NyZxdW90Oyx1OiZxdW90O2NvbnRhY3REaWFsb2cmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdjb250YWN0Rm9ybScpLnNob3coKTt9fSk7cmV0dXJuIGZhbHNlOyI+U3VwcG9ydDwvYT48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJqYXZheC5mYWNlcy5WaWV3U3RhdGUiIGlkPSJqX2lkMTpqYXZheC5mYWNlcy5WaWV3U3RhdGU6MCIgdmFsdWU9Ii00NDQyMDUxMDk1OTE2MzUyMzEyOi0yMDUzMjgzODk2NTk2MjgzNjY3IiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9kYXRhdmVyc2V1c2VyLnhodG1sO2pzZXNzaW9uaWQ9MDc2NGViZWE5ZWYzNjFiNzRjMGJiZTg0Mzk5MT9lZGl0TW9kZT1DUkVBVEUmYW1wO3JlZGlyZWN0UGFnZT0lMkZkYXRhc2V0LnhodG1sJTNGcGVyc2lzdGVudElkJTNEZG9pJTNBMTAuNzkxMCUyRkRWTiUyRkdBT0MwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZ24gVXAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii9sb2dpbnBhZ2UueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP3JlZGlyZWN0UGFnZT0lMkZkYXRhc2V0LnhodG1sJTNGcGVyc2lzdGVudElkJTNEZG9pJTNBMTAuNzkxMCUyRkRWTiUyRkdBT0MwMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExvZyBJbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L25hdj4KICAgICAgICA8IS0tIEhlYWRlciBQYW5lbCAtLT4KICAgICAgICA8IS0tIEZJWE1FOiBSYXRoZXIgdGhhbiBoYXJkLWNvZGluZyAiRkZGRkZGIiwgZ2V0IGl0IGZyb20gdGhlIGJhY2tlbmQgKFRoZW1lV2lkZ2V0RnJhZ21lbnQuREVGQVVMVF9CQUNLR1JPVU5EX0NPTE9SKS4gLS0+PGRpdiBzdHlsZT0iYmFja2dyb3VuZDojRjVGNUY1OyIgaWQ9ImRhdGF2ZXJzZUhlYWRlciIgY2xhc3M9ImNvbnRhaW5lciBiZy1tdXRlZCI+CiAgICAgICAgICAgIDwhLS0gRklYTUU6IFJhdGhlciB0aGFuIGhhcmQtY29kaW5nICJGRkZGRkYiLCBnZXQgaXQgZnJvbSB0aGUgYmFja2VuZCAoVGhlbWVXaWRnZXRGcmFnbWVudC5ERUZBVUxUX0xPR09fQkFDS0dST1VORF9DT0xPUikuIC0tPjxkaXYgc3R5bGU9InRleHQtYWxpZ246TEVGVDtiYWNrZ3JvdW5kOiNmZmZmZmY7IiBjbGFzcz0iZGF0YXZlcnNlSGVhZGVyTG9nbyI+CiAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2xvZ29zLzE3OS9uZHMuZ2lmIiBhbHQ9Ik51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UiIC8+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckJsb2NrIj48ZGl2IGNsYXNzPSJkYXRhdmVyc2VIZWFkZXJDZWxsIGRhdGF2ZXJzZUhlYWRlck5hbWUiPgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvbmRzIiBjbGFzcz0iZGF0YXZlcnNlSGVhZGVyRGF0YXZlcnNlTmFtZSIgc3R5bGU9ImNvbG9yOiM5YTM4Mzg7Ij5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlPC9hPjxzcGFuIHN0eWxlPSJjb2xvcjojODg4ODg4OyI+IChIYXJ2YXJkIFVuaXZlcnNpdHkpPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImRhdGF2ZXJzZUhlYWRlckNlbGwgZGF0YXZlcnNlSGVhZGVyTGluayI+PGEgaHJlZj0iaHR0cDovL2hjbC5oYXJ2YXJkLmVkdS9saWJyYXJpZXMvbGFtb250L2NvbGxlY3Rpb25zL251bWVyaWNkYXRhL3NlcnZpY2VzLmNmbSIgc3R5bGU9ImNvbG9yOiM5YTM4Mzg7IiB0YXJnZXQ9Il9ibGFuayI+SG9tZSBQYWdlPC9hPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGlkPSJicmVhZGNydW1iTmF2QmxvY2siIGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYkJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJicmVhZGNydW1iTG5rMCIgaHJlZj0iL2RhdGF2ZXJzZS9oYXJ2YXJkIj5IYXJ2YXJkIERhdGF2ZXJzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgPC9kaXY+PHNwYW4gY2xhc3M9ImJyZWFkY3J1bWJDYXJyb3QiPiAmZ3Q7IDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJCbG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYnJlYWRjcnVtYkxuazEiIGhyZWY9Ii9kYXRhdmVyc2UvSGFydmFyZFN1YnNjcmlwdGlvbkRhdGEiPkhhcnZhcmQgU3Vic2NyaXB0aW9uIERhdGEgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj48c3BhbiBjbGFzcz0iYnJlYWRjcnVtYkNhcnJvdCI+ICZndDsgPC9zcGFuPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYkJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJicmVhZGNydW1iTG5rMiIgaHJlZj0iL2RhdGF2ZXJzZS9uZHMiPk51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgIDwvZGl2PjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQ2Fycm90Ij4gJmd0OyA8L3NwYW4+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJicmVhZGNydW1iQmxvY2siPjxzcGFuIGNsYXNzPSJicmVhZGNydW1iQWN0aXZlIj5UaGUgTmF0aW9uYWwgTGFib3IgRm9yY2UgOiBTQUtFUk5BUywgMjAwODwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgoKICAgICAgICAKCiAgICAgICAgPCEtLSBNZXNzYWdlIFBhbmVsIC0tPjxkaXYgaWQ9Im1lc3NhZ2VQYW5lbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBtZXNzYWdlUGFuZWwiPgogICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgaWQ9ImNvbnRlbnQiPgo8Zm9ybSBpZD0iZGF0YXNldEZvcm0iIG5hbWU9ImRhdGFzZXRGb3JtIiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBlbmN0eXBlPSJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkYXRhc2V0Rm9ybSIgdmFsdWU9ImRhdGFzZXRGb3JtIiAvPgoKICAgICAgICAgICAgICAgICAgICA8IS0tIEhlYWRlciAvIEJ1dHRvbiBQYW5lbCAtLT4KICAgICAgICAgICAgICAgICAgICA8IS0tIFZpZXcgZWRpdE1vZGUgLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06dG9wRGF0YXNldEJsb2NrRnJhZ21lbnQiPjxkaXYgaWQ9InRvcERhdGFzZXRCbG9jayI+PGRpdiBpZD0iYWN0aW9uQnV0dG9uQmxvY2siIGNsYXNzPSJidXR0b24tYmxvY2sgY2xlYXJmaXgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnRuLWdyb3VwIHB1bGwtcmlnaHQiIHJvbGU9Imdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVkaXQvUHVibGlzaCBCdXR0b24gR3JvdXAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQdWJsaXNoL1N1Ym1pdCBmb3IgUmV2aWV3L1JldHVybiB0byBBdXRob3IgQnV0dG9uIEdyb3VwIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBQdWJsaXNoL1N1Ym1pdCBmb3IgUmV2aWV3L1JldHVybiB0byBBdXRob3IgQnV0dG9uIEdyb3VwIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRWRpdCBCdXR0b24gLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQ6IEVkaXQgQnV0dG9uIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBFZGl0L0xpbmsvUHVibGlzaCBCdXR0b24gR3JvdXAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb250YWN0L1NoYXJlIEJ1dHRvbiBHcm91cCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBwdWxsLXJpZ2h0IiBpZD0iZGF0YXNldEJ1dHRvbkJhciIgcm9sZT0iZ3JvdXAiPjxhIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDI1MiIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCB0ZXh0LWJ1dHRvbiBib290c3RyYXAtYnV0dG9uLXRvb2x0aXAiIGFyaWEtbGFiZWw9IkVtYWlsIERhdGFzZXQgQ29udGFjdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDI1MiZxdW90Oyx1OiZxdW90O2NvbnRhY3REaWFsb2cmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdjb250YWN0Rm9ybScpLnNob3coKTt9LGZpOiZxdW90O2RhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdGl0bGU9IkVtYWlsIERhdGFzZXQgQ29udGFjdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWVudmVsb3BlIj48L3NwYW4+IENvbnRhY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MjU0IiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IHRleHQtYnV0dG9uIGJvb3RzdHJhcC1idXR0b24tdG9vbHRpcCIgYXJpYS1sYWJlbD0iU2hhcmUgRGF0YXNldCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDI1NCZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ3NoYXJlRGlhbG9nJykuc2hvdygpO3NoYXJycmUoKTs7fSxmaTomcXVvdDtkYXRhc2V0Rm9ybTp0b3BEYXRhc2V0QmxvY2tGcmFnbWVudCZxdW90O30pO3JldHVybiBmYWxzZTsiIHRpdGxlPSJTaGFyZSBEYXRhc2V0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc2hhcmUiPjwvc3Bhbj4gU2hhcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzaGFyZURpYWxvZyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzaGFyZURpYWxvZ190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2hhcmUgRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWluZm8tc2lnbiI+PC9zcGFuPiBTaGFyZSB0aGlzIGRhdGFzZXQgb24geW91ciBmYXZvcml0ZSBzb2NpYWwgbWVkaWEgbmV0d29ya3MuPC9wPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJzaGFycnJlLXdpZGdldCIgZGF0YS11cmw9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2RhdGFzZXQueGh0bWw/cGVyc2lzdGVudElkPWRvaToxMC43OTEwL0RWTi9HQU9DMDMiIGRhdGEtdGV4dD0iVmlldyB0aGlzIGRhdGFzZXQuIj48L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IlBGKCdzaGFyZURpYWxvZycpLmhpZGUoKSIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9IkNsb3NlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNoYXJlRGlhbG9nIix7aWQ6ImRhdGFzZXRGb3JtOnNoYXJlRGlhbG9nIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogQ29udGFjdC9TaGFyZSBCdXR0b24gR3JvdXAgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVmlldyBEYXRhc2V0IFZlcnNpb25zIEJ1dHRvbiAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gNC4yLjE6IHJlcGxhY2VkIHBlcm1pc3Npb25TZXJ2aWNlQmVhbi5vbihEYXRhc2V0UGFnZS5kYXRhc2V0KS5oYXMoJ1ZpZXdVbnB1Ymxpc2hlZERhdGFzZXQnKSB3aXRoIERhdGFzZXRQYWdlLmNhblZpZXdVbnB1Ymxpc2hlZERhdGFzZXQoKSAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBEYXRhc2V0IFZlcnNpb25zIEJ1dHRvbiAtLT4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIE1ldHJpY3MgLS0+PGRpdiBpZD0ibWV0cmljcy1ibG9jayIgY2xhc3M9ImNvbC14cy0zIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJtZXRyaWNzLWxhYmVsIiBjbGFzcz0iY29sLXhzLTQgc21hbGwgdGV4dC1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1zdGF0cyI+PC9zcGFuPiBNZXRyaWNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0ibWV0cmljcy1jb250ZW50IiBjbGFzcz0iY29sLXhzLTggc21hbGwgdGV4dC1jZW50ZXIiPjxzcGFuIGNsYXNzPSJtZXRyaWNzLWRvd25sb2FkcyI+MCBEb3dubG9hZHM8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEVORDogTWV0cmljcyAtLT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImRhdGFzZXRWZXJzaW9uQmxvY2siIGNsYXNzPSJjb250YWluZXItZmx1aWQiPjxkaXYgaWQ9InRpdGxlLWJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMSB2Y2VudGVyIHRpdGxlLXByZXZpZXctaWNvbi1ibG9jayI+PHNwYW4gY2xhc3M9Imljb24tZGF0YXNldCI+PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMSB2Y2VudGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9InRpdGxlIj5UaGUgTmF0aW9uYWwgTGFib3IgRm9yY2UgOiBTQUtFUk5BUywgMjAwODwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBEQVRBU0VUIFZFUlNJT04gTlVNQkVSIC0tPjxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1kZWZhdWx0Ij5WZXJzaW9uIDEuMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ0lUQVRJT04gQkxPQ0sgLS0+CiAgICAKICAgIDxkaXYgaWQ9ImNpdGF0aW9uLWJsb2NrIiBjbGFzcz0icm93Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgIGFsZXJ0IGFsZXJ0LWluZm8gYmctY2l0YXRpb24iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3cgIj4KICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImNpdGF0aW9uIiBjbGFzcz0iY29sLXhzLTcgY29sLW1kLTgiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJjaXRhdGlvbi1zZWxlY3QiIG9uY2xpY2s9ImlmIChldmVudC50YXJnZXQpIHsgc2VsZWN0VGV4dChldmVudC50YXJnZXQpOyB9IGVsc2V7IHNlbGVjdFRleHQodGhpcyk7IH0iPkJhZGFuIFB1c2F0IFN0YXRpc3RpaywgMjAxOCwgIlRoZSBOYXRpb25hbCBMYWJvciBGb3JjZSA6IFNBS0VSTkFTLCAyMDA4IiwgPGEgaHJlZj0iaHR0cDovL2R4LmRvaS5vcmcvMTAuNzkxMC9EVk4vR0FPQzAzIiB0YXJnZXQ9Il9ibGFuayI+ZG9pOjEwLjc5MTAvRFZOL0dBT0MwMzwvYT4sIEhhcnZhcmQgRGF0YXZlcnNlLCBWMQogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgaWQ9ImNpdGF0aW9uLWRvd25sb2FkIiBjbGFzcz0iY29sLXNtLTUgY29sLW1kLTQgdGV4dC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9ImRvd25sb2FkQ2l0YXRpb24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbGlzdCI+PC9zcGFuPiBDaXRlIERhdGFzZXQgPHNwYW4gY2xhc3M9ImNhcmV0Ij48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUgcHVsbC1yaWdodCB0ZXh0LWxlZnQiIHJvbGU9Im1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanNmLmpzLnhodG1sP2xuPWphdmF4LmZhY2VzIj48L3NjcmlwdD4NCjxhIGlkPSJkYXRhc2V0Rm9ybTplbmROb3RlTGluayIgaHJlZj0iIyIgb25jbGljaz0ibW9qYXJyYS5qc2ZjbGpzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkYXRhc2V0Rm9ybScpLHsnZGF0YXNldEZvcm06ZW5kTm90ZUxpbmsnOidkYXRhc2V0Rm9ybTplbmROb3RlTGluayd9LCcnKTtyZXR1cm4gZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmROb3RlIFhNTAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaWQ9ImRhdGFzZXRGb3JtOnJpc0xpbmsiIGhyZWY9IiMiIG9uY2xpY2s9Im1vamFycmEuanNmY2xqcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGF0YXNldEZvcm0nKSx7J2RhdGFzZXRGb3JtOnJpc0xpbmsnOidkYXRhc2V0Rm9ybTpyaXNMaW5rJ30sJycpO3JldHVybiBmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJJUwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaWQ9ImRhdGFzZXRGb3JtOmJpYkxpbmsiIGhyZWY9IiMiIG9uY2xpY2s9Im1vamFycmEuanNmY2xqcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGF0YXNldEZvcm0nKSx7J2RhdGFzZXRGb3JtOmJpYkxpbmsnOidkYXRhc2V0Rm9ybTpiaWJMaW5rJ30sJ19ibGFuaycpO3JldHVybiBmYWxzZSIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCaWJUZVgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImNpdGF0aW9uLXN0YW5kYXJkcyIgY2xhc3M9InNtYWxsIHRleHQtbXV0ZWQgdGV4dC1yaWdodCI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IExlYXJuIGFib3V0IDxhIGhyZWY9Imh0dHA6Ly9iZXN0LXByYWN0aWNlcy5kYXRhdmVyc2Uub3JnL2RhdGEtY2l0YXRpb24vIiB0aXRsZT0iR2V0IFJlY29nbml0aW9uOiBEYXRhIENpdGF0aW9uICAtIERhdGF2ZXJzZSBCZXN0IFByYWN0aWNlcyIgdGFyZ2V0PSJfYmxhbmsiPkRhdGEgQ2l0YXRpb24gU3RhbmRhcmRzPC9hPi48L2Rpdj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBDSVRBVElPTiBCTE9DSyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQkVHSU46IERBVEFTRVQgU1VNTUFSWSAtLT48ZGl2IGlkPSJkYXRhc2V0LXN1bW1hcnktbWV0YWRhdGEiIGNsYXNzPSJyb3cgcGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSBtZXRhZGF0YS1wYW5lbC1ib2R5Ij48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9kc0Rlc2NyaXB0aW9uIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkEgc3VtbWFyeSBkZXNjcmliaW5nIHRoZSBwdXJwb3NlLCBuYXR1cmUsIGFuZCBzY29wZSBvZiB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlc2NyaXB0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHJpbWl0aXZlIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wb3VuZCBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+TmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9zdWJqZWN0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IkRvbWFpbi1zcGVjaWZpYyBTdWJqZWN0IENhdGVnb3JpZXMgdGhhdCBhcmUgdG9waWNhbGx5IHJlbGV2YW50IHRvIHRoZSBEYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3ViamVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5Tb2NpYWwgU2NpZW5jZXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+PC9kaXY+PGRpdiBpZD0ia2V5d29yZHMiIGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJLZXkgdGVybXMgdGhhdCBkZXNjcmliZSBpbXBvcnRhbnQgYXNwZWN0cyBvZiB0aGUgRGF0YXNldC4iPktleXdvcmQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+TGFib3IgU3VwcGx5LCBJbmRvbmVzaWEsIFN0YXRpc3RpY3M8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBEQVRBU0VUIFNVTU1BUlkgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EIFZpZXcgZWRpdE1vZGUgLS0+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gQ3JlYXRlL0VkaXQgZWRpdE1vZGUgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQgQ3JlYXRlL0VkaXQgZWRpdE1vZGUgLS0+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gRWRpdCBlZGl0TW9kZSAtLT4KICAgICAgICAgICAgICAgICAgICA8IS0tIEVORCBIZWFkZXIgLyBCdXR0b24gUGFuZWwgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBWaWV3L1RhYnMgaW5mb01vZGUgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBUYWJzIC0tPjxkaXYgaWQ9ImNvbnRlbnRUYWJzIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpwYWdlUmVmcmVzaEZyYWdtZW50Ij4gPCEtLSByZW5kZXJlZD0iX3tlbXB0eSBEYXRhc2V0UGFnZS5lZGl0TW9kZX0iIC0tPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06ZGF0YXNldExvY2tlZEZvckluZ2VzdFZhcmlhYmxlIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOmRhdGFzZXRMb2NrZWRGb3JJbmdlc3RWYXJpYWJsZSIgdmFsdWU9ImZhbHNlIiAvPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06ZGF0YXNldFN0YXRlQ2hhbmdlZFZhcmlhYmxlIiB0eXBlPSJoaWRkZW4iIG5hbWU9ImRhdGFzZXRGb3JtOmRhdGFzZXRTdGF0ZUNoYW5nZWRWYXJpYWJsZSIgdmFsdWU9ImZhbHNlIiAvPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZWZyZXNoSW5nZXN0TG9ja0NvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDQ4OCIsZjoiZGF0YXNldEZvcm0iLHA6ImRhdGFzZXRGb3JtOmpfaWR0NDg4Iix1OiJkYXRhc2V0Rm9ybTpwYWdlUmVmcmVzaEZyYWdtZW50IixwYTphcmd1bWVudHNbMF0sZmk6ImRhdGFzZXRGb3JtOnBhZ2VSZWZyZXNoRnJhZ21lbnQifSk7fTwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZWZyZXNoQWxsQ29tbWFuZCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOmpfaWR0NDg5IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06al9pZHQ0ODkiLHU6ImRhdGFzZXRGb3JtOnRvcERhdGFzZXRCbG9ja0ZyYWdtZW50IGRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSBtZXNzYWdlUGFuZWwiLHBhOmFyZ3VtZW50c1swXSxmaToiZGF0YXNldEZvcm06cGFnZVJlZnJlc2hGcmFnbWVudCJ9KTt9PC9zY3JpcHQ+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBzZWUgdGhlIGNvbW1lbnQgaW4gdGhlIGphdmFzY3JpcHQgYmVsb3cgdGhhdCBleHBsYWlucyB3aGF0IHRoaXMgYnV0dG9uIGlzIGZvciAtLT48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uIiBuYW1lPSJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uIiBjbGFzcz0iIiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnJlZnJlc2hCdXR0b24mcXVvdDsscDomcXVvdDtkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm06dG9wRGF0YXNldEJsb2NrRnJhZ21lbnQgZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlIG1lc3NhZ2VQYW5lbCZxdW90OyxmaTomcXVvdDtkYXRhc2V0Rm9ybTpwYWdlUmVmcmVzaEZyYWdtZW50JnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+dWktYnV0dG9uPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlZnJlc2hCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwicmVmcmVzaEJ1dHRvbiIse2lkOiJkYXRhc2V0Rm9ybTpyZWZyZXNoQnV0dG9uIn0pOzwvc2NyaXB0PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnJlYWR5KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaElmU3RpbGxMb2NrZWQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gcmVmcmVzaElmU3RpbGxMb2NrZWQoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCdpbnB1dFtpZCQ9ImRhdGFzZXRMb2NrZWRGb3JJbmdlc3RWYXJpYWJsZSJdJykudmFsKCkgPT09ICd0cnVlJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWYgZGF0YXNldCBpcyBsb2NrZWQsIGluc3RydWN0IHRoZSBwYWdlIHRvCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3YWl0IGFuZCBjaGVjayBhZ2FpbjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdhaXRBbmRDaGVja0xvY2tBZ2FpbigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWYgbm90IGxvY2tlZCwgaGFzIGl0IGp1c3QgYmVlbiB1bmxvY2tlZD8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCdpbnB1dFtpZCQ9ImRhdGFzZXRTdGF0ZUNoYW5nZWRWYXJpYWJsZSJdJykudmFsKCkgPT09ICd0cnVlJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZvciB3aGF0ZXZlciB1bmtub3duIFByaW1lRmFjZXMgcmVhc29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhlIHBhZ2UgbmVlZHMgdG8gYmUgcmVmcmVzaGVkIHR3aWNlLCBmb3IgYWxsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhlIHB1bGwgZG93biBtZW51cyB0byB1cGRhdGUgcHJvcGVybHk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaEFsbENvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBZb3UgY2FuJ3QganVzdCBydW4gMiByZWZyZXNoQWxsQ29tbWFuZCgpcyBpbiBhIHJvdwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVpdGhlcjsgYmVjYXVzZSB0aGUgY29tbWFuZCBoYXMgYW4gInVwZGF0ZT1AYWxsIiBvbiBpdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzbyBJIGd1ZXNzIGlmIHlvdSB0cnkgdG8gZXhlY3V0ZSB0aGUgMm5kIG9uZSByaWdodCBhZnRlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBmaXJzdCBvbmUsIHRoaXMgZnJhZ21lbnQgaXMgc3RpbGwgZ29pbmcgdG8gYmUgbG9hZGluZyAtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gc28gdGhlcmUgd291bGQgbm90IHlldCBiZSBhIGNvbW1hbmQgdG8gcnVuISAoaXQgbmVlZHMgdG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBiZSByZW5kZXJlZCwgYmVmb3JlIHlvdSBjYW4gZXhlY3V0ZSBpdCwgdGhhdCBpcykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhpcyBidXR0b24gZG9lc24ndCBkbyBhbnl0aGluZywgYnV0IGl0IGhhcyBhbiB1cGRhdGU9IkBhbGwiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGF0dHJpYnV0ZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0icmVmcmVzaEJ1dHRvbiJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9yZWZyZXNoQWxsQ29tbWFuZCgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDE1MDApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB3YWl0QW5kQ2hlY2tMb2NrQWdhaW4oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVmcmVzaCB0aGUgbG9jayBpbiB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJhY2tpbmcgYmVhbjsgaS5lLiwgY2hlY2ssIGlmIHRoZSBpbmdlc3QgaGFzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBhbHJlYWR5IGNvbXBsZXRlZCBpbiB0aGUgYmFja2dyb3VuZDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vJCgnYnV0dG9uW2lkJD0icmVmcmVzaEJ1dHRvbiJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcmVmcmVzaExvY2tDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoSW5nZXN0TG9ja0NvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgMTAwMDApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXciIGNsYXNzPSJ1aS10YWJzIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLWhpZGRlbi1jb250YWluZXIgdWktdGFicy10b3AiIGRhdGEtd2lkZ2V0PSJjb250ZW50Ij48dWwgY2xhc3M9InVpLXRhYnMtbmF2IHVpLWhlbHBlci1yZXNldCB1aS1oZWxwZXItY2xlYXJmaXggdWktd2lkZ2V0LWhlYWRlciB1aS1jb3JuZXItYWxsIiByb2xlPSJ0YWJsaXN0Ij48bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktdGFicy1zZWxlY3RlZCB1aS1zdGF0ZS1hY3RpdmUgdWktY29ybmVyLXRvcCIgcm9sZT0idGFiIiBhcmlhLWV4cGFuZGVkPSJ0cnVlIiBhcmlhLXNlbGVjdGVkPSJ0cnVlIj48YSBocmVmPSIjZGF0YXNldEZvcm06dGFiVmlldzpkYXRhRmlsZXNUYWIiIHRhYmluZGV4PSItMSI+RmlsZXM8L2E+PC9saT48bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLXRvcCIgcm9sZT0idGFiIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiPjxhIGhyZWY9IiNkYXRhc2V0Rm9ybTp0YWJWaWV3Om1ldGFkYXRhTWFwVGFiIiB0YWJpbmRleD0iLTEiPk1ldGFkYXRhPC9hPjwvbGk+PGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci10b3AiIHJvbGU9InRhYiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48YSBocmVmPSIjZGF0YXNldEZvcm06dGFiVmlldzp0ZXJtc1RhYiIgdGFiaW5kZXg9Ii0xIj5UZXJtczwvYT48L2xpPjxsaSBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItdG9wIiByb2xlPSJ0YWIiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PGEgaHJlZj0iI2RhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWIiIHRhYmluZGV4PSItMSI+VmVyc2lvbnM8L2E+PC9saT48L3VsPjxkaXYgY2xhc3M9InVpLXRhYnMtcGFuZWxzIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmRhdGFGaWxlc1RhYiIgY2xhc3M9InVpLXRhYnMtcGFuZWwgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWJvdHRvbSIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJmYWxzZSI+CgogICAgPCEtLSBGaWxlcyBUYWJsZSAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiIGNsYXNzPSJ1aS1kYXRhdGFibGUgdWktd2lkZ2V0IHVpLWRhdGF0YWJsZS1zY3JvbGxhYmxlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OjFweDsiPjxkaXYgY2xhc3M9InVpLWRhdGF0YWJsZS1oZWFkZXIgdWktd2lkZ2V0LWhlYWRlciB1aS1jb3JuZXItdG9wIj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6ZmlsZXNIZWFkZXJCbG9jayIgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiI+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBkYXRhc2V0IGZpbGUgc2VhcmNoIC0tPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlcyIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNlYXJjaEZpbGVzIiB0eXBlPSJ0ZXh0IiBvbmtleXByZXNzPSJpZiAoZXZlbnQua2V5Q29kZSA9PSAxMykgeyBzdWJtaXRzZWFyY2goKTsgcmV0dXJuIGZhbHNlOyB9IiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHQgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiIC8+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNlYXJjaEZpbGVzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiSW5wdXRUZXh0IiwiaW5wdXRTZWFyY2hUZXJtIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlcyJ9KTs8L3NjcmlwdD48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiV2F0ZXJtYXJrIiwid2lkZ2V0X2RhdGFzZXRGb3JtX3RhYlZpZXdfZmlsZXNUYWJsZV9qX2lkdDY5NCIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTQiLHZhbHVlOiJTZWFyY2ggdGhpcyBkYXRhc2V0Li4uIix0YXJnZXQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzZWFyY2hGaWxlcyJ9LCJ3YXRlcm1hcmsiKTt9KTs8L3NjcmlwdD48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpzaG93QWNjZXNzUG9wdXAiIHR5cGU9ImhpZGRlbiIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOnNob3dBY2Nlc3NQb3B1cCIgdmFsdWU9ImZhbHNlIiAvPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5zdWJtaXRzZWFyY2ggPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTUiLGY6ImRhdGFzZXRGb3JtIixwOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTUgQHdpZGdldFZhcihpbnB1dFNlYXJjaFRlcm0pIix1OiJkYXRhc2V0Rm9ybSIscHM6dHJ1ZSxwYTphcmd1bWVudHNbMF19KTt9PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYnRuIj48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOmpfaWR0Njk3IiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTcmcXVvdDsscDomcXVvdDtkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ2OTcgQHdpZGdldFZhcihpbnB1dFNlYXJjaFRlcm0pJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm0mcXVvdDsscHM6dHJ1ZX0pO3JldHVybiBmYWxzZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNlYXJjaCI+PC9zcGFuPiBGaW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJtYXJnaW4tYm90dG9tOjZweDsiPgogICAgICAgICAgICAgICAgPGRpdiBpZD0iZmlsZXNIZWFkZXJDb3VudCIgY2xhc3M9ImNvbC14cy0yIHRleHQtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBGaWxlcyBDb3VudCAtLT48c3BhbiBjbGFzcz0iaGlnaGxpZ2h0Qm9sZCI+NSBGaWxlczwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBpZD0iZmlsZXNCdXR0b25zIiBjbGFzcz0iY29sLXhzLTEwIj4KICAgICAgICAgICAgICAgICAgICA8IS0tIDQuMi4xOiByZXBsYWNlZCBwZXJtaXNzaW9uc1dyYXBwZXIuY2FuSXNzdWVVcGRhdGVEYXRhc2V0Q29tbWFuZChEYXRhc2V0UGFnZS5kYXRhc2V0KSB3aXRoIERhdGFzZXRQYWdlLmNhblVwZGF0ZURhdGFzZXQoKSAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6dXBsb2FkQ29tcHV0ZUJsb2NrIiBjbGFzcz0iYnV0dG9uLWJsb2NrIHRhYi1oZWFkZXIgcHVsbC1yaWdodCB0ZXh0LXJpZ2h0Ij4KPCEtLSAgICAgICAgICAgICAgICAgICAgICAgICZsdDtoOm91dHB1dExpbmsgdmFsdWU9IiIgdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB0YXJnZXQ9Il9ibGFuayIgcmVuZGVyZWQ9ImZhbHNlIiZndDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDT01QVVRFIEJVVFRPTiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICZsdDtzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWZsYXNoIi8mZ3Q7IENvbXB1dGUKICAgICAgICAgICAgICAgICAgICAgICAgJmx0Oy9oOm91dHB1dExpbmsmZ3Q7LS0+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tKioqV2hlbiBpdCBpcyBwb3NzaWJsZSB0byBjb21wdXRlIG9uIGFuIGVudGlyZSBkYXRhc2V0LCBjb21tZW50IHRoaXMgaW4tLT4KPCEtLSAgICAgICAgICAgICAgICAgICAgJmx0O2g6b3V0cHV0TGluayB2YWx1ZT0iIiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHRhcmdldD0iX2JsYW5rIiByZW5kZXJlZD0iZmFsc2UiJmd0OyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICZsdDtzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWZsYXNoIi8mZ3Q7IENvbXB1dGUKICAgICAgICAgICAgICAgICAgICAgICAgJmx0Oy9oOm91dHB1dExpbmsmZ3Q7LS0+PC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idWktd2lkZ2V0LWhlYWRlciB1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXIiPjxkaXYgY2xhc3M9InVpLWRhdGF0YWJsZS1zY3JvbGxhYmxlLWhlYWRlci1ib3giPjx0YWJsZSByb2xlPSJncmlkIj48dGhlYWQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9oZWFkIj48dHIgcm9sZT0icm93Ij48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDc0MSIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciIgcm9sZT0iY29sdW1uaGVhZGVyIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS1jaGtib3gtYWxsIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ3NDIiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1maWxlLXRodW1iIiByb2xlPSJjb2x1bW5oZWFkZXIiIHN0eWxlPSJ3aWR0aDo2NHB4ICFpbXBvcnRhbnQ7Ij48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj48L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTpqX2lkdDc1NyIgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgY29sLWZpbGUtbWV0YWRhdGEiIHJvbGU9ImNvbHVtbmhlYWRlciI+PHNwYW4gY2xhc3M9InVpLWNvbHVtbi10aXRsZSI+PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6al9pZHQ3OTAiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj4KICAgICAgICAgICAgICAgIDwhLS0gRURJVCAtLT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPCEtLSBET1dOTE9BRCAtLT48L3NwYW4+PC90aD48L3RyPjwvdGhlYWQ+PC90YWJsZT48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1ib2R5IiB0YWJpbmRleD0iLTEiPjx0YWJsZSByb2xlPSJncmlkIj48dGJvZHkgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9kYXRhIiBjbGFzcz0idWktZGF0YXRhYmxlLWRhdGEgdWktd2lkZ2V0LWNvbnRlbnQiPjx0ciBkYXRhLXJpPSIwIiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNjIwYjlkMmNkYy0yZGEyNTk4MjZmZTgiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtZXZlbiB1aS1kYXRhdGFibGUtc2VsZWN0YWJsZSIgcm9sZT0icm93IiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6MjBweCAhaW1wb3J0YW50OyIgY2xhc3M9InVpLXNlbGVjdGlvbi1jb2x1bW4gdGV4dC1jZW50ZXIiPjxkaXYgY2xhc3M9InVpLWNoa2JveCB1aS13aWRnZXQiPjxkaXYgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfY2hlY2tib3giIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktY2hrYm94LWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktY2hrYm94LWljb24gdWktaWNvbiB1aS1pY29uLWJsYW5rIHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgc3R5bGU9IndpZHRoOjY0cHggIWltcG9ydGFudDsiIGNsYXNzPSJjb2wtZmlsZS10aHVtYiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRodW1ibmFpbC1ibG9jayB0ZXh0LWNlbnRlciI+CiAgICAgICAgICAgICAgICA8IS0tIFRodW1ibmFpbCBQcmV2aWV3IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gRGVmYXVsdCBJY29uIC0tPjxzcGFuIGNsYXNzPSJpY29uLWRvY3VtZW50IGZpbGUtdGh1bWJuYWlsLWljb24gdGV4dC1tdXRlZCI+PC9zcGFuPgoKICAgICAgICAgICAgICAgIDwhLS0gdGhlICJ0ZW1wIHByZXZpZXciIGlzIGZvciBuZXcsIG5vdCB5ZXQgc2F2ZWQgZmlsZXM7IHRoZXNlIHNob3VsZCBuZXZlciBhcHBlYXIgb24gdGhpcyBwYWdlIC0gYXMgd2Ugbm93IGhhdmUgdGhlIGVkaXRmaWxlc3BhZ2UgZm9yIHRoYXQsIGNvcnJlY3Q/IC0tPgoKICAgICAgICAgICAgICAgIDwhLS0gUmVzdHJpY3RlZCBGaWxlIEljb24gLS0+PGRpdiBjbGFzcz0iZmlsZS1pY29uLXJlc3RyaWN0ZWQtYmxvY2siPiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWxvY2sgdGV4dC1kYW5nZXIiPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1tZXRhZGF0YSI+CiAgICAgICAgICAgICAgICA8IS0tIHJlbmRlcmVkPSIjIHshKGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5yZWxlYXNlZCBvciBmaWxlTWV0YWRhdGEuZGF0YXNldFZlcnNpb24uZGVhY2Nlc3Npb25lZCl9IiAtLT48YSBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjA6ZmlsZU5hbWVMaW5rIiBuYW1lPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlTmFtZUxpbmsiIGhyZWY9Ii9maWxlLnhodG1sO2pzZXNzaW9uaWQ9MDc2NGViZWE5ZWYzNjFiNzRjMGJiZTg0Mzk5MT9maWxlSWQ9MzEzMTg1NCZhbXA7dmVyc2lvbj1SRUxFQVNFRCZhbXA7dmVyc2lvbj0uMCI+S3Vlc2lvbmVyIFNha2VybmFzIDIwMDgucGRmPC9hPgoKICAgICAgICAgICAgPCEtLSBUWVBFICsgU0laRSArIERBVEUgKyBDSEVDS1NVTSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+CiAgICAgICAgICAgICAgICA8IS0tIGlkOjMxMzE4NTQgLS0+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVUeXBlT3V0cHV0UmVndWxhciI+QWRvYmUgUERGPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlU2l6ZSI+IC0gMzczLjYgS0I8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTowOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MDpmaWxlLWNoZWNrc3VtIj5NRDU6IGM3Njg5ZjA0N2VjZDg1YTIwN2MxYWI3YTEzZWUzMmQ1PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPCEtLSBVTkYgKyBWYXJpYWJsZXMsIE9ic2Vyc3ZhdGlvbnMgLS0+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAKICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkZpbGUgcGcgb25seSo6IC0tPgogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+PC9kaXY+PC90ZD48L3RyPjx0ciBkYXRhLXJpPSIxIiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNjIwYjljYmIzZC02NjFmZDVlMjBjZTIiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtb2RkIHVpLWRhdGF0YWJsZS1zZWxlY3RhYmxlIiByb2xlPSJyb3ciIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDoyMHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0idWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciI+PGRpdiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyIgY2xhc3M9ImNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGh1bWJuYWlsLWJsb2NrIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgIDwhLS0gVGh1bWJuYWlsIFByZXZpZXcgLS0+CgogICAgICAgICAgICAgICAgPCEtLSBEZWZhdWx0IEljb24gLS0+PHNwYW4gY2xhc3M9Imljb24tZG9jdW1lbnQgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CgogICAgICAgICAgICAgICAgPCEtLSB0aGUgInRlbXAgcHJldmlldyIgaXMgZm9yIG5ldywgbm90IHlldCBzYXZlZCBmaWxlczsgdGhlc2Ugc2hvdWxkIG5ldmVyIGFwcGVhciBvbiB0aGlzIHBhZ2UgLSBhcyB3ZSBub3cgaGF2ZSB0aGUgZWRpdGZpbGVzcGFnZSBmb3IgdGhhdCwgY29ycmVjdD8gLS0+CgogICAgICAgICAgICAgICAgPCEtLSBSZXN0cmljdGVkIEZpbGUgSWNvbiAtLT48ZGl2IGNsYXNzPSJmaWxlLWljb24tcmVzdHJpY3RlZC1ibG9jayI+ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbG9jayB0ZXh0LWRhbmdlciI+PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgICAgIDwhLS0gcmVuZGVyZWQ9IiMgeyEoZmlsZU1ldGFkYXRhLmRhdGFzZXRWZXJzaW9uLnJlbGVhc2VkIG9yIGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5kZWFjY2Vzc2lvbmVkKX0iIC0tPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2ZpbGVJZD0zMTMxODU1JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5MYXlvdXQgU2FrZXJuYXMgMjAwOCBBZ3VzdHVzLmRvYzwvYT4KCiAgICAgICAgICAgIDwhLS0gVFlQRSArIFNJWkUgKyBEQVRFICsgQ0hFQ0tTVU0gLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPgogICAgICAgICAgICAgICAgPCEtLSBpZDozMTMxODU1IC0tPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MTpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPk1TIFdvcmQ8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVTaXplIj4gLSAxNDguNSBLQjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjE6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSBNYXIgMTYsIDIwMTg8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGVEb3dubG9hZENvdW50Ij4gLSAwIERvd25sb2Fkczwvc3Bhbj48ZGl2IGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToxOmZpbGUtY2hlY2tzdW0iPk1ENTogZDkwMDU4MDU5NjkyNzNlOTRhNjRjMTMyOGE1ODY1ZjI8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8IS0tIFVORiArIFZhcmlhYmxlcywgT2JzZXJzdmF0aW9ucyAtLT48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgIAogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRmlsZSBwZyBvbmx5KjogLS0+CiAgICA8IS0tIENvbXB1dGUgQnV0dG9uICpEYXRhc2V0IHBnIG9ubHkqOiAtLT48L2Rpdj48L3RkPjwvdHI+PHRyIGRhdGEtcmk9IjIiIGRhdGEtcms9InMzOi8vZHZuLWNsb3VkOjE2MjBiOWNiZDBhLWJhYzU4NWFjMDRjNiIgY2xhc3M9InVpLXdpZGdldC1jb250ZW50IHVpLWRhdGF0YWJsZS1ldmVuIHVpLWRhdGF0YWJsZS1zZWxlY3RhYmxlIiByb2xlPSJyb3ciIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDoyMHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0idWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciI+PGRpdiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyIgY2xhc3M9ImNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGh1bWJuYWlsLWJsb2NrIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgIDwhLS0gVGh1bWJuYWlsIFByZXZpZXcgLS0+CgogICAgICAgICAgICAgICAgPCEtLSBEZWZhdWx0IEljb24gLS0+PHNwYW4gY2xhc3M9Imljb24tZG9jdW1lbnQgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CgogICAgICAgICAgICAgICAgPCEtLSB0aGUgInRlbXAgcHJldmlldyIgaXMgZm9yIG5ldywgbm90IHlldCBzYXZlZCBmaWxlczsgdGhlc2Ugc2hvdWxkIG5ldmVyIGFwcGVhciBvbiB0aGlzIHBhZ2UgLSBhcyB3ZSBub3cgaGF2ZSB0aGUgZWRpdGZpbGVzcGFnZSBmb3IgdGhhdCwgY29ycmVjdD8gLS0+CgogICAgICAgICAgICAgICAgPCEtLSBSZXN0cmljdGVkIEZpbGUgSWNvbiAtLT48ZGl2IGNsYXNzPSJmaWxlLWljb24tcmVzdHJpY3RlZC1ibG9jayI+ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbG9jayB0ZXh0LWRhbmdlciI+PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgICAgIDwhLS0gcmVuZGVyZWQ9IiMgeyEoZmlsZU1ldGFkYXRhLmRhdGFzZXRWZXJzaW9uLnJlbGVhc2VkIG9yIGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5kZWFjY2Vzc2lvbmVkKX0iIC0tPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2ZpbGVJZD0zMTMxODU2JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5RX1NBSzA4MDgucGRmPC9hPgoKICAgICAgICAgICAgPCEtLSBUWVBFICsgU0laRSArIERBVEUgKyBDSEVDS1NVTSAtLT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1tdXRlZCBzbWFsbCI+CiAgICAgICAgICAgICAgICA8IS0tIGlkOjMxMzE4NTYgLS0+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVUeXBlT3V0cHV0UmVndWxhciI+QWRvYmUgUERGPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlU2l6ZSI+IC0gMTQzLjAgS0I8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZToyOmZpbGVDcmVhdGVQdWJsaXNoRGF0ZSI+IC0gTWFyIDE2LCAyMDE4PC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlRG93bmxvYWRDb3VudCI+IC0gMCBEb3dubG9hZHM8L3NwYW4+PGRpdiBjbGFzcz0iY2hlY2tzdW0tYmxvY2siPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MjpmaWxlLWNoZWNrc3VtIj5NRDU6IDJjZDk4Zjc0NTI0NzczMjM4ZGJkYmZmMGUzMjYwMDc4PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPCEtLSBVTkYgKyBWYXJpYWJsZXMsIE9ic2Vyc3ZhdGlvbnMgLS0+PC90ZD48dGQgcm9sZT0iZ3JpZGNlbGwiIGNsYXNzPSJjb2wtZmlsZS1hY3Rpb24gdGV4dC1yaWdodCAiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAKICAgIDwhLS0gQ29tcHV0ZSBCdXR0b24gKkZpbGUgcGcgb25seSo6IC0tPgogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRGF0YXNldCBwZyBvbmx5KjogLS0+PC9kaXY+PC90ZD48L3RyPjx0ciBkYXRhLXJpPSIzIiBkYXRhLXJrPSJzMzovL2R2bi1jbG91ZDoxNjIwYjlkMTllMy05NDZmZGJlYmVhZDEiIGNsYXNzPSJ1aS13aWRnZXQtY29udGVudCB1aS1kYXRhdGFibGUtb2RkIHVpLWRhdGF0YWJsZS1zZWxlY3RhYmxlIiByb2xlPSJyb3ciIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDoyMHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0idWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciI+PGRpdiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyIgY2xhc3M9ImNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGh1bWJuYWlsLWJsb2NrIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgIDwhLS0gVGh1bWJuYWlsIFByZXZpZXcgLS0+CgogICAgICAgICAgICAgICAgPCEtLSBEZWZhdWx0IEljb24gLS0+PHNwYW4gY2xhc3M9Imljb24tb3RoZXIgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CgogICAgICAgICAgICAgICAgPCEtLSB0aGUgInRlbXAgcHJldmlldyIgaXMgZm9yIG5ldywgbm90IHlldCBzYXZlZCBmaWxlczsgdGhlc2Ugc2hvdWxkIG5ldmVyIGFwcGVhciBvbiB0aGlzIHBhZ2UgLSBhcyB3ZSBub3cgaGF2ZSB0aGUgZWRpdGZpbGVzcGFnZSBmb3IgdGhhdCwgY29ycmVjdD8gLS0+CgogICAgICAgICAgICAgICAgPCEtLSBSZXN0cmljdGVkIEZpbGUgSWNvbiAtLT48ZGl2IGNsYXNzPSJmaWxlLWljb24tcmVzdHJpY3RlZC1ibG9jayI+ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbG9jayB0ZXh0LWRhbmdlciI+PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgICAgIDwhLS0gcmVuZGVyZWQ9IiMgeyEoZmlsZU1ldGFkYXRhLmRhdGFzZXRWZXJzaW9uLnJlbGVhc2VkIG9yIGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5kZWFjY2Vzc2lvbmVkKX0iIC0tPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2ZpbGVJZD0zMTMxODU3JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5zYWswOGFndF90cmFuc2ZlcnVsYW5nLmRiZjwvYT4KCiAgICAgICAgICAgIDwhLS0gVFlQRSArIFNJWkUgKyBEQVRFICsgQ0hFQ0tTVU0gLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQtbXV0ZWQgc21hbGwiPgogICAgICAgICAgICAgICAgPCEtLSBpZDozMTMxODU3IC0tPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6MzpmaWxlVHlwZU91dHB1dFJlZ3VsYXIiPlVua25vd248L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVTaXplIj4gLSAzMjMuNSBNQjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjM6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSBNYXIgMTYsIDIwMTg8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGVEb3dubG9hZENvdW50Ij4gLSAwIERvd25sb2Fkczwvc3Bhbj48ZGl2IGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTozOmZpbGUtY2hlY2tzdW0iPk1ENTogYmE2YTVmNjNlMTBkZWU0NmEwMDI1ZjEyZjc1YTRhMGY8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8IS0tIFVORiArIFZhcmlhYmxlcywgT2JzZXJzdmF0aW9ucyAtLT48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgIAogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRmlsZSBwZyBvbmx5KjogLS0+CiAgICA8IS0tIENvbXB1dGUgQnV0dG9uICpEYXRhc2V0IHBnIG9ubHkqOiAtLT48L2Rpdj48L3RkPjwvdHI+PHRyIGRhdGEtcmk9IjQiIGRhdGEtcms9InMzOi8vZHZuLWNsb3VkOjE2MjBiOWQ1YzBkLWU5MTg5MmI0OTgwYSIgY2xhc3M9InVpLXdpZGdldC1jb250ZW50IHVpLWRhdGF0YWJsZS1ldmVuIHVpLWRhdGF0YWJsZS1zZWxlY3RhYmxlIiByb2xlPSJyb3ciIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIj48dGQgcm9sZT0iZ3JpZGNlbGwiIHN0eWxlPSJ3aWR0aDoyMHB4ICFpbXBvcnRhbnQ7IiBjbGFzcz0idWktc2VsZWN0aW9uLWNvbHVtbiB0ZXh0LWNlbnRlciI+PGRpdiBjbGFzcz0idWktY2hrYm94IHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9jaGVja2JveCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1jaGtib3gtYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQiPjxzcGFuIGNsYXNzPSJ1aS1jaGtib3gtaWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkIHJvbGU9ImdyaWRjZWxsIiBzdHlsZT0id2lkdGg6NjRweCAhaW1wb3J0YW50OyIgY2xhc3M9ImNvbC1maWxlLXRodW1iIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGh1bWJuYWlsLWJsb2NrIHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICAgIDwhLS0gVGh1bWJuYWlsIFByZXZpZXcgLS0+CgogICAgICAgICAgICAgICAgPCEtLSBEZWZhdWx0IEljb24gLS0+PHNwYW4gY2xhc3M9Imljb24tb3RoZXIgZmlsZS10aHVtYm5haWwtaWNvbiB0ZXh0LW11dGVkIj48L3NwYW4+CgogICAgICAgICAgICAgICAgPCEtLSB0aGUgInRlbXAgcHJldmlldyIgaXMgZm9yIG5ldywgbm90IHlldCBzYXZlZCBmaWxlczsgdGhlc2Ugc2hvdWxkIG5ldmVyIGFwcGVhciBvbiB0aGlzIHBhZ2UgLSBhcyB3ZSBub3cgaGF2ZSB0aGUgZWRpdGZpbGVzcGFnZSBmb3IgdGhhdCwgY29ycmVjdD8gLS0+CgogICAgICAgICAgICAgICAgPCEtLSBSZXN0cmljdGVkIEZpbGUgSWNvbiAtLT48ZGl2IGNsYXNzPSJmaWxlLWljb24tcmVzdHJpY3RlZC1ibG9jayI+ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tbG9jayB0ZXh0LWRhbmdlciI+PC9zcGFuPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLW1ldGFkYXRhIj4KICAgICAgICAgICAgICAgIDwhLS0gcmVuZGVyZWQ9IiMgeyEoZmlsZU1ldGFkYXRhLmRhdGFzZXRWZXJzaW9uLnJlbGVhc2VkIG9yIGZpbGVNZXRhZGF0YS5kYXRhc2V0VmVyc2lvbi5kZWFjY2Vzc2lvbmVkKX0iIC0tPjxhIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlTmFtZUxpbmsiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVOYW1lTGluayIgaHJlZj0iL2ZpbGUueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2ZpbGVJZD0zMTMxODU4JmFtcDt2ZXJzaW9uPVJFTEVBU0VEJmFtcDt2ZXJzaW9uPS4wIj5zYWswOGZlYi5kYmY8L2E+CgogICAgICAgICAgICA8IS0tIFRZUEUgKyBTSVpFICsgREFURSArIENIRUNLU1VNIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0LW11dGVkIHNtYWxsIj4KICAgICAgICAgICAgICAgIDwhLS0gaWQ6MzEzMTg1OCAtLT48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjQ6ZmlsZVR5cGVPdXRwdXRSZWd1bGFyIj5Vbmtub3duPC9zcGFuPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGU6NDpmaWxlU2l6ZSI+IC0gMzMuMiBNQjwvc3Bhbj48c3BhbiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlOjQ6ZmlsZUNyZWF0ZVB1Ymxpc2hEYXRlIj4gLSBNYXIgMTYsIDIwMTg8L3NwYW4+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGVEb3dubG9hZENvdW50Ij4gLSAwIERvd25sb2Fkczwvc3Bhbj48ZGl2IGNsYXNzPSJjaGVja3N1bS1ibG9jayI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZTo0OmZpbGUtY2hlY2tzdW0iPk1ENTogMzhlZTViM2MxMDAxZjRlNjFlZjUyYjgzYjU2N2U4MzE8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8IS0tIFVORiArIFZhcmlhYmxlcywgT2JzZXJzdmF0aW9ucyAtLT48L3RkPjx0ZCByb2xlPSJncmlkY2VsbCIgY2xhc3M9ImNvbC1maWxlLWFjdGlvbiB0ZXh0LXJpZ2h0ICI+PGRpdiBjbGFzcz0iYnRuLWdyb3VwIj4KICAgIAogICAgPCEtLSBDb21wdXRlIEJ1dHRvbiAqRmlsZSBwZyBvbmx5KjogLS0+CiAgICA8IS0tIENvbXB1dGUgQnV0dG9uICpEYXRhc2V0IHBnIG9ubHkqOiAtLT48L2Rpdj48L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjxkaXYgY2xhc3M9InVpLXdpZGdldC1oZWFkZXIgdWktZGF0YXRhYmxlLXNjcm9sbGFibGUtZm9vdGVyIj48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtc2Nyb2xsYWJsZS1mb290ZXItYm94Ij48dGFibGUgcm9sZT0iZ3JpZCI+PC90YWJsZT48L2Rpdj48L2Rpdj48aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3NlbGVjdGlvbiIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3NlbGVjdGlvbiIgYXV0b2NvbXBsZXRlPSJvZmYiIHZhbHVlPSIiIC8+PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZV9zY3JvbGxTdGF0ZSIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpmaWxlc1RhYmxlX3Njcm9sbFN0YXRlIiBhdXRvY29tcGxldGU9Im9mZiIgdmFsdWU9IjAsMCIgLz48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGF0YVRhYmxlIiwiZmlsZXNUYWJsZSIse2lkOiJkYXRhc2V0Rm9ybTp0YWJWaWV3OmZpbGVzVGFibGUiLHNlbGVjdGlvbk1vZGU6ImNoZWNrYm94IixzY3JvbGxhYmxlOnRydWUsbGl2ZVNjcm9sbDp0cnVlLHNjcm9sbFN0ZXA6MjUsc2Nyb2xsTGltaXQ6NSxzY3JvbGxXaWR0aDoiMTAwJSIsc2Nyb2xsSGVpZ2h0OiI5MiUiLGxpdmVTY3JvbGxCdWZmZXI6MH0pO30pOzwvc2NyaXB0PjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6bWV0YWRhdGFNYXBUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj48ZGl2IGNsYXNzPSJidXR0b24tYmxvY2sgdGFiLWhlYWRlciBtYXJnaW4tYm90dG9tIHRleHQtcmlnaHQiPjxkaXYgY2xhc3M9ImJ0bi1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgZHJvcGRvd24tdG9nZ2xlIiB0eXBlPSJidXR0b24iIHN0eWxlQ2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leHBvcnQiPjwvc3Bhbj4gRXhwb3J0IE1ldGFkYXRhIDxzcGFuIGNsYXNzPSJjYXJldCI+PC9zcGFuPjwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IiByb2xlPSJtZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2V4cG9ydGVyPWRjdGVybXMmYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9HQU9DMDMiIHRhcmdldD0iX2JsYW5rIj5EdWJsaW4gQ29yZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2V4cG9ydGVyPWRkaSZhbXA7cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAvRFZOL0dBT0MwMyIgdGFyZ2V0PSJfYmxhbmsiPkRESTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2V4cG9ydGVyPWRhdGF2ZXJzZV9qc29uJmFtcDtwZXJzaXN0ZW50SWQ9ZG9pJTNBMTAuNzkxMC9EVk4vR0FPQzAzIiB0YXJnZXQ9Il9ibGFuayI+SlNPTjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1L2FwaS9kYXRhc2V0cy9leHBvcnQ7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP2V4cG9ydGVyPXNjaGVtYS5vcmcmYW1wO3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwL0RWTi9HQU9DMDMiIHRhcmdldD0iX2JsYW5rIj5TY2hlbWEub3JnIEpTT04tTEQ8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPjwvZGl2PjwvZGl2PgogICAgPCEtLSBWaWV3IE1vZGUgLS0+PGRpdiBjbGFzcz0icGFuZWwtZ3JvdXAiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2UwIiBjbGFzcz0icGFuZWwtaGVhZGluZyB0ZXh0LWluZm8iPgogICAgICAgICAgICAgICAgICAgIENpdGF0aW9uIE1ldGFkYXRhIMKgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tY2hldnJvbi11cCI+PC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlMCIgY2xhc3M9ImNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IG1ldGFkYXRhLXBhbmVsLWJvZHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfcHVibGljYXRpb25EYXRlIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSB1bmlxdWUgcGVyc2lzdGVudCBpZGVudGlmaWVyIGZvciBhIERhdGFzZXQsIHdoaWNoIGNhbiBiZSBhIEhhbmRsZSBvciBET0kgaW4gRGF0YXZlcnNlLiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYXRhc2V0IFBlcnNpc3RlbnQgSUQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2k6MTAuNzkxMC9EVk4vR0FPQzAzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9wdWJsaWNhdGlvbkRhdGUiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIHB1YmxpY2F0aW9uIGRhdGUgb2YgYSBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQdWJsaWNhdGlvbiBEYXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjAxOC0wMy0xNgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfdGl0bGUiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iRnVsbCB0aXRsZSBieSB3aGljaCB0aGUgRGF0YXNldCBpcyBrbm93bi4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGl0bGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+VGhlIE5hdGlvbmFsIExhYm9yIEZvcmNlIDogU0FLRVJOQVMsIDIwMDg8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2F1dGhvciIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgcGVyc29uKHMpLCBjb3Jwb3JhdGUgYm9keShpZXMpLCBvciBhZ2VuY3koaWVzKSByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIHdvcmsuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF1dGhvcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcG91bmQgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+QmFkYW4gUHVzYXQgU3RhdGlzdGlrCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZGF0YXNldENvbnRhY3QiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iVGhlIGNvbnRhY3QocykgZm9yIHRoaXMgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29udGFjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcG91bmQgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFVzZSBlbWFpbCBidXR0b24gYWJvdmUgdG8gY29udGFjdC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5CYWxkaXNzZXJvdHRvLCBKb2huIChIYXJ2YXJkIFVuaXZlcnNpdHkpIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyIC8+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RzRGVzY3JpcHRpb24iIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iQSBzdW1tYXJ5IGRlc2NyaWJpbmcgdGhlIHB1cnBvc2UsIG5hdHVyZSwgYW5kIHNjb3BlIG9mIHRoZSBEYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tcG91bmQgZGF0YXNldEZpZWxkcyAtLT48ZGl2IGNsYXNzPSJjb2wtc20tOSI+TmF0aW9uYWwgbGFib3IgZm9yY2Ugc3VydmV5IGluIEluZG9uZXNpYS4gU3VydmVpIGFuZ2thdGFuIGtlcmphIG5hc2lvbmFsLiAyMDA4CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfc3ViamVjdCIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJEb21haW4tc3BlY2lmaWMgU3ViamVjdCBDYXRlZ29yaWVzIHRoYXQgYXJlIHRvcGljYWxseSByZWxldmFudCB0byB0aGUgRGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3ViamVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFByaW1pdGl2ZSBkYXRhc2V0RmllbGRzIC0tPjxkaXYgY2xhc3M9ImNvbC1zbS05Ij5Tb2NpYWwgU2NpZW5jZXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2tleXdvcmQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iS2V5IHRlcm1zIHRoYXQgZGVzY3JpYmUgaW1wb3J0YW50IGFzcGVjdHMgb2YgdGhlIERhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtleXdvcmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBQcmltaXRpdmUgZGF0YXNldEZpZWxkcyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPkxhYm9yIFN1cHBseSwgSW5kb25lc2lhLCBTdGF0aXN0aWNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfZGVwb3NpdG9yIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlRoZSBwZXJzb24gKEZhbWlseSBOYW1lLCBHaXZlbiBOYW1lKSBvciB0aGUgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uIHRoYXQgZGVwb3NpdGVkIHRoaXMgRGF0YXNldCB0byB0aGUgcmVwb3NpdG9yeS4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVwb3NpdG9yCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHJpbWl0aXZlIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPkJhbGRpc3Nlcm90dG8sIEpvaG48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX2RhdGVPZkRlcG9zaXQiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iRGF0ZSB0aGF0IHRoZSBEYXRhc2V0IHdhcyBkZXBvc2l0ZWQgaW50byB0aGUgcmVwb3NpdG9yeS4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVwb3NpdCBEYXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gUHJpbWl0aXZlIGRhdGFzZXRGaWVsZHMgLS0+PGRpdiBjbGFzcz0iY29sLXNtLTkiPjIwMTgtMDMtMDk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIENvbXBvdW5kIGRhdGFzZXRGaWVsZHMgLS0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgIDwhLS0gRWRpdCBNb2RlIC0tPjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dGVybXNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KPCEtLSBURVJNUyAtLT4KICAgIDxkaXYgY2xhc3M9InBhbmVsLWdyb3VwIj4KICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2VUT1UiIGNsYXNzPSJwYW5lbC1oZWFkaW5nIHRleHQtaW5mbyI+CiAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZSDCoDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWNoZXZyb24tdXAiPjwvc3Bhbj4KICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlVE9VIiBjbGFzcz0iY29sbGFwc2UgaW4iPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dG91RnJhZ21lbnQiPgogICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSI+CiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgd2FpdmVyIGluZm9ybXMgZGF0YSBkb3dubG9hZGVycyBob3cgdGhleSBjYW4gdXNlIHRoaXMgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdhaXZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPk91ciA8YSBocmVmPSJodHRwOi8vYmVzdC1wcmFjdGljZXMuZGF0YXZlcnNlLm9yZy9oYXJ2YXJkLXBvbGljaWVzL2NvbW11bml0eS1ub3Jtcy5odG1sIiB0aXRsZT0iRGF0YXZlcnNlIENvbW11bml0eSBOb3JtcyAtIERhdGF2ZXJzZSBCZXN0IFByYWN0aWNlcyIgdGFyZ2V0PSJfYmxhbmsiPkNvbW11bml0eSBOb3JtczwvYT4gYXMgd2VsbCBhcyBnb29kIHNjaWVudGlmaWMgcHJhY3RpY2VzIGV4cGVjdCB0aGF0IHByb3BlciBjcmVkaXQgaXMgZ2l2ZW4gdmlhIGNpdGF0aW9uLiBQbGVhc2UgdXNlIHRoZSBkYXRhIGNpdGF0aW9uIGFib3ZlLCBnZW5lcmF0ZWQgYnkgdGhlIERhdGF2ZXJzZS4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+Tm8gd2FpdmVyIGhhcyBiZWVuIHNlbGVjdGVkIGZvciB0aGlzIGRhdGFzZXQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfVGVybXNVc2UiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9Ik91dGxpbmVzIGhvdyB0aGlzIGRhdGEgY2FuIGJlIHVzZWQgb25jZSBkb3dubG9hZGVkLiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgVXNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij5MaWNlbnNlZCBlbGVjdHJvbmljIHJlc291cmNlcyBhcmUgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gVW5kZXIgSGFydmFyZCdzIGxpY2Vuc2VzIGZvciBlbGVjdHJvbmljIHJlc291cmNlcywgdXNlcnMgZ2VuZXJhbGx5IG1heSBub3Q6IHBlcm1pdCBhbnlvbmUgb3RoZXIgdGhhbiBhdXRob3JpemVkIHVzZXJzIHRvIHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyBtb2RpZnkgb3IgY3JlYXRlIGEgZGVyaXZhdGl2ZSB3b3JrIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgd2l0aG91dCB0aGUgcGVybWlzc2lvbiBvZiB0aGUgbGljZW5zb3I7IHJlbW92ZSwgb2JzY3VyZSBvciBtb2RpZnkgYW55IGNvcHlyaWdodCBvciBvdGhlciBub3RpY2VzIGluY2x1ZGVkIGluIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIGZvciBjb21tZXJjaWFsIHB1cnBvc2VzLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHRoZSBzYWxlIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMuIFVzZXJzIGFyZSBpbmRpdmlkdWFsbHkgcmVzcG9uc2libGUgZm9yIGNvbXBsaWFuY2Ugd2l0aCB0aGVzZSB0ZXJtcy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgIDwhLS0gQWRkaXRpb25hbCBJbmZvcm1hdGlvbgogICAgICAgICAgICAgICAgICAgICAgICZsdDt1aTpmcmFnbWVudCByZW5kZXJlZD0iIyB7IWVtcHR5IGVkaXRNb2RlIG9yIGVtcHR5IGVkaXRNb2RlIGFuZCAoIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuY29uZmlkZW50aWFsaXR5RGVjbGFyYXRpb24gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3Muc3BlY2lhbFBlcm1pc3Npb25zIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLnJlc3RyaWN0aW9ucyBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5jaXRhdGlvblJlcXVpcmVtZW50cyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5kZXBvc2l0b3JSZXF1aXJlbWVudHMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5jb25kaXRpb25zIG9yICFlbXB0eSB0ZXJtc09mVXNlQW5kQWNjZXNzLmRpc2NsYWltZXIpfSImZ3Q7IC0tPgogICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgIDwhLS0gJmx0Oy91aTpmcmFnbWVudCZndDsKICAgICAgICAgICAgICAgICAgICAgICBFTkQ6IEFkZGl0aW9uYWwgSW5mb3JtYXRpb24gLS0+CiAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj4KICAgICAgICAgICA8L2Rpdj4KICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgIDxkaXYgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI3BhbmVsQ29sbGFwc2VUT0EiIGNsYXNzPSJwYW5lbC1oZWFkaW5nIHRleHQtaW5mbyI+UmVzdHJpY3RlZCBGaWxlcyArIFRlcm1zIG9mIEFjY2VzcwogICAgICAgICAgICAgICDCoDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWNoZXZyb24tdXAiPjwvc3Bhbj4KICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8ZGl2IGlkPSJwYW5lbENvbGxhcHNlVE9BIiBjbGFzcz0iY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5Ij48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfUmVzdHJpY3RlZEZpbGVzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJUaGUgbnVtYmVyIG9mIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVzdHJpY3RlZCBGaWxlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGVyZSBhcmUgNSByZXN0cmljdGVkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zQWNjZXNzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJbmZvcm1hdGlvbiBvbiBob3cgYW5kIGlmIHVzZXJzIGNhbiBnYWluIGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhpcyBkYXRhc2V0IGlzIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIEhhcnZhcmQgYWZmaWxpYXRlcyBtYXkgYWNjZXNzIHRoZSBkYXRhIGJ5IGxvZ2dpbmcgaW50byB0aGlzIHN5c3RlbSB2aWEgdGhlIGluc3RpdHV0aW9uYWwgbG9naW4gYW5kIHNlbGVjdGluZyBIYXJ2YXJkIFVuaXZlcnNpdHkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfUmVxdWVzdEFjY2VzcyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10b2dnbGU9InRvb2x0aXAiIGRhdGEtcGxhY2VtZW50PSJhdXRvIHJpZ2h0IiBjbGFzcz0idG9vbHRpcGxhYmVsIHRleHQtaW5mbyIgZGF0YS1vcmlnaW5hbC10aXRsZT0iSWYgY2hlY2tlZCwgdXNlcnMgY2FuIHJlcXVlc3QgYWNjZXNzIHRvIHRoZSByZXN0cmljdGVkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlcXVlc3QgQWNjZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlVzZXJzIG1heSBub3QgcmVxdWVzdCBhY2Nlc3MgdG8gZmlsZXMuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgoKICAgICAgICAgICAgICAgICAgIDwhLS0gQWRkaXRpb25hbCBJbmZvcm1hdGlvbgogICAgICAgICAgICAgICAgICAgJmx0O3VpOmZyYWdtZW50IHJlbmRlcmVkPSIjIHshZW1wdHkgZWRpdE1vZGUgb3IgZW1wdHkgZWRpdE1vZGUgYW5kICghZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5kYXRhQWNjZXNzUGxhY2UgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5vcmlnaW5hbEFyY2hpdmUgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuYXZhaWxhYmlsaXR5U3RhdHVzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3MuY29udGFjdEZvckFjY2VzcyBvciAhZW1wdHkgdGVybXNPZlVzZUFuZEFjY2Vzcy5zaXplT2ZDb2xsZWN0aW9uIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgIWVtcHR5IHRlcm1zT2ZVc2VBbmRBY2Nlc3Muc3R1ZHlDb21wbGV0aW9uKX0iJmd0OyAtLT4KICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgIDwhLS0gJmx0Oy91aTpmcmFnbWVudCZndDsKICAgICAgICAgICAgICAgICAgIEVORDogQWRkaXRpb25hbCBJbmZvcm1hdGlvbiAtLT4KICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgPGRpdiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjcGFuZWxDb2xsYXBzZUd1ZXN0Ym9vayIgY2xhc3M9InBhbmVsLWhlYWRpbmcgdGV4dC1pbmZvIj4KICAgICAgICAgICAgICAgR3Vlc3Rib29rIMKgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tY2hldnJvbi11cCI+PC9zcGFuPgogICAgICAgICAgIDwvZGl2PgogICAgICAgICAgIDxkaXYgaWQ9InBhbmVsQ29sbGFwc2VHdWVzdGJvb2siIGNsYXNzPSJjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkiPgogICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0ibWV0YWRhdGFfR3Vlc3Rib29rIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlVzZXIgaW5mb3JtYXRpb24gKGkuZS4sIG5hbWUsIGVtYWlsLCBpbnN0aXR1dGlvbiwgYW5kIHBvc2l0aW9uKSB3aWxsIGJlIGNvbGxlY3RlZCB3aGVuIGZpbGVzIGFyZSBkb3dubG9hZGVkLiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHdWVzdGJvb2sKICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIGd1ZXN0Ym9vayBpcyBhc3NpZ25lZCB0byB0aGlzIGRhdGFzZXQsIHlvdSB3aWxsIG5vdCBiZSBwcm9tcHRlZCB0byBwcm92aWRlIGFueSBpbmZvcm1hdGlvbiBvbiBmaWxlIGRvd25sb2FkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICA8L2Rpdj48L2Rpdj4gCiAgICA8L2Rpdj4KICAgIDwhLS0gLyBURVJNUyAtLT4KCiAgICA8IS0tIFByZXZpZXcgR3Vlc3Rib29rIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9vayIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9va190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHJldmlldyBHdWVzdGJvb2s8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgIFVwb24gZG93bmxvYWRpbmcgZmlsZXMgdGhlIGd1ZXN0Ym9vayBhc2tzIGZvciB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uLgogICAgICAgICAgICA8L3A+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj4KICAgICAgICAgICAgICAgICAgICBHdWVzdGJvb2sgTmFtZQogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZm9ybS1jb250cm9sLXN0YXRpYyI+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiBkYXRhLXBsYWNlbWVudD0iYXV0byByaWdodCIgY2xhc3M9InRvb2x0aXBsYWJlbCB0ZXh0LWluZm8iIGRhdGEtb3JpZ2luYWwtdGl0bGU9IlVzZXIgZGF0YSBjb2xsZWN0ZWQgYnkgdGhlIGd1ZXN0Ym9vay4iPgogICAgICAgICAgICAgICAgICAgICAgIENvbGxlY3RlZCBEYXRhCiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iZm9ybS1jb250cm9sLXN0YXRpYyI+QWNjb3VudCBJbmZvcm1hdGlvbgogICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSJQRigndmlld0d1ZXN0Ym9vaycpLmhpZGUoKSIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgdmFsdWU9IkNsb3NlIj4KICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9va19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJ2aWV3R3Vlc3Rib29rIix7aWQ6ImRhdGFzZXRGb3JtOnRhYlZpZXc6cHJldmlld0d1ZXN0Ym9vayIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PgogICAgPCEtLSAvIFByZXZpZXcgR3Vlc3Rib29rIC0tPjwvZGl2PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWIiIGNsYXNzPSJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20gdWktaGVscGVyLWhpZGRlbiIgcm9sZT0idGFicGFuZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KPCEtLSBWRVJTSU9OUyAtLT4KICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgLyogVmVyc2lvbiB0YWI6IFJldHJpZXZlIGRhdGEgYWZ0ZXIgcGFnZSBsb2FkICovCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICBwcmVsb2FkX21lc3NhZ2UgPSAiKExvYWRpbmcgdmVyc2lvbnMuLi4pIjsKICAgICAgICAgICAgJCgnI2RhdGFzZXRGb3JtXFw6dGFiVmlld1xcOnZlcnNpb25zVGFibGVfZGF0YSB0ci51aS1kYXRhdGFibGUtZW1wdHktbWVzc2FnZSB0ZCcpLnRleHQocHJlbG9hZF9tZXNzYWdlKTsKICAgICAgICAgICAgcG9zdExvYWRWZXJzaW9uVGFiTGlzdCgpOwogICAgICAgfSk7CiAgIDwvc2NyaXB0PgogICA8IS0tIFJldHJpZXZlIHZlcnNpb24gZGlmZmVyZW5jZXMgYWZ0ZXIgdGhlIHBhZ2UgbG9hZCAtLT48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cG9zdExvYWRWZXJzaW9uVGFiTGlzdCA9IGZ1bmN0aW9uKCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnRhYlZpZXc6al9pZHQxMjc1IixmOiJkYXRhc2V0Rm9ybSIscDoiZGF0YXNldEZvcm06dGFiVmlldzpqX2lkdDEyNzUiLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZSIscGE6YXJndW1lbnRzWzBdfSk7fTwvc2NyaXB0PgogICAgPGRpdiBjbGFzcz0idGV4dC1yaWdodCBtYXJnaW4tYm90dG9tIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9ucyIgbmFtZT0iZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6Y29tcGFyZVZlcnNpb25zJnF1b3Q7LHU6JnF1b3Q7ZGF0YXNldEZvcm0mcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdkZXRhaWxzQmxvY2tzJykuc2hvdygpO3Bvc3RfZGlmZmVyZW5jZXMoKTs7fX0pO3JldHVybiBmYWxzZTsiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkRpcmVjdDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OmNvbXBhcmVWZXJzaW9uc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fdGFiVmlld19jb21wYXJlVmVyc2lvbnMiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzpjb21wYXJlVmVyc2lvbnMifSk7PC9zY3JpcHQ+CiAgICA8L2Rpdj48ZGl2IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGUiIGNsYXNzPSJ1aS1kYXRhdGFibGUgdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1kYXRhdGFibGUtdGFibGV3cmFwcGVyIj48dGFibGUgcm9sZT0iZ3JpZCI+PHRoZWFkIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGVfaGVhZCI+PHRyIHJvbGU9InJvdyI+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMjgzIiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMSB0ZXh0LWNlbnRlciIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5EYXRhc2V0PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMjk2IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5TdW1tYXJ5PC9zcGFuPjwvdGg+PHRoIGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3OnZlcnNpb25zVGFibGU6al9pZHQxMzM5IiBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCBjb2wtc20tMyIgcm9sZT0iY29sdW1uaGVhZGVyIj48c3BhbiBjbGFzcz0idWktY29sdW1uLXRpdGxlIj5Db250cmlidXRvcnM8L3NwYW4+PC90aD48dGggaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZTpqX2lkdDEzNDMiIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNvbC1zbS0yIiByb2xlPSJjb2x1bW5oZWFkZXIiPjxzcGFuIGNsYXNzPSJ1aS1jb2x1bW4tdGl0bGUiPlB1Ymxpc2hlZDwvc3Bhbj48L3RoPjwvdHI+PC90aGVhZD48dGJvZHkgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXc6dmVyc2lvbnNUYWJsZV9kYXRhIiBjbGFzcz0idWktZGF0YXRhYmxlLWRhdGEgdWktd2lkZ2V0LWNvbnRlbnQiPjx0ciBjbGFzcz0idWktd2lkZ2V0LWNvbnRlbnQgdWktZGF0YXRhYmxlLWVtcHR5LW1lc3NhZ2UiPjx0ZCBjb2xzcGFuPSI0Ij5ObyByZWNvcmRzIGZvdW5kLjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRhdGFUYWJsZSIsInZlcnNpb25zVGFibGUiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldzp2ZXJzaW9uc1RhYmxlIn0pO30pOzwvc2NyaXB0Pgo8IS0tIC8gVkVSU0lPTlMgLS0+PC9kaXY+PC9kaXY+PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImRhdGFzZXRGb3JtOnRhYlZpZXdfYWN0aXZlSW5kZXgiIG5hbWU9ImRhdGFzZXRGb3JtOnRhYlZpZXdfYWN0aXZlSW5kZXgiIHZhbHVlPSIwIiBhdXRvY29tcGxldGU9Im9mZiIgLz48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTp0YWJWaWV3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiVGFiVmlldyIsImNvbnRlbnQiLHtpZDoiZGF0YXNldEZvcm06dGFiVmlldyIsZWZmZWN0RHVyYXRpb246Im5vcm1hbCIsc2Nyb2xsYWJsZTpmYWxzZSxiZWhhdmlvcnM6e3RhYkNoYW5nZTpmdW5jdGlvbihleHQsZXZlbnQpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTp0YWJWaWV3IixlOiJ0YWJDaGFuZ2UiLHA6ImRhdGFzZXRGb3JtOnRhYlZpZXciLHU6ImRhdGFzZXRGb3JtOnRhYlZpZXciLG9uY286ZnVuY3Rpb24oeGhyLHN0YXR1cyxhcmdzKXtiaW5kX2JzdWlfY29tcG9uZW50cygpOzt9fSxleHQpO319fSk7PC9zY3JpcHQ+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQgVmlldy9UYWJzIGluZm9Nb2RlIC0tPgoKICAgICAgICAgICAgICAgICAgICA8IS0tIENyZWF0ZSBNZXRhZGF0YSBUaXAgLS0+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gQ3JlYXRlL1NhdmUgRGF0YXNldCBCdXR0b24gUGFuZWwgLS0+CiAgICAgICAgICAgICAgICAgICAgPCEtLSBFTkQ6IENyZWF0ZS9TYXZlIERhdGFzZXQgQnV0dG9uIFBhbmVsIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM1NCIgY2xhc3M9InVpLWJsb2NrdWktY29udGVudCB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1oZWxwZXItaGlkZGVuIHVpLXNoYWRvdyI+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzU0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkJsb2NrVUkiLCJibG9ja0RhdGFzZXRGb3JtIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM1NCIsYmxvY2s6ImRhdGFzZXRGb3JtIn0pO30pOzwvc2NyaXB0PgoKICAgICAgICAgICAgICAgICAgICA8IS0tIFBvcHVwcyAtLT48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTYiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNTZfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlJlc3RyaWN0ZWQgRmlsZXMgU2VsZWN0ZWQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gVGhlIHJlc3RyaWN0ZWQgZmlsZShzKSBzZWxlY3RlZCBtYXkgbm90IGJlIGRvd25sb2FkZWQgYmVjYXVzZSB5b3UgaGF2ZSBub3QgYmVlbiBncmFudGVkIGFjY2Vzcy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzYxIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNjEiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZG93bmxvYWRJbnZhbGlkJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNjFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM2MSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNjEifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM1Nl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZEludmFsaWQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzU2Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzYzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzYzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXN0cmljdGVkIEZpbGVzIFNlbGVjdGVkPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFRoZSByZXN0cmljdGVkIGZpbGUocykgc2VsZWN0ZWQgbWF5IG5vdCBiZSBkb3dubG9hZGVkIGJlY2F1c2UgeW91IGhhdmUgbm90IGJlZW4gZ3JhbnRlZCBhY2Nlc3MuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8dGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IENsaWNrIENvbnRpbnVlIHRvIGRvd25sb2FkIHRoZSBmaWxlcyB5b3UgaGF2ZSBhY2Nlc3MgdG8gZG93bmxvYWQuPC9wPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3MSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzcxIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2Rvd25sb2FkTWl4ZWQnKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDEzNzEmcXVvdDssdTomcXVvdDtkYXRhc2V0Rm9ybSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3MV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMzcxIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM3MSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTM3MiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkb3dubG9hZE1peGVkJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzJfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM3MiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNzIifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM2M19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZE1peGVkIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM2MyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3NCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3NF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RGVsZXRlIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGRhdGFzZXQ/IFlvdSBjYW5ub3QgdW5kZWxldGUgdGhpcyBkYXRhc2V0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzYiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTM3NiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVDb25maXJtYXRpb24nKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDEzNzYmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Db250aW51ZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM3NiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNzYifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGVsZXRlQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzNzdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTM3NyIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDEzNzcifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM3NF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWxldGVDb25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzc0Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc5IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc5X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWxldGUgRHJhZnQgVmVyc2lvbjwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZHJhZnQgdmVyc2lvbj8gWW91IGNhbm5vdCB1bmRlbGV0ZSB0aGlzIGRyYWZ0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDEzODEiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTM4MSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVWZXJzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpO1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxMzgxJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzgxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDEzODEiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzgxIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM4MiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxMzgyIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZVZlcnNpb25Db25maXJtYXRpb24nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTM4Ml9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxMzgyIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTM4MiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxMzc5X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlbGV0ZVZlcnNpb25Db25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06al9pZHQxMzc5Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cHJpdmF0ZVVybElkIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06cHJpdmF0ZVVybElkX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5VbnB1Ymxpc2hlZCBEYXRhc2V0IFByaXZhdGUgVVJMPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsUGFuZWxDYW5ub3RDcmVhdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFByaXZhdGUgVVJMIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCB1bnB1Ymxpc2hlZCB2ZXJzaW9ucyBvZiBkYXRhc2V0cy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwMSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDAxIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdwcml2YXRlVXJsQ29uZmlybWF0aW9uJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTQwMSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE0MDEifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicHJpdmF0ZVVybENvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpwcml2YXRlVXJsSWQiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDMiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDNfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlVucHVibGlzaGVkIERhdGFzZXQgUHJpdmF0ZSBVUkw8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRpc2FibGUgdGhlIFByaXZhdGUgVVJMPyBJZiB5b3UgaGF2ZSBzaGFyZWQgdGhlIFByaXZhdGUgVVJMIHdpdGggb3RoZXJzIHRoZXkgd2lsbCBubyBsb25nZXIgYmUgYWJsZSB0byB1c2UgaXQgdG8gYWNjZXNzIHlvdXIgdW5wdWJsaXNoZWQgZGF0YXNldC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2Rpc2FibGVQcml2YXRlVXJsQ29uZmlybWF0aW9uJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTQwNSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOnByaXZhdGVVcmxQYW5lbCBtZXNzYWdlUGFuZWwmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5ZZXMsIERpc2FibGUgUHJpdmF0ZSBVUkw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0MDUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDA1In0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQwNiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDA2IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdkaXNhYmxlUHJpdmF0ZVVybENvbmZpcm1hdGlvbicpLmhpZGUoKTtQRigncHJpdmF0ZVVybENvbmZpcm1hdGlvbicpLnNob3coKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0MDYiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDA2In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MDNfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZGlzYWJsZVByaXZhdGVVcmxDb25maXJtYXRpb24iLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDAzIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA4IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA4X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWxldGUgRmlsZXM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gVGhlIGZpbGUocykgd2lsbCBiZSBkZWxldGVkIGFmdGVyIHlvdSBjbGljayBvbiB0aGUgRGVsZXRlIGJ1dHRvbi48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj4gRmlsZXMgd2lsbCBub3QgYmUgcmVtb3ZlZCBmcm9tIHByZXZpb3VzbHkgcHVibGlzaGVkIHZlcnNpb25zIG9mIHRoZSBkYXRhc2V0LjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTMiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQxMyIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdkZWxldGVTZWxlY3RlZEZpbGVDb25maXJtYXRpb24nKS5oaWRlKCk7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE0MTMmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5EZWxldGU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDEzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0MTMiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDEzIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxNCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDE0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbicpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxNF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDE0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQxNCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDA4X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlbGV0ZVNlbGVjdGVkRmlsZUNvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE0MDgiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTYiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MTZfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRhdGFzZXQgQ29tcHV0ZSBOb3QgU3VwcG9ydGVkPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFlvdSBjYW5ub3QgY29tcHV0ZSBvbiB0aGlzIGRhdGFzZXQgYmVjYXVzZSB0aGlzIGZ1bmN0aW9uYWxpdHkgaXMgbm90IGVuYWJsZWQgeWV0LiBQbGVhc2UgY2xpY2sgb24gYSBmaWxlIHRvIGFjY2VzcyBjb21wdXRpbmcgZmVhdHVyZXMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxOCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDE4IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2RhdGFzZXRDb21wdXRlQWNjZXNzRGVuaWVkUG9wdXAnKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQxOF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNDE4Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTQxOCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDE2X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRhdGFzZXRDb21wdXRlQWNjZXNzRGVuaWVkUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDE2Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25CbG9jayIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkJsb2NrX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWFjY2Vzc2lvbiBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IE9uY2UgeW91IGRlYWNjZXNzaW9uIHRoaXMgZGF0YXNldCBpdCB3aWxsIG5vIGxvbmdlciBiZSB2aWV3YWJsZSBieSB0aGUgcHVibGljLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJyZWFzb25PcHRpb25zIj5XaGF0IGlzIHRoZSByZWFzb24gZm9yIGRlYWNjZXNzaW9uPyA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD48c2VsZWN0IGlkPSJkYXRhc2V0Rm9ybTpyZWFzb25PcHRpb25zIiBuYW1lPSJkYXRhc2V0Rm9ybTpyZWFzb25PcHRpb25zIiBjbGFzcz0iZm9ybS1jb250cm9sIiBzaXplPSIxIj4JPG9wdGlvbiB2YWx1ZT0iMCIgc2VsZWN0ZWQ9InNlbGVjdGVkIj5TZWxlY3QuLi48L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjEiPlRoZXJlIGlzIGlkZW50aWZpYWJsZSBkYXRhIGluIG9uZSBvciBtb3JlIGZpbGVzPC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSIyIj5UaGUgcmVzZWFyY2ggYXJ0aWNsZSBoYXMgYmVlbiByZXRyYWN0ZWQ8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjMiPlRoZSBkYXRhc2V0IGhhcyBiZWVuIHRyYW5zZmVycmVkIHRvIGFub3RoZXIgcmVwb3NpdG9yeTwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iNCI+SVJCIHJlcXVlc3Q8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9IjUiPkxlZ2FsIGlzc3VlIG9yIERhdGEgVXNhZ2UgQWdyZWVtZW50PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSI2Ij5Ob3QgYSB2YWxpZCBkYXRhc2V0PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSI3Ij5PdGhlciAoUGxlYXNlIHR5cGUgcmVhc29uIGluIHNwYWNlIHByb3ZpZGVkIGJlbG93KTwvb3B0aW9uPgo8L3NlbGVjdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj0icmVhc29uRm9yRGVhY2Nlc3Npb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBsZWFzZSBlbnRlciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSByZWFzb24gZm9yIGRlYWNjZXNzaW9uLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD48dGV4dGFyZWEgaWQ9ImRhdGFzZXRGb3JtOnJlYXNvbkZvckRlYWNjZXNzaW9uIiBuYW1lPSJkYXRhc2V0Rm9ybTpyZWFzb25Gb3JEZWFjY2Vzc2lvbiIgY29scz0iNDAiIHJvd3M9IjIiIG1heGxlbmd0aD0iMjE0NzQ4MzY0NyIgb25rZXl1cD0idXBkYXRlSGlkZGVuUmVhc29uKHRoaXMpOyIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0YXJlYSB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIGZvcm0tY29udHJvbCI+PC90ZXh0YXJlYT48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZWFzb25Gb3JEZWFjY2Vzc2lvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJJbnB1dFRleHRhcmVhIiwicmVhc29uRm9yRGVhY2Nlc3Npb24iLHtpZDoiZGF0YXNldEZvcm06cmVhc29uRm9yRGVhY2Nlc3Npb24iLGF1dG9SZXNpemU6ZmFsc2V9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE0MzYiIGFyaWEtbGl2ZT0icG9saXRlIiBjbGFzcz0idWktbWVzc2FnZSI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9ImZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgYXBwbGljYWJsZSwgcGxlYXNlIGxlYXZlIGEgVVJMIHdoZXJlIHRoaXMgZGF0YXNldCBjYW4gYmUgYWNjZXNzZWQgYWZ0ZXIgZGVhY2Nlc3Npb25pbmcuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xhYmVsPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06Zm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIiBuYW1lPSJkYXRhc2V0Rm9ybTpmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24iIHR5cGU9InRleHQiIHZhbHVlPSIiIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dCB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIGZvcm0tY29udHJvbCIgLz48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJmb3J3YXJkVVJMRm9yRGVhY2Nlc3Npb24iLHtpZDoiZGF0YXNldEZvcm06Zm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIn0pOzwvc2NyaXB0PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOndhdGVybWFya19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJXYXRlcm1hcmsiLCJ3aWRnZXRfZGF0YXNldEZvcm1fd2F0ZXJtYXJrIix7aWQ6ImRhdGFzZXRGb3JtOndhdGVybWFyayIsdmFsdWU6Ik9wdGlvbmFsIGRhdGFzZXQgc2l0ZSwgaHR0cDpcL1wvLi4uIix0YXJnZXQ6ImRhdGFzZXRGb3JtOmZvcndhcmRVUkxGb3JEZWFjY2Vzc2lvbiJ9LCJ3YXRlcm1hcmsiKTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQ0MSIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdkZWFjY2Vzc2lvbkJsb2NrJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTQ0MSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9ImJ1dHRvbiI+Q2FuY2VsPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkJsb2NrX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlYWNjZXNzaW9uQmxvY2siLHtpZDoiZGF0YXNldEZvcm06ZGVhY2Nlc3Npb25CbG9jayIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQ29uZmlybWF0aW9uX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWFjY2Vzc2lvbiBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWFjY2Vzc2lvbj8gVGhlIHNlbGVjdGVkIHZlcnNpb24ocykgd2lsbCBubyBsb25nZXIgYmUgdmlld2FibGUgYnkgdGhlIHB1YmxpYy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDQ0IiB2YWx1ZT0iWWVzIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZGVhY2Nlc3Npb25Db25maXJtYXRpb24nKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZWFjY2Vzc2lvbkJsb2NrJykuaGlkZSgpIiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHZhbHVlPSJObyIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQ29uZmlybWF0aW9uJykuaGlkZSgpIj5ObzwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbiIse2lkOiJkYXRhc2V0Rm9ybTpkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbiIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5EZWFjY2Vzc2lvbiBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWFjY2Vzc2lvbiB0aGlzIGRhdGFzZXQ/IEl0IHdpbGwgbm8gbG9uZ2VyIGJlIHZpZXdhYmxlIGJ5IHRoZSBwdWJsaWMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTQ0NyIgdmFsdWU9IlllcyIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVhY2Nlc3Npb25CbG9jaycpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIHZhbHVlPSJObyIgb25jbGljaz0iUEYoJ2RlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uJykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiPk5vPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uIix7aWQ6ImRhdGFzZXRGb3JtOmRlYWNjZXNzaW9uQWxsQ29uZmlybWF0aW9uIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25WZXJzaW9uX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJzZWxlY3REZWFjY2Vzc2lvblZlcnNpb24iLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25WZXJzaW9uIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uVmVyc2lvbiIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlBsZWFzZSBTZWxlY3QgVmVyc2lvbihzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5QbGVhc2Ugc2VsZWN0IHZlcnNpb24ocykgZm9yIGRlYWNjZXNzaW9uaW5nLjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RGVhY2Nlc3Npb25SZWFzb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsInNlbGVjdERlYWNjZXNzaW9uUmVhc29uIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uUmVhc29uIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdERlYWNjZXNzaW9uUmVhc29uIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UGxlYXNlIFNlbGVjdCBSZWFzb248L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+UGxlYXNlIHNlbGVjdCByZWFzb24gZm9yIGRlYWNjZXNzaW9uaW5nLjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctYnV0dG9ucGFuZSB1aS1kaWFsb2ctZm9vdGVyIHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCI+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZW50ZXJGb3J3YXJkVXJsX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJlbnRlckZvcndhcmRVcmwiLHtpZDoiZGF0YXNldEZvcm06ZW50ZXJGb3J3YXJkVXJsIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmVudGVyRm9yd2FyZFVybCIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkludmFsaWQgVVJMPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWFsZXJ0IHVpLWNvbmZpcm0tZGlhbG9nLXNldmVyaXR5Ij48L3NwYW4+PHNwYW4gY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nLW1lc3NhZ2UiPlBsZWFzZSBlbnRlciB2YWxpZCBmb3J3YXJkaW5nIFVSTC48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmVudGVyT3RoZXJSZWFzb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsImVudGVyT3RoZXJSZWFzb24iLHtpZDoiZGF0YXNldEZvcm06ZW50ZXJPdGhlclJlYXNvbiJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTplbnRlck90aGVyUmVhc29uIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+RW50ZXIgYWRkaXRpb25hbCBpbmZvcm1hdGlvbjwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5QbGVhc2UgZW50ZXIgdGV4dCBmb3IgcmVhc29uIGZvciBkZWFjY2Vzc2lvbmluZy48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktZGlhbG9nLWZvb3RlciB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiPjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlYXNvblRvb01hbnlDaGFyYWN0ZXJzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkNvbmZpcm1EaWFsb2ciLCJyZWFzb25Ub29NYW55Q2hhcmFjdGVycyIse2lkOiJkYXRhc2V0Rm9ybTpyZWFzb25Ub29NYW55Q2hhcmFjdGVycyJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpyZWFzb25Ub29NYW55Q2hhcmFjdGVycyIgY2xhc3M9InVpLWNvbmZpcm0tZGlhbG9nIHVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkxpbWl0IDEwMDAgY2hhcmFjdGVyczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1hbGVydCB1aS1jb25maXJtLWRpYWxvZy1zZXZlcml0eSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ1aS1jb25maXJtLWRpYWxvZy1tZXNzYWdlIj5UZXh0IGZvciByZWFzb24gZm9yIGRlYWNjZXNzaW9uaW5nIG1heSBiZSBubyBsb25nZXIgdGhhbiAxMDAwIGNoYXJhY3RlcnMuPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOmhpZGRlblJlYXNvbklucHV0IiBuYW1lPSJkYXRhc2V0Rm9ybTpoaWRkZW5SZWFzb25JbnB1dCIgdHlwZT0idGV4dCIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiIC8+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06aGlkZGVuUmVhc29uSW5wdXRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJoaWRkZW5SZWFzb25JbnB1dCIse2lkOiJkYXRhc2V0Rm9ybTpoaWRkZW5SZWFzb25JbnB1dCJ9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmNvbXBhcmVUd29fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlZlcnNpb24gRGlmZmVyZW5jZXMgRGV0YWlsczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj4gPHNwYW4gY2xhc3M9InRleHQtZGFuZ2VyIj5QbGVhc2Ugc2VsZWN0IHR3byB2ZXJzaW9ucyB0byB2aWV3IHRoZSBkaWZmZXJlbmNlcy48L3NwYW4+PC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTQ1MCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNDUwIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2NvbXBhcmVUd28nKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNDUwX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE0NTAiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNDUwIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpjb21wYXJlVHdvX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImNvbXBhcmVUd28iLHtpZDoiZGF0YXNldEZvcm06Y29tcGFyZVR3byIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3MiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgbGFyZ2VQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpkZXRhaWxzQmxvY2tzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5WZXJzaW9uIERpZmZlcmVuY2VzIERldGFpbHM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ2ZXJzaW9uLXRpdGxlIiBjbGFzcz0ibWFyZ2luLWJvdHRvbS1oYWxmIj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0idmVyc2lvbi1kZXRhaWxzLWJsb2NrIiBjbGFzcz0iIGNsZWFyZml4IG1hcmdpbi1ib3R0b20taGFsZiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwdWxsLWxlZnQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMKgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InB1bGwtbGVmdCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbjogPGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGFzdCBVcGRhdGVkOiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHVsbC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uOiA8YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXN0IFVwZGF0ZWQ6IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2sgbWFyZ2luLWJvdHRvbSI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTI3IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MjciIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignZGV0YWlsc0Jsb2NrcycpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5Eb25lPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUyN19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTI3Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUyNyJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZGV0YWlsc0Jsb2Nrc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkZXRhaWxzQmxvY2tzIix7aWQ6ImRhdGFzZXRGb3JtOmRldGFpbHNCbG9ja3MiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRvd25sb2FkIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEb3dubG9hZF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCBhIGZpbGUgb3IgZmlsZXMgdG8gYmUgZG93bmxvYWRlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTMwIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzAiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JEb3dubG9hZCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE1MzAmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DbG9zZTwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTUzMCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE1MzAifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRG93bmxvYWRfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JEb3dubG9hZCIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckRvd25sb2FkIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyBmb3IgYWNjZXNzIHJlcXVlc3QuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzMyIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTMzIiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2VzcycpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7O1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNTMzJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNTMzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE1MzMiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNTMzIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlcXVlc3RBY2Nlc3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JSZXF1ZXN0QWNjZXNzIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVxdWVzdEFjY2VzcyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRGVsZXRlIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGVfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgYSBmaWxlIG9yIGZpbGVzIHRvIGJlIGRlbGV0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzNiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTM2IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yRGVsZXRlJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUzNiZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzNl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTM2Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUzNiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGVfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JEZWxldGUiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JEZWxldGUiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclJlc3RyaWN0IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXN0cmljdF90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCB1bnJlc3RyaWN0ZWQgZmlsZShzKSB0byBiZSByZXN0cmljdGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1MzkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTUzOSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvclJlc3RyaWN0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTUzOSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTUzOV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTM5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTUzOSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JSZXN0cmljdF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvclJlc3RyaWN0Iix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yUmVzdHJpY3QiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3QiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIgc21hbGxQb3BVcCI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3RfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlNlbGVjdCBGaWxlKHMpPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtZGFuZ2VyIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduIj48L3NwYW4+IFBsZWFzZSBzZWxlY3QgcmVzdHJpY3RlZCBmaWxlKHMpIHRvIGJlIHVucmVzdHJpY3RlZC48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNTQyIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDIiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTU0MiZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTU0Ml9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTQyIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTU0MiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JVblJlc3RyaWN0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInNlbGVjdEZpbGVzRm9yVW5SZXN0cmljdCIse2lkOiJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvclVuUmVzdHJpY3QiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRNZXRhZGF0YSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5TZWxlY3QgRmlsZShzKTwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPiBQbGVhc2Ugc2VsZWN0IGEgZmlsZSBvciBmaWxlcyB0byBiZSBlZGl0ZWQuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTU0NSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNTQ1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbGVjdEZpbGVzRm9yRWRpdE1ldGFkYXRhJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTU0NSZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTU0NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTQ1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTU0NSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEiLHtpZDoiZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpzZWxlY3RGaWxlc0ZvckVkaXRUYWdzIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0VGFnc190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U2VsZWN0IEZpbGUocyk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPjxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIHNlbGVjdCBhIGZpbGUgb3IgZmlsZXMgdG8gYmUgZWRpdGVkLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE1NDgiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTU0OCIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdzZWxlY3RGaWxlc0ZvckVkaXRUYWdzJykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTU0OCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTU0OF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNTQ4Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTU0OCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06c2VsZWN0RmlsZXNGb3JFZGl0VGFnc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzZWxlY3RGaWxlc0ZvckVkaXRUYWdzIix7aWQ6ImRhdGFzZXRGb3JtOnNlbGVjdEZpbGVzRm9yRWRpdFRhZ3MiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cmVmcmVzaFRhZ3NDb21tYW5kID0gZnVuY3Rpb24oKSB7UHJpbWVGYWNlcy5hYih7czoiZGF0YXNldEZvcm06al9pZHQxNTUwIixmOiJkYXRhc2V0Rm9ybSIsdToiZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cCIsb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdmaWxlVGFnc1BvcHVwJykuc2hvdygpOzt9LHBhOmFyZ3VtZW50c1swXX0pO308L3NjcmlwdD4KCiAgICAgICAgICAgICAgICAgICAgPCEtLSBXZSBubyBsb25nZXIgbmVlZCB0aGlzIHJlbW90ZUNvbW1hbmQ7IHNlZSBteSBjb21tZW50cyBpbiB0aGUgamF2YXNjcmlwdCBtZXRob2QgdGVzdEZpbGVzU2VsZWN0ZWRGb3JFZGl0TWV0YWRhdGEoKSAtLT4KICAgICAgICAgICAgICAgICAgICA8IS0tIGZvciBtb3JlIGluZm8uIC0gTC5BLiA0LjIuMSAtLT4KICAgICAgICAgICAgICAgICAgICA8IS0tIHA6cmVtb3RlQ29tbWFuZCAgbmFtZT0ib3BlbkVkaXRGaWxlc1BhZ2VDb21tYW5kIiBhY3Rpb249IiB7RGF0YXNldFBhZ2UuZWRpdEZpbGVNZXRhZGF0YSgpfSIgIC8gLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkVkaXQgVGFnczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj48c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gU2VsZWN0IGV4aXN0aW5nIGZpbGUgdGFncyBvciBjcmVhdGUgbmV3IHRhZ3MgdG8gZGVzY3JpYmUgeW91ciBmaWxlcy4gRWFjaCBmaWxlIGNhbiBoYXZlIG1vcmUgdGhhbiBvbmUgdGFnLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24iIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbiZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtOnRhYlZpZXc6ZmlsZXNUYWJsZSBkYXRhc2V0Rm9ybSZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7UEYoJ2ZpbGVUYWdzUG9wdXAnKS5oaWRlKCk7fX0pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPlNhdmUgQ2hhbmdlczwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwU2F2ZUJ1dHRvbl9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cFNhdmVCdXR0b24ifSk7PC9zY3JpcHQ+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiIgbmFtZT0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkgYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZmlsZVRhZ3NQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpmaWxlVGFnc1BvcHVwQ2FuY2VsQnV0dG9uJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2ZpbGVUYWdzUG9wdXBDYW5jZWxCdXR0b24iLHtpZDoiZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cENhbmNlbEJ1dHRvbiJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZmlsZVRhZ3NQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJmaWxlVGFnc1BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmZpbGVUYWdzUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBzbWFsbFBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOnJzeW5jVXBsb2FkSW5mb1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5VcGxvYWQgRmlsZXM8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFJTWU5DIFVQTE9BRCBQT1BVUCAtLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj48c3BhbiBjbGFzcz0idGV4dC1kYW5nZXIiPiBZb3UgY2FuIG5vdCB1cGxvYWQgYWRkaXRpb25hbCBmaWxlcyB0byB0aGlzIGRhdGFzZXQuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYwNCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNjA0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3JzeW5jVXBsb2FkX3BvcHVwJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTYwNCZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYwNF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNjA0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTYwNCJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EIFJTWU5DIFVQTE9BRCBQT1BVUCAtLT48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJyc3luY1VwbG9hZF9wb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpyc3luY1VwbG9hZEluZm9Qb3B1cCIsbW9kYWw6dHJ1ZSxiZWhhdmlvcnM6e2Nsb3NlOmZ1bmN0aW9uKGV4dCxldmVudCkge1ByaW1lRmFjZXMuYWIoe3M6ImRhdGFzZXRGb3JtOnJzeW5jVXBsb2FkSW5mb1BvcHVwIixlOiJjbG9zZSIscDoiZGF0YXNldEZvcm06cnN5bmNVcGxvYWRJbmZvUG9wdXAiLHU6ImRhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCJ9LGV4dCk7fX19KTt9KTs8L3NjcmlwdD4KCiAgICAgICAgICAgICAgICAgICAgPCEtLSBSZXF1ZXN0IEFjY2VzcyBTaWduIFVwL0xvZyBJbiBCdXR0b24gLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjA3IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYwN190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVxdWVzdCBBY2Nlc3M8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iaGVscC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24gdGV4dC1kYW5nZXIiPjwvc3Bhbj7CoAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRleHQtZGFuZ2VyIj5Zb3UgbmVlZCB0byA8YSBocmVmPSIvZGF0YXZlcnNldXNlci54aHRtbD9yZWRpcmVjdFBhZ2U9JTJGZGF0YXNldC54aHRtbCUzRnBlcnNpc3RlbnRJZCUzRGRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMmYW1wO2VkaXRNb2RlPUNSRUFURSIgdGFyZ2V0PSJfc2VsZiIgdGl0bGU9IlNpZ24gVXAgZm9yIGEgRGF0YXZlcnNlIEFjY291bnQiPlNpZ24gVXA8L2E+IG9yIDxhIGhyZWY9Ii9sb2dpbnBhZ2UueGh0bWw/cmVkaXJlY3RQYWdlPSUyRmRhdGFzZXQueGh0bWwlM0ZwZXJzaXN0ZW50SWQlM0Rkb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiB0YXJnZXQ9Il9zZWxmIiB0aXRsZT0iTG9nIGludG8geW91ciBEYXRhdmVyc2UgQWNjb3VudCI+TG9nIEluPC9hPiB0byByZXF1ZXN0IGFjY2VzcyB0byB0aGlzIGZpbGUuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNjEzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE2MTMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignYWNjZXNzU2lnblVwTG9nSW5fcG9wdXAnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTYxMyZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTYxM19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNjEzIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTYxMyJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNjA3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImFjY2Vzc1NpZ25VcExvZ0luX3BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTYwNyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBSZXF1ZXN0IEFjY2VzcyBTaWduIFVwL0xvZyBJbiBCdXR0b24gLS0+PGRpdiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWRQb3B1cCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciBsYXJnZVBvcFVwIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRvd25sb2FkIEZpbGU8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IFBsZWFzZSBjb25maXJtIGFuZC9vciBjb21wbGV0ZSB0aGUgaW5mb3JtYXRpb24gbmVlZGVkIGJlbG93IGluIG9yZGVyIHRvIGRvd25sb2FkIGZpbGVzIGluIHRoaXMgZGF0YXNldC4KICAgICAgICA8L3A+PGRpdiBpZD0iZGF0YXNldEZvcm06Z3Vlc3Rib29rTWVzc2FnZXMiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIgbWVzc2FnZVBhbmVsIj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCIgZm9yPSJndWVzdGJvb2tfdG91Ij4KICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBVc2UKICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgcmVhZC10ZXJtcyI+TGljZW5zZWQgZWxlY3Ryb25pYyByZXNvdXJjZXMgYXJlIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIFVuZGVyIEhhcnZhcmQncyBsaWNlbnNlcyBmb3IgZWxlY3Ryb25pYyByZXNvdXJjZXMsIHVzZXJzIGdlbmVyYWxseSBtYXkgbm90OiBwZXJtaXQgYW55b25lIG90aGVyIHRoYW4gYXV0aG9yaXplZCB1c2VycyB0byB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFsczsgbW9kaWZ5IG9yIGNyZWF0ZSBhIGRlcml2YXRpdmUgd29yayBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIHdpdGhvdXQgdGhlIHBlcm1pc3Npb24gb2YgdGhlIGxpY2Vuc29yOyByZW1vdmUsIG9ic2N1cmUgb3IgbW9kaWZ5IGFueSBjb3B5cmlnaHQgb3Igb3RoZXIgbm90aWNlcyBpbmNsdWRlZCBpbiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyB1c2UgdGhlIGxpY2Vuc2VkIG1hdGVyaWFscyBmb3IgY29tbWVyY2lhbCBwdXJwb3NlcywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB0aGUgc2FsZSBvZiB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzLiBVc2VycyBhcmUgaW5kaXZpZHVhbGx5IHJlc3BvbnNpYmxlIGZvciBjb21wbGlhbmNlIHdpdGggdGhlc2UgdGVybXMuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiIGZvcj0iZ3Vlc3Rib29rX3RvYSI+CiAgICAgICAgICAgICAgICAgICAgVGVybXMgb2YgQWNjZXNzCiAgICAgICAgICAgICAgICA8L2xhYmVsPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTYiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHJlYWQtdGVybXMiPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5LgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGEgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTY5MCIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNjkwJnF1b3Q7LHA6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxNjkwJnF1b3Q7LHU6JnF1b3Q7QChbaWQkPU1lc3NhZ2VzXSkmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe2lmIChhcmdzICZhbXA7JmFtcDsgIWFyZ3MudmFsaWRhdGlvbkZhaWxlZCkgUEYoJ2Rvd25sb2FkUG9wdXAnKS5oaWRlKCk7O30scGE6W3tuYW1lOiZxdW90O0RPX0dCX1ZBTElEQVRJT04mcXVvdDssdmFsdWU6JnF1b3Q7dHJ1ZSZxdW90O31dfSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0iYnV0dG9uIj5BY2NlcHQ8L2E+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBvbmNsaWNrPSJQRignZG93bmxvYWRQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiIHZhbHVlPSJDYW5jZWwiPkNhbmNlbDwvYnV0dG9uPgogICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiZG93bmxvYWRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpkb3dubG9hZFBvcHVwIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIGxhcmdlUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc1BvcHVwX3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5SZXF1ZXN0IEFjY2Vzczwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gUGxlYXNlIGNvbmZpcm0gYW5kL29yIGNvbXBsZXRlIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgYmVsb3cgaW4gb3JkZXIgdG8gcmVxdWVzdCBhY2Nlc3MgdG8gZmlsZXMgaW4gdGhpcyBkYXRhc2V0LgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWhvcml6b250YWwiPjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIiBmb3I9Imd1ZXN0Ym9va190b3UiPgogICAgICAgICAgICAgICAgICAgIFRlcm1zIG9mIFVzZQogICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbCBwYW5lbC1kZWZhdWx0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtYm9keSByZWFkLXRlcm1zIj5MaWNlbnNlZCBlbGVjdHJvbmljIHJlc291cmNlcyBhcmUgcmVzdHJpY3RlZCB0byBtZW1iZXJzIG9mIHRoZSBIYXJ2YXJkIGNvbW11bml0eSBmb3IgcHVycG9zZXMgb2YgcmVzZWFyY2gsIHRlYWNoaW5nLCBhbmQgcHJpdmF0ZSBzdHVkeS4gVW5kZXIgSGFydmFyZCdzIGxpY2Vuc2VzIGZvciBlbGVjdHJvbmljIHJlc291cmNlcywgdXNlcnMgZ2VuZXJhbGx5IG1heSBub3Q6IHBlcm1pdCBhbnlvbmUgb3RoZXIgdGhhbiBhdXRob3JpemVkIHVzZXJzIHRvIHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzOyBtb2RpZnkgb3IgY3JlYXRlIGEgZGVyaXZhdGl2ZSB3b3JrIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMgd2l0aG91dCB0aGUgcGVybWlzc2lvbiBvZiB0aGUgbGljZW5zb3I7IHJlbW92ZSwgb2JzY3VyZSBvciBtb2RpZnkgYW55IGNvcHlyaWdodCBvciBvdGhlciBub3RpY2VzIGluY2x1ZGVkIGluIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHM7IHVzZSB0aGUgbGljZW5zZWQgbWF0ZXJpYWxzIGZvciBjb21tZXJjaWFsIHB1cnBvc2VzLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHRoZSBzYWxlIG9mIHRoZSBsaWNlbnNlZCBtYXRlcmlhbHMuIFVzZXJzIGFyZSBpbmRpdmlkdWFsbHkgcmVzcG9uc2libGUgZm9yIGNvbXBsaWFuY2Ugd2l0aCB0aGVzZSB0ZXJtcy4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCIgZm9yPSJndWVzdGJvb2tfdG9hIj4KICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgIDwvbGFiZWw+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwgcGFuZWwtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWJvZHkgcmVhZC10ZXJtcyI+VGhpcyBkYXRhc2V0IGlzIHJlc3RyaWN0ZWQgdG8gbWVtYmVycyBvZiB0aGUgSGFydmFyZCBjb21tdW5pdHkgZm9yIHB1cnBvc2VzIG9mIHJlc2VhcmNoLCB0ZWFjaGluZywgYW5kIHByaXZhdGUgc3R1ZHkuIEhhcnZhcmQgYWZmaWxpYXRlcyBtYXkgYWNjZXNzIHRoZSBkYXRhIGJ5IGxvZ2dpbmcgaW50byB0aGlzIHN5c3RlbSB2aWEgdGhlIGluc3RpdHV0aW9uYWwgbG9naW4gYW5kIHNlbGVjdGluZyBIYXJ2YXJkIFVuaXZlcnNpdHkuCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YSBpZD0iZGF0YXNldEZvcm06al9pZHQxNzExIiBocmVmPSIjIiBjbGFzcz0idWktY29tbWFuZGxpbmsgdWktd2lkZ2V0IGJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3MTEmcXVvdDssdTomcXVvdDtAKFtpZCQ9cmVxdWVzdEFjY2Vzc1BvcHVwQnV0dG9uXSkmcXVvdDssb25jbzpmdW5jdGlvbih4aHIsc3RhdHVzLGFyZ3Mpe1BGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7O319KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJidXR0b24iPgogICAgICAgICAgICAgICAgQWNjZXB0CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlBGKCdyZXF1ZXN0QWNjZXNzUG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7IiB2YWx1ZT0iQ2FuY2VsIj5DYW5jZWw8L2J1dHRvbj4KICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicmVxdWVzdEFjY2Vzc1BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmRvd25sb2FkRGF0YVN1YnNldFBvcHVwIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIHNtYWxsUG9wVXAiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06ZG93bmxvYWREYXRhU3Vic2V0UG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRvd25sb2FkIERhdGEgU3Vic2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIse2lkOiJkYXRhc2V0Rm9ybTpkb3dubG9hZERhdGFTdWJzZXRQb3B1cCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcxOCIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3MThfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkRhdGEgTm90IFB1Ymxpc2hlZDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LWRhbmdlciI+PHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEluIG9yZGVyIHRvIG1hcCB5b3VyIGRhdGEgd2l0aCBXb3JsZE1hcCwgeW91ciBkYXRhIG11c3QgYmUgcHVibGlzaGVkLiBQbGVhc2UgcHVibGlzaCB0aGlzIGRhdGFzZXQsIHRoZW4gcmV0cnkgdGhlIE1hcCBEYXRhIGZlYXR1cmUuPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ21hcERhdGFfcG9wdXAnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbG9zZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTcxOF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJtYXBEYXRhX3BvcHVwIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTcxOCIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpsaW5rRGF0YXNldEZvcm1fdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkxpbmsgRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCIgb25jbGljaz0iUEYoJ2xpbmtEYXRhc2V0Rm9ybScpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmxpbmtEYXRhc2V0Rm9ybV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJsaW5rRGF0YXNldEZvcm0iLHtpZDoiZGF0YXNldEZvcm06bGlua0RhdGFzZXRGb3JtIixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXAiIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXBfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkZpbGUgUmVzdHJpY3Rpb25zPC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0taG9yaXpvbnRhbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1ldGFkYXRhX1Rlcm1zQWNjZXNzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJbmZvcm1hdGlvbiBvbiBob3cgYW5kIGlmIHVzZXJzIGNhbiBnYWluIGFjY2VzcyB0byB0aGUgcmVzdHJpY3RlZCBmaWxlcyBpbiB0aGlzIGRhdGFzZXQuIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUZXJtcyBvZiBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjx0ZXh0YXJlYSBpZD0iZGF0YXNldEZvcm06al9pZHQxNzQ1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NDUiIGNvbHM9IjIwIiByb3dzPSI1IiBtYXhsZW5ndGg9IjIxNDc0ODM2NDciIGNsYXNzPSJ1aS1pbnB1dGZpZWxkIHVpLWlucHV0dGV4dGFyZWEgdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCBmb3JtLWNvbnRyb2wiPlRoaXMgZGF0YXNldCBpcyByZXN0cmljdGVkIHRvIG1lbWJlcnMgb2YgdGhlIEhhcnZhcmQgY29tbXVuaXR5IGZvciBwdXJwb3NlcyBvZiByZXNlYXJjaCwgdGVhY2hpbmcsIGFuZCBwcml2YXRlIHN0dWR5LiBIYXJ2YXJkIGFmZmlsaWF0ZXMgbWF5IGFjY2VzcyB0aGUgZGF0YSBieSBsb2dnaW5nIGludG8gdGhpcyBzeXN0ZW0gdmlhIHRoZSBpbnN0aXR1dGlvbmFsIGxvZ2luIGFuZCBzZWxlY3RpbmcgSGFydmFyZCBVbml2ZXJzaXR5Lg0KDQo8L3RleHRhcmVhPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc0NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJJbnB1dFRleHRhcmVhIiwiaW5wdXR0b2EiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzQ1IixhdXRvUmVzaXplOmZhbHNlfSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJtZXRhZGF0YV9SZXF1ZXN0QWNjZXNzIiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImF1dG8gcmlnaHQiIGNsYXNzPSJ0b29sdGlwbGFiZWwgdGV4dC1pbmZvIiBkYXRhLW9yaWdpbmFsLXRpdGxlPSJJZiBjaGVja2VkLCB1c2VycyBjYW4gcmVxdWVzdCBhY2Nlc3MgdG8gdGhlIHJlc3RyaWN0ZWQgZmlsZXMgaW4gdGhpcyBkYXRhc2V0LiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVxdWVzdCBBY2Nlc3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3MiIGNsYXNzPSJ1aS1jaGtib3ggdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc19pbnB1dCIgbmFtZT0iZGF0YXNldEZvcm06cmVxdWVzdEFjY2Vzc19pbnB1dCIgdHlwZT0iY2hlY2tib3giIGF1dG9jb21wbGV0ZT0ib2ZmIiBhcmlhLWNoZWNrZWQ9ImZhbHNlIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLWNoa2JveC1ib3ggdWktd2lkZ2V0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGVmYXVsdCI+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1pY29uIHVpLWljb24gdWktaWNvbi1ibGFuayB1aS1jIj48L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InVpLWNoa2JveC1sYWJlbCI+RW5hYmxlIGFjY2VzcyByZXF1ZXN0PC9zcGFuPjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOnJlcXVlc3RBY2Nlc3NfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJTZWxlY3RCb29sZWFuQ2hlY2tib3giLCJpbnB1dGZhciIse2lkOiJkYXRhc2V0Rm9ybTpyZXF1ZXN0QWNjZXNzIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NDkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc0OSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdhY2Nlc3NQb3B1cCcpLmhpZGUoKTtQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTc0OSZxdW90Oyx1OiZxdW90O2RhdGFzZXRGb3JtIG1lc3NhZ2VQYW5lbCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc0OV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzQ5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc0OSJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTIiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc1MiIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdhY2Nlc3NQb3B1cCcpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzUyX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3NTIiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzUyIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06YWNjZXNzUG9wdXBfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiYWNjZXNzUG9wdXAiLHtpZDoiZGF0YXNldEZvcm06YWNjZXNzUG9wdXAiLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTppbnJldmlldyIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTppbnJldmlld190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+U3VibWl0IGZvciBSZXZpZXc8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC13YXJuaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXdhcm5pbmctc2lnbiI+PC9zcGFuPiBZb3Ugd2lsbCBub3QgYmUgYWJsZSB0byBtYWtlIGNoYW5nZXMgdG8gdGhpcyBkYXRhc2V0IHdoaWxlIGl0IGlzIGluIHJldmlldy4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzU1IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2lucmV2aWV3JykuaGlkZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7UHJpbWVGYWNlcy5hYih7czomcXVvdDtkYXRhc2V0Rm9ybTpqX2lkdDE3NTUmcXVvdDt9KTtyZXR1cm4gZmFsc2U7IiB0eXBlPSJzdWJtaXQiPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5TdWJtaXQ8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzU1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3NTUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzU1In0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1NiIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzU2IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ2lucmV2aWV3JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTZfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc1NiIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NTYifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmlucmV2aWV3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsImlucmV2aWV3Iix7aWQ6ImRhdGFzZXRGb3JtOmlucmV2aWV3Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gUHVibGlzaC9TdWJtaXQgZm9yIFJldmlldyBEaWFsb2dzIC0tPjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc1OSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTlfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwdWJsaXNoIHRoaXMgZGF0YXNldD8gT25jZSB5b3UgZG8gc28gaXQgbXVzdCByZW1haW4gcHVibGlzaGVkLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+PGRpdiBpZD0idGVybXMtYWdyZWVtZW50LWJsb2NrIiBjbGFzcz0id2VsbCI+QnkgZGVmYXVsdCBkYXRhc2V0cyBhcmUgcHVibGlzaGVkIHdpdGggdGhlIENDMC3igJxQdWJsaWMgRG9tYWluIERlZGljYXRpb27igJ0gd2FpdmVyLiBMZWFybiBtb3JlIGFib3V0IHRoZSBDQzAgd2FpdmVyIDxhIHRhcmdldD1fYmxhbmsgaHJlZj0naHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvY2hvb3NlL3plcm8vJz5oZXJlPC9hPi4gPGJyPjxicj4gVG8gcHVibGlzaCB3aXRoIGN1c3RvbSBUZXJtcyBvZiBVc2UsIGNsaWNrIHRoZSBDYW5jZWwgYnV0dG9uIGFuZCBnbyB0byB0aGUgVGVybXMgdGFiIGZvciB0aGlzIGRhdGFzZXQuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzY0IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjQiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncHVibGlzaENvbmZpcm0nKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTc2NCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2NF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzY0Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc2NCJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NjUiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc2NSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdwdWJsaXNoQ29uZmlybScpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzY1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE3NjUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzY1In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NTlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwicHVibGlzaENvbmZpcm0iLHtpZDoiZGF0YXNldEZvcm06al9pZHQxNzU5Iixtb2RhbDp0cnVlLHdpZHRoOiI3MCUifSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzY3IiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2N190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UHVibGlzaCBEYXRhc2V0PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtd2FybmluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi13YXJuaW5nLXNpZ24iPjwvc3Bhbj5UaGlzIGRhdGFzZXQgY2Fubm90IGJlIHB1Ymxpc2hlZCB1bnRpbCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL2RhdGF2ZXJzZS9uZHMiIHRpdGxlPSJOdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlIj5OdW1lcmljIERhdGEgU2VydmljZXMgRGF0YXZlcnNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4gaXMgcHVibGlzaGVkLiBXb3VsZCB5b3UgbGlrZSB0byBwdWJsaXNoIGJvdGggcmlnaHQgbm93PwogICAgICAgICAgICAgICAgICAgICAgICA8L3A+PGRpdiBpZD0idGVybXMtYWdyZWVtZW50LWJsb2NrIiBjbGFzcz0id2VsbCI+QnkgZGVmYXVsdCBkYXRhc2V0cyBhcmUgcHVibGlzaGVkIHdpdGggdGhlIENDMC3igJxQdWJsaWMgRG9tYWluIERlZGljYXRpb27igJ0gd2FpdmVyLiBMZWFybiBtb3JlIGFib3V0IHRoZSBDQzAgd2FpdmVyIAo8YSBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9jaG9vc2UvemVyby8iIHJlbD0ibm9mb2xsb3ciIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPi4gCjxicj4KPGJyPiBUbyBwdWJsaXNoIHdpdGggY3VzdG9tIFRlcm1zIG9mIFVzZSwgY2xpY2sgdGhlIENhbmNlbCBidXR0b24gYW5kIGdvIHRvIHRoZSBUZXJtcyB0YWIgZm9yIHRoaXMgZGF0YXNldC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9ImhlbHAtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24taW5mby1zaWduIj48L3NwYW4+IE9uY2UgeW91IHB1Ymxpc2ggdGhpcyBkYXRhc2V0IGl0IG11c3QgcmVtYWluIHB1Ymxpc2hlZC4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc3OCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxNzc4IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3B1Ymxpc2hQYXJlbnQnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTc3OCZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPlllcywgUHVibGlzaCBCb3RoPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc3OF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzc4Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc3OCJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NzkiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc3OSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdwdWJsaXNoUGFyZW50JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNhbmNlbDwvc3Bhbj48L2J1dHRvbj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3NzlfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJDb21tYW5kQnV0dG9uIiwid2lkZ2V0X2RhdGFzZXRGb3JtX2pfaWR0MTc3OSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3NzkifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc2N19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJwdWJsaXNoUGFyZW50Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc2NyIsbW9kYWw6dHJ1ZSx3aWR0aDoiNzAlIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc4MSIgY2xhc3M9InVpLWRpYWxvZyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCB1aS1zaGFkb3cgdWktaGlkZGVuLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci10b3AiPjxzcGFuIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3ODFfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPlB1Ymxpc2ggRGF0YXNldDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXB1Ymxpc2ggdGhpcyBkYXRhc2V0PwogICAgICAgICAgICAgICAgICAgICAgICA8L3A+PGRpdiBpZD0idGVybXMtYWdyZWVtZW50LWJsb2NrIiBjbGFzcz0id2VsbCI+QnkgZGVmYXVsdCBkYXRhc2V0cyBhcmUgcHVibGlzaGVkIHdpdGggdGhlIENDMC3igJxQdWJsaWMgRG9tYWluIERlZGljYXRpb27igJ0gd2FpdmVyLiBMZWFybiBtb3JlIGFib3V0IHRoZSBDQzAgd2FpdmVyIAo8YSBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9jaG9vc2UvemVyby8iIHJlbD0ibm9mb2xsb3ciIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPi4gCjxicj4KPGJyPiBUbyBwdWJsaXNoIHdpdGggY3VzdG9tIFRlcm1zIG9mIFVzZSwgY2xpY2sgdGhlIENhbmNlbCBidXR0b24gYW5kIGdvIHRvIHRoZSBUZXJtcyB0YWIgZm9yIHRoaXMgZGF0YXNldC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJoZWxwLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1pbmZvLXNpZ24iPjwvc3Bhbj4gU2VsZWN0IGlmIHRoaXMgaXMgYSBtaW5vciBvciBtYWpvciB2ZXJzaW9uIHVwZGF0ZS4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD48dGFibGUgaWQ9ImRhdGFzZXRGb3JtOm9wdGlvbnMiIGNsYXNzPSJ1aS1zZWxlY3RvbmVyYWRpbyB1aS13aWRnZXQiPjx0cj48dGQ+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24gdWktd2lkZ2V0Ij48ZGl2IGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiPjxpbnB1dCBpZD0iZGF0YXNldEZvcm06b3B0aW9uczowIiBuYW1lPSJkYXRhc2V0Rm9ybTpvcHRpb25zIiB0eXBlPSJyYWRpbyIgdmFsdWU9IjEiIGNoZWNrZWQ9ImNoZWNrZWQiIC8+PC9kaXY+PGRpdiBjbGFzcz0idWktcmFkaW9idXR0b24tYm94IHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRlZmF1bHQgdWktc3RhdGUtYWN0aXZlIj48c3BhbiBjbGFzcz0idWktcmFkaW9idXR0b24taWNvbiB1aS1pY29uIHVpLWljb24tYnVsbGV0IHVpLWMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L3RkPjx0ZD48bGFiZWwgZm9yPSJkYXRhc2V0Rm9ybTpvcHRpb25zOjAiPk1pbm9yIFJlbGVhc2UgKDEuMSk8L2xhYmVsPjwvdGQ+PHRkPjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uIHVpLXdpZGdldCI+PGRpdiBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIj48aW5wdXQgaWQ9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MSIgbmFtZT0iZGF0YXNldEZvcm06b3B0aW9ucyIgdHlwZT0icmFkaW8iIHZhbHVlPSIyIiAvPjwvZGl2PjxkaXYgY2xhc3M9InVpLXJhZGlvYnV0dG9uLWJveCB1aS13aWRnZXQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kZWZhdWx0Ij48c3BhbiBjbGFzcz0idWktcmFkaW9idXR0b24taWNvbiB1aS1pY29uIHVpLWljb24tYmxhbmsgdWktYyI+PC9zcGFuPjwvZGl2PjwvZGl2PjwvdGQ+PHRkPjxsYWJlbCBmb3I9ImRhdGFzZXRGb3JtOm9wdGlvbnM6MSI+TWFqb3IgUmVsZWFzZSAoMi4wKTwvbGFiZWw+PC90ZD48L3RyPjwvdGFibGU+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06b3B0aW9uc19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJTZWxlY3RPbmVSYWRpbyIsIndpZGdldF9kYXRhc2V0Rm9ybV9vcHRpb25zIix7aWQ6ImRhdGFzZXRGb3JtOm9wdGlvbnMifSk7fSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwPgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzkzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRigncmVsZWFzZURyYWZ0JykuaGlkZSgpO1BGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOztQcmltZUZhY2VzLmFiKHtzOiZxdW90O2RhdGFzZXRGb3JtOmpfaWR0MTc5MyZxdW90O30pO3JldHVybiBmYWxzZTsiIHR5cGU9InN1Ym1pdCI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNvbnRpbnVlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc5M19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzkzIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc5MyJ9KTs8L3NjcmlwdD48YnV0dG9uIGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTUiIG5hbWU9ImRhdGFzZXRGb3JtOmpfaWR0MTc5NSIgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LW9ubHkiIG9uY2xpY2s9IlBGKCdyZWxlYXNlRHJhZnQnKS5oaWRlKCk7UEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2FuY2VsPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTc5NV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxNzk1Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTc5NSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxNzgxX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsInJlbGVhc2VEcmFmdCIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3ODEiLG1vZGFsOnRydWUsd2lkdGg6IjcwJSJ9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxNzk3X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPlRoaXMgZGF0YXNldCBjYW5ub3QgYmUgcHVibGlzaGVkIHVudGlsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlLnhodG1sP2FsaWFzPW5kcyIgdGl0bGU9Ik51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UiPk51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiAgaXMgcHVibGlzaGVkIGJ5IGl0cyBhZG1pbmlzdHJhdG9yLgogICAgICAgICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxODA1IiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MDUiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignbWF5Tm90UmVsZWFzZScpLmhpZGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2Jsb2NrRGF0YXNldEZvcm0nKS5oaWRlKCk7OyIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q2xvc2U8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODA1X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE4MDUiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxODA1In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE3OTdfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwibWF5Tm90UmVsZWFzZSIse2lkOiJkYXRhc2V0Rm9ybTpqX2lkdDE3OTciLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD48ZGl2IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MDciIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0iZGF0YXNldEZvcm06al9pZHQxODA3X3RpdGxlIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlIj5QdWJsaXNoIERhdGFzZXQ8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1kYW5nZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tZXhjbGFtYXRpb24tc2lnbiI+PC9zcGFuPlRoaXMgZGF0YXNldCBjYW5ub3QgYmUgcHVibGlzaGVkIHVudGlsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvZGF0YXZlcnNlL25kcyIgdGl0bGU9Ik51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UiPk51bWVyaWMgRGF0YSBTZXJ2aWNlcyBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiBhbmQgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9kYXRhdmVyc2UvSGFydmFyZFN1YnNjcmlwdGlvbkRhdGEiIHRpdGxlPSJIYXJ2YXJkIFN1YnNjcmlwdGlvbiBEYXRhIERhdGF2ZXJzZSI+SGFydmFyZCBTdWJzY3JpcHRpb24gRGF0YSBEYXRhdmVyc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPiAgYXJlIHB1Ymxpc2hlZC4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgxOSIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxODE5IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ21heW5vdFB1Ymxpc2hQYXJlbnQnKS5oaWRlKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdibG9ja0RhdGFzZXRGb3JtJykuaGlkZSgpOzsiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0IHVpLWMiPkNsb3NlPC9zcGFuPjwvYnV0dG9uPjxzY3JpcHQgaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgxOV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIkNvbW1hbmRCdXR0b24iLCJ3aWRnZXRfZGF0YXNldEZvcm1fal9pZHQxODE5Iix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgxOSJ9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODA3X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkRpYWxvZyIsIm1heW5vdFB1Ymxpc2hQYXJlbnQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxODA3Iixtb2RhbDp0cnVlfSk7fSk7PC9zY3JpcHQ+PGRpdiBpZD0iZGF0YXNldEZvcm06al9pZHQxODIxIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyMV90aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmV0dXJuIHRvIEF1dGhvcjwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdhcm5pbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24td2FybmluZy1zaWduIj48L3NwYW4+IFJldHVybiB0aGlzIGRhdGFzZXQgdG8gY29udHJpYnV0b3IgZm9yIG1vZGlmaWNhdGlvbi4KICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ibG9jayI+PGJ1dHRvbiBpZD0iZGF0YXNldEZvcm06al9pZHQxODIzIiBuYW1lPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MjMiIGNsYXNzPSJ1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1vbmx5IiBvbmNsaWNrPSJQRignc2VuZEJhY2tUb0NvbnRyaWJ1dG9yJykuaGlkZSgpO1ByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZGF0YXNldEZvcm06al9pZHQxODIzJnF1b3Q7fSk7cmV0dXJuIGZhbHNlOyIgdHlwZT0ic3VibWl0Ij48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQgdWktYyI+Q29udGludWU8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODIzX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE4MjMiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxODIzIn0pOzwvc2NyaXB0PjxidXR0b24gaWQ9ImRhdGFzZXRGb3JtOmpfaWR0MTgyNCIgbmFtZT0iZGF0YXNldEZvcm06al9pZHQxODI0IiBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtb25seSIgb25jbGljaz0iUEYoJ3NlbmRCYWNrVG9Db250cmlidXRvcicpLmhpZGUoKTtQRignYmxvY2tEYXRhc2V0Rm9ybScpLmhpZGUoKTs7IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1aS1idXR0b24tdGV4dCB1aS1jIj5DYW5jZWw8L3NwYW4+PC9idXR0b24+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06al9pZHQxODI0X3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+UHJpbWVGYWNlcy5jdygiQ29tbWFuZEJ1dHRvbiIsIndpZGdldF9kYXRhc2V0Rm9ybV9qX2lkdDE4MjQiLHtpZDoiZGF0YXNldEZvcm06al9pZHQxODI0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj48L2Rpdj48c2NyaXB0IGlkPSJkYXRhc2V0Rm9ybTpqX2lkdDE4MjFfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwic2VuZEJhY2tUb0NvbnRyaWJ1dG9yIix7aWQ6ImRhdGFzZXRGb3JtOmpfaWR0MTgyMSIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5yZXR1cm5Ub0F1dGhvckNvbW1hbmQgPSBmdW5jdGlvbigpIHtQcmltZUZhY2VzLmFiKHtzOiJkYXRhc2V0Rm9ybTpqX2lkdDE4MjYiLGY6ImRhdGFzZXRGb3JtIixwYTphcmd1bWVudHNbMF19KTt9PC9zY3JpcHQ+PHNjcmlwdCBpZD0iZGF0YXNldEZvcm06ZW50ZXJSZXR1cm5SZWFzb25fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiQ29uZmlybURpYWxvZyIsImVudGVyUmV0dXJuUmVhc29uIix7aWQ6ImRhdGFzZXRGb3JtOmVudGVyUmV0dXJuUmVhc29uIn0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9ImRhdGFzZXRGb3JtOmVudGVyUmV0dXJuUmVhc29uIiBjbGFzcz0idWktY29uZmlybS1kaWFsb2cgdWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+UmVxdWlyZWQgZW50cnk8L3NwYW4+PGEgaHJlZj0iIyIgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhci1pY29uIHVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB1aS1jb3JuZXItYWxsIj48c3BhbiBjbGFzcz0idWktaWNvbiB1aS1pY29uLWNsb3NldGhpY2siPjwvc3Bhbj48L2E+PC9kaXY+PGRpdiBjbGFzcz0idWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tYWxlcnQgdWktY29uZmlybS1kaWFsb2ctc2V2ZXJpdHkiPjwvc3Bhbj48c3BhbiBjbGFzcz0idWktY29uZmlybS1kaWFsb2ctbWVzc2FnZSI+UmVhc29uIGZvciByZXR1cm4gdG8gYXV0aG9yIGlzIHJlcXVpcmVkPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1idXR0b25wYW5lIHVpLWRpYWxvZy1mb290ZXIgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4Ij48L2Rpdj48L2Rpdj4gICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIDwhLS0gRU5EOiBQdWJsaXNoL1N1Ym1pdCBmb3IgUmV2aWV3IERpYWxvZ3MgLS0+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iamF2YXguZmFjZXMuVmlld1N0YXRlIiBpZD0ial9pZDE6amF2YXguZmFjZXMuVmlld1N0YXRlOjAiIHZhbHVlPSItNDQ0MjA1MTA5NTkxNjM1MjMxMjotMjA1MzI4Mzg5NjU5NjI4MzY2NyIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+CjwvZm9ybT4KICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9yZXNvdXJjZXMvanMvZHJvcGlucy5qcyIgaWQ9ImRyb3Bib3hqcyI+PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgICAgICAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICBwb3BvdmVySFRNTCgnQWxsb3dlZCBIVE1MIFRhZ3MnKTsKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0UmV0dXJuUmVhc29uKCl7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByZXR1cm5SZWFzb25UZXh0ID0gUEYoJ3JldHVyblJlYXNvbicpLmpxLnZhbCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAocmV0dXJuUmVhc29uVGV4dC5sZW5ndGg9PT0wKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdlbnRlclJldHVyblJlYXNvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZW5kQmFja1RvQ29udHJpYnV0b3InKS5oaWRlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5Ub0F1dGhvckNvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBvcGVuRGlhbG9nKCkgewogICAgICAgICAgICAgICAgICAgICAgICBQRignZGV0YWlscycpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gb3BlbkNvbXBhcmVUd28oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdjb21wYXJlVHdvJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0Q2hlY2tCb3hlcygpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ3ZlcnNpb25zVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgIT09IDIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdjb21wYXJlVHdvJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0iY29tcGFyZVZlcnNpb25zIl0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RGaWxlc1NlbGVjdGVkRm9yUmVzdHJpY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCdmaWxlc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RmlsZXNGb3JSZXN0cmljdCcpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdhY2Nlc3NQb3B1cCcpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEZpbGVzU2VsZWN0ZWRGb3JUYWdzKCkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgY291bnQgPSBQRignZmlsZXNUYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ3NlbGVjdEZpbGVzRm9yRWRpdFRhZ3MnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoVGFnc0NvbW1hbmQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB0ZXN0RmlsZXNTZWxlY3RlZEZvckRlbGV0ZSgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvdW50ID0gUEYoJ2ZpbGVzVGFibGUnKS5nZXRTZWxlY3RlZFJvd3NDb3VudCgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY291bnQgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3RGaWxlc0ZvckRlbGV0ZScpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZWxldGVTZWxlY3RlZEZpbGVDb25maXJtYXRpb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdEZpbGVzU2VsZWN0ZWRGb3JFZGl0TWV0YWRhdGEoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCdmaWxlc1RhYmxlJykuZ2V0U2VsZWN0ZWRSb3dzQ291bnQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvdW50ID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RmlsZXNGb3JFZGl0TWV0YWRhdGEnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gLy9lbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gSSBjb21tZW50ZWQgb3V0IHRoZSBjb2RlIGJlbG93OyBpZiB0aGVyZSdzCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIDEgb3IgbW9yZSBmaWxlIHNlbGVjdGVkLCBJIGRvbid0IHdhbnQgdGhpcwogICAgICAgICAgICAgICAgICAgICAgICAvLyBtZXRob2QgdG8gYWN0aXZhdGUgdGhlIHA6cmVtb3RlQ29tbWFuZCB0aGF0CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlzc3VlcyB0aGUgcmVkaXJlY3QgdG8gdGhlIGVkaXQgcGFnZSAob3IKICAgICAgICAgICAgICAgICAgICAgICAgLy8gZG8gYW55dGhpbmcgZWxzZSBmb3IgdGhhdCBtYXR0ZXIpLiBEb2luZwogICAgICAgICAgICAgICAgICAgICAgICAvLyBpdCB0aGlzIHdheSB3YXMsIGZvciBzb21lIHJlYXNvbiwgY2F1c2luZwogICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzIHBhZ2UgdG8gc3RpbGwgdHJ5IHRvIHJlbmRlciAoPz8pLCBpbgogICAgICAgICAgICAgICAgICAgICAgICAvLyBzb21lIHBhcnRpYWwsIGhhbGYtYmFrZWQgc3RhdGUgLSB3aXRoIG5vCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdvcmtpbmdWZXJzaW9uIHByZXNlbnQsIGV0Yy4gLSB0aGF0IHJlc3VsdGVkCiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGluIHNvbWUgTlVMTCBwb2ludGVycyBpbiB0aGUgbG9ncy4uLiBTbywKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaW5zdGVhZCwgdGhlIHJlZGlyZWN0IHdpbGwgYmUgZG9uZSBieSB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgLy8gZGlyZWN0IGFjdGlvbj0gYXR0cmlidXRlIGluIHRoZSBvcmlnaW5hbAogICAgICAgICAgICAgICAgICAgICAgICAvLyBjb21tYW5kQnV0dG9uLiAtLSBMLkEuIDQuMi4xCiAgICAgICAgICAgICAgICAgICAgICAgIC8vb3BlbkVkaXRGaWxlc1BhZ2VDb21tYW5kKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB1cGRhdGVUZW1wbGF0ZSgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0idXBkYXRlVGVtcGxhdGUiXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHJlZ2lzdGVyRGF0YXNldCgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnYnV0dG9uW2lkJD0icmVnaXN0ZXJEYXRhc2V0Il0nKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBjaGVja05ld2x5UmVzdHJpY3RlZCgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoJ2lucHV0W2lkJD0ic2hvd0FjY2Vzc1BvcHVwIl0nKS52YWwoKSA9PT0gJ3RydWUnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignYWNjZXNzUG9wdXAnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCdidXR0b25baWQkPSJkYXRhc2V0U2F2ZSJdJykudHJpZ2dlcignY2xpY2snKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiB1cGRhdGVIaWRkZW5SZWFzb24odGV4dEFyZWEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgnaW5wdXRbaWQkPSJoaWRkZW5SZWFzb25JbnB1dCJdJykudmFsKHRleHRBcmVhLnZhbHVlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdGVzdERlYWNjZXNzaW9uVmVyc2lvblNlbGVjdGlvbih0ZXN0VmVyc2lvbikgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZGVhY2Nlc3Npb25UZXh0ID0gJCgnaW5wdXRbaWQkPSJoaWRkZW5SZWFzb25JbnB1dCJdJykudmFsKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB1cmxFbnRyeSA9ICQoJ2lucHV0W2lkJD0iZm9yd2FyZFVSTEZvckRlYWNjZXNzaW9uIl0nKS52YWwoKTsKICAgICAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgICAgICAgICB2YXIgdmFsaWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAodGVzdFZlcnNpb24gPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBjb3VudCA9IFBGKCd2ZXJzaW9uRGVhY2Nlc3Npb25UYWJsZScpLmdldFNlbGVjdGVkUm93c0NvdW50KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRlVVJMKHVybEVudHJ5KSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZW50ZXJGb3J3YXJkVXJsJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWxpZCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQoInNlbGVjdFtpZCQ9J3JlYXNvbk9wdGlvbnMnXSBvcHRpb246c2VsZWN0ZWQiKS52YWwoKSA9PT0gJzcnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRlYWNjZXNzaW9uVGV4dCA9PT0gJycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEYoJ2VudGVyT3RoZXJSZWFzb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZWFjY2Vzc2lvblRleHQubGVuZ3RoID49IDEwMDEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRigncmVhc29uVG9vTWFueUNoYXJhY3RlcnMnKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgic2VsZWN0W2lkJD0ncmVhc29uT3B0aW9ucyddIG9wdGlvbjpzZWxlY3RlZCIpLnZhbCgpID09PSAnMCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdzZWxlY3REZWFjY2Vzc2lvblJlYXNvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWQgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0ZXN0VmVyc2lvbiA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignZGVhY2Nlc3Npb25BbGxDb25maXJtYXRpb24nKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb3VudCA9PT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQRignc2VsZWN0RGVhY2Nlc3Npb25WZXJzaW9uJykuc2hvdygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBGKCdkZWFjY2Vzc2lvbkNvbmZpcm1hdGlvbicpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVVUkwodGV4dHZhbCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAodGV4dHZhbCA9PT0gJycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB1cmxyZWdleCA9IG5ldyBSZWdFeHAoIl4oaHR0cHxodHRwc3xmdHApXDovLyhbYS16QS1aMC05XC5cLV0rKFw6W2EtekEtWjAtOVwuJiUkXC1dKykqQCkqKCgyNVswLTVdfDJbMC00XVswLTldfFswLTFdezF9WzAtOV17Mn18WzEtOV17MX1bMC05XXsxfXxbMS05XSlcLigyNVswLTVdfDJbMC00XVswLTldfFswLTFdezF9WzAtOV17Mn18WzEtOV17MX1bMC05XXsxfXxbMS05XXwwKVwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAtMV17MX1bMC05XXsyfXxbMS05XXsxfVswLTldezF9fFsxLTldfDApXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMC0xXXsxfVswLTldezJ9fFsxLTldezF9WzAtOV17MX18WzAtOV0pfChbYS16QS1aMC05XC1dK1wuKSpbYS16QS1aMC05XC1dK1wuKGNvbXxlZHV8Z292fGludHxtaWx8bmV0fG9yZ3xiaXp8YXJwYXxpbmZvfG5hbWV8cHJvfGFlcm98Y29vcHxtdXNldW18W2EtekEtWl17Mn0pKShcOlswLTldKykqKC8oJHxbYS16QS1aMC05XC5cLFw/XCdcXFwrJiUkI1w9fl9cLV0rKSkqJCIpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJscmVnZXgudGVzdCh0ZXh0dmFsKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gb3BlbkRyb3Bib3hDaG9vc2VyKCkgewogICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVxdWlyZWQuIENhbGxlZCB3aGVuIGEgdXNlciBzZWxlY3RzIGFuIGl0ZW0gaW4gdGhlIENob29zZXIuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoZmlsZXMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBQYXNzIHRoZSBKU09OLWl6ZWQgb3V0cHV0IG9mIHRoZSBDaG9vc2VyIHRvIHRoZSBiYWNraW5nIGJlYW4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdmlhIGEgaGlkZGVuIGlucHV0IGZpZWxkOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2lucHV0W2lkJD0iZHJvcEJveFNlbGVjdGlvbklucHV0Il0nKS52YWwoSlNPTi5zdHJpbmdpZnkoZmlsZXMpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2FsZXJ0KEpTT04uc3RyaW5naWZ5KGZpbGVzKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVHJpZ2dlciB0aGUgdXBsb2FkIHByb2Nlc3NpbmcgbWV0aG9kIGluIHRoZSBiYWNraW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gYmVhbiwgdmlhIGFuIGludmlzaWJsZSBjb21tYW5kQnV0dG9uOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJ2J1dHRvbltpZCQ9ImRyb3BCb3hCdXR0b24iXScpLnRyaWdnZXIoJ2NsaWNrJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua1R5cGU6ICJkaXJlY3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlzZWxlY3Q6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgICAgIERyb3Bib3guY2hvb3NlKG9wdGlvbnMpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgIDwvZGl2PgogICAgICAgIDwhLS0gRk9PVEVSIEJMT0NLIC0tPgoKICAgIDxkaXYgaWQ9ImZvb3RlciI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48ZGl2IGNsYXNzPSJjb2wtc20tOCBzbWFsbCI+CiAgICAgICAgICAgICAgICAgICAgPHA+Q29weXJpZ2h0ICYjMTY5OyAyMDE4LCBUaGUgUHJlc2lkZW50ICYjMzg7IEZlbGxvd3Mgb2YgSGFydmFyZCBDb2xsZWdlwqB8wqAgPGEgaHJlZj0iaHR0cDovL2Jlc3QtcHJhY3RpY2VzLmRhdGF2ZXJzZS5vcmcvaGFydmFyZC1wb2xpY2llcy9oYXJ2YXJkLXByaXZhY3ktcG9saWN5Lmh0bWwiIHRhcmdldD0iX2JsYW5rIj5Qcml2YWN5IFBvbGljeTwvYT4KICAgICAgICAgICAgICAgICAgICA8L3A+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNCB0ZXh0LXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3dlcmVkYnlsb2dvIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+UG93ZXJlZCBieTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2RhdGF2ZXJzZS5vcmcvIiB0aXRsZT0iVGhlIERhdGF2ZXJzZSBQcm9qZWN0IiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Ii9yZXNvdXJjZXMvaW1hZ2VzL2RhdGF2ZXJzZXByb2plY3RfbG9nby5wbmciIGFsdD0iVGhlIERhdGF2ZXJzZSBQcm9qZWN0IiAvPjwvYT48c3BhbiBjbGFzcz0idmVyc2lvbiI+di4gNC44LjQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj48c3R5bGU+CiNmZWVkYmFja1RhYiB7CiAgICBwb3NpdGlvbjpmaXhlZDsKICAgIGJvdHRvbTowOwogICAgcmlnaHQ6NTBweDsKfQojZmVlZGJhY2tUYWIgYnV0dG9uLmJ0bi1mZWVkYmFjayB7CiAgICBtYXJnaW4tcmlnaHQ6ODlweDsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOwogICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsKfQouYnRuLWZlZWRiYWNrIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzU1QjI4OwogIGJvcmRlci1jb2xvcjogI0M1NUIyODsKICBjb2xvcjogI2ZmZjsKfQouYnRuLWZlZWRiYWNrOmhvdmVyLAouYnRuLWZlZWRiYWNrOmZvY3VzLAouYnRuLWZlZWRiYWNrOmFjdGl2ZSwKLmJ0bi1mZWVkYmFjay5hY3RpdmUgewogIGJhY2tncm91bmQtY29sb3I6ICNiMDUxMjQ7CiAgYm9yZGVyLWNvbG9yOiAjOWI0NzFmOwogIGNvbG9yOiAjZmZmOwp9Ci5idG4tZmVlZGJhY2suZGlzYWJsZWQ6aG92ZXIsCi5idG4tZmVlZGJhY2suZGlzYWJsZWQ6Zm9jdXMsCi5idG4tZmVlZGJhY2suZGlzYWJsZWQ6YWN0aXZlLAouYnRuLWZlZWRiYWNrLmRpc2FibGVkLmFjdGl2ZSwKLmJ0bi1mZWVkYmFja1tkaXNhYmxlZF06aG92ZXIsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdOmZvY3VzLAouYnRuLWZlZWRiYWNrW2Rpc2FibGVkXTphY3RpdmUsCi5idG4tZmVlZGJhY2tbZGlzYWJsZWRdLmFjdGl2ZSwKZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tZmVlZGJhY2s6aG92ZXIsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrOmZvY3VzLApmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1mZWVkYmFjazphY3RpdmUsCmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWZlZWRiYWNrLmFjdGl2ZSB7CiAgYmFja2dyb3VuZC1jb2xvcjogI0M1NUIyODsKICBib3JkZXItY29sb3I6ICNDNTVCMjg7Cn0KI2ZlZWRiYWNrVGFiQm9keSBkaXYucGFuZWwgewogICAgd2lkdGg6MTkwcHg7CiAgICBtYXJnaW46MDsKICAgIGJhY2tncm91bmQ6I0Y4RjhGODsKICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjA7CiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Cn0KPC9zdHlsZT4KCjxkaXYgaWQ9ImZlZWRiYWNrVGFiIj4KICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1mZWVkYmFjayIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI2ZlZWRiYWNrVGFiQm9keSI+CiAgICAgICAgRmVlZGJhY2sKICAgIDwvYnV0dG9uPgogICAgPGRpdiBpZD0iZmVlZGJhY2tUYWJCb2R5IiBjbGFzcz0iY29sbGFwc2UiPgogICAgICAgIDxkaXYgY2xhc3M9InBhbmVsIHBhbmVsLWRlZmF1bHQiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYW5lbC1ib2R5IHRleHQtY2VudGVyIj4KICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4KICAgICAgICAgICAgICAgICAgSGVscCBpbXByb3ZlIERhdGF2ZXJzZTogVm9sdW50ZWVyIGZvciBvbmxpbmUgdXNhYmlsaXR5IHJlc2VhcmNoIQogICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1mZWVkYmFjayIgaHJlZj0iaHR0cHM6Ly9nb28uZ2wvZm9ybXMvcDd1dTNHZmlXWVNsSnJzaTEiIHJvbGU9ImJ1dHRvbiIgdGFyZ2V0PSJfYmxhbmsiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNmZWVkYmFja1RhYkJvZHkiPgogICAgICAgICAgICAgICAgICBMZWFybiBNb3JlCiAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4KPGRpdiBpZD0iYWpheFN0YXR1c1BhbmVsIj48ZGl2IGlkPSJhamF4U3RhdHVzUGFuZWxfc3RhcnQiIHN0eWxlPSJkaXNwbGF5Om5vbmUiPjxpbWcgc3JjPSIvcmVzb3VyY2VzL2ltYWdlcy9hamF4LWxvYWRpbmcuZ2lmO2pzZXNzaW9uaWQ9MDc2NGViZWE5ZWYzNjFiNzRjMGJiZTg0Mzk5MSIgYWx0PSJMb2FkaW5nIiAvPjwvZGl2PjxkaXYgaWQ9ImFqYXhTdGF0dXNQYW5lbF9jb21wbGV0ZSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICAgICAgICAgICAgICA8IS0tIERPIE5PVEhJTkcgLS0+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0iYWpheFN0YXR1c1BhbmVsX3MiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChmdW5jdGlvbigpe1ByaW1lRmFjZXMuY3coIkFqYXhTdGF0dXMiLCJ3aWRnZXRfYWpheFN0YXR1c1BhbmVsIix7aWQ6ImFqYXhTdGF0dXNQYW5lbCJ9KTt9KTs8L3NjcmlwdD4KICAgIDwhLS0gRGlhbG9nIENvbnRhY3QgRm9ybSAtLT48ZGl2IGlkPSJjb250YWN0RGlhbG9nIiBjbGFzcz0idWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLXNoYWRvdyB1aS1oaWRkZW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLXRvcCI+PHNwYW4gaWQ9ImNvbnRhY3REaWFsb2dfdGl0bGUiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGUiPkNvbnRhY3QgSGFydmFyZCBEYXRhdmVyc2UgU3VwcG9ydDwvc3Bhbj48YSBocmVmPSIjIiBjbGFzcz0idWktZGlhbG9nLXRpdGxlYmFyLWljb24gdWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHVpLWNvcm5lci1hbGwiPjxzcGFuIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tY2xvc2V0aGljayI+PC9zcGFuPjwvYT48L2Rpdj48ZGl2IGNsYXNzPSJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCI+PGRpdiBpZD0ial9pZHQxODU1Ij4KPGZvcm0gaWQ9ImVtYWlsRm9ybSIgbmFtZT0iZW1haWxGb3JtIiBtZXRob2Q9InBvc3QiIGFjdGlvbj0iL2RhdGFzZXQueGh0bWw7anNlc3Npb25pZD0wNzY0ZWJlYTllZjM2MWI3NGMwYmJlODQzOTkxP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzIiBjbGFzcz0iZm9ybS1ob3Jpem9udGFsIiBlbmN0eXBlPSJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJlbWFpbEZvcm0iIHZhbHVlPSJlbWFpbEZvcm0iIC8+CgogICAgICAgICAgICAgICAgPCEtLSB0bzogU3VwcG9ydCAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1lc3NhZ2VUbyIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPlRvPC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGlkPSJtZXNzYWdlVG8iIGNsYXNzPSJmb3JtLWNvbnRyb2wtc3RhdGljIj5IYXJ2YXJkIERhdGF2ZXJzZSBTdXBwb3J0PC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8IS0tIGZyb20gZW1haWwgKG5vdCBsb2dnZWQgaW4pIC0tPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJ1c2VyRW1haWwiIGNsYXNzPSJjb2wtc20tMyBjb250cm9sLWxhYmVsIj5Gcm9tIDxzcGFuIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLWFzdGVyaXNrIHRleHQtZGFuZ2VyIiB0aXRsZT0iUmVxdWlyZWQgZmllbGQiPjwvc3Bhbj48L2xhYmVsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PGlucHV0IGlkPSJlbWFpbEZvcm06dXNlckVtYWlsIiBuYW1lPSJlbWFpbEZvcm06dXNlckVtYWlsIiB0eXBlPSJ0ZXh0IiB2YWx1ZT0iIiBzaXplPSIzMCIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTp1c2VyRW1haWxfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJ3aWRnZXRfZW1haWxGb3JtX3VzZXJFbWFpbCIse2lkOiJlbWFpbEZvcm06dXNlckVtYWlsIn0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwhLS0gc3ViamVjdCAtLT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9Im1lc3NhZ2VTdWJqZWN0IiBjbGFzcz0iY29sLXNtLTMgY29udHJvbC1sYWJlbCI+U3ViamVjdCA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+PC9sYWJlbD4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+PGlucHV0IGlkPSJlbWFpbEZvcm06bWVzc2FnZVN1YmplY3QiIG5hbWU9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdCIgdHlwZT0idGV4dCIgdmFsdWU9IiIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIiAvPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3ViamVjdF9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPlByaW1lRmFjZXMuY3coIklucHV0VGV4dCIsIndpZGdldF9lbWFpbEZvcm1fbWVzc2FnZVN1YmplY3QiLHtpZDoiZW1haWxGb3JtOm1lc3NhZ2VTdWJqZWN0In0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+ICAgCiAgICAgICAgICAgICAgICA8IS0tIG1lc3NhZ2UgLS0+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4KICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPSJ1c2VyTWVzc2FnZSIgY2xhc3M9ImNvbC1zbS0zIGNvbnRyb2wtbGFiZWwiPk1lc3NhZ2UgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tYXN0ZXJpc2sgdGV4dC1kYW5nZXIiIHRpdGxlPSJSZXF1aXJlZCBmaWVsZCI+PC9zcGFuPjwvbGFiZWw+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPjx0ZXh0YXJlYSBpZD0iZW1haWxGb3JtOnVzZXJNZXNzYWdlIiBuYW1lPSJlbWFpbEZvcm06dXNlck1lc3NhZ2UiIGNvbHM9IjIwIiByb3dzPSIxMCIgbWF4bGVuZ3RoPSIyMTQ3NDgzNjQ3IiBjbGFzcz0idWktaW5wdXRmaWVsZCB1aS1pbnB1dHRleHRhcmVhIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgZm9ybS1jb250cm9sIj48L3RleHRhcmVhPjxzY3JpcHQgaWQ9ImVtYWlsRm9ybTp1c2VyTWVzc2FnZV9zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJJbnB1dFRleHRhcmVhIiwid2lkZ2V0X2VtYWlsRm9ybV91c2VyTWVzc2FnZSIse2lkOiJlbWFpbEZvcm06dXNlck1lc3NhZ2UiLGF1dG9SZXNpemU6ZmFsc2V9KTt9KTs8L3NjcmlwdD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPCEtLSB2YWxpZGF0aW9uIC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLW9mZnNldC0zIGNvbC1zbS05Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPHA+PHNwYW4gY2xhc3M9ImhpZ2hsaWdodEJvbGQiPlBsZWFzZSBmaWxsIHRoaXMgb3V0IHRvIHByb3ZlIHlvdSBhcmUgbm90IGEgcm9ib3QuPC9zcGFuPiA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi1hc3RlcmlzayB0ZXh0LWRhbmdlciIgdGl0bGU9IlJlcXVpcmVkIGZpZWxkIj48L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4gKyAgPSA8aW5wdXQgaWQ9ImVtYWlsRm9ybTptZXNzYWdlU3VtIiBuYW1lPSJlbWFpbEZvcm06bWVzc2FnZVN1bSIgdHlwZT0idGV4dCIgc2l6ZT0iNCIgY2xhc3M9InVpLWlucHV0ZmllbGQgdWktaW5wdXR0ZXh0IHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiIC8+PHNjcmlwdCBpZD0iZW1haWxGb3JtOm1lc3NhZ2VTdW1fcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5QcmltZUZhY2VzLmN3KCJJbnB1dFRleHQiLCJ3aWRnZXRfZW1haWxGb3JtX21lc3NhZ2VTdW0iLHtpZDoiZW1haWxGb3JtOm1lc3NhZ2VTdW0ifSk7PC9zY3JpcHQ+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwhLS0gc2VuZCB8IGNhbmNlbCBidXR0b25zIC0tPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWJsb2NrIj48YSBpZD0iZW1haWxGb3JtOmpfaWR0MTg3MyIgaHJlZj0iIyIgY2xhc3M9InVpLWNvbW1hbmRsaW5rIHVpLXdpZGdldCBidG4gYnRuLWRlZmF1bHQiIG9uY2xpY2s9IlByaW1lRmFjZXMuYWIoe3M6JnF1b3Q7ZW1haWxGb3JtOmpfaWR0MTg3MyZxdW90Oyx1OiZxdW90O2VtYWlsRm9ybSZxdW90OyxvbmNvOmZ1bmN0aW9uKHhocixzdGF0dXMsYXJncyl7aWYgKGFyZ3MgJmFtcDsmYW1wOyAhYXJncy52YWxpZGF0aW9uRmFpbGVkKSBQRignY29udGFjdEZvcm0nKS5oaWRlKCk7O30scGE6W3tuYW1lOiZxdW90O0RPX1ZBTElEQVRJT04mcXVvdDssdmFsdWU6JnF1b3Q7dHJ1ZSZxdW90O31dLGZpOiZxdW90O2pfaWR0MTg1NSZxdW90O30pO3JldHVybiBmYWxzZTsiPlNlbmQgTWVzc2FnZTwvYT4KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iUEYoJ2NvbnRhY3RGb3JtJykuaGlkZSgpIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iQ2FuY2VsIj4KICAgICAgICAgICAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICA8L2Rpdj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJqYXZheC5mYWNlcy5WaWV3U3RhdGUiIGlkPSJqX2lkMTpqYXZheC5mYWNlcy5WaWV3U3RhdGU6MCIgdmFsdWU9Ii00NDQyMDUxMDk1OTE2MzUyMzEyOi0yMDUzMjgzODk2NTk2MjgzNjY3IiBhdXRvY29tcGxldGU9Im9mZiIgLz4KPC9mb3JtPjwvZGl2PjwvZGl2PjwvZGl2PjxzY3JpcHQgaWQ9ImNvbnRhY3REaWFsb2dfcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7UHJpbWVGYWNlcy5jdygiRGlhbG9nIiwiY29udGFjdEZvcm0iLHtpZDoiY29udGFjdERpYWxvZyIsbW9kYWw6dHJ1ZX0pO30pOzwvc2NyaXB0PjxkaXYgaWQ9InN0YXR1c0luZm8iIGNsYXNzPSJ1aS1kaWFsb2cgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktc2hhZG93IHVpLWhpZGRlbi1jb250YWluZXIiPjxkaXYgY2xhc3M9InVpLWRpYWxvZy10aXRsZWJhciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItdG9wIj48c3BhbiBpZD0ic3RhdHVzSW5mb190aXRsZSIgY2xhc3M9InVpLWRpYWxvZy10aXRsZSI+PC9zcGFuPjxhIGhyZWY9IiMiIGNsYXNzPSJ1aS1kaWFsb2ctdGl0bGViYXItaWNvbiB1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgdWktY29ybmVyLWFsbCI+PHNwYW4gY2xhc3M9InVpLWljb24gdWktaWNvbi1jbG9zZXRoaWNrIj48L3NwYW4+PC9hPjwvZGl2PjxkaXYgY2xhc3M9InVpLWRpYWxvZy1jb250ZW50IHVpLXdpZGdldC1jb250ZW50Ij4KICAgICAgICAgICAgPHA+PC9wPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tYmxvY2siPgogICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IlBGKCdzdGF0dXNJbmZvJykuaGlkZSgpIiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiB2YWx1ZT0iQ2xvc2UiPgogICAgICAgICAgICAgICAgICAgIENsb3NlCiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdCBpZD0ic3RhdHVzSW5mb19zIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZnVuY3Rpb24oKXtQcmltZUZhY2VzLmN3KCJEaWFsb2ciLCJzdGF0dXNJbmZvIix7aWQ6InN0YXR1c0luZm8iLG1vZGFsOnRydWV9KTt9KTs8L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9icy9qcy9ib290c3RyYXAubWluLmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2JzL2pzL2Jvb3RzdHJhcC1ob3Zlci1kcm9wZG93bi5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvaWUtY29tcGF0LmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2R2X3JlYmluZF9ib290c3RyYXBfdWkuanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGRlZmVyPSJkZWZlciIgc3JjPSIvamF2YXguZmFjZXMucmVzb3VyY2UvanMvb3dsLmNhcm91c2VsLmpzLnhodG1sP3ZlcnNpb249NC44LjQiPjwvc2NyaXB0PgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2pxdWVyeS5tYXRjaEhlaWdodC5qcy54aHRtbD92ZXJzaW9uPTQuOC40Ij48L3NjcmlwdD4KICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgZGVmZXI9ImRlZmVyIiBzcmM9Ii9qYXZheC5mYWNlcy5yZXNvdXJjZS9qcy9qcXVlcnkuc2hhcnJyZS5qcy54aHRtbD92ZXJzaW9uPTQuOC40Ij48L3NjcmlwdD4gIAogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBkZWZlcj0iZGVmZXIiIHNyYz0iL2phdmF4LmZhY2VzLnJlc291cmNlL2pzL2NsaXBib2FyZC5taW4uanMueGh0bWw/dmVyc2lvbj00LjguNCI+PC9zY3JpcHQ+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgLy88IVtDREFUQVsKICAgICAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgLy8gTmF2YmFyIFNlYXJjaCBUb2dnbGUKICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjbmF2YmFyLXNlYXJjaC10b2dnbGUnLCBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50KCJsaSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAkKCJmb3JtLm5hdmJhci1mb3JtW3JvbGU9J3NlYXJjaCddIikuc2hvdygpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAkKCdib2R5JykuY2xpY2soZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoISQoZS50YXJnZXQpLmNsb3Nlc3QoImZvcm0ubmF2YmFyLWZvcm1bcm9sZT0nc2VhcmNoJ10iKS5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiZm9ybS5uYXZiYXItZm9ybVtyb2xlPSdzZWFyY2gnXSIpLmhpZGUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgJCgiI25hdmJhci1zZWFyY2gtdG9nZ2xlIikucGFyZW50KCJsaSIpLnNob3coKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgLy8gUmViaW5kIGJvb3RzdHJhcCBVSSBjb21wb25lbnRzCiAgICAgICAgICAgICAgICBiaW5kX2JzdWlfY29tcG9uZW50cygpOwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIAogICAgICAgICAgICAvL11dPgogICAgICAgIDwvc2NyaXB0PgogICAgPHNjcmlwdD48IS0tIEdvb2dsZSBBbmFseXRpY3MgU25pcHBldCAtLT4KICAgICAgICAoZnVuY3Rpb24oaSxzLG8sZyxyLGEsbSl7aVsnR29vZ2xlQW5hbHl0aWNzT2JqZWN0J109cjtpW3JdPWlbcl18fGZ1bmN0aW9uKCl7CiAgICAgICAgIChpW3JdLnE9aVtyXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfSxpW3JdLmw9MSpuZXcgRGF0ZSgpO2E9cy5jcmVhdGVFbGVtZW50KG8pLAogICAgICAgICBtPXMuZ2V0RWxlbWVudHNCeVRhZ05hbWUobylbMF07YS5hc3luYz0xO2Euc3JjPWc7bS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLG0pCiAgICAgICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnLy93d3cuZ29vZ2xlLWFuYWx5dGljcy5jb20vYW5hbHl0aWNzLmpzJywnZ2EnKTsKIAogICAgICAgICAgZ2EoJ2NyZWF0ZScsICJVQS02MTc1MzMzNC0xIiwgJ2F1dG8nKTsKCiAgICAgICAgICBnYSgnc2VuZCcsICdwYWdldmlldycsIHsKICAgICAgICAgICAgJ2hpdFR5cGUnOiAnc29jaWFsJywKICAgICAgICAgICAgJ3NvY2lhbE5ldHdvcmsnOiAnZmFjZWJvb2snLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3NlbmQnLAogICAgICAgICAgICAnc29jaWFsVGFyZ2V0JzogJ2h0dHBzOi8vZGF0YXZlcnNlLmhhcnZhcmQuZWR1JywKICAgICAgICAgICAgJ3BhZ2UnOiAnL2RhdGFzZXQueGh0bWw/cGVyc2lzdGVudElkPWRvaSUzQTEwLjc5MTAlMkZEVk4lMkZHQU9DMDMnCiAgICAgICAgICB9LCB7CiAgICAgICAgICAgICdoaXRUeXBlJzogJ3NvY2lhbCcsCiAgICAgICAgICAgICdzb2NpYWxOZXR3b3JrJzogJ3R3aXR0ZXInLAogICAgICAgICAgICAnc29jaWFsQWN0aW9uJzogJ3R3ZWV0JywKICAgICAgICAgICAgJ3NvY2lhbFRhcmdldCc6ICdodHRwczovL2RhdGF2ZXJzZS5oYXJ2YXJkLmVkdScsCiAgICAgICAgICAgICdwYWdlJzogJy9kYXRhc2V0LnhodG1sP3BlcnNpc3RlbnRJZD1kb2klM0ExMC43OTEwJTJGRFZOJTJGR0FPQzAzJwogICAgICAgICAgfSk7CiAgICAgICAgCgk8L3NjcmlwdD48L2JvZHk+CjwvaHRtbD4=
|
35
35
|
http_version:
|
36
|
-
recorded_at: Sun,
|
36
|
+
recorded_at: Sun, 01 Apr 2018 09:07:40 GMT
|
37
37
|
recorded_with: VCR 3.0.3
|
data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/not_found_error.yml
CHANGED
@@ -8,7 +8,7 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Maremma - https://github.com/datacite/maremma
|
11
|
+
- Maremma 4.0.5 - https://github.com/datacite/maremma
|
12
12
|
Accept:
|
13
13
|
- text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
|
14
14
|
response:
|
@@ -23,7 +23,7 @@ http_interactions:
|
|
23
23
|
Content-Length:
|
24
24
|
- '4984'
|
25
25
|
Date:
|
26
|
-
- Sun,
|
26
|
+
- Sun, 01 Apr 2018 09:07:35 GMT
|
27
27
|
body:
|
28
28
|
encoding: ASCII-8BIT
|
29
29
|
string: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n
|
@@ -89,5 +89,5 @@ http_interactions:
|
|
89
89
|
super;\">®</span>, and shortDOI<span style=\"vertical-align: super;\">®</span>
|
90
90
|
are trademarks of the International DOI Foundation.</span>\n</td> \n</tr>\n</table>\n</body>\n</html>\n"
|
91
91
|
http_version:
|
92
|
-
recorded_at: Sun,
|
92
|
+
recorded_at: Sun, 01 Apr 2018 09:07:36 GMT
|
93
93
|
recorded_with: VCR 3.0.3
|
@@ -17,7 +17,7 @@ http_interactions:
|
|
17
17
|
message: OK
|
18
18
|
headers:
|
19
19
|
Date:
|
20
|
-
- Sun,
|
20
|
+
- Sun, 01 Apr 2018 09:07:38 GMT
|
21
21
|
Server:
|
22
22
|
- Apache/2.4.6 (Red Hat Enterprise Linux)
|
23
23
|
Strict-Transport-Security:
|
@@ -104,12 +104,16 @@ http_interactions:
|
|
104
104
|
DAAC\">ORNL DAAC Home</a><a id=\"nasa-link\" href=\"https://www.nasa.gov\"
|
105
105
|
title=\"NASA\" target=\"_blank\">NASA Home</a><nav class=\"menubox\"><ul class=\"nav\">\n\t<li
|
106
106
|
class=\"top first home\"><a class=\"top_link\" href=\"/\" title=\"ORNL DAAC
|
107
|
-
home\"><span class=\"
|
108
|
-
class=\"
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
107
|
+
home\"><span class=\"fa fa-home fa-fw\"></span><span class=\"home_text down\">Home</span></a>\n\t\t<ul
|
108
|
+
class=\"contact_link\">\n\t\t\t<li><a href=\"javascript:feedback.showForm();\"
|
109
|
+
class=\"top_link\" title=\"User's Service Office\" id=\"Contact\"><span class=\"fa
|
110
|
+
fa-comment fa-flip-horizontal fa-fw\"></span><span class=\"down\">Contact
|
111
|
+
Us</span></a></li>\n\t\t</ul>\n\t</li>\n\t<li class=\"top\"><a href=\"/about/\"
|
112
|
+
class=\"top_link\"><span class=\"down\">About Us</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!--
|
113
|
+
<li><a href=\"/about_us.shtml\"><span>About ORNL DAAC</span></a></li> -->\n\t\t\t<!--
|
114
|
+
<li><a href=\"/who.shtml\"><span>Who We Are</span></a></li> -->\n\t\t\t<!--
|
115
|
+
<li><a href=\"/partners.html\"><span>Partners</span></a></li> -->\n\t\t\t<!--
|
116
|
+
<li><a href=\"/UWG/publicuwg.shtml\"><span>User Working Group</span></a></li>
|
113
117
|
-->\n\t\t\t<!-- <li><a href=\"/biogeochem.shtml\"><span>Biogeochemical Dynamics</span></a></li>
|
114
118
|
-->\n\t\t\t<!-- <li><a href=\"/citation_policy.html\"><span>Data Citation
|
115
119
|
Policy</span></a></li> -->\n\t\t\t<!-- <li><a href=\"/workshops/workshops.shtml\"><span>Workshops</span></a></li>
|
@@ -120,7 +124,7 @@ http_interactions:
|
|
120
124
|
href=\"https://daac-news.ornl.gov/\"><span>News</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
121
125
|
<li class=\"top\"><a href=\"/about/about_us.html\"><span>About Us</span></a></li>
|
122
126
|
-->\n\t<li class=\"top\"><a href=\"/get_data/\" class=\"top_link\"><span class=\"down\">Get
|
123
|
-
Data</span></a>\n\t\t<ul class
|
127
|
+
Data</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!-- <li><a href=\"/cgi-bin/catalog.pl?s\"><span>All
|
124
128
|
Projects</span></a></li> -->\n\t\t\t<li><a href=\"/cgi-bin/catalog.pl?l\"><span>Complete
|
125
129
|
Dataset List</span></a></li>\n\t\t\t<li><a href=\"/get_data#datasearch\" class=\"fly\"><span>Search
|
126
130
|
for Data</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<!-- <li><a href=\"https://mercury.ornl.gov/ornldaac/#q=*%3A*\"><span>Data
|
@@ -145,8 +149,8 @@ http_interactions:
|
|
145
149
|
of Subcanopy and Subsurface (AirMOSS)</span></a></li>\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=37\"><span>Atmospheric
|
146
150
|
Carbon and Transport - America (ACT-America)</span></a></li>\n\t\t\t\t\t<!--
|
147
151
|
<li><a href=\"/cgi-bin/dataset_lister.pl?p=38\"><span>AfriSAR</span></a></li>
|
148
|
-
-->\n\t\t\t\t\t
|
149
|
-
Tomography Mission (ATom)</span></a></li
|
152
|
+
-->\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=39\"><span>Atmospheric
|
153
|
+
Tomography Mission (ATom)</span></a></li>\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=7\"><span>First
|
150
154
|
ISLSCP Field Experiment (FIFE)</span></a></li>\n\t\t\t\t\t<!-- <li><a href=\"/cgi-bin/dataset_lister.pl?p=8\"><span>First
|
151
155
|
ISLSCP Field Experiment (FIFE) Follow On</span></a></li> -->\n\t\t\t\t</ul>\n\t\t\t</li>\n\t\t\t<li><a
|
152
156
|
href=\"/get_data#validation\" class=\"fly\"><span>Land Validation</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a
|
@@ -175,24 +179,36 @@ http_interactions:
|
|
175
179
|
href=\"/get_data#models\" class=\"fly\"><span>Model Archive</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a
|
176
180
|
href=\"/cgi-bin/dataset_lister.pl?p=27\"><span>Model Archive</span></a></li>\n\t\t\t\t</ul>\n\t\t\t</li>\n\t\t</ul>\n\t</li>\n\t<!--
|
177
181
|
<li class=\"top\"><a href=\"/get_data/get_data.html\"><span>Get Data</span></a></li>
|
178
|
-
-->\n\t<li class=\"top halfwide
|
179
|
-
class=\"down\">Submit Data</span></a
|
180
|
-
Data</span></a></li
|
181
|
-
|
182
|
-
href=\"/
|
183
|
-
href=\"/
|
184
|
-
href=\"/
|
185
|
-
href=\"/
|
186
|
-
|
187
|
-
|
188
|
-
<li
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
182
|
+
-->\n\t<li class=\"top halfwide\"><a href=\"/submit/\" class=\"top_link\"><span
|
183
|
+
class=\"down\">Submit Data</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<li><a
|
184
|
+
href=\"/submit/form/form.html\"><span>Submit Data Form</span></a></li>\n\t\t\t<li><a
|
185
|
+
href=\"/submit/#scope_and_acceptance_policy\"><span>Data Scope and Acceptance</span></a></li>\n\t\t\t<li><a
|
186
|
+
href=\"/submit/#authorship\"><span>Data Authorship Policy</span></a></li>\n\t\t\t<li><a
|
187
|
+
href=\"/submit/#timeline\"><span>Data Publication Timeline</span></a></li>\n\t\t\t<li><a
|
188
|
+
href=\"/submit/#guidelines\"><span>Detailed Submission Guidelines</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
189
|
+
<li class=\"top\"><a href=\"/submit/submit.html\"><span>Submit Data</span></a>\n\t\t<ul
|
190
|
+
class=\"sub\">\n\t\t\t<li><a href=\"/submit/form/form.html\"><span>Submit
|
191
|
+
Data Form</span></a></li>\n\t\t\t<li><a href=\"/submit/#scope_and_acceptance_policy\"><span>Data
|
192
|
+
Scope and Acceptance Policy</span></a></li>\n\t\t\t<li><a href=\"/submit/#authorship\"><span>Data
|
193
|
+
Authorship Policy</span></a></li>\n\t\t\t<li><a href=\"/submit/#timeline\"><span>Data
|
194
|
+
Publication Timeline</span></a></li>\n\t\t\t<li><a href=\"/submit/#guidelines\"><span>Detailed
|
195
|
+
Submission Guidelines</span></a></li>\n\t\t\t<li><a href=\"/submit/questions/questions.html\"><span>Data
|
196
|
+
Provider Questions</span></a></li>\n\t\t\t<li><a href=\"/submit/qachecklist/qachecklist.html\"><span>Data
|
197
|
+
Quality Review Checklist</span></a></li>\n\t\t\t<li><a href=\"/submit/csvstandards/csvstandards.html\"><span>CSV
|
198
|
+
Standards</span></a></li>\n\t\t\t<li><a href=\"/submit/netcdfrequirements/netcdfrequirements.html\"><span>NetCDF
|
199
|
+
Data Requirements</span></a></li>\n\t\t</ul>\n\t</li> -->\n\t<li class=\"top
|
200
|
+
wide\"><a href=\"/datamanagement/\" class=\"top_link\"><span class=\"down\">Data
|
201
|
+
Management</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<li><a href=\"/datamanagement/#best_practices\"><span>Best
|
202
|
+
Practices</span></a></li>\n\t\t\t<li><a href=\"/datamanagement/#dmp\"><span>Data
|
203
|
+
Management Plan</span></a></li>\n\t\t\t<li><a href=\"/datamanagement/#how-tos\"><span>How-to's</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
204
|
+
<li class=\"top\"><a href=\"/datamanagement/datamanagement.html\"><span>Data
|
205
|
+
Management</span></a></li> -->\n\t<li class=\"top\"><a href=\"/tools/\" class=\"top_link\"><span
|
206
|
+
class=\"down\">Tools</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!-- <li><a
|
207
|
+
href=\"/tools/\"><span>Data Tools</span></a></li> -->\n\t\t\t<li><a href=\"https://modis.ornl.gov/data.html\"
|
208
|
+
class=\"fly\"><span>MODIS</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a href=\"/modisfixedsite/\"><span>MODIS
|
209
|
+
Fixed Site Subsets</span></a></li>\n\t\t\t\t\t<li><a href=\"/modisglobal/\"><span>MODIS
|
210
|
+
Global Subsets</span></a></li>\n\t\t\t\t\t<li><a href=\"/modiswebservice/\"><span>MODIS
|
211
|
+
Web service</span></a></li>\n\t\t\t\t</ul></li>\n\t\t\t<li><a href=\"https://thredds.daac.ornl.gov/thredds/catalogs/ornldaac/ornldaac.html\"><span>THREDDS</span></a></li>\n\t\t\t<li><a
|
196
212
|
href=\"https://webmap.ornl.gov/wcsdown\"><span>SDAT</span></a></li>\n\t\t\t<li><a
|
197
213
|
href=\"https://daymet.ornl.gov\"><span>Daymet</span></a></li>\n\t\t\t<li><a
|
198
214
|
href=\"https://carve.ornl.gov/visualize/\"><span>CARVE Data Viewer</span></a></li>\n\t\t\t<li><a
|
@@ -206,8 +222,8 @@ http_interactions:
|
|
206
222
|
-->\n\t\t\t<!-- <li><a href=\"/cgi-bin/service_dataset_lister.pl?svc_id=4\"><span>THREDDS</span></a></li>
|
207
223
|
-->\n\t\t</ul>\n\t</li>\n\t<!-- <li class=\"top\"><a href=\"/tools/tools.html\"><span>Tools</span></a></li>
|
208
224
|
-->\n <li class=\"top notab\"><a href=\"/help/\" class=\"top_link\"><span
|
209
|
-
class=\"down\">Help</span></a>\n <ul class
|
210
|
-
DAAC Help</span></a></li> -->\n <li><a href=\"/faq/\"><span>FAQs</span></a></li>\n
|
225
|
+
class=\"down\">Help</span></a>\n <ul class=\"sub\">\n <!-- <li><a
|
226
|
+
href=\"/help/\"><span>ORNL DAAC Help</span></a></li> -->\n <li><a href=\"/faq/\"><span>FAQs</span></a></li>\n
|
211
227
|
\ <!-- <li><a href=\"/faq/faq.shtml\"><span>FAQs</span></a></li> -->\n
|
212
228
|
\ <!-- <li><a href=\"/tutorial_main.shtml\"><span>Tutorials</span></a></li>
|
213
229
|
-->\n <!-- <li><a href=\"/order_access.shtml\">Order Access</a></li>
|
@@ -285,7 +301,7 @@ http_interactions:
|
|
285
301
|
scope=\"row\">Project</th><td><ul class=\"associated-projects\"><li><a href=\"/cgi-bin/dataset_lister.pl?p=36\"><span
|
286
302
|
class=\"eui-badge--md primary-project\">AirMOSS</span></a></li></ul></td></tr><tr><th
|
287
303
|
scope=\"row\">Release Date</th><td>2018-03-06</td></tr><tr><th scope=\"row\">Usage</th><td
|
288
|
-
title=\"
|
304
|
+
title=\"47100 total files since 2016-11-11\">300 downloads</td></tr> </tbody></table>\n
|
289
305
|
\ </div>\n<div class=\"action_links\"><a class=\"eui-btn--green eui-btn--pill
|
290
306
|
eui-btn--lg\" title=\"Sign-in to download\" href=\"javascript:alert('Sign-in
|
291
307
|
to download data')\"><i class=\"fa fa-download pad-right\" aria-hidden=\"true\"></i>Download
|
@@ -585,13 +601,17 @@ http_interactions:
|
|
585
601
|
RSS Feed\"> <span class=\"icon-rss-sign\"></span><span class=\"sr-only\">ORNL
|
586
602
|
DAAC News RSS Feed</span></a>\n </div>\n </div>\n <!--main-footer-->\n\n
|
587
603
|
\ <div class=\"big-foot\">\n<ul class=\"nav\">\n\t<li class=\"top first
|
588
|
-
home\"><a class=\"top_link\" href=\"/\" title=\"ORNL DAAC home\"><span class=\"
|
589
|
-
class=\"home_text
|
590
|
-
|
591
|
-
class
|
592
|
-
|
593
|
-
|
594
|
-
|
604
|
+
home\"><a class=\"top_link\" href=\"/\" title=\"ORNL DAAC home\"><span class=\"fa
|
605
|
+
fa-home fa-fw\"></span><span class=\"home_text down\">Home</span></a>\n\t\t<ul
|
606
|
+
class=\"contact_link\">\n\t\t\t<li><a href=\"javascript:feedback.showForm();\"
|
607
|
+
class=\"top_link\" title=\"User's Service Office\" id=\"Contact\"><span class=\"fa
|
608
|
+
fa-comment fa-flip-horizontal fa-fw\"></span><span class=\"down\">Contact
|
609
|
+
Us</span></a></li>\n\t\t</ul>\n\t</li>\n\t<li class=\"top\"><a href=\"/about/\"
|
610
|
+
class=\"top_link\"><span class=\"down\">About Us</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!--
|
611
|
+
<li><a href=\"/about_us.shtml\"><span>About ORNL DAAC</span></a></li> -->\n\t\t\t<!--
|
612
|
+
<li><a href=\"/who.shtml\"><span>Who We Are</span></a></li> -->\n\t\t\t<!--
|
613
|
+
<li><a href=\"/partners.html\"><span>Partners</span></a></li> -->\n\t\t\t<!--
|
614
|
+
<li><a href=\"/UWG/publicuwg.shtml\"><span>User Working Group</span></a></li>
|
595
615
|
-->\n\t\t\t<!-- <li><a href=\"/biogeochem.shtml\"><span>Biogeochemical Dynamics</span></a></li>
|
596
616
|
-->\n\t\t\t<!-- <li><a href=\"/citation_policy.html\"><span>Data Citation
|
597
617
|
Policy</span></a></li> -->\n\t\t\t<!-- <li><a href=\"/workshops/workshops.shtml\"><span>Workshops</span></a></li>
|
@@ -602,7 +622,7 @@ http_interactions:
|
|
602
622
|
href=\"https://daac-news.ornl.gov/\"><span>News</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
603
623
|
<li class=\"top\"><a href=\"/about/about_us.html\"><span>About Us</span></a></li>
|
604
624
|
-->\n\t<li class=\"top\"><a href=\"/get_data/\" class=\"top_link\"><span class=\"down\">Get
|
605
|
-
Data</span></a>\n\t\t<ul class
|
625
|
+
Data</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!-- <li><a href=\"/cgi-bin/catalog.pl?s\"><span>All
|
606
626
|
Projects</span></a></li> -->\n\t\t\t<li><a href=\"/cgi-bin/catalog.pl?l\"><span>Complete
|
607
627
|
Dataset List</span></a></li>\n\t\t\t<li><a href=\"/get_data#datasearch\" class=\"fly\"><span>Search
|
608
628
|
for Data</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<!-- <li><a href=\"https://mercury.ornl.gov/ornldaac/#q=*%3A*\"><span>Data
|
@@ -627,8 +647,8 @@ http_interactions:
|
|
627
647
|
of Subcanopy and Subsurface (AirMOSS)</span></a></li>\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=37\"><span>Atmospheric
|
628
648
|
Carbon and Transport - America (ACT-America)</span></a></li>\n\t\t\t\t\t<!--
|
629
649
|
<li><a href=\"/cgi-bin/dataset_lister.pl?p=38\"><span>AfriSAR</span></a></li>
|
630
|
-
-->\n\t\t\t\t\t
|
631
|
-
Tomography Mission (ATom)</span></a></li
|
650
|
+
-->\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=39\"><span>Atmospheric
|
651
|
+
Tomography Mission (ATom)</span></a></li>\n\t\t\t\t\t<li><a href=\"/cgi-bin/dataset_lister.pl?p=7\"><span>First
|
632
652
|
ISLSCP Field Experiment (FIFE)</span></a></li>\n\t\t\t\t\t<!-- <li><a href=\"/cgi-bin/dataset_lister.pl?p=8\"><span>First
|
633
653
|
ISLSCP Field Experiment (FIFE) Follow On</span></a></li> -->\n\t\t\t\t</ul>\n\t\t\t</li>\n\t\t\t<li><a
|
634
654
|
href=\"/get_data#validation\" class=\"fly\"><span>Land Validation</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a
|
@@ -657,24 +677,36 @@ http_interactions:
|
|
657
677
|
href=\"/get_data#models\" class=\"fly\"><span>Model Archive</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a
|
658
678
|
href=\"/cgi-bin/dataset_lister.pl?p=27\"><span>Model Archive</span></a></li>\n\t\t\t\t</ul>\n\t\t\t</li>\n\t\t</ul>\n\t</li>\n\t<!--
|
659
679
|
<li class=\"top\"><a href=\"/get_data/get_data.html\"><span>Get Data</span></a></li>
|
660
|
-
-->\n\t<li class=\"top halfwide
|
661
|
-
class=\"down\">Submit Data</span></a
|
662
|
-
Data</span></a></li
|
663
|
-
|
664
|
-
href=\"/
|
665
|
-
href=\"/
|
666
|
-
href=\"/
|
667
|
-
href=\"/
|
668
|
-
|
669
|
-
|
670
|
-
<li
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
680
|
+
-->\n\t<li class=\"top halfwide\"><a href=\"/submit/\" class=\"top_link\"><span
|
681
|
+
class=\"down\">Submit Data</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<li><a
|
682
|
+
href=\"/submit/form/form.html\"><span>Submit Data Form</span></a></li>\n\t\t\t<li><a
|
683
|
+
href=\"/submit/#scope_and_acceptance_policy\"><span>Data Scope and Acceptance</span></a></li>\n\t\t\t<li><a
|
684
|
+
href=\"/submit/#authorship\"><span>Data Authorship Policy</span></a></li>\n\t\t\t<li><a
|
685
|
+
href=\"/submit/#timeline\"><span>Data Publication Timeline</span></a></li>\n\t\t\t<li><a
|
686
|
+
href=\"/submit/#guidelines\"><span>Detailed Submission Guidelines</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
687
|
+
<li class=\"top\"><a href=\"/submit/submit.html\"><span>Submit Data</span></a>\n\t\t<ul
|
688
|
+
class=\"sub\">\n\t\t\t<li><a href=\"/submit/form/form.html\"><span>Submit
|
689
|
+
Data Form</span></a></li>\n\t\t\t<li><a href=\"/submit/#scope_and_acceptance_policy\"><span>Data
|
690
|
+
Scope and Acceptance Policy</span></a></li>\n\t\t\t<li><a href=\"/submit/#authorship\"><span>Data
|
691
|
+
Authorship Policy</span></a></li>\n\t\t\t<li><a href=\"/submit/#timeline\"><span>Data
|
692
|
+
Publication Timeline</span></a></li>\n\t\t\t<li><a href=\"/submit/#guidelines\"><span>Detailed
|
693
|
+
Submission Guidelines</span></a></li>\n\t\t\t<li><a href=\"/submit/questions/questions.html\"><span>Data
|
694
|
+
Provider Questions</span></a></li>\n\t\t\t<li><a href=\"/submit/qachecklist/qachecklist.html\"><span>Data
|
695
|
+
Quality Review Checklist</span></a></li>\n\t\t\t<li><a href=\"/submit/csvstandards/csvstandards.html\"><span>CSV
|
696
|
+
Standards</span></a></li>\n\t\t\t<li><a href=\"/submit/netcdfrequirements/netcdfrequirements.html\"><span>NetCDF
|
697
|
+
Data Requirements</span></a></li>\n\t\t</ul>\n\t</li> -->\n\t<li class=\"top
|
698
|
+
wide\"><a href=\"/datamanagement/\" class=\"top_link\"><span class=\"down\">Data
|
699
|
+
Management</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<li><a href=\"/datamanagement/#best_practices\"><span>Best
|
700
|
+
Practices</span></a></li>\n\t\t\t<li><a href=\"/datamanagement/#dmp\"><span>Data
|
701
|
+
Management Plan</span></a></li>\n\t\t\t<li><a href=\"/datamanagement/#how-tos\"><span>How-to's</span></a></li>\n\t\t</ul>\n\t</li>\n\t<!--
|
702
|
+
<li class=\"top\"><a href=\"/datamanagement/datamanagement.html\"><span>Data
|
703
|
+
Management</span></a></li> -->\n\t<li class=\"top\"><a href=\"/tools/\" class=\"top_link\"><span
|
704
|
+
class=\"down\">Tools</span></a>\n\t\t<ul class=\"sub\">\n\t\t\t<!-- <li><a
|
705
|
+
href=\"/tools/\"><span>Data Tools</span></a></li> -->\n\t\t\t<li><a href=\"https://modis.ornl.gov/data.html\"
|
706
|
+
class=\"fly\"><span>MODIS</span></a>\n\t\t\t\t<ul>\n\t\t\t\t\t<li><a href=\"/modisfixedsite/\"><span>MODIS
|
707
|
+
Fixed Site Subsets</span></a></li>\n\t\t\t\t\t<li><a href=\"/modisglobal/\"><span>MODIS
|
708
|
+
Global Subsets</span></a></li>\n\t\t\t\t\t<li><a href=\"/modiswebservice/\"><span>MODIS
|
709
|
+
Web service</span></a></li>\n\t\t\t\t</ul></li>\n\t\t\t<li><a href=\"https://thredds.daac.ornl.gov/thredds/catalogs/ornldaac/ornldaac.html\"><span>THREDDS</span></a></li>\n\t\t\t<li><a
|
678
710
|
href=\"https://webmap.ornl.gov/wcsdown\"><span>SDAT</span></a></li>\n\t\t\t<li><a
|
679
711
|
href=\"https://daymet.ornl.gov\"><span>Daymet</span></a></li>\n\t\t\t<li><a
|
680
712
|
href=\"https://carve.ornl.gov/visualize/\"><span>CARVE Data Viewer</span></a></li>\n\t\t\t<li><a
|
@@ -688,18 +720,18 @@ http_interactions:
|
|
688
720
|
-->\n\t\t\t<!-- <li><a href=\"/cgi-bin/service_dataset_lister.pl?svc_id=4\"><span>THREDDS</span></a></li>
|
689
721
|
-->\n\t\t</ul>\n\t</li>\n\t<!-- <li class=\"top\"><a href=\"/tools/tools.html\"><span>Tools</span></a></li>
|
690
722
|
-->\n <li class=\"top notab\"><a href=\"/help/\" class=\"top_link\"><span
|
691
|
-
class=\"down\">Help</span></a>\n <ul class
|
692
|
-
DAAC Help</span></a></li> -->\n <li><a href=\"/faq/\"><span>FAQs</span></a></li>\n
|
723
|
+
class=\"down\">Help</span></a>\n <ul class=\"sub\">\n <!-- <li><a
|
724
|
+
href=\"/help/\"><span>ORNL DAAC Help</span></a></li> -->\n <li><a href=\"/faq/\"><span>FAQs</span></a></li>\n
|
693
725
|
\ <!-- <li><a href=\"/faq/faq.shtml\"><span>FAQs</span></a></li> -->\n
|
694
726
|
\ <!-- <li><a href=\"/tutorial_main.shtml\"><span>Tutorials</span></a></li>
|
695
727
|
-->\n <!-- <li><a href=\"/order_access.shtml\">Order Access</a></li>
|
696
728
|
-->\n </ul></li>\n <!-- <li class=\"top notab\"><a href=\"/help/help.html\">Help</a></li>
|
697
|
-
-->\n\n</ul>\n <ul>\n <li class=\"top last\"><a href=\"javascript:feedback.showForm();\"
|
729
|
+
-->\n\n</ul>\n <!-- \n <ul>\n <li class=\"top last\"><a href=\"javascript:feedback.showForm();\"
|
698
730
|
class=\"top_link foot-link\"\n title=\"User's Service Office\" id=\"Contact\">
|
699
731
|
<span\n class=\"icon-comment icon-flip-horizontal pad-right line-icon\"></span><span
|
700
|
-
class=\"down\">Contact Us</span></a></li>\n </ul>\n </div>\n
|
701
|
-
\ <hr>\n\n </div>\n <!-- headWrapper -->\n</footer>\n\n<!--
|
702
|
-
-->\n<script src=\"/js/jquery.js\"></script>\n<script src=\"/js/utils.js\"></script>\n<script
|
732
|
+
class=\"down\">Contact Us</span></a></li>\n </ul>\n -->\n </div>\n
|
733
|
+
\ <!--big-foot-->\n <hr>\n\n </div>\n <!-- headWrapper -->\n</footer>\n\n<!--
|
734
|
+
Add utils.js -->\n<script src=\"/js/jquery.js\"></script>\n<script src=\"/js/utils.js\"></script>\n<script
|
703
735
|
>highlight(tabToHighlight);</script>\n\n<!-- integrated search bar js -->\n<script
|
704
736
|
src=\"/js/jquery-ui/jquery-ui.min.js\"></script>\n<script src=\"/js/succinct-master/jQuery.succinct.min.js\"></script>\n<script
|
705
737
|
src=\"/js/integrated-search/integrated-search.min.js\"></script>\n\n<!-- Add
|
@@ -730,5 +762,5 @@ http_interactions:
|
|
730
762
|
orderable: false, targets: [] }, \n { type: \"file-size\", targets:
|
731
763
|
[1] }\n ],\n order: [[0, \"asc\"]]\n } );\n\n } );\n</script>\n\n</body>\n</html>\n"
|
732
764
|
http_version:
|
733
|
-
recorded_at: Sun,
|
765
|
+
recorded_at: Sun, 01 Apr 2018 09:07:39 GMT
|
734
766
|
recorded_with: VCR 3.0.3
|