bolognese 0.9.32 → 0.9.33

Sign up to get free protection for your applications and to get access to all the features.
Files changed (248) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/lib/bolognese/metadata.rb +18 -4
  4. data/lib/bolognese/readers/codemeta_reader.rb +3 -1
  5. data/lib/bolognese/readers/crossref_reader.rb +4 -2
  6. data/lib/bolognese/readers/datacite_reader.rb +11 -5
  7. data/lib/bolognese/readers/schema_org_reader.rb +3 -1
  8. data/lib/bolognese/version.rb +1 -1
  9. data/lib/bolognese/writers/crosscite_writer.rb +4 -1
  10. data/lib/bolognese/writers/datacite_json_writer.rb +4 -1
  11. data/spec/author_utils_spec.rb +16 -16
  12. data/spec/cli_spec.rb +2 -2
  13. data/spec/datacite_utils_spec.rb +3 -0
  14. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/default.yml +21 -646
  15. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_bibtex.yml +21 -646
  16. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_crossref.yml +20 -645
  17. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_datacite.yml +23 -646
  18. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_schema_org.yml +21 -646
  19. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/default.yml +57 -12
  20. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_bibtex.yml +59 -12
  21. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite.yml +57 -12
  22. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite_json.yml +56 -13
  23. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_schema_org.yml +57 -12
  24. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/default.yml +30 -563
  25. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_bibtex.yml +30 -563
  26. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_datacite.yml +30 -563
  27. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_schema_org.yml +30 -563
  28. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/author.yml +5 -171
  29. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/no_author.yml +4 -168
  30. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/single_author.yml +5 -171
  31. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/with_organization.yml +4 -170
  32. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi.yml +5 -171
  33. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/not_a_doi.yml +5 -171
  34. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/url.yml +5 -171
  35. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/crossref.yml +23 -177
  36. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/datacite.yml +21 -177
  37. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/medra.yml +20 -176
  38. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_a_valid_prefix.yml +5 -171
  39. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_found.yml +24 -180
  40. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref.yml +73 -18
  41. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +73 -18
  42. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite.yml +73 -18
  43. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite_doi_http.yml +73 -20
  44. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/github.yml +59 -12
  45. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/orcid.yml +56 -13
  46. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/schema_org.yml +59 -12
  47. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +77 -20
  48. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/bibtex.yml +57 -12
  49. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/citeproc.yml +57 -14
  50. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/codemeta.yml +59 -12
  51. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crosscite.yml +57 -12
  52. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crossref.yml +57 -12
  53. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite.yml +57 -12
  54. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite_json.yml +57 -14
  55. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/ris.yml +57 -12
  56. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/schema_org.yml +59 -12
  57. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_string/crosscite.yml +59 -12
  58. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org/with_id.yml +4 -168
  59. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/maremma.yml +10 -37
  60. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/no_codemeta_json.yml +8 -8
  61. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/not_found_error.yml +8 -8
  62. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +21 -294
  63. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +21 -214
  64. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +21 -646
  65. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/date_in_future.yml +21 -152
  66. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article.yml +21 -861
  67. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/not_found_error.yml +19 -11
  68. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/posted_content.yml +21 -120
  69. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/BlogPosting.yml +57 -12
  70. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_test_system.yml +43 -12
  71. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_not_found.yml +22 -10
  72. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Dataset.yml +57 -12
  73. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding.yml +57 -12
  74. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_schema_version_4.yml +56 -11
  75. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_only_full_name.yml +57 -12
  76. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_scheme.yml +58 -11
  77. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_wrong_orcid_scheme.yml +57 -12
  78. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/date.yml +57 -12
  79. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/empty_subject.yml +57 -12
  80. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_schema_version_3.yml +57 -12
  81. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/is_identical_to.yml +56 -13
  82. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/keywords_with_attributes.yml +57 -12
  83. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorName.yml +57 -12
  84. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_licenses.yml +57 -12
  85. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/date.yml +4 -168
  86. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year-month.yml +5 -171
  87. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year.yml +4 -170
  88. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/date.yml +5 -171
  89. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year-month.yml +4 -170
  90. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year.yml +5 -169
  91. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_ORCID.yml +83 -11
  92. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_jacow_org_scheme.yml +82 -12
  93. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_multiple_name_identifier.yml +83 -11
  94. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_name_identifiers/has_no_ORCID.yml +82 -12
  95. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_familyName.yml +68 -57
  96. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_multiple_names_in_display-order.yml +33 -57
  97. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_Thai.yml +69 -56
  98. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order.yml +68 -57
  99. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +68 -57
  100. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_sort-order.yml +68 -57
  101. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/hyper-authorship.yml +66 -55
  102. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_organization.yml +4 -170
  103. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_author_names_in_one_field.yml +68 -57
  104. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_name_identifier.yml +47 -12
  105. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation.yml +46 -13
  106. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_role.yml +47 -12
  107. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting.yml +30 -563
  108. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +18 -18
  109. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/not_found_error.yml +3 -3
  110. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +16 -8
  111. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/unknown_DOI_prefix.yml +19 -9
  112. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_alternate_identifiers/insert.yml +28 -50
  113. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_contributors/none.yml +27 -51
  114. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_creators/insert.yml +27 -51
  115. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_dates/insert.yml +26 -52
  116. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_descriptions/insert.yml +27 -51
  117. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_identifier/doi.yml +27 -51
  118. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_person/creator_only_name.yml +27 -51
  119. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publication_year/insert.yml +27 -51
  120. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publisher/insert.yml +27 -51
  121. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/insert.yml +27 -51
  122. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/related_identifier.yml +27 -51
  123. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type/insert.yml +27 -51
  124. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_rights_list/insert.yml +26 -50
  125. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_subjects/insert.yml +27 -51
  126. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_titles/insert.yml +26 -52
  127. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_version/insert.yml +28 -50
  128. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_comma.yml +5 -171
  129. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_family_name.yml +4 -170
  130. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_id.yml +5 -169
  131. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_known_given_name.yml +5 -171
  132. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_no_info.yml +5 -171
  133. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_type_organization.yml +5 -171
  134. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/missing_comma.yml +57 -12
  135. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/nil.yml +57 -12
  136. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/overlapping_keys.yml +59 -12
  137. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/valid.yml +57 -14
  138. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/SICI_doi.yml +5 -169
  139. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi.yml +5 -171
  140. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_url_without_doi_proxy.yml +5 -171
  141. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_too_long.yml +5 -171
  142. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_with_string.yml +4 -170
  143. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_with_protocol.yml +5 -169
  144. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/dx_doi_org_url.yml +5 -171
  145. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/https_url.yml +5 -171
  146. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/not_valid_doi_prefix.yml +5 -171
  147. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/url_with_one_slash.yml +5 -171
  148. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi.yml +5 -171
  149. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi_as_url.yml +5 -171
  150. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/ftp.yml +5 -171
  151. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/invalid_url.yml +5 -171
  152. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/string.yml +5 -171
  153. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url.yml +5 -169
  154. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url_with_utf-8.yml +5 -171
  155. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/doi.yml +5 -171
  156. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/url.yml +5 -171
  157. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/uri.yml +5 -112
  158. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash.yml +4 -111
  159. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array.yml +5 -171
  160. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array_of_strings.yml +4 -111
  161. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/first.yml +5 -112
  162. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/hash.yml +5 -169
  163. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/nil.yml +5 -171
  164. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/string.yml +5 -171
  165. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_only_keep_specific_tags.yml +4 -170
  166. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_remove_a_tags.yml +5 -171
  167. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org/with_id.yml +5 -171
  168. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid.yml +7 -64
  169. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_https.yml +6 -63
  170. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_id.yml +5 -112
  171. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_with_spaces.yml +7 -64
  172. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_wrong_id.yml +6 -63
  173. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_www.yml +7 -64
  174. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +4 -111
  175. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +7 -64
  176. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +7 -64
  177. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +7 -64
  178. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/DOI.yml +5 -171
  179. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/ISSN.yml +5 -171
  180. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/URL.yml +5 -171
  181. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/string.yml +4 -170
  182. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/BlogPosting.yml +27 -51
  183. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/Dataset.yml +27 -51
  184. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/from_schema_org.yml +30 -563
  185. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/maremma.yml +10 -37
  186. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/text.yml +41 -6
  187. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_data_citation.yml +5 -699
  188. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_pages.yml +4 -344
  189. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting.yml +27 -51
  190. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml +30 -563
  191. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Dataset.yml +27 -51
  192. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/container_title.yml +41 -6
  193. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/journal_article.yml +5 -699
  194. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/maremma.yml +12 -39
  195. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/multiple_abstracts.yml +41 -6
  196. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_pages.yml +4 -344
  197. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +27 -51
  198. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/maremma.yml +10 -37
  199. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_ORCID_ID.yml +5 -345
  200. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation.yml +5 -699
  201. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation_schema_org.yml +30 -563
  202. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crossref/from_DataCite.yml +28 -50
  203. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/maremma.yml +9 -36
  204. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +5 -345
  205. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +4 -698
  206. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation_schema_org.yml +30 -563
  207. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Dataset_in_schema_4_0.yml +28 -50
  208. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/maremma.yml +10 -37
  209. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_ORCID_ID.yml +5 -345
  210. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation.yml +5 -699
  211. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation_schema_org.yml +30 -563
  212. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_editor.yml +5 -912
  213. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting.yml +27 -51
  214. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +30 -563
  215. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/Dataset.yml +27 -51
  216. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/alternate_name.yml +41 -6
  217. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/journal_article.yml +5 -697
  218. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/maremma.yml +10 -37
  219. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/with_pages.yml +4 -344
  220. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding.yml +40 -5
  221. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +41 -6
  222. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +41 -6
  223. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +27 -51
  224. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_isReferencedBy.yml +27 -51
  225. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/journal_article.yml +5 -699
  226. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +10 -37
  227. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting.yml +55 -83
  228. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_Citeproc_JSON.yml +28 -32
  229. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_DataCite_JSON.yml +28 -32
  230. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Crossref_DOI.yml +28 -32
  231. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/DataONE.yml +28 -32
  232. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Dataset.yml +55 -83
  233. data/spec/readers/crossref_reader_spec.rb +2 -2
  234. data/spec/readers/datacite_reader_spec.rb +8 -3
  235. data/spec/readers/schema_org_reader_spec.rb +1 -1
  236. data/spec/writers/bibtex_writer_spec.rb +2 -2
  237. data/spec/writers/citeproc_writer_spec.rb +2 -2
  238. data/spec/writers/crosscite_writer_spec.rb +1 -0
  239. data/spec/writers/datacite_json_writer_spec.rb +2 -0
  240. data/spec/writers/datacite_writer_spec.rb +1 -1
  241. data/spec/writers/ris_writer_spec.rb +22 -19
  242. data/spec/writers/schema_org_writer_spec.rb +6 -3
  243. data/spec/writers/turtle_writer_spec.rb +1 -1
  244. metadata +1 -5
  245. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/error.yml +0 -109
  246. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_editor.yml +0 -944
  247. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/journal_article.yml +0 -5317
  248. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/with_pages.yml +0 -4963
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b0c0a171528b590b318f64da625f52a446297814
4
- data.tar.gz: f1e8cf7a65872534680cd0c85eff5e1286f0cb90
3
+ metadata.gz: df9a43170238eb90ba90485f7e5524d436c07b52
4
+ data.tar.gz: 1b77ced8bdcf0056e7dfe2c1a3d8c29db880e8d1
5
5
  SHA512:
6
- metadata.gz: 1fe3dabf4d4d1614d90579e1f0c351b17053b3dba39d511c88d3b95c09adf25b34a53b2fde6785baf0c1be0e88377fe7ac00e1bdda5c3d611b58ab380a10dc62
7
- data.tar.gz: ffc4e3701f1acfaa427333f1944aaccb586ee16a60d2116d668a8b7f2d66cf35bdc4a208ac101f60bbdfb737a72b672f0cfc957b7dec2835d843bd1662a633bb
6
+ metadata.gz: 4da8c5cac2555d72972cf4cae0b50c4e594c40a48f89b9b627e72929a93d19c0dba7798a6dd577edc7867e14e9935b77a4c958fa039a06df3cb4512afcc230ad
7
+ data.tar.gz: 0e2035841def30673ec6f042713d766afc1e196d85d8ecae9db019c2baaa144f48f98d2843e10c272a9330d76c26010e85221be037662656365cd9813042ff65
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bolognese (0.9.32)
4
+ bolognese (0.9.33)
5
5
  activesupport (>= 4.2.5, < 6)
6
6
  benchmark_methods (~> 0.7)
7
7
  bibtex-ruby (~> 4.1)
@@ -177,4 +177,4 @@ DEPENDENCIES
177
177
  webmock (~> 3.0, >= 3.0.1)
178
178
 
179
179
  BUNDLED WITH
180
- 1.15.2
180
+ 1.15.3
@@ -70,7 +70,7 @@ module Bolognese
70
70
  :is_compiled_by, :compiles, :is_variant_form_of, :is_original_form_of,
71
71
  :is_reviewed_by, :reviews, :is_derived_from, :is_source_of, :format,
72
72
  :related_identifier, :reverse, :citeproc_type, :ris_type, :volume, :issue,
73
- :name_detector
73
+ :member_id, :data_center_id, :name_detector
74
74
 
75
75
  def initialize(input: nil, from: nil, regenerate: false, **options)
76
76
  id = normalize_id(input)
@@ -79,7 +79,8 @@ module Bolognese
79
79
  @from = from || find_from_format(id: id)
80
80
 
81
81
  # generate name for method to call dynamically
82
- string = @from.present? ? send("get_" + @from, id: id, search_url: options[:search_url]) : nil
82
+ hsh = @from.present? ? send("get_" + @from, id: id, search_url: options[:search_url]) : nil
83
+ string = hsh.to_h.fetch("string", nil)
83
84
  elsif File.exist?(input)
84
85
  ext = File.extname(input)
85
86
  if %w(.bib .ris .xml .json).include?(ext)
@@ -99,6 +100,11 @@ module Bolognese
99
100
  @raw = string
100
101
  @should_passthru = (@from == "datacite") && !regenerate
101
102
  @doi = options[:doi].presence
103
+
104
+ @url = hsh.to_h["url"].presence
105
+ @date_modified = hsh.to_h["date_modified"].presence
106
+ @member_id = hsh.to_h["member_id"].presence
107
+ @data_center_id = hsh.to_h["data_center_id"].presence
102
108
  end
103
109
 
104
110
  def exists?
@@ -150,7 +156,7 @@ module Bolognese
150
156
  end
151
157
 
152
158
  def url
153
- metadata.fetch("url", nil)
159
+ @url ||= metadata.fetch("url", nil)
154
160
  end
155
161
 
156
162
  def title
@@ -210,7 +216,7 @@ module Bolognese
210
216
  end
211
217
 
212
218
  def date_modified
213
- metadata.fetch("date_modified", nil)
219
+ metadata.fetch("date_modified", @date_modified)
214
220
  end
215
221
 
216
222
  def volume
@@ -253,6 +259,14 @@ module Bolognese
253
259
  metadata.fetch("funding", nil)
254
260
  end
255
261
 
262
+ def member_id
263
+ @member_id ||= metadata.fetch("member_id", nil)
264
+ end
265
+
266
+ def data_center_id
267
+ @data_center_id ||= metadata.fetch("data_center_id", nil)
268
+ end
269
+
256
270
  def is_identical_to
257
271
  metadata.fetch("is_identical_to", nil)
258
272
  end
@@ -5,7 +5,9 @@ module Bolognese
5
5
  return nil unless id.present?
6
6
  id = normalize_id(id)
7
7
  response = Maremma.get(github_as_codemeta_url(id), accept: "json", raw: true)
8
- response.body.fetch("data", nil)
8
+ string = response.body.fetch("data", nil)
9
+
10
+ { "string" => string }
9
11
  end
10
12
 
11
13
  def read_codemeta(string: nil)
@@ -69,7 +69,9 @@ module Bolognese
69
69
  url = "http://www.crossref.org/openurl/?id=doi:#{doi}&noredirect=true&pid=#{CONTACT_EMAIL}&format=unixref"
70
70
  response = Maremma.get(url, accept: "text/xml", raw: true)
71
71
  string = response.body.fetch("data", nil)
72
- Nokogiri::XML(string, nil, 'UTF-8', &:noblanks).to_s if string.present?
72
+ string = Nokogiri::XML(string, nil, 'UTF-8', &:noblanks).to_s if string.present?
73
+
74
+ { "string" => string }
73
75
  end
74
76
 
75
77
  def read_crossref(string: nil)
@@ -229,7 +231,7 @@ module Bolognese
229
231
  refs = bibliographic_metadata.dig("citation_list", "citation")
230
232
  Array.wrap(refs).select { |a| a["doi"].present? }.map do |c|
231
233
  { "type" => "CreativeWork",
232
- "id" => normalize_id(c["doi"]),
234
+ "id" => normalize_id(parse_attributes(c["doi"])),
233
235
  "title" => c["article_title"] }.compact
234
236
  end.unwrap
235
237
  end
@@ -6,7 +6,7 @@ module Bolognese
6
6
 
7
7
  doi = doi_from_url(id)
8
8
  url = options.fetch(:search_url, nil).presence || "https://search.datacite.org/api"
9
- url += "?q=doi:#{doi}&fl=doi,xml,media,minted,updated&wt=json"
9
+ url += "?q=doi:#{doi}&fl=doi,xml,allocator_symbol,datacentre_symbol,media,updated&wt=json"
10
10
 
11
11
  response = Maremma.get url
12
12
  attributes = response.body.dig("data", "response", "docs").first
@@ -14,10 +14,16 @@ module Bolognese
14
14
 
15
15
  string = attributes.fetch('xml', "PGhzaD48L2hzaD4=\n")
16
16
  string = Base64.decode64(string)
17
- if string.present?
18
- doc = Nokogiri::XML(string, nil, 'UTF-8', &:noblanks)
19
- doc.to_s
20
- end
17
+ string = Nokogiri::XML(string, nil, 'UTF-8', &:noblanks).to_s if string.present?
18
+
19
+ response = Maremma.head(id, limit: 0)
20
+ url = response.headers.present? ? response.headers["location"] : nil
21
+
22
+ { "string" => string,
23
+ "date_modified" => attributes.fetch("updated", nil),
24
+ "allocator_id" => attributes.fetch("allocator_symbol", nil),
25
+ "data_center_id" => attributes.fetch("datacentre_symbol", nil),
26
+ "url" => url }
21
27
  end
22
28
 
23
29
  def read_datacite(string: nil)
@@ -66,7 +66,9 @@ module Bolognese
66
66
  response = Maremma.get(id)
67
67
  doc = Nokogiri::XML(response.body.fetch("data", nil), nil, 'UTF-8')
68
68
  string = doc.at_xpath('//script[@type="application/ld+json"]')
69
- string.text if string.present?
69
+ string = string.text if string.present?
70
+
71
+ { "string" => string }
70
72
  end
71
73
 
72
74
  def schema_org_related_identifier(meta, relation_type: nil)
@@ -1,3 +1,3 @@
1
1
  module Bolognese
2
- VERSION = "0.9.32"
2
+ VERSION = "0.9.33"
3
3
  end
@@ -3,10 +3,11 @@ module Bolognese
3
3
  module CrossciteWriter
4
4
  def crosscite
5
5
  return nil unless valid?
6
-
6
+
7
7
  hsh = {
8
8
  "id" => id,
9
9
  "doi" => doi,
10
+ "url" => url,
10
11
  "type" => type,
11
12
  "additional_type" => additional_type,
12
13
  "citeproc_type" => citeproc_type,
@@ -42,6 +43,8 @@ module Bolognese
42
43
  "spatial_coverage" => spatial_coverage,
43
44
  "funding" => funding,
44
45
  "schema_version" => schema_version,
46
+ "member_id" => member_id,
47
+ "data_center_id" => data_center_id,
45
48
  "provider" => provider
46
49
  }.compact
47
50
  JSON.pretty_generate hsh.presence
@@ -3,10 +3,11 @@ module Bolognese
3
3
  module DataciteJsonWriter
4
4
  def datacite_json
5
5
  return nil unless valid?
6
-
6
+
7
7
  hsh = {
8
8
  "id" => id,
9
9
  "doi" => doi,
10
+ "url" => url,
10
11
  "creator" => author,
11
12
  "title" => title,
12
13
  "publisher" => publisher,
@@ -38,6 +39,8 @@ module Bolognese
38
39
  "geo-location" => spatial_coverage,
39
40
  "funding-reference" => funding,
40
41
  "schemaVersion" => schema_version,
42
+ "member_id" => member_id,
43
+ "data_center_id" => data_center_id,
41
44
  "provider" => provider
42
45
  }.compact
43
46
  JSON.pretty_generate hsh.presence
@@ -41,7 +41,7 @@ describe Bolognese::Metadata, vcr: true do
41
41
  it "has familyName" do
42
42
  input = "https://doi.org/10.5438/4K3M-NYVG"
43
43
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
44
- string = subject.get_datacite(id: input)
44
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
45
45
  meta = Maremma.from_xml(string).fetch("resource", {})
46
46
  response = subject.get_one_author(meta.dig("creators", "creator"))
47
47
  expect(response).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner")
@@ -50,7 +50,7 @@ describe Bolognese::Metadata, vcr: true do
50
50
  it "has name in sort-order" do
51
51
  input = "https://doi.org/10.5061/dryad.8515"
52
52
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
53
- string = subject.get_datacite(id: input)
53
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
54
54
  meta = Maremma.from_xml(string).fetch("resource", {})
55
55
  response = subject.get_one_author(meta.dig("creators", "creator").first)
56
56
  expect(response).to eq("type"=>"Person", "name"=>"Benjamin Ollomo", "givenName"=>"Benjamin", "familyName"=>"Ollomo")
@@ -59,7 +59,7 @@ describe Bolognese::Metadata, vcr: true do
59
59
  it "has name in display-order" do
60
60
  input = "https://doi.org/10.5281/ZENODO.48440"
61
61
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
62
- string = subject.get_datacite(id: input)
62
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
63
63
  meta = Maremma.from_xml(string).fetch("resource", {})
64
64
  response = subject.get_one_author(meta.dig("creators", "creator"))
65
65
  expect(response).to eq("type"=>"Person", "name"=>"Kristian Garza", "givenName"=>"Kristian", "familyName"=>"Garza")
@@ -68,7 +68,7 @@ describe Bolognese::Metadata, vcr: true do
68
68
  it "has multiple names in display-order" do
69
69
  input = "https://doi.org/10.6084/M9.FIGSHARE.3479141 "
70
70
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
71
- string = subject.get_datacite(id: input)
71
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
72
72
  meta = Maremma.from_xml(string).fetch("resource", {})
73
73
  response = subject.get_authors(meta.dig("creators", "creator"))
74
74
  expect(response.count).to eq(9)
@@ -78,7 +78,7 @@ describe Bolognese::Metadata, vcr: true do
78
78
  it "has name in display-order with ORCID" do
79
79
  input = "https://doi.org/10.6084/M9.FIGSHARE.4700788"
80
80
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
81
- string = subject.get_datacite(id: input)
81
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
82
82
  meta = Maremma.from_xml(string).fetch("resource", {})
83
83
  response = subject.get_one_author(meta.dig("creators", "creator"))
84
84
  expect(response).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-4881-1606", "name"=>"Andrea Bedini", "givenName"=>"Andrea", "familyName"=>"Bedini")
@@ -87,7 +87,7 @@ describe Bolognese::Metadata, vcr: true do
87
87
  it "has name in Thai" do
88
88
  input = "https://doi.org/10.14457/KMITL.res.2006.17"
89
89
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
90
- string = subject.get_datacite(id: input)
90
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
91
91
  meta = Maremma.from_xml(string).fetch("resource", {})
92
92
  response = subject.get_one_author(meta.dig("creators", "creator"))
93
93
  expect(response).to eq("name"=>"กัญจนา แซ่เตียว")
@@ -96,7 +96,7 @@ describe Bolognese::Metadata, vcr: true do
96
96
  it "multiple author names in one field" do
97
97
  input = "https://doi.org/10.7910/dvn/eqtqyo"
98
98
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
99
- string = subject.get_datacite(id: input)
99
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
100
100
  meta = Maremma.from_xml(string).fetch("resource", {})
101
101
  response = subject.get_authors(meta.dig("creators", "creator"))
102
102
  expect(response).to eq([{"type"=>"Person",
@@ -116,7 +116,7 @@ describe Bolognese::Metadata, vcr: true do
116
116
  it "hyper-authorship" do
117
117
  input = "https://doi.org/10.17182/HEPDATA.77274.V1"
118
118
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
119
- string = subject.get_datacite(id: input)
119
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
120
120
  meta = Maremma.from_xml(string).fetch("resource", {})
121
121
  response = subject.get_authors(meta.dig("creators", "creator"))
122
122
  expect(response.length).to eq(1000)
@@ -132,16 +132,16 @@ describe Bolognese::Metadata, vcr: true do
132
132
  it "name with affiliation" do
133
133
  input = "10.11588/DIGLIT.6130"
134
134
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
135
- string = subject.get_datacite(id: input)
135
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
136
136
  meta = Maremma.from_xml(string).fetch("resource", {})
137
137
  response = subject.get_one_author(meta.dig("creators", "creator"))
138
- expect(response).to eq("type"=>"Person", "name"=>"Dr. Störi, Kunstsalon")
138
+ expect(response).to eq("type"=>"Person", "id"=>"http://d-nb.info/gnd/10113301-7/10113301-7", "name"=>"Dr. Störi, Kunstsalon <Zürich>")
139
139
  end
140
140
 
141
141
  it "name with role" do
142
142
  input = "10.14463/GBV:873056442"
143
143
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
144
- string = subject.get_datacite(id: input)
144
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
145
145
  meta = Maremma.from_xml(string).fetch("resource", {})
146
146
  response = subject.get_one_author(meta.dig("creators", "creator").first)
147
147
  expect(response).to eq("type"=>"Person", "name"=>"H. C. Schumacher", "givenName"=>"H. C.", "familyName"=>"Schumacher")
@@ -150,7 +150,7 @@ describe Bolognese::Metadata, vcr: true do
150
150
  it "multiple name_identifier" do
151
151
  input = "10.24350/CIRM.V.19028803"
152
152
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
153
- string = subject.get_datacite(id: input)
153
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
154
154
  meta = Maremma.from_xml(string).fetch("resource", {})
155
155
  response = subject.get_one_author(meta.dig("creators", "creator"))
156
156
  expect(response).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0003-4514-4211", "name"=>"Thomas Dubos", "givenName"=>"Thomas", "familyName"=>"Dubos", "identifier"=>["https://orcid.org/0000-0003-4514-4211", "http://isni.org/isni/0000-0003-5752-6882"])
@@ -161,7 +161,7 @@ describe Bolognese::Metadata, vcr: true do
161
161
  it "has ORCID" do
162
162
  input = "https://doi.org/10.5438/4K3M-NYVG"
163
163
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
164
- string = subject.get_datacite(id: input)
164
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
165
165
  meta = Maremma.from_xml(string).fetch("resource", {})
166
166
  response = subject.get_name_identifiers(meta.dig("creators", "creator"))
167
167
  expect(response).to eq(["https://orcid.org/0000-0003-1419-2405"])
@@ -170,7 +170,7 @@ describe Bolognese::Metadata, vcr: true do
170
170
  it "has no ORCID" do
171
171
  input = "https://doi.org/10.4230/lipics.tqc.2013.93"
172
172
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
173
- string = subject.get_datacite(id: input)
173
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
174
174
  meta = Maremma.from_xml(string).fetch("resource", {})
175
175
  response = subject.get_name_identifiers(meta.dig("creators", "creator"))
176
176
  expect(response).to be_empty
@@ -179,7 +179,7 @@ describe Bolognese::Metadata, vcr: true do
179
179
  it "has jacow.org scheme" do
180
180
  input = "https://doi.org/10.18429/JACOW-IPAC2016-TUPMY003"
181
181
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
182
- string = subject.get_datacite(id: input)
182
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
183
183
  meta = Maremma.from_xml(string).fetch("resource", {})
184
184
  response = subject.get_name_identifiers(meta.dig("creators", "creator").first)
185
185
  expect(response).to eq(["http://jacow.org/JACoW-00077389"])
@@ -188,7 +188,7 @@ describe Bolognese::Metadata, vcr: true do
188
188
  it "has multiple name_identifier" do
189
189
  input = "https://doi.org/10.24350/CIRM.V.19028803"
190
190
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
191
- string = subject.get_datacite(id: input)
191
+ string = subject.get_datacite(id: input).to_h.fetch("string", nil)
192
192
  meta = Maremma.from_xml(string).fetch("resource", {})
193
193
  response = subject.get_name_identifiers(meta.dig("creators", "creator"))
194
194
  expect(response).to eq(["https://orcid.org/0000-0003-4514-4211", "http://isni.org/isni/0000-0003-5752-6882"])
data/spec/cli_spec.rb CHANGED
@@ -54,7 +54,7 @@ describe Bolognese::CLI do
54
54
 
55
55
  it 'to datacite' do
56
56
  subject.options = { to: "datacite" }
57
- expect { subject.convert id }.to output(/http:\/\/datacite.org\/schema\/kernel-3/).to_stdout
57
+ expect { subject.convert id }.to output(/http:\/\/datacite.org\/schema\/kernel-4/).to_stdout
58
58
  end
59
59
 
60
60
  it 'to datacite_json' do
@@ -82,7 +82,7 @@ describe Bolognese::CLI do
82
82
 
83
83
  it 'to bibtex' do
84
84
  subject.options = { to: "bibtex" }
85
- expect { subject.convert id }.to output(/@article{https:\/\/doi.org\/10.5438\/4k3m-nyvg/).to_stdout
85
+ expect { subject.convert id }.to output(/@article{https:\/\/doi.org\/10.5438\/0000-01hc/).to_stdout
86
86
  end
87
87
  end
88
88
  end
@@ -128,6 +128,9 @@ describe Bolognese::Metadata, vcr: true do
128
128
  "__content__"=>"https://doi.org/10.5061/dryad.8515/2"},
129
129
  {"relatedIdentifierType"=>"DOI",
130
130
  "relationType"=>"IsReferencedBy",
131
+ "__content__"=>"https://doi.org/10.1371/journal.ppat.1000446"},
132
+ {"relatedIdentifierType"=>"DOI",
133
+ "relationType"=>"IsSupplementTo",
131
134
  "__content__"=>"https://doi.org/10.1371/journal.ppat.1000446"}])
132
135
  end
133
136
  end
@@ -14,7 +14,7 @@ http_interactions:
14
14
  response:
15
15
  status:
16
16
  code: 200
17
- message: ''
17
+ message: OK
18
18
  headers:
19
19
  Access-Control-Allow-Headers:
20
20
  - Content-Type,Accept,Accept-Encoding,Origin,User-Agent,Cache-Control,Keep-Alive
@@ -29,7 +29,7 @@ http_interactions:
29
29
  Content-Type:
30
30
  - application/vnd.api+json; charset=utf-8
31
31
  Date:
32
- - Sat, 06 May 2017 11:43:08 GMT
32
+ - Sat, 22 Jul 2017 16:29:14 GMT
33
33
  Etag:
34
34
  - W/"daf85afdb45f3c2713bc7e75916ba82a"
35
35
  Server:
@@ -38,16 +38,26 @@ http_interactions:
38
38
  - 200 OK
39
39
  Vary:
40
40
  - Accept-Encoding
41
+ Via:
42
+ - kong/0.10.3
41
43
  X-Content-Type-Options:
42
44
  - nosniff
43
45
  X-Frame-Options:
44
46
  - SAMEORIGIN
47
+ X-Kong-Proxy-Latency:
48
+ - '1'
49
+ X-Kong-Upstream-Latency:
50
+ - '789'
45
51
  X-Powered-By:
46
- - Phusion Passenger 5.1.2
52
+ - Phusion Passenger 5.1.5
53
+ X-Ratelimit-Limit-Hour:
54
+ - '100000'
55
+ X-Ratelimit-Remaining-Hour:
56
+ - '99995'
47
57
  X-Request-Id:
48
- - 2f1bdb1c-3cc4-4a53-95cf-4ade62881b46
58
+ - 665a2457-5554-4f21-ac4a-b95cb943a45f
49
59
  X-Runtime:
50
- - '0.207923'
60
+ - '0.787498'
51
61
  X-Xss-Protection:
52
62
  - 1; mode=block
53
63
  Content-Length:
@@ -58,7 +68,7 @@ http_interactions:
58
68
  encoding: UTF-8
59
69
  string: '{"data":{"id":"10.7554","type":"prefixes","attributes":{"registration-agency":"Crossref","updated":"2016-09-21T21:07:27Z"}}}'
60
70
  http_version:
61
- recorded_at: Sat, 06 May 2017 11:43:08 GMT
71
+ recorded_at: Sat, 22 Jul 2017 16:29:13 GMT
62
72
  - request:
63
73
  method: get
64
74
  uri: http://www.crossref.org/openurl/?format=unixref&id=doi:10.7554/elife.01567&noredirect=true&pid=tech@datacite.org
@@ -73,659 +83,24 @@ http_interactions:
73
83
  response:
74
84
  status:
75
85
  code: 200
76
- message: ''
86
+ message: OK
77
87
  headers:
78
88
  Server:
79
89
  - Apache-Coyote/1.1
80
90
  Crossref-Deployment-Name:
81
- - cr6-1
91
+ - cr7-1
82
92
  Content-Type:
83
93
  - text/xml;charset=UTF-8
84
94
  Content-Language:
85
95
  - en-US
86
96
  Date:
87
- - Sat, 06 May 2017 11:43:08 GMT
97
+ - Sat, 22 Jul 2017 16:29:13 GMT
88
98
  Connection:
89
99
  - close
90
100
  body:
91
101
  encoding: ASCII-8BIT
92
102
  string: !binary |-
93
- PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGRvaV9y
94
- ZWNvcmRzPg0KICA8ZG9pX3JlY29yZCBvd25lcj0iMTAuNzU1NCIgdGltZXN0
95
- YW1wPSIyMDE1LTA4LTExIDA3OjM1OjAyIj4NCiAgICA8Y3Jvc3NyZWY+DQog
96
- ICAgICA8am91cm5hbD4NCiAgICAgICAgPGpvdXJuYWxfbWV0YWRhdGEgbGFu
97
- Z3VhZ2U9ImVuIj4NCiAgICAgICAgICA8ZnVsbF90aXRsZT5lTGlmZTwvZnVs
98
- bF90aXRsZT4NCiAgICAgICAgICA8aXNzbiBtZWRpYV90eXBlPSJlbGVjdHJv
99
- bmljIj4yMDUwLTA4NFg8L2lzc24+DQogICAgICAgIDwvam91cm5hbF9tZXRh
100
- ZGF0YT4NCiAgICAgICAgPGpvdXJuYWxfaXNzdWU+DQogICAgICAgICAgPHB1
101
- YmxpY2F0aW9uX2RhdGUgbWVkaWFfdHlwZT0ib25saW5lIj4NCiAgICAgICAg
102
- ICAgIDxtb250aD4wMjwvbW9udGg+DQogICAgICAgICAgICA8ZGF5PjExPC9k
103
- YXk+DQogICAgICAgICAgICA8eWVhcj4yMDE0PC95ZWFyPg0KICAgICAgICAg
104
- IDwvcHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICA8am91cm5hbF92b2x1
105
- bWU+DQogICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAg
106
- ICA8L2pvdXJuYWxfdm9sdW1lPg0KICAgICAgICA8L2pvdXJuYWxfaXNzdWU+
107
- DQogICAgICAgIDxqb3VybmFsX2FydGljbGUgcHVibGljYXRpb25fdHlwZT0i
108
- ZnVsbF90ZXh0Ij4NCiAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAg
109
- PHRpdGxlPkF1dG9tYXRlZCBxdWFudGl0YXRpdmUgaGlzdG9sb2d5IHJldmVh
110
- bHMgdmFzY3VsYXIgbW9ycGhvZHluYW1pY3MgZHVyaW5nIEFyYWJpZG9wc2lz
111
- IGh5cG9jb3R5bCBzZWNvbmRhcnkgZ3Jvd3RoPC90aXRsZT4NCiAgICAgICAg
112
- ICA8L3RpdGxlcz4NCiAgICAgICAgICA8Y29udHJpYnV0b3JzPg0KICAgICAg
113
- ICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIg
114
- c2VxdWVuY2U9ImZpcnN0Ij4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+
115
- TWFydGlhbDwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1cm5hbWU+
116
- U2Fua2FyPC9zdXJuYW1lPg0KICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4N
117
- CiAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJh
118
- dXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAg
119
- PGdpdmVuX25hbWU+S2Fpc2E8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAg
120
- IDxzdXJuYW1lPk5pZW1pbmVuPC9zdXJuYW1lPg0KICAgICAgICAgICAgPC9w
121
- ZXJzb25fbmFtZT4NCiAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmli
122
- dXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAg
123
- ICAgICAgICAgICAgPGdpdmVuX25hbWU+TGF1cmE8L2dpdmVuX25hbWU+DQog
124
- ICAgICAgICAgICAgIDxzdXJuYW1lPlJhZ25pPC9zdXJuYW1lPg0KICAgICAg
125
- ICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgIDxwZXJzb25fbmFt
126
- ZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlv
127
- bmFsIj4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SW9hbm5pczwvZ2l2
128
- ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1cm5hbWU+WGVuYXJpb3M8L3N1
129
- cm5hbWU+DQogICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAg
130
- ICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2Vx
131
- dWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICA8Z2l2ZW5fbmFt
132
- ZT5DaHJpc3RpYW4gUzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1
133
- cm5hbWU+SGFyZHRrZTwvc3VybmFtZT4NCiAgICAgICAgICAgIDwvcGVyc29u
134
- X25hbWU+DQogICAgICAgICAgPC9jb250cmlidXRvcnM+DQogICAgICAgICAg
135
- PHB1YmxpY2F0aW9uX2RhdGUgbWVkaWFfdHlwZT0ib25saW5lIj4NCiAgICAg
136
- ICAgICAgIDxtb250aD4wMjwvbW9udGg+DQogICAgICAgICAgICA8ZGF5PjEx
137
- PC9kYXk+DQogICAgICAgICAgICA8eWVhcj4yMDE0PC95ZWFyPg0KICAgICAg
138
- ICAgIDwvcHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICA8cHVibGlzaGVy
139
- X2l0ZW0+DQogICAgICAgICAgICA8aWRlbnRpZmllciBpZF90eXBlPSJkb2ki
140
- PjEwLjc1NTQvZUxpZmUuMDE1Njc8L2lkZW50aWZpZXI+DQogICAgICAgICAg
141
- PC9wdWJsaXNoZXJfaXRlbT4NCiAgICAgICAgICA8Y3Jvc3NtYXJrPg0KICAg
142
- ICAgICAgICAgPGNyb3NzbWFya192ZXJzaW9uPjE8L2Nyb3NzbWFya192ZXJz
143
- aW9uPg0KICAgICAgICAgICAgPGNyb3NzbWFya19wb2xpY3k+ZUxpZmVzY2ll
144
- bmNlczwvY3Jvc3NtYXJrX3BvbGljeT4NCiAgICAgICAgICAgIDxjcm9zc21h
145
- cmtfZG9tYWlucz4NCiAgICAgICAgICAgICAgPGNyb3NzbWFya19kb21haW4+
146
- DQogICAgICAgICAgICAgICAgPGRvbWFpbj53d3cuZWxpZmVzY2llbmNlcy5v
147
- cmc8L2RvbWFpbj4NCiAgICAgICAgICAgICAgPC9jcm9zc21hcmtfZG9tYWlu
148
- Pg0KICAgICAgICAgICAgPC9jcm9zc21hcmtfZG9tYWlucz4NCiAgICAgICAg
149
- ICAgIDxjcm9zc21hcmtfZG9tYWluX2V4Y2x1c2l2ZT5mYWxzZTwvY3Jvc3Nt
150
- YXJrX2RvbWFpbl9leGNsdXNpdmU+DQogICAgICAgICAgICA8Y3VzdG9tX21l
151
- dGFkYXRhPg0KICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9InJlY2Vp
152
- dmVkIiBsYWJlbD0iUmVjZWl2ZWQiIGdyb3VwX25hbWU9InB1YmxpY2F0aW9u
153
- X2hpc3RvcnkiIGdyb3VwX2xhYmVsPSJQdWJsaWNhdGlvbiBIaXN0b3J5IiBv
154
- cmRlcj0iMCI+MjAxMy0wOS0yMDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAg
155
- ICA8YXNzZXJ0aW9uIG5hbWU9ImFjY2VwdGVkIiBsYWJlbD0iQWNjZXB0ZWQi
156
- IGdyb3VwX25hbWU9InB1YmxpY2F0aW9uX2hpc3RvcnkiIGdyb3VwX2xhYmVs
157
- PSJQdWJsaWNhdGlvbiBIaXN0b3J5IiBvcmRlcj0iMSI+MjAxMy0xMi0yNDwv
158
- YXNzZXJ0aW9uPg0KICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9InB1
159
- Ymxpc2hlZCIgbGFiZWw9IlB1Ymxpc2hlZCIgZ3JvdXBfbmFtZT0icHVibGlj
160
- YXRpb25faGlzdG9yeSIgZ3JvdXBfbGFiZWw9IlB1YmxpY2F0aW9uIEhpc3Rv
161
- cnkiIG9yZGVyPSIyIj4yMDE0LTAyLTExPC9hc3NlcnRpb24+DQogICAgICAg
162
- ICAgICAgIDxwcm9ncmFtIG5hbWU9ImZ1bmRyZWYiPg0KICAgICAgICAgICAg
163
- ICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGdyb3VwIj4NCiAgICAgICAgICAg
164
- ICAgICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGVyX25hbWUiPlN5c3RlbXNY
165
- PC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQog
166
- ICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZ3JvdXAiPg0K
167
- ICAgICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfbmFt
168
- ZSI+DQogICAgICAgICAgICAgICAgICAgIEVNQk8NCiAgICAgICAgICAgICAg
169
- ICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfaWRlbnRpZmllciI+aHR0
170
- cDovL2R4LmRvaS5vcmcvMTAuMTMwMzkvNTAxMTAwMDAzMDQzPC9hc3NlcnRp
171
- b24+DQogICAgICAgICAgICAgICAgICA8L2Fzc2VydGlvbj4NCiAgICAgICAg
172
- ICAgICAgICA8L2Fzc2VydGlvbj4NCiAgICAgICAgICAgICAgICA8YXNzZXJ0
173
- aW9uIG5hbWU9ImZ1bmRncm91cCI+DQogICAgICAgICAgICAgICAgICA8YXNz
174
- ZXJ0aW9uIG5hbWU9ImZ1bmRlcl9uYW1lIj4NCiAgICAgICAgICAgICAgICAg
175
- ICAgU3dpc3MgTmF0aW9uYWwgU2NpZW5jZSBGb3VuZGF0aW9uDQogICAgICAg
176
- ICAgICAgICAgICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGVyX2lkZW50aWZp
177
- ZXIiPmh0dHA6Ly9keC5kb2kub3JnLzEwLjEzMDM5LzUwMTEwMDAwMTcxMTwv
178
- YXNzZXJ0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQog
179
- ICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAg
180
- PGFzc2VydGlvbiBuYW1lPSJmdW5kZ3JvdXAiPg0KICAgICAgICAgICAgICAg
181
- ICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfbmFtZSI+DQogICAgICAgICAg
182
- ICAgICAgICAgIFVuaXZlcnNpdHkgb2YgTGF1c2FubmUNCiAgICAgICAgICAg
183
- ICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfaWRlbnRpZmllciIg
184
- cHJvdmlkZXI9ImNyb3NzcmVmIj5odHRwOi8vZHguZG9pLm9yZy8xMC4xMzAz
185
- OS81MDExMDAwMDYzOTA8L2Fzc2VydGlvbj4NCiAgICAgICAgICAgICAgICAg
186
- IDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICAgIDwvYXNzZXJ0aW9uPg0K
187
- ICAgICAgICAgICAgICA8L3Byb2dyYW0+DQogICAgICAgICAgICAgIDxwcm9n
188
- cmFtIG5hbWU9IkFjY2Vzc0luZGljYXRvcnMiPg0KICAgICAgICAgICAgICAg
189
- IDxsaWNlbnNlX3JlZiBhcHBsaWVzX3RvPSJ2b3IiPmh0dHA6Ly9jcmVhdGl2
190
- ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzMuMC88L2xpY2Vuc2VfcmVmPg0K
191
- ICAgICAgICAgICAgICAgIDxsaWNlbnNlX3JlZiBhcHBsaWVzX3RvPSJhbSI+
192
- aHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvMy4wLzwv
193
- bGljZW5zZV9yZWY+DQogICAgICAgICAgICAgICAgPGxpY2Vuc2VfcmVmIGFw
194
- cGxpZXNfdG89InRkbSI+aHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGlj
195
- ZW5zZXMvYnkvMy4wLzwvbGljZW5zZV9yZWY+DQogICAgICAgICAgICAgIDwv
196
- cHJvZ3JhbT4NCiAgICAgICAgICAgIDwvY3VzdG9tX21ldGFkYXRhPg0KICAg
197
- ICAgICAgIDwvY3Jvc3NtYXJrPg0KICAgICAgICAgIDxkb2lfZGF0YT4NCiAg
198
- ICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2NzwvZG9pPg0KICAg
199
- ICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9s
200
- b29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1Njc8L3Jlc291cmNlPg0KICAg
201
- ICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgPGNpdGF0aW9uX2xpc3Q+
202
- DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxIj4NCiAgICAgICAgICAg
203
- ICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlPC9qb3VybmFsX3RpdGxlPg0KICAg
204
- ICAgICAgICAgICA8YXV0aG9yPkJvbmtlPC9hdXRob3I+DQogICAgICAgICAg
205
- ICAgIDx2b2x1bWU+NDI2PC92b2x1bWU+DQogICAgICAgICAgICAgIDxmaXJz
206
- dF9wYWdlPjE4MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFy
207
- PjIwMDM8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMzgvbmF0
208
- dXJlMDIxMDA8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAg
209
- ICAgICAgICA8Y2l0YXRpb24ga2V5PSIyIj4NCiAgICAgICAgICAgICAgPGpv
210
- dXJuYWxfdGl0bGU+R2VuZXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAg
211
- ICAgICAgIDxhdXRob3I+QnJlbm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAg
212
- ICA8dm9sdW1lPjE4Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3Rf
213
- cGFnZT40MTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4y
214
- MDA5PC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xNTM0L2dlbmV0
215
- aWNzLjEwOS4xMDQ5NzY8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+
216
- DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIzIj4NCiAgICAgICAgICAg
217
- ICAgPGpvdXJuYWxfdGl0bGU+UGh5c2lvbG9naWEgUGxhbnRhcnVtPC9qb3Vy
218
- bmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkNoYWZmZXk8L2F1
219
- dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xMTQ8L3ZvbHVtZT4NCiAg
220
- ICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTk0PC9maXJzdF9wYWdlPg0KICAg
221
- ICAgICAgICAgICA8Y1llYXI+MjAwMjwvY1llYXI+DQogICAgICAgICAgICAg
222
- IDxkb2k+MTAuMTAzNC9qLjEzOTktMzA1NC4yMDAyLjExNDA0MTMueDwvZG9p
223
- Pg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRh
224
- dGlvbiBrZXk9IjQiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5O
225
- ZXVyYWwgY29tcHV0YXRpb248L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAg
226
- ICAgIDxhdXRob3I+Q2hhbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZv
227
- bHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4y
228
- MTE5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAwMTwv
229
- Y1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTE2Mi8wODk5NzY2MDE3
230
- NTAzOTkzMzU8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAg
231
- ICAgICAgICA8Y2l0YXRpb24ga2V5PSI1Ij4NCiAgICAgICAgICAgICAgPGpv
232
- dXJuYWxfdGl0bGU+TWFjaGluZSBMZWFybmluZzwvam91cm5hbF90aXRsZT4N
233
- CiAgICAgICAgICAgICAgPGF1dGhvcj5Db3J0ZXM8L2F1dGhvcj4NCiAgICAg
234
- ICAgICAgICAgPHZvbHVtZT4yMDwvdm9sdW1lPg0KICAgICAgICAgICAgICA8
235
- Zmlyc3RfcGFnZT4yNzM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxj
236
- WWVhcj4xOTk1PC9jWWVhcj4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQog
237
- ICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI2Ij4NCiAgICAgICAgICAgICAg
238
- PGpvdXJuYWxfdGl0bGU+RGV2ZWxvcG1lbnQ8L2pvdXJuYWxfdGl0bGU+DQog
239
- ICAgICAgICAgICAgIDxhdXRob3I+RG9sYW48L2F1dGhvcj4NCiAgICAgICAg
240
- ICAgICAgPHZvbHVtZT4xMTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZp
241
- cnN0X3BhZ2U+NzE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVh
242
- cj4xOTkzPC9jWWVhcj4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAg
243
- ICAgICAgICA8Y2l0YXRpb24ga2V5PSI3Ij4NCiAgICAgICAgICAgICAgPGpv
244
- dXJuYWxfdGl0bGU+U2VtaW5hcnMgaW4gQ2VsbCAmYW1wOyBEZXZlbG9wbWVu
245
- dGFsIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxh
246
- dXRob3I+RWxvPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MjA8
247
- L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA5NzwvZmly
248
- c3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDk8L2NZZWFyPg0K
249
- ICAgICAgICAgICAgICA8ZG9pPjEwLjEwMTYvai5zZW1jZGIuMjAwOS4wOS4w
250
- MDk8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAg
251
- ICA8Y2l0YXRpb24ga2V5PSI4Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxf
252
- dGl0bGU+RGV2ZWxvcG1lbnQ8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAg
253
- ICAgIDxhdXRob3I+RXRjaGVsbHM8L2F1dGhvcj4NCiAgICAgICAgICAgICAg
254
- PHZvbHVtZT4xNDA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3Bh
255
- Z2U+MjIyNDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIw
256
- MTM8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEyNDIvZGV2LjA5
257
- MTMxNDwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAg
258
- ICAgIDxjaXRhdGlvbiBrZXk9IjkiPg0KICAgICAgICAgICAgICA8am91cm5h
259
- bF90aXRsZT5QTE9TIEdlbmV0aWNzPC9qb3VybmFsX3RpdGxlPg0KICAgICAg
260
- ICAgICAgICA8YXV0aG9yPkV0Y2hlbGxzPC9hdXRob3I+DQogICAgICAgICAg
261
- ICAgIDx2b2x1bWU+ODwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3Rf
262
- cGFnZT5lMTAwMjk5NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZ
263
- ZWFyPjIwMTI8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEzNzEv
264
- am91cm5hbC5wZ2VuLjEwMDI5OTc8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0
265
- YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMCI+DQogICAg
266
- ICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk1vbGVjdWxhciBTeXN0ZW1zIEJp
267
- b2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+
268
- RnVjaHM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1
269
- bWU+DQogICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM3MDwvZmlyc3RfcGFn
270
- ZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTA8L2NZZWFyPg0KICAgICAg
271
- ICAgICAgICA8ZG9pPjEwLjEwMzgvbXNiLjIwMTAuMjU8L2RvaT4NCiAgICAg
272
- ICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5
273
- PSIxMSI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJpbyBTeXN0
274
- ZW1zPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkdy
275
- YW5xdmlzdDwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjExMDwv
276
- dm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MDwvZmlyc3Rf
277
- cGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTI8L2NZZWFyPg0KICAg
278
- ICAgICAgICAgICA8ZG9pPjEwLjEwMTYvai5iaW9zeXN0ZW1zLjIwMTIuMDcu
279
- MDA0PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAg
280
- ICAgPGNpdGF0aW9uIGtleT0iMTIiPg0KICAgICAgICAgICAgICA8am91cm5h
281
- bF90aXRsZT5DdXJyZW50IE9waW5pb24gaW4gUGxhbnQgQmlvbG9neTwvam91
282
- cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5Hcm9vdmVyPC9h
283
- dXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+OTwvdm9sdW1lPg0KICAg
284
- ICAgICAgICAgICA8Zmlyc3RfcGFnZT41NTwvZmlyc3RfcGFnZT4NCiAgICAg
285
- ICAgICAgICAgPGNZZWFyPjIwMDY8L2NZZWFyPg0KICAgICAgICAgICAgICA8
286
- ZG9pPjEwLjEwMTYvai5wYmkuMjAwNS4xMS4wMTM8L2RvaT4NCiAgICAgICAg
287
- ICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIx
288
- MyI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBsYW50IENlbGw8
289
- L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+SGlyYWth
290
- d2E8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yMjwvdm9sdW1l
291
- Pg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjE4PC9maXJzdF9wYWdl
292
- Pg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMDwvY1llYXI+DQogICAgICAg
293
- ICAgICAgIDxkb2k+MTAuMTEwNS90cGMuMTEwLjA3NjA4MzwvZG9pPg0KICAg
294
- ICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBr
295
- ZXk9IjE0Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvY2Vl
296
- ZGluZ3Mgb2YgdGhlIE5hdGlvbmFsIEFjYWRlbXkgb2YgU2NpZW5jZXMgb2Yg
297
- dGhlIFVuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYTwvam91cm5hbF90aXRsZT4N
298
- CiAgICAgICAgICAgICAgPGF1dGhvcj5IaXJha2F3YTwvYXV0aG9yPg0KICAg
299
- ICAgICAgICAgICA8dm9sdW1lPjEwNTwvdm9sdW1lPg0KICAgICAgICAgICAg
300
- ICA8Zmlyc3RfcGFnZT4xNTIwODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAg
301
- ICAgPGNZZWFyPjIwMDg8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEw
302
- LjEwNzMvcG5hcy4wODA4NDQ0MTA1PC9kb2k+DQogICAgICAgICAgICA8L2Np
303
- dGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTUiPg0KICAg
304
- ICAgICAgICAgICA8am91cm5hbF90aXRsZT5DZWxsPC9qb3VybmFsX3RpdGxl
305
- Pg0KICAgICAgICAgICAgICA8YXV0aG9yPk1leWVyb3dpdHo8L2F1dGhvcj4N
306
- CiAgICAgICAgICAgICAgPHZvbHVtZT41Njwvdm9sdW1lPg0KICAgICAgICAg
307
- ICAgICA8Zmlyc3RfcGFnZT4yNjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAg
308
- ICAgIDxjWWVhcj4xOTg5PC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4x
309
- MC4xMDE2LzAwOTItODY3NCg4OSk5MDkwMC04PC9kb2k+DQogICAgICAgICAg
310
- ICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTYi
311
- Pg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbmNlPC9qb3Vy
312
- bmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPk1leWVyb3dpdHo8
313
- L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yOTU8L3ZvbHVtZT4N
314
- CiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ4MjwvZmlyc3RfcGFnZT4N
315
- CiAgICAgICAgICAgICAgPGNZZWFyPjIwMDI8L2NZZWFyPg0KICAgICAgICAg
316
- ICAgICA8ZG9pPjEwLjExMjYvc2NpZW5jZS4xMDY2NjA5PC9kb2k+DQogICAg
317
- ICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtl
318
- eT0iMTciPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QbGFudCBQ
319
- aHlzaW9sPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9y
320
- Pk5pZW1pbmVuPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MTM1
321
- PC92b2x1bWU+DQogICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY1MzwvZmly
322
- c3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDQ8L2NZZWFyPg0K
323
- ICAgICAgICAgICAgICA8ZG9pPjEwLjExMDQvcHAuMTA0LjA0MDIxMjwvZG9p
324
- Pg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRh
325
- dGlvbiBrZXk9IjE4Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+
326
- TmF0dXJlIEJpb3RlY2hub2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAg
327
- ICAgICAgIDxhdXRob3I+Tm9ibGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAg
328
- PHZvbHVtZT4yNDwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFn
329
- ZT4xNTY1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAw
330
- NjwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTAzOC9uYnQxMjA2
331
- LTE1NjU8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAg
332
- ICAgICA8Y2l0YXRpb24ga2V5PSIxOSI+DQogICAgICAgICAgICAgIDxqb3Vy
333
- bmFsX3RpdGxlPlByb2NlZWRpbmdzIG9mIHRoZSBOYXRpb25hbCBBY2FkZW15
334
- IG9mIFNjaWVuY2VzIG9mIHRoZSBVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2E8
335
- L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+T2xzb248
336
- L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT43Nzwvdm9sdW1lPg0K
337
- ICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTE2PC9maXJzdF9wYWdlPg0K
338
- ICAgICAgICAgICAgICA8Y1llYXI+MTk4MDwvY1llYXI+DQogICAgICAgICAg
339
- ICAgIDxkb2k+MTAuMTA3My9wbmFzLjc3LjMuMTUxNjwvZG9pPg0KICAgICAg
340
- ICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9
341
- IjIwIj4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QmlvaW5mb3Jt
342
- YXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+
343
- UGF1PC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MjY8L3ZvbHVt
344
- ZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTc5PC9maXJzdF9wYWdl
345
- Pg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMDwvY1llYXI+DQogICAgICAg
346
- ICAgICAgIDxkb2k+MTAuMTA5My9iaW9pbmZvcm1hdGljcy9idHEwNDY8L2Rv
347
- aT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0
348
- YXRpb24ga2V5PSIyMSI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxl
349
- PlBsYW50IENlbGw8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxh
350
- dXRob3I+UmFnbmk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4y
351
- Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzIyPC9m
352
- aXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMTwvY1llYXI+
353
- DQogICAgICAgICAgICAgIDxkb2k+MTAuMTEwNS90cGMuMTExLjA4NDAyMDwv
354
- ZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxj
355
- aXRhdGlvbiBrZXk9IjIyIj4NCiAgICAgICAgICAgICAgPGF1dGhvcj5TYW5r
356
- YXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTQ8L2NZZWFy
357
- Pg0KICAgICAgICAgICAgICA8ZG9pPjEwLjUwNjEvZHJ5YWQuYjgzNWs8L2Rv
358
- aT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0
359
- YXRpb24ga2V5PSIyMyI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxl
360
- PkN1cnJlbnQgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAg
361
- ICAgPGF1dGhvcj5TaWJvdXQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZv
362
- bHVtZT4xODwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40
363
- NTg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9j
364
- WWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2L2ouY3ViLjIwMDgu
365
- MDIuMDcwPC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAg
366
- ICAgICAgPGNpdGF0aW9uIGtleT0iMjQiPg0KICAgICAgICAgICAgICA8am91
367
- cm5hbF90aXRsZT5UaGUgTmV3IFBoeXRvbG9naXN0PC9qb3VybmFsX3RpdGxl
368
- Pg0KICAgICAgICAgICAgICA8YXV0aG9yPlNwaWNlcjwvYXV0aG9yPg0KICAg
369
- ICAgICAgICAgICA8dm9sdW1lPjE4Njwvdm9sdW1lPg0KICAgICAgICAgICAg
370
- ICA8Zmlyc3RfcGFnZT41Nzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAg
371
- IDxjWWVhcj4yMDEwPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4x
372
- MTExL2ouMTQ2OS04MTM3LjIwMTAuMDMyMzYueDwvZG9pPg0KICAgICAgICAg
373
- ICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjI1
374
- Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFjaGluZSBWaXNp
375
- b24gYW5kIEFwcGxpY2F0aW9uczwvam91cm5hbF90aXRsZT4NCiAgICAgICAg
376
- ICAgICAgPGF1dGhvcj5UaGVyaWF1bHQ8L2F1dGhvcj4NCiAgICAgICAgICAg
377
- ICAgPHZvbHVtZT4yMzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3Rf
378
- cGFnZT42NTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4y
379
- MDEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDA3L3MwMDEz
380
- OC0wMTEtMDM0NS05PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0K
381
- ICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjYiPg0KICAgICAgICAgICAg
382
- ICA8am91cm5hbF90aXRsZT5DZWxsPC9qb3VybmFsX3RpdGxlPg0KICAgICAg
383
- ICAgICAgICA8YXV0aG9yPlV5dHRld2FhbDwvYXV0aG9yPg0KICAgICAgICAg
384
- ICAgICA8dm9sdW1lPjE0OTwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmly
385
- c3RfcGFnZT40Mzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVh
386
- cj4yMDEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2L2ou
387
- Y2VsbC4yMDEyLjAyLjA0ODwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlv
388
- bj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjI3Ij4NCiAgICAgICAg
389
- ICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlIENlbGwgQmlvbG9neTwvam91
390
- cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5ZaW48L2F1dGhv
391
- cj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xNTwvdm9sdW1lPg0KICAgICAg
392
- ICAgICAgICA8Zmlyc3RfcGFnZT44NjA8L2ZpcnN0X3BhZ2U+DQogICAgICAg
393
- ICAgICAgIDxjWWVhcj4yMDEzPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRv
394
- aT4xMC4xMDM4L25jYjI3NjQ8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRp
395
- b24+DQogICAgICAgICAgPC9jaXRhdGlvbl9saXN0Pg0KICAgICAgICAgIDxj
396
- b21wb25lbnRfbGlzdD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50
397
- X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+
398
- DQogICAgICAgICAgICAgICAgPHRpdGxlPg0KICAgICAgICAgICAgICAgICAg
399
- PGI+QWJzdHJhY3Q8L2I+DQogICAgICAgICAgICAgICAgPC90aXRsZT4NCiAg
400
- ICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQg
401
- bWltZV90eXBlPSJ0ZXh0L3BsYWluIiAvPg0KICAgICAgICAgICAgICA8ZG9p
402
- X2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAx
403
- NTY3LjAwMTwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRw
404
- Oi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZl
405
- LjAxNTY3LjAwMTwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2Rh
406
- dGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxj
407
- b21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAg
408
- ICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPg0KICAg
409
- ICAgICAgICAgICAgICAgPGI+ZUxpZmUgZGlnZXN0PC9iPg0KICAgICAgICAg
410
- ICAgICAgIDwvdGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAg
411
- ICAgICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0idGV4dC9wbGFpbiIgLz4N
412
- CiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxk
413
- b2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDI8L2RvaT4NCiAgICAgICAgICAg
414
- ICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1
415
- cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDI8L3Jlc291cmNlPg0KICAg
416
- ICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25l
417
- bnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0i
418
- aXNQYXJ0T2YiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAg
419
- ICAgICAgIDx0aXRsZT5GaWd1cmUgMS4gQ2VsbHVsYXIgbGV2ZWwgYW5hbHlz
420
- aXMgb2YgQXJhYmlkb3BzaXMgaHlwb2NvdHlsIHNlY29uZGFyeSBncm93dGgu
421
- PC90aXRsZT4NCiAgICAgICAgICAgICAgICA8c3VidGl0bGU+DQogICAgICAg
422
- ICAgICAgICAgICAoDQogICAgICAgICAgICAgICAgICA8Yj5BPC9iPg0KICAg
423
- ICAgICAgICAgICAgICAgKSBMaWdodCBtaWNyb3Njb3B5IG9mIGNyb3NzIHNl
424
- Y3Rpb25zIG9idGFpbmVkIGZyb20gQXJhYmlkb3BzaXMgaHlwb2NvdHlscyAo
425
- b3JnYW4gcG9zaXRpb24gaWxsdXN0cmF0ZWQgZm9yIGEgOS1kYXktb2xkIHNl
426
- ZWRsaW5nLCBsb3dlciBsZWZ0KSBhdCA5IGRhZyAodXBwZXIgbGVmdCkgYW5k
427
- IDM1IGRhZyAocmlnaHQpLiBTaXplIGJhcnMgYXJlIDEwMCDOvG0uIEJsdWUg
428
- R1VTIHN0YWluaW5nIGR1ZSB0byB0aGUgcHJlc2VuY2Ugb2YgYW4NCiAgICAg
429
- ICAgICAgICAgICAgIDxpPkFQTDo6R1VTPC9pPg0KICAgICAgICAgICAgICAg
430
- ICAgcmVwb3J0ZXIgZ2VuZSBpbiB0aGlzIENvbC0wIGJhY2tncm91bmQgbGlu
431
- ZSBtYXJrcyBwaGxvZW0gYnVuZGxlcy4gKA0KICAgICAgICAgICAgICAgICAg
432
- PGI+QjwvYj4NCiAgICAgICAgICAgICAgICAgICkgT3ZlcnZpZXcgb2YgdGhl
433
- IGRldmVsb3BtZW50YWwgc2VyaWVzICh0aW1lIHBvaW50cyBhbmQgZGlzdGlu
434
- Y3Qgc2FtcGxlcyBwZXIgZ2Vub3R5cGUpIGFuYWx5emVkIGluIHRoaXMgc3R1
435
- ZHkuICgNCiAgICAgICAgICAgICAgICAgIDxiPkM8L2I+DQogICAgICAgICAg
436
- ICAgICAgICApIEV4YW1wbGUgb2YgYSBoaWdoLXJlc29sdXRpb24gaHlwb2Nv
437
- dHlsIHNlY3Rpb24gaW1hZ2UgYXNzZW1ibGVkIGZyb20gMTEgw5cgMTEgdGls
438
- ZXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkQ8L2I+DQogICAgICAgICAg
439
- ICAgICAgICApIFRoZSBzYW1lIGltYWdlIGFmdGVyIHByZS1wcm9jZXNzaW5n
440
- IGFuZCBiaW5hcml6YXRpb24sIGFuZCAoDQogICAgICAgICAgICAgICAgICA8
441
- Yj5FPC9iPg0KICAgICAgICAgICAgICAgICAgKSBzdWJzZXF1ZW50IHNlZ21l
442
- bnRhdGlvbiB1c2luZyBhIHdhdGVyc2hlZCBhbGdvcml0aG0uICgNCiAgICAg
443
- ICAgICAgICAgICAgIDxiPkY8L2I+DQogICAgICAgICAgICAgICAgICApIE51
444
- bWJlciBvZiBtaXMtc2VnbWVudGVkIGNlbGxzIGFzIGRldGVybWluZWQgYnkg
445
- Y2FyZWZ1bCB2aXN1YWwgaW5zcGVjdGlvbiBpbiAxMiBzZWN0aW9ucywgcGxv
446
- dHRlZCBhZ2FpbnN0IHRoZSB0b3RhbCBudW1iZXIgb2YgY2VsbHMgcGVyIHNl
447
- Y3Rpb24gKGxvZyBzY2FsZSkuDQogICAgICAgICAgICAgICAgPC9zdWJ0aXRs
448
- ZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxm
449
- b3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAg
450
- ICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VM
451
- aWZlLjAxNTY3LjAwMzwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJj
452
- ZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0
453
- L2VMaWZlLjAxNTY3LjAwMzwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwv
454
- ZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAg
455
- ICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQog
456
- ICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxl
457
- PkZpZ3VyZSAyLiBUaGUg4oCYUXVhbnRpdGF0aXZlIEhpc3RvbG9neeKAmSBh
458
- cHByb2FjaC48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT4N
459
- CiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxiPkE8
460
- L2I+DQogICAgICAgICAgICAgICAgICApIE92ZXJ2aWV3IG9mIHRoZSBjb21w
461
- dXRhdGlvbmFsIHBpcGVsaW5lIGZyb20gaW1hZ2UgYWNxdWlzaXRpb24gdG8g
462
- YW5hbHlzaXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAg
463
- ICAgICAgICAgICAgICApIOKAmFBoZW5vcHJpbnRz4oCZIGZvciB0aGUgZGlm
464
- ZmVyZW50IGdlbm90eXBlcyBhbmQgZGV2ZWxvcG1lbnRhbCBzdGFnZXMuDQog
465
- ICAgICAgICAgICAgICAgPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90
466
- aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFn
467
- ZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAg
468
- ICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwNDwvZG9pPg0K
469
- ICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNl
470
- cy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwNDwvcmVz
471
- b3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAg
472
- ICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50
473
- X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+
474
- DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSAy4oCUZmlndXJlIHN1
475
- cHBsZW1lbnQgMS4gQW4gZXhhbXBsZSBvZiBjbGFzc2lmaWVyIHNlbGVjdGlv
476
- biB0aHJvdWdoIFYtZm9sZCBjcm9zcyB2YWxpZGF0aW9uLjwvdGl0bGU+DQog
477
- ICAgICAgICAgICAgICAgPHN1YnRpdGxlPlRoZSBncmVlbiBhcnJvdyBwb2lu
478
- dHMgb3V0IHRoZSBzZWxlY3RlZCBmZWF0dXJlIGNvbWJpbmF0aW9uIGFjY29y
479
- ZGluZyB0byB0aGUgY3JpdGVyaWEgb2YgbWluaW11bSBudW1iZXIgb2YgZmVh
480
- dHVyZXMgd2l0aCB0aGUgaGlnaGVzdCBwZXJmb3JtYW5jZSBhbmQgdGhlIGxv
481
- d2VzdCB2YXJpYXRpb24gKHRoZSByYWRpdXNWIGZlYXR1cmUgd2FzIGV4Y2x1
482
- ZGVkIGR1ZSB0byBpdHMgcHV0YXRpdmUgdmFyaWF0aW9uIGluIHRpc3N1ZSBs
483
- b2NhdGlvbikuPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+
484
- DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZm
485
- IiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAg
486
- ICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwNTwvZG9pPg0KICAgICAg
487
- ICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcv
488
- bG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwNTwvcmVzb3VyY2U+
489
- DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2Nv
490
- bXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0
491
- aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAg
492
- ICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSAzLiBQcm9ncmVzc2lvbiBvZiB0
493
- aXNzdWUgcHJvbGlmZXJhdGlvbi48L3RpdGxlPg0KICAgICAgICAgICAgICAg
494
- IDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAg
495
- ICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICApIFByaW5jaXBh
496
- bCBjb21wb25lbnQgYW5hbHlzaXMgKFBDQSkgb2YgdGhlIHBoZW5vcHJpbnRz
497
- IHNob3duIGluIEZpZ3VyZSAyQiwgcGVyZm9ybWVkIHdpdGggbm9ybWFsaXpl
498
- ZCB2YWx1ZXMgKFN1cHBsZW1lbnRhcnkgZmlsZSA0KS4gVGhlIGlubGF5IHNj
499
- cmVlcGxvdCBkaXNwbGF5cyB0aGUgcHJvcG9ydGlvbiBvZiB0b3RhbCB2YXJp
500
- YXRpb24gZXhwbGFpbmVkIGJ5IGVhY2ggcHJpbmNpcGFsIGNvbXBvbmVudC4g
501
- KA0KICAgICAgICAgICAgICAgICAgPGI+QuKAk0U8L2I+DQogICAgICAgICAg
502
- ICAgICAgICApIENvbXBhcmF0aXZlIHBsb3RzIG9mIHBhcmFtZXRlciBwcm9n
503
- cmVzc2lvbiBpbiB0aGUgdHdvIGdlbm90eXBlcy4gSW4gKA0KICAgICAgICAg
504
- ICAgICAgICAgPGI+RDwvYj4NCiAgICAgICAgICAgICAgICAgICksIHh5bGVt
505
- IHJlcHJlc2VudHMgY29tYmluZWQgdmVzc2VsLCBwYXJlbmNoeW1hLCBhbmQg
506
- ZmliZXIgY2VsbHMsIHBobG9lbSByZXByZXNlbnRzIGNvbWJpbmVkIHBobG9l
507
- bSBwYXJlbmNoeW1hIGFuZCBidW5kbGUgY2VsbHMuIEVycm9yIGJhcnMgaW5k
508
- aWNhdGUgc3RhbmRhcmQgZXJyb3IuDQogICAgICAgICAgICAgICAgPC9zdWJ0
509
- aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAg
510
- IDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAg
511
- ICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0
512
- L2VMaWZlLjAxNTY3LjAwNjwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNv
513
- dXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43
514
- NTU0L2VMaWZlLjAxNTY3LjAwNjwvcmVzb3VyY2U+DQogICAgICAgICAgICAg
515
- IDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAg
516
- ICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+
517
- DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRp
518
- dGxlPkZpZ3VyZSA0LiBCaW1vZGFsIGRpc3RyaWJ1dGlvbiBvZiBpbmNsaW5l
519
- IGFuZ2xlIGFjY29yZGluZyB0byBwb3NpdGlvbi48L3RpdGxlPg0KICAgICAg
520
- ICAgICAgICAgIDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAg
521
- ICAgICAgICAgICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICBh
522
- bmQNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAgICAgICAg
523
- ICAgICApIFNwYXRpYWwgZGlzdHJpYnV0aW9uIG9mIGNlbGwgaW5jbGluZSBh
524
- bmdsZSBpbGx1c3RyYXRlcyB0aGUgdmFzY3VsYXIgb3JnYW5pemF0aW9uIGlu
525
- IExlciAoDQogICAgICAgICAgICAgICAgICA8Yj5CPC9iPg0KICAgICAgICAg
526
- ICAgICAgICAgKSBhcyBjb21wYXJlZCB0byBDb2wtMCAoDQogICAgICAgICAg
527
- ICAgICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAgKSBhdCBsYXRl
528
- ciBzdGFnZXMgb2YgZGV2ZWxvcG1lbnQsIGZvciBleGFtcGxlIDMwIGRhZy4g
529
- VGhlIHNpemUgb2YgdGhlIGRpc2MgaW5jcmVhc2VzIHdpdGggdGhlIGFyZWEg
530
- b2YgdGhlIGNlbGwuIEJsdWUgY29sb3IgaW5kaWNhdGVzIHJhZGlhbCBjZWxs
531
- IG9yaWVudGF0aW9uLCByZWQgb3J0aG9yYWRpYWwuICgNCiAgICAgICAgICAg
532
- ICAgICAgIDxiPkM8L2I+DQogICAgICAgICAgICAgICAgICBhbmQNCiAgICAg
533
- ICAgICAgICAgICAgIDxiPkQ8L2I+DQogICAgICAgICAgICAgICAgICApIFZp
534
- b2xpbiBwbG90cyBvZiBpbmNsaW5lIGFuZ2xlIGRpc3RyaWJ1dGlvbiwgaWxs
535
- dXN0cmF0aW5nIGluY3JlYXNpbmdseSBiaW1vZGFsIGRpc3RyaWJ1dGlvbiBj
536
- b2luY2lkZW50IHdpdGggcmVmaW5lZCB2YXNjdWxhciBvcmdhbml6YXRpb24g
537
- YW5kIGRpZmZlcmVudCBkeW5hbWljcyBvZiB0aGUgcHJvY2VzcyBpbiB0aGUg
538
- dHdvIGdlbm90eXBlcy4NCiAgICAgICAgICAgICAgICA8L3N1YnRpdGxlPg0K
539
- ICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1h
540
- dCBtaW1lX3R5cGU9ImltYWdlL3RpZmYiIC8+DQogICAgICAgICAgICAgIDxk
541
- b2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8ZG9pPjEwLjc1NTQvZUxpZmUu
542
- MDE1NjcuMDA3PC9kb2k+DQogICAgICAgICAgICAgICAgPHJlc291cmNlPmh0
543
- dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxp
544
- ZmUuMDE1NjcuMDA3PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgPC9kb2lf
545
- ZGF0YT4NCiAgICAgICAgICAgIDwvY29tcG9uZW50Pg0KICAgICAgICAgICAg
546
- PGNvbXBvbmVudCBwYXJlbnRfcmVsYXRpb249ImlzUGFydE9mIj4NCiAgICAg
547
- ICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+Rmln
548
- dXJlIDTigJRmaWd1cmUgc3VwcGxlbWVudCAxLiBBbiBpbGx1c3RyYXRpb24g
549
- b2YgdGhlIGluY2xpbmUgYW5nbGUuPC90aXRsZT4NCiAgICAgICAgICAgICAg
550
- ICA8c3VidGl0bGU+VGhlIGluY2xpbmUgaXMgdGhlIGFuZ2xlIGJldHdlZW4g
551
- dGhlIHNlY3Rpb24gcmFkaXVzIHRocm91Z2ggdGhlIGNlbnRlciBvZiBhbiBl
552
- bGxpcHNlIGZpdCB0byBhIGNlbGwgYW5kIHRoZSBtYWpvciBheGlzIG9mIHRo
553
- YXQgZWxsaXBzZSBleHRlbmRlZCB0b3dhcmRzIHRoZSB4IGF4aXMuPC9zdWJ0
554
- aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAg
555
- IDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAg
556
- ICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0
557
- L2VMaWZlLjAxNTY3LjAwODwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNv
558
- dXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43
559
- NTU0L2VMaWZlLjAxNTY3LjAwODwvcmVzb3VyY2U+DQogICAgICAgICAgICAg
560
- IDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAg
561
- ICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+
562
- DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRp
563
- dGxlPkZpZ3VyZSA1LiBEaXN0aW5jdCBsb2NhbCBvcmdhbml6YXRpb24gb2Yg
564
- aW5jbGluZSBhbmdsZSBkdXJpbmcgaHlwb2NvdHlsIHNlY29uZGFyeSBncm93
565
- dGggcHJvZ3Jlc3Npb24uPC90aXRsZT4NCiAgICAgICAgICAgICAgICA8c3Vi
566
- dGl0bGU+DQogICAgICAgICAgICAgICAgICAoDQogICAgICAgICAgICAgICAg
567
- ICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAg4oCTDQogICAgICAgICAg
568
- ICAgICAgICA8Yj5KPC9iPg0KICAgICAgICAgICAgICAgICAgKSBEZW5zaXR5
569
- IHBsb3RzIG9mIGNlbGwgaW5jbGluZSBhbmdsZSB2cyByYWRpYWwgcG9zaXRp
570
- b24gZm9yIHRoZSB0d28gZ2Vub3R5cGVzIGF0IHRoZSBpbmRpY2F0ZWQgZGV2
571
- ZWxvcG1lbnRhbCBzdGFnZXMsIHJlcHJlc2VudGluZyBhbGwgY2VsbHMgYWNy
572
- b3NzIGFsbCBzZWN0aW9ucyBmb3IgYSBnaXZlbiB0aW1lIHBvaW50LiBUaGUg
573
- cmVkIGxpbmVzIHJlcHJlc2VudCB0aGUgZml0IG9mIHRoZXNlIGNsb3VkIGRp
574
- c3RyaWJ1dGlvbnMgd2l0aCBsb2NhbGx5IHdlaWdodGVkIGxpbmVhciByZWdy
575
- ZXNzaW9uIChpLmUuLCBsb3dlc3MpLCByZXZlYWxpbmcgdGhlIGVzc2VudGlh
576
- bCBkYXRhIHRyZW5kcy4gQWxsIHNlY3Rpb25zIHdlcmUgbm9ybWFsaXplZCBm
577
- cm9tIDAuMCAodGhlIG1hbnVhbGx5IGRlZmluZWQgY2VudGVyKSB0byAxLjAg
578
- KHRoZSBhdmVyYWdlIHJhZGl1cyBpbiBhIHNldCBvZiBzZWN0aW9ucyBhcyBk
579
- ZXRlcm1pbmVkIGJ5IHRoZSBhdmVyYWdlIGRpc3RhbmNlIG9mIHRoZSBvdXRl
580
- cm1vc3QgY2VsbHMgZnJvbSB0aGUgY2VudGVyIGZvciBpbmRpdmlkdWFsIHNl
581
- Y3Rpb25zKS4gQm94IHBsb3RzIGluZGljYXRlIHRoZSBxdWFydGlsZXMgb2Yg
582
- dGhlIHJhZGlhbiBkaXN0cmlidXRpb24gZm9yIGVhY2ggY2VsbC10eXBlIGNs
583
- YXNzIGFuZCBhcmUgcGxhY2VkIGF0IHRoZSBhdmVyYWdlIHBvc2l0aW9uIG9m
584
- IHRoZSBjZWxsIHR5cGUgd2l0aCByZXNwZWN0IHRvIHRoZSB5IGF4aXMuIE91
585
- dGxpZXJzIGFyZSBzaG93biBhcyBjaXJjbGVzLg0KICAgICAgICAgICAgICAg
586
- IDwvc3VidGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAg
587
- ICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0iaW1hZ2UvdGlmZiIgLz4NCiAg
588
- ICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+
589
- MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDk8L2RvaT4NCiAgICAgICAgICAgICAg
590
- ICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9k
591
- b2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDk8L3Jlc291cmNlPg0KICAgICAg
592
- ICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+
593
- DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNQ
594
- YXJ0T2YiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAg
595
- ICAgIDx0aXRsZT5GaWd1cmUgNeKAlGZpZ3VyZSBzdXBwbGVtZW50IDEuIEFu
596
- YWx5c2lzIG9mIGNlbGwgbnVtYmVyIGluIGRlZmluZWQgeHlsZW0gcmVnaW9u
597
- cyBvZiBkaWZmZXJlbnQgc2l6ZS48L3RpdGxlPg0KICAgICAgICAgICAgICAg
598
- IDxzdWJ0aXRsZT5DZWxsIG51bWJlciBpbiBhIGNpcmNsZSBvZiAyMDDigJM1
599
- MDAgcGl4ZWxzIGFyb3VuZCB0aGUgc2VjdGlvbiBjZW50ZXJzIGZvciBDb2wt
600
- MC4gQ2VsbCBjb3VudCBpbiBhIGNvbnN0YW50IGFyZWEgb2YgeHlsZW0gb3Zl
601
- ciB0aW1lIGFjcm9zcyBhbGwgYXZlcmFnZWQgYWNyb3NzIGFsbCBzZWN0aW9u
602
- cy48L3N1YnRpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAg
603
- ICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImltYWdlL3RpZmYiIC8+DQog
604
- ICAgICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8ZG9p
605
- PjEwLjc1NTQvZUxpZmUuMDE1NjcuMDEwPC9kb2k+DQogICAgICAgICAgICAg
606
- ICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAv
607
- ZG9pLzEwLjc1NTQvZUxpZmUuMDE1NjcuMDEwPC9yZXNvdXJjZT4NCiAgICAg
608
- ICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgIDwvY29tcG9uZW50
609
- Pg0KICAgICAgICAgICAgPGNvbXBvbmVudCBwYXJlbnRfcmVsYXRpb249Imlz
610
- UGFydE9mIj4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAg
611
- ICAgICA8dGl0bGU+RmlndXJlIDYuIE1hcHBpbmcgb2YgcGhsb2VtIHBvbGUg
612
- cGF0dGVybmluZy48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRs
613
- ZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxi
614
- PkE8L2I+DQogICAgICAgICAgICAgICAgICApIEV4YW1wbGUgb2YgR2F1c3Np
615
- YW4ga2VybmVsIGRlbnNpdHkgZXN0aW1hdGUgb2YgdGhlIGxvY2F0aW9uIG9m
616
- IHByZWRpY3RlZCBwaGxvZW0gYnVuZGxlcyBjZWxscyBpbiBhIDMwIGRhZyBD
617
- b2wtMCBzZWN0aW9uLiBIaWdoIGRlbnNpdHkgcmVwcmVzZW50cyBwaGxvZW0g
618
- cG9sZXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAg
619
- ICAgICAgICAgICApIEV4YW1wbGUgb2YgYW4gYW5hbHlzaXMgb2YgZW1lcmdp
620
- bmcgcGhsb2VtIHBvbGUgcG9zaXRpb24gaW4gYSAzMCBkYWcgQ29sLTAgc2Vj
621
- dGlvbi4gVGhlIHBsb3QgcmVwcmVzZW50cyBhIHBpeGVsIGludGVuc2l0eSBt
622
- YXAgYWZ0ZXIgbm9pc2UgcmVkdWN0aW9uIGFsb25nIGEgY2lyY3VsYXIgcmVn
623
- aW9uIG9mIGludGVyZXN0IGFjcm9zcyB0aGUgZW1lcmdpbmcgcGhsb2VtIHBv
624
- bGVzLiBJbnRlbnNpdHkgcGVha3MgYXJlIGR1ZSB0byBHVVMgc3RhaW5pbmcg
625
- Y29uZmVycmVkIHRvIHBobG9lbSBidW5kbGVzIGJ5IGFuDQogICAgICAgICAg
626
- ICAgICAgICA8aT5BUEw6OkdVUzwvaT4NCiAgICAgICAgICAgICAgICAgIHJl
627
- cG9ydGVyIGNvbnN0cnVjdC4gKA0KICAgICAgICAgICAgICAgICAgPGI+Qzwv
628
- Yj4NCiAgICAgICAgICAgICAgICAgICkgUHJvYmFiaWxpdHkgZGVuc2l0eSBm
629
- dW5jdGlvbiBvZiB0aGUgZGF0YSBzaG93biBpbiAoDQogICAgICAgICAgICAg
630
- ICAgICA8Yj5CPC9iPg0KICAgICAgICAgICAgICAgICAgKSBvYnRhaW5lZCBm
631
- cm9tIGFuIGF1dG9tYXRlZCBCYXllc2lhbiBtb2RlbC4gVGhlIGRvbWluYW50
632
- IHNpbmdsZSBwZWFrIGluZGljYXRlcyBhIGNvbnN0YW50IGFyYyBkaXN0YW5j
633
- ZSBvZiBjYS4gNjIgcGl4ZWwgYmV0d2VlbiB0aGUgcGhsb2VtIHBvbGVzLg0K
634
- ICAgICAgICAgICAgICAgIDwvc3VidGl0bGU+DQogICAgICAgICAgICAgIDwv
635
- dGl0bGVzPg0KICAgICAgICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0iaW1h
636
- Z2UvdGlmZiIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAg
637
- ICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTE8L2RvaT4N
638
- CiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5j
639
- ZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTE8L3Jl
640
- c291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAg
641
- ICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVu
642
- dF9yZWxhdGlvbj0iaXNSZWZlcmVuY2VkQnkiPg0KICAgICAgICAgICAgICA8
643
- dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT4NCiAgICAgICAgICAg
644
- ICAgICAgIFN1cHBsZW1lbnRhcnkgZmlsZSAxLiAoDQogICAgICAgICAgICAg
645
- ICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAgKSBBbiBleHBsYW5h
646
- dGlvbiBvZiB0aGUgZXh0cmFjdGVkIHBhcmFtZXRlcnMgdGhhdCBkZXNjcmli
647
- ZSB0aGUgY2VsbHVsYXIgZmVhdHVyZXMuICgNCiAgICAgICAgICAgICAgICAg
648
- IDxiPkI8L2I+DQogICAgICAgICAgICAgICAgICApIFN1bW1hcnkgaW5mb3Jt
649
- YXRpb24gb2YgdGhlIGhhbmQtbGFiZWxlZCB0cmFpbmluZyBzZXQgZm9yIHN1
650
- cGVydmlzZWQgbWFjaGluZSBsZWFybmluZy4gKA0KICAgICAgICAgICAgICAg
651
- ICAgPGI+QzwvYj4NCiAgICAgICAgICAgICAgICAgICkgRGVmaW5pdGlvbiBv
652
- ZiB0aGUgY2xhc3NpZmllcnMgc2VsZWN0ZWQgZm9yIGFuYWx5c2lzLiAoDQog
653
- ICAgICAgICAgICAgICAgICA8Yj5EPC9iPg0KICAgICAgICAgICAgICAgICAg
654
- KSBTdW1tYXJ5IG9mIHRoZSBjbGFzc2lmaWVyIHBhcmFtZXRlcnMgZm9yIHN1
655
- cGVydmlzZWQgbWFjaGluZSBsZWFybmluZy4gKA0KICAgICAgICAgICAgICAg
656
- ICAgPGI+RTwvYj4NCiAgICAgICAgICAgICAgICAgICkgT3ZlcnZpZXcgb2Yg
657
- dGhlIGNlbGwgdHlwZSBjbGFzc2VzIHJlY29nbml6ZWQgYnkgdGhlIHN1cGVy
658
- dmlzZWQgbWFjaGluZSBsZWFybmluZyBhcHByb2FjaCBhbmQgdGhlaXIgYXNz
659
- aWdubWVudCBjb2RlcyB1c2VkIGluIERhdGEgRmlsZXMgMyBhbmQgNC4NCiAg
660
- ICAgICAgICAgICAgICA8L3RpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxl
661
- cz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImFwcGxpY2F0
662
- aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRz
663
- aGVldG1sLnNoZWV0IiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQog
664
- ICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAxMjwv
665
- ZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVz
666
- Y2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAx
667
- MjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAg
668
- ICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQg
669
- cGFyZW50X3JlbGF0aW9uPSJpc1JlZmVyZW5jZWRCeSI+DQogICAgICAgICAg
670
- ICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPlN1cHBsZW1l
671
- bnRhcnkgZmlsZSAyLiBRdWFsaXR5IGNvbnRyb2wgZmlsZXMgZm9yIHRoZSBD
672
- b2wtMCBzZWN0aW9ucy48L3RpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxl
673
- cz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImFwcGxpY2F0
674
- aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRz
675
- aGVldG1sLnNoZWV0IiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQog
676
- ICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAxMzwv
677
- ZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVz
678
- Y2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAx
679
- MzwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAg
680
- ICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQg
681
- cGFyZW50X3JlbGF0aW9uPSJpc1JlZmVyZW5jZWRCeSI+DQogICAgICAgICAg
682
- ICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPlN1cHBsZW1l
683
- bnRhcnkgZmlsZSAzLiBRdWFsaXR5IGNvbnRyb2wgZmlsZXMgZm9yIHRoZSBM
684
- ZXIgc2VjdGlvbnMuPC90aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+
685
- DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJhcHBsaWNhdGlv
686
- bi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hl
687
- ZXRtbC5zaGVldCIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAg
688
- ICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTQ8L2Rv
689
- aT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2Np
690
- ZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTQ8
691
- L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAg
692
- ICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBh
693
- cmVudF9yZWxhdGlvbj0iaXNSZWZlcmVuY2VkQnkiPg0KICAgICAgICAgICAg
694
- ICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT5TdXBwbGVtZW50
695
- YXJ5IGZpbGUgNC4gVGhlIG5vcm1hbGl6ZWQgdmFsdWVzIG9mIHRoZSBwaGVu
696
- b3ByaW50cyAoRmlndXJlIDJCKSB1c2VkIGZvciBQQ0EuPC90aXRsZT4NCiAg
697
- ICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQg
698
- bWltZV90eXBlPSJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2Zm
699
- aWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCIgLz4NCiAgICAgICAg
700
- ICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1
701
- NC9lTGlmZS4wMTU2Ny4wMTU8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVz
702
- b3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAu
703
- NzU1NC9lTGlmZS4wMTU2Ny4wMTU8L3Jlc291cmNlPg0KICAgICAgICAgICAg
704
- ICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAg
705
- ICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNQYXJ0T2Yi
706
- Pg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0
707
- aXRsZT4NCiAgICAgICAgICAgICAgICAgIDxiPkRlY2lzaW9uIGxldHRlcjwv
708
- Yj4NCiAgICAgICAgICAgICAgICA8L3RpdGxlPg0KICAgICAgICAgICAgICA8
709
- L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9InRl
710
- eHQvcGxhaW4iIC8+DQogICAgICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAg
711
- ICAgICAgICAgICA8ZG9pPjEwLjc1NTQvZUxpZmUuMDE1NjcuMDE2PC9kb2k+
712
- DQogICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVu
713
- Y2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1NjcuMDE2PC9y
714
- ZXNvdXJjZT4NCiAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAg
715
- ICAgIDwvY29tcG9uZW50Pg0KICAgICAgICAgICAgPGNvbXBvbmVudCBwYXJl
716
- bnRfcmVsYXRpb249ImlzUGFydE9mIj4NCiAgICAgICAgICAgICAgPHRpdGxl
717
- cz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+DQogICAgICAgICAgICAgICAg
718
- ICA8Yj5BdXRob3IgcmVzcG9uc2U8L2I+DQogICAgICAgICAgICAgICAgPC90
719
- aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAg
720
- IDxmb3JtYXQgbWltZV90eXBlPSJ0ZXh0L3BsYWluIiAvPg0KICAgICAgICAg
721
- ICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0
722
- L2VMaWZlLjAxNTY3LjAxNzwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNv
723
- dXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43
724
- NTU0L2VMaWZlLjAxNTY3LjAxNzwvcmVzb3VyY2U+DQogICAgICAgICAgICAg
725
- IDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAg
726
- ICAgICA8L2NvbXBvbmVudF9saXN0Pg0KICAgICAgICA8L2pvdXJuYWxfYXJ0
727
- aWNsZT4NCiAgICAgIDwvam91cm5hbD4NCiAgICA8L2Nyb3NzcmVmPg0KICA8
728
- L2RvaV9yZWNvcmQ+DQo8L2RvaV9yZWNvcmRzPg==
103
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGRvaV9yZWNvcmRzPg0KICA8ZG9pX3JlY29yZCBvd25lcj0iMTAuNzU1NCIgdGltZXN0YW1wPSIyMDE1LTA4LTExIDA3OjM1OjAyIj4NCiAgICA8Y3Jvc3NyZWY+DQogICAgICA8am91cm5hbD4NCiAgICAgICAgPGpvdXJuYWxfbWV0YWRhdGEgbGFuZ3VhZ2U9ImVuIj4NCiAgICAgICAgICA8ZnVsbF90aXRsZT5lTGlmZTwvZnVsbF90aXRsZT4NCiAgICAgICAgICA8aXNzbiBtZWRpYV90eXBlPSJlbGVjdHJvbmljIj4yMDUwLTA4NFg8L2lzc24+DQogICAgICAgIDwvam91cm5hbF9tZXRhZGF0YT4NCiAgICAgICAgPGpvdXJuYWxfaXNzdWU+DQogICAgICAgICAgPHB1YmxpY2F0aW9uX2RhdGUgbWVkaWFfdHlwZT0ib25saW5lIj4NCiAgICAgICAgICAgIDxtb250aD4wMjwvbW9udGg+DQogICAgICAgICAgICA8ZGF5PjExPC9kYXk+DQogICAgICAgICAgICA8eWVhcj4yMDE0PC95ZWFyPg0KICAgICAgICAgIDwvcHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICA8am91cm5hbF92b2x1bWU+DQogICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICA8L2pvdXJuYWxfdm9sdW1lPg0KICAgICAgICA8L2pvdXJuYWxfaXNzdWU+DQogICAgICAgIDxqb3VybmFsX2FydGljbGUgcHVibGljYXRpb25fdHlwZT0iZnVsbF90ZXh0Ij4NCiAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgPHRpdGxlPkF1dG9tYXRlZCBxdWFudGl0YXRpdmUgaGlzdG9sb2d5IHJldmVhbHMgdmFzY3VsYXIgbW9ycGhvZHluYW1pY3MgZHVyaW5nIEFyYWJpZG9wc2lzIGh5cG9jb3R5bCBzZWNvbmRhcnkgZ3Jvd3RoPC90aXRsZT4NCiAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICA8Y29udHJpYnV0b3JzPg0KICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImZpcnN0Ij4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+TWFydGlhbDwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1cm5hbWU+U2Fua2FyPC9zdXJuYW1lPg0KICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+S2Fpc2E8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgIDxzdXJuYW1lPk5pZW1pbmVuPC9zdXJuYW1lPg0KICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+TGF1cmE8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgIDxzdXJuYW1lPlJhZ25pPC9zdXJuYW1lPg0KICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SW9hbm5pczwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1cm5hbWU+WGVuYXJpb3M8L3N1cm5hbWU+DQogICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5DaHJpc3RpYW4gUzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgPHN1cm5hbWU+SGFyZHRrZTwvc3VybmFtZT4NCiAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgPC9jb250cmlidXRvcnM+DQogICAgICAgICAgPHB1YmxpY2F0aW9uX2RhdGUgbWVkaWFfdHlwZT0ib25saW5lIj4NCiAgICAgICAgICAgIDxtb250aD4wMjwvbW9udGg+DQogICAgICAgICAgICA8ZGF5PjExPC9kYXk+DQogICAgICAgICAgICA8eWVhcj4yMDE0PC95ZWFyPg0KICAgICAgICAgIDwvcHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICA8cHVibGlzaGVyX2l0ZW0+DQogICAgICAgICAgICA8aWRlbnRpZmllciBpZF90eXBlPSJkb2kiPjEwLjc1NTQvZUxpZmUuMDE1Njc8L2lkZW50aWZpZXI+DQogICAgICAgICAgPC9wdWJsaXNoZXJfaXRlbT4NCiAgICAgICAgICA8Y3Jvc3NtYXJrPg0KICAgICAgICAgICAgPGNyb3NzbWFya192ZXJzaW9uPjE8L2Nyb3NzbWFya192ZXJzaW9uPg0KICAgICAgICAgICAgPGNyb3NzbWFya19wb2xpY3k+ZUxpZmVzY2llbmNlczwvY3Jvc3NtYXJrX3BvbGljeT4NCiAgICAgICAgICAgIDxjcm9zc21hcmtfZG9tYWlucz4NCiAgICAgICAgICAgICAgPGNyb3NzbWFya19kb21haW4+DQogICAgICAgICAgICAgICAgPGRvbWFpbj53d3cuZWxpZmVzY2llbmNlcy5vcmc8L2RvbWFpbj4NCiAgICAgICAgICAgICAgPC9jcm9zc21hcmtfZG9tYWluPg0KICAgICAgICAgICAgPC9jcm9zc21hcmtfZG9tYWlucz4NCiAgICAgICAgICAgIDxjcm9zc21hcmtfZG9tYWluX2V4Y2x1c2l2ZT5mYWxzZTwvY3Jvc3NtYXJrX2RvbWFpbl9leGNsdXNpdmU+DQogICAgICAgICAgICA8Y3VzdG9tX21ldGFkYXRhPg0KICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9InJlY2VpdmVkIiBsYWJlbD0iUmVjZWl2ZWQiIGdyb3VwX25hbWU9InB1YmxpY2F0aW9uX2hpc3RvcnkiIGdyb3VwX2xhYmVsPSJQdWJsaWNhdGlvbiBIaXN0b3J5IiBvcmRlcj0iMCI+MjAxMy0wOS0yMDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9ImFjY2VwdGVkIiBsYWJlbD0iQWNjZXB0ZWQiIGdyb3VwX25hbWU9InB1YmxpY2F0aW9uX2hpc3RvcnkiIGdyb3VwX2xhYmVsPSJQdWJsaWNhdGlvbiBIaXN0b3J5IiBvcmRlcj0iMSI+MjAxMy0xMi0yNDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9InB1Ymxpc2hlZCIgbGFiZWw9IlB1Ymxpc2hlZCIgZ3JvdXBfbmFtZT0icHVibGljYXRpb25faGlzdG9yeSIgZ3JvdXBfbGFiZWw9IlB1YmxpY2F0aW9uIEhpc3RvcnkiIG9yZGVyPSIyIj4yMDE0LTAyLTExPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgIDxwcm9ncmFtIG5hbWU9ImZ1bmRyZWYiPg0KICAgICAgICAgICAgICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGdyb3VwIj4NCiAgICAgICAgICAgICAgICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGVyX25hbWUiPlN5c3RlbXNYPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfbmFtZSI+DQogICAgICAgICAgICAgICAgICAgIEVNQk8NCiAgICAgICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfaWRlbnRpZmllciI+aHR0cDovL2R4LmRvaS5vcmcvMTAuMTMwMzkvNTAxMTAwMDAzMDQzPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgICA8L2Fzc2VydGlvbj4NCiAgICAgICAgICAgICAgICA8L2Fzc2VydGlvbj4NCiAgICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9ImZ1bmRncm91cCI+DQogICAgICAgICAgICAgICAgICA8YXNzZXJ0aW9uIG5hbWU9ImZ1bmRlcl9uYW1lIj4NCiAgICAgICAgICAgICAgICAgICAgU3dpc3MgTmF0aW9uYWwgU2NpZW5jZSBGb3VuZGF0aW9uDQogICAgICAgICAgICAgICAgICAgIDxhc3NlcnRpb24gbmFtZT0iZnVuZGVyX2lkZW50aWZpZXIiPmh0dHA6Ly9keC5kb2kub3JnLzEwLjEzMDM5LzUwMTEwMDAwMTcxMTwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgPC9hc3NlcnRpb24+DQogICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfbmFtZSI+DQogICAgICAgICAgICAgICAgICAgIFVuaXZlcnNpdHkgb2YgTGF1c2FubmUNCiAgICAgICAgICAgICAgICAgICAgPGFzc2VydGlvbiBuYW1lPSJmdW5kZXJfaWRlbnRpZmllciIgcHJvdmlkZXI9ImNyb3NzcmVmIj5odHRwOi8vZHguZG9pLm9yZy8xMC4xMzAzOS81MDExMDAwMDYzOTA8L2Fzc2VydGlvbj4NCiAgICAgICAgICAgICAgICAgIDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICAgIDwvYXNzZXJ0aW9uPg0KICAgICAgICAgICAgICA8L3Byb2dyYW0+DQogICAgICAgICAgICAgIDxwcm9ncmFtIG5hbWU9IkFjY2Vzc0luZGljYXRvcnMiPg0KICAgICAgICAgICAgICAgIDxsaWNlbnNlX3JlZiBhcHBsaWVzX3RvPSJ2b3IiPmh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzMuMC88L2xpY2Vuc2VfcmVmPg0KICAgICAgICAgICAgICAgIDxsaWNlbnNlX3JlZiBhcHBsaWVzX3RvPSJhbSI+aHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvMy4wLzwvbGljZW5zZV9yZWY+DQogICAgICAgICAgICAgICAgPGxpY2Vuc2VfcmVmIGFwcGxpZXNfdG89InRkbSI+aHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnkvMy4wLzwvbGljZW5zZV9yZWY+DQogICAgICAgICAgICAgIDwvcHJvZ3JhbT4NCiAgICAgICAgICAgIDwvY3VzdG9tX21ldGFkYXRhPg0KICAgICAgICAgIDwvY3Jvc3NtYXJrPg0KICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2NzwvZG9pPg0KICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1Njc8L3Jlc291cmNlPg0KICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgPGNpdGF0aW9uX2xpc3Q+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxIj4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkJvbmtlPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+NDI2PC92b2x1bWU+DQogICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE4MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDM8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMzgvbmF0dXJlMDIxMDA8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyIj4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+R2VuZXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+QnJlbm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjE4Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40MTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDA5PC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xNTM0L2dlbmV0aWNzLjEwOS4xMDQ5NzY8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIzIj4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UGh5c2lvbG9naWEgUGxhbnRhcnVtPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkNoYWZmZXk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xMTQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTk0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAwMjwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTAzNC9qLjEzOTktMzA1NC4yMDAyLjExNDA0MTMueDwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjQiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OZXVyYWwgY29tcHV0YXRpb248L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+Q2hhbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMTE5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAwMTwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTE2Mi8wODk5NzY2MDE3NTAzOTkzMzU8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI1Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFjaGluZSBMZWFybmluZzwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5Db3J0ZXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yMDwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNzM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4xOTk1PC9jWWVhcj4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI2Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGV2ZWxvcG1lbnQ8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+RG9sYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xMTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NzE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4xOTkzPC9jWWVhcj4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI3Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2VtaW5hcnMgaW4gQ2VsbCAmYW1wOyBEZXZlbG9wbWVudGFsIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+RWxvPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MjA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA5NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDk8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMTYvai5zZW1jZGIuMjAwOS4wOS4wMDk8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI4Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGV2ZWxvcG1lbnQ8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+RXRjaGVsbHM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xNDA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjIyNDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTM8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEyNDIvZGV2LjA5MTMxNDwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjkiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QTE9TIEdlbmV0aWNzPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkV0Y2hlbGxzPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+ODwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT5lMTAwMjk5NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTI8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEzNzEvam91cm5hbC5wZ2VuLjEwMDI5OTc8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMCI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk1vbGVjdWxhciBTeXN0ZW1zIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+RnVjaHM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1bWU+DQogICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM3MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTA8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMzgvbXNiLjIwMTAuMjU8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMSI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJpbyBTeXN0ZW1zPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPkdyYW5xdmlzdDwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjExMDwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTI8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMTYvai5iaW9zeXN0ZW1zLjIwMTIuMDcuMDA0PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTIiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DdXJyZW50IE9waW5pb24gaW4gUGxhbnQgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5Hcm9vdmVyPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+OTwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDY8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwMTYvai5wYmkuMjAwNS4xMS4wMTM8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMyI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBsYW50IENlbGw8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+SGlyYWthd2E8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yMjwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjE4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMDwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTEwNS90cGMuMTEwLjA3NjA4MzwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjE0Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvY2VlZGluZ3Mgb2YgdGhlIE5hdGlvbmFsIEFjYWRlbXkgb2YgU2NpZW5jZXMgb2YgdGhlIFVuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5IaXJha2F3YTwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjEwNTwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTIwODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDg8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjEwNzMvcG5hcy4wODA4NDQ0MTA1PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTUiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DZWxsPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPk1leWVyb3dpdHo8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT41Njwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4xOTg5PC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2LzAwOTItODY3NCg4OSk5MDkwMC04PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTYiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPk1leWVyb3dpdHo8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yOTU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ4MjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDI8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjExMjYvc2NpZW5jZS4xMDY2NjA5PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTciPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QbGFudCBQaHlzaW9sPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPk5pZW1pbmVuPC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MTM1PC92b2x1bWU+DQogICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY1MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMDQ8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjExMDQvcHAuMTA0LjA0MDIxMjwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjE4Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlIEJpb3RlY2hub2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+Tm9ibGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yNDwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTY1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAwNjwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTAzOC9uYnQxMjA2LTE1NjU8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxOSI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2NlZWRpbmdzIG9mIHRoZSBOYXRpb25hbCBBY2FkZW15IG9mIFNjaWVuY2VzIG9mIHRoZSBVbml0ZWQgU3RhdGVzIG9mIEFtZXJpY2E8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+T2xzb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT43Nzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTE2PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MTk4MDwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTA3My9wbmFzLjc3LjMuMTUxNjwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwIj4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QmlvaW5mb3JtYXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+UGF1PC9hdXRob3I+DQogICAgICAgICAgICAgIDx2b2x1bWU+MjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTc5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMDwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTA5My9iaW9pbmZvcm1hdGljcy9idHEwNDY8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMSI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBsYW50IENlbGw8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgIDxhdXRob3I+UmFnbmk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yMzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzIyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICA8Y1llYXI+MjAxMTwvY1llYXI+DQogICAgICAgICAgICAgIDxkb2k+MTAuMTEwNS90cGMuMTExLjA4NDAyMDwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIyIj4NCiAgICAgICAgICAgICAgPGF1dGhvcj5TYW5rYXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPGNZZWFyPjIwMTQ8L2NZZWFyPg0KICAgICAgICAgICAgICA8ZG9pPjEwLjUwNjEvZHJ5YWQuYjgzNWs8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMyI+DQogICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkN1cnJlbnQgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5TaWJvdXQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xODwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40NTg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2L2ouY3ViLjIwMDguMDIuMDcwPC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjQiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UaGUgTmV3IFBoeXRvbG9naXN0PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPlNwaWNlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjE4Njwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41Nzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDEwPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMTExL2ouMTQ2OS04MTM3LjIwMTAuMDMyMzYueDwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjI1Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFjaGluZSBWaXNpb24gYW5kIEFwcGxpY2F0aW9uczwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5UaGVyaWF1bHQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4yMzwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42NTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDA3L3MwMDEzOC0wMTEtMDM0NS05PC9kb2k+DQogICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjYiPg0KICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DZWxsPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICA8YXV0aG9yPlV5dHRld2FhbDwvYXV0aG9yPg0KICAgICAgICAgICAgICA8dm9sdW1lPjE0OTwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40Mzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2L2ouY2VsbC4yMDEyLjAyLjA0ODwvZG9pPg0KICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjI3Ij4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlIENlbGwgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgPGF1dGhvcj5ZaW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgPHZvbHVtZT4xNTwvdm9sdW1lPg0KICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44NjA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgIDxjWWVhcj4yMDEzPC9jWWVhcj4NCiAgICAgICAgICAgICAgPGRvaT4xMC4xMDM4L25jYjI3NjQ8L2RvaT4NCiAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgPC9jaXRhdGlvbl9saXN0Pg0KICAgICAgICAgIDxjb21wb25lbnRfbGlzdD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPg0KICAgICAgICAgICAgICAgICAgPGI+QWJzdHJhY3Q8L2I+DQogICAgICAgICAgICAgICAgPC90aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJ0ZXh0L3BsYWluIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwMTwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwMTwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPg0KICAgICAgICAgICAgICAgICAgPGI+ZUxpZmUgZGlnZXN0PC9iPg0KICAgICAgICAgICAgICAgIDwvdGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0idGV4dC9wbGFpbiIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDI8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDI8L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNQYXJ0T2YiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT5GaWd1cmUgMS4gQ2VsbHVsYXIgbGV2ZWwgYW5hbHlzaXMgb2YgQXJhYmlkb3BzaXMgaHlwb2NvdHlsIHNlY29uZGFyeSBncm93dGguPC90aXRsZT4NCiAgICAgICAgICAgICAgICA8c3VidGl0bGU+DQogICAgICAgICAgICAgICAgICAoDQogICAgICAgICAgICAgICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAgKSBMaWdodCBtaWNyb3Njb3B5IG9mIGNyb3NzIHNlY3Rpb25zIG9idGFpbmVkIGZyb20gQXJhYmlkb3BzaXMgaHlwb2NvdHlscyAob3JnYW4gcG9zaXRpb24gaWxsdXN0cmF0ZWQgZm9yIGEgOS1kYXktb2xkIHNlZWRsaW5nLCBsb3dlciBsZWZ0KSBhdCA5IGRhZyAodXBwZXIgbGVmdCkgYW5kIDM1IGRhZyAocmlnaHQpLiBTaXplIGJhcnMgYXJlIDEwMCDOvG0uIEJsdWUgR1VTIHN0YWluaW5nIGR1ZSB0byB0aGUgcHJlc2VuY2Ugb2YgYW4NCiAgICAgICAgICAgICAgICAgIDxpPkFQTDo6R1VTPC9pPg0KICAgICAgICAgICAgICAgICAgcmVwb3J0ZXIgZ2VuZSBpbiB0aGlzIENvbC0wIGJhY2tncm91bmQgbGluZSBtYXJrcyBwaGxvZW0gYnVuZGxlcy4gKA0KICAgICAgICAgICAgICAgICAgPGI+QjwvYj4NCiAgICAgICAgICAgICAgICAgICkgT3ZlcnZpZXcgb2YgdGhlIGRldmVsb3BtZW50YWwgc2VyaWVzICh0aW1lIHBvaW50cyBhbmQgZGlzdGluY3Qgc2FtcGxlcyBwZXIgZ2Vub3R5cGUpIGFuYWx5emVkIGluIHRoaXMgc3R1ZHkuICgNCiAgICAgICAgICAgICAgICAgIDxiPkM8L2I+DQogICAgICAgICAgICAgICAgICApIEV4YW1wbGUgb2YgYSBoaWdoLXJlc29sdXRpb24gaHlwb2NvdHlsIHNlY3Rpb24gaW1hZ2UgYXNzZW1ibGVkIGZyb20gMTEgw5cgMTEgdGlsZXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkQ8L2I+DQogICAgICAgICAgICAgICAgICApIFRoZSBzYW1lIGltYWdlIGFmdGVyIHByZS1wcm9jZXNzaW5nIGFuZCBiaW5hcml6YXRpb24sIGFuZCAoDQogICAgICAgICAgICAgICAgICA8Yj5FPC9iPg0KICAgICAgICAgICAgICAgICAgKSBzdWJzZXF1ZW50IHNlZ21lbnRhdGlvbiB1c2luZyBhIHdhdGVyc2hlZCBhbGdvcml0aG0uICgNCiAgICAgICAgICAgICAgICAgIDxiPkY8L2I+DQogICAgICAgICAgICAgICAgICApIE51bWJlciBvZiBtaXMtc2VnbWVudGVkIGNlbGxzIGFzIGRldGVybWluZWQgYnkgY2FyZWZ1bCB2aXN1YWwgaW5zcGVjdGlvbiBpbiAxMiBzZWN0aW9ucywgcGxvdHRlZCBhZ2FpbnN0IHRoZSB0b3RhbCBudW1iZXIgb2YgY2VsbHMgcGVyIHNlY3Rpb24gKGxvZyBzY2FsZSkuDQogICAgICAgICAgICAgICAgPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwMzwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwMzwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSAyLiBUaGUg4oCYUXVhbnRpdGF0aXZlIEhpc3RvbG9neeKAmSBhcHByb2FjaC48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICApIE92ZXJ2aWV3IG9mIHRoZSBjb21wdXRhdGlvbmFsIHBpcGVsaW5lIGZyb20gaW1hZ2UgYWNxdWlzaXRpb24gdG8gYW5hbHlzaXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAgICAgICAgICAgICApIOKAmFBoZW5vcHJpbnRz4oCZIGZvciB0aGUgZGlmZmVyZW50IGdlbm90eXBlcyBhbmQgZGV2ZWxvcG1lbnRhbCBzdGFnZXMuDQogICAgICAgICAgICAgICAgPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwNDwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwNDwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSAy4oCUZmlndXJlIHN1cHBsZW1lbnQgMS4gQW4gZXhhbXBsZSBvZiBjbGFzc2lmaWVyIHNlbGVjdGlvbiB0aHJvdWdoIFYtZm9sZCBjcm9zcyB2YWxpZGF0aW9uLjwvdGl0bGU+DQogICAgICAgICAgICAgICAgPHN1YnRpdGxlPlRoZSBncmVlbiBhcnJvdyBwb2ludHMgb3V0IHRoZSBzZWxlY3RlZCBmZWF0dXJlIGNvbWJpbmF0aW9uIGFjY29yZGluZyB0byB0aGUgY3JpdGVyaWEgb2YgbWluaW11bSBudW1iZXIgb2YgZmVhdHVyZXMgd2l0aCB0aGUgaGlnaGVzdCBwZXJmb3JtYW5jZSBhbmQgdGhlIGxvd2VzdCB2YXJpYXRpb24gKHRoZSByYWRpdXNWIGZlYXR1cmUgd2FzIGV4Y2x1ZGVkIGR1ZSB0byBpdHMgcHV0YXRpdmUgdmFyaWF0aW9uIGluIHRpc3N1ZSBsb2NhdGlvbikuPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwNTwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwNTwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSAzLiBQcm9ncmVzc2lvbiBvZiB0aXNzdWUgcHJvbGlmZXJhdGlvbi48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICApIFByaW5jaXBhbCBjb21wb25lbnQgYW5hbHlzaXMgKFBDQSkgb2YgdGhlIHBoZW5vcHJpbnRzIHNob3duIGluIEZpZ3VyZSAyQiwgcGVyZm9ybWVkIHdpdGggbm9ybWFsaXplZCB2YWx1ZXMgKFN1cHBsZW1lbnRhcnkgZmlsZSA0KS4gVGhlIGlubGF5IHNjcmVlcGxvdCBkaXNwbGF5cyB0aGUgcHJvcG9ydGlvbiBvZiB0b3RhbCB2YXJpYXRpb24gZXhwbGFpbmVkIGJ5IGVhY2ggcHJpbmNpcGFsIGNvbXBvbmVudC4gKA0KICAgICAgICAgICAgICAgICAgPGI+QuKAk0U8L2I+DQogICAgICAgICAgICAgICAgICApIENvbXBhcmF0aXZlIHBsb3RzIG9mIHBhcmFtZXRlciBwcm9ncmVzc2lvbiBpbiB0aGUgdHdvIGdlbm90eXBlcy4gSW4gKA0KICAgICAgICAgICAgICAgICAgPGI+RDwvYj4NCiAgICAgICAgICAgICAgICAgICksIHh5bGVtIHJlcHJlc2VudHMgY29tYmluZWQgdmVzc2VsLCBwYXJlbmNoeW1hLCBhbmQgZmliZXIgY2VsbHMsIHBobG9lbSByZXByZXNlbnRzIGNvbWJpbmVkIHBobG9lbSBwYXJlbmNoeW1hIGFuZCBidW5kbGUgY2VsbHMuIEVycm9yIGJhcnMgaW5kaWNhdGUgc3RhbmRhcmQgZXJyb3IuDQogICAgICAgICAgICAgICAgPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwNjwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwNjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSA0LiBCaW1vZGFsIGRpc3RyaWJ1dGlvbiBvZiBpbmNsaW5lIGFuZ2xlIGFjY29yZGluZyB0byBwb3NpdGlvbi48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICBhbmQNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAgICAgICAgICAgICApIFNwYXRpYWwgZGlzdHJpYnV0aW9uIG9mIGNlbGwgaW5jbGluZSBhbmdsZSBpbGx1c3RyYXRlcyB0aGUgdmFzY3VsYXIgb3JnYW5pemF0aW9uIGluIExlciAoDQogICAgICAgICAgICAgICAgICA8Yj5CPC9iPg0KICAgICAgICAgICAgICAgICAgKSBhcyBjb21wYXJlZCB0byBDb2wtMCAoDQogICAgICAgICAgICAgICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAgKSBhdCBsYXRlciBzdGFnZXMgb2YgZGV2ZWxvcG1lbnQsIGZvciBleGFtcGxlIDMwIGRhZy4gVGhlIHNpemUgb2YgdGhlIGRpc2MgaW5jcmVhc2VzIHdpdGggdGhlIGFyZWEgb2YgdGhlIGNlbGwuIEJsdWUgY29sb3IgaW5kaWNhdGVzIHJhZGlhbCBjZWxsIG9yaWVudGF0aW9uLCByZWQgb3J0aG9yYWRpYWwuICgNCiAgICAgICAgICAgICAgICAgIDxiPkM8L2I+DQogICAgICAgICAgICAgICAgICBhbmQNCiAgICAgICAgICAgICAgICAgIDxiPkQ8L2I+DQogICAgICAgICAgICAgICAgICApIFZpb2xpbiBwbG90cyBvZiBpbmNsaW5lIGFuZ2xlIGRpc3RyaWJ1dGlvbiwgaWxsdXN0cmF0aW5nIGluY3JlYXNpbmdseSBiaW1vZGFsIGRpc3RyaWJ1dGlvbiBjb2luY2lkZW50IHdpdGggcmVmaW5lZCB2YXNjdWxhciBvcmdhbml6YXRpb24gYW5kIGRpZmZlcmVudCBkeW5hbWljcyBvZiB0aGUgcHJvY2VzcyBpbiB0aGUgdHdvIGdlbm90eXBlcy4NCiAgICAgICAgICAgICAgICA8L3N1YnRpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImltYWdlL3RpZmYiIC8+DQogICAgICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8ZG9pPjEwLjc1NTQvZUxpZmUuMDE1NjcuMDA3PC9kb2k+DQogICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1NjcuMDA3PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgIDwvY29tcG9uZW50Pg0KICAgICAgICAgICAgPGNvbXBvbmVudCBwYXJlbnRfcmVsYXRpb249ImlzUGFydE9mIj4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+RmlndXJlIDTigJRmaWd1cmUgc3VwcGxlbWVudCAxLiBBbiBpbGx1c3RyYXRpb24gb2YgdGhlIGluY2xpbmUgYW5nbGUuPC90aXRsZT4NCiAgICAgICAgICAgICAgICA8c3VidGl0bGU+VGhlIGluY2xpbmUgaXMgdGhlIGFuZ2xlIGJldHdlZW4gdGhlIHNlY3Rpb24gcmFkaXVzIHRocm91Z2ggdGhlIGNlbnRlciBvZiBhbiBlbGxpcHNlIGZpdCB0byBhIGNlbGwgYW5kIHRoZSBtYWpvciBheGlzIG9mIHRoYXQgZWxsaXBzZSBleHRlbmRlZCB0b3dhcmRzIHRoZSB4IGF4aXMuPC9zdWJ0aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJpbWFnZS90aWZmIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAwODwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAwODwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1BhcnRPZiI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPkZpZ3VyZSA1LiBEaXN0aW5jdCBsb2NhbCBvcmdhbml6YXRpb24gb2YgaW5jbGluZSBhbmdsZSBkdXJpbmcgaHlwb2NvdHlsIHNlY29uZGFyeSBncm93dGggcHJvZ3Jlc3Npb24uPC90aXRsZT4NCiAgICAgICAgICAgICAgICA8c3VidGl0bGU+DQogICAgICAgICAgICAgICAgICAoDQogICAgICAgICAgICAgICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAg4oCTDQogICAgICAgICAgICAgICAgICA8Yj5KPC9iPg0KICAgICAgICAgICAgICAgICAgKSBEZW5zaXR5IHBsb3RzIG9mIGNlbGwgaW5jbGluZSBhbmdsZSB2cyByYWRpYWwgcG9zaXRpb24gZm9yIHRoZSB0d28gZ2Vub3R5cGVzIGF0IHRoZSBpbmRpY2F0ZWQgZGV2ZWxvcG1lbnRhbCBzdGFnZXMsIHJlcHJlc2VudGluZyBhbGwgY2VsbHMgYWNyb3NzIGFsbCBzZWN0aW9ucyBmb3IgYSBnaXZlbiB0aW1lIHBvaW50LiBUaGUgcmVkIGxpbmVzIHJlcHJlc2VudCB0aGUgZml0IG9mIHRoZXNlIGNsb3VkIGRpc3RyaWJ1dGlvbnMgd2l0aCBsb2NhbGx5IHdlaWdodGVkIGxpbmVhciByZWdyZXNzaW9uIChpLmUuLCBsb3dlc3MpLCByZXZlYWxpbmcgdGhlIGVzc2VudGlhbCBkYXRhIHRyZW5kcy4gQWxsIHNlY3Rpb25zIHdlcmUgbm9ybWFsaXplZCBmcm9tIDAuMCAodGhlIG1hbnVhbGx5IGRlZmluZWQgY2VudGVyKSB0byAxLjAgKHRoZSBhdmVyYWdlIHJhZGl1cyBpbiBhIHNldCBvZiBzZWN0aW9ucyBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBhdmVyYWdlIGRpc3RhbmNlIG9mIHRoZSBvdXRlcm1vc3QgY2VsbHMgZnJvbSB0aGUgY2VudGVyIGZvciBpbmRpdmlkdWFsIHNlY3Rpb25zKS4gQm94IHBsb3RzIGluZGljYXRlIHRoZSBxdWFydGlsZXMgb2YgdGhlIHJhZGlhbiBkaXN0cmlidXRpb24gZm9yIGVhY2ggY2VsbC10eXBlIGNsYXNzIGFuZCBhcmUgcGxhY2VkIGF0IHRoZSBhdmVyYWdlIHBvc2l0aW9uIG9mIHRoZSBjZWxsIHR5cGUgd2l0aCByZXNwZWN0IHRvIHRoZSB5IGF4aXMuIE91dGxpZXJzIGFyZSBzaG93biBhcyBjaXJjbGVzLg0KICAgICAgICAgICAgICAgIDwvc3VidGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0iaW1hZ2UvdGlmZiIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDk8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMDk8L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNQYXJ0T2YiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT5GaWd1cmUgNeKAlGZpZ3VyZSBzdXBwbGVtZW50IDEuIEFuYWx5c2lzIG9mIGNlbGwgbnVtYmVyIGluIGRlZmluZWQgeHlsZW0gcmVnaW9ucyBvZiBkaWZmZXJlbnQgc2l6ZS48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT5DZWxsIG51bWJlciBpbiBhIGNpcmNsZSBvZiAyMDDigJM1MDAgcGl4ZWxzIGFyb3VuZCB0aGUgc2VjdGlvbiBjZW50ZXJzIGZvciBDb2wtMC4gQ2VsbCBjb3VudCBpbiBhIGNvbnN0YW50IGFyZWEgb2YgeHlsZW0gb3ZlciB0aW1lIGFjcm9zcyBhbGwgYXZlcmFnZWQgYWNyb3NzIGFsbCBzZWN0aW9ucy48L3N1YnRpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImltYWdlL3RpZmYiIC8+DQogICAgICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8ZG9pPjEwLjc1NTQvZUxpZmUuMDE1NjcuMDEwPC9kb2k+DQogICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1NjcuMDEwPC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgIDwvY29tcG9uZW50Pg0KICAgICAgICAgICAgPGNvbXBvbmVudCBwYXJlbnRfcmVsYXRpb249ImlzUGFydE9mIj4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+RmlndXJlIDYuIE1hcHBpbmcgb2YgcGhsb2VtIHBvbGUgcGF0dGVybmluZy48L3RpdGxlPg0KICAgICAgICAgICAgICAgIDxzdWJ0aXRsZT4NCiAgICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgIDxiPkE8L2I+DQogICAgICAgICAgICAgICAgICApIEV4YW1wbGUgb2YgR2F1c3NpYW4ga2VybmVsIGRlbnNpdHkgZXN0aW1hdGUgb2YgdGhlIGxvY2F0aW9uIG9mIHByZWRpY3RlZCBwaGxvZW0gYnVuZGxlcyBjZWxscyBpbiBhIDMwIGRhZyBDb2wtMCBzZWN0aW9uLiBIaWdoIGRlbnNpdHkgcmVwcmVzZW50cyBwaGxvZW0gcG9sZXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAgICAgICAgICAgICApIEV4YW1wbGUgb2YgYW4gYW5hbHlzaXMgb2YgZW1lcmdpbmcgcGhsb2VtIHBvbGUgcG9zaXRpb24gaW4gYSAzMCBkYWcgQ29sLTAgc2VjdGlvbi4gVGhlIHBsb3QgcmVwcmVzZW50cyBhIHBpeGVsIGludGVuc2l0eSBtYXAgYWZ0ZXIgbm9pc2UgcmVkdWN0aW9uIGFsb25nIGEgY2lyY3VsYXIgcmVnaW9uIG9mIGludGVyZXN0IGFjcm9zcyB0aGUgZW1lcmdpbmcgcGhsb2VtIHBvbGVzLiBJbnRlbnNpdHkgcGVha3MgYXJlIGR1ZSB0byBHVVMgc3RhaW5pbmcgY29uZmVycmVkIHRvIHBobG9lbSBidW5kbGVzIGJ5IGFuDQogICAgICAgICAgICAgICAgICA8aT5BUEw6OkdVUzwvaT4NCiAgICAgICAgICAgICAgICAgIHJlcG9ydGVyIGNvbnN0cnVjdC4gKA0KICAgICAgICAgICAgICAgICAgPGI+QzwvYj4NCiAgICAgICAgICAgICAgICAgICkgUHJvYmFiaWxpdHkgZGVuc2l0eSBmdW5jdGlvbiBvZiB0aGUgZGF0YSBzaG93biBpbiAoDQogICAgICAgICAgICAgICAgICA8Yj5CPC9iPg0KICAgICAgICAgICAgICAgICAgKSBvYnRhaW5lZCBmcm9tIGFuIGF1dG9tYXRlZCBCYXllc2lhbiBtb2RlbC4gVGhlIGRvbWluYW50IHNpbmdsZSBwZWFrIGluZGljYXRlcyBhIGNvbnN0YW50IGFyYyBkaXN0YW5jZSBvZiBjYS4gNjIgcGl4ZWwgYmV0d2VlbiB0aGUgcGhsb2VtIHBvbGVzLg0KICAgICAgICAgICAgICAgIDwvc3VidGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8Zm9ybWF0IG1pbWVfdHlwZT0iaW1hZ2UvdGlmZiIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTE8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTE8L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNSZWZlcmVuY2VkQnkiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT4NCiAgICAgICAgICAgICAgICAgIFN1cHBsZW1lbnRhcnkgZmlsZSAxLiAoDQogICAgICAgICAgICAgICAgICA8Yj5BPC9iPg0KICAgICAgICAgICAgICAgICAgKSBBbiBleHBsYW5hdGlvbiBvZiB0aGUgZXh0cmFjdGVkIHBhcmFtZXRlcnMgdGhhdCBkZXNjcmliZSB0aGUgY2VsbHVsYXIgZmVhdHVyZXMuICgNCiAgICAgICAgICAgICAgICAgIDxiPkI8L2I+DQogICAgICAgICAgICAgICAgICApIFN1bW1hcnkgaW5mb3JtYXRpb24gb2YgdGhlIGhhbmQtbGFiZWxlZCB0cmFpbmluZyBzZXQgZm9yIHN1cGVydmlzZWQgbWFjaGluZSBsZWFybmluZy4gKA0KICAgICAgICAgICAgICAgICAgPGI+QzwvYj4NCiAgICAgICAgICAgICAgICAgICkgRGVmaW5pdGlvbiBvZiB0aGUgY2xhc3NpZmllcnMgc2VsZWN0ZWQgZm9yIGFuYWx5c2lzLiAoDQogICAgICAgICAgICAgICAgICA8Yj5EPC9iPg0KICAgICAgICAgICAgICAgICAgKSBTdW1tYXJ5IG9mIHRoZSBjbGFzc2lmaWVyIHBhcmFtZXRlcnMgZm9yIHN1cGVydmlzZWQgbWFjaGluZSBsZWFybmluZy4gKA0KICAgICAgICAgICAgICAgICAgPGI+RTwvYj4NCiAgICAgICAgICAgICAgICAgICkgT3ZlcnZpZXcgb2YgdGhlIGNlbGwgdHlwZSBjbGFzc2VzIHJlY29nbml6ZWQgYnkgdGhlIHN1cGVydmlzZWQgbWFjaGluZSBsZWFybmluZyBhcHByb2FjaCBhbmQgdGhlaXIgYXNzaWdubWVudCBjb2RlcyB1c2VkIGluIERhdGEgRmlsZXMgMyBhbmQgNC4NCiAgICAgICAgICAgICAgICA8L3RpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0IiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAxMjwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAxMjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1JlZmVyZW5jZWRCeSI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPlN1cHBsZW1lbnRhcnkgZmlsZSAyLiBRdWFsaXR5IGNvbnRyb2wgZmlsZXMgZm9yIHRoZSBDb2wtMCBzZWN0aW9ucy48L3RpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9ImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0IiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAxMzwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAxMzwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICAgIDxjb21wb25lbnQgcGFyZW50X3JlbGF0aW9uPSJpc1JlZmVyZW5jZWRCeSI+DQogICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgPHRpdGxlPlN1cHBsZW1lbnRhcnkgZmlsZSAzLiBRdWFsaXR5IGNvbnRyb2wgZmlsZXMgZm9yIHRoZSBMZXIgc2VjdGlvbnMuPC90aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTQ8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTQ8L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNSZWZlcmVuY2VkQnkiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT5TdXBwbGVtZW50YXJ5IGZpbGUgNC4gVGhlIG5vcm1hbGl6ZWQgdmFsdWVzIG9mIHRoZSBwaGVub3ByaW50cyAoRmlndXJlIDJCKSB1c2VkIGZvciBQQ0EuPC90aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCIgLz4NCiAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxkb2k+MTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTU8L2RvaT4NCiAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2VsaWZlc2NpZW5jZXMub3JnL2xvb2t1cC9kb2kvMTAuNzU1NC9lTGlmZS4wMTU2Ny4wMTU8L3Jlc291cmNlPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgPC9jb21wb25lbnQ+DQogICAgICAgICAgICA8Y29tcG9uZW50IHBhcmVudF9yZWxhdGlvbj0iaXNQYXJ0T2YiPg0KICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgIDx0aXRsZT4NCiAgICAgICAgICAgICAgICAgIDxiPkRlY2lzaW9uIGxldHRlcjwvYj4NCiAgICAgICAgICAgICAgICA8L3RpdGxlPg0KICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgPGZvcm1hdCBtaW1lX3R5cGU9InRleHQvcGxhaW4iIC8+DQogICAgICAgICAgICAgIDxkb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8ZG9pPjEwLjc1NTQvZUxpZmUuMDE1NjcuMDE2PC9kb2k+DQogICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9lbGlmZXNjaWVuY2VzLm9yZy9sb29rdXAvZG9pLzEwLjc1NTQvZUxpZmUuMDE1NjcuMDE2PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgIDwvY29tcG9uZW50Pg0KICAgICAgICAgICAgPGNvbXBvbmVudCBwYXJlbnRfcmVsYXRpb249ImlzUGFydE9mIj4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+DQogICAgICAgICAgICAgICAgICA8Yj5BdXRob3IgcmVzcG9uc2U8L2I+DQogICAgICAgICAgICAgICAgPC90aXRsZT4NCiAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgIDxmb3JtYXQgbWltZV90eXBlPSJ0ZXh0L3BsYWluIiAvPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC43NTU0L2VMaWZlLjAxNTY3LjAxNzwvZG9pPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vZWxpZmVzY2llbmNlcy5vcmcvbG9va3VwL2RvaS8xMC43NTU0L2VMaWZlLjAxNTY3LjAxNzwvcmVzb3VyY2U+DQogICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICA8L2NvbXBvbmVudD4NCiAgICAgICAgICA8L2NvbXBvbmVudF9saXN0Pg0KICAgICAgICA8L2pvdXJuYWxfYXJ0aWNsZT4NCiAgICAgIDwvam91cm5hbD4NCiAgICA8L2Nyb3NzcmVmPg0KICA8L2RvaV9yZWNvcmQ+DQo8L2RvaV9yZWNvcmRzPg==
729
104
  http_version:
730
- recorded_at: Sat, 06 May 2017 11:43:09 GMT
105
+ recorded_at: Sat, 22 Jul 2017 16:29:13 GMT
731
106
  recorded_with: VCR 3.0.3