bolognese 2.3.7 → 2.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (552) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +1 -1
  4. data/bolognese.gemspec +1 -2
  5. data/lib/bolognese/datacite_utils.rb +10 -3
  6. data/lib/bolognese/readers/datacite_reader.rb +5 -9
  7. data/lib/bolognese/utils.rb +4 -2
  8. data/lib/bolognese/version.rb +1 -1
  9. metadata +2 -545
  10. data/spec/array_spec.rb +0 -22
  11. data/spec/author_utils_spec.rb +0 -259
  12. data/spec/cli_spec.rb +0 -226
  13. data/spec/datacite_utils_spec.rb +0 -357
  14. data/spec/doi_utils_spec.rb +0 -314
  15. data/spec/find_from_format_spec.rb +0 -114
  16. data/spec/fixtures/aida.json +0 -82
  17. data/spec/fixtures/cgimp_package.json +0 -18
  18. data/spec/fixtures/cit_package.json +0 -19
  19. data/spec/fixtures/citeproc-no-author.json +0 -26
  20. data/spec/fixtures/citeproc-no-categories.json +0 -21
  21. data/spec/fixtures/citeproc.json +0 -36
  22. data/spec/fixtures/codemeta.json +0 -86
  23. data/spec/fixtures/codemeta_v2.json +0 -86
  24. data/spec/fixtures/crosscite.json +0 -63
  25. data/spec/fixtures/crossref.bib +0 -14
  26. data/spec/fixtures/crossref.ris +0 -15
  27. data/spec/fixtures/crossref.xml +0 -606
  28. data/spec/fixtures/crossref_schema_4.6_values.xml +0 -183
  29. data/spec/fixtures/datacite-by-nd-4.0.xml +0 -51
  30. data/spec/fixtures/datacite-empty-sizes.xml +0 -57
  31. data/spec/fixtures/datacite-example-ROR-nameIdentifiers.xml +0 -125
  32. data/spec/fixtures/datacite-example-affiliation.xml +0 -114
  33. data/spec/fixtures/datacite-example-ancientdates-v4.3.xml +0 -29
  34. data/spec/fixtures/datacite-example-complicated-tba.xml +0 -56
  35. data/spec/fixtures/datacite-example-complicated-v3.0.xml +0 -48
  36. data/spec/fixtures/datacite-example-complicated-v4.0.xml +0 -54
  37. data/spec/fixtures/datacite-example-complicated-v4.1.xml +0 -57
  38. data/spec/fixtures/datacite-example-dissertation-v4.4.xml +0 -56
  39. data/spec/fixtures/datacite-example-escaped-text.xml +0 -56
  40. data/spec/fixtures/datacite-example-full-v4.4.xml +0 -114
  41. data/spec/fixtures/datacite-example-full-v4.5.xml +0 -255
  42. data/spec/fixtures/datacite-example-full-v4.6.xml +0 -114
  43. data/spec/fixtures/datacite-example-geolocation-2.xml +0 -141
  44. data/spec/fixtures/datacite-example-geolocation.xml +0 -66
  45. data/spec/fixtures/datacite-example-nameIdentifier-with-schemeURI.xml +0 -94
  46. data/spec/fixtures/datacite-example-polygon-v4.1.xml +0 -163
  47. data/spec/fixtures/datacite-example-relateditems-with-attributes.xml +0 -61
  48. data/spec/fixtures/datacite-example-relateditems.xml +0 -61
  49. data/spec/fixtures/datacite-example-xs-string.xml +0 -28
  50. data/spec/fixtures/datacite-formats-with-xs.xml +0 -22
  51. data/spec/fixtures/datacite-funderIdentifier.xml +0 -98
  52. data/spec/fixtures/datacite-geolocation-empty.xml +0 -159
  53. data/spec/fixtures/datacite-geolocationpolygons-multiple.xml +0 -76
  54. data/spec/fixtures/datacite-metadata-sample-complicated-v2.2.xml +0 -52
  55. data/spec/fixtures/datacite-multiple-language.xml +0 -38
  56. data/spec/fixtures/datacite-multiple-rights.xml +0 -59
  57. data/spec/fixtures/datacite-schema-2.2.xml +0 -80
  58. data/spec/fixtures/datacite-seriesinformation.xml +0 -46
  59. data/spec/fixtures/datacite-space-in-sizes.xml +0 -52
  60. data/spec/fixtures/datacite-xml-lang.xml +0 -51
  61. data/spec/fixtures/datacite.json +0 -89
  62. data/spec/fixtures/datacite.xml +0 -40
  63. data/spec/fixtures/datacite_blank_name_identifier.xml +0 -22
  64. data/spec/fixtures/datacite_blank_publisher.xml +0 -18
  65. data/spec/fixtures/datacite_dataset.xml +0 -58
  66. data/spec/fixtures/datacite_journal_article.xml +0 -64
  67. data/spec/fixtures/datacite_malformed_creator.xml +0 -52
  68. data/spec/fixtures/datacite_missing_creator.xml +0 -33
  69. data/spec/fixtures/datacite_schema_3.xml +0 -58
  70. data/spec/fixtures/datacite_software.json +0 -21
  71. data/spec/fixtures/datacite_software_missing_comma.json +0 -18
  72. data/spec/fixtures/datacite_software_overlapping_keys.json +0 -18
  73. data/spec/fixtures/datacite_software_version.json +0 -74
  74. data/spec/fixtures/edam_package.json +0 -12
  75. data/spec/fixtures/funding_reference.xml +0 -53
  76. data/spec/fixtures/gtex.xml +0 -71
  77. data/spec/fixtures/maremma/codemeta.json +0 -36
  78. data/spec/fixtures/nist.xml +0 -35
  79. data/spec/fixtures/ns0.xml +0 -2
  80. data/spec/fixtures/pure.bib +0 -14
  81. data/spec/fixtures/pure.ris +0 -15
  82. data/spec/fixtures/pure.xml +0 -188
  83. data/spec/fixtures/ris_bug.ris +0 -9
  84. data/spec/fixtures/schema_4.0.xml +0 -140
  85. data/spec/fixtures/schema_org.json +0 -50
  86. data/spec/fixtures/schema_org_4.6_attributes.json +0 -108
  87. data/spec/fixtures/schema_org_geolocation.json +0 -82
  88. data/spec/fixtures/schema_org_geoshape.json +0 -550
  89. data/spec/fixtures/schema_org_gtex.json +0 -75
  90. data/spec/fixtures/schema_org_list.json +0 -12623
  91. data/spec/fixtures/schema_org_tdl_iodp_invalid_authors.json +0 -25
  92. data/spec/fixtures/schema_org_topmed.json +0 -53
  93. data/spec/fixtures/schema_org_type_as_array.json +0 -41
  94. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/default.yml +0 -106
  95. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_bibtex.yml +0 -106
  96. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_citation.yml +0 -106
  97. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_crossref.yml +0 -106
  98. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_datacite.yml +0 -106
  99. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_jats.yml +0 -106
  100. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/crossref/to_schema_org.yml +0 -106
  101. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/default.yml +0 -106
  102. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_bibtex.yml +0 -106
  103. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_citation.yml +0 -106
  104. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite.yml +0 -106
  105. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_datacite_json.yml +0 -106
  106. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_jats.yml +0 -106
  107. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/datacite/to_schema_org.yml +0 -106
  108. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/default.yml +0 -117
  109. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_datacite.yml +0 -117
  110. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/convert_from_id/schema_org/to_schema_org.yml +0 -115
  111. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/crossref.yml +0 -54
  112. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/datacite.yml +0 -54
  113. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/jalc.yml +0 -54
  114. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/kisti.yml +0 -54
  115. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/medra.yml +0 -54
  116. data/spec/fixtures/vcr_cassettes/Bolognese_CLI/find_from_format_by_id/op.yml +0 -54
  117. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/author.yml +0 -48
  118. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/no_author.yml +0 -48
  119. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/single_author.yml +0 -48
  120. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/authors_as_string/with_organization.yml +0 -48
  121. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_state.yml +0 -106
  122. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_datacite_metadata/change_title.yml +0 -106
  123. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_description.yml +0 -55
  124. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_identifiers.yml +0 -55
  125. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license.yml +0 -55
  126. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license_name.yml +0 -55
  127. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_license_url.yml +0 -55
  128. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/change_state.yml +0 -55
  129. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/validates_against_schema.yml +0 -55
  130. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +0 -55
  131. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/doi.yml +0 -48
  132. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/doi_with_protocol.yml +0 -48
  133. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/dx_doi_org_url.yml +0 -48
  134. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/force_test_resolver.yml +0 -48
  135. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/https_url.yml +0 -48
  136. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/test_resolver.yml +0 -48
  137. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_api_url/test_resolver_http.yml +0 -48
  138. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi.yml +0 -48
  139. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/doi_with_special_characters.yml +0 -48
  140. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/not_a_doi.yml +0 -48
  141. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/sandbox_url.yml +0 -48
  142. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_from_url/url.yml +0 -48
  143. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/crossref.yml +0 -99
  144. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/datacite.yml +0 -99
  145. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/jalc.yml +0 -99
  146. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/kisti.yml +0 -99
  147. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/medra.yml +0 -99
  148. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_a_valid_prefix.yml +0 -48
  149. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/not_found.yml +0 -99
  150. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_registration_agency/op.yml +0 -99
  151. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi.yml +0 -48
  152. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/doi_with_protocol.yml +0 -48
  153. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/dx_doi_org_url.yml +0 -48
  154. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/force_stage_resolver.yml +0 -48
  155. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/https_url.yml +0 -48
  156. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/stage_resolver.yml +0 -48
  157. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/doi_resolver/stage_resolver_http.yml +0 -48
  158. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref.yml +0 -157
  159. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +0 -157
  160. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite.yml +0 -157
  161. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/datacite_doi_http.yml +0 -157
  162. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/github.yml +0 -106
  163. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/orcid.yml +0 -106
  164. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/schema_org.yml +0 -106
  165. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +0 -157
  166. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/bibtex.yml +0 -106
  167. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/citeproc.yml +0 -106
  168. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/codemeta.yml +0 -106
  169. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crosscite.yml +0 -106
  170. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/crossref.yml +0 -106
  171. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite.yml +0 -106
  172. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/datacite_json.yml +0 -106
  173. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/ris.yml +0 -106
  174. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_file/schema_org.yml +0 -106
  175. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/find_from_format_from_string/crosscite.yml +0 -106
  176. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_for_match.yml +0 -48
  177. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_for_with_schemeUri_in_hash.yml +0 -48
  178. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_match.yml +0 -48
  179. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/hsh_to_fos_no_match.yml +0 -48
  180. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_for_match.yml +0 -48
  181. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_match.yml +0 -48
  182. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/fos/name_to_fos_no_match.yml +0 -48
  183. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org/with_id.yml +0 -48
  184. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org_creators/with_affiliation.yml +0 -48
  185. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/from_schema_org_creators/without_affiliation.yml +0 -48
  186. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/maremma.yml +0 -75
  187. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_codemeta_metadata/metadata_reports.yml +0 -75
  188. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +0 -103
  189. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +0 -102
  190. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +0 -106
  191. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/JaLC.yml +0 -137
  192. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/KISTI.yml +0 -158
  193. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/OP.yml +0 -100
  194. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/affiliation_is_space.yml +0 -101
  195. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/another_book.yml +0 -98
  196. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/another_book_chapter.yml +0 -100
  197. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/article_id_as_page_number.yml +0 -101
  198. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/author_literal.yml +0 -108
  199. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book.yml +0 -99
  200. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_chapter.yml +0 -170
  201. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_chapter_with_RDF_for_container.yml +0 -99
  202. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/book_oup.yml +0 -98
  203. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/component.yml +0 -120
  204. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dataset.yml +0 -130
  205. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dataset_usda.yml +0 -143
  206. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/date_in_future.yml +0 -101
  207. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/dissertation.yml +0 -129
  208. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/empty_given_name.yml +0 -101
  209. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/invalid_date.yml +0 -101
  210. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article.yml +0 -100
  211. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_original_language_title.yml +0 -99
  212. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with.yml +0 -104
  213. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with_RDF_for_container.yml +0 -99
  214. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_article_with_funding.yml +0 -100
  215. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/journal_issue.yml +0 -127
  216. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/mEDRA.yml +0 -98
  217. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/markup.yml +0 -105
  218. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/missing_creator.yml +0 -100
  219. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/multiple_issn.yml +0 -99
  220. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/multiple_titles.yml +0 -98
  221. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/multiple_titles_with_missing.yml +0 -450
  222. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/not_found_error.yml +0 -97
  223. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/peer_review.yml +0 -103
  224. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/posted_content.yml +0 -99
  225. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/posted_content_copernicus.yml +0 -102
  226. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/report_osti.yml +0 -144
  227. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/vor_with_url.yml +0 -102
  228. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/yet_another_book.yml +0 -99
  229. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_crossref_metadata/yet_another_book_chapter.yml +0 -99
  230. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_json_metadata/metadata_from_api.yml +0 -106
  231. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/BlogPosting.yml +0 -106
  232. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_staging_system.yml +0 -106
  233. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_staging_system_schema_3.yml +0 -106
  234. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_in_with_related_id_system.yml +0 -106
  235. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/DOI_not_found.yml +0 -102
  236. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Dataset.yml +0 -106
  237. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding.yml +0 -106
  238. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_empty_awardTitle.yml +0 -106
  239. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Funding_schema_version_4.yml +0 -106
  240. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Referee_report_in_staging_system.yml +0 -106
  241. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/Schema_org_type.yml +0 -106
  242. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_only_full_name.yml +0 -106
  243. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_scheme.yml +0 -106
  244. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/author_with_wrong_orcid_scheme.yml +0 -106
  245. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/cc-by_3_0_us.yml +0 -106
  246. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/content_url.yml +0 -106
  247. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/date.yml +0 -106
  248. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/dissertation.yml +0 -106
  249. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/doi_with_sign.yml +0 -106
  250. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/empty_subject.yml +0 -106
  251. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/even_more_subject_scheme_FOR.yml +0 -106
  252. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_references.yml +0 -106
  253. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/funding_schema_version_3.yml +0 -106
  254. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/is_identical_to.yml +0 -106
  255. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/keywords_with_attributes.yml +0 -106
  256. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/leading_and_trailing_whitespace.yml +0 -106
  257. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/more_subject_scheme_FOR.yml +0 -106
  258. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorsName.yml +0 -106
  259. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_licenses.yml +0 -106
  260. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/series-information.yml +0 -106
  261. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/subject_scheme.yml +0 -106
  262. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/subject_scheme_FOR.yml +0 -106
  263. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date/publication_date.yml +0 -48
  264. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/date.yml +0 -48
  265. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year-month.yml +0 -48
  266. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_date_parts/year.yml +0 -48
  267. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/date.yml +0 -48
  268. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/year-month.yml +0 -48
  269. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_from_parts/year.yml +0 -48
  270. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/date.yml +0 -48
  271. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year-month.yml +0 -48
  272. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_date_parts/year.yml +0 -48
  273. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/future.yml +0 -48
  274. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/invalid.yml +0 -48
  275. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/nil.yml +0 -48
  276. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/past.yml +0 -48
  277. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datetime_from_time/present.yml +0 -48
  278. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_familyName.yml +0 -55
  279. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_Thai.yml +0 -55
  280. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order.yml +0 -55
  281. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +0 -55
  282. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/has_name_in_sort-order.yml +0 -55
  283. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/hyper-authorship.yml +0 -55
  284. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/is_organization.yml +0 -48
  285. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_author_names_in_one_field.yml +0 -55
  286. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/multiple_name_identifier.yml +0 -55
  287. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation.yml +0 -55
  288. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_affiliation_and_country.yml +0 -114
  289. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/name_with_role.yml +0 -55
  290. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_one_author/only_familyName_and_givenName.yml +0 -57
  291. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting.yml +0 -117
  292. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +0 -117
  293. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/harvard_dataverse.yml +0 -40
  294. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/pangaea.yml +0 -57
  295. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_schema_org_metadata/zenodo.yml +0 -62
  296. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/only_title.yml +0 -48
  297. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_and_pages.yml +0 -48
  298. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_volume_and_pages.yml +0 -48
  299. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_series_information/title_volume_issue_and_pages.yml +0 -48
  300. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_as_codemeta_url.yml +0 -48
  301. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_from_url.yml +0 -48
  302. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/github/github_from_url_file.yml +0 -48
  303. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +0 -54
  304. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/handle_input/unknown_DOI_prefix.yml +0 -54
  305. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_contributors/none.yml +0 -55
  306. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_contributors_Translator/supports_Translator_contributorType.yml +0 -71
  307. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_creators/insert.yml +0 -55
  308. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_dates/insert.yml +0 -55
  309. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_dates_with_Coverage/inserts_date_with_dateType_Coverage.yml +0 -71
  310. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_descriptions/insert.yml +0 -55
  311. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_identifier/doi.yml +0 -55
  312. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_language/insert.yml +0 -55
  313. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_person/creator_only_name.yml +0 -55
  314. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publication_year/insert.yml +0 -55
  315. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_publisher/insert.yml +0 -55
  316. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/insert.yml +0 -55
  317. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers/related_identifier.yml +0 -55
  318. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers_CSTR/supports_CSTR_relatedIdentifierType.yml +0 -71
  319. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers_HasTranslation/supports_HasTranslation_relationType.yml +0 -71
  320. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_identifiers_RRID/supports_RRID_relatedIdentifierType.yml +0 -71
  321. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_related_items/insert.yml +0 -73
  322. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type/insert.yml +0 -55
  323. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type_with_Award/supports_Award_as_resourceTypeGeneral.yml +0 -71
  324. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_resource_type_with_Project/supports_Project_as_resourceTypeGeneral.yml +0 -71
  325. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_rights_list/insert.yml +0 -55
  326. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_sizes/insert.yml +0 -55
  327. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_subjects/insert.yml +0 -73
  328. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_titles/insert.yml +0 -55
  329. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/insert_version/insert.yml +0 -55
  330. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_comma.yml +0 -48
  331. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_family_name.yml +0 -48
  332. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_id.yml +0 -48
  333. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_known_given_name.yml +0 -48
  334. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_no_info.yml +0 -48
  335. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_orcid_id.yml +0 -48
  336. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/is_personal_name_/has_type_organization.yml +0 -48
  337. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/missing_comma.yml +0 -106
  338. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/nil.yml +0 -106
  339. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/overlapping_keys.yml +0 -106
  340. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/jsonlint/valid.yml +0 -106
  341. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/not_found.yml +0 -48
  342. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/with_trailing_slash.yml +0 -48
  343. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_cc_url/with_trailing_slash_and_to_https.yml +0 -48
  344. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/SICI_doi.yml +0 -48
  345. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi.yml +0 -48
  346. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_force_datacite_sandbox.yml +0 -48
  347. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_datacite_sandbox.yml +0 -48
  348. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_from_url_without_doi_proxy.yml +0 -48
  349. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_too_long.yml +0 -48
  350. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_prefix_with_string.yml +0 -48
  351. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/doi_with_protocol.yml +0 -48
  352. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/dx_doi_org_url.yml +0 -48
  353. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/https_url.yml +0 -48
  354. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/not_valid_doi_prefix.yml +0 -48
  355. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_doi/url_with_one_slash.yml +0 -48
  356. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi.yml +0 -48
  357. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/doi_as_url.yml +0 -48
  358. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/ftp.yml +0 -48
  359. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/invalid_url.yml +0 -48
  360. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_options.yml +0 -48
  361. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/sandbox_via_url.yml +0 -48
  362. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/string.yml +0 -48
  363. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url.yml +0 -48
  364. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_id/url_with_utf-8.yml +0 -48
  365. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/doi.yml +0 -48
  366. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_ids/url.yml +0 -48
  367. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_array.yml +0 -48
  368. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_empty_array.yml +0 -48
  369. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_hash.yml +0 -48
  370. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_issn/from_string.yml +0 -48
  371. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/uri.yml +0 -48
  372. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash.yml +0 -48
  373. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/normalize_url/with_trailing_slash_and_to_https.yml +0 -48
  374. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array.yml +0 -48
  375. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/array_of_strings.yml +0 -48
  376. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/first.yml +0 -48
  377. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/hash.yml +0 -48
  378. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/nil.yml +0 -48
  379. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/parse_attributes/string.yml +0 -48
  380. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_only_keep_specific_tags.yml +0 -48
  381. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_remove_a_tags.yml +0 -48
  382. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id.yml +0 -48
  383. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_not_found.yml +0 -48
  384. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_url.yml +0 -48
  385. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_exists.yml +0 -48
  386. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_id.yml +0 -48
  387. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org/with_id.yml +0 -48
  388. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/to_schema_org_identifiers/with_identifiers.yml +0 -48
  389. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_doi/doi.yml +0 -48
  390. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_10.yml +0 -48
  391. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_11.yml +0 -48
  392. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_12.yml +0 -48
  393. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_13.yml +0 -48
  394. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_14.yml +0 -48
  395. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_4.yml +0 -48
  396. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_5.yml +0 -48
  397. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_6.yml +0 -48
  398. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_7.yml +0 -48
  399. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_8.yml +0 -48
  400. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/1_7_9.yml +0 -48
  401. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/funder_doi.yml +0 -48
  402. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/funder_doi_without_prefix.yml +0 -48
  403. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_funder_doi/non-funder_doi.yml +0 -48
  404. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid.yml +0 -48
  405. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_https.yml +0 -48
  406. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_id.yml +0 -48
  407. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_sandbox.yml +0 -65
  408. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_sandbox_https.yml +0 -65
  409. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_with_spaces.yml +0 -48
  410. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_wrong_id.yml +0 -48
  411. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid/validate_orcid_www.yml +0 -48
  412. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +0 -48
  413. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +0 -48
  414. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +0 -48
  415. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +0 -48
  416. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi.yml +0 -48
  417. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_as_url.yml +0 -48
  418. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/doi_with_protocol.yml +0 -48
  419. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_prefix/only_prefix.yml +0 -48
  420. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/DOI.yml +0 -48
  421. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/ISSN.yml +0 -48
  422. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/URL.yml +0 -48
  423. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/validate_url/string.yml +0 -48
  424. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/BlogPosting.yml +0 -55
  425. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/Dataset.yml +0 -55
  426. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +0 -114
  427. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/climate_data.yml +0 -55
  428. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/from_schema_org.yml +0 -115
  429. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/keywords_subject_scheme.yml +0 -55
  430. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/maremma.yml +0 -75
  431. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/text.yml +0 -55
  432. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_data_citation.yml +0 -55
  433. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_bibtex/with_pages.yml +0 -52
  434. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Dataset.yml +0 -55
  435. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article.yml +0 -55
  436. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +0 -55
  437. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Missing_author.yml +0 -49
  438. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +0 -55
  439. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/software_w/version.yml +0 -55
  440. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Another_dataset.yml +0 -55
  441. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting.yml +0 -55
  442. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml +0 -115
  443. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Dataset.yml +0 -55
  444. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/container_title.yml +0 -55
  445. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/interactive_resource_without_dates.yml +0 -55
  446. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/journal_article.yml +0 -55
  447. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/keywords_subject_scheme.yml +0 -55
  448. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/maremma.yml +0 -75
  449. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/missing_creator.yml +0 -49
  450. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/multiple_abstracts.yml +0 -55
  451. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/organization_author.yml +0 -52
  452. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/software.yml +0 -55
  453. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/software_w/version.yml +0 -55
  454. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_only_first_page.yml +0 -50
  455. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/with_pages.yml +0 -52
  456. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +0 -55
  457. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite_check_codemeta_v2.yml +0 -55
  458. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/datacite_database_attributes.yml +0 -55
  459. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/maremma.yml +0 -75
  460. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_ORCID_ID.yml +0 -52
  461. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation.yml +0 -55
  462. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crosscite/with_data_citation_schema_org.yml +0 -117
  463. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_crossref/from_DataCite.yml +0 -55
  464. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/climate_data.yml +0 -55
  465. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/maremma.yml +0 -75
  466. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/text.yml +0 -55
  467. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/with_data_citation.yml +0 -55
  468. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_csv/with_pages.yml +0 -52
  469. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/maremma.yml +0 -75
  470. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +0 -52
  471. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +0 -55
  472. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_json/with_data_citation_schema_org.yml +0 -117
  473. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/DOI_not_found.yml +0 -51
  474. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Dataset_in_schema_4_0.yml +0 -55
  475. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru.yml +0 -55
  476. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/Text_pass-thru_with_doi_in_options.yml +0 -55
  477. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/maremma.yml +0 -75
  478. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_ORCID_ID.yml +0 -52
  479. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation.yml +0 -55
  480. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_data_citation_schema_org.yml +0 -115
  481. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_editor.yml +0 -49
  482. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_datacite_xml/with_version.yml +0 -55
  483. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +0 -55
  484. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +0 -55
  485. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/book_chapter.yml +0 -88
  486. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +0 -55
  487. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/maremma.yml +0 -75
  488. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +0 -52
  489. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +0 -55
  490. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation_schema_org.yml +0 -117
  491. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_editor.yml +0 -49
  492. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/BlogPosting.yml +0 -55
  493. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/BlogPosting_schema_org.yml +0 -117
  494. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/journal_article.yml +0 -55
  495. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/maremma.yml +0 -75
  496. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_rdf_xml/with_pages.yml +0 -52
  497. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting.yml +0 -55
  498. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +0 -117
  499. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/Dataset.yml +0 -55
  500. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/alternate_name.yml +0 -55
  501. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/journal_article.yml +0 -55
  502. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/keywords_with_subject_scheme.yml +0 -55
  503. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/maremma.yml +0 -75
  504. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_ris/with_pages.yml +0 -52
  505. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding.yml +0 -106
  506. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +0 -106
  507. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +0 -55
  508. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_Cyark.yml +0 -106
  509. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +0 -106
  510. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/Schema_org_JSON_isReferencedBy.yml +0 -55
  511. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml +0 -55
  512. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/data_catalog.yml +0 -55
  513. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/geo_location_box.yml +0 -55
  514. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +0 -55
  515. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/journal_article.yml +0 -55
  516. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +0 -75
  517. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/series_information.yml +0 -55
  518. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme.yml +0 -55
  519. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml +0 -55
  520. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting.yml +0 -55
  521. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_schema_org.yml +0 -117
  522. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Dataset.yml +0 -55
  523. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/journal_article.yml +0 -55
  524. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/with_pages.yml +0 -52
  525. data/spec/fixtures/vivli.xml +0 -1
  526. data/spec/metadata_spec.rb +0 -165
  527. data/spec/readers/bibtex_reader_spec.rb +0 -65
  528. data/spec/readers/citeproc_reader_spec.rb +0 -65
  529. data/spec/readers/codemeta_reader_spec.rb +0 -138
  530. data/spec/readers/crosscite_reader_spec.rb +0 -43
  531. data/spec/readers/crossref_reader_spec.rb +0 -1133
  532. data/spec/readers/datacite_json_reader_spec.rb +0 -82
  533. data/spec/readers/datacite_reader_spec.rb +0 -1865
  534. data/spec/readers/npm_reader_spec.rb +0 -68
  535. data/spec/readers/ris_reader_spec.rb +0 -78
  536. data/spec/readers/schema_org_reader_spec.rb +0 -371
  537. data/spec/spec_helper.rb +0 -95
  538. data/spec/utils_spec.rb +0 -666
  539. data/spec/writers/bibtex_writer_spec.rb +0 -195
  540. data/spec/writers/citation_writer_spec.rb +0 -61
  541. data/spec/writers/citeproc_writer_spec.rb +0 -299
  542. data/spec/writers/codemeta_writer_spec.rb +0 -45
  543. data/spec/writers/crosscite_writer_spec.rb +0 -129
  544. data/spec/writers/crossref_writer_spec.rb +0 -21
  545. data/spec/writers/csv_writer_spec.rb +0 -94
  546. data/spec/writers/datacite_json_writer_spec.rb +0 -112
  547. data/spec/writers/datacite_writer_spec.rb +0 -578
  548. data/spec/writers/jats_writer_spec.rb +0 -208
  549. data/spec/writers/rdf_xml_writer_spec.rb +0 -93
  550. data/spec/writers/ris_writer_spec.rb +0 -207
  551. data/spec/writers/schema_org_writer_spec.rb +0 -426
  552. data/spec/writers/turtle_writer_spec.rb +0 -102
@@ -1,99 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://doi.org/ra/10.1029
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- User-Agent:
11
- - Mozilla/5.0 (compatible; Maremma/4.9.4; mailto:info@datacite.org)
12
- Accept:
13
- - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
- Accept-Encoding:
15
- - gzip,deflate
16
- response:
17
- status:
18
- code: 200
19
- message: ''
20
- headers:
21
- Date:
22
- - Wed, 09 Jun 2021 09:34:48 GMT
23
- Content-Type:
24
- - application/json;charset=UTF-8
25
- Connection:
26
- - keep-alive
27
- Content-Encoding:
28
- - gzip
29
- Cf-Cache-Status:
30
- - DYNAMIC
31
- Cf-Request-Id:
32
- - 0a91b8edef00004abcf796a000000001
33
- Expect-Ct:
34
- - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
35
- Report-To:
36
- - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v2?s=ZLjh14gyQHe0C7%2Fch4MlgcOfSNoSkTQKtpVWA5H9yDYeR4%2BtvbSLv3IMkyJ%2BxjNghcq7SYc7BBFef00rR%2FAbfOIbHpAgf%2BQw4KnWu5XHO5xLLx%2BV"}],"group":"cf-nel","max_age":604800}'
37
- Nel:
38
- - '{"report_to":"cf-nel","max_age":604800}'
39
- Strict-Transport-Security:
40
- - max-age=31536000; includeSubDomains; preload
41
- Server:
42
- - cloudflare
43
- Cf-Ray:
44
- - 65c95dc31d164abc-FRA
45
- Alt-Svc:
46
- - h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400, h3=":443";
47
- ma=86400
48
- body:
49
- encoding: ASCII-8BIT
50
- string: !binary |-
51
- H4sIAAAAAAAAA4vmUlCoBmIFBSUXf08lKwUlQwM9QwMjSyUdiGiQI0jQuSi/uLgoNU0JKFjLFQsAVc8IdjYAAAA=
52
- http_version:
53
- recorded_at: Wed, 09 Jun 2021 09:34:48 GMT
54
- - request:
55
- method: get
56
- uri: https://api.crossref.org/works/10.1029/ar035/transform/application/vnd.crossref.unixsd+xml
57
- body:
58
- encoding: US-ASCII
59
- string: ''
60
- headers:
61
- User-Agent:
62
- - Mozilla/5.0 (compatible; Maremma/4.9.4; mailto:info@datacite.org)
63
- Accept:
64
- - text/xml;charset=utf-8
65
- Accept-Encoding:
66
- - gzip,deflate
67
- response:
68
- status:
69
- code: 200
70
- message: OK
71
- headers:
72
- Link:
73
- - <http://dx.doi.org/10.1029/ar035>; rel="canonical", <http://onlinelibrary.wiley.com/wol1/doi/10.1029/AR035/fullpdf>;
74
- version="vor"; rel="item"
75
- Access-Control-Allow-Origin:
76
- - "*"
77
- Access-Control-Allow-Headers:
78
- - X-Requested-With
79
- Content-Length:
80
- - '115329'
81
- Server:
82
- - http-kit
83
- Date:
84
- - Wed, 09 Jun 2021 09:34:49 GMT
85
- X-Rate-Limit-Limit:
86
- - '50'
87
- X-Rate-Limit-Interval:
88
- - 1s
89
- Permissions-Policy:
90
- - interest-cohort=()
91
- Connection:
92
- - close
93
- body:
94
- encoding: ASCII-8BIT
95
- string: !binary |-
96
- PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0iYm9va190aXRsZSI+MTAuMTAyOS9BUjAzNTwvZG9pPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0icHVibGlzaGVyLW5hbWUiIHR5cGU9InN0cmluZyI+V2lsZXk8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0icHJlZml4LW5hbWUiIHR5cGU9InN0cmluZyI+V2lsZXkgKEJsYWNrd2VsbCBQdWJsaXNoaW5nKTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+MzExPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjUwMTI4MDczPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+ODkzODA2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9InNlcmllcy1pZCIgdHlwZT0ibnVtYmVyIj44OTAwODQ8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iZGVwb3NpdC10aW1lc3RhbXAiIHR5cGU9Im51bWJlciI+MjAxMTA5MDcyMTM1PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMTExPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDIxLTAyLTIzVDIxOjU4OjM2WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDExLTA5LTA4VDIxOjU1OjU1WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjE4PC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxib29rIGJvb2tfdHlwZT0ibW9ub2dyYXBoIj4NCiAgICAgICAgICAgICAgPGJvb2tfc2VyaWVzX21ldGFkYXRhIGxhbmd1YWdlPSJlbiI+DQogICAgICAgICAgICAgICAgPHNlcmllc19tZXRhZGF0YT4NCiAgICAgICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgICAgIDx0aXRsZT5BbnRhcmN0aWMgUmVzZWFyY2ggU2VyaWVzPC90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICAgICAgPGlzc24+MDA2Ni00NjM0PC9pc3NuPg0KICAgICAgICAgICAgICAgICAgPGNvZGVuPkFOVFNBNDwvY29kZW4+DQogICAgICAgICAgICAgICAgPC9zZXJpZXNfbWV0YWRhdGE+DQogICAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iZmlyc3QiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPlJpY2hhcmQgRnJhbms8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPk1jR2lubmlzPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8L2NvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICA8dGl0bGVzPg0KICAgICAgICAgICAgICAgICAgPHRpdGxlPkJpb2dlb2dyYXBoeSBvZiBMYW50ZXJuZmlzaGVzIChNeWN0b3BoaWRhZSkgU291dGggb2YgMzDCsFM8L3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICAgIDx2b2x1bWU+MzU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICA8cHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICAgICAgICAgIDx5ZWFyPjE5ODI8L3llYXI+DQogICAgICAgICAgICAgICAgPC9wdWJsaWNhdGlvbl9kYXRlPg0KICAgICAgICAgICAgICAgIDxpc2JuPjAtODc1OTAtMTgxLTY8L2lzYm4+DQogICAgICAgICAgICAgICAgPHB1Ymxpc2hlcj4NCiAgICAgICAgICAgICAgICAgIDxwdWJsaXNoZXJfbmFtZT5BbWVyaWNhbiBHZW9waHlzaWNhbCBVbmlvbjwvcHVibGlzaGVyX25hbWU+DQogICAgICAgICAgICAgICAgICA8cHVibGlzaGVyX3BsYWNlPldhc2hpbmd0b24sIEQuIEMuPC9wdWJsaXNoZXJfcGxhY2U+DQogICAgICAgICAgICAgICAgPC9wdWJsaXNoZXI+DQogICAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDI5L0FSMDM1PC9kb2k+DQogICAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL2RvaS53aWxleS5jb20vMTAuMTAyOS9BUjAzNTwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgICA8Y29sbGVjdGlvbiBwcm9wZXJ0eT0iY3Jhd2xlci1iYXNlZCI+DQogICAgICAgICAgICAgICAgICAgIDxpdGVtIGNyYXdsZXI9ImlQYXJhZGlnbXMiPg0KICAgICAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vb25saW5lbGlicmFyeS53aWxleS5jb20vd29sMS9kb2kvMTAuMTAyOS9BUjAzNS9mdWxscGRmPC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgICAgICAgPC9pdGVtPg0KICAgICAgICAgICAgICAgICAgPC9jb2xsZWN0aW9uPg0KICAgICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uX2xpc3Q+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFkZGk3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBhbGFlb2dlb2dyLiBQYWxhZW9jbGltYXRvbC4gUGFsYWVvZWNvbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxhdGl0dWRpbmFsIGdyYWRpZW50cyBpbiB0ZXJ0aWFyeSBtb2wtbHVzY2FuIGZhdW5hcyBvZiB0aGUgUGFjaWZpYyBjb2FzdDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BZGRpY290dDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yODc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDE2LzAwMzEtMDE4Mig3MCk5MDEwMy0zPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphaGxzNzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+S2luZHMgYW5kIGFidW5kYW5jZSBvZiBmaXNoIGxhcnZhZSBpbiB0aGUgZWFzdGVybiB0cm9waWNhbCBQYWNpZmljLCBiYXNlZCBvbiBjb2xsZWN0aW9ucyBtYWRlIG9uIEVhc3Ryb3BhYyBJPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFobHN0cm9tPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YWxjbzkxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uLiBNYWcuIE5hdC4gSGlzdC4sIHNlci4gNjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TmF0dXJhbCBoaXN0b3J5IG5vdGVzIGZyb20gSC5NLiBJbmRpYW4gTWFyaW5lIFN1cnZleSBTdGVhbWVyIEludmVzdGlnYXRvci4gTm8uIDE2LiBPbiB0aGUgYmF0aHliaWFsIGZpc2hlcyBjb2xsZWN0ZWQgSW4gdGhlIEJheSBvZiBCZW5nYWwgZHVyaW5nIHRoZSBzZWFzb24gMTg4OS05MDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BbGNvY2s8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTk3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTA4MC8wMDIyMjkzOTAwODY5NDAyNzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YW5kcjY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gYW5kIGxpZmUgaGlzdG9yeSBvZiBDYWxhbm9pZGVzIGFjdXR1czwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BbmRyZXdzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphbmRyNTgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBLb21wbC4gQW50YXJrdC4gRWtzcGVkLiBBa2FkLiBOYXVrIFNTU1IsIEdpZHJvbC4gR2lkcm9rLWhpbS4gR2VvbC4gQmlvbC4gSXNzbGVkLiBEL0UvIE9iIDE5NTUtMTk1Njwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGlzdCBvZiBpY2h0aHlvbG9naWNhbCBzdGF0aW9ucyB3aXRoIHByZWxpbWluYXJ5IGNoYXJhY3Rlcml6YXRpb24gb2YgdGhlIGhhdWxzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFuZHJpYXNoZXY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTk5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphbmRyNjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBTb3YuIEFudGFya3QuIEVrc3BlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxpc3Qgb2YgaWNodGh5b2xvZ2ljYWwgc3RhdGlvbnMgd2l0aCBwcmVsaW1pbmFyeSBjaGFyYWN0ZXJpemF0aW9uIG9mIHRoZSBoYXVsczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5BbmRyaWFzaGV2PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIyNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTphbmRyNjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5JenYuIEFrYWQuIE5hdWsgU1NTUiBGYXVueSBNb3JlaTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmF0aHlwZWxhZ2ljIGZpc2hlZCBvZiB0aGUgQW50YXJjdGljLiAxLiBGYW1pbHkgTXljdG9waGlkYWU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QW5kcmlhc2hldjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMTY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+OTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmFuZ2U2OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJvbG4uIEluc3QuIEJpb2wuIE1hci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFsaW1lbnRhY2lvbiBkZSBsYXMgbWVybHV6YSBlbiBsYSByZWdpb24gZGVsIFRhbHVkIENvbnRpbmVudGFsIEFyZ2VudGlubywgZXBvY2EgaW50ZXJuYWwgKE1lcmx1Y2lpZGFlLCBNZXJsdWNpdXMgbWVybHVjaXVzIGh1YmJzaSk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QW5nZWxlc2N1PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFjazY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gTXVzLiBDb21wLiBab29sLiBIYXJ2Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIG1lc29wZWxhZ2ljIGZpc2hlcyBjb2xsZWN0ZWQgZHVyaW5nIGNydWlzZSAxNyBvZiB0aGUgUi9WIENoYWluIHdpdGggYSBtZXRob2Qgb2YgYW5hbHl6aW5nIGZhdW5hbCB0cmFuc2VjdHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFja3VzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEzOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNDU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFjazY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFyLiBCaW9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TWVzb3BlbGFnaWMgZmlzaGVzIGFuZCB0aGVybWFsIGZyb250cyBpbiB0aGUgd2VzdGVybiBTYXJnYXNzbyBTZWE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFja3VzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjg3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9CRjAwMzUzNDI3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWNrNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBNYXIuIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gb2YgbWVzb3BlbGFnaWMgZmlzaGVzIGluIHRoZSBlcXVhdG9yaWFsIGFuZCB3ZXN0ZXJuIE5vcnRoIEF0bGFudGljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJhY2t1czwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFrZTU0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBjaXJjdW1wb2xhciBjb250aW51aXR5IG9mIEFudGFyY3RpYyBwbGFua3RvbiBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJha2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIwMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiYWtlNTkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGlzdHJpYnV0aW9uIGFuZCBsaWZlIGhpc3Rvcnkgb2YgRXVwaGF1c2lpYSB0cmlhY2FudGhhIEhvbHQgYW5kIFRhdGVyc3RhbDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYWtlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMDk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFrZTY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBsYXRpdHVkaW5hbCBkaXN0cmlidXRpb24gb2YgRXVwaGF1c2lhIHNwZWNpZXMgaW4gdGhlIHN1cmZhY2Ugd2F0ZXJzIG9mIHRoZSBJbmRpYW4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzA5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJhbGU3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gYW5kIGVuZGVtaXNtIG9mIHNvbWUgQW50YXJjdGljIG1pY3JvcGxhbmt0b248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QW50YXJjdGljIGVjb2xvZ3k8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYWxlY2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPkk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmFybjI1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uLiBTLiBBZnIuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgbW9ub2dyYXBoIG9mIG1hcmluZSBmaXNoZXMgb2YgU291dGggQWZyaWNhLiAxPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJhcm5hcmQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjM1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJhcnM1OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IFNvdi4gQW50YXJrdC4gRWtzcGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGlzdCBvZiBpY2h0aHlvbG9naWNhbCBjb2xsZWN0aW9uczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CYXJzdWtvdjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zNzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+MTk2OSBQbGFua3RvbmljIEZvcmFtaW5pZmVyYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJlJzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazYzYSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlZvcC4gSWtodGlvbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5ldyBkYXRhIG9uIHRoZSBsYW50ZXJuZmlzaCBnZW5lcmEgRWxlY3Ryb25hIGFuZCBQcm90b215Y3RvcGh1bSAoUGlzY2VzLCBNeWN0b3BoaWRhZSkgb2YgdGhlIHNvdXRoZXJuIGhlbWlzcGhlcmU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVja2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazYzYiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRydWR5IEluc3QuIE9rZWFub2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Ob3J0aCBQYWNpZmljIHNwZWNpZXMgb2YgdGhlIGdlbnVzIFByb3RvbXljdG9waHVtIChNeWN0b3BoaWRhZSwgUGlzY2VzKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTY0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjYyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlY2s2NGEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBJbnN0LiBPa2Vhbm9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U2xlbmRlcnRhaWxlZCBsYW50ZXJuZmlzaGVzIChHZW5lcmEgTG93ZWluYSwgVGFybGV0b25iZWFuaWEsIEdvbmljaHRoeXMsIGFuZCBDZW50cm9icmFuY2h1cykgb2YgdGhlIFBhY2lmaWMgYW5kIEluZGlhbiBPY2VhbnMuIFN5c3RlbWF0aWNzIGFuZCBkaXN0cmlidXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVja2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjExPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlY2s2NGIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Pa2Vhbm9sb2dpeWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSB0ZW1wZXJhdGUtY29sZCB3YXRlciBteWN0b3BoaWQgY29tcGxleCAoTXljdG9waGlkYWUsIFBpc2Nlcyk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVja2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ2NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJ1ZHkgSW5zdC4gT2tlYW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxhbnRlcm5maXNoZXMgb2YgdGhlIGdlbnVzIEh5Z29waHVtLiBTeXN0ZW1hdGljcyBhbmQgZGlzdHJpYnV0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJlY2tlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZWNrNjdhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJ1ZHkgSW5zdC4gT2tlYW5vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxhbnRlcm5maXNoZXMgKEZhbWlseSBNeWN0b3BoaWRhZSkgZnJvbSB0aGUgUGV0ciBMZWJlZGV2IEF0bGFudGljIGV4cGVkaXRpb25zIDE5NjEtMTk2NDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZWNrZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVjazY3YiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxhbnRlcm5maXNoZXMgKEZhbWlseSBNeWN0b3BoaWRhZSk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVja2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE0NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVlYjM3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Wm9vbG9naWNhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QcmVsaW1pbmFyeSBsaXN0IG9mIEJlcm11ZGEgZGVlcHNlYSBmaXNoZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVlYmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTk3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJlZWI0MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlpvb2xvZ2ljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RWFzdGVybiBQYWNpZmljIEV4cGVkaXRpb24gb2YgdGhlIE5ldyBZb3JrIFpvb2xvZ2ljYWwgU29jaWV0eSBYWFhJSUkuIFBhY2lmaWMgTXljdG9waGlkYWUgKEZpc2hlcyk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVlYmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmVrbDY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmlvZ2VvZ3JhcGhpY2FsIGRpdmlzaW9uIG9mIHRoZSBwZWxhZ2lhbCBvZiB0aGUgUGFjaWZpYyBPY2VhbiAoaW4gc3VyZmFjZSBhbmQgaW50ZXJtZWRpYXRlIHdhdGVycyk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QmlvbG9neSBvZiB0aGUgUGFjaWZpYyBPY2Vhbjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJla2xlbWlzaGV2PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpiZXJyNjYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3VydmV5IG9mIHBlbGFnaWMgZmlzaGVzIG9mIHRoZSBDYWxpZm9ybmlhIEN1cnJlbnQgYXJlYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CZXJyeTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YmxhYzY0YSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNhaC4gT2NlYW5vZ3IuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Db250cmlidXRpb24gYSBsYSBjb25uYWlzc2FuY2UgZGVzIHBvaXNzb25zIGRlIGxhIGZhbWlsbGUgTXljdG9waGlkYWUgZGFucyBsYSBwYXJ0aWUgb3JpZW50YWxlIGR1IEdvbGZlIGRlIEd1aW5lc3MgKFRlbGVvc3RlaSwgQ2x1cGVpZm9ybWksIE15Y3RvcGhpZGFlKS4gMS4gTGVzIGdlbnJlcyBFbGVjdHJvbmEgR29vZGUgYW5kIEJlYW4gMTg5NSwgSHlnb3BodW0gQm9saW4gMTkzOTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CbGFjaGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpibGFjNjRiIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q2FoLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvbnRyaWJ1dGlvbiBhIGxhIGNvbm5haXNzYW5jZSBkZXMgcG9pc3NvbnMgZGUgbGEgZmFtaWxsZSBNeWN0b3BoaWRhZSBkYW5zIGxhIHBhcnRpZSBvcmllbnRhbGUgZHUgR29sZmUgZGUgR3VpbmVzcyAoVGVsZW9zdGVpLCBDbHVwZWlmb3JtaSwgTXljdG9waGlkYWUpLiAyLiBMZXMgZ2VucmVzIERpb2dlbmljaHRoeXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmxhY2hlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpibGFjNjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TWljcm9uZWt0b24gb2YgdGhlIGVhc3Rlcm4gdHJvcGljYWwgUGFjaWZpYyBPY2VhbjogRmFtaWx5IGNvbXBvc2l0aW9uLCBkaXN0cmlidXRpb24sIGF2b2lkYW5jZSwgYW5kIHJlbGF0aW9uIHRvIHR1bmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmxhY2tidXJuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjcxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym9pczY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TWFqb3IgY3VycmVudHMgaW4gdGhlIE5vcnRoIGFuZCBTb3V0aCBBdGxhbnRpYyBPY2VhbnMgYmV0d2VlbiA2NMKwTiBhbmQgNjDCsFM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm9pc3ZlcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym9saTM5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3RhbmZvcmQgSWNodGh5b2wuIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIHJldmlldyBvZiB0aGUgbXljdG9waGlkIGZpc2hlcyBvZiB0aGUgUGFjaWZpYyBjb2FzdCBvZiB0aGUgVW5pdGVkIFN0YXRlcyBhbmQgb2YgbG93ZXIgQ2FsaWZvcm5pYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Cb2xpbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJvbGk0NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlN0YW5mb3JkIEljaHRoeW9sLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyBmcm9tIEludmVzdGlnYXRvciBzdGF0aW9uIDY3MCwgSW5kaWFuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvbGluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjg5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym9saTU5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Tm9ydGggQXRsYW50aWMgRGVlcC1TZWEgRXhwZWRpdGlvbiwgMTkxMDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW5pb21pLiBNeWN0b3BoaWRhZS4gUmVwb3J0IG9mIHRoZSBTY2llbnRpZmljIHJlc3VsdHMgb2YgTWljaGFlbCBTYXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvbGluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJvbHQ2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkh5ZHJvYmlvbG9naWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkhpZHJvbG9naWEgZGUgbGFzIGFndWFzIHN1ZmVyZmljaWFsZXMgZW4gbGEgcGFydGUgb2NjaWRlbnRhbCBkZWwgQXRsYW50aWMgc3VyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvbHRvdnNrb3k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTk5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjY8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpib25hNDAiPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPkljb25vZ3JhZmZpYSBkZWxsYSBmYXVuYSBpdGFsaWNhIHBlciBsYSBxdWF0cmUgY2xhc3NpIGRlZ2xpIGFuYW1hbGkgdmVydGVicmF0aTwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJvbmFwYXJ0ZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4NDA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym90bjY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SW5mLiBCdWxsLiBTb3YuIEFudGFya3QuIEVrc3BlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBsaW1pdHMgb2YgdGhlIFdlc3QgV2luZCBEcmlmdDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Cb3RuaWtvdjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40ODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Ym91bDAyIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGlzY2VzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlJlcG9ydCBvbiB0aGUgY29sbGVjdGlvbnMgb2YgbmF0dXJhbCBoaXN0b3J5IG1hZGUgaW4gQW50YXJjdGljIHJlZ2lvbnMgZHVyaW5nIHRoZSB2b3lhZ2Ugb2YgdGhlIFNvdXRoZXJuIENyb3NzPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Qm91bGVuZ2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTAyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJyYXUwNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlpvb2wuIEFuemVpZ2VyPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaWUgR2F0dHVuZyBNeWN0b3BodW08L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnJhdWVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM3NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTA8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkwNDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpicmF1MDYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5WYWxkaXZpYSAxODk44oCTMTg5OTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGllIFRpZWZzZWUgRmlzY2hlLiAxLiBTeXN0ZW1hdGlzY2hlciBUZWlsLiBXaXNzLiBFcmdlYmVuLiBEdC4gVGllZnNlZSBFeHBlZDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CcmF1ZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmJyaWc2NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlN5c3RlbS4gWm9vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9jZWFuaWMgSXNsYW5kcywgZW5kZW1pc20sIGFuZCBtYXJpbmUgcGFsZW90ZW1wZXJhdHVyZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnJpZ2dzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMjQxMTYzNDwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YnJpZzcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3lzdC4gWm9vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgZmF1bmFsIGhpc3Rvcnkgb2YgdGhlIE5vcnRoIEF0bGFudGljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkJyaWdnczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMjQxMjAyNTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YnJpbjYyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gU2NyaXBwcyBJbnN0bi4gT2NlYW5vZ3IuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIG9mIFBhY2lmaWMgRXVwaGF1c2lpZHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnJpbnRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4yPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6YnJvZDY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+T2NlYW5vbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIHRheG9ub215IG9mIG1hcmluZSBwbGFua3RvbiBvcmdhbmlzbXMgYW5kIG9jZWFub2dyYXBoeTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Ccm9kc2tleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpidXJsNjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OLlouIERlcC4gU2NpLiBJbmQuIFJlcy4gQnVsbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkh5ZHJvbG9neSBvZiBjaXJjdW1wb2xhciB3YXRlcnMgc291dGggb2YgTmV3IFplYWxhbmQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnVybGluZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE0Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpidXNzNjUiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdHVkaWVzIG9mIHRoZSBtaWR3YXRlciBmaXNoZXMgb2YgdGhlIFBlcnUtQ2hpbGUgVHJlbmNoPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkFudGFyY3RpYyBSZXMuIFNlci48L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CdXNzaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE4NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNoYXA0NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNvcGVpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBuZXcgbmFtZSBmb3IgTXljdG9waHVtIG9jdWxldW0gQ2hhcG1hbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5DaGFwbWFuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8xNDM4MjUwPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpjb2NjMjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5HaW9ybi4gU2NpLiBMZXR0LiBBcnRpIFNpY2lsaWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN1IGRpIGFsY3VuaSBwZXNjaSBNYXJpIGRpIE1lc3NpbmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Q29jY288L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTM4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI2PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODI5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNvY2MzOCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk51b3ZpLiBBbm4uIFNjaS4gTmF0LiBCb2xnbmE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN1IGRpIGFsY3VuaSBTYWxtb25pZGkgZGVsIE1hciBkaSBNZXNzaW5hLCBsZXR0ZXJhIGFsIEMuIEQuIEMuIEwuIEJvbmFwYXJ0ZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Db2NjbzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTgzODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpjb2hlNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBDYWxpZi4gQWNhZC4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SG93IG1hbnkgcmVjZW50IGZpc2hlcyBhcmUgdGhlcmU/IGZyaSBGZXN0c2NocmlmdCBmb3IgR2VvcmdlIFNwcmFndWUgTXllcnMgaW4gaG9ub3Igb2YgaGlzIHNpeHR5LWZpZnRoIGJpcnRoZGF5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkNvaGVuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM0MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNvbGU3MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk5hdC4gSGlzLiBNdXMuIExvcyBBbmdlbGVzLCBDb3VudHkgQ29udHIuIFNjaS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRvcnNhZGVuYSB5YWNxdWluYWUsIGEgbmV3IGdlbnVzIGFuZCBzcGVjaWVzIG9mIG15Y3RvcGhpZCBmaXNoIGZyb20gdGhlIGVhc3Rlcm4gTm9ydGggUGFjaWZpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Db2xlbWFuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjI1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmNyYWQ3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNjaS4gUmVzLiBTRSBQYWNpZi4gRXhwZWQuIEFudG9uIEJydXVuIFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk1pZHdhdGVyIEZpc2hlcyBmcm9tIHRoZSBlYXN0ZXJuIHNvdXRoIFBhY2lmaWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Q3JhZGRvY2s8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRhbmk2NyI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkJvbnkgZmlzaGVzIG9mIHRoZSBNYWlrb3AgZGVwb3NpdHMgb2YgdGhlIENhdWNhc3VzLiBUcmFuc2xhdGVkIGZyb20gUnVzc2lhbiwgY2F0YWxvZ3VlIDE4ODU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGFuaWxjaGVua288L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGF2aTU1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gb2YgU2FnaXR0YSBnYXplbGxlIFJpdHRlci1aYWhvbmV5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRhdmlkPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIzNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkYXZpNTgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiB0aGUgQ2hhZXRvZ25hdGhhIG9mIHRoZSBTb3V0aGVybiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EYXZpZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMDE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGF2aTYzIj4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5Tb21lIGFzcGVjdHMgb2Ygc3BlY2lhdGlvbiBvbiBDaGFldG9nbmF0aGEuIFB1YmwuPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGF2aWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGF2eTcyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RmlzaC4gQnVsbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgcmV2aWV3IG9mIHRoZSBsYW50ZXJuZmlzaCBnZW51cyBUYWFuLWluZ2ljaHRoeXMgKEZhbWlseSBNeWN0b3BoaWRhZSkgd2l0aCB0aGUgZGVzY3JpcHRpb24gb2YgYSBuZXcgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EYXZ5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjcwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGVhYzMzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgZ2VuZXJhbCBhY2NvdW50IG9mIHRoZSBoeWRyb2xvZ3kgb2YgdGhlIFNvdXRoIEF0bGFudGljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRlYWNvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNzE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Nzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkZWFjMzciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGh5ZHJvbG9neSBvZiB0aGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGVhY29uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+TDU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZGVhYzYzIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBTZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EZWFjb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mjg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkZWZhNjEiPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlBoeXNpY2FsIG9lYW5vZ3JhcGh5PC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGVmYW50PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkZXZlNjciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OLlouIEouIFNjaS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk94eWdlbiBpc290b3BlIHBhbGVvdGVtcGVyYXR1cmUgbWVhc3VyZW1lbnRzIG9uIE5ldyBaZWFsYW5kIFRlcnRpYXJ5IGZvc3NpbHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGV2ZXJlYXV4PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjk4NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRld2k3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBjaGFyYWN0ZXIgb2YgdGhlIG1pZHdhdGVyIGZpc2ggZmF1bmEgb2YgdGhlIFJvc3MgU2VhLCBBbnRhcmN0aWNhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkRld2l0dDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMDU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmRld2k2MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlN0YW5mb3JkIEljaHRoeW9sLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzIG9mIHRoZSBTdGFuZm9yZCBBbnRhcmN0aWMgYmlvbG9naWNhbCByZXNlYXJjaCBwcm9ncmFtIDE5NTgtMTk1OTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EZXdpdHQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTYyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpkaWV0NjMiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkdlbmVyYWwgb2NlYW5vZ3JhcGh5PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RGlldHJpY2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZWJlbDYyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGFuYSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NZWxhbXBoYWlkYWUuIEkuIFN5c3RlbWF0aWNzIGFuZCB6b29nZW9ncmFwaHkgb2YgdGhlIHNwZWNpZXMgaW4gdGhlIGJhdGh5cGVsYWdpYyBmaXNoIGdlbnVzIE1lbGFtcGhhZXMgR8O8bnRoZXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RWJlbGluZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmViZWw2NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2MuIEludC4gQ29uZi4sIFRyb3BpY2FsIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Wm9vZ2VvZ3JhcGh5IG9mIHRyb3BpY2FsIGRlZXAgc2VhIGFuaW1hbHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RWJlbGluZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41OTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTplaWdlODkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BbWVyLiBTY2kuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Ob3RlcyBmcm9tIHRoZSBTYW4gRGllZ28gQmlvbG9naWNhbCBMYWJvcmF0b3J5LiBUaGUgZmlzaGVzIG9mIENvcnRleiBCYW5rcy4gV2VzdDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5FaWdlbm1hbm48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTIzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ4PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4ODk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZWlnZTkwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gQ2FsaWYuIEFjYWQuIFNjaS4sIFNlci4gMjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QWRkaXRpb24gdG8gdGhlIGZhdW5hIG9mIFNhbiBEaWVnbzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5FaWdlbm1hbm48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODkwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmVrbWE1MyI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+Wm9vZ2VvZ3JhcGh5IG9mIHRoZSBzZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Fa21hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTplbC1zNzAiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QaHl0b3BsYW5rdG9uIHByb2R1Y3Rpb24gb2YgdGhlIFNvdXRoIFBhY2lmaWMgYW5kIHRoZSBQYWNpZmljIHNlY3RvciBvZiB0aGUgQW50YXJjdGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkVsLVNheWVkPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE5NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZXN0ZTQ3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gTXVzLiBIaXN0LiBOYXQuIFBhcmlzLiwgU2VyLiAyPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5SZXZpc2lvbiBkZXMgdHlwZXMgbXljdG9waGlkZXMgKFNjb3BlLWxpZGVzKSBkdSBNdXNldW08L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RXN0ZXZlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZmVsbDY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q3JldGFjZW91cyBhbmQgdGVydGlhcnkgc3VyZmFjZSBjdXJyZW50cyBvZiB0aGUgb2NlYW5zPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkFubnVhbCBSZXZpZXc8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GZWxsPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMxNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZpdGM2OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNvbnRyaWIuIFNjaS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkZvc3NpbCBsYW50ZXJuZmlzaCBvdG9saXRocyBvZiBDYWxpZm9ybmlhLCB3aXRoIG5vdGVzIG9uIGZvc3NpbCBteWN0b3BoaWRhZSBvZiBOb3J0aCBBbWVyaWNhLiBMb3MgQW5nZWxlcyBDb3VudHkgTXVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZpdGNoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTczPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZpdGM2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkouIEZpc2guIFJlcy4gQmQuIENhbi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkZpc2ggb3RvbGl0aHMgaW4gY2V0YWNlYW4gc3RvbWFjaHMgYW5kIHRoZWlyIGltcG9ydGFuY2UgaW4gaW50ZXJwcmV0aW5nIGZlZWRpbmcgaGFiaXRzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZpdGNoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI1NjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEzOS9mNjgtMjI3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmbGVtNjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UdWF0YXJhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5OZXcgWmVhbGFuZCBiaW9nZW9ncmFwaHksIGEgcGFsZW9udG9sb2dpc3QncyBhcHByb2FjaDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GbGVtaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjUzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZsZW02NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2MuIFUuUy4gTmF0bmwuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRheG9ub215LCBkaXN0cmlidXRpb24sIGFuZCBwb2x5bW9ycGhpc20gaW4gdGhlIExhYmlkb2NlcmEgam9sbGFlIGdyb3VwIHdpdGggcmVtYXJrcyBvbiBldm9sdXRpb24gd2l0aGluIHRoZSBncm91cCAoQ29wZXBvZGE6IENhbGFub2lkZWEpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZsZW1pbmdlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEyMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzU2NzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjU0Nzkvc2kuMDA5NjM4MDEuMTIwLTM1NjcuMTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zm93bDAxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gQWNhZC4gTmF0LiBTY2kuIFBoaSBsYWQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NeWN0b3BodW0gcGhlbmdvZGVzIGluIHRoZSBOb3J0aCBBdGxhbnRpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Gb3dsZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NjIwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjUzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTAxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmZvd2wyNSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFtLiBNdXMuIE5vdml0Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TmV3IHRheG9ub21pYyBuYW1lcyBvZiBXZXN0IEFmcmljYW4gbWFyaW5lIGZpc2hlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Gb3dsZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zm94dDU2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBkaXN0cmlidXRpb24gb2YgdGhlIHN0YW5kaW5nIGNyb3Agb2Ygem9vcGxhbmt0b24gaW4gdGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZveHRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xOTE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Zm94dDYxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNhbHBhIGZ1c2lmb3JtaXMgYW5kIHJlbGF0ZWQgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Gb3h0b248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmb3h0NjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBhbmQgbGlmZSBoaXN0b3J5IG9mIFNhbHBhIHRob21wc29uaSBGb3h0b24gd2l0aCBvYnNlcnZhdGlvbnMgb24gYSByZWxhdGVkIHNwZWNpZXMsIFNhbHBhIGdlcmxhY2hlaSBGb3h0b248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Rm94dG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZnJhazcyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TmF0dXJlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmZsdWVuY2Ugb2YgY29udGluZW50YWwgcG9zaXRpb25zIG9uIGVhcmx5IFRlcnRpYXJ5IGNsaW1hdGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZyYWtlczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNDA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAzOC8yNDAwOTdhMDwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6ZnJhczMxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uLiBNYWcuIE5hdC4gSGlzdC4sIFNlci4gMTA8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNvbWUgaW50ZXJlc3RpbmcgV2VzdCBBZnJpY2FuIGZpc2hlcywgd2l0aCBkZXNjcmlwdGlvbnMgb2YgYSBuZXcgZ2VudXMgYW5kIHR3byBuZXcgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GcmFzZXItQnJ1bm5lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMjIyOTMzMTA4NjczMzg2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmcmFzNDkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBab29sLiBTb2MuIExvbmRvbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBjbGFzc2lmaWNhdGlvbiBvZiB0aGUgZmlzaGVzIG9mIHRoZSBGYW1pbHkgTXljdG9waGlkYWU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RnJhc2VyLUJydW5uZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTAxMDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmcmllNjQiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QaHlzaWNhbCBvY2Vhbm9ncmFwaGljIGRhdGEgb2J0YWluZWQgZHVyaW5nIEVsdGFuaW4gY3J1aXNlcyA0LCA1IGFuZCA2IGluIHRoZSBEcmFrZSBQYXNzYWdlLCBhbG9uZyB0aGUgQ2hpbGVhbiBjb2FzdCBhbmQgaW4gdGhlIEJyYW5zZmllbGQgc3RyYWl0LCBKdW5lLCAxOTYyLUphbnVyeSwgMTk2MzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GcmllZG1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpmcm9zNjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBTY3JpcHBzIEluc3RuLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgcmV2aXNpb24gb2YgdGhlIEdlbnVzIENsYXVzb2NhbGFudXMgKENvcGVwb2RhOiBDYWxhbm9pZGVhKSB3aXRoIHJlbWFya3Mgb24gZGlzdHJpYnV0aW9uIHBhdHRlcm5zIGluIGRpYWdub3N0aWMgY2hhcmFjdGVyczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Gcm9zdDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdhcm05OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk1lbS4gTXVzLiBDb21wLiBab29sLiBIYXJ2Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVwb3J0cyBvZiBhbiBleHBsb3JhdGlvbiBvZmYgdGhlIHdlc3QgY29hc3RzIG9mIE1leGljbywgQ2VudHJhbCBhbmQgU291dGggQW1lcmljYSwgYW5kIG9mZiB0aGUgR2FsYXBhZ29zIElzbGFuZHMsIGluIGNoYXJnZSBvZiBBbGV4YW5kZXIgQWdhc3NpeiwgYnkgdGhlIFUuUy4gRmlzaCBDb21taXNzaW9uIFN0ZWFtZXIgQWxiYXRyb3NzLCBkdXJpbmcgMTg5MSwgTGlldXQuIENvbW1hbmRlciBaLiBMLiBUYW5uZXIgVS4gUy4gTi4sIGNvbW1hbmRpbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HYXJtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg5OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnYXJuNjdhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBOLlouIE9jZWFub2dyLiBJbnN0Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SHlkcm9sb2d5IG9mIHRoZSBzb3V0aHdlc3QgVGFzbWFuIFNlYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HYXJuZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnYXJuNjdiIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBOLlouIE9jZWFub2dyLiBJbnN0Ljwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SHlkcm9sb2d5IG9mIHRoZSBzb3V0aGVybiBIaWt1cmFuZ2kgdHJlbmNoIHJlZ2lvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HYXJuZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnYXR0MDMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Bbm5hbGkgQWdyaWMuIFJvbWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlJpY2hlcmNoZSBzdWdsaSBvdmdhd2kgbHVtaW5vc2kgZGVpIHBlc2NpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdhdHRpPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjMzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTAzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdpYmI2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNvbnRyaWIuIFNjaS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBob3RvbmVjdGVzIG11bmlmaWN1cywgYSBuZXcgc3BlY2llcyBvZiBtZWxhbm9zdG9tYXRpZCBmaXNoIGZyb20gdGhlIHNvdXRoIFBhY2lmaWMgU3VidHJvcGljYWwgQ29udmVyZ2VuY2UsIHdpdGggcmVtYXJrcyBvbiB0aGUgY29udmVyZ2VuY2UgRmF1bmEuIExvcyBBbmdlbGVzIENvdW50eSBNdXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2liYnM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNDk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lsYjkxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gVS5TLiBOYXRuLiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QcmVsaW1pbmFyeSByZXBvcnQgb24gdGhlIGZpc2hlcyBjb2xsZWN0ZWQgYnkgdGhlIHN0ZWFtZXIgQWxiYXRyb3NzIG9uIHRoZSBQYWNpZmljIGNvYXN0IG9mIE5vcnRoIEFtZXJpY2EgZHVyaW5nIHRoZSB5ZWFyIDE4ODk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2lsYmVydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg5MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC41NDc5L3NpLjAwOTYzODAxLjEzLTc5Ny40OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lsYjA1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gVS5TLiBGaXNoLiBDb21tLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRlZXAgc2VhIGZpc2hlcyBvZiB0aGUgSGF3YWlpYW4gSXNsYW5kczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HaWxiZXJ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU3NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdpbGIxMSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGwuIEFtLiBNdXMuIE5hdC4gSGlzdC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5vdGVzIG9uIGxhbnRlcm5maXNoZXMgZnJvbSBTb3V0aGVybiBTZWFzLCBjb2xsZWN0ZWQgYnkgSi4gVC4gTmljaG9scyBpbiAxOTA2PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpbGJlcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lsYjEzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBDYXJuZWcuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBsYW50ZXJuZmlzaGVzIG9mIEphcGFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpbGJlcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Njc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnaWxiOTciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Qcm9jLiBVLlMuIE5hdGwuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlJlcG9ydCBvbiB0aGUgZmlzaGVzIGRyZWRnZWQgaW4gZGVlcCB3YXRlciBuZWFyIHRoZSBIYXdhaWlhbiBJc2xhbmRzLCB3aXRoIGRlc2NyaXB0aW9ucyBhbmQgZmlndXJlcyBvZiB0d2VudHkgdGhyZWUgbmV3IHNwZWNpZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2lsYmVydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40MDM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNTQ3OS9zaS4wMDk2MzgwMS4xOS0xMTE0LjQwMzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z2lsYzA0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFyLiBJbnZlc3QuIFMuIEFmci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNvdXRoIEFmcmljYW4gZmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpbGNocmlzdDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdpc3Q1MCI+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+R29uaWNodGh5cywgZWluIGZpc2NoIGF1cyBkZXIgQmFpIHZvbiBNYWRlaXJhIElzaXM8L3Nlcmllc190aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HaXN0ZWw8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NzE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTg1MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg1MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnb29kOTYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TcGVjLiBCdWxsLiBVLlMuIE5hdG4uIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9jZWFuaWMgaWNodGh5b2xvZ3k8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R29vZGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODk2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omdvb2Q2OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGwuIEJyLiBNdXMuIE5hdC4gSGlzdC4gR2VvbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSByZWxhdGlvbnNoaXBzIG9mIGNlcnRhaW4gVXBwZXIgQ3JldGFjZW91cyB0ZWxlY29zdHMgd2l0aCBzcGVjaWFsIHJlZmVyZW5jZSB0byB0aGUgTXljdG9waG9pZHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R29vZHk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdvcmQiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlN0cnVjdHVyZSBvZiBhbnRhcmN0aWMgd2F0ZXJzIGJldHdlZW4gMjDCsFcgYW5kIDE3MMKwVzwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdvcmRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z29yZDcxYSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9jZWFub2dyYXBoeSBvZiBhbnRhcmN0aWMgd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkFudGFyY3RpYyBSZXMuIFNlci48L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hb3Jkb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTY5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmdvcmQ3MWIiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbnRhcmN0aWMgcG9sYXIgZnJvbnQgem9uZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BbnRhcmN0aWMgUmVzLiBTZXIuPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R29yZG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIwNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpnb3JkNzAiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkNpcmN1bXBvbGFyIGNoYXJhY3RlcmlzdGljcyBvZiBBbnRhcnRpYyB3YXRlcnM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hb3Jkb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6Z3JhbjY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q2FoLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvcmlvbGlzIENyb2lzaWVyZSBBbGl6ZS4gSW5kaXZpZHVhbGl6YXRpb24gZGUgcGx1c2llcnMgaWNodHlvZmF1bmVzIGxlIGxvbmcgZGUgbCdlcXVhdGVyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdyYW5kcGVycmluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpndWVuMzYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSByZXBvcnQgb24gb2NlYW5vZ3JhcGhpY2FsIGludmVzdGlnYXRpb25zIGluIFBlcnUgQ29hc3RhbCBDdXJyZW50PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkd1ZW50aGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEwNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpndW50NjQiPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPkNhdGFsb2d1ZSBvZiB0aGUgZmlzaGVzIGluIHRoZSBCcml0aXNoIE11c2V1bTwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkfDvG50aGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg2NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpndW50NzMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBNdXMuIEdvZGVmZnJveTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+WndlaXRlciBpY2h0aHlvbG9naXNjaGVyIEJlaXRyYWcgbmFjaCBFeGVtcGxhcmVuIGF1cyBkZW0gTXVzZXVtIEdvZGVmZnJveTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hw7xudGhlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNTY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NDwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODczPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1bnQ3NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubi4gTWFnLiBOYXQuIEhpc3QuLCBTZXIuIDQ8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlJlbWFya3Mgb24gZmlzaGVzIHdpdGggZGVzY3JpcHRpb25zIG9mIG5ldyBzcGVjaWVzIGluIHRoZSBCcml0aXNoIE11c2V1bSwgY2hpZWZseSBmcm9tIHNvdXRoZXJuIHNlYXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R8O8bnRoZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mzg5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODc2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAyMjI5Mzc2MDg2ODE5NzU8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omd1bnQ3OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubi4gTWFnLiBOYXQuIEhpc3QuLCBTZXIuIDU8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlByZWxpbWluYXJ5IG5vdGljZXMgb2YgZGVlcC1zZWEgZmlzaGVzIGNvbGxlY3RlZCBkdXJpbmcgdGhlIHZveWFnZSBvZiB0aGUgSC5NLlMuIENoYWxsZW5nZXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R8O8bnRoZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTc5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjg8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg3ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMjIyOTM3ODA4NjgyNDA2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpndW50ODciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DaGFsbGVuZ2VyIFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlJlcG9ydCBvbiB0aGUgZGVlcC1zZWEgZmlzaGVzIGNvbGxlY3RlZCBieSBILk0uUy4gQ2hhbGxlbmdlciBkdXJpbmcgdGhlIHllYXJzIDE4NzMtMTg3NjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Hw7xudGhlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT41NzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODg3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhhbW82NSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRlZXAgU2VhIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBFYXN0IEF1c3RyYWxpYW4gQ3VycmVudCwgMTk2MC0xOTY0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhhbW9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjg5OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoYW1vNzAiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPldlc3Rlcm4gYm91bmRhcnkgY3VycmVudHMsIFNjaWVudGlmaWMgRXhwbG9yYXRpb24gb2YgdGhlIFNvdXRoIFBhY2lmaWM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IYW1vbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoYXJkNTYiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBvcGVuIHNlYTogSXRzIG5hdHVyYWwgaGlzdG9yeS4gMS4gVGhlIHdvcmxkIG9mIHBsYW5rdG9uPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFyZHk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGFyZDM1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBsYW5rdG9uIG9mIHRoZSBTb3V0aCBHZW9yZ2lhIHdoYWxpbmcgZ3JvdW5kcyBhbmQgYWRqYWNlbnQgd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhhcmR5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+SUk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MzU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGFydDQyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBoeXRvcGxhbmt0b24gcGVyaW9kaWNpdHkgaW4gQW50YXJjdGljIHN1cmZhY2Ugd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhhcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTQyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omhhc2w2OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkh2YWxyYWQuIFNrci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFuIGFuYWx5c2lzIG9mIHRoZSBwaHl0b3BsYW5rdG9uIG9mIHRoZSBQYWNpZmljIFNvdXRoZXJuIE9jZWFuOiBBYnVuZGFuY2UsIGNvbXBvc2l0aW9uLCBhbmQgZGlzdHJpYnV0aW9uIGR1cmluZyB0aGUgQnJhdGVnZyBFeHBlZGl0aW9uLCAxOTQ3LTE5NDg8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFzbGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpoYXlzNjgiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DbGltYXRpYyByZWNvcmQgb2YgbGF0ZSBDZW5vem9pYyBBbnRhcmN0aWMgT2NlYW4gc2VkaW1lbnRzIHJlbGF0ZWQgdG8gdGhlIHJlY29yZCBvZiB3b3JsZCBjbGltYXRlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlBhbGVvY29sb2d5IG9mIEFmcmljYSBhbmQgb2YgdGhlIFN1cnJvdW5kaW5nIElzbGFuZHMgYW5kIG9mIEFudGFyY3RpY2E8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IYXlzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEzOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhheXM2OSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkdlb2wuIFNvYy4gQW0uIEJ1bGwuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QbGlvY2VuZS1QbGVpc3RvY2VuZSBzZWRpbWVudHMgb2YgdGhlIGVxdWF0b3JpYWwgUGFjaWZpYzogVGhlaXIgcGFsZW9tYWduZXRpYywgYmlvc3RyYXRpZ3JhcGhpYywgYW5kIGNsaW1hdGljIHJlY29yZDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IYXlzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE0ODE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEzMC8wMDE2LTc2MDYoMTk2OSk4MFsxNDgxOlBTT1RFUF0yLjAuQ087MjwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aGVhdDY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Ti5aLiBKLiBNYXIuIEZyZXNod2F0ZXIgUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+R2Vvc3Ryb3BoaWMgY3VycmVudHMgZGVyaXZlZCBmcm9tIG9jZWFuaWMgZGVuc2l0eSBtZWFzdXJlbWVudHMgbm9ydGggYW5kIHNvdXRoIG9mIHRoZSBTdWJ0cm9waWNhbCBDb252ZXJnZW5jZSBlYXN0IG9mIE5ldyBaZWFsYW5kPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhlYXRoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY1OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTA4MC8wMDI4ODMzMC4xOTY4Ljk1MTUyNjM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmhlcmQ2NiI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+U291dGhlcm4gT2NlYW4uIEVuY3ljbG9wYWVkaWEgb2YgT2NlYW5vZ3JhcGh5PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGVyZG1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpodWJiNjQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5ab29sLiBNZWRlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBhcnZpbHV4LCBhIG5ldyBnZW51cyBvZiBteWN0b3BoaWQgZmlzaGVzIGZyb20gdGhlIG5vcnRoZWFzdGVybiBQYWNpZmljLCB3aXRoIHR3byBuZXcgc3BlY2llczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IdWJiczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40NDU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aHVybDY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BbXBoaXBvZGEgSHlwZXJpaWRlYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkh1cmxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6aXNhYTUyIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SXNhYWNzLUtpZGQgbWlkd2F0ZXIgdHJhd2w8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SXNhYWNzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTUyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmphY282NiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBoeXNpY2FsIGFuZCBjaGVtaWNhbCBvY2Vhbm9ncmFwaGljIG9ic2VydmF0aW9ucyBpbiB0aGUgU291dGhlcm4gT2NlYW5zLCBVLlMuLU4uUy4gRWx0YW5pbiBjcnVpc2VzIDE2LTIxPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkphY29iczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpqYWNvNjciPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QaHlzaWNhbCBhbmQgY2hlbWljYWwgb2NlYW5vZ3JhcGhpYyBvYnNlcnZhdGlvbnMgaW4gdGhlIFNvdXRoZXJuIE9jZWFucywgVS5TLi1OLlMuIEVsdGFuaW4gY3J1aXNlcyAyMi0yNzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5KYWNvYnM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6am9objM2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBzb3V0aGVybiBzcGVjaWVzIG9mIHRoZSBnZW51cyBFdXBoYXVzaWE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Sm9objwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MzY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6am9objkwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvYy4gWm9vbC4gU29jLiBMb25kb248L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9uIHNvbWUgbmV3IHNwZWNpZXMgb2YgZmlzaCBmcm9tIE1hZGVpcmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Sm9obnNvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40NTI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4OTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6am9objYzIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmlvbG9naWNhbCBzcGVjaWVzLCB3YXRlci1tYXNzZXMgYW5kIGN1cnJlbnRzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBTZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Kb2huc29uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM4MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmthbmU2NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZGlzdHJpYnV0aW9uIG9mIFBhcmF0aGVtaXN0byBnYXVkaS1jaGF1ZGRpIChHdWVyLikgd2l0aCBvYnNlcnZhdGlvbnMgb24gaXRzIGxpZmUgaGlzdG9yeSBpbiB0aGUgMMKwIHRvIDIwwrBFIHNlY3RvciBvZiB0aGUgU291dGhlcm4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2FuZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a2FzaDY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJ1ZHkgQWthZC4gTmF1ayBTU1NSLCBJbnN0LiBPa2Vhbm9sPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PbiB0aGUgcXVhbnRpdGF0aXZlIGRpc3RyaWJ1dGlvbiBvZiB0aGUgbGFudGVybmZpc2hlcyAoTXljdG9waGlkYWUgc2Vuc3VsYXRvKSBpbiB0aGUgQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2FzaGtpbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+ODQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a2VtcDI5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGlzY292ZXJ5IFJlcC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBEaXNjb3ZlcnkgaW52ZXN0aWdhdGlvbnM6IE9iamVjdHMsIGVxdWlwbWVudCwgYW5kIG1ldGhvZHMsIDI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2VtcDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyOTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprZW5uNzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EZWVwIFNlYSBSZXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QbGVpc3RvY2VuZSBwYWxlb2NsaW1hdGVzIGFuZCBmb3JhbWluaWZlcmFsIGJpb3N0cmF0aWdyYXBoeSBpbiBzdWJhbnRhcmN0aWMgZGVlcCBzZWEgY29yZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2VubmV0dDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprZW50NzEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5HZW9sLiBTb2MuIEFtLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q2xpbWF0ZSBjaGFuZ2UgaW4gdGhlIE5vcnRoIFBhY2lmaWMgdXNpbmcgaWNlLXJhZnRlZCBkZXRyaXR1cyBhcyBjbGltYXRlIGluZGljYXRvcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW50PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI3NDE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+ODI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTMwLzAwMTYtNzYwNigxOTcxKTgyWzI3NDE6Q0NJVE5QXTIuMC5DTzsyPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprbm94NjMiPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlByb2JsZW1zIG9mIHNwZWNpYXRpb24gaW4gaW50ZXJ0aWRhbCBhbmltYWxzIHdpdGggc3BlY2lhbCByZWZlcmVuY2UgdG8gTmV3IFplYWxhbmQgc2hvcmVzLiBQdWJsLjwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktub3g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a25veDcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmlvbG9naWNhbCBvY2Vhbm9ncmFwaHkgb2YgdGhlIFNvdXRoIFBhY2lmaWMsIFNjaWVudGlmaWMgRXhwbG9yYXRpb24gb2YgdGhlIFNvdXRoIFBhY2lmaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S25veDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmtvYmw3MCI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlBsYW5rdG9uIHByaW1hcnkgcHJvZHVjdGlvbiBvZiB0aGUgd29ybGQgb2NlYW4sIFNjaWVudGlmaWMgRXhwbG9yYXRpb24gb2YgdGhlIFNvdXRoIFBhY2lmaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S29ibGVudHotTWlzaGtlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE4MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a29ydDYyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2NpZW50LiBBbS48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBBbnRhcmN0aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S29ydDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjA3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAzOC9zY2llbnRpZmljYW1lcmljYW4wOTYyLTExMzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a29ydDY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SW5mLiBCeXVsbC4gU2IuIEFudGFya3QuIEVrc3BlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkJvdW5kYXJpZXMgb2YgdGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktvcnQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6a3JlZjU4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RHQuIEFudGFya3QuIEV4cGVkLiAxOTM4LTM5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbnRhcmt0aXNjaGUgRmlzY2hlIHVuZCBkZW4gUGxhbmt0b25mYW5nZW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3JlZmZ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI0OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OmtyZWY3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJlci4gRHQuIFdpc3MuIEtvbW1uLiBNZWVyZXNmb3JzY2guPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5adXIgU3lzdGVtYXRpY2sgdW5kIHZlcmJlaXR1bmcgZGVyIEdhdHR1bmcgTGFtcGFkZW5hIEdvb2RlIGFuZCBCZWFuLCAxODk2IChPc3RlaWNodGh5ZXMsIE15Y3RvcGhvaWRlaSwgTXljdG9waGlkYWUpIGluIEF0bGFudGlzY2hlbiBPY2VhbiwgbWl0IEJlc2NocmVpYnVuZyBlaW5lciBOZXZlbiBBcnQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3JlZmZ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI3MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprcmVmNzQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CZXIuIER0LiBXaXNzLiBLb21tbi4gTWVlcmVzZm9yc2NoLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW52ZXN0aWdhdGlvbnMgb24gbWlkd2F0ZXIgZmlzaCBpbiB0aGUgQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3JlZmZ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIyNjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprdWxpNjAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBBa2FkLiBOYXVrIFNTU1IsIEluc3QuIE9rZWFub2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MYW1wYW55Y3RpZHMgKEdlbnVzIExhbXBhbnljdHVzKSBvZiB0aGUgZmFyIGVhc3Rlcm4gc2VhcyBhbmQgdGhlIE5vcnRod2VzdGVybiBQYWNpZmljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkt1bGlrb3ZhPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTprdWxpNjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5UcnVkeSBBa2FkLiBOYXVrIFNTU1IsIEluc3QuIE9rZWFub2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NYXRlcmlhbCBvbiB0aGUgbGFudGVybmZpc2ggZ2VudXMgRGlhcGh1cyAoRmFtaWx5IFNjb3BlbGlkYWUpIGluIHRoZSB3ZXN0ZXJuIHBhcnQgb2YgdGhlIFBhY2lmaWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3VsaWtvdmE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpsZWdhNjciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DYWguIE9jZWFub2dyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q3ljbGVzIGJpb2xvZ2lxdWVzIGRlcyBwb2lzc29ucyBtZXNvcGVsYWdpcXVlcyBkYW5zIGwnZXN0IGRlIGwnT2NlYW4gSW5kaWVuLiAxLiBTY29wZWxvcHNpcyBtdWx0aXB1bmN0YXR1cyBCcmF1ZXIsIEdvbm9zdG9tYSBzcC4gYW5kIE5vdG9seWNobnVzIHZhbGRpdmlhZSBCcmF1ZXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TGVnYW5kPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpsZWdhNjdhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q2FoLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkN5Y2xlcyBiaW9sb2dpcXVlcyBkZXMgcG9pc3NvbnMgbWVzb3BlbC1hZ2lxdWVzIGRhbnMgbCdlc3QgZGUgbCdPY2VhbiBJbmRpZW4uIDIuIERpc3RyaWJ1dGlvbiBtb3llbm5lIGRlcyBwcmluY2lwYWwgZXNwZWNlcyBkZWxsJ2ljaHR5b2ZhdW5lPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkxlZ2FuZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT43MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bGxveTYzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+R2VvbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRlY3RvbmljIGhpc3RvcnkgQW1lcmljYW4gT3JvZ2FuOiBBbWVyaWNhbnMtVGVjdG9uaWMgcG9sZSwgYSBzeW1wb3NpdW08L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TGxveWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpsb25uMDUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5XaXNzLiBFcmdlYm4uIFNjaHdlZC4gU3ViLXBvbGFyZXhwZWQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZmlzaGVzIG9mIHRoZSBTd2VkaXNoIFNvdXRoIFBvbGFyIEV4cGVkaXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TMO2bm5iZXJnPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Omx1dGs5MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPksuIERhbnNrZSBWaWRlbnNrLiBTZWxzay4gU2tyLiwgU2VyLiA2PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TcG9saWEgQXRsYW50aWNhLiBTY29wZWxpbmkgbXVzZXUgem9vbG9naWNpIEhhdW5pZW5zaXMuIEJpZHJhZyB0aWwgS2luZHN0YWIgb20gZGV0IGFhYm5lIEhhdXMgbGFrZXNpbGQgZWxsZXIgU2NvcGVsaW5lcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Mw7x0a2VuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIyMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODkyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1hY2szNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgc2Vhc29uYWwgY2lyY3VsYXRpb24gb2YgdGhlIGFudGFyY3RpYyBtYWNyb3BsYW5rdG9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1hY2tpbnRvc2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzY1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE2PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1hY2s0NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgYW50YXJjdGljIGNvbnZlcmdlbmNlIGFuZCB0aGUgZGlzdHJpYnV0aW9uIG9mIHN1cmZhY2UgdGVtcGVyYXR1cmVzIGluIEFudGFyY3RpYyB3YXRlcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWFja2ludG9zaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWFyZzcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2NpZW5jZTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW50YXJjdGljIGdsYWNpYXRpb24gZHVyaW5nIHRoZSBUZXJ0aWFyeSByZWNvcmRlZCBpbiBzdWJhbnRhcmN0aWMgZGVlcC1zZWEgY29yZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWFyZ29saXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA4NTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEyNi9zY2llbmNlLjE3MC4zOTYyLjEwODU8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1hcnI2MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgbmF0dXJhbCBoaXN0b3J5IGFuZCBnZW9ncmFwaHkgb2YgdGhlIEFudGFyY3RpYyBLcmlsbCAoRXVwaGF1c2lhIFN1cGVyYmEgRGFuYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NYXJyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1hdWM2OSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QWR2YW5jZXMgaW4gbWFyaW5lIGJpb2xvZ3k8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5UaGUgYmlvbG9neSBvZiBldXBoYXVzaWlkcy48L3Nlcmllc190aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NYXVjaGxpbmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1heXI2MyI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QW5pbWFsIHNwZWNpZXMgYW5kIGV2b2x1dGlvbjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1heXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNDE1OS9oYXJ2YXJkLjk3ODA2NzQ4NjUzMjc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1jY3UxNSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkVuZGVhdm91ciAxOTA5LTE5MTQ8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkJpb2xvZ2ljYWwgcmVzdWx0cyBvZiBmaXNoaW5nIGV4cGVyaW1lbnRzIGNhcnJpZWQgb24gYnkgdGhlIEYuSS5TPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jQ3VsbG9jaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTE1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1jY3UyMyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlJlYy4gQXVzdC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzIGZyb20gQXVzdHJhbGlhIGFuZCBMb3JkIEhvd2UgSXNsYW5kLiAyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jQ3VsbG9jaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMTA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MjM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWNjdTI5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtLiBBdXN0LiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIGNoZWNrbGlzdCBvZiB0aGUgZmlzaGVzIHJlY29yZGVkIGZyb20gQXVzdHJhbGlhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jQ3VsbG9jaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjHigJM1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mjk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMzg1My9qLjAwNjctMTk2Ny41LjE5MjkuNDczPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptY2dpNzQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Db3VudGVyY2xvY2t3aXNlIGNpcmN1bGF0aW9uIGluIHRoZSBQYWNpZmljIFN1YmFudGFyY3RpYyBzZWN0b3Igb2YgdGhlIFNvdXRoZXJuIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jR2lubmlzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjczNjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xODY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEyNi9zY2llbmNlLjE4Ni40MTY1LjczNjwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWNnaTc3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RXZvbHV0aW9uIHdpdGhpbiBwZWxhZ2ljIGVjb3N5c3RlbXM6IEFzcGVjdHMgb2YgdGhlIGRpc3RyaWJ1dGlvbiBhbmQgZXZvbHV0aW9uIG9mIHRoZSBGYW1pbHkgTXljdG9waGlkYWU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNHaW5uaXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTQ3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptY2dvNzEiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PY2VhbmljIGJpb2dlb2dyYXBoeSBvZiB0aGUgUGFjaWZpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NY0dvd2FuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1jaW42NyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNjaWVuY2U8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvY2NvbGl0aHMgYXMgcGFsZW9jbGltYXRpYyBpbmRpY2F0b3JzIG9mIFBsZWlzdG9jZW5lIGdsYWNpYXRpb248L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWNJbnR5cmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTMxNDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEyNi9zY2llbmNlLjE1OC4zODA2LjEzMTQ8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om1lYWQ2NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk1lbS4gU2VhcnMgRmRuLiBNYXIuIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkZhbWlseSBDaGxvcm9waHRoYWxtaWRhZS4gRmlzaGVzIG9mIHRoZSBXZXN0ZXJuIE5vcnRoIEF0bGFudGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1lYWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTYyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjU8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptZWFkNTMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBGaXNoLiBSZXMuIEJkLiBDYW4uPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIGNvbGxlY3Rpb24gb2Ygb2NlYW5pYyBmaXNoZXMgZnJvbSBvZmYgTm9ydGhlYXN0ZXJuIEphcGFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1lYWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTYwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT44PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTM8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEzOS9mNTMtMDMzPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptaWR0NTciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY2llbnQuIFJlc3VsdHMgQnJhdGVnZyBFeHBlZC4gMTk0Ny0xOTQ4PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QYWNpZmljIEFudGFyY3RpYyBXYXRlcnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWlkdHR1bjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NTc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bWlsZTcxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFyLiBCaW9sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VHlwZXMgb2YgbGFydmFsIGRldmVsb3BtZW50IGluIG1hcmluZSBib3R0b20gaW52ZXJ0ZWJyYXRlcywgdGhlaXIgZGlzdHJpYnV0aW9uIGFuZCBlY29sb2dpY2FsIHNpZ25pZmljYW5jZTogQSByZS1ldmFsdWF0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1pbGVpa292c2t5PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE5MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MzwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvQkYwMDM1MjgwOTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bW9yZTg4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gU29jLiBQaGlsb21hdGguLCBQYXJpcywgU2VyLiA3PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5MZSBzY29wZWxlIGRlIFZlcmFueSwgU2NvcGVsdXMgdmVyYW55aTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Nb3JlYXU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4ODg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bW9zZTcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gTG9zIEFuZ2VsZXMgQ291bnR5IE11cy4gTmF0LiBIaXN0LiwgU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGV2ZWxvcG1lbnQgb2YgbGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKSBpbiB0aGUgQ2FsaWZvcm5pYSBjdXJyZW50LiAxLiBTcGVjaWVzIHdpdGggbmFycm93LWV5ZWQgbGFydmFlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1vc2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Nzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptb3NlNzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGV2ZWxvcG1lbnQgb2YgdGhlIGxhbnRlcm5maXNoIFNjb3BlbG9wc2lzIG11bHRpcHVuY3RhdHVzIEJyYXVlciAxOTA2LCB3aXRoIGEgZGlzY3Vzc2lvbiBvZiBpdHMgcHJvcG9zZWQgbWVjaGFuaXNtIGZvciB0aGUgZXZvbHV0aW9uIG9mIHBob3RvcGhvcmUgcGF0dGVybnMgaW4gbGFudGVybmZpc2hlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Nb3NlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41NDE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptb3NlNzQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GaXNoLiBCdWxsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Um9sZSBvZiBsYXJ2YWwgc3RhZ2VzIGluIHN5c3RlbWF0aWMgaW52ZXN0aWdhdGlvbnMgb2YgbWFyaW5lIHRlbGVvc3RzOiBUaGUgTXljdG9waGlkYWUsIEEgQ2FzZSBTdHVkeTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Nb3NlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zOTE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3NDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTptdXJvNjMiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgcHJpbmNpcGFsIGh5ZHJvbG9naWNhbCBmZWF0dXJlcyBvZiB0aGUgUGFjaWZpYyBPY2Vhbi4gVHJhbnNsYXRlZCBmcm9tIFJ1c3NpYW4sIGNhdGFsb2d1ZSA3NTM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TXVyb210c2V2PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om5hZnA2OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRhbmEgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyBvZiB0aGUgZ2VuZXJhIExvYmlhbmNoaWEgYW5kIERpYXBodXMgaW4gdGhlIE5vcnRoIEF0bGFudGljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk5hZnBha3RpdGlzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bmFmcDY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gTG9zIEFuZ2VsZXMgQ291bnR5IE11cy4gTmF0LiBIaXN0LiwgU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKSBjb2xsZWN0ZWQgZHVyaW5nIGNydWlzZXMgMyBhbmQgNiBvZiB0aGUgUi9WIEFudG9uIEJydXVuIGluIHRoZSBJbmRpYW4gT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TmFmcGFrdGl0aXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om5hZnA2OGEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Mb3MgQW5nZWxlcyBDb3VudHkgTXVzLiBDb250ci4gU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmV2aWV3IG9mIHRoZSBsYW50ZXJuZmlzaCBnZW51cyBMYW1wYWRlbmEgd2l0aCBhIGRlc2NyaXB0aW9uIG9mIGEgbmV3IHNwZWNpZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TmFmcGFrdGl0aXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bmV3ZTY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXV0LiBKLiBNYXIuIEZyZXNod2F0ZXIgUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U2Vhc29uYWwgY2hhbmdlcyBpbiB0aGUgaHlkcm9sb2dpY2FsIGFuZCBiaW9sb2dpY2FsIGVudmlyb25tZW50cyBvZmYgUG9ydCBIYWNraW5nLCBTeWRuZXk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TmV3ZWxsPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjc3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNzEvTUY5NjYwMDc3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpub3JtMzAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T2NlYW5pYyBmaXNoZXMgYW5kIGZsYXRmaXNoZXMgY29sbGVjdGVkIGluIDE5MjUtMTkyNzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Ob3JtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6bm9ybTM3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UmVwLiBCQU5aIEFudGFyY3QuIFJlcy4gRXhwZWQuLCBTZXIuIEI8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkZpc2hlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Ob3JtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTA8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MjwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om5vcm0zOCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRpc2NvdmVyeSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Db2FzdCBGaXNoZXMuIDMuIFRoZSBhbnRhcmN0aWMgem9uZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Ob3JtYW48L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC41OTYyL2JobC5wYXJ0LjE5NDEyPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpvZGF5NjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBNdXMuIENvbXAuIFpvb2wuIEhhcnYuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIHN0dWR5IG9mIHRoZSBlZmZlY3RzIG9mIGV4cGF0cmlhdGlvbiBvbiB0aGUgZ29uYWRzIG9mIHRoZSB0d28gbXljdG9waGlkIGZpc2hlcyBpbiB0aGUgTm9ydGggQXRsYW50aWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TydEYXk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Nzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTM2PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Om9ycmU2NiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkh5ZHJvbG9neSBvZiB0aGUgc291dGhlYXN0IEluZGlhbiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5PcnJlbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpvc3RhNjUiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbnRhcmN0aWMgb2NlYW5vZ3JhcGh5LCBFY29sb2d5IGFuZCBiaW9nZW9ncmFwaHkgb2YgdGhlIGFudGFyY3RpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5Nb25vZ3IuIEJpb2wuPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+T3N0YXBvZmY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTc2PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnBhcHAxMiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkR0LiBTdWRwb2wuIEV4cGVkLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGllIEZpc2NoZSBkZXIgRGV1dHNjaGVuIFN1ZHBvbGFyIEV4cGVkaXRpb24gMTkwMS0xOTAzLiAyLiBEaWUgRmlzY2hlIGRlciBBbnRhcmN0aWMgYXVnIFN1YmFudGFyY3RpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYXBwZW5oZWltPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2MjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpwYXBwMTQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EdC4gU3VkcG9sLiBFeHBlZC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpZSBGaXNoZW4gZGVyIFN1ZHBvbGFyIEV4cGVkaXRpb24gMTkwMS0xOTAzLiAyLiBEaWUgdGllZnNlIEZpc2hlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBhcHBlbmhlaW08L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTYwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4yPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cGFyaTcwIj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SWNodGh5b2ZhdW5hIG9mIHRoZSBlcGlwZWxhZ2ljIHpvbmUuIFRyYW5zbGF0ZWQgZnJvbSBSdXNzaWFuLCBjYXRhbG9ndWUgNTUzODwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYXJpbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpwYXJyMjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsLiBCaW5naGFtIE9jZWFub2dyLiBDb2xsLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGVlcHNlYSBmaXNoZXMgb2YgdGhlIG9yZGVyIEluaW9taSBmcm9tIHRoZSB3YXRlcnMgYXJvdW5kIHRoZSBCYWhhbWEgYW5kIEJlcm11ZGEgSXNsYW5kcywgd2l0aCBhbm5vdGF0ZWQga2V5cyB0byB0aGUgU3VkLWlkYWUsIE15Y3RvcGhpZGFlLCBTY29wZWxhcmNoaWRhZSwgRXZlcm1hbmVsbGlkYWUsIE9tb3N1ZGlkYWUsIENldG9taW1pZGFlLCBhbmQgUm9uZGVsZXRpaWRhZSBvZiB0aGUgd29ybGQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UGFycjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpwYXh0NjdhIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q29wZWlhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIGRpc3RyaWJ1dGlvbmFsIGFuYWx5c2lzIGZvciB0aGUgbGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKSBvZiB0aGUgU2FuIFBlZHJvIEJhc2luLCBDYWxpZm9ybmlhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBheHRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40MjI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4yMzA3LzE0NDIxMzE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnBheHQ2N2IiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5DYWxpZi4gRmlzaCBHYW1lPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CaW9sb2dpY2FsIG5vdGVzIG9uIHNvdXRoZXJuIENhbGlmb3JuaWEgbGFudGVybmZpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYXh0b248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjE0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjUzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cGF4dDcyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gTG9zIEFuZ2VsZXMgQ291bnR5IE5hdC4gSGlzdC4gTXVzLiwgU2NpLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0ZW9sb2d5IGFuZCByZWxhdGlvbnNoaXBzIG9mIHRoZSBsYW50ZXJuZiBpc2hlcyAoRmFtaWx5IE15Y3RvcGhpZGFlKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYXh0b248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk3MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpweXRjNjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBPY2Vhbm9nci4gU29jLiBKYXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5XYXRlciBtYXNzZXMgYW5kIHRoZWlyIHByb3BlcnRpZXMgYXQgMTYwwrBXIGluIHRoZSBTb3V0aGVybiBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QeXRjb3dpdHo8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJhZmkxMCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+SW5kaWNlIGQnbHR0aW9sb2dpYSBTaWNpbGlhbmE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5SYWZpbmVzcXVlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODEwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJlZ2ExMyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRyYW5zLiBSLiBTb2MuIEVkaW5iLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIEFudGFyY3RpYyBmaXNoZXMgb2YgdGhlIFNjb3R0aXNoIE5hdGlvbmFsIEFudGFyY3RpYyBleHBlZGl0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJlZ2FuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjIyOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40OTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkxMzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDE3L1MwMDgwNDU2ODAwMDAzOTUxPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpyZWdhMTQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5OYXR1cmFsIEhpc3RvcnksIEJyLiBBbnRhcmN0LiBUZXJyYSBOb3ZhIEV4cGVkLiAxOTEwLCBab29sLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJlZ2FuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTE0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJlaWQ2NSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkpvaG5zIEhvcGtpbnMgT2NlYW5vZ3IuIFN0dWQuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbnRlcm1lZGlhdGUgd2F0ZXJzIG9mIHRoZSBQYWNpZmljIE9jZWFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJlaWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJlaW4zNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkRhbnNrIFZpZC4gU2Vsc2suIEFmaC4gQ29wZW5oYWdlbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SWNodGh5b2xvZ2lza2UgYmlkcmFnIHRpbCBkZW4gZ3JvbmxhbmRza2EgZmF1bmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UmVpbmhhcmR0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEwNzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODM3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnJpY2g0NCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+SWNodGh5b2xvZ3kgb2YgdGhlIHZveWFnZSBvZiBILk0uUzwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJpY2hhcmRzb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4NDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cmljaDQ4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RXJlYnVzIGFuZCBUZXJyb3I8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+RXJlYnVzIGFuZCBUZXJyb3I8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5SaWNoYXJkc29uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg0ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpyb2NoNjAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BdXN0LiBKLiBNYXIuIEZyZXNod2F0ZXIgUmVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGludGVybWVkaWF0ZSB3YXRlcnMgb2YgdGhlIFRhc21hbiBhbmQgQ29yYWwgc2Vhcy4gMS4gVGhlIDI2LjgwIHNpZ21hIHQgc3VyZmFjZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Sb2NoZm9yZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMjc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDcxL01GOTYwMDEyNzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cm9wZTY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gVS5TLiBOYXRuLiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TeXN0ZW1hdGljcyBhbmQgem9vZ2VvZ3JhcGh5IG9mIHRoZSB3b3JsZHdpZGUgYmF0aHlwZWxhZ2ljIHNxdWlkIEJhdGh5dGV1dGhpcyAoQ2VwaGFsb3BvZGEsIE9lZ29wc2lkYSk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Um9wZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yOTE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNTQ3OS9zaS4wMzYyOTIzNi4yOTEuMTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6cm90aDY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T2NlYW5vZ3JhcGh5IG9mIHRoZSBDb3JhbCBhbmQgVGFzbWFuIHNlYXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+T2NlYW5vZ3JhcGh5IGFuZCBNYXJpbmUgQmlvbG9neSwgQW5udWFsIFJldmlldzwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJvdGhzY2hpPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2F2YTYwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U3lzdC4gWm9vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkV2b2x1dGlvbiBvZiBhIFBlbmluc3VsYXIgSGVycGV0b2ZhdW5hPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNhdmFnZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xODQ8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+OTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4yMzA3LzI0MTE5Njc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnNhdmE2NSI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN0dWRpZXMgb24gQW50YXJjdGljIG9jZWFub2xvZ3kuIEJpb2xvZ2ljYWwgc3RhdGlvbnMgb2NjdXBpZWQgYnkgdGhlIFVTTlMgRWx0YW4tPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNhdmFnZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzYXZhNjYiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdHVkaWVzIGluIEFudGFyY3RpYyBvY2Vhbm9sb2d5LiBCaW9sb2dpY2FsIHN0YXRpb25zIG9jY3VwaWVkIGJ5IHRoZSBVU05TIEVsdGFuLTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TYXZhZ2U8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2F2YTY3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3R1ZGllcyBpbiBBbnRhcmN0aWMgb2NlYW5vbG9neS4gQmlvbG9naWNhbCBzdGF0aW9ucyBvY2N1cGllZCBieSB0aGUgVVNOUyBFbHRhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TYXZhZ2U8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2NoZTY4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RHQuIEh5ZHJvZ3IuIFouPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PbiB0aGUgcmVsYXRpb24gYmV0d2VlbiB0aGUgd2luZHMgb2ZmIFNvdXRod2VzdCBBZnJpY2EgYW5kIHRoZSBCZW5ndWVsYSBDdXJyZW50IGFuZCBBZ3VsaGFzIEN1cnJlbnQgcGVuZXRyYXRpb25zIGluIHRoZSBTb3V0aCBBdGxhbnRpYzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TY2hlbGw8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTA5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvQkYwMjIzNTcyNTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2NyaTY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UGh5c2ljYWwgYW5kIGNoZW1pY2FsIGRhdGEgZnJvbSB0aGUgU2NvcnBpbyBleHBlZGl0aW9uIGluIHRoZSBTb3V0aCBQYWNpZmljIE9jZWFuLCBVU05TIEVsdGFuaW4gY3J1aXNlcyAyOCBhbmQgMjk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2NyaXBwcyBJbnN0aXR1dGlvbiBvZiBPY2Vhbm9ncmFwaHksIFdvb2RzIEhvbGUgT2NlYW5vZ3JhcGhpYyBJbnN0aXR1dGlvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzaGFjNzUiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QYWxlb3RlbXBlcmF0dXJlIGhpc3Rvcnkgb2YgdGhlIENlbm96b2ljIGFuZCB0aGUgaW5pdGlhdGlvbiBvZiBBbnRhcmN0aWMgZ2xhY2lhdGlvbjogT3h5Z2VuIGFuYWx5c2VzIGluIERTRFAgc2l0ZXMgMjc3LCAyNzksIGFuZCAyODE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+SW5pdGlhbCByZXBvcnRzIG9mIHRoZSBEZWVwIFNlYSBEcmlsbGluZyBQcm9qZWN0PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2hhY2tsZXRvbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT43NDM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2hhbjY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SHlkcm9sb2d5IG9mIHRoZSBzb3V0aCBhbmQgd2VzdCBjb2FzdHMgb2YgQWZyaWNhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNoYW5ub248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c2hpaDY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGFuYSBSZXAuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgc3lzdGVtYXRpY3MgYW5kIGJpb2xvZ3kgb2YgdGhlIGZhbWlseSBQaHJvbmltaWRhZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TaGloPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6c21pdDMzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VHJhbnMuIFIuIFNvYy4gUy4gQWZyLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TmV3IE15Y3RvcGhpZCBmaXNoIGZyb20gU291dGggQWZyaWNhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNtaXRoPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzAwMzU5MTkzMzA5NTE5MzE3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTpzdmVyNDIiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBvY2VhbnM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TdmVyZHJ1cDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk0MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp0YWZ0NjMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5KLiBNYXIuIFJlcy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpc3RyaWJ1dGlvbiBvZiBzYWxpbml0eSBhbmQgZGlzc29sdmVkIG94eWdlbiBvbiBzdXJmYWNlcyBvZiB1bmlmb3JtIHBvdGVudGlhbCBzcGVjaWZpYy12b2x1bWUgaW4gdGhlIFNvdXRoIEF0bGFudGljLCBTb3V0aCBQYWNpZmljLCBhbmQgSW5kaWFuIG9jZWFuczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5UYWZ0PC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4ybDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp0YW5pMjgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5WaWRlbnNrLiBNZWRkci4gRGFuc2sgTmF0dXJoLiBGb3Jlbi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN5bm9wc2lzIG9mIHNjb3BlbGlkcyBpbiB0aGUgTm9ydGggQXRsYW50aWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+VMOkbmluZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkyODwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp0dW5pMzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5WaWRlbnNrLiBNZWRkci4gRGFuc2sgTmF0dXJoLiBGb3Jlbi48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5vdGVzIG9uIHNjb3BlbGlkcyBmcm9tIHRoZSBEYW5hIGV4cGVkaXRpb24uIDE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+VHVuaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEyNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT45NDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp0ZWJiNjAiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5EaXNjb3ZlcnkgUmVwLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiBwZWxhZ2ljIHBvbHljaGFldGVzIGluIHRoZSBTb3V0aCBBdGxhbnRpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5UZWJibGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnRydW42OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlZvcHIuIEljaHRpb2w8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5ldyBvYnNlcnZhdGlvbnMgb24gdGhlIGRpc3RyaWJ1dGlvbiBvZiBFbGVjdHJvbmEgcmlzc29pIChDb2NjbykgYW5kIERpYXBodXMgb3N0ZW5mZWxkaSBUdW5pbmcgKE15Y3RvcGhpZGFlKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5UcnVub3Y8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTk1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6dmlnbDY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5PY2VhbnM6IExpbWl0cywgZGVmaW5pdGlvbnMsIGFuZCBkaW1lbnNpb25zLCBFbmN5Y2xvcGFlZGlhIG9mIE9jZWFub2dyYXBoeTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlZpZ2xpZXJpPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTY2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OnZvcm82OCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNhcnNpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGRpc3RyaWJ1dGlvbiBvZiB6b29wbGFua3RvbiBpbiB0aGUgU291dGhlcm4gT2NlYW4gYW5kIGl0cyBkZXBlbmRlbmNlIG9uIHRoZSBjaXJjdWxhdGlvbiBvZiB3YXRlcjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Wb3JvbmluYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNzc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTA4MC8wMDM2NDgyNy4xOTY4LjEwNDEzMzkxPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YWl0MDQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5SZWMuIEF1c3QuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFkZGl0aW9uIHRvIHRoZSBmaXNoIGZhdW5hIG9mIExvcmQgSG93ZSBJc2xhbmQsIDQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2FpdGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTM1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkwNDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zODUzL2ouMDA2Ny0xOTc1LjUuMTkwNC4xMDUzPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YWl0MTEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5SZWMuIENhbnRlcmJ1cnkgTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RmlzaGVzLiAyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldhaXRlPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE1NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2FpdDE2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXVzdHJhbGFzLiBBbnRhcmN0LiBFeHBlZC4sIFNlci4gQy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkZpc2hlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XYWl0ZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT41OTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2FsczY5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TGltbW9sLiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlZlcnRpY2FsIGRpc3RyaWJ1dGlvbiBvZiBhbnRhcmN0aWMgcGh5dG8tcGxhbmt0b24uIDIuIEEgY29tcGFyaXNvbiBvZiBwaHl0by1wbGFua3RvbiBzdGFuZGluZyBjcm9wcyBpbiB0aGUgU291dGhlcm4gT2NlYW4gd2l0aCB0aGF0IG9mIHRoZSBGbG9yaWRhIFN0cmFpdHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2Fsc2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjE8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2OTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC40MzE5L2xvLjE5NjkuMTQuMS4wMDg2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3YXJyNzAiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5HZW5lcmFsIGNpcmN1bGF0aW9uIG9mIHRoZSBTb3V0aCBQYWNpZmljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldhcnJlbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2F0azcxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2NpZW5jZTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW50YXJjdGljIGJvdHRvbSB3YXRlcjogTWFqb3IgY2hhbmdlIGluIHZlbG9jaXR5IGR1cmluZyB0aGUgbGF0ZSBDZW5vem9pYyBiZXR3ZWVuIEF1c3RyYWxpYSBhbmQgQW50YXJjdGljYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XYXRraW5zPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjgxMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xNzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTEyNi9zY2llbmNlLjE3My4zOTk5LjgxMzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2hpdDMxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UmVjLiBBdXN0LiBNdXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdHVkaWVzIGluIEljaHRoeW9sb2d5LiA0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldoaXRsZXk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkzMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zODUzL2ouMDA2Ny0xOTc1LjE4LjE5MzEuNzIwPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aGl0MzIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5SZWMuIEF1c3QuIE11cy48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlN0dWRpZXMgaW4gSWNodGh5b2xvZ3kuIDY8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2hpdGxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MzI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMzg1My9qLjAwNjctMTk3NS4xOC4xOTMyLjczNzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2hpdDQxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXVzdC4gWm9vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgbGFudGVybmZpc2ggZnJvbSBNYWNxdWFyaWUgSXNsYW5kPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldoaXRsZXk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTI0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2hpdDQzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXVzdC4gWm9vbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkljaHRoeW9sb2dpY2FsIG5vdGVzIGFuZCBpbGx1c3RyYXRpb25zLiAyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldoaXRsZXk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTY3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTQzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1OndoaXQ1MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlJlYy4gQXVzdC4gTXVzLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+U3R1ZGllcyBpbiBJY2h0aHlvbG9neS4gMTY8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2hpdGxleTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMzM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zODUzL2ouMDA2Ny0xOTc1LjIzLjE5NTMuNjI3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3aXNuNjMiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Db3BlaWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgbmV3IGdlbnVzIGFuZCBzcGVjaWVzIG9mIG15Y3RvcGhpZCBmaXNoIGZyb20gdGhlIHNvdXRoLWNlbnRyYWwgUGFjaWZpYyBPY2Vhbiwgd2l0aCBub3RlcyBvbiByZWxhdGVkIGdlbmVyYSBhbmQgdGhlIGRlc2lnbmF0aW9uIG9mIGEgbmV3IHRyaWJlLCBFbGVjdHJvbmljPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPldpc25lcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5JPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMTQ0MTI3MDwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d2lzbjcxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Q29wZWlhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EZXNjcmlwdGlvbnMgb2YgZWlnaHQgbmV3IHNwZWNpZXMgb2YgbXljdG9waGlkIGZpc2hlcyBmcm9tIHRoZSBlYXN0ZXJuIFBhY2lmaWMgT2NlYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2lzbmVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPkk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8xNDQxNTk3PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3b29zNzAiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5FYXN0ZXJuIGJvdW5kYXJ5IGN1cnJlbnRzIGluIFNvdXRoIFBhY2lmaWM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V29vc3RlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d29vczYxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Si4gTWFyLiBSZXMuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgUGVydS1DaGlsZSB1bmRlcmN1cnJlbnQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V29vc3RlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMTI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MTwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3b29zNjMiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5FYXN0ZXJuIGJvdW5kYXJ5IGN1cnJlbnRzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBzZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Xb29zdGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI1MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ond1c3QzNiI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNjaGljaHR1bmcgYW5kIFppa3VsYXRpb24gZGVzIEF0bGFudGlzY2hlbiBPemVhbnMuIER0LiBBdGxhbnQuIEV4cGVkLiBNZXRlb3IgMTkyNeKAkzE5Mjc8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V8O8c3Q8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MzY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d3lydDYwYSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkR0LiBIeWRyb2dyLiBaLjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGFudGFyY3RpYyBjaXJjdW1wb2xhciBjdXJyZW50IGFuZCB0aGUgYW50YXJjdGljIHBvbGFyIGZyb250PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPld5cnRraTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDA3L0JGMDIyMjYxOTc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIxMC4xMDI5L0FSMDM1Ond5cnQ2MGIiPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TdXJmYWNlIGNpcmN1bGF0aW9uIGluIHRoZSBDb3JhbCBhbmQgVGFzbWFuIHNlYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XeXJ0a2k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NjA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6d3lydDYzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gU2NyaXBwcyBJbnN0LiBPY2Vhbm9nci48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRoZSBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBmaWVsZCBvZiBtb3Rpb24gaW4gdGhlIFBlcnUgQ3VycmVudDwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XeXJ0a2k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzEzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjg8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2MzwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMTAuMTAyOS9BUjAzNTp3eXJ0NjciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5JbnQuIEouIE9jZWFub2dyLiBMaW1ub2wuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DaXJjdWxhdGlvbiBhbmQgd2F0ZXIgbWFzc2VzIGluIHRoZSBlYXN0ZXJuIGVxdWF0b3JpYWwgUGFjaWZpYyBPY2VhbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XeXJ0a2k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTE3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Njc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjEwLjEwMjkvQVIwMzU6enVnbTExIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbC4gSW5zdC4gT2NlYW5vZ3IuIE1vbmFjbzwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGlhZ25vc2VzIGRlcyBwb2lzc29ucyBub3V2ZWF1eCBwcm92ZW5hbnQgZGVzIGNhbXBnYW5lcyBkdSB5YWNodCBQcmluY2VzcyBBbGljZSAxOTAxLTE5MTA8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+WnVnbWF5ZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uX2xpc3Q+DQogICAgICAgICAgICAgIDwvYm9va19zZXJpZXNfbWV0YWRhdGE+DQogICAgICAgICAgICA8L2Jvb2s+DQogICAgICAgICAgPC9jcm9zc3JlZj4NCiAgICAgICAgPC9kb2lfcmVjb3JkPg0KICAgICAgPC9xdWVyeT4NCiAgICA8L2JvZHk+DQogIDwvcXVlcnlfcmVzdWx0Pg0KPC9jcm9zc3JlZl9yZXN1bHQ+
97
- http_version:
98
- recorded_at: Wed, 09 Jun 2021 09:34:49 GMT
99
- recorded_with: VCR 3.0.3
@@ -1,99 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: https://doi.org/ra/10.4018
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- User-Agent:
11
- - Mozilla/5.0 (compatible; Maremma/4.9.4; mailto:info@datacite.org)
12
- Accept:
13
- - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
- Accept-Encoding:
15
- - gzip,deflate
16
- response:
17
- status:
18
- code: 200
19
- message: ''
20
- headers:
21
- Date:
22
- - Wed, 09 Jun 2021 12:56:51 GMT
23
- Content-Type:
24
- - application/json;charset=UTF-8
25
- Connection:
26
- - keep-alive
27
- Content-Encoding:
28
- - gzip
29
- Cf-Cache-Status:
30
- - DYNAMIC
31
- Cf-Request-Id:
32
- - 0a9271e75c0000969efb95a000000001
33
- Expect-Ct:
34
- - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
35
- Report-To:
36
- - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v2?s=A2AzirEArQAQtqu4s24xvHvnU7qyAjuZKiFS6P7aF1TqOACO9INjajg6yrdI9sSGn2iQyXfjqmKFUVHOzqd9oLXA6K0eLTXTFZUL6xEhOKrNHV1bg4WQiYI2RZ5D%2BRyp"}],"group":"cf-nel","max_age":604800}'
37
- Nel:
38
- - '{"report_to":"cf-nel","max_age":604800}'
39
- Strict-Transport-Security:
40
- - max-age=31536000; includeSubDomains; preload
41
- Server:
42
- - cloudflare
43
- Cf-Ray:
44
- - 65ca85b89d3c969e-FRA
45
- Alt-Svc:
46
- - h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400, h3=":443";
47
- ma=86400
48
- body:
49
- encoding: ASCII-8BIT
50
- string: !binary |-
51
- H4sIAAAAAAAAA4vmUlCoBmIFBSUXf08lKwUlQwM9EwNDCyUdiGiQI0jQuSi/uLgoNU0JKFjLFQsAEcZ4tDYAAAA=
52
- http_version:
53
- recorded_at: Wed, 09 Jun 2021 12:56:51 GMT
54
- - request:
55
- method: get
56
- uri: https://api.crossref.org/works/10.4018/978-1-4666-1891-6.ch004/transform/application/vnd.crossref.unixsd+xml
57
- body:
58
- encoding: US-ASCII
59
- string: ''
60
- headers:
61
- User-Agent:
62
- - Mozilla/5.0 (compatible; Maremma/4.9.4; mailto:info@datacite.org)
63
- Accept:
64
- - text/xml;charset=utf-8
65
- Accept-Encoding:
66
- - gzip,deflate
67
- response:
68
- status:
69
- code: 200
70
- message: OK
71
- headers:
72
- Link:
73
- - <http://dx.doi.org/10.4018/978-1-4666-1891-6.ch004>; rel="canonical", <https://www.igi-global.com/viewtitle.aspx?TitleId=69071>;
74
- version="vor"; rel="item"
75
- Access-Control-Allow-Origin:
76
- - "*"
77
- Access-Control-Allow-Headers:
78
- - X-Requested-With
79
- Content-Length:
80
- - '15397'
81
- Server:
82
- - http-kit
83
- Date:
84
- - Wed, 09 Jun 2021 12:56:52 GMT
85
- X-Rate-Limit-Limit:
86
- - '50'
87
- X-Rate-Limit-Interval:
88
- - 1s
89
- Permissions-Policy:
90
- - interest-cohort=()
91
- Connection:
92
- - close
93
- body:
94
- encoding: ASCII-8BIT
95
- string: !binary |-
96
- PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0iYm9va19jb250ZW50Ij4xMC40MDE4Lzk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5JR0kgR2xvYmFsPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9InByZWZpeC1uYW1lIiB0eXBlPSJzdHJpbmciPklHSSBHbG9iYWw8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0ibWVtYmVyLWlkIiB0eXBlPSJudW1iZXIiPjI0MzI8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iY2l0YXRpb24taWQiIHR5cGU9Im51bWJlciI+NTY5ODcwMTc8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iYm9vay1pZCIgdHlwZT0ibnVtYmVyIj4xMTMxMTk4PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImRlcG9zaXQtdGltZXN0YW1wIiB0eXBlPSJudW1iZXIiPjIwMTgxMTE5MDExMjU5PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC40MDE4PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDE5LTA3LTAyVDE3OjE3OjIxWjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDEyLTA4LTA4VDIwOjU0OjA3WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjA8L2NybS1pdGVtPg0KICAgICAgICA8ZG9pX3JlY29yZD4NCiAgICAgICAgICA8Y3Jvc3NyZWYgeG1sbnM9Imh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3hzY2hlbWEvMS4xIiB4c2k6c2NoZW1hTG9jYXRpb249Imh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3hzY2hlbWEvMS4xIGh0dHA6Ly9kb2kuY3Jvc3NyZWYub3JnL3NjaGVtYXMvdW5peHJlZjEuMS54c2QiPg0KICAgICAgICAgICAgPGJvb2sgYm9va190eXBlPSJtb25vZ3JhcGgiPg0KICAgICAgICAgICAgICA8Ym9va19tZXRhZGF0YT4NCiAgICAgICAgICAgICAgICA8Y29udHJpYnV0b3JzPg0KICAgICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIHNlcXVlbmNlPSJmaXJzdCIgY29udHJpYnV0b3Jfcm9sZT0iZWRpdG9yIj4NCiAgICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+WGlhbzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+QmFpPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgICA8YWZmaWxpYXRpb24+QmVpaGFuZyBVbml2ZXJzaXR5LCBDaGluYTwvYWZmaWxpYXRpb24+DQogICAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIHNlcXVlbmNlPSJhZGRpdGlvbmFsIiBjb250cmlidXRvcl9yb2xlPSJlZGl0b3IiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5KaWFuPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgICA8c3VybmFtZT5DaGVuZzwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPGFmZmlsaWF0aW9uPkNoaW5lc2UgQWNhZGVteSBvZiBTY2llbmNlcywgQ2hpbmE8L2FmZmlsaWF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iYWRkaXRpb25hbCIgY29udHJpYnV0b3Jfcm9sZT0iZWRpdG9yIj4NCiAgICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+RWR3aW48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkhhbmNvY2s8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICAgIDxhZmZpbGlhdGlvbj5Vbml2ZXJzaXR5IG9mIFlvcmssIFVLPC9hZmZpbGlhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPC9jb250cmlidXRvcnM+DQogICAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICAgIDx0aXRsZT5HcmFwaC1CYXNlZCBNZXRob2RzIGluIENvbXB1dGVyIFZpc2lvbjwvdGl0bGU+DQogICAgICAgICAgICAgICAgICA8c3VidGl0bGU+RGV2ZWxvcG1lbnRzIGFuZCBBcHBsaWNhdGlvbnM8L3N1YnRpdGxlPg0KICAgICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICAgIDxwdWJsaWNhdGlvbl9kYXRlPg0KICAgICAgICAgICAgICAgICAgPHllYXI+MjAxMzwveWVhcj4NCiAgICAgICAgICAgICAgICA8L3B1YmxpY2F0aW9uX2RhdGU+DQogICAgICAgICAgICAgICAgPGlzYm4+OTc4MTQ2NjYxODkxNjwvaXNibj4NCiAgICAgICAgICAgICAgICA8aXNibiBtZWRpYV90eXBlPSJlbGVjdHJvbmljIj45NzgxNDY2NjE4OTIzPC9pc2JuPg0KICAgICAgICAgICAgICAgIDxwdWJsaXNoZXI+DQogICAgICAgICAgICAgICAgICA8cHVibGlzaGVyX25hbWU+SUdJIEdsb2JhbDwvcHVibGlzaGVyX25hbWU+DQogICAgICAgICAgICAgICAgPC9wdWJsaXNoZXI+DQogICAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC40MDE4Lzk3OC0xLTQ2NjYtMTg5MS02PC9kb2k+DQogICAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL3NlcnZpY2VzLmlnaS1nbG9iYWwuY29tL3Jlc29sdmVkb2kvcmVzb2x2ZS5hc3B4P2RvaT0xMC40MDE4Lzk3OC0xLTQ2NjYtMTg5MS02PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgICA8L2Jvb2tfbWV0YWRhdGE+DQogICAgICAgICAgICAgIDxjb250ZW50X2l0ZW0gY29tcG9uZW50X3R5cGU9ImNoYXB0ZXIiPg0KICAgICAgICAgICAgICAgIDxjb250cmlidXRvcnM+DQogICAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgc2VxdWVuY2U9ImZpcnN0IiBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5DaGFybGVzLUVkbW9uZDwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+QmljaG90PC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgICA8YWZmaWxpYXRpb24+VW5pdmVyc2l0w6kgZGUgTHlvbiwgRnJhbmNlPC9hZmZpbGlhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPC9jb250cmlidXRvcnM+DQogICAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICAgIDx0aXRsZT5VbnN1cGVydmlzZWQgYW5kIFN1cGVydmlzZWQgSW1hZ2UgU2VnbWVudGF0aW9uIFVzaW5nIEdyYXBoIFBhcnRpdGlvbmluZzwvdGl0bGU+DQogICAgICAgICAgICAgICAgICA8c3VidGl0bGUgLz4NCiAgICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgICA8amF0czphYnN0cmFjdCB4bWxuczpqYXRzPSJodHRwOi8vd3d3Lm5jYmkubmxtLm5paC5nb3YvSkFUUzEiPg0KICAgICAgICAgICAgICAgICAgPGphdHM6cD5JbWFnZSBzZWdtZW50YXRpb24gaXMgYW4gaW1wb3J0YW50IHJlc2VhcmNoIGFyZWEgaW4gY29tcHV0ZXIgdmlzaW9uIGFuZCBpdHMgYXBwbGljYXRpb25zIGluIGRpZmZlcmVudCBkaXNjaXBsaW5lcywgc3VjaCBhcyBtZWRpY2luZSwgYXJlIG9mIGdyZWF0IGltcG9ydGFuY2UuIEl0IGlzIG9mdGVuIG9uZSBvZiB0aGUgdmVyeSBmaXJzdCBzdGVwcyBvZiBjb21wdXRlciB2aXNpb24gb3IgcGF0dGVybiByZWNvZ25pdGlvbiBtZXRob2RzLiBUaGlzIGlzIGJlY2F1c2Ugc2VnbWVudGF0aW9uIGhlbHBzIHRvIGxvY2F0ZSBvYmplY3RzIGFuZCBib3VuZGFyaWVzIGludG8gaW1hZ2VzLiBUaGUgb2JqZWN0aXZlIG9mIHNlZ21lbnRpbmcgYW4gaW1hZ2UgaXMgdG8gcGFydGl0aW9uIGl0IGludG8gZGlzam9pbnQgYW5kIGhvbW9nZW5lb3VzIHNldHMgb2YgcGl4ZWxzLiBXaGVuIHNlZ21lbnRpbmcgYW4gaW1hZ2UgaXQgaXMgbmF0dXJhbCB0byB0cnkgdG8gdXNlIGdyYXBoIHBhcnRpdGlvbmluZywgYmVjYXVzZSBzZWdtZW50YXRpb24gYW5kIHBhcnRpdGlvbmluZyBzaGFyZSB0aGUgc2FtZSBoaWdoLWxldmVsIG9iamVjdGl2ZSwgdG8gcGFydGl0aW9uIGEgc2V0IGludG8gZGlzam9pbnRzIHN1YnNldHMuIEhvd2V2ZXIsIHdoZW4gdXNpbmcgZ3JhcGggcGFydGl0aW9uaW5nIGZvciBzZWdtZW50aW5nIGFuIGltYWdlLCBzZXZlcmFsIGJpZyBxdWVzdGlvbnMgcmVtYWluOiBXaGF0IGlzIHRoZSBiZXN0IHdheSB0byBjb252ZXJ0IGFuIGltYWdlIGludG8gYSBncmFwaD8gT3IgdG8gY29udmVydCBpbWFnZSBzZWdtZW50YXRpb24gb2JqZWN0aXZlcyBpbnRvIGdyYXBoIHBhcnRpdGlvbmluZyBvYmplY3RpdmVzIChub3QgdG8gbWVudGlvbiB3aGF0IGFyZSBpbWFnZSBzZWdtZW50YXRpb24gb2JqZWN0aXZlcyk/IFdoYXQgYXJlIHRoZSBiZXN0IGdyYXBoIHBhcnRpdGlvbmluZyBtZXRob2RzIGFuZCBhbGdvcml0aG1zIGZvciBzZWdtZW50aW5nIGFuIGltYWdlPyBJbiB0aGlzIGNoYXB0ZXIsIHRoZSBhdXRob3IgdHJpZXMgdG8gYW5zd2VyIHRoZXNlIHF1ZXN0aW9ucywgYm90aCBmb3IgdW5zdXBlcnZpc2VkIGFuZCBzdXBlcnZpc2VkIGltYWdlIHNlZ21lbnRhdGlvbiBhcHByb2FjaCwgYnkgcHJlc2VudGluZyBtZXRob2RzIGFuZCBhbGdvcml0aG1zIGFuZCBieSBjb21wYXJpbmcgdGhlbS48L2phdHM6cD4NCiAgICAgICAgICAgICAgICA8L2phdHM6YWJzdHJhY3Q+DQogICAgICAgICAgICAgICAgPGNvbXBvbmVudF9udW1iZXI+Y2hhcHRlciA0PC9jb21wb25lbnRfbnVtYmVyPg0KICAgICAgICAgICAgICAgIDxwYWdlcz4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjcyPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPGxhc3RfcGFnZT45NDwvbGFzdF9wYWdlPg0KICAgICAgICAgICAgICAgIDwvcGFnZXM+DQogICAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC40MDE4Lzk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0PC9kb2k+DQogICAgICAgICAgICAgICAgICA8cmVzb3VyY2U+aHR0cDovL3NlcnZpY2VzLmlnaS1nbG9iYWwuY29tL3Jlc29sdmVkb2kvcmVzb2x2ZS5hc3B4P2RvaT0xMC40MDE4Lzk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgICAgIDxjb2xsZWN0aW9uIHByb3BlcnR5PSJjcmF3bGVyLWJhc2VkIj4NCiAgICAgICAgICAgICAgICAgICAgPGl0ZW0gY3Jhd2xlcj0iaVBhcmFkaWdtcyI+DQogICAgICAgICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHBzOi8vd3d3LmlnaS1nbG9iYWwuY29tL3ZpZXd0aXRsZS5hc3B4P1RpdGxlSWQ9NjkwNzE8L3Jlc291cmNlPg0KICAgICAgICAgICAgICAgICAgICA8L2l0ZW0+DQogICAgICAgICAgICAgICAgICA8L2NvbGxlY3Rpb24+DQogICAgICAgICAgICAgICAgPC9kb2lfZGF0YT4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0xIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2LzAwOTUtODk1Nig4NSk5MDA5Mi05PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BIGdlb2Rlc2ljIGZyYW1ld29yayBmb3IgZmFzdCBpbnRlcmFjdGl2ZSBpbWFnZSBhbmQgdmlkZW8gc2VnbWVudGF0aW9uIGFuZCBtYXR0aW5nPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlguQmFpPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tMyI+DQogICAgICAgICAgICAgICAgICAgIDxkb2k+MTAuMTAwMi9jcGUuNDMzMDA2MDIwMzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li00Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDA3L3MxMDg1Mi0wMTAtOTEyNi0wPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTUiPg0KICAgICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkJpY2hvdCwgQy4tRS4sICZhbXA7IFNpYXJyeSwgUC4gKMOJZHMuKS4gKDIwMTEpLiBHcmFwaCBwYXJ0aXRpb25pbmcuIElTVEUgLSBXaWxleS48L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tNiI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDA3Lzk3OC0zLTU0MC0yNDY3MC0xXzMzPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+Qmxha2UsIEEuLCBSb3RoZXIsIEMuLCBCcm93biwgTS4sIFBlcmV6LCBQLiwgJmFtcDsgVG9yciwgUC4gKDIwMDQpLiBJbnRlcmFjdGl2ZSBpbWFnZSBzZWdtZW50YXRpb24gdXNpbmcgYW4gYWRhcHRpdmUgR01NUkYgbW9kZWwuIEluIFQuIFBhamRsYSwgJmFtcDsgSi4gTWF0YXMgKEVkcy4pLCBQcm9jZWVkaW5ncyBvZiB0aGUgRXVyb3BlYW4gQ29uZmVyZW5jZSBvbiBDb21wdXRlciBWaXNpb24gKEVDQ1YpIChWb2wuIDMwMjEsIHBwLiA0MjgtNDQxKS4gQmVybGluLCBHZXJtYW55IFNwcmluZ2VyLjwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li03Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMDkvSUNDVi4yMDAzLjEyMzgzMTA8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5Cb3lrb3YsIFkuLCAmYW1wOyBLb2xtb2dvcm92LCBWLiAoMjAwMykuIENvbXB1dGluZyBnZW9kZXNpY3MgYW5kIG1pbmltYWwgc3VyZmFjZXMgdmlhIGdyYXBoIGN1dHMuIFByb2NlZWRpbmdzIG9mIHRoZSBOaW50aCBJRUVFIEludGVybmF0aW9uYWwgQ29uZmVyZW5jZSBvbiBDb21wdXRlciBWaXNpb24sIFZvbC4gMiwgKHBwLiAyNi0zMykuIElFRUUgQ29tcHV0ZXIgU29jaWV0eS48L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tOCI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTA5L0lDQ1YuMjAwMS45Mzc1MDU8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5Cb3lrb3YsIFkuIFkuLCAmYW1wOyBKb2xseSwgTS4tUC4gKDIwMDEpLiBJbnRlcmFjdGl2ZSBncmFwaCBjdXRzIGZvciBvcHRpbWFsIGJvdW5kYXJ5ICZhbXA7IHJlZ2lvbiBzZWdtZW50YXRpb24gb2Ygb2JqZWN0cyBpbiBOLUQgaW1hZ2VzLiBQcm9jZWVkaW5ncyBvZiB0aGUgRWlnaHRoIElFRUUgSW50ZXJuYXRpb25hbCBDb25mZXJlbmNlIG9uIENvbXB1dGVyIFZpc2lvbiwgVm9sLiAxLCAocHAuIDEwNS0xMTIpLjwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li05Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDIzL0E6MTAwNzk3OTgyNzA0MzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0xMCI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTA5L0lDQ1YuMjAwOS41NDU5Mjg0PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+Q291cHJpZSwgQy4sIEdyYWR5LCBMLiwgTmFqbWFuLCBMLiwgJmFtcDsgVGFsYm90LCBILiAoMjAwOSkuIFBvd2VyIHdhdGVyc2hlZHM6IEEgbmV3IGltYWdlIHNlZ21lbnRhdGlvbiBmcmFtZXdvcmsgZXh0ZW5kaW5nIGdyYXBoIGN1dHMsIHJhbmRvbSB3YWxrZXIgYW5kIG9wdGltYWwgc3Bhbm5pbmcgZm9yZXN0LCAocHAuIDczMS03MzgpLjwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0xMSI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTA5L0NWUFIuMjAwNS4zMzI8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5Db3VyLCBULiwgQmVuZXppdCwgRi4sICZhbXA7IFNoaSwgSi4gKDIwMDUpLiBTcGVjdHJhbCBzZWdtZW50YXRpb24gd2l0aCBtdWx0aXNjYWxlIGdyYXBoIGRlY29tcG9zaXRpb24uIFByb2NlZWRpbmdzIG9mIHRoZSAyMDA1IElFRUUgQ29tcHV0ZXIgU29jaWV0eSBDb25mZXJlbmNlIG9uIENvbXB1dGVyIFZpc2lvbiBhbmQgUGF0dGVybiBSZWNvZ25pdGlvbiAocHAuIDExMjQtMTEzMSkuPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTEyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTA5L1RQQU1JLjIwMDguMTczPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTEzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTA5L1RQQU1JLjIwMDcuMTExNTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0xNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPklCTSBUZWNobmljYWwgRGlzY2xvc3VyZSBCdWxsZXRpbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5XLkRvbmF0aDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjkzODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbGdvcml0aG1zIGZvciBwYXJ0aXRpb25pbmcgZ3JhcGhzIGFuZCBjb21wdXRlciBsb2dpYyBiYXNlZCBvbiBlaWdlbnZlY3RvcnMgb2YgY29ubmVjdGlvbiBtYXRyaWNlcy48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTE1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTQ3L3JkLjE3NS4wNDIwPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTE2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDA3L3MwMDIyNC0wMDMtMTA4My05PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTE3Ij4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5GaWR1Y2NpYSwgQy4gTS4sICZhbXA7IE1hdHRoZXlzZXMsIFIuIE0uICgxOTgyKS4gQSBsaW5lYXItdGltZSBoZXVyaXN0aWMgZm9yIGltcHJvdmluZyBuZXR3b3JrIHBhcnRpdGlvbnMuIFByb2NlZWRpbmdzIG9mIHRoZSAxOXRoIERlc2lnbiBBdXRvbWF0aW9uIENvbmZlcmVuY2UsIChwcC4gMTc1LTE4MSkuPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTE4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMDkvQ1ZQUi4yMDA1LjE0MzwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkZyZWVkbWFuLCBELiwgJmFtcDsgRHJpbmVhcywgUC4gKDIwMDUpLiBFbmVyZ3kgbWluaW1pemF0aW9uIHZpYSBncmFwaCBjdXRzOiBTZXR0bGluZyB3aGF0IGlzIHBvc3NpYmxlLiBQcm9jZWVkaW5ncyBvZiB0aGUgMjAwNSBJRUVFIENvbXB1dGVyIFNvY2lldHkgQ29uZmVyZW5jZSBvbiBDb21wdXRlciBWaXNpb24gYW5kIFBhdHRlcm4gUmVjb2duaXRpb24sIChwcC4gOTM5LTk0NikuPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTE5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWF0cml4IGNvbXB1dGF0aW9uczwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HLkdvbHViPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTk2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tMjAiPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pPjEwLjExMDkvVFBBTUkuMjAwNi4yMzM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tMjEiPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pPjEwLjExMzcvUzA4OTU0Nzk4OTYzMTIyNjI8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tMjIiPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pPjEwLjEwMTYvUzA3MzQtMTg5WCg4NSk5MDE1My03PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTIzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExNDUvMjI0MTcwLjIyNDIyODwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkhlbmRyaWNrc29uLCBCLiwgJmFtcDsgTGVsYW5kLCBSLiBXLiAoMTk5NSkuIEEgbXVsdGlsZXZlbCBhbGdvcml0aG0gZm9yIHBhcnRpdGlvbmluZyBncmFwaHMuIFByb2NlZWRpbmdzIG9mIFN1cGVyY29tcHV0aW5nLjwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0yNCI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTQ1LzIyNDE3MC4yMjQyMjk8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5LYXJ5cGlzLCBHLiwgJmFtcDsgS3VtYXIsIFYuICgxOTk1KS4gQW5hbHlzaXMgb2YgbXVsdGlsZXZlbCBncmFwaCBwYXJ0aXRpb25pbmcuIFByb2NlZWRpbmdzIG9mIFN1cGVyY29tcHV0aW5nLjwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0yNSI+DQogICAgICAgICAgICAgICAgICAgIDxkb2k+MTAuMTEzNy9TMTA2NDgyNzU5NTI4Nzk5NzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0yNiI+DQogICAgICAgICAgICAgICAgICAgIDxkb2k+MTAuMTAwNi9qcGRjLjE5OTcuMTQwNDwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0yNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRoZSBCZWxsIFN5c3RlbSBUZWNobmljYWwgSm91cm5hbDwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5CLiBXLktlcm5pZ2hhbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI5MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwMi9qLjE1MzgtNzMwNS4xOTcwLnRiMDE3NzAueDwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5hbiBlZmZpY2llbnQgaGV1cmlzdGljIHByb2NlZHVyZSBmb3IgcGFydGl0aW9uaW5nIGdyYXBocy48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTI4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QSBkYXRhYmFzZSBvZiBodW1hbiBzZWdtZW50ZWQgbmF0dXJhbCBpbWFnZXMgYW5kIGl0cyBhcHBsaWNhdGlvbiB0byBldmFsdWF0aW5nIHNlZ21lbnRhdGlvbiBhbGdvcml0aG1zIGFuZCBtZWFzdXJpbmcgZWNvbG9naWNhbCBzdGF0aXN0aWNzLiBUZWNobmljYWwgcmVwb3J0PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkQuIFIuTWFydGluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQxNjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9Ijk3OC0xLTQ2NjYtMTg5MS02LmNoMDA0Li0yOSI+DQogICAgICAgICAgICAgICAgICAgIDxkb2k+MTAuMTE0NS8xMDE1NzA2LjEwMTU3MjA8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSI5NzgtMS00NjY2LTE4OTEtNi5jaDAwNC4tMzAiPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pPjEwLjExMDkvMzQuODY4Njg4PC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTMxIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMDkvSUNDVi4yMDA3LjQ0MDg5Mjc8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5TaW5vcCwgQS4gSy4sICZhbXA7IEdyYWR5LCBMLiAoMjAwNykuIEEgc2VlZGVkIGltYWdlIHNlZ21lbnRhdGlvbiBmcmFtZXdvcmsgdW5pZnlpbmcgZ3JhcGggY3V0cyBhbmQgcmFuZG9tIHdhbGtlciB3aGljaCB5aWVsZHMgYSBuZXcgYWxnb3JpdGhtLiBQcm9jZWVkaW5ncyBvZiB0aGUgMjAwNyBJbnRlcm5hdGlvbmFsIENvbmZlcmVuY2Ugb24gQ29tcHV0ZXIgVmlzaW9uLCAocHAuIDEtOCkuPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTMyIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTM3L1MxMDY0ODI3NTk4MzM3MzczPC9kb2k+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iOTc4LTEtNDY2Ni0xODkxLTYuY2gwMDQuLTMzIj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDE2L2ouY3ZpdS4yMDA3LjA4LjAwMzwvZG9pPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uX2xpc3Q+DQogICAgICAgICAgICAgIDwvY29udGVudF9pdGVtPg0KICAgICAgICAgICAgPC9ib29rPg0KICAgICAgICAgIDwvY3Jvc3NyZWY+DQogICAgICAgIDwvZG9pX3JlY29yZD4NCiAgICAgIDwvcXVlcnk+DQogICAgPC9ib2R5Pg0KICA8L3F1ZXJ5X3Jlc3VsdD4NCjwvY3Jvc3NyZWZfcmVzdWx0Pg==
97
- http_version:
98
- recorded_at: Wed, 09 Jun 2021 12:56:52 GMT
99
- recorded_with: VCR 3.0.3