commonmeta-ruby 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (791) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/build.yml +38 -0
  3. data/.github/workflows/changelog.yml +36 -0
  4. data/.github/workflows/codeql-analysis.yml +72 -0
  5. data/.github/workflows/rubocop.yml +50 -0
  6. data/.gitignore +59 -0
  7. data/.rubocop.yml +182 -0
  8. data/.rubocop_todo.yml +76 -0
  9. data/.tool-versions +1 -0
  10. data/CHANGELOG.md +124 -0
  11. data/CITATION +16 -0
  12. data/CITATION.cff +20 -0
  13. data/Gemfile +5 -0
  14. data/Gemfile.lock +270 -0
  15. data/LICENSE.md +21 -0
  16. data/README.md +733 -0
  17. data/Rakefile +13 -0
  18. data/bin/commonmeta +9 -0
  19. data/commonmeta.gemspec +68 -0
  20. data/lib/commonmeta/array.rb +13 -0
  21. data/lib/commonmeta/author_utils.rb +172 -0
  22. data/lib/commonmeta/cli.rb +70 -0
  23. data/lib/commonmeta/crossref_utils.rb +343 -0
  24. data/lib/commonmeta/doi_utils.rb +81 -0
  25. data/lib/commonmeta/metadata.rb +269 -0
  26. data/lib/commonmeta/metadata_utils.rb +184 -0
  27. data/lib/commonmeta/pubmed.rb +36 -0
  28. data/lib/commonmeta/readers/bibtex_reader.rb +62 -0
  29. data/lib/commonmeta/readers/cff_reader.rb +146 -0
  30. data/lib/commonmeta/readers/codemeta_reader.rb +90 -0
  31. data/lib/commonmeta/readers/crossref_reader.rb +186 -0
  32. data/lib/commonmeta/readers/crossref_xml_reader.rb +379 -0
  33. data/lib/commonmeta/readers/csl_reader.rb +85 -0
  34. data/lib/commonmeta/readers/datacite_reader.rb +169 -0
  35. data/lib/commonmeta/readers/npm_reader.rb +94 -0
  36. data/lib/commonmeta/readers/ris_reader.rb +66 -0
  37. data/lib/commonmeta/readers/schema_org_reader.rb +300 -0
  38. data/lib/commonmeta/schema_utils.rb +19 -0
  39. data/lib/commonmeta/string.rb +7 -0
  40. data/lib/commonmeta/utils.rb +1351 -0
  41. data/lib/commonmeta/version.rb +5 -0
  42. data/lib/commonmeta/whitelist_scrubber.rb +54 -0
  43. data/lib/commonmeta/writers/bibtex_writer.rb +36 -0
  44. data/lib/commonmeta/writers/cff_writer.rb +63 -0
  45. data/lib/commonmeta/writers/citation_writer.rb +14 -0
  46. data/lib/commonmeta/writers/codemeta_writer.rb +33 -0
  47. data/lib/commonmeta/writers/crossref_xml_writer.rb +11 -0
  48. data/lib/commonmeta/writers/csl_writer.rb +11 -0
  49. data/lib/commonmeta/writers/csv_writer.rb +26 -0
  50. data/lib/commonmeta/writers/datacite_writer.rb +94 -0
  51. data/lib/commonmeta/writers/jats_writer.rb +138 -0
  52. data/lib/commonmeta/writers/rdf_xml_writer.rb +11 -0
  53. data/lib/commonmeta/writers/ris_writer.rb +41 -0
  54. data/lib/commonmeta/writers/schema_org_writer.rb +61 -0
  55. data/lib/commonmeta/writers/turtle_writer.rb +11 -0
  56. data/lib/commonmeta/xml_converter.rb +14 -0
  57. data/lib/commonmeta.rb +35 -0
  58. data/resources/2008/09/xsd.xsl +997 -0
  59. data/resources/cff.json +1827 -0
  60. data/resources/commonmeta_v0.9.json +393 -0
  61. data/resources/crossref/AccessIndicators.xsd +47 -0
  62. data/resources/crossref/JATS-journalpublishing1-3d2-mathml3-elements.xsd +10130 -0
  63. data/resources/crossref/JATS-journalpublishing1-3d2-mathml3.xsd +48 -0
  64. data/resources/crossref/JATS-journalpublishing1-elements.xsd +8705 -0
  65. data/resources/crossref/JATS-journalpublishing1-mathml3-elements.xsd +8608 -0
  66. data/resources/crossref/JATS-journalpublishing1-mathml3.xsd +49 -0
  67. data/resources/crossref/JATS-journalpublishing1.xsd +6176 -0
  68. data/resources/crossref/clinicaltrials.xsd +61 -0
  69. data/resources/crossref/common5.3.1.xsd +1530 -0
  70. data/resources/crossref/crossref5.3.1.xsd +1949 -0
  71. data/resources/crossref/crossref_query_output3.0.xsd +1097 -0
  72. data/resources/crossref/fundref.xsd +49 -0
  73. data/resources/crossref/module-ali.xsd +39 -0
  74. data/resources/crossref/relations.xsd +444 -0
  75. data/resources/datacite-contributorType-v4.xsd +35 -0
  76. data/resources/datacite-dateType-v4.xsd +25 -0
  77. data/resources/datacite-descriptionType-v4.xsd +19 -0
  78. data/resources/datacite-funderIdentifierType-v4.xsd +15 -0
  79. data/resources/datacite-nameType-v4.xsd +10 -0
  80. data/resources/datacite-relatedIdentifierType-v4.xsd +34 -0
  81. data/resources/datacite-relationType-v4.xsd +49 -0
  82. data/resources/datacite-resourceType-v4.xsd +28 -0
  83. data/resources/datacite-titleType-v4.xsd +14 -0
  84. data/resources/datacite-v3.json +508 -0
  85. data/resources/datacite-v4.json +512 -0
  86. data/resources/kernel-3.0/include/datacite-contributorType-v3.xsd +33 -0
  87. data/resources/kernel-3.0/include/datacite-dateType-v3.xsd +21 -0
  88. data/resources/kernel-3.0/include/datacite-descriptionType-v3.xsd +17 -0
  89. data/resources/kernel-3.0/include/datacite-relatedIdentifierType-v3.xsd +27 -0
  90. data/resources/kernel-3.0/include/datacite-relationType-v3.xsd +33 -0
  91. data/resources/kernel-3.0/include/datacite-resourceType-v3.xsd +26 -0
  92. data/resources/kernel-3.0/include/datacite-titleType-v3.xsd +12 -0
  93. data/resources/kernel-3.0/include/xml.xsd +286 -0
  94. data/resources/kernel-3.0/metadata.xsd +377 -0
  95. data/resources/kernel-4/include/datacite-contributorType-v4.xsd +35 -0
  96. data/resources/kernel-4/include/datacite-dateType-v4.xsd +25 -0
  97. data/resources/kernel-4/include/datacite-descriptionType-v4.xsd +19 -0
  98. data/resources/kernel-4/include/datacite-funderIdentifierType-v4.xsd +16 -0
  99. data/resources/kernel-4/include/datacite-nameType-v4.xsd +10 -0
  100. data/resources/kernel-4/include/datacite-numberType-v4.xsd +12 -0
  101. data/resources/kernel-4/include/datacite-relatedIdentifierType-v4.xsd +34 -0
  102. data/resources/kernel-4/include/datacite-relationType-v4.xsd +51 -0
  103. data/resources/kernel-4/include/datacite-resourceType-v4.xsd +43 -0
  104. data/resources/kernel-4/include/datacite-titleType-v4.xsd +14 -0
  105. data/resources/kernel-4/include/xml.xsd +286 -0
  106. data/resources/kernel-4/metadata.xsd +707 -0
  107. data/resources/oecd/dfg-mappings.json +1866 -0
  108. data/resources/oecd/for-mappings.json +1099 -0
  109. data/resources/oecd/fos-mappings.json +198 -0
  110. data/resources/schema_org/jsonldcontext.json +7477 -0
  111. data/resources/spdx/licenses.json +5297 -0
  112. data/resources/xml.xsd +286 -0
  113. data/rubocop.sarif +0 -0
  114. data/sonar-project.properties +11 -0
  115. data/spec/array_spec.rb +22 -0
  116. data/spec/author_utils_spec.rb +132 -0
  117. data/spec/cli_spec.rb +309 -0
  118. data/spec/doi_utils_spec.rb +318 -0
  119. data/spec/find_from_format_spec.rb +144 -0
  120. data/spec/fixtures/CITATION.cff +83 -0
  121. data/spec/fixtures/aida.json +82 -0
  122. data/spec/fixtures/cgimp_package.json +18 -0
  123. data/spec/fixtures/cit_package.json +19 -0
  124. data/spec/fixtures/citeproc-no-author.json +26 -0
  125. data/spec/fixtures/citeproc-no-categories.json +21 -0
  126. data/spec/fixtures/citeproc.json +30 -0
  127. data/spec/fixtures/codemeta.json +86 -0
  128. data/spec/fixtures/codemeta_v2.json +86 -0
  129. data/spec/fixtures/crosscite.json +63 -0
  130. data/spec/fixtures/crossref.bib +14 -0
  131. data/spec/fixtures/crossref.json +572 -0
  132. data/spec/fixtures/crossref.ris +15 -0
  133. data/spec/fixtures/crossref.xml +606 -0
  134. data/spec/fixtures/datacite.json +86 -0
  135. data/spec/fixtures/datacite_software.json +21 -0
  136. data/spec/fixtures/datacite_software_missing_comma.json +18 -0
  137. data/spec/fixtures/datacite_software_overlapping_keys.json +18 -0
  138. data/spec/fixtures/datacite_software_version.json +74 -0
  139. data/spec/fixtures/edam_package.json +12 -0
  140. data/spec/fixtures/maremma/codemeta.json +36 -0
  141. data/spec/fixtures/pure.bib +14 -0
  142. data/spec/fixtures/pure.ris +15 -0
  143. data/spec/fixtures/pure.xml +188 -0
  144. data/spec/fixtures/ris_bug.ris +9 -0
  145. data/spec/fixtures/schema_4.0.xml +140 -0
  146. data/spec/fixtures/schema_org.json +49 -0
  147. data/spec/fixtures/schema_org_front-matter.json +32 -0
  148. data/spec/fixtures/schema_org_geolocation.json +82 -0
  149. data/spec/fixtures/schema_org_geoshape.json +550 -0
  150. data/spec/fixtures/schema_org_gtex.json +75 -0
  151. data/spec/fixtures/schema_org_list.json +12623 -0
  152. data/spec/fixtures/schema_org_tdl_iodp_invalid_authors.json +25 -0
  153. data/spec/fixtures/schema_org_topmed.json +53 -0
  154. data/spec/fixtures/schema_org_type_as_array.json +41 -0
  155. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref/default.yml +110 -0
  156. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref/to_bibtex.yml +110 -0
  157. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref/to_crossref_xml.yml +110 -0
  158. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref/to_datacite.yml +110 -0
  159. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref/to_schema_org.yml +110 -0
  160. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_xml/default.yml +55 -0
  161. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_xml/to_bibtex.yml +55 -0
  162. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_xml/to_crossref_xml.yml +55 -0
  163. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_xml/to_datacite.yml +55 -0
  164. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_xml/to_schema_org.yml +55 -0
  165. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/default.yml +299 -0
  166. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_bibtex.yml +299 -0
  167. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_citation.yml +299 -0
  168. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_crossref_xml.yml +299 -0
  169. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_datacite.yml +299 -0
  170. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_jats.yml +299 -0
  171. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_schema_org.yml +299 -0
  172. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/default.yml +172 -0
  173. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_bibtex.yml +172 -0
  174. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_citation.yml +172 -0
  175. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_datacite.yml +172 -0
  176. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_jats.yml +172 -0
  177. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_schema_org.yml +172 -0
  178. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/default.yml +1098 -0
  179. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/to_datacite.yml +1098 -0
  180. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/to_schema_org.yml +1100 -0
  181. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/crossref.yml +55 -0
  182. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/datacite.yml +55 -0
  183. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/jalc.yml +55 -0
  184. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/kisti.yml +55 -0
  185. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/medra.yml +55 -0
  186. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/op.yml +55 -0
  187. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/author.yml +164 -0
  188. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/no_author.yml +164 -0
  189. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/single_author.yml +164 -0
  190. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/with_organization.yml +164 -0
  191. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +247 -0
  192. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/crossref.yml +55 -0
  193. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/datacite.yml +55 -0
  194. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/jalc.yml +55 -0
  195. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/kisti.yml +55 -0
  196. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/medra.yml +55 -0
  197. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/not_found.yml +55 -0
  198. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/op.yml +55 -0
  199. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/crossref.yml +55 -0
  200. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +55 -0
  201. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/datacite.yml +55 -0
  202. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/datacite_doi_http.yml +55 -0
  203. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +55 -0
  204. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_match.yml +221 -0
  205. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_with_schemeUri_in_hash.yml +221 -0
  206. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_match.yml +221 -0
  207. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_no_match.yml +221 -0
  208. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_for_match.yml +221 -0
  209. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_match.yml +221 -0
  210. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_no_match.yml +221 -0
  211. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org/with_id.yml +221 -0
  212. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/with_affiliation.yml +221 -0
  213. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/without_affiliation.yml +221 -0
  214. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/cff-converter-python.yml +200 -0
  215. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff.yml +154 -0
  216. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff_repository_url.yml +154 -0
  217. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/maremma.yml +86 -0
  218. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/metadata_reports.yml +93 -0
  219. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +337 -0
  220. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +347 -0
  221. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +359 -0
  222. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/JaLC.yml +384 -0
  223. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/KISTI.yml +330 -0
  224. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/OP.yml +969 -0
  225. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/affiliation_is_space.yml +358 -0
  226. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/another_book.yml +312 -0
  227. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/another_book_chapter.yml +465 -0
  228. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/article_id_as_page_number.yml +276 -0
  229. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/author_literal.yml +492 -0
  230. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book.yml +523 -0
  231. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_chapter.yml +377 -0
  232. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_chapter_with_RDF_for_container.yml +336 -0
  233. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_oup.yml +289 -0
  234. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/component.yml +289 -0
  235. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dataset.yml +299 -0
  236. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dataset_usda.yml +341 -0
  237. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/date_in_future.yml +570 -0
  238. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dissertation.yml +301 -0
  239. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/empty_given_name.yml +303 -0
  240. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/invalid_date.yml +307 -0
  241. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article.yml +461 -0
  242. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_original_language_title.yml +276 -0
  243. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with.yml +470 -0
  244. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with_RDF_for_container.yml +519 -0
  245. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with_funding.yml +456 -0
  246. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_issue.yml +270 -0
  247. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/mEDRA.yml +310 -0
  248. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/markup.yml +329 -0
  249. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/missing_creator.yml +307 -0
  250. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_issn.yml +393 -0
  251. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_titles.yml +265 -0
  252. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_titles_with_missing.yml +860 -0
  253. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/not_found_error.yml +209 -0
  254. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/peer_review.yml +287 -0
  255. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/posted_content.yml +326 -0
  256. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/posted_content_copernicus.yml +297 -0
  257. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/report_osti.yml +315 -0
  258. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/vor_with_url.yml +451 -0
  259. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/yet_another_book.yml +816 -0
  260. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/yet_another_book_chapter.yml +324 -0
  261. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_raw/journal_article.yml +110 -0
  262. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/dissertation.yml +152 -0
  263. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/funding_references.yml +175 -0
  264. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/subject_scheme.yml +328 -0
  265. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date/publication_date.yml +221 -0
  266. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/date.yml +221 -0
  267. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/year-month.yml +221 -0
  268. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/year.yml +221 -0
  269. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/date.yml +221 -0
  270. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/year-month.yml +221 -0
  271. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/year.yml +221 -0
  272. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/date.yml +221 -0
  273. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/year-month.yml +221 -0
  274. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/year.yml +221 -0
  275. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/future.yml +221 -0
  276. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/invalid.yml +221 -0
  277. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/nil.yml +221 -0
  278. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/past.yml +221 -0
  279. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/present.yml +221 -0
  280. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_familyName.yml +133 -0
  281. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +153 -0
  282. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/is_organization.yml +164 -0
  283. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation_crossref.yml +247 -0
  284. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/only_familyName_and_givenName.yml +468 -0
  285. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting.yml +530 -0
  286. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +530 -0
  287. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/get_schema_org_metadata_front_matter/BlogPosting.yml +534 -0
  288. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/harvard_dataverse.yml +1838 -0
  289. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/pangaea.yml +468 -0
  290. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/upstream_blog.yml +885 -0
  291. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/zenodo.yml +583 -0
  292. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/only_title.yml +221 -0
  293. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_and_pages.yml +221 -0
  294. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_and_pages.yml +221 -0
  295. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_issue_and_pages.yml +221 -0
  296. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_cff_url.yml +221 -0
  297. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_codemeta_url.yml +221 -0
  298. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url.yml +221 -0
  299. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_cff_file.yml +221 -0
  300. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_file.yml +221 -0
  301. data/spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +55 -0
  302. data/spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/unknown_DOI_prefix.yml +55 -0
  303. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_comma.yml +164 -0
  304. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_family_name.yml +164 -0
  305. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_id.yml +164 -0
  306. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_known_given_name.yml +164 -0
  307. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_no_info.yml +164 -0
  308. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_orcid_id.yml +164 -0
  309. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_type_organization.yml +164 -0
  310. data/spec/fixtures/vcr_cassettes/Briard_Metadata/json_schema_errors/is_valid.yml +221 -0
  311. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/not_found.yml +221 -0
  312. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/with_trailing_slash.yml +221 -0
  313. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/with_trailing_slash_and_to_https.yml +221 -0
  314. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi.yml +221 -0
  315. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi_as_url.yml +221 -0
  316. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/filename.yml +221 -0
  317. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/ftp.yml +221 -0
  318. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/invalid_url.yml +221 -0
  319. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/sandbox_via_options.yml +221 -0
  320. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/sandbox_via_url.yml +221 -0
  321. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/string.yml +221 -0
  322. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/url.yml +221 -0
  323. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/url_with_utf-8.yml +221 -0
  324. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_ids/doi.yml +221 -0
  325. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_ids/url.yml +221 -0
  326. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_array.yml +221 -0
  327. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_empty_array.yml +221 -0
  328. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_hash.yml +221 -0
  329. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_string.yml +221 -0
  330. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/uri.yml +221 -0
  331. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/with_trailing_slash.yml +221 -0
  332. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/with_trailing_slash_and_to_https.yml +221 -0
  333. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/array.yml +221 -0
  334. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/array_of_strings.yml +221 -0
  335. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/first.yml +221 -0
  336. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/hash.yml +221 -0
  337. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/hash_with_array_value.yml +221 -0
  338. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/nil.yml +221 -0
  339. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/string.yml +221 -0
  340. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_anothe_doi.yml +221 -0
  341. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_doi.yml +221 -0
  342. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/encode_doi.yml +221 -0
  343. data/spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/onlies_keep_specific_tags.yml +221 -0
  344. data/spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/removes_a_tags.yml +221 -0
  345. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_id.yml +221 -0
  346. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_not_found.yml +221 -0
  347. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_url.yml +221 -0
  348. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/name_to_spdx_exists.yml +221 -0
  349. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/name_to_spdx_id.yml +221 -0
  350. data/spec/fixtures/vcr_cassettes/Briard_Metadata/to_schema_org/with_id.yml +221 -0
  351. data/spec/fixtures/vcr_cassettes/Briard_Metadata/to_schema_org_identifiers/with_identifiers.yml +221 -0
  352. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid.yml +221 -0
  353. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_https.yml +221 -0
  354. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_id.yml +221 -0
  355. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_sandbox.yml +221 -0
  356. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_sandbox_https.yml +221 -0
  357. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_with_spaces.yml +221 -0
  358. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_wrong_id.yml +221 -0
  359. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_www.yml +221 -0
  360. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +221 -0
  361. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +221 -0
  362. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +221 -0
  363. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +221 -0
  364. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/DOI.yml +221 -0
  365. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/ISSN.yml +221 -0
  366. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/URL.yml +221 -0
  367. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/string.yml +221 -0
  368. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/BlogPosting.yml +81 -0
  369. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/Dataset.yml +120 -0
  370. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +186 -0
  371. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/climate_data.yml +74 -0
  372. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/from_schema_org.yml +530 -0
  373. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/keywords_subject_scheme.yml +149 -0
  374. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/maremma.yml +86 -0
  375. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/text.yml +100 -0
  376. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_data_citation.yml +247 -0
  377. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_pages.yml +228 -0
  378. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/Collection_of_Jupyter_notebooks.yml +143 -0
  379. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_Zenodo.yml +150 -0
  380. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_also_Zenodo.yml +93 -0
  381. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/ruby-cff.yml +154 -0
  382. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Dataset.yml +120 -0
  383. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article.yml +247 -0
  384. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +299 -0
  385. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Missing_author.yml +199 -0
  386. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +75 -0
  387. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/software_w/version.yml +86 -0
  388. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +76 -0
  389. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite_check_codemeta_v2.yml +76 -0
  390. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/another_schema_org_from_front-matter.yml +541 -0
  391. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/journal_article.yml +55 -0
  392. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/journal_article_from_datacite.yml +85 -0
  393. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/posted_content.yml +283 -0
  394. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_another_science_blog.yml +123 -0
  395. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_front_matter.yml +477 -0
  396. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_upstream_blog.yml +1025 -0
  397. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/Another_dataset.yml +110 -0
  398. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/BlogPosting.yml +81 -0
  399. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/BlogPosting_schema_org.yml +530 -0
  400. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/Dataset.yml +120 -0
  401. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/container_title.yml +153 -0
  402. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/interactive_resource_without_dates.yml +75 -0
  403. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/journal_article.yml +247 -0
  404. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/keywords_subject_scheme.yml +149 -0
  405. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/maremma.yml +86 -0
  406. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/missing_creator.yml +199 -0
  407. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/multiple_abstracts.yml +101 -0
  408. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/organization_author.yml +314 -0
  409. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/software.yml +90 -0
  410. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/software_w/version.yml +86 -0
  411. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/with_only_first_page.yml +333 -0
  412. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csl/with_pages.yml +228 -0
  413. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/climate_data.yml +74 -0
  414. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/maremma.yml +86 -0
  415. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/text.yml +100 -0
  416. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/with_data_citation.yml +247 -0
  417. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/with_pages.yml +228 -0
  418. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite/from_schema_org.yml +530 -0
  419. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite/maremma.yml +86 -0
  420. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite/with_ORCID_ID.yml +228 -0
  421. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite/with_data_citation.yml +247 -0
  422. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/from_schema_org.yml +530 -0
  423. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/maremma.yml +86 -0
  424. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +228 -0
  425. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +247 -0
  426. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +120 -0
  427. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +106 -0
  428. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/book_chapter.yml +163 -0
  429. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/from_schema_org.yml +530 -0
  430. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +75 -0
  431. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/maremma.yml +86 -0
  432. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +228 -0
  433. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +247 -0
  434. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_editor.yml +355 -0
  435. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/BlogPosting.yml +81 -0
  436. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/BlogPosting_schema_org.yml +530 -0
  437. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/journal_article.yml +247 -0
  438. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/maremma.yml +86 -0
  439. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/with_pages.yml +228 -0
  440. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/BlogPosting.yml +81 -0
  441. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +530 -0
  442. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/Dataset.yml +120 -0
  443. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/alternate_name.yml +138 -0
  444. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/journal_article.yml +115 -0
  445. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/keywords_with_subject_scheme.yml +149 -0
  446. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/maremma.yml +86 -0
  447. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/with_pages.yml +112 -0
  448. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Another_Schema_org_JSON.yml +120 -0
  449. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Funding.yml +192 -0
  450. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +150 -0
  451. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +98 -0
  452. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON_Cyark.yml +160 -0
  453. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +153 -0
  454. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml +131 -0
  455. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/data_catalog.yml +136 -0
  456. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/geo_location_box.yml +181 -0
  457. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +127 -0
  458. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/journal_article.yml +247 -0
  459. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +86 -0
  460. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/series_information.yml +174 -0
  461. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/subject_scheme.yml +199 -0
  462. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml +201 -0
  463. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/BlogPosting.yml +81 -0
  464. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/BlogPosting_schema_org.yml +530 -0
  465. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/Dataset.yml +120 -0
  466. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/journal_article.yml +247 -0
  467. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/with_pages.yml +228 -0
  468. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref/default.yml +110 -0
  469. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref/to_bibtex.yml +110 -0
  470. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref/to_crossref_xml.yml +110 -0
  471. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref/to_datacite.yml +110 -0
  472. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref/to_schema_org.yml +110 -0
  473. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref_xml/default.yml +55 -0
  474. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref_xml/to_bibtex.yml +55 -0
  475. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref_xml/to_crossref_xml.yml +55 -0
  476. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref_xml/to_datacite.yml +55 -0
  477. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_file/crossref_xml/to_schema_org.yml +55 -0
  478. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/default.yml +299 -0
  479. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_bibtex.yml +299 -0
  480. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_citation.yml +299 -0
  481. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_crossref_xml.yml +299 -0
  482. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_datacite.yml +299 -0
  483. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_jats.yml +299 -0
  484. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/crossref/to_schema_org.yml +299 -0
  485. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/default.yml +172 -0
  486. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/to_bibtex.yml +172 -0
  487. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/to_citation.yml +172 -0
  488. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/to_datacite.yml +172 -0
  489. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/to_jats.yml +172 -0
  490. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/datacite/to_schema_org.yml +172 -0
  491. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/schema_org/default.yml +1096 -0
  492. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/schema_org/to_datacite.yml +1096 -0
  493. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/convert_from_id/schema_org/to_schema_org.yml +1098 -0
  494. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/crossref.yml +55 -0
  495. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/datacite.yml +55 -0
  496. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/jalc.yml +55 -0
  497. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/kisti.yml +55 -0
  498. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/medra.yml +55 -0
  499. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/find_from_format_by_id/op.yml +55 -0
  500. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +247 -0
  501. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/crossref.yml +55 -0
  502. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/datacite.yml +55 -0
  503. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/jalc.yml +55 -0
  504. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/kisti.yml +55 -0
  505. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/medra.yml +55 -0
  506. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/not_found.yml +55 -0
  507. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/doi_registration_agency/op.yml +55 -0
  508. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/find_from_format_by_ID/crossref.yml +55 -0
  509. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +55 -0
  510. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/find_from_format_by_ID/datacite.yml +55 -0
  511. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/find_from_format_by_ID/datacite_doi_http.yml +55 -0
  512. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +55 -0
  513. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/hsh_to_fos_for_match.yml +221 -0
  514. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/hsh_to_fos_for_with_schemeUri_in_hash.yml +221 -0
  515. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/hsh_to_fos_match.yml +221 -0
  516. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/hsh_to_fos_no_match.yml +221 -0
  517. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/name_to_fos_for_match.yml +221 -0
  518. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/name_to_fos_match.yml +221 -0
  519. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/fos/name_to_fos_no_match.yml +221 -0
  520. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/from_schema_org/with_id.yml +221 -0
  521. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_cff_metadata/cff-converter-python.yml +200 -0
  522. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_cff_metadata/ruby-cff.yml +154 -0
  523. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_cff_metadata/ruby-cff_repository_url.yml +154 -0
  524. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_codemeta_metadata/maremma.yml +86 -0
  525. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_codemeta_metadata/metadata_reports.yml +93 -0
  526. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +337 -0
  527. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +347 -0
  528. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +170 -0
  529. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/JaLC.yml +384 -0
  530. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/KISTI.yml +330 -0
  531. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/OP.yml +969 -0
  532. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/affiliation_is_space.yml +358 -0
  533. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/another_book.yml +312 -0
  534. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/another_book_chapter.yml +465 -0
  535. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/article_id_as_page_number.yml +276 -0
  536. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/author_literal.yml +492 -0
  537. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/book.yml +523 -0
  538. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/book_chapter.yml +377 -0
  539. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/book_chapter_with_RDF_for_container.yml +336 -0
  540. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/book_oup.yml +289 -0
  541. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/component.yml +289 -0
  542. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/dataset.yml +300 -0
  543. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/dataset_usda.yml +341 -0
  544. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/date_in_future.yml +570 -0
  545. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/dissertation.yml +301 -0
  546. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/empty_given_name.yml +303 -0
  547. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/invalid_date.yml +307 -0
  548. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_article.yml +461 -0
  549. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_article_original_language_title.yml +276 -0
  550. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_article_with.yml +908 -0
  551. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_article_with_RDF_for_container.yml +519 -0
  552. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_article_with_funding.yml +456 -0
  553. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/journal_issue.yml +270 -0
  554. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/mEDRA.yml +310 -0
  555. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/markup.yml +329 -0
  556. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/missing_creator.yml +307 -0
  557. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/multiple_issn.yml +393 -0
  558. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/multiple_titles.yml +265 -0
  559. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/multiple_titles_with_missing.yml +860 -0
  560. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/not_found_error.yml +209 -0
  561. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/peer_review.yml +287 -0
  562. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/posted_content.yml +326 -0
  563. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/posted_content_copernicus.yml +297 -0
  564. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/report_osti.yml +315 -0
  565. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/vor_with_url.yml +451 -0
  566. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/yet_another_book.yml +816 -0
  567. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/yet_another_book_chapter.yml +324 -0
  568. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_raw/journal_article.yml +110 -0
  569. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datacite_metadata/dissertation.yml +152 -0
  570. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datacite_metadata/funding_references.yml +175 -0
  571. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datacite_metadata/subject_scheme.yml +328 -0
  572. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date/publication_date.yml +221 -0
  573. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_date_parts/date.yml +221 -0
  574. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_date_parts/year-month.yml +221 -0
  575. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_date_parts/year.yml +221 -0
  576. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_parts/date.yml +221 -0
  577. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_parts/year-month.yml +221 -0
  578. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_from_parts/year.yml +221 -0
  579. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_parts/date.yml +221 -0
  580. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_parts/year-month.yml +221 -0
  581. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_date_parts/year.yml +221 -0
  582. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datetime_from_time/future.yml +221 -0
  583. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datetime_from_time/invalid.yml +221 -0
  584. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datetime_from_time/nil.yml +221 -0
  585. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datetime_from_time/past.yml +221 -0
  586. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datetime_from_time/present.yml +221 -0
  587. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_one_author/has_familyName.yml +133 -0
  588. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +153 -0
  589. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_one_author/name_with_affiliation_crossref.yml +247 -0
  590. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_one_author/only_familyName_and_givenName.yml +467 -0
  591. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/BlogPosting.yml +530 -0
  592. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +530 -0
  593. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/get_schema_org_metadata_front_matter/BlogPosting.yml +534 -0
  594. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/harvard_dataverse.yml +1838 -0
  595. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/pangaea.yml +467 -0
  596. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/upstream_blog.yml +885 -0
  597. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_schema_org_metadata/zenodo.yml +583 -0
  598. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_series_information/only_title.yml +221 -0
  599. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_series_information/title_and_pages.yml +221 -0
  600. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_series_information/title_volume_and_pages.yml +221 -0
  601. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_series_information/title_volume_issue_and_pages.yml +221 -0
  602. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/github/github_as_cff_url.yml +221 -0
  603. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/github/github_as_codemeta_url.yml +221 -0
  604. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/github/github_from_url.yml +221 -0
  605. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/github/github_from_url_cff_file.yml +221 -0
  606. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/github/github_from_url_file.yml +221 -0
  607. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +55 -0
  608. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/handle_input/unknown_DOI_prefix.yml +55 -0
  609. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/json_schema_errors/is_valid.yml +221 -0
  610. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_cc_url/not_found.yml +221 -0
  611. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_cc_url/with_trailing_slash.yml +221 -0
  612. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_cc_url/with_trailing_slash_and_to_https.yml +221 -0
  613. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/doi.yml +221 -0
  614. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/doi_as_url.yml +221 -0
  615. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/filename.yml +221 -0
  616. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/ftp.yml +221 -0
  617. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/invalid_url.yml +221 -0
  618. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/sandbox_via_options.yml +221 -0
  619. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/sandbox_via_url.yml +221 -0
  620. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/string.yml +221 -0
  621. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/url.yml +221 -0
  622. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_id/url_with_utf-8.yml +221 -0
  623. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_issn/from_array.yml +221 -0
  624. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_issn/from_empty_array.yml +221 -0
  625. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_issn/from_hash.yml +221 -0
  626. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_issn/from_string.yml +221 -0
  627. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_url/uri.yml +221 -0
  628. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_url/with_trailing_slash.yml +221 -0
  629. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/normalize_url/with_trailing_slash_and_to_https.yml +221 -0
  630. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/array.yml +221 -0
  631. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/array_of_strings.yml +221 -0
  632. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/first.yml +221 -0
  633. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/hash.yml +221 -0
  634. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/hash_with_array_value.yml +221 -0
  635. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/nil.yml +221 -0
  636. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/parse_attributes/string.yml +221 -0
  637. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/random_doi/decode_anothe_doi.yml +221 -0
  638. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/random_doi/decode_doi.yml +221 -0
  639. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/random_doi/encode_doi.yml +221 -0
  640. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/sanitize/onlies_keep_specific_tags.yml +221 -0
  641. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/sanitize/removes_a_tags.yml +221 -0
  642. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/spdx/hsh_to_spdx_id.yml +221 -0
  643. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/spdx/hsh_to_spdx_not_found.yml +221 -0
  644. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/spdx/hsh_to_spdx_url.yml +221 -0
  645. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/spdx/name_to_spdx_exists.yml +221 -0
  646. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/spdx/name_to_spdx_id.yml +221 -0
  647. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/to_schema_org/with_id.yml +221 -0
  648. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/to_schema_org_identifiers/with_identifiers.yml +221 -0
  649. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid.yml +221 -0
  650. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_https.yml +221 -0
  651. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_id.yml +221 -0
  652. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_sandbox.yml +221 -0
  653. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_sandbox_https.yml +221 -0
  654. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_with_spaces.yml +221 -0
  655. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_wrong_id.yml +221 -0
  656. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid/validate_orcid_www.yml +221 -0
  657. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +221 -0
  658. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +221 -0
  659. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +221 -0
  660. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +221 -0
  661. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_url/DOI.yml +221 -0
  662. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_url/ISSN.yml +221 -0
  663. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_url/URL.yml +221 -0
  664. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/validate_url/string.yml +221 -0
  665. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/BlogPosting.yml +81 -0
  666. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/Dataset.yml +120 -0
  667. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +186 -0
  668. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/climate_data.yml +74 -0
  669. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/from_schema_org.yml +530 -0
  670. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/keywords_subject_scheme.yml +149 -0
  671. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/maremma.yml +86 -0
  672. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/text.yml +100 -0
  673. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/with_data_citation.yml +247 -0
  674. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_bibtex/with_pages.yml +228 -0
  675. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_cff/Collection_of_Jupyter_notebooks.yml +143 -0
  676. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_cff/SoftwareSourceCode_Zenodo.yml +150 -0
  677. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_cff/SoftwareSourceCode_also_Zenodo.yml +93 -0
  678. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_cff/ruby-cff.yml +154 -0
  679. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/Dataset.yml +120 -0
  680. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/Journal_article.yml +247 -0
  681. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +299 -0
  682. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/Missing_author.yml +199 -0
  683. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +75 -0
  684. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_citation/software_w/version.yml +86 -0
  685. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +76 -0
  686. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite_check_codemeta_v2.yml +76 -0
  687. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/another_schema_org_from_front-matter.yml +541 -0
  688. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/journal_article.yml +55 -0
  689. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/journal_article_from_datacite.yml +85 -0
  690. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/posted_content.yml +283 -0
  691. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/schema_org_from_another_science_blog.yml +123 -0
  692. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/schema_org_from_front_matter.yml +477 -0
  693. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/schema_org_from_upstream_blog.yml +1025 -0
  694. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/Another_dataset.yml +110 -0
  695. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/BlogPosting.yml +81 -0
  696. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/BlogPosting_schema_org.yml +530 -0
  697. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/Dataset.yml +120 -0
  698. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/container_title.yml +153 -0
  699. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/interactive_resource_without_dates.yml +75 -0
  700. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/journal_article.yml +247 -0
  701. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/keywords_subject_scheme.yml +149 -0
  702. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/maremma.yml +86 -0
  703. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/missing_creator.yml +199 -0
  704. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/multiple_abstracts.yml +101 -0
  705. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/organization_author.yml +314 -0
  706. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/software.yml +90 -0
  707. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/software_w/version.yml +86 -0
  708. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/with_only_first_page.yml +333 -0
  709. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csl/with_pages.yml +228 -0
  710. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csv/climate_data.yml +74 -0
  711. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csv/maremma.yml +86 -0
  712. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csv/text.yml +100 -0
  713. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csv/with_data_citation.yml +247 -0
  714. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_csv/with_pages.yml +228 -0
  715. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/dissertation.yml +218 -0
  716. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/from_schema_org.yml +530 -0
  717. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/journal_article.yml +407 -0
  718. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/maremma.yml +86 -0
  719. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/with_ORCID_ID.yml +228 -0
  720. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_datacite/with_data_citation.yml +247 -0
  721. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +120 -0
  722. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +106 -0
  723. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/book_chapter.yml +163 -0
  724. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/from_schema_org.yml +530 -0
  725. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +75 -0
  726. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/maremma.yml +86 -0
  727. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +228 -0
  728. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +247 -0
  729. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_jats_xml/with_editor.yml +355 -0
  730. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_rdf_xml/BlogPosting.yml +81 -0
  731. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_rdf_xml/BlogPosting_schema_org.yml +530 -0
  732. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_rdf_xml/journal_article.yml +247 -0
  733. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_rdf_xml/maremma.yml +86 -0
  734. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_rdf_xml/with_pages.yml +228 -0
  735. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/BlogPosting.yml +81 -0
  736. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +530 -0
  737. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/Dataset.yml +120 -0
  738. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/alternate_name.yml +138 -0
  739. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/journal_article.yml +115 -0
  740. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/keywords_with_subject_scheme.yml +149 -0
  741. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/maremma.yml +86 -0
  742. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_ris/with_pages.yml +112 -0
  743. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Another_Schema_org_JSON.yml +120 -0
  744. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Funding.yml +192 -0
  745. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +150 -0
  746. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +98 -0
  747. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Schema_org_JSON_Cyark.yml +160 -0
  748. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +153 -0
  749. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml +131 -0
  750. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/data_catalog.yml +136 -0
  751. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/geo_location_box.yml +181 -0
  752. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +127 -0
  753. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/journal_article.yml +247 -0
  754. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +86 -0
  755. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/series_information.yml +174 -0
  756. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/subject_scheme.yml +199 -0
  757. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml +201 -0
  758. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_turtle/BlogPosting.yml +81 -0
  759. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_turtle/BlogPosting_schema_org.yml +530 -0
  760. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_turtle/Dataset.yml +120 -0
  761. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_turtle/journal_article.yml +247 -0
  762. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_turtle/with_pages.yml +228 -0
  763. data/spec/fixtures/vivli.xml +17 -0
  764. data/spec/metadata_spec.rb +147 -0
  765. data/spec/readers/bibtex_reader_spec.rb +58 -0
  766. data/spec/readers/cff_reader_spec.rb +148 -0
  767. data/spec/readers/codemeta_reader_spec.rb +116 -0
  768. data/spec/readers/crossref_reader_spec.rb +919 -0
  769. data/spec/readers/crossref_xml_reader_spec.rb +948 -0
  770. data/spec/readers/csl_reader_spec.rb +61 -0
  771. data/spec/readers/datacite_reader_spec.rb +156 -0
  772. data/spec/readers/npm_reader_spec.rb +69 -0
  773. data/spec/readers/ris_reader_spec.rb +70 -0
  774. data/spec/readers/schema_org_reader_spec.rb +416 -0
  775. data/spec/schema_utils_spec.rb +16 -0
  776. data/spec/spec_helper.rb +96 -0
  777. data/spec/utils_spec.rb +631 -0
  778. data/spec/writers/bibtex_writer_spec.rb +160 -0
  779. data/spec/writers/cff_writer_spec.rb +118 -0
  780. data/spec/writers/citation_writer_spec.rb +51 -0
  781. data/spec/writers/codemeta_writer_spec.rb +47 -0
  782. data/spec/writers/crossref_xml_writer_spec.rb +173 -0
  783. data/spec/writers/csl_writer_spec.rb +291 -0
  784. data/spec/writers/csv_writer_spec.rb +82 -0
  785. data/spec/writers/datacite_writer_spec.rb +150 -0
  786. data/spec/writers/jats_writer_spec.rb +210 -0
  787. data/spec/writers/rdf_xml_writer_spec.rb +91 -0
  788. data/spec/writers/ris_writer_spec.rb +206 -0
  789. data/spec/writers/schema_org_writer_spec.rb +301 -0
  790. data/spec/writers/turtle_writer_spec.rb +85 -0
  791. metadata +1514 -0
@@ -0,0 +1,519 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1163/1937240x-00002096/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Connection:
11
+ - close
12
+ Host:
13
+ - api.crossref.org
14
+ User-Agent:
15
+ - http.rb/5.1.1
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sun, 19 Mar 2023 17:37:14 GMT
23
+ Transfer-Encoding:
24
+ - chunked
25
+ Link:
26
+ - <http://dx.doi.org/10.1163/1937240x-00002096>; rel="canonical", <http://academic.oup.com/jcb/article-pdf/32/6/949/10336473/jcb0949.pdf>;
27
+ version="vor"; rel="item"
28
+ Access-Control-Expose-Headers:
29
+ - Link
30
+ Access-Control-Allow-Headers:
31
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
32
+ Accept-Ranges, Cache-Control
33
+ Access-Control-Allow-Origin:
34
+ - "*"
35
+ Server:
36
+ - Jetty(9.4.40.v20210413)
37
+ X-Ratelimit-Limit:
38
+ - '50'
39
+ X-Ratelimit-Interval:
40
+ - 1s
41
+ X-Api-Pool:
42
+ - public
43
+ X-Rate-Limit-Limit:
44
+ - '50'
45
+ X-Rate-Limit-Interval:
46
+ - 1s
47
+ Permissions-Policy:
48
+ - interest-cohort=()
49
+ Connection:
50
+ - close
51
+ body:
52
+ encoding: ASCII-8BIT
53
+ string: !binary |-
54
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0iam91cm5hbF9hcnRpY2xlIj4xMC4xMTYzLzE5MzcyNDBYLTAwMDAyMDk2PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5PeGZvcmQgVW5pdmVyc2l0eSBQcmVzcyAoT1VQKTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwcmVmaXgtbmFtZSIgdHlwZT0ic3RyaW5nIj5PeGZvcmQgVW5pdmVyc2l0eSBQcmVzczwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+Mjg2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjU4Njg0NDczPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImpvdXJuYWwtaWQiIHR5cGU9Im51bWJlciI+NTU3MDE8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iZGVwb3NpdC10aW1lc3RhbXAiIHR5cGU9Im51bWJlciI+MjAxNTA5MjUxMTI0MzgwMDAwPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMDkzPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDE5LTA3LTA1VDE2OjUzOjEwWjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDEyLTExLTIwVDEzOjIyOjQ5WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjE4PC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxqb3VybmFsPg0KICAgICAgICAgICAgICA8am91cm5hbF9tZXRhZGF0YSBsYW5ndWFnZT0iZW4iPg0KICAgICAgICAgICAgICAgIDxmdWxsX3RpdGxlIHhtbG5zOmZvYWY9Imh0dHA6Ly94bWxucy5jb20vZm9hZi8wLjEvIiB4bWxuczpyZGZzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzAxL3JkZi1zY2hlbWEjIj5Kb3VybmFsIG9mIENydXN0YWNlYW4gQmlvbG9neTwvZnVsbF90aXRsZT4NCiAgICAgICAgICAgICAgICA8aXNzbiB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyIgbWVkaWFfdHlwZT0icHJpbnQiPjAyNzgtMDM3MjwvaXNzbj4NCiAgICAgICAgICAgICAgICA8aXNzbiB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyIgbWVkaWFfdHlwZT0iZWxlY3Ryb25pYyI+MTkzNy0yNDBYPC9pc3NuPg0KICAgICAgICAgICAgICA8L2pvdXJuYWxfbWV0YWRhdGE+DQogICAgICAgICAgICAgIDxqb3VybmFsX2lzc3VlPg0KICAgICAgICAgICAgICAgIDxwdWJsaWNhdGlvbl9kYXRlIHhtbG5zOmZvYWY9Imh0dHA6Ly94bWxucy5jb20vZm9hZi8wLjEvIiB4bWxuczpyZGZzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzAxL3JkZi1zY2hlbWEjIiBtZWRpYV90eXBlPSJwcmludCI+DQogICAgICAgICAgICAgICAgICA8bW9udGg+MDE8L21vbnRoPg0KICAgICAgICAgICAgICAgICAgPGRheT4wMTwvZGF5Pg0KICAgICAgICAgICAgICAgICAgPHllYXI+MjAxMjwveWVhcj4NCiAgICAgICAgICAgICAgICA8L3B1YmxpY2F0aW9uX2RhdGU+DQogICAgICAgICAgICAgICAgPGpvdXJuYWxfdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgPHZvbHVtZSB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyI+MzI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICA8L2pvdXJuYWxfdm9sdW1lPg0KICAgICAgICAgICAgICAgIDxpc3N1ZSB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyI+NjwvaXNzdWU+DQogICAgICAgICAgICAgIDwvam91cm5hbF9pc3N1ZT4NCiAgICAgICAgICAgICAgPGpvdXJuYWxfYXJ0aWNsZSBwdWJsaWNhdGlvbl90eXBlPSJmdWxsX3RleHQiPg0KICAgICAgICAgICAgICAgIDx0aXRsZXMgeG1sbnM6Zm9hZj0iaHR0cDovL3htbG5zLmNvbS9mb2FmLzAuMS8iIHhtbG5zOnJkZnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDEvcmRmLXNjaGVtYSMiPg0KICAgICAgICAgICAgICAgICAgPHRpdGxlPkdsb2JhbCBkaXN0cmlidXRpb24gb2YgRmFiYWVmb3JtaXNjYW5kb25hIHN1YmFjdXRhOiBhbsKgZXhvdGljwqBpbnZhc2l2ZSBPc3RyYWNvZGEgb24gdGhlIEliZXJpYW4gUGVuaW5zdWxhPzwvdGl0bGU+DQogICAgICAgICAgICAgICAgPC90aXRsZXM+DQogICAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycyB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyI+DQogICAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgc2VxdWVuY2U9ImFkZGl0aW9uYWwiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkZyYW5jZXNjPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgICA8c3VybmFtZT5NZXNxdWl0YS1Kb2FuZXM8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIHNlcXVlbmNlPSJhZGRpdGlvbmFsIiBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5Kb3NlcCBBLjwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+QWd1aWxhci1BbGJlcm9sYTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgc2VxdWVuY2U9ImFkZGl0aW9uYWwiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkV1Z2VuZSBJLjwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+U2Nob3JuaWtvdjwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgc2VxdWVuY2U9ImFkZGl0aW9uYWwiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkp1YW48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPlJ1ZWRhPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iYWRkaXRpb25hbCIgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIj4NCiAgICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+Um9iaW4gSi48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPlNtaXRoPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iZmlyc3QiIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkFuZHJldTwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+RXNjcml2w6A8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIHNlcXVlbmNlPSJhZGRpdGlvbmFsIiBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5UYWthaGlybzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+S2FtaXlhPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBzZXF1ZW5jZT0iYWRkaXRpb25hbCIgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIj4NCiAgICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SXZhbmE8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkthcmFub3ZpYzwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPC9jb250cmlidXRvcnM+DQogICAgICAgICAgICAgICAgPHB1YmxpY2F0aW9uX2RhdGUgeG1sbnM6Zm9hZj0iaHR0cDovL3htbG5zLmNvbS9mb2FmLzAuMS8iIHhtbG5zOnJkZnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDEvcmRmLXNjaGVtYSMiIG1lZGlhX3R5cGU9InByaW50Ij4NCiAgICAgICAgICAgICAgICAgIDxtb250aD4wMTwvbW9udGg+DQogICAgICAgICAgICAgICAgICA8ZGF5PjAxPC9kYXk+DQogICAgICAgICAgICAgICAgICA8eWVhcj4yMDEyPC95ZWFyPg0KICAgICAgICAgICAgICAgIDwvcHVibGljYXRpb25fZGF0ZT4NCiAgICAgICAgICAgICAgICA8cGFnZXMgeG1sbnM6Zm9hZj0iaHR0cDovL3htbG5zLmNvbS9mb2FmLzAuMS8iIHhtbG5zOnJkZnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDEvcmRmLXNjaGVtYSMiPg0KICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+OTQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPGxhc3RfcGFnZT45NjE8L2xhc3RfcGFnZT4NCiAgICAgICAgICAgICAgICA8L3BhZ2VzPg0KICAgICAgICAgICAgICAgIDxkb2lfZGF0YSB4bWxuczpmb2FmPSJodHRwOi8veG1sbnMuY29tL2ZvYWYvMC4xLyIgeG1sbnM6cmRmcz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC8wMS9yZGYtc2NoZW1hIyI+DQogICAgICAgICAgICAgICAgICA8ZG9pPjEwLjExNjMvMTkzNzI0MFgtMDAwMDIwOTY8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwczovL2FjYWRlbWljLm91cC5jb20vamNiL2FydGljbGUtbG9va3VwL2RvaS8xMC4xMTYzLzE5MzcyNDBYLTAwMDAyMDk2PC9yZXNvdXJjZT4NCiAgICAgICAgICAgICAgICAgIDxjb2xsZWN0aW9uIHByb3BlcnR5PSJjcmF3bGVyLWJhc2VkIj4NCiAgICAgICAgICAgICAgICAgICAgPGl0ZW0gY3Jhd2xlcj0iaVBhcmFkaWdtcyI+DQogICAgICAgICAgICAgICAgICAgICAgPHJlc291cmNlPmh0dHA6Ly9hY2FkZW1pYy5vdXAuY29tL2pjYi9hcnRpY2xlLXBkZi8zMi82Lzk0OS8xMDMzNjQ3My9qY2IwOTQ5LnBkZjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgICAgIDwvaXRlbT4NCiAgICAgICAgICAgICAgICAgIDwvY29sbGVjdGlvbj4NCiAgICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbl9saXN0Pg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Sb3pwcmF2eSBDZXNrb3Nsb3ZlbnNrZSBBa2FkZW1pZSBWZWQsIFJhZGEgTWF0ZW1hdGlja3ljaCBBIFByaXJvZG5pY2ggVmVkPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkFic29sb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+NTwvaXNzdWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTc4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RGllIEdhdHR1bmcgQ2FuZG9uYWltIFF1YXJ0YXIgdm9uIEV1cm9wYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPk9lY29sb2dpYSBhcXVhdGljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Bcm1lbmdvbDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Nzg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Mb3MgY3J1c3TDoWNlb3MgZGVsIHBsYW5jdG9uIGRlIGxvcyBlbWJhbHNlcyBlc3Bhw7FvbGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXJjaGl2IGbDvHIgSHlkcm9iaW9sb2dpZS9TdXBwbC48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFsdGFuw6FzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+OTA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NDE5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkEgY29udHJpYnV0aW9uIHRvIHRoZSBrbm93bGVkZ2Ugb2YgY3lwcmlkaWQgb3N0cmFjb2RlIGZhdW5hIChDcnVzdGFjZWEsIE9zdHJhY29kYSwgQ3lwcmlkaWRhZSkgb24gdGhlIEliZXJpYW4gcGVuaW5zdWxhLCBhbmQgYSBjb21wYXJpc29uIHdpdGggYWRqYWNlbnQgYXJlYXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjQiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkxpc3RhIGZhdW7DrXN0aWNhIHkgQmlibGlvZ3LDoWZpY2EgZGUgbG9zIG9zdHLDoWNvZG9zIG5vIG1hcmlub3MgKENydXN0YWNlYSwgT3N0cmFjb2RhKSBkZSBsYSBQZW7DrW5zdWxhIEliw6lyaWNhLCBJc2xhcyBCYWxlYXJlcyBlIElzbGFzIENhbmFyaWFzPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmFsdGFuw6FzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTk2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5MaXN0YXMgZGUgbGEgRmxvcmEgeSBGYXVuYSBkZSBsYXMgQWd1YXMgQ29udGluZW50YWxlcyBkZSBsYSBQZW7DrW5zdWxhIEliw6lyaWNhLCBOwrDCoDEyPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5FdGhvbG9neSBFY29sb2d5IGFuZCBFdm9sdXRpb248L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmVpc2VsPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTkzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDgwLzA4OTI3MDE0LjIwMDEuOTUyMjc4NTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgZWx1c2l2ZSBtb2RlbCBvZiBhIGJpb2xvZ2ljYWwgaW52YXNpb24gcHJvY2VzczogdGltZSB0byB0YWtlIGRpZmZlcmVuY2VzIGFtb25nIGFxdWF0aWMgYW5kIHRlcnJlc3RyaWFsIGVjb3N5c3RlbXMgaW50byBhY2NvdW50PzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubnVhbCBSZXZpZXcgb2YgRWNvbG9neSBhbmQgU3lzdGVtYXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QmlsdG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTU5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwMTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTQ2L2FubnVyZXYuZWNvbHN5cy4zMi4wODE1MDEuMTE0MDE2PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpc3BlcnNhbCBpbiBmcmVzaHdhdGVyIGludmVydGVicmF0ZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjciPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkZyZXNod2F0ZXIgT3N0cmFjb2RhLiBGYXVuYSBvZiB0aGUgVVNTUiwgQ3J1c3RhY2VhPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+QnJvbnNodGVpbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPlZvbC4gSUk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlJ1c3NpYW4gVHJhbnNsYXRpb25zIFNlcmllcyA2NDwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+T2Vjb2xvZ2lhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkPDoWNlcmVzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTMxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQwMjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9zMDA0NDItMDAyLTA4OTctNTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5CbG93aW5nIGluIHRoZSB3aW5kOiBhIGZpZWxkIHRlc3Qgb2Ygb3ZlcmxhbmQgZGlzcGVyc2FsIGFuZCBjb2xvbml6YXRpb24gYnkgYXF1YXRpYyBpbnZlcnRlYnJhdGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Wm9vdGF4YTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5DaGFuZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMxNjE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTE2NDYvem9vdGF4YS4zMTYxLjEuMTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Ob25tYXJpbmUgb3N0cmFjb2RzIChDcnVzdGFjZWEpIGZyb20gU291dGggS29yZWEsIGluY2x1ZGluZyBhIGRlc2NyaXB0aW9uIG9mIGEgbmV3IHNwZWNpZXMgb2YgVGFueWN5cHJpc1RyaWViZWwgKEN5cHJpZGlkYWUsIEN5cHJpY2VyY2luYWUpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkh5ZHJvYmlvbG9naWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Q2hhcG1hbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTYzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvQkYwMDAzOTY3OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BIHJldmlldyBvZiB0aGUgZnJlc2h3YXRlciBvc3RyYWNvZHMgb2YgTmV3IFplYWxhbmQ8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjExIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5BdGxhcyBvZiBBbmltYWxzIGluIENoaW5hLCBDcnVzdGFjZWEsIFN1YmNsYXNzLCBPc3RyYWNvZGE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5DaGVuPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk4MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjEyIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5CaW8taW52YXNpw7NuIGRlbCBNZWppbGzDs24gRG9yYWRvIGVuIGVsIENvbnRpbmVudGUgQW1lcmljYW5vPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+Q29zdGEgRmVybmFuZGVzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFndWEgZGUgbGFzdHJlIGNvbW8gdsOtYSBkZSBpbnRyb2R1Y2Npw7NuIGRlIGVzcGVjaWVzIGEgbml2ZWwgZ2xvYmFsPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMyI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VW5pdGVkIFN0YXRlcyBFeHBsb3JpbmcgRXhwZWRpdGlvbiBEdXJpbmcgdGhlIFllYXJzIDE4MzgsIDE4MzksIDE4NDAsIDE4NDEsIDE4NDIsIFVuZGVyIHRoZSBDb21tYW5kIG9mIENoYXJsZXMgV2lsa2VzLCBVLlMuTi48L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5EYW5hPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Vm9sLsKgMTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4NTI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DcnVzdGFjZWEuIFBhcnQgSTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMTQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5ab29sb2dpc2NoZXIgQW56ZWlnZXI8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RHVib3dza3k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QmVtZXJrdW5nZW4gw7xiZXIgZWluaWdlIE9zdHJhY29kZW4gZGVzIFNld2VybnktRG9uZXR6LUJhc3NpbnM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjE1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UHJvY2VlZGluZ3Mgb2YgdGhlIFpvb2xvZ2ljYWwgU29jaWV0eSBvZiBMb25kb248L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RHVua2VyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzU4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTg1NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk15dGlsYWNlYSBub3ZhIGNvbGxlY3Rpb25pcyBDdW1pbmdpYW5hZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMTYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GcmVzaHdhdGVyIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RWx2aXJhPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTAzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTExL2ouMTM2NS0yNDI3LjE5OTUudGIwMDM5MC54PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk5hdGl2ZSBhbmQgZXhvdGljIGZyZXNod2F0ZXIgZmlzaGVzIGluIFNwYW5pc2ggcml2ZXIgYmFzaW5zPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkpvdXJuYWwgb2YgRmlzaCBCaW9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkVsdmlyYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjMyMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTExMS9qLjEwOTUtODY0OS4yMDAxLnRiMDEzOTMueDwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GcmVzaHdhdGVyIGZpc2ggaW50cm9kdWN0aW9ucyBpbiBTcGFpbjogZmFjdHMgYW5kIGZpZ3VyZXMgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgMjFzdCBjZW50dXJ5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxOCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QmlvZGl2ZXJzaXRhdCBkZWwgWm9vcGzDoG5jdG9uIGkgTWljcm96b29iZW50b3MgYSBsZXMgQWlnw7xlcyBDb250aW5lbnRhbHMgZGUgVmluYXLDsnMgaSBlbCBCYWl4IE1hZXN0cmF0PC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+RXNjcml2w6A8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxOSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZhdW5hIEh1bmdhcmlhZSwgTWFneWFyb3JzesOhZyDDgWxsYXR2aWzDoWdhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZhcmthczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT40LzM8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk1ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkthZ3lsw7NzcsOha29rIChPc3RyYWNvZGEpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyMCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZyZXNod2F0ZXIgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5GaWd1ZXJvbGE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40Nzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT40ODM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNDYvai4xMzY1LTI0MjcuMjAwMi4wMDgyOS54PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpc3BlcnNhbCBvZiBhcXVhdGljIG9yZ2FuaXNtcyBieSB3YXRlcmJpcmRzOiBhIHJldmlldyBvZiBwYXN0IHJlc2VhcmNoIGFuZCBwcmlvcml0aWVzIGZvciBmdXR1cmUgc3R1ZGllczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMjEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BcXVhdGljIFNjaWVuY2VzPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZyaXNjaDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU2ODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9zMDAwMjctMDA3LTA5MTUtMDwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5IaWdoIGRpc3BlcnNhbCBjYXBhY2l0eSBvZiBhIGJyb2FkIHNwZWN0cnVtIG9mIGFxdWF0aWMgaW52ZXJ0ZWJyYXRlcyB2aWEgd2F0ZXJiaXJkczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMjIiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPk5ldW1hcmstR3LDtmJlcm4uIEJlaXRyw6RnZSB6dXIgSmFnZCBkZXMgbWl0dGxlcGFsw6RvbGl0aGlzY2hlbiBNZW5zY2hlbjwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkZ1aHJtYW5uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPlZlcsO2ZmZlbnRsaWNodW5nZW4gZGVzIExhbmRlc211c2V1bXMgZsO8ciBWb3JnZXNjaGljaHRlIDQzPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpZSBBdXNzYWdlIGRlciBPc3RyYWtvZGVuZmF1bmEgenVtIFNlZGltZW50YXRpb25zYWJsYXVmIGltIEludGVyZ2FsemlhbGJlY2tlbiwgenVyIGtsaW1hdGlzY2hlbiBFbnR3aWNrbHVuZyB1bmQgenVyIHN0cmF0aWdyYXBoaXNjaGVuIFN0ZWxsdW5nIGRlcyBJbnRlcmdsYXppYWxzIHZvbiBOZXVtYXJrLU5vcmQgKEdlaXNlbHRhbCk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjIzIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5CaW9sb2dpY2FsIEludmFkZXJzIGluIElubGFuZCBXYXRlcnM6IFByb2ZpbGVzLCBEaXN0cmlidXRpb24gYW5kIFRocmVhdHM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HYXJjw61hLUJlcnRob3U8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTIzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwNzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDA3Lzk3OC0xLTQwMjAtNjAyOS04XzY8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Tm9uLWluZGlnZW5vdXMgYW5pbWFsIHNwZWNpZXMgbmF0dXJhbGl6ZWQgaW4gSWJlcmlhbiBpbmxhbmQgd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyNCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJpb2xvZ2ljYWwgSW52YXNpb25zPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdlaWdlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NDk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvczEwNTMwLTAwNC05NjM1LTg8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW1wYWN0cyBvZiBhbiBpbnRyb2R1Y2VkIENydXN0YWNlYW4gb24gdGhlIHRyb3BoaWMgd2VicyBvZiBNZWRpdGVycmFuZWFuIHdldGxhbmRzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyNSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QmlvbG9naWNhbCBJbnZhZGVycyBpbiBJbmxhbmQgV2F0ZXJzOiBQcm9maWxlcywgRGlzdHJpYnV0aW9uIGFuZCBUaHJlYXRzPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+R2hlcmFyZGk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy85NzgtMS00MDIwLTYwMjktOF8xPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkJpb2xvZ2ljYWwgaW52YXNpb25zIGluIGlubGFuZCB3YXRlcnM6IGFuIG92ZXJ2aWV3PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyNiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlByb2NlZWRpbmdzIG9mIHRoZSBBY2FkZW15IG9mIE5hdHVyYWwgU2NpZW5jZXMgb2YgUGhpbGFkZWxwaGlhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkdpcmFyZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjY8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+ODc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xODUyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSByZXZpc2lvbiBvZiB0aGUgTm9ydGggQW1lcmljYW4gQXN0YWNpLCB3aXRoIG9ic2VydmF0aW9ucyBvbiB0aGVpciBoYWJpdHMgYW5kIGdlb2dyYXBoaWMgZGlzdHJpYnV0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyNyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFjdGEgT2Vjb2xvZ2ljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HcmVlbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE3NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDI8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAxNi9TMTE0Ni02MDlYKDAyKTAxMTQ5LTk8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW1wbGljYXRpb25zIG9mIHdhdGVyYmlyZCBlY29sb2d5IGZvciB0aGUgZGlzcGVyc2FsIG9mIGFxdWF0aWMgb3JnYW5pc21zPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIyOCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkZyZXNod2F0ZXIgQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HcmVlbjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjUzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM4MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgcG90ZW50aWFsIHJvbGUgb2Ygd2F0ZXJiaXJkcyBpbiBkaXNwZXJzaW5nIGludmVydGVicmF0ZXMgYW5kIHBsYW50cyBpbiBhcmlkIEF1c3RyYWxpYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMjkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5TY29wb2xpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HcmlmZml0aHM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkV1cm9wZWFuIHF1YXRlcm5hcnkgZnJlc2h3YXRlciBPc3RyYWNvZGE6IGEgYmlvc3RyYXRpZ3JhcGhpYyBhbmQgcGFsYWVvYmlvZ3JhcGhpYyBwcmltZXI8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjMwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWlzY2VsbGFuZWEgWm9vbG9naWNhIEh1bmdhcmljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5HecO2cmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjY1PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk4NTwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlRocmVlIG9zdHJhY29kIHNwZWNpZXMgZnJvbSBMYWtlIFZlbGVuY2UgbmV3IHRvIHRoZSBmYXVuYSBvZiBIdW5nYXJ5PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzMSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNpdHp1bmdzYmVyaWNodGUgZGVyIEdlc2VsbHNjaGFmdCBOYXR1cmZvcnNjaGVuZGVyIEZyZXVuZGUgenUgQmVybGluPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhhcnR3aWc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xOTAwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT41PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTkwMDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPsOcYmVyIGVpbmUgbmV1ZSBDYW5kb25hZGVyIFByb3ZpbnogQnJhbmRlbmJ1cmc6IENhbmRvbmEgaG9semthbXBmaW5vdi4gc3BlYy48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjMyIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U2l0enVuZ3NiZXJpY2h0ZSBkZXIgR2VzZWxsc2NoYWZ0IE5hdHVyZm9yc2NoZW5kZXIgRnJldW5kZSB6dSBCZXJsaW48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SGFydHdpZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE5MDE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44NzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MDE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaWUgQXJ0ZW4gZGVyIE9zdHJhY29kZW4uIFVudGVyZmFtaWxpZSBDYW5kb25pbmFlIGRlciBQcm92aW56IEJyYW5kZW5idXJnPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzMyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGxldGluIEZyYW7Dp2FpcyBkZSBsYSBQw6pjaGUgZXQgZGUgbGEgUGlzY2ljdWx0dXJlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhvbGRpY2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGlzc3VlPjQ8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT42MTE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNTEva21hZToyMDAyMDU1PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkRpc3RyaWJ1dGlvbiBvZiBjcmF5ZmlzaCBpbiBFdXJvcGUgYW5kIHNvbWUgYWRqb2luaW5nIGNvdW50cmllczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMzQiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkJpb2xvZ2ljYWwgSW52YWRlcnMgaW4gSW5sYW5kIFdhdGVyczogUHJvZmlsZXMsIERpc3RyaWJ1dGlvbiBhbmQgVGhyZWF0czwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhvbGRpY2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+Mjk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvOTc4LTEtNDAyMC02MDI5LThfMjwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbnZhc2l2ZSBjcnVzdGFjZWFucyBpbiBFdXJvcGVhbiBpbmxhbmQgd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzNSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJvbGxldHRpbm8gZGVsbGEgU29jaWV0YSBQYWxlb250b2xvZ2ljYSBJdGFsaWFuYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Ib3JuZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xLTI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yOTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Rmlyc3QgQnJpdGlzaCByZWNvcmQgb2YgUG90YW1vY3lwcmlzIGh1bWlsaXMoU2FycywgMTkyNCksIGEgZnJlc2h3YXRlciBvc3RyYWNvZCB3aXRoIGEgZGlzanVuY3QgZGlzdHJpYnV0aW9uIGluIG5vcnRoZXJuIEV1cm9wZSBhbmQgc291dGhlcm4gQWZyaWNhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzNiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlpvb2xvZ2ljYWwgSm91cm5hbCBvZiB0aGUgTGlubmVhbiBTb2NpZXR5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhvcm5lPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTQyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI1MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTExMS9qLjEwOTYtMzY0Mi4yMDA0LjAwMTM0Lng8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIGZpcnN0IEJyaXRpc2ggcmVjb3JkIGFuZCBhIG5ldyBzcGVjaWVzIG9mIHRoZSBzdXBlcmZhbWlseSBUZXJyZXN0cmljeXRoZXJvaWRlYSAoQ3J1c3RhY2VhLCBPc3RyYWNvZGEpOiBtb3JwaG9sb2d5LCBvbnRvZ2VueSwgbGlmZXN0eWxlIGFuZCBwaHlsb2dlbnk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjM3Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5DcmV0YWNlb3VzLVF1YXRlcm5hcnkgT3N0cmFjb2RlIEZhdW5hIGZyb20gSmlhbmdzdTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkhvdTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk4MjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjM4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVtb2lycyBJbnN0aXR1dGUgb2YgR2VvbG9neSBhbmQgUGFsZW9udG9sb2d5LCBBY2FkZW1pYSBTaW5pY2E8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SHVhbmc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5ODU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5QbGVpc3RvY2VuZSBPc3RyYWNvZGEgZnJvbSBtaWRkbGUgYW5kIGxvd2VyIHJlYWNoZXMgb2YgU2FuZ2dhbiBSaXZlciBWYWxsZXkgYW5kIGl0cyBnZW9ncmFwaGljYWwgc2lnbmlmaWNhbmNlPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIzOSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFjdGEgUGFsYWVvbnRvbG9naWNhIFNpbmljYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5IdWFuZzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjMwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjcyODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Pc3RyYWNvZCBmcm9tIGxhdGUgUGxlaXN0b2NlbmUgZGVwb3NpdHMgaW4gU2FuZ2dhbiByaXZlciB2YWxsZXk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjQwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RWVzdGkgTlNWIFRlYWR1c3RlIEFrYWRlZW1pYSBUb2ltZXRpc2VkLCBCaW9sb29naWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+SsOkcnZla8O8bGc8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT44PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTU5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW5kbWVpZCBFZXN0aSBtYWdldmV0ZSBrYXJwdsOkaGlsaXN0ZSAoT3N0cmFjb2RhKSBmYXVuYSBrb2h0YTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNDEiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBCaW9kaXZlcnNpdHkgQ3Jpc2lzIGFuZCBDcnVzdGFjZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5KYcW6ZMW6ZXdza2k8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5DcnVzdGFjZWFuIElzc3VlcyAxMjwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbW1pZ3JhdGlvbiBoaXN0b3J5IGFuZCBwcmVzZW50IGRpc3RyaWJ1dGlvbiBvZiBhbGllbiBjcnVzdGFjZWFucyBpbiBQb2xpc2ggd2F0ZXJzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI0MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJpb2xvZ2ljYWwgQ29uc2VydmF0aW9uPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkpvaG5zb248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT43ODwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAxNi8wMDA2LTMyMDcoOTYpMDAwMTUtODwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5HZW9ncmFwaGljIHNwcmVhZCBvZiBleG90aWMgc3BlY2llczogZWNvbG9naWNhbCBsZXNzb25zIGFuZCBvcHBvcnR1bml0aWVzIGZyb20gdGhlIGludmFzaW9uIG9mIHRoZSB6ZWJyYSBtdXNzZWw8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjQzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXF1YXRpYyBTY2llbmNlczwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5KdWxpw6A8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT42MDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNzk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTk4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvczAwMDI3MDA1MDA0MjwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5PcmlnaW4gYW5kIHJlY2VudCB0cm9waGljIGV2b2x1dGlvbiBpbiB0aGUgU3BhbmlzaCBtb3VudGFpbiBsYWtlIExhIENydXo8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjQ0Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5IaXN0b2lyZWRlcyBNb25vY2xlcyBxdWkgc2UgVHJvdXZlbnQgYXV4IEVudmlyb25zIGRlIEdlbsOodmU8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5KdXJpbmU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4MjA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNTk2Mi9iaGwudGl0bGUuMTAxMzc8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNDUiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkNhbmRvbmluYWUgT3N0cmFjb2RlcyBmcm9tIHRoZSBQaWxiYXJhIFJlZ2lvbiBpbiBXZXN0ZXJuIEF1c3RyYWxpYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkthcmFub3ZpYzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTE2My9lai45Nzg5MDA0MTU2OTM3LmktNDM0PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxzZXJpZXNfdGl0bGU+Q3J1c3RhY2VhbmEgTW9ub2dyYXBoczwvc2VyaWVzX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI0NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubmFsZXMgZGUgTGltbm9sb2dpZS1JbnRlcm5hdGlvbmFsIEpvdXJuYWwgb2YgTGltbm9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkthcmFub3ZpYzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAxMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDUxL2xpbW4vMjAxMTA2MTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5XaGVuIGFudGhyb3BvZ2VuaWMgdHJhbnNsb2NhdGlvbiBtZWV0cyBjcnlwdGljIHNwZWNpYXRpb24gZ2xvYmFsaXNlZCBib3VpbGxvbiBvcmlnaW5hdGVzOyBtb2xlY3VsYXIgdmFyaWFiaWxpdHkgb2YgdGhlIGNvc21vcG9saXRhbiBmcmVzaHdhdGVyIGN5Y2xvcG9pZCBNYWNyb2N5Y2xvcHMgYWxiaWR1cyhDcnVzdGFjZWE6IENvcGVwb2RhKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNDciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CaW9sb2dpY2FsIEludmFzaW9uczwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LYXJhdGF5ZXY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT45PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE2MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwNy9zMTA1MzAtMDA2LTkwMTMtOTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DaGFuZ2VzIGluIGdsb2JhbCBlY29ub21pZXMgYW5kIHRyYWRlOiB0aGUgcG90ZW50aWFsIHNwcmVhZCBvZiBleG90aWMgZnJlc2h3YXRlciBiaXZhbHZlczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNDgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Nb2xlY3VsYXIgRWNvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZWxseTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM2NDE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMTEvai4xMzY1LTI5NFguMjAwNi4wMzAxMi54PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvbnRyYXN0aW5nIHBhdHRlcm5zIGluIGdlbmV0aWMgZGl2ZXJzaXR5IGZvbGxvd2luZyBtdWx0aXBsZSBpbnZhc2lvbnMgb2YgZnJlc2ggYW5kIGJyYWNraXNoIHdhdGVyczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNDkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Tb25kZXJ2ZXLDtmZmZW50bGljaHVuZ2VuIGRlcyBHZW9sb2dpc2NoZW4gSW5zdGl0dXQgZGVyIFVuaXZlcnNpdMOkdCB6dSBLw7Zsbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTgwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW5kZXggYW5kIGJpYmxpb2dyYXBoeSBvZiBub25tYXJpbmUgT3N0cmFjb2RhLiBCaWJsaW9ncmFwaHkgQS4gUGFydCA0PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI1MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNvbmRlcnZlcsO2ZmZlbnRsaWNodW5nZW4gZGVzIEdlb2xvZ2lzY2hlbiBJbnN0aXR1dCBkZXIgVW5pdmVyc2l0w6R0IHp1IEvDtmxuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktlbXBmPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzU8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5ODA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmRleCBhbmQgYmlibGlvZ3JhcGh5IG9mIG5vbm1hcmluZSBPc3RyYWNvZGEuIEluZGV4wqBBLiBQYXJ0IDE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjUxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U29uZGVydmVyw7ZmZmVudGxpY2h1bmdlbiBkZXMgR2VvbG9naXNjaGVuIEluc3RpdHV0IGRlciBVbml2ZXJzaXTDpHQgenUgS8O2bG48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2VtcGY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk4MDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkluZGV4IGFuZCBiaWJsaW9ncmFwaHkgb2Ygbm9ubWFyaW5lIE9zdHJhY29kYS4gSW5kZXjCoEIuIFBhcnQgMjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNTIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Tb25kZXJ2ZXLDtmZmZW50bGljaHVuZ2VuIGRlcyBHZW9sb2dpc2NoZW4gSW5zdGl0dXQgZGVyIFVuaXZlcnNpdMOkdCB6dSBLw7Zsbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM3PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTgwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW5kZXggYW5kIGJpYmxpb2dyYXBoeSBvZiBub25tYXJpbmUgT3N0cmFjb2RhLiBJbmRleMKgQy4gUGFydCAzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI1MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNvbmRlcnZlcsO2ZmZlbnRsaWNodW5nZW4gZGVzIEdlb2xvZ2lzY2hlbiBJbnN0aXR1dCBkZXIgVW5pdmVyc2l0w6R0IHp1IEvDtmxuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktlbXBmPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Nzc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmRleCBhbmQgYmlibGlvZ3JhcGh5IG9mIG5vbm1hcmluZSBPc3RyYWNvZGEuIEJpYmxpb2dyYXBoeSBCLiBQYXJ0IDU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjU0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U29uZGVydmVyw7ZmZmVudGxpY2h1bmdlbiBkZXMgR2VvbG9naXNjaGVuIEluc3RpdHV0IGRlciBVbml2ZXJzaXTDpHQgenUgS8O2bG48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2VtcGY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMTI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmRleCBhbmQgYmlibGlvZ3JhcGh5IG9mIG5vbm1hcmluZSBPc3RyYWNvZGEuIEJpYmxpb2dyYXBoeSBDLiBQYXJ0IDk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjU1Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+U29uZGVydmVyw7ZmZmVudGxpY2h1bmdlbiBkZXMgR2VvbG9naXNjaGVuIEluc3RpdHV0IGRlciBVbml2ZXJzaXTDpHQgenUgS8O2bG48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S2VtcGY8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMDk8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTc8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5JbmRleCBhbmQgYmlibGlvZ3JhcGh5IG9mIG5vbm1hcmluZSBPc3RyYWNvZGEuIEluZGV4IEEgU3VwcGxlbWVudC4gUGFydCA2PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI1NiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlNvbmRlcnZlcsO2ZmZlbnRsaWNodW5nZW4gZGVzIEdlb2xvZ2lzY2hlbiBJbnN0aXR1dCBkZXIgVW5pdmVyc2l0w6R0IHp1IEvDtmxuPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktlbXBmPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MTEwPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTk3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+SW5kZXggYW5kIGJpYmxpb2dyYXBoeSBvZiBub25tYXJpbmUgT3N0cmFjb2RhLiBJbmRleMKgQiBTdXBwbGVtZW50IDEuIFBhcnQgNzwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNTciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Tb25kZXJ2ZXLDtmZmZW50bGljaHVuZ2VuIGRlcyBHZW9sb2dpc2NoZW4gSW5zdGl0dXQgZGVyIFVuaXZlcnNpdMOkdCB6dSBLw7Zsbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjExMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkluZGV4IGFuZCBiaWJsaW9ncmFwaHkgb2Ygbm9ubWFyaW5lIE9zdHJhY29kYS4gSW5kZXjCoEMgU3VwcGxlbWVudCAxLiBQYXJ0IDg8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjU4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjU5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LZW1wZjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjYwIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXJiZWl0ZW4gRGVyIEJpb2xpc2NoZW4gV29sZ2EgU3RhdGlvbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5LbGllPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+OTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5MjY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5ad2VpdGVyIEJlaXRyYWcgenVyIEtlbm50bmlzIGRlciBTw7xzc3dhc3Nlci4gT3N0cmFjb2RlbiBSdXNzbGFuZHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjYxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+RGllIFRpZXJ3ZWx0IERldXRzY2hsYW5kcyB1bmQgZGVyIGFuZ3JlbnplbmRlbiBNZWVyc3RlaWxlIG5hY2ggaWhyZW4gTWVya21hbGVuIHVuZCBuYWNoIGlocmVyIExlYmVuc3dlaXNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktsaWU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zNDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8aXNzdWU+MS00PC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5Mzg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5LcmVic3RpZXJlIG9kZXIgQ3J1c3RhY2VhLCBJSUk6IE9zdHJhY29kYSwgTXVzY2hlbGtyZWJzZTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNjIiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIFZlY3RvciBFY29sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktsaW5nPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MzI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjA3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwNzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zMzc2LzEwODEtMTcxMCgyMDA3KTMyWzIwNzpMTUNJRFZdMi4wLkNPOzI8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+TGFydmFsIG1vc3F1aXRvIGNvbW11bml0aWVzIGluIGRpc2NhcmRlZCB2ZWhpY2xlIHRpcmVzIGluIGEgZm9yZXN0ZWQgYW5kIHVuZm9yZXN0ZWQgc2l0ZTogZGV0cml0dXMgdHlwZSwgYW1vdW50LCBhbmQgd2F0ZXIgbnV0cmllbnQgZGlmZmVyZW5jZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjYzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UG9sc2tpZSBBcmNoaXd1bSBIeWRyb2Jpb2xvZ2lpPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPktvc21hbDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE1PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjg3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk2ODwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9uIHRoZSBkaXN0cmlidXRpb24gb2YgT3N0cmFjb2RhIGluIHRoZSBsaXR0b3JhbCBvZiBMYWtlIEtpc2Fqbm8gKE1hc3VyaWFuIExha2UgRGlzdHJpY3QpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI2NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBvc2ViIEl6ZCwgU3JwIEFrYWQgTmF1a2EgVW1ldCwgT2RlbGVuZSBQcmlyLU1hdGggTmF1a2E8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+S3JzdGnEhzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTcyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Um9kIENhbmRvbmEoT3N0cmFjb2RhKSBpeiBrb25nZXJpanNraWtoIHNsb2pldmEganV6aG5vZyBkZWxhIFBhbm9uc2tvZyBCYXNlbmE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjY1Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5IaXN0b2lyZSBuYXR1cmVsbGUgZGVzIGFuaW1hdXggc2FucyB2ZXJ0ZWJyZXM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5MYW1hcmNrPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Vm9sLsKgNjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTgyMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjY2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Sm91cm5hbCBvZiB0aGUgR2VvbG9naWNhbCBTb2NpZXR5IG9mIEtvcmVhPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPkxlZTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM2PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQzNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Pc3RyYWNvZCBmYXVuYSBmcm9tIHRoZSBFYXN0IFNlYSBjb2FzdCBvZiBLb3JlYSBhbmQgdGhlaXIgZGlzdHJpYnV0aW9uLiBQcmVsaW1pbmFyeSBzdHVkeSBvbiBPc3RyYWNvZGEgYXMgYW4gaW5kaWNhdG9yIG9mIHdhdGVyIHBvbGx1dGlvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNjciPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIFZlY3RvciBFY29sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1hZG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjc8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTQ5PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkludHJvZHVjdGlvbiBvZiBBZWRlcyBhbGJvcGljdHVzKFNrdXNlKSBpbiBzb3V0aGVybiBDYWxpZm9ybmlhIGFuZCBwb3RlbnRpYWwgZm9yIGl0cyBlc3RhYmxpc2htZW50PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI2OCI+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWFyY28tQmFyYmE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI2OSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+RW5jeWNsb3BlZGlhIG9mIElubGFuZCBXYXRlcnM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NYXJ0ZW5zPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQwNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAxNi9COTc4LTAxMjM3MDYyNi0zLjAwMTg0LTg8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0cmFjb2RhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI3MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkh5ZHJvYmlvbG9naWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWFydGVuczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU5NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xODU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvczEwNzUwLTAwNy05MjQ1LTQ8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+R2xvYmFsIGRpdmVyc2l0eSBvZiBvc3RyYWNvZHMgKE9zdHJhY29kYSwgQ3J1c3RhY2VhKSBpbiBmcmVzaHdhdGVyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI3MSI+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TWF6ZXBvdmE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI3MiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkpvdXJuYWwgb2YgQ3J1c3RhY2VhbiBCaW9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1jS2VuemllPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Njwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xODE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTg2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMTU0Nzk3OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NYW4gYXMgYW4gYWdlbnQgb2YgY3J1c3RhY2VhbiBwYXNzaXZlIGRpc3BlcnNhbCB2aWEgdXNlZnVsIHBsYW50cyDigJMgZXhlbXBsaWZpZWQgYnkgT3N0cmFjb2RhIG9zcGl0aSBlc3RlcmlvZiB0aGUgSXRhbGlhbiByaWNlZmllbHMgZWNvc3lzdGVtIOKAkyBhbmQgaW1wbGljYXRpb25zIGFyaXNpbmcgdGhlcmVmcm9tPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI3MyI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+RnJlc2h3YXRlciBPc3RyYWNvZGEgb2YgV2VzdGVybiBhbmQgQ2VudHJhbCBFdXJvcGU8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NZWlzY2g8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI3NCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNydXN0YWNlYW5hPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk1lenF1aXRhPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NzA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTA0PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5NzwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTYzLzE1Njg1NDA5N1gwMDA4NzwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5OZXcgcmVjb3JkcyBvZiB0aGUgZ2VudXMgRmFiYWVmb3JtaXNjYW5kb25hS3JzdGnEhywgMTk3MiAoT3N0cmFjb2RhKSBmcm9tIHRoZSBJYmVyaWFuIFBlbmluc3VsYTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNzUiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIENydXN0YWNlYW4gQmlvbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5NZXpxdWl0YTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE5PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjM0NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMjMwNy8xNTQ5MjQxPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkVjb2xvZ3kgYW5kIGRpc3RyaWJ1dGlvbiBvZiBvc3RyYWNvZHMgYXNzb2NpYXRlZCB3aXRoIGZsb3dpbmcgd2F0ZXJzIGluIGVhc3Rlcm4gSWJlcmlhbiBQZW5pbnN1bGE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjc2Ij4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5EYXMgVGllcnJlaWNoPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TcO8bGxlcjwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPlZvbC7CoDMxPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTEyPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q3J1c3RhY2VhLiBPc3RyYWNvZGE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjc3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Nw7xsbGVyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xNzc0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNzgiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlpvb2xvZ2lhZSBkYW5pY2FlIHByb2RvbXVzIHNldSBhbmltYWxpdW0gZGFuaWFlIGV0IG5vcnZlZ2lhZSBpbmRpZ2VuYXJ1bSBjaGFyYWN0ZXJlLCBub21pbmEgZXQgc3lub255bWEgaW1wcmltaXMgcG9wdWxhcml1bTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk3DvGxsZXI8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE3NzY8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuNTk2Mi9iaGwudGl0bGUuMTMyNjg8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyNzkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIEFuaW1hbCBFY29sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPk15ZXJzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNDY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTM0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMTEzODwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5UaGUgYXJ0aHJvcG9kIGZhdW5hIG9mIGEgUmljZS1TaGlwLCB0cmFkaW5nIGZyb20gQnVybWEgdG8gdGhlIFdlc3QgSW5kaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4MCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIE1pZ3JhdGlvbiBFY29sb2d5IG9mIEJpcmRzPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+TmV3dG9uPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyODEiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5CdWxsZXRpbiBvZiB0aGUgQmlvZ2VvZ3JhcGhpY2FsIFNvY2lldHkgb2YgSmFwYW48L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+T2t1Ym88L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zOTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5OTA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5TaXh0ZWVuIHNwZWNpZXMgb2YgZnJlc2h3YXRlciBPc3RyYWNvZGEgZnJvbSBKYXBhbiAoZnJlc2h3YXRlciBPc3RyYWNvZGEgZnJvbSBKYXBhbiwgWFYpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4MiI+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+T2t1Ym88L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4MyI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJ1bGxldGluIG9mIHRoZSBCaW9nZW9ncmFwaGljYWwgU29jaWV0eSBvZiBKYXBhbjwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Pa3VibzwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQ0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjEwNTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5ODk8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5GcmVzaHdhdGVyIE9zdHJhY29kYSBmcm9tIEd1bm1hIFByZWZlY3R1cmUsIEphcGFuPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4NCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+UmVpc2UgZHVyY2ggdmVyc2NoaWVkZW5lIFByb3ZpbnplbiBkZXMgUnVzc2lzY2hlbiBSZWljaHM8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5QYWxsYXM8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5Wb2wuIDE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE3NzE8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI4NSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlRyYXZhdXggU2NpZW50aWZpcXVlcyBkdSBNdXPDqWUgTmF0aW9uYWwgZOKAmUhpc3RvaXJlIE5hdHVyZWxsZSBkZSBMdXhlbWJvdXJnPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBldGtvdnNraTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjIzPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjU3PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MTk5NjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlNwZWNpZXMgb2YgdGhlIGdlbnVzIFN0ZW5vY3lwcmlzU2FycywgMTg4OSBmcm9tIHRoZSByaWNlLWZpZWxkcyBvZiBNYWNlZG9uaWE8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjg2Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QXF1YXRpYyBDb25zZXJ2YXRpb246IE1hcmluZSBhbmQgRnJlc2h3YXRlciBFY29zeXN0ZW1zPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlBvcXVldDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE4PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI4MDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8ZG9pIHByb3ZpZGVyPSJjcm9zc3JlZiI+MTAuMTAwMi9hcWMuODMxPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkxvc3Mgb2YgT3N0cmFjb2RhIGJpb2RpdmVyc2l0eSBpbiBXZXN0ZXJuIE1lZGl0ZXJyYW5lYW4gd2V0bGFuZHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjg3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWFnYXppbmUgR2VzZWxsc2NoYWZ0IE5hdHVyZm9yc2NoZW5kZXIgRnJldW5kZSB6dSBCZXJsaW4sIE5ldWVzdGVuIEVudGRlY2t1bmdlbiBHZXNhbW10ZXIgTmF0dXJrdW5kZTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5SYW1kb2hyPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+Mjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT44MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE4MDg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT7DnGJlciBkaWUgZ2F0dHVuZyBDeXByaXNNw7xsbGVyIHVuZCBkcmVpIHp1IGRlcnNlbGJlbiBnZWjDtnJpZ2VuIG5ldWUgYXJ0ZW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjg4Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+VGhlIEhvbG9jZW5lPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlJlZWQ8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT43MDc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExOTEvMDk1OTY4MzAxOTU3MzU8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QSBtdWx0aS1wcm94eSByZWNvcmQgb2YgSG9sb2NlbmUgY2xpbWF0aWMgY2hhbmdlIGluIHNvdXRod2VzdGVybiBTcGFpbjogdGhlIExhZ3VuYSBkZSBNZWRpbmEsIEPDoWRpejwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyODkiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIExpbW5vbG9neTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5Sb3NzaTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjYyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAzPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjQwODEvamxpbW5vbC4yMDAzLjE8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0cmFjb2RhIG9mIHRoZSBJdGFsaWFuIHJpY2VmaWVsZHMgdGhpcnR5IHllYXJzIG9uOiBuZXcgc3ludGhlc2lzIGFuZCBoeXBvdGhlc2lzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI5MCI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkJvbGV0w61uIGRlIGxhIEFzb2NpYWNpw7NuIEVzcGHDsW9sYSBkZSBFbnRvbW9sb2fDrWE8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+UnVlZGE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT45PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwNjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkNvbnRyaWJ1Y2nDs24gYWwgY29ub2NpbWllbnRvIGRlIGxvcyBjcnVzdMOhY2VvcyAoQXJ0aHJvcG9kYSwgQ3J1c3RhY2VhKSBkZSBsYXMgTWFsbGFkYXMgZGUgbGEgRGV2ZXNhIGRlbCBQYXJxdWUgTmF0dXJhbCBkZSBsYSBBbGJ1ZmVyYSAoVmFsZW5jaWEpPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI5MSI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkFubnVhbCBSZXZpZXcgb2YgRWNvbG9neSBhbmQgU3lzdGVtYXRpY3M8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2FrYWk8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4zMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zMDU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExNDYvYW5udXJldi5lY29sc3lzLjMyLjA4MTUwMS4xMTQwMzc8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+VGhlIHBvcHVsYXRpb24gYmlvbG9neSBvZiBpbnZhc2l2ZSBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI5MiI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+VGhlIEZyZXNod2F0ZXIgRW50b21vc3RyYWNhIG9mIHRoZSBDYXBlIFByb3ZpbmNlIChVbmlvbiBvZiBTb3V0aCBBZnJpY2EpLiBPc3RyYWNvZGE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TYXJzPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTI0PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPHNlcmllc190aXRsZT5Bbm5hbHMgb2YgdGhlIFNvdXRoIEFmcmljYW4gTXVzZXVtIDIwPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjkzIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+Sm91cm5hbCBvZiBOYXR1cmFsIEhpc3Rvcnk8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2F2YXRlbmFsaW50b248L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT40Mzwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yNTk8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAyMjI5MzA4MDI1OTA4ODU8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T24gYSBmcmVzaHdhdGVyIHNwZWNpZXMgb2YgdGhlIGdlbnVzIFNhbnl1YW5pYVpoYW8gYW5kIEhhbiwgMTk4MCAoQ3J1c3RhY2VhLCBPc3RyYWNvZGEsIExveG9jb25jaGlkYWUpIGZyb20gVGhhaWxhbmQsIHdpdGggYSBkaXNjdXNzaW9uIG9uIG1vcnBob2xvZ2ljYWwgZXZvbHV0aW9uIG9mIHRoZSBmcmVzaHdhdGVyIExveG9jb25jaGlkYWU8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjk0Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+TWVkaWNhbCBhbmQgVmV0ZXJpbmFyeSBFbnRvbW9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNjaG9sdGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT4yMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zNTI8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjExMTEvai4xMzY1LTI5MTUuMjAwOC4wMDc2My54PC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFjY2lkZW50YWwgaW1wb3J0YXRpb24gb2YgdGhlIG1vc3F1aXRvIEFlZGVzIGFsYm9waWN0dXNpbnRvIHRoZSBOZXRoZXJsYW5kczogYSBzdXJ2ZXkgb2YgbW9zcXVpdG8gZGlzdHJpYnV0aW9uIGFuZCB0aGUgcHJlc2VuY2Ugb2YgZGVuZ3VlIHZpcnVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnI5NSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+RmFyLUVhc3Rlcm4gTWFyaW5lIEJpb3NwaGVyZSBSZXNlcnZlLiBCaW90YTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNjaG9ybmlrb3Y8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5Wb2wuwqAyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQ1ODwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5DbGFzc2lzIE9zdHJhY29kYSDigJMgc2hlbGxlZCBDcnVzdGFjZWEuIENoYXB0ZXIgSUlJLiBBbm5vdGF0ZWQgbGlzdCBvZiBiaW90YSBvZiB0aGUgaXNsYW5kczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyOTYiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBTdGF0ZSBvZiBFbnZpcm9ubWVudCBhbmQgQmlvdGEgb2YgdGhlIFNvdXRod2VzdGVybiBQYXJ0IG9mIFBldGVyIFRoZSBHcmVhdCBCYXkgYW5kIHRoZSBUdW1lbiBSaXZlciBNb3V0aDwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlNjaG9ybmlrb3Y8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT5Wb2wuIDM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDAxPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0cmFjb2RzIG9mIGJyYWNraXNoIGFuZCBmcmVzaCB3YXRlcnMgb2Ygc291dGh3ZXN0ZXJuIGNvYXN0IG9mIFBldGVyIFRoZSBHcmVhdCBCYXk8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjk3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SW5sYW5kIFdhdGVyIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+U2VtZW5vdmE8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZT41PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjYxPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAxMjwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMTM0L1MxOTk1MDgyOTExMDQwMTZYPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPk9zdHJhY29kcyAoQ3J1c3RhY2VhIGFuZCBPc3RyYWNvZGEpIGluIHRoZSB6b29wZXJpcGh5dG9uIG9mIHdhdGVyYm9kaWVzIGFuZCB3YXRlcmNvdXJzZXMgb2YgVHl1bWVuIG9ibGFzdCAoV2VzdGVybiBTaWJlcmlhKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyOTgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5Kb3VybmFsIG9mIE5hdHVyYWwgSGlzdG9yeTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TbWl0aDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjQyPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjI4NjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwODAvMDAyMjI5MzA4MDIzNjEwMzA8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVjZW50IHNwZWNpZXMgb2YgdGhlIEZhbWlseSBDYW5kb25pZGFlIChPc3RyYWNvZGEsIENydXN0YWNlYSkgZnJvbSB0aGUgYW5jaWVudCBMYWtlIEJpd2EsIENlbnRyYWwgSmFwYW48L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjk5Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+SHlkcm9iaW9sb2dpYTwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj5TbWl0aDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjU4NTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4yMjU8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMDcvczEwNzUwLTAwNy0wNjQwLTc8L2RvaT4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q29wdWxhdG9yeSBiZWhhdmlvdXIgYW5kIHNleHVhbCBtb3JwaG9sb2d5IG9mIHRocmVlIEZhYmFlZm9ybWlzY2FuZG9uYUtyc3RpxIcsIDE5NzIgKENhbmRvbmluYWUsIE9zdHJhY29kYSwgQ3J1c3RhY2VhKSBzcGVjaWVzIGZyb20gSmFwYW4sIGluY2x1ZGluZyBkZXNjcmlwdGlvbnMgb2YgdHdvIG5ldyBzcGVjaWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDAiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPkZhdW5hIFNsb2Rrb3dvZG5hIFBvbHNraSwgV2FyemF3YSwgUG96bmHFhDwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlN5d3VsYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPlZvbC4gMjQ8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjE5NzQ8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5NYWx6b3JhY3praSAoT3N0cmFjb2RhKTwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMTAxIj4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+UmV2aXN0YSBkZSBsYSBBY2FkZW1pYSBDb2xvbWJpYW5hIGRlIENpZW5jaWFzPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlRvcnJlcyBTYWxkYXJyaWFnYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjM0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxpc3N1ZT4xMzI8L2lzc3VlPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4zOTc8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDEwPC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+RWNvbG9neSBvZiBub24tbWFyaW5lIG9zdHJhY29kYSBmcm9tIExhIEZlIHJlc2Vydm9pciAoRWwgUmV0aXJvLCBBbnRpb3F1aWEpIGFuZCB0aGVpciBwb3RlbnRpYWwgYXBwbGljYXRpb24gaW4gcGFsZW9lbnZpcm9ubWVudGFsIHN0dWRpZXM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjEwMiI+DQogICAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPkNvbnNlcnZhdGlvbiBCaW9sb2d5PC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlRyb21idWxhazwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjE0PC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjE4PC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAwMDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDQ2L2ouMTUyMy0xNzM5LjIwMDAuOTkwODQueDwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5SZXZpZXcgb2YgZWNvbG9naWNhbCBlZmZlY3RzIG9mIHJvYWRzIG9uIHRlcnJlc3RyaWFsIGFuZCBhcXVhdGljIGNvbW11bml0aWVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDMiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlRoZSBCaW9kaXZlcnNpdHkgQ3Jpc2lzIGFuZCBDcnVzdGFjZWE8L3ZvbHVtZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgICAgPGF1dGhvcj52YW7CoGRlcsKgVmVsZGU8L2F1dGhvcj4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MzwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDA8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8c2VyaWVzX3RpdGxlPkNydXN0YWNlYW4gSXNzdWVzIDEyPC9zZXJpZXNfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkVjb2xvZ2ljYWwgaW1wYWN0IG9mIGNydXN0YWNlYW4gaW52YWRlcnM6IGdlbmVyYWwgY29uc2lkZXJhdGlvbnMgYW5kIGV4YW1wbGVzIGZyb20gdGhlIFJoaW5lIFJpdmVyPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDQiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5GcmVzaHdhdGVyIEJpb2xvZ3k8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+VmFuc2Nob2Vud2lua2VsPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NTM8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+MjI2NDwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMDg8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5EaXNwZXJzYWwgb2YgZnJlc2h3YXRlciBpbnZlcnRlYnJhdGVzIGJ5IGxhcmdlIHRlcnJlc3RyaWFsIG1hbW1hbHMsIGEgY2FzZSBzdHVkeSB3aXRoIHdpbGQgYm9hciAoIFN1cyBzY3JvZmEpIGluIE1lZGl0ZXJyYW5lYW4gd2V0bGFuZHM8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjEwNSI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+RGllIFPDvHNzd2Fzc2VyZmF1bmEgRGV1dHNjaGxhbmRzLCBlaW5lIEV4a3Vyc2lvbnNmYXVuYTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlbDoXZyYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPlZvbC7CoDExKDIpPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTA5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0cmFjb2RhLCBNdXNjaGVsa3JlYnNlLCBwcC4gODUtMTM2PC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDYiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BbWVyaWNhbiBNaWRsYW5kIE5hdHVyYWxpc3Q8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+VmlueWFyZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEwMjwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xMDg8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTc5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjIzMDcvMjQyNTA4NDwvZG9pPg0KICAgICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5BbiBvc3RyYWNvZCAoIEN5cHJpZG9wc2lzIHZpZHVhKSBjYW4gcmVkdWNlIHByZWRhdGlvbiBmcm9tIGZpc2ggYnkgcmVzaXN0aW5nIGRpZ2VzdGlvbjwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMTA3Ij4NCiAgICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QW5uYWxlcyBkZSBsYSBTb2Npw6l0w6kgR8Opb2xvZ2lxdWUgZGUgQmVsZ2lxdWU8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2Fuc2FyZDwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPjEyMDwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xODM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTk3PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+UmVjb25zdHJ1Y3Rpb24gcGFsw6lvZW52aXJvbm5tZW50YWxlIGRlcyBkZXJuaWVycyAzMC4wMDAgYW5zIGRlIGxhIHPDqXF1ZW5jZSBkZSBMYSBEcmFnYSAoQmFueW9sZXMsIEVzcGFnbmUpLCBkw6lkdWl0ZSBkZXMgcmFwcG9ydHMgKFNyL0NhKSBldCAoTWcvQ2EpIGRlcyB2YWx2ZXMgZOKAmW9zdHJhY29kZXMgbGFjdXN0cmVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDgiPg0KICAgICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5BcXVhdGljIENvbnNlcnZhdGlvbjogTWFyaW5lIGFuZCBGcmVzaHdhdGVyIEVjb3N5c3RlbXM8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V2F0ZXJrZXluPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWU+MjA8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgICAgPGZpcnN0X3BhZ2U+NTgwPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgICA8Y1llYXI+MjAxMDwvY1llYXI+DQogICAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4xMDAyL2FxYy4xMTIyPC9kb2k+DQogICAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPlVuaW50ZW50aW9uYWwgZGlzcGVyc2FsIG9mIGFxdWF0aWMgaW52ZXJ0ZWJyYXRlcyB2aWEgZm9vdCB3ZWFyIGFuZCBtb3RvciB2ZWhpY2xlcyBpbiBhIE1lZGl0ZXJyYW5lYW4gd2V0bGFuZCBhcmVhPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9ImJpYnIxMDkiPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lX3RpdGxlPlByb2NlZWRpbmdzIG9mIHRoZSBTeW1wb3NpdW0g4oCcSW52ZXJ0ZWJyYXRlcyBvZiBCZWxnaXVt4oCdPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+V291dGVyczwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTM8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4xOTg5PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+Q2hlY2stbGlzdCBvZiB0aGUgcmVjZW50IG5vbi1tYXJpbmUgT3N0cmFjb2RhIChDcnVzdGFjZWEpIG9mIEJlbGdpdW08L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iYmlicjExMCI+DQogICAgICAgICAgICAgICAgICAgIDx2b2x1bWVfdGl0bGU+QmlvZGl2ZXJzaXRhdCBpIEVjb2xvZ2lhIGRlbHMgSW52ZXJ0ZWJyYXRzIEFxdcOgdGljcyBDb250aW5lbnRhbHMgZGUgbGEgTWFyaW5hIEFsdGEgaSBlbCBTZXUgVmFsb3IgY29tIGEgSW5kaWNhZG9ycyBkZSBsYSBRdWFsaXRhdCBkZSBsZXMgQWlnw7xlcyBkZSBsYSBDb21hcmNhPC92b2x1bWVfdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxhdXRob3I+WmFtb3JhPC9hdXRob3I+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSJiaWJyMTExIj4NCiAgICAgICAgICAgICAgICAgICAgPHZvbHVtZV90aXRsZT5FY29sb2dpY2FsIFN0dWRpZXMgYW5kIHRoZSBTdGF0ZSBvZiB0aGUgUmF6ZG9sbmF5YSBSaXZlciAoU2VhIG9mIEphcGFuKTwvdm9sdW1lX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgICA8YXV0aG9yPlplbmluYTwvYXV0aG9yPg0KICAgICAgICAgICAgICAgICAgICA8dm9sdW1lPlZvbC4gMTwvdm9sdW1lPg0KICAgICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT4xNTY8L2ZpcnN0X3BhZ2U+DQogICAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDA4PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+T3N0cmFjb2QgYXNzZW1ibGFnZXMgb2YgdGhlIGZyZXNoZW5lZCBwYXJ0IG9mIEFtdXJza3kgQmF5IGFuZCBsb3dlciByZWFjaGVzIG9mIFJhemRvbG5heWEgUml2ZXIgKFNlYSBvZiBKYXBhbik8L2FydGljbGVfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgPC9qb3VybmFsX2FydGljbGU+DQogICAgICAgICAgICA8L2pvdXJuYWw+DQogICAgICAgICAgPC9jcm9zc3JlZj4NCiAgICAgICAgPC9kb2lfcmVjb3JkPg0KICAgICAgPC9xdWVyeT4NCiAgICA8L2JvZHk+DQogIDwvcXVlcnlfcmVzdWx0Pg0KPC9jcm9zc3JlZl9yZXN1bHQ+
55
+ recorded_at: Sun, 19 Mar 2023 17:37:14 GMT
56
+ - request:
57
+ method: get
58
+ uri: https://doi.org/ra/10.1163
59
+ body:
60
+ encoding: UTF-8
61
+ string: ''
62
+ headers:
63
+ Connection:
64
+ - close
65
+ Host:
66
+ - doi.org
67
+ User-Agent:
68
+ - http.rb/5.1.1
69
+ response:
70
+ status:
71
+ code: 200
72
+ message: OK
73
+ headers:
74
+ Date:
75
+ - Sun, 19 Mar 2023 17:39:27 GMT
76
+ Content-Type:
77
+ - application/json;charset=UTF-8
78
+ Transfer-Encoding:
79
+ - chunked
80
+ Connection:
81
+ - close
82
+ Permissions-Policy:
83
+ - interest-cohort=(),browsing-topics=()
84
+ Cf-Cache-Status:
85
+ - DYNAMIC
86
+ Report-To:
87
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=jgfMpCnGiNz6K2nTLpprhiKrADdZZiJdi2ktYp2IabDoKquJ7NaDdnGsPJiVhUWegdjZb%2FN9T8FiDg04m0RGbYDQHbW9TMHNZUqXcVJIEiIUFlKWCcTQfwke2vOMAYbPi3gfrWI%3D"}],"group":"cf-nel","max_age":604800}'
88
+ Nel:
89
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
90
+ Strict-Transport-Security:
91
+ - max-age=31536000; includeSubDomains; preload
92
+ Server:
93
+ - cloudflare
94
+ Cf-Ray:
95
+ - 7aa77eaddfb70ea9-AMS
96
+ Alt-Svc:
97
+ - h3=":443"; ma=86400, h3-29=":443"; ma=86400
98
+ body:
99
+ encoding: UTF-8
100
+ string: |-
101
+ [
102
+ {
103
+ "DOI": "10.1163",
104
+ "RA": "Crossref"
105
+ }
106
+ ]
107
+ recorded_at: Sun, 19 Mar 2023 17:39:27 GMT
108
+ - request:
109
+ method: get
110
+ uri: https://api.crossref.org/works/10.1163/1937240x-00002096
111
+ body:
112
+ encoding: UTF-8
113
+ string: ''
114
+ headers:
115
+ Connection:
116
+ - close
117
+ Host:
118
+ - api.crossref.org
119
+ User-Agent:
120
+ - http.rb/5.1.1
121
+ response:
122
+ status:
123
+ code: 200
124
+ message: OK
125
+ headers:
126
+ Date:
127
+ - Sun, 19 Mar 2023 17:39:27 GMT
128
+ Content-Type:
129
+ - application/json
130
+ Transfer-Encoding:
131
+ - chunked
132
+ Access-Control-Expose-Headers:
133
+ - Link
134
+ Access-Control-Allow-Headers:
135
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
136
+ Accept-Ranges, Cache-Control
137
+ Access-Control-Allow-Origin:
138
+ - "*"
139
+ Server:
140
+ - Jetty(9.4.40.v20210413)
141
+ X-Ratelimit-Limit:
142
+ - '50'
143
+ X-Ratelimit-Interval:
144
+ - 1s
145
+ X-Api-Pool:
146
+ - public
147
+ X-Rate-Limit-Limit:
148
+ - '50'
149
+ X-Rate-Limit-Interval:
150
+ - 1s
151
+ Permissions-Policy:
152
+ - interest-cohort=()
153
+ Connection:
154
+ - close
155
+ body:
156
+ encoding: UTF-8
157
+ string: '{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,3,2]],"date-time":"2023-03-02T11:29:45Z","timestamp":1677756585932},"reference-count":111,"publisher":"Oxford
158
+ University Press (OUP)","issue":"6","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012,1,1]]},"DOI":"10.1163\/1937240x-00002096","type":"journal-article","created":{"date-parts":[[2012,11,20]],"date-time":"2012-11-20T13:22:49Z","timestamp":1353417769000},"page":"949-961","source":"Crossref","is-referenced-by-count":18,"title":["Global
159
+ distribution of Fabaeformiscandona subacuta: an\u00a0exotic\u00a0invasive
160
+ Ostracoda on the Iberian Peninsula?"],"prefix":"10.1093","volume":"32","author":[{"given":"Andreu","family":"Escriv\u00e0","sequence":"first","affiliation":[]},{"given":"Francesc","family":"Mesquita-Joanes","sequence":"additional","affiliation":[]},{"given":"Josep
161
+ A.","family":"Aguilar-Alberola","sequence":"additional","affiliation":[]},{"given":"Eugene
162
+ I.","family":"Schornikov","sequence":"additional","affiliation":[]},{"given":"Juan","family":"Rueda","sequence":"additional","affiliation":[]},{"given":"Robin
163
+ J.","family":"Smith","sequence":"additional","affiliation":[]},{"given":"Takahiro","family":"Kamiya","sequence":"additional","affiliation":[]},{"given":"Ivana","family":"Karanovic","sequence":"additional","affiliation":[]}],"member":"286","reference":[{"issue":"5","key":"bibr1","first-page":"1","article-title":"Die
164
+ Gattung Candonaim Quartar von Europa","volume":"88","author":"Absolon","year":"1978","journal-title":"Rozpravy
165
+ Ceskoslovenske Akademie Ved, Rada Matematickych A Prirodnich Ved"},{"key":"bibr2","first-page":"3","article-title":"Los
166
+ crust\u00e1ceos del plancton de los embalses espa\u00f1oles","volume":"3","author":"Armengol","year":"1978","journal-title":"Oecologia
167
+ aquatica"},{"key":"bibr3","first-page":"419","article-title":"A contribution
168
+ to the knowledge of cypridid ostracode fauna (Crustacea, Ostracoda, Cyprididae)
169
+ on the Iberian peninsula, and a comparison with adjacent areas","volume":"90","author":"Baltan\u00e1s","year":"1992","journal-title":"Archiv
170
+ f\u00fcr Hydrobiologie\/Suppl."},{"key":"bibr4","series-title":"Listas de
171
+ la Flora y Fauna de las Aguas Continentales de la Pen\u00ednsula Ib\u00e9rica,
172
+ N\u00b0\u00a012","volume-title":"Lista faun\u00edstica y Bibliogr\u00e1fica
173
+ de los ostr\u00e1codos no marinos (Crustacea, Ostracoda) de la Pen\u00ednsula
174
+ Ib\u00e9rica, Islas Baleares e Islas Canarias","author":"Baltan\u00e1s","year":"1996"},{"key":"bibr5","doi-asserted-by":"crossref","first-page":"193","DOI":"10.1080\/08927014.2001.9522785","article-title":"The
175
+ elusive model of a biological invasion process: time to take differences among
176
+ aquatic and terrestrial ecosystems into account?","volume":"13","author":"Beisel","year":"2001","journal-title":"Ethology
177
+ Ecology and Evolution"},{"key":"bibr6","doi-asserted-by":"crossref","first-page":"159","DOI":"10.1146\/annurev.ecolsys.32.081501.114016","article-title":"Dispersal
178
+ in freshwater invertebrates","volume":"32","author":"Bilton","year":"2001","journal-title":"Annual
179
+ Review of Ecology and Systematics"},{"key":"bibr7","series-title":"Russian
180
+ Translations Series 64","volume-title":"Freshwater Ostracoda. Fauna of the
181
+ USSR, Crustacea","volume":"Vol. II","author":"Bronshtein","year":"1947"},{"key":"bibr8","doi-asserted-by":"crossref","first-page":"402","DOI":"10.1007\/s00442-002-0897-5","article-title":"Blowing
182
+ in the wind: a field test of overland dispersal and colonization by aquatic
183
+ invertebrates","volume":"131","author":"C\u00e1ceres","year":"2002","journal-title":"Oecologia"},{"key":"bibr9","doi-asserted-by":"crossref","first-page":"1","DOI":"10.11646\/zootaxa.3161.1.1","article-title":"Nonmarine
184
+ ostracods (Crustacea) from South Korea, including a description of a new species
185
+ of TanycyprisTriebel (Cyprididae, Cypricercinae)","volume":"3161","author":"Chang","year":"2012","journal-title":"Zootaxa"},{"key":"bibr10","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1007\/BF00039679","article-title":"A
186
+ review of the freshwater ostracods of New Zealand","volume":"22","author":"Chapman","year":"1963","journal-title":"Hydrobiologia"},{"key":"bibr11","first-page":"48","volume-title":"Atlas
187
+ of Animals in China, Crustacea, Subclass, Ostracoda","author":"Chen","year":"1982"},{"key":"bibr12","first-page":"43","article-title":"Agua
188
+ de lastre como v\u00eda de introducci\u00f3n de especies a nivel global","volume-title":"Bio-invasi\u00f3n
189
+ del Mejill\u00f3n Dorado en el Continente Americano","author":"Costa Fernandes","year":"2006"},{"key":"bibr13","article-title":"Crustacea.
190
+ Part I","volume-title":"United States Exploring Expedition During the Years
191
+ 1838, 1839, 1840, 1841, 1842, Under the Command of Charles Wilkes, U.S.N.","volume":"Vol.\u00a013","author":"Dana","year":"1852"},{"key":"bibr14","first-page":"269","article-title":"Bemerkungen
192
+ \u00fcber einige Ostracoden des Sewerny-Donetz-Bassins","volume":"65","author":"Dubowsky","year":"1926","journal-title":"Zoologischer
193
+ Anzeiger"},{"key":"bibr15","first-page":"358","article-title":"Mytilacea nova
194
+ collectionis Cumingianae","volume":"24","author":"Dunker","year":"1856","journal-title":"Proceedings
195
+ of the Zoological Society of London"},{"key":"bibr16","doi-asserted-by":"crossref","first-page":"103","DOI":"10.1111\/j.1365-2427.1995.tb00390.x","article-title":"Native
196
+ and exotic freshwater fishes in Spanish river basins","volume":"33","author":"Elvira","year":"1995","journal-title":"Freshwater
197
+ Biology"},{"key":"bibr17","doi-asserted-by":"crossref","first-page":"323","DOI":"10.1111\/j.1095-8649.2001.tb01393.x","article-title":"Freshwater
198
+ fish introductions in Spain: facts and figures at the beginning of the 21st
199
+ century","volume":"59","author":"Elvira","year":"2001","journal-title":"Journal
200
+ of Fish Biology"},{"key":"bibr18","volume-title":"Biodiversitat del Zoopl\u00e0ncton
201
+ i Microzoobentos a les Aig\u00fces Continentals de Vinar\u00f2s i el Baix
202
+ Maestrat","author":"Escriv\u00e0","year":"2011"},{"issue":"4\/3","key":"bibr19","first-page":"1","article-title":"Kagyl\u00f3sr\u00e1kok
203
+ (Ostracoda)","volume":"39","author":"Farkas","year":"1958","journal-title":"Fauna
204
+ Hungariae, Magyarorsz\u00e1g \u00c1llatvil\u00e1ga"},{"key":"bibr20","doi-asserted-by":"crossref","first-page":"483","DOI":"10.1046\/j.1365-2427.2002.00829.x","article-title":"Dispersal
205
+ of aquatic organisms by waterbirds: a review of past research and priorities
206
+ for future studies","volume":"47","author":"Figuerola","year":"2002","journal-title":"Freshwater
207
+ Biology"},{"key":"bibr21","doi-asserted-by":"crossref","first-page":"568","DOI":"10.1007\/s00027-007-0915-0","article-title":"High
208
+ dispersal capacity of a broad spectrum of aquatic invertebrates via waterbirds","volume":"69","author":"Frisch","year":"2007","journal-title":"Aquatic
209
+ Sciences"},{"key":"bibr22","series-title":"Ver\u00f6ffentlichungen des Landesmuseums
210
+ f\u00fcr Vorgeschichte 43","first-page":"161","article-title":"Die Aussage
211
+ der Ostrakodenfauna zum Sedimentationsablauf im Intergalzialbecken, zur klimatischen
212
+ Entwicklung und zur stratigraphischen Stellung des Interglazials von Neumark-Nord
213
+ (Geiseltal)","volume-title":"Neumark-Gr\u00f6bern. Beitr\u00e4ge zur Jagd
214
+ des mittlepal\u00e4olithischen Menschen","author":"Fuhrmann","year":"1990"},{"key":"bibr23","doi-asserted-by":"crossref","first-page":"123","DOI":"10.1007\/978-1-4020-6029-8_6","article-title":"Non-indigenous
215
+ animal species naturalized in Iberian inland waters","volume-title":"Biological
216
+ Invaders in Inland Waters: Profiles, Distribution and Threats","author":"Garc\u00eda-Berthou","year":"2007"},{"key":"bibr24","doi-asserted-by":"crossref","first-page":"49","DOI":"10.1007\/s10530-004-9635-8","article-title":"Impacts
217
+ of an introduced Crustacean on the trophic webs of Mediterranean wetlands","volume":"7","author":"Geiger","year":"2005","journal-title":"Biological
218
+ Invasions"},{"key":"bibr25","doi-asserted-by":"crossref","first-page":"3","DOI":"10.1007\/978-1-4020-6029-8_1","article-title":"Biological
219
+ invasions in inland waters: an overview","volume-title":"Biological Invaders
220
+ in Inland Waters: Profiles, Distribution and Threats","author":"Gherardi","year":"2007"},{"key":"bibr26","first-page":"87","article-title":"A
221
+ revision of the North American Astaci, with observations on their habits and
222
+ geographic distribution","volume":"6","author":"Girard","year":"1852","journal-title":"Proceedings
223
+ of the Academy of Natural Sciences of Philadelphia"},{"key":"bibr27","doi-asserted-by":"crossref","first-page":"177","DOI":"10.1016\/S1146-609X(02)01149-9","article-title":"Implications
224
+ of waterbird ecology for the dispersal of aquatic organisms","volume":"23","author":"Green","year":"2002","journal-title":"Acta
225
+ Oecologica"},{"key":"bibr28","first-page":"380","article-title":"The potential
226
+ role of waterbirds in dispersing invertebrates and plants in arid Australia","volume":"53","author":"Green","year":"2008","journal-title":"Freshwater
227
+ Biology"},{"key":"bibr29","first-page":"1","article-title":"European quaternary
228
+ freshwater Ostracoda: a biostratigraphic and palaeobiographic primer","volume":"34","author":"Griffiths","year":"1995","journal-title":"Scopolia"},{"key":"bibr30","first-page":"65","article-title":"Three
229
+ ostracod species from Lake Velence new to the fauna of Hungary","volume":"3","author":"Gy\u00f6re","year":"1985","journal-title":"Miscellanea
230
+ Zoologica Hungarica"},{"issue":"5","key":"bibr31","first-page":"149","article-title":"\u00dcber
231
+ eine neue Candonader Provinz Brandenburg: Candona holzkampfinov. spec.","volume":"1900","author":"Hartwig","year":"1900","journal-title":"Sitzungsberichte
232
+ der Gesellschaft Naturforschender Freunde zu Berlin"},{"issue":"4","key":"bibr32","first-page":"87","article-title":"Die
233
+ Arten der Ostracoden. Unterfamilie Candoninae der Provinz Brandenburg","volume":"1901","author":"Hartwig","year":"1901","journal-title":"Sitzungsberichte
234
+ der Gesellschaft Naturforschender Freunde zu Berlin"},{"issue":"4","key":"bibr33","doi-asserted-by":"crossref","first-page":"611","DOI":"10.1051\/kmae:2002055","article-title":"Distribution
235
+ of crayfish in Europe and some adjoining countries","volume":"367","author":"Holdich","year":"2002","journal-title":"Bulletin
236
+ Fran\u00e7ais de la P\u00eache et de la Pisciculture"},{"key":"bibr34","doi-asserted-by":"crossref","first-page":"29","DOI":"10.1007\/978-1-4020-6029-8_2","article-title":"Invasive
237
+ crustaceans in European inland waters","volume-title":"Biological Invaders
238
+ in Inland Waters: Profiles, Distribution and Threats","author":"Holdich","year":"2007"},{"issue":"1-2","key":"bibr35","first-page":"297","article-title":"First
239
+ British record of Potamocypris humilis(Sars, 1924), a freshwater ostracod
240
+ with a disjunct distribution in northern Europe and southern Africa","volume":"43","author":"Horne","year":"2004","journal-title":"Bollettino
241
+ della Societa Paleontologica Italiana"},{"key":"bibr36","doi-asserted-by":"crossref","first-page":"253","DOI":"10.1111\/j.1096-3642.2004.00134.x","article-title":"The
242
+ first British record and a new species of the superfamily Terrestricytheroidea
243
+ (Crustacea, Ostracoda): morphology, ontogeny, lifestyle and phylogeny","volume":"142","author":"Horne","year":"2004","journal-title":"Zoological
244
+ Journal of the Linnean Society"},{"key":"bibr37","volume-title":"Cretaceous-Quaternary
245
+ Ostracode Fauna from Jiangsu","author":"Hou","year":"1982"},{"key":"bibr38","first-page":"86","article-title":"Pleistocene
246
+ Ostracoda from middle and lower reaches of Sanggan River Valley and its geographical
247
+ significance","volume":"21","author":"Huang","year":"1985","journal-title":"Memoirs
248
+ Institute of Geology and Paleontology, Academia Sinica"},{"key":"bibr39","first-page":"728","article-title":"Ostracod
249
+ from late Pleistocene deposits in Sanggan river valley","volume":"30","author":"Huang","year":"1991","journal-title":"Acta
250
+ Palaeontologica Sinica"},{"key":"bibr40","first-page":"2","article-title":"Andmeid
251
+ Eesti magevete karpv\u00e4hiliste (Ostracoda) fauna kohta","volume":"8","author":"J\u00e4rvek\u00fclg","year":"1959","journal-title":"Eesti
252
+ NSV Teaduste Akadeemia Toimetised, Bioloogia"},{"key":"bibr41","series-title":"Crustacean
253
+ Issues 12","first-page":"55","article-title":"Immigration history and present
254
+ distribution of alien crustaceans in Polish waters","volume-title":"The Biodiversity
255
+ Crisis and Crustacea","author":"Ja\u017ad\u017aewski","year":"2000"},{"key":"bibr42","doi-asserted-by":"crossref","first-page":"23","DOI":"10.1016\/0006-3207(96)00015-8","article-title":"Geographic
256
+ spread of exotic species: ecological lessons and opportunities from the invasion
257
+ of the zebra mussel","volume":"78","author":"Johnson","year":"1996","journal-title":"Biological
258
+ Conservation"},{"key":"bibr43","doi-asserted-by":"crossref","first-page":"279","DOI":"10.1007\/s000270050042","article-title":"Origin
259
+ and recent trophic evolution in the Spanish mountain lake La Cruz","volume":"60","author":"Juli\u00e0","year":"1998","journal-title":"Aquatic
260
+ Sciences"},{"key":"bibr44","doi-asserted-by":"crossref","volume-title":"Histoiredes
261
+ Monocles qui se Trouvent aux Environs de Gen\u00e8ve","author":"Jurine","year":"1820","DOI":"10.5962\/bhl.title.10137"},{"key":"bibr45","series-title":"Crustaceana
262
+ Monographs","doi-asserted-by":"crossref","DOI":"10.1163\/ej.9789004156937.i-434","volume-title":"Candoninae
263
+ Ostracodes from the Pilbara Region in Western Australia","volume":"7","author":"Karanovic","year":"2007"},{"key":"bibr46","doi-asserted-by":"crossref","first-page":"63","DOI":"10.1051\/limn\/2011061","article-title":"When
264
+ anthropogenic translocation meets cryptic speciation globalised bouillon originates;
265
+ molecular variability of the cosmopolitan freshwater cyclopoid Macrocyclops
266
+ albidus(Crustacea: Copepoda)","volume":"48","author":"Karanovic","year":"2012","journal-title":"Annales
267
+ de Limnologie-International Journal of Limnology"},{"key":"bibr47","doi-asserted-by":"crossref","first-page":"161","DOI":"10.1007\/s10530-006-9013-9","article-title":"Changes
268
+ in global economies and trade: the potential spread of exotic freshwater bivalves","volume":"9","author":"Karatayev","year":"2007","journal-title":"Biological
269
+ Invasions"},{"key":"bibr48","doi-asserted-by":"crossref","first-page":"3641","DOI":"10.1111\/j.1365-294X.2006.03012.x","article-title":"Contrasting
270
+ patterns in genetic diversity following multiple invasions of fresh and brackish
271
+ waters","volume":"15","author":"Kelly","year":"2006","journal-title":"Molecular
272
+ Ecology"},{"key":"bibr49","first-page":"1","article-title":"Index and bibliography
273
+ of nonmarine Ostracoda. Bibliography A. Part 4","volume":"38","author":"Kempf","year":"1980","journal-title":"Sonderver\u00f6ffentlichungen
274
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr50","first-page":"1","article-title":"Index
275
+ and bibliography of nonmarine Ostracoda. Index\u00a0A. Part 1","volume":"35","author":"Kempf","year":"1980","journal-title":"Sonderver\u00f6ffentlichungen
276
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr51","first-page":"1","article-title":"Index
277
+ and bibliography of nonmarine Ostracoda. Index\u00a0B. Part 2","volume":"36","author":"Kempf","year":"1980","journal-title":"Sonderver\u00f6ffentlichungen
278
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr52","first-page":"1","article-title":"Index
279
+ and bibliography of nonmarine Ostracoda. Index\u00a0C. Part 3","volume":"37","author":"Kempf","year":"1980","journal-title":"Sonderver\u00f6ffentlichungen
280
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr53","first-page":"1","article-title":"Index
281
+ and bibliography of nonmarine Ostracoda. Bibliography B. Part 5","volume":"77","author":"Kempf","year":"1991","journal-title":"Sonderver\u00f6ffentlichungen
282
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr54","first-page":"1","article-title":"Index
283
+ and bibliography of nonmarine Ostracoda. Bibliography C. Part 9","volume":"112","author":"Kempf","year":"1997","journal-title":"Sonderver\u00f6ffentlichungen
284
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr55","first-page":"1","article-title":"Index
285
+ and bibliography of nonmarine Ostracoda. Index A Supplement. Part 6","volume":"109","author":"Kempf","year":"1997","journal-title":"Sonderver\u00f6ffentlichungen
286
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr56","first-page":"1","article-title":"Index
287
+ and bibliography of nonmarine Ostracoda. Index\u00a0B Supplement 1. Part 7","volume":"110","author":"Kempf","year":"1997","journal-title":"Sonderver\u00f6ffentlichungen
288
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr57","first-page":"1","article-title":"Index
289
+ and bibliography of nonmarine Ostracoda. Index\u00a0C Supplement 1. Part 8","volume":"111","author":"Kempf","year":"1997","journal-title":"Sonderver\u00f6ffentlichungen
290
+ des Geologischen Institut der Universit\u00e4t zu K\u00f6ln"},{"key":"bibr58","author":"Kempf","year":"2002"},{"key":"bibr59","author":"Kempf","year":"2006"},{"key":"bibr60","first-page":"35","article-title":"Zweiter
291
+ Beitrag zur Kenntnis der S\u00fcsswasser. Ostracoden Russlands","volume":"9","author":"Klie","year":"1926","journal-title":"Arbeiten
292
+ Der Biolischen Wolga Station"},{"issue":"1-4","key":"bibr61","first-page":"1","article-title":"Krebstiere
293
+ oder Crustacea, III: Ostracoda, Muschelkrebse","volume":"34","author":"Klie","year":"1938","journal-title":"Die
294
+ Tierwelt Deutschlands und der angrenzenden Meersteile nach ihren Merkmalen
295
+ und nach ihrer Lebensweise"},{"key":"bibr62","doi-asserted-by":"crossref","first-page":"207","DOI":"10.3376\/1081-1710(2007)32[207:LMCIDV]2.0.CO;2","article-title":"Larval
296
+ mosquito communities in discarded vehicle tires in a forested and unforested
297
+ site: detritus type, amount, and water nutrient differences","volume":"32","author":"Kling","year":"2007","journal-title":"Journal
298
+ of Vector Ecology"},{"key":"bibr63","first-page":"87","article-title":"On
299
+ the distribution of Ostracoda in the littoral of Lake Kisajno (Masurian Lake
300
+ District)","volume":"15","author":"Kosmal","year":"1968","journal-title":"Polskie
301
+ Archiwum Hydrobiologii"},{"key":"bibr64","first-page":"1","article-title":"Rod
302
+ Candona(Ostracoda) iz kongerijskikh slojeva juzhnog dela Panonskog Basena","volume":"39","author":"Krsti\u0107","year":"1972","journal-title":"Poseb
303
+ Izd, Srp Akad Nauka Umet, Odelene Prir-Math Nauka"},{"key":"bibr65","volume-title":"Histoire
304
+ naturelle des animaux sans vertebres","volume":"Vol.\u00a06","author":"Lamarck","year":"1822"},{"key":"bibr66","first-page":"435","article-title":"Ostracod
305
+ fauna from the East Sea coast of Korea and their distribution. Preliminary
306
+ study on Ostracoda as an indicator of water pollution","volume":"36","author":"Lee","year":"2000","journal-title":"Journal
307
+ of the Geological Society of Korea"},{"key":"bibr67","first-page":"149","article-title":"Introduction
308
+ of Aedes albopictus(Skuse) in southern California and potential for its establishment","volume":"27","author":"Madon","year":"2002","journal-title":"Journal
309
+ of Vector Ecology"},{"key":"bibr68","author":"Marco-Barba","year":"2010"},{"key":"bibr69","doi-asserted-by":"crossref","first-page":"405","DOI":"10.1016\/B978-012370626-3.00184-8","article-title":"Ostracoda","volume-title":"Encyclopedia
310
+ of Inland Waters","author":"Martens","year":"2009"},{"key":"bibr70","doi-asserted-by":"crossref","first-page":"185","DOI":"10.1007\/s10750-007-9245-4","article-title":"Global
311
+ diversity of ostracods (Ostracoda, Crustacea) in freshwater","volume":"595","author":"Martens","year":"2008","journal-title":"Hydrobiologia"},{"key":"bibr71","author":"Mazepova","year":"1990"},{"key":"bibr72","doi-asserted-by":"crossref","first-page":"181","DOI":"10.2307\/1547979","article-title":"Man
312
+ as an agent of crustacean passive dispersal via useful plants \u2013 exemplified
313
+ by Ostracoda ospiti esteriof the Italian ricefiels ecosystem \u2013 and implications
314
+ arising therefrom","volume":"6","author":"McKenzie","year":"1986","journal-title":"Journal
315
+ of Crustacean Biology"},{"key":"bibr73","volume-title":"Freshwater Ostracoda
316
+ of Western and Central Europe","author":"Meisch","year":"2000"},{"key":"bibr74","doi-asserted-by":"crossref","first-page":"504","DOI":"10.1163\/156854097X00087","article-title":"New
317
+ records of the genus FabaeformiscandonaKrsti\u0107, 1972 (Ostracoda) from
318
+ the Iberian Peninsula","volume":"70","author":"Mezquita","year":"1997","journal-title":"Crustaceana"},{"key":"bibr75","doi-asserted-by":"crossref","first-page":"344","DOI":"10.2307\/1549241","article-title":"Ecology
319
+ and distribution of ostracods associated with flowing waters in eastern Iberian
320
+ Peninsula","volume":"19","author":"Mezquita","year":"1999","journal-title":"Journal
321
+ of Crustacean Biology"},{"key":"bibr76","first-page":"1","article-title":"Crustacea.
322
+ Ostracoda","volume-title":"Das Tierreich","volume":"Vol.\u00a031","author":"M\u00fcller","year":"1912"},{"key":"bibr77","author":"M\u00fcller","year":"1774"},{"key":"bibr78","doi-asserted-by":"crossref","volume-title":"Zoologiae
323
+ danicae prodomus seu animalium daniae et norvegiae indigenarum charactere,
324
+ nomina et synonyma imprimis popularium","author":"M\u00fcller","year":"1776","DOI":"10.5962\/bhl.title.13268"},{"key":"bibr79","doi-asserted-by":"crossref","first-page":"146","DOI":"10.2307\/1138","article-title":"The
325
+ arthropod fauna of a Rice-Ship, trading from Burma to the West Indies","volume":"3","author":"Myers","year":"1934","journal-title":"Journal
326
+ of Animal Ecology"},{"key":"bibr80","volume-title":"The Migration Ecology
327
+ of Birds","author":"Newton","year":"2008"},{"key":"bibr81","first-page":"39","article-title":"Sixteen
328
+ species of freshwater Ostracoda from Japan (freshwater Ostracoda from Japan,
329
+ XV)","volume":"45","author":"Okubo","year":"1990","journal-title":"Bulletin
330
+ of the Biogeographical Society of Japan"},{"key":"bibr82","author":"Okubo","year":"2004"},{"key":"bibr83","first-page":"105","article-title":"Freshwater
331
+ Ostracoda from Gunma Prefecture, Japan","volume":"44","author":"Okubo","year":"1989","journal-title":"Bulletin
332
+ of the Biogeographical Society of Japan"},{"key":"bibr84","volume-title":"Reise
333
+ durch verschiedene Provinzen des Russischen Reichs","volume":"Vol. 1","author":"Pallas","year":"1771"},{"key":"bibr85","first-page":"57","article-title":"Species
334
+ of the genus StenocyprisSars, 1889 from the rice-fields of Macedonia","volume":"23","author":"Petkovski","year":"1996","journal-title":"Travaux
335
+ Scientifiques du Mus\u00e9e National d\u2019Histoire Naturelle de Luxembourg"},{"key":"bibr86","doi-asserted-by":"crossref","first-page":"280","DOI":"10.1002\/aqc.831","article-title":"Loss
336
+ of Ostracoda biodiversity in Western Mediterranean wetlands","volume":"18","author":"Poquet","year":"2008","journal-title":"Aquatic
337
+ Conservation: Marine and Freshwater Ecosystems"},{"key":"bibr87","first-page":"83","article-title":"\u00dcber
338
+ die gattung CyprisM\u00fcller und drei zu derselben geh\u00f6rigen neue arten","volume":"2","author":"Ramdohr","year":"1808","journal-title":"Magazine
339
+ Gesellschaft Naturforschender Freunde zu Berlin, Neuesten Entdeckungen Gesammter
340
+ Naturkunde"},{"key":"bibr88","doi-asserted-by":"crossref","first-page":"707","DOI":"10.1191\/09596830195735","article-title":"A
341
+ multi-proxy record of Holocene climatic change in southwestern Spain: the
342
+ Laguna de Medina, C\u00e1diz","volume":"11","author":"Reed","year":"2001","journal-title":"The
343
+ Holocene"},{"key":"bibr89","doi-asserted-by":"crossref","first-page":"1","DOI":"10.4081\/jlimnol.2003.1","article-title":"Ostracoda
344
+ of the Italian ricefields thirty years on: new synthesis and hypothesis","volume":"62","author":"Rossi","year":"2003","journal-title":"Journal
345
+ of Limnology"},{"key":"bibr90","first-page":"9","article-title":"Contribuci\u00f3n
346
+ al conocimiento de los crust\u00e1ceos (Arthropoda, Crustacea) de las Malladas
347
+ de la Devesa del Parque Natural de la Albufera (Valencia)","volume":"30","author":"Rueda","year":"2006","journal-title":"Bolet\u00edn
348
+ de la Asociaci\u00f3n Espa\u00f1ola de Entomolog\u00eda"},{"key":"bibr91","doi-asserted-by":"crossref","first-page":"305","DOI":"10.1146\/annurev.ecolsys.32.081501.114037","article-title":"The
349
+ population biology of invasive species","volume":"32","author":"Sakai","year":"2001","journal-title":"Annual
350
+ Review of Ecology and Systematics"},{"key":"bibr92","series-title":"Annals
351
+ of the South African Museum 20","volume-title":"The Freshwater Entomostraca
352
+ of the Cape Province (Union of South Africa). Ostracoda","author":"Sars","year":"1924"},{"key":"bibr93","doi-asserted-by":"crossref","first-page":"259","DOI":"10.1080\/00222930802590885","article-title":"On
353
+ a freshwater species of the genus SanyuaniaZhao and Han, 1980 (Crustacea,
354
+ Ostracoda, Loxoconchidae) from Thailand, with a discussion on morphological
355
+ evolution of the freshwater Loxoconchidae","volume":"43","author":"Savatenalinton","year":"2009","journal-title":"Journal
356
+ of Natural History"},{"key":"bibr94","doi-asserted-by":"crossref","first-page":"352","DOI":"10.1111\/j.1365-2915.2008.00763.x","article-title":"Accidental
357
+ importation of the mosquito Aedes albopictusinto the Netherlands: a survey
358
+ of mosquito distribution and the presence of dengue virus","volume":"22","author":"Scholte","year":"2008","journal-title":"Medical
359
+ and Veterinary Entomology"},{"key":"bibr95","first-page":"458","article-title":"Classis
360
+ Ostracoda \u2013 shelled Crustacea. Chapter III. Annotated list of biota of
361
+ the islands","volume-title":"Far-Eastern Marine Biosphere Reserve. Biota","volume":"Vol.\u00a02","author":"Schornikov","year":"2004"},{"key":"bibr96","first-page":"56","article-title":"Ostracods
362
+ of brackish and fresh waters of southwestern coast of Peter The Great Bay","volume-title":"The
363
+ State of Environment and Biota of the Southwestern Part of Peter The Great
364
+ Bay and the Tumen River Mouth","volume":"Vol. 3","author":"Schornikov","year":"2001"},{"key":"bibr97","doi-asserted-by":"crossref","first-page":"61","DOI":"10.1134\/S199508291104016X","article-title":"Ostracods
365
+ (Crustacea and Ostracoda) in the zooperiphyton of waterbodies and watercourses
366
+ of Tyumen oblast (Western Siberia)","volume":"5","author":"Semenova","year":"2012","journal-title":"Inland
367
+ Water Biology"},{"key":"bibr98","doi-asserted-by":"crossref","first-page":"2865","DOI":"10.1080\/00222930802361030","article-title":"Recent
368
+ species of the Family Candonidae (Ostracoda, Crustacea) from the ancient Lake
369
+ Biwa, Central Japan","volume":"42","author":"Smith","year":"2008","journal-title":"Journal
370
+ of Natural History"},{"key":"bibr99","doi-asserted-by":"crossref","first-page":"225","DOI":"10.1007\/s10750-007-0640-7","article-title":"Copulatory
371
+ behaviour and sexual morphology of three FabaeformiscandonaKrsti\u0107, 1972
372
+ (Candoninae, Ostracoda, Crustacea) species from Japan, including descriptions
373
+ of two new species","volume":"585","author":"Smith","year":"2007","journal-title":"Hydrobiologia"},{"key":"bibr100","first-page":"1","article-title":"Malzoraczki
374
+ (Ostracoda)","volume-title":"Fauna Slodkowodna Polski, Warzawa, Pozna\u0144","volume":"Vol.
375
+ 24","author":"Sywula","year":"1974"},{"issue":"132","key":"bibr101","first-page":"397","article-title":"Ecology
376
+ of non-marine ostracoda from La Fe reservoir (El Retiro, Antioquia) and their
377
+ potential application in paleoenvironmental studies","volume":"34","author":"Torres
378
+ Saldarriaga","year":"2010","journal-title":"Revista de la Academia Colombiana
379
+ de Ciencias"},{"key":"bibr102","doi-asserted-by":"crossref","first-page":"18","DOI":"10.1046\/j.1523-1739.2000.99084.x","article-title":"Review
380
+ of ecological effects of roads on terrestrial and aquatic communities","volume":"14","author":"Trombulak","year":"2000","journal-title":"Conservation
381
+ Biology"},{"key":"bibr103","series-title":"Crustacean Issues 12","first-page":"3","article-title":"Ecological
382
+ impact of crustacean invaders: general considerations and examples from the
383
+ Rhine River","volume-title":"The Biodiversity Crisis and Crustacea","author":"van\u00a0der\u00a0Velde","year":"2000"},{"key":"bibr104","first-page":"2264","article-title":"Dispersal
384
+ of freshwater invertebrates by large terrestrial mammals, a case study with
385
+ wild boar ( Sus scrofa) in Mediterranean wetlands","volume":"53","author":"Vanschoenwinkel","year":"2008","journal-title":"Freshwater
386
+ Biology"},{"key":"bibr105","article-title":"Ostracoda, Muschelkrebse, pp.
387
+ 85-136","volume-title":"Die S\u00fcsswasserfauna Deutschlands, eine Exkursionsfauna","volume":"Vol.\u00a011(2)","author":"V\u00e1vra","year":"1909"},{"key":"bibr106","doi-asserted-by":"crossref","first-page":"108","DOI":"10.2307\/2425084","article-title":"An
388
+ ostracod ( Cypridopsis vidua) can reduce predation from fish by resisting
389
+ digestion","volume":"102","author":"Vinyard","year":"1979","journal-title":"American
390
+ Midland Naturalist"},{"key":"bibr107","first-page":"183","article-title":"Reconstruction
391
+ pal\u00e9oenvironnmentale des derniers 30.000 ans de la s\u00e9quence de La
392
+ Draga (Banyoles, Espagne), d\u00e9duite des rapports (Sr\/Ca) et (Mg\/Ca)
393
+ des valves d\u2019ostracodes lacustres","volume":"120","author":"Wansard","year":"1997","journal-title":"Annales
394
+ de la Soci\u00e9t\u00e9 G\u00e9ologique de Belgique"},{"key":"bibr108","doi-asserted-by":"crossref","first-page":"580","DOI":"10.1002\/aqc.1122","article-title":"Unintentional
395
+ dispersal of aquatic invertebrates via foot wear and motor vehicles in a Mediterranean
396
+ wetland area","volume":"20","author":"Waterkeyn","year":"2010","journal-title":"Aquatic
397
+ Conservation: Marine and Freshwater Ecosystems"},{"key":"bibr109","first-page":"153","article-title":"Check-list
398
+ of the recent non-marine Ostracoda (Crustacea) of Belgium","volume-title":"Proceedings
399
+ of the Symposium \u201cInvertebrates of Belgium\u201d","author":"Wouters","year":"1989"},{"key":"bibr110","volume-title":"Biodiversitat
400
+ i Ecologia dels Invertebrats Aqu\u00e0tics Continentals de la Marina Alta
401
+ i el Seu Valor com a Indicadors de la Qualitat de les Aig\u00fces de la Comarca","author":"Zamora","year":"2005"},{"key":"bibr111","first-page":"156","article-title":"Ostracod
402
+ assemblages of the freshened part of Amursky Bay and lower reaches of Razdolnaya
403
+ River (Sea of Japan)","volume-title":"Ecological Studies and the State of
404
+ the Razdolnaya River (Sea of Japan)","volume":"Vol. 1","author":"Zenina","year":"2008"}],"container-title":["Journal
405
+ of Crustacean Biology"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/academic.oup.com\/jcb\/article-pdf\/32\/6\/949\/10336473\/jcb0949.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,7,5]],"date-time":"2019-07-05T16:53:10Z","timestamp":1562345590000},"score":1,"resource":{"primary":{"URL":"https:\/\/academic.oup.com\/jcb\/article-lookup\/doi\/10.1163\/1937240X-00002096"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,1,1]]},"references-count":111,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2012,1,1]]}},"URL":"http:\/\/dx.doi.org\/10.1163\/1937240x-00002096","relation":{},"ISSN":["0278-0372","1937-240X"],"issn-type":[{"value":"0278-0372","type":"print"},{"value":"1937-240X","type":"electronic"}],"subject":["Aquatic
406
+ Science"],"published":{"date-parts":[[2012,1,1]]}}}'
407
+ recorded_at: Sun, 19 Mar 2023 17:39:27 GMT
408
+ - request:
409
+ method: get
410
+ uri: https://api.crossref.org/members/286
411
+ body:
412
+ encoding: UTF-8
413
+ string: ''
414
+ headers:
415
+ Connection:
416
+ - close
417
+ Host:
418
+ - api.crossref.org
419
+ User-Agent:
420
+ - http.rb/5.1.1
421
+ response:
422
+ status:
423
+ code: 200
424
+ message: OK
425
+ headers:
426
+ Date:
427
+ - Sun, 19 Mar 2023 17:39:47 GMT
428
+ Content-Type:
429
+ - application/json
430
+ Transfer-Encoding:
431
+ - chunked
432
+ Access-Control-Expose-Headers:
433
+ - Link
434
+ Access-Control-Allow-Headers:
435
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
436
+ Accept-Ranges, Cache-Control
437
+ Access-Control-Allow-Origin:
438
+ - "*"
439
+ Server:
440
+ - Jetty(9.4.40.v20210413)
441
+ X-Ratelimit-Limit:
442
+ - '50'
443
+ X-Ratelimit-Interval:
444
+ - 1s
445
+ X-Api-Pool:
446
+ - public
447
+ X-Rate-Limit-Limit:
448
+ - '50'
449
+ X-Rate-Limit-Interval:
450
+ - 1s
451
+ Permissions-Policy:
452
+ - interest-cohort=()
453
+ Connection:
454
+ - close
455
+ body:
456
+ encoding: UTF-8
457
+ string: '{"status":"ok","message-type":"member","message-version":"1.0.0","message":{"last-status-check-time":1679182155676,"primary-name":"Oxford
458
+ University Press (OUP)","counts":{"current-dois":271243,"backfile-dois":4258555,"total-dois":4529798},"breakdowns":{"dois-by-issued-year":[[2011,259167],[2007,216592],[2018,152606],[2020,133982],[2017,130775],[2021,130362],[2019,121429],[2022,121054],[2016,119101],[2015,112065],[2013,108303],[2014,101252],[2012,98237],[2009,91174],[2003,89464],[2001,89028],[2010,80648],[2008,80424],[2004,78801],[2000,74149],[2006,72078],[2005,70465],[2002,69112],[1999,55298],[1997,51088],[1998,50550],[1996,49535],[1995,49346],[1993,46950],[1994,44404],[1991,43001],[1992,41972],[1990,41168],[1988,38904],[1989,38280],[1987,35579],[1986,34520],[1984,34114],[1985,33469],[1983,31780],[1980,30436],[1982,29326],[1981,28338],[1979,27696],[1976,26231],[1978,26095],[1977,25940],[1975,25757],[1974,24480],[1973,23959],[1972,23155],[1967,22929],[1971,22029],[1965,20189],[1970,19962],[2023,19813],[1968,19726],[1969,19566],[1966,18403],[1964,17388],[1963,16446],[1962,15383],[1961,13243],[1960,12644],[1958,12595],[1959,11954],[1956,11273],[1957,11042],[1955,10674],[1954,10325],[1951,10269],[1953,9901],[1938,9839],[1952,9518],[1932,9332],[1935,9135],[1950,9077],[1949,8855],[1936,8831],[1937,8782],[1941,8667],[1939,8380],[1934,8347],[1931,8273],[1933,8126],[1940,7989],[1948,7954],[1947,7917],[1930,7580],[1880,7555],[1942,7341],[1902,7209],[1929,7117],[1925,6967],[1946,6873],[1910,6700],[1928,6598],[1924,6560],[1926,6552],[1945,6494],[1944,6483],[1943,6468],[1911,6457],[1922,6423],[1906,6341],[1921,6227],[1901,6182],[1896,6167],[1923,6127],[1894,6104],[1909,6016],[1927,5873],[1912,5785],[1893,5776],[1916,5770],[1915,5752],[1898,5735],[1907,5705],[1897,5697],[1889,5671],[1895,5613],[1908,5612],[1888,5554],[1900,5516],[1891,5503],[1904,5379],[1905,5362],[1890,5308],[1903,5190],[1920,5094],[1887,5032],[1882,5028],[1886,5023],[1899,4973],[1914,4935],[1879,4920],[1885,4868],[1884,4582],[1881,4488],[1913,4464],[1876,4416],[1867,4413],[1917,4358],[1878,4254],[1875,4155],[1874,4140],[1873,3979],[1872,3978],[1870,3972],[1877,3955],[1883,3896],[1852,3801],[1868,3750],[1892,3623],[1919,3609],[1853,3574],[1859,3549],[1862,3521],[1866,3506],[1863,3495],[1856,3438],[1858,3406],[1857,3369],[1918,3246],[1860,3134],[1854,3089],[1855,3076],[1861,3075],[1864,3031],[1851,2987],[1850,2775],[1648,2173],[1869,2161],[1865,2159],[1871,2113],[1647,2012],[1609,1057],[1623,1052],[1784,734],[1711,710],[1834,691],[1823,542],[1633,534],[1619,502],[1765,495],[1791,483],[1815,412],[1827,393],[1849,376],[1712,343],[1651,309],[1600,301],[1710,275],[1640,271],[1826,266],[1831,253],[1634,248],[1595,242],[1835,232],[1670,217],[1597,189],[1822,184],[1807,183],[1787,181],[1616,181],[1767,180],[1842,159],[1687,159],[1848,155],[1646,154],[1845,151],[1596,149],[1847,148],[1682,148],[1667,146],[1837,141],[1788,137],[1800,136],[1802,135],[1673,131],[1573,131],[1759,130],[1748,129],[1841,126],[1657,125],[1751,124],[1645,122],[1681,120],[1709,118],[1832,117],[1830,115],[1599,114],[1752,112],[1649,110],[1846,109],[1785,109],[1792,104],[1659,104],[1828,101],[1810,101],[1808,101],[1796,101],[1820,99],[1840,98],[1798,98],[1794,96],[1812,93],[1797,93],[1665,93],[1816,91],[1698,88],[1686,88],[1817,87],[1622,87],[1844,86],[1779,86],[1763,86],[1833,85],[1836,84],[1714,83],[1652,83],[1829,80],[1793,79],[1789,79],[1750,79],[1843,78],[1839,77],[1678,76],[1838,72],[1656,72],[1638,71],[1592,70],[1655,69],[1653,69],[1727,66],[1705,64],[1613,62],[1590,62],[1803,61],[1753,61],[1692,61],[1608,61],[1598,60],[1813,59],[1617,58],[1716,57],[1683,57],[1601,57],[1778,55],[1697,55],[1700,54],[1824,53],[1818,53],[1604,53],[1804,52],[1728,52],[1685,52],[1819,51],[1786,51],[1773,51],[1814,50],[1693,50],[1757,49],[1594,49],[1591,49],[1766,48],[1684,47],[1580,47],[1635,46],[1821,45],[1738,45],[1790,44],[1637,43],[1795,42],[1668,42],[1661,42],[1801,41],[1769,41],[1632,41],[1568,40],[1771,39],[1811,36],[1577,36],[1799,35],[1747,34],[1704,33],[1691,32],[1825,31],[1650,31],[1809,30],[1688,30],[1777,29],[1672,29],[1612,29],[1754,28],[1720,26],[1679,26],[1664,26],[1570,26],[1660,25],[1589,25],[1729,24],[1671,23],[1631,23],[1602,23],[1756,22],[1606,20],[1764,19],[1680,19],[1694,18],[1690,18],[1639,18],[1588,18],[1713,17],[1629,17],[1618,17],[1611,17],[1587,17],[1806,16],[1805,16],[1725,16],[1699,16],[1676,16],[1675,16],[1669,16],[1662,16],[1658,16],[1593,16],[1626,15],[1508,15],[2024,14],[1770,14],[1689,14],[1642,14],[1783,12],[1743,12],[1733,12],[1717,12],[1586,12],[1755,11],[1746,11],[1739,11],[1736,11],[1732,11],[1731,11],[1730,11],[1706,11],[1695,11],[1677,11],[1641,11],[1775,10],[1654,10],[1630,10],[1620,10],[1615,10],[1603,10],[1532,10],[1741,9],[1625,9],[1607,9],[1581,9],[1485,9],[1772,8],[1768,8],[1749,8],[1737,8],[1734,8],[1663,8],[1621,8],[1614,8],[1605,8],[1761,7],[1740,7],[1696,7],[1666,7],[1584,7],[1582,7],[1526,7],[1674,6],[1636,6],[1523,6],[1782,5],[1776,5],[1762,5],[1758,5],[1742,5],[1724,5],[1701,5],[1627,5],[1624,5],[1561,5],[1781,4],[1774,4],[1760,4],[1735,4],[1715,4],[1707,4],[1525,4],[1513,4],[1722,3],[1708,3],[1780,2],[1745,2],[1744,2],[1726,2],[1644,2],[1610,2],[1583,2],[1578,2],[1566,2],[1545,2],[1542,2],[1509,2],[1476,2],[1723,1],[1719,1],[1703,1],[1702,1],[1643,1],[1628,1],[1579,1],[1574,1],[1569,1],[1563,1],[1559,1],[1557,1],[1550,1],[1548,1],[1536,1],[1530,1],[1524,1],[1515,1],[1514,1],[1506,1],[1499,1],[1498,1],[1475,1]]},"prefixes":["10.1093","10.3382","10.5740","10.2146","10.1534"],"coverage":{"affiliations-current":0.7020457670797035,"similarity-checking-current":0.8384216366873984,"descriptions-current":0.0,"ror-ids-current":0.0,"funders-backfile":0.03089827417985678,"licenses-backfile":0.159535570164058,"funders-current":0.2464542863778973,"affiliations-backfile":0.1515537547360548,"resource-links-backfile":0.06384794842381981,"orcids-backfile":0.01915508899145367,"update-policies-current":0.03604885656035363,"ror-ids-backfile":0.0,"orcids-current":0.3203253171510417,"similarity-checking-backfile":0.6971507941073909,"references-backfile":0.2090023493884663,"descriptions-backfile":0.0,"award-numbers-backfile":0.02295121232436824,"update-policies-backfile":0.01234573699294714,"licenses-current":0.738916764672268,"award-numbers-current":0.1890445099044031,"abstracts-backfile":0.1219878573835491,"resource-links-current":0.03628849408095324,"abstracts-current":0.8217059979428041,"references-current":0.4868549603123399},"prefix":[{"name":"Oxford
459
+ University Press","value":"10.1093"},{"name":"Poultry Science Association","value":"10.3382"},{"name":"The
460
+ Journal of AOAC International","value":"10.5740"},{"name":"American Society
461
+ of Health System Pharmacists","value":"10.2146"},{"name":"The Genetics Society
462
+ of America","value":"10.1534"}],"id":286,"tokens":["oxford","university","press","oup"],"counts-type":{"all":{"book-section":7445,"monograph":10549,"report":14,"journal-article":3314696,"other":11418,"book":74844,"reference-entry":414637,"journal":87,"component":527,"book-chapter":546079,"reference-book":193847,"journal-issue":15982,"dataset":5874,"edited-book":1626},"backfile":{"book-section":5528,"monograph":10549,"report":14,"journal-article":3111047,"other":7877,"book":72367,"reference-entry":356939,"book-chapter":478339,"reference-book":193847,"journal-issue":15740,"dataset":5816,"edited-book":492},"current":{"book-section":1917,"journal-article":203649,"other":3541,"book":2477,"reference-entry":8521,"book-chapter":49762,"journal-issue":242,"edited-book":1134}},"coverage-type":{"all":{"book-section":{"last-status-check-time":1679182155676,"affiliations":0.01235728676964406,"abstracts":0.007118871725990598,"orcids":0.0,"licenses":0.01531229012760242,"references":0.5234385493619879,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"monograph":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.01080671153663854,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.005877334344487629,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":9.479571523367145E-5,"descriptions":0.0},"report":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-article":{"last-status-check-time":1679182155676,"affiliations":0.2463740264567248,"abstracts":0.1456163702493381,"orcids":0.05082185515655131,"licenses":0.2626120163055677,"references":0.290717459459329,"funders":0.0598640116620046,"similarity-checking":0.9348932752807497,"award-numbers":0.04495615887550472,"ror-ids":0.0,"update-policies":0.01881107649087578,"resource-links":0.08265886223050319,"descriptions":0.0},"other":{"last-status-check-time":1679182155676,"affiliations":7.882291119285339E-4,"abstracts":0.0,"orcids":0.0,"licenses":0.02347171133298301,"references":0.4216149938693291,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"book":{"last-status-check-time":1679182155676,"affiliations":0.0405910961466517,"abstracts":0.756747367858479,"orcids":0.0,"licenses":5.077227299449522E-4,"references":0.01803751803751804,"funders":0.0,"similarity-checking":0.01740954518732297,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"reference-entry":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.07091021785320654,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.06896551724137931,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"component":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.06641366223908918,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.06641366223908918},"book-chapter":{"last-status-check-time":1679182155676,"affiliations":0.02656209083301134,"abstracts":0.3147822934044342,"orcids":0.0,"licenses":0.001959423453383119,"references":0.08738112983652548,"funders":0.0,"similarity-checking":0.1383792454937839,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":2.014360559552739E-5,"descriptions":0.0},"reference-book":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-issue":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.4880490551870855,"references":0.0,"funders":0.0,"similarity-checking":0.09948692278813664,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.4844199724690277,"descriptions":0.0},"dataset":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"edited-book":{"last-status-check-time":1679182155676,"affiliations":0.9384993849938499,"abstracts":0.9821648216482165,"orcids":0.0,"licenses":0.02952029520295203,"references":0.4218942189421894,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0}},"backfile":{"book-section":{"last-status-check-time":1679182155676,"affiliations":0.01248191027496382,"abstracts":0.00958755426917511,"orcids":0.0,"licenses":0.01067293777134588,"references":0.5392547033285094,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"monograph":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.01080671153663854,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.005877334344487629,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":9.479571523367145E-5,"descriptions":0.0},"report":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-article":{"last-status-check-time":1679182155676,"affiliations":0.2031708296274534,"abstracts":0.102192927332824,"orcids":0.02622043318535528,"licenses":0.2156762659001937,"references":0.2723510766632584,"funders":0.04229508586659089,"similarity-checking":0.9310274001003521,"award-numbers":0.03141675455240631,"ror-ids":0.0,"update-policies":0.01689945539234862,"resource-links":0.08490582109495615,"descriptions":0.0},"other":{"last-status-check-time":1679182155676,"affiliations":0.001142566967119462,"abstracts":0.0,"orcids":0.0,"licenses":0.01383775549066904,"references":0.4368414370953409,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"book":{"last-status-check-time":1679182155676,"affiliations":0.03882985338621195,"abstracts":0.7489463429463706,"orcids":0.0,"licenses":3.040059695717661E-4,"references":0.01825417662746832,"funders":0.0,"similarity-checking":0.01800544447054597,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"reference-entry":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.06467211484315247,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"book-chapter":{"last-status-check-time":1679182155676,"affiliations":0.02089522284404993,"abstracts":0.2584840458336034,"orcids":0.0,"licenses":8.508610002529587E-4,"references":0.07278310988650309,"funders":0.0,"similarity-checking":0.1171240480077936,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":2.299624325007996E-5,"descriptions":0.0},"reference-book":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-issue":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.4955527318932656,"references":0.0,"funders":0.0,"similarity-checking":0.1010165184243964,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.4918678526048285,"descriptions":0.0},"dataset":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"edited-book":{"last-status-check-time":1679182155676,"affiliations":0.9004065040650407,"abstracts":0.959349593495935,"orcids":0.0,"licenses":0.03048780487804878,"references":0.3922764227642276,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0}},"current":{"book-section":{"last-status-check-time":1679182155676,"affiliations":0.01199791340636411,"abstracts":0.0,"orcids":0.0,"licenses":0.02869066249347939,"references":0.477829942618675,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-article":{"last-status-check-time":1679182155676,"affiliations":0.9063683101807521,"abstracts":0.808975246625321,"orcids":0.4266458465300591,"licenses":0.9796267106639365,"references":0.5712917814474905,"funders":0.3282559698304436,"similarity-checking":0.9939503754008122,"award-numbers":0.2517910718933066,"ror-ids":0.0,"update-policies":0.04801398484647604,"resource-links":0.04833316146899813,"descriptions":0.0},"other":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.04490256989550974,"references":0.3877435752612256,"funders":0.0,"similarity-checking":1.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"book":{"last-status-check-time":1679182155676,"affiliations":0.09204683084376263,"abstracts":0.9846588615260397,"orcids":0.0,"licenses":0.006459426725878078,"references":0.01170771094065402,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"reference-entry":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.7414622696866565,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"book-chapter":{"last-status-check-time":1679182155676,"affiliations":0.09063140549013303,"abstracts":0.9696756561231462,"orcids":0.0,"licenses":0.01332341947670914,"references":0.2592741449298662,"funders":0.0,"similarity-checking":0.3926892005948314,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"journal-issue":{"last-status-check-time":1679182155676,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"edited-book":{"last-status-check-time":1679182155676,"affiliations":0.955026455026455,"abstracts":0.9920634920634921,"orcids":0.0,"licenses":0.0291005291005291,"references":0.4347442680776014,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0}}},"flags":{"deposits-abstracts-current":true,"deposits-orcids-current":true,"deposits":true,"deposits-affiliations-backfile":true,"deposits-update-policies-backfile":true,"deposits-similarity-checking-backfile":true,"deposits-award-numbers-current":true,"deposits-resource-links-current":true,"deposits-ror-ids-current":false,"deposits-articles":true,"deposits-affiliations-current":true,"deposits-funders-current":true,"deposits-references-backfile":true,"deposits-ror-ids-backfile":false,"deposits-abstracts-backfile":true,"deposits-licenses-backfile":true,"deposits-award-numbers-backfile":true,"deposits-descriptions-current":false,"deposits-references-current":true,"deposits-resource-links-backfile":true,"deposits-descriptions-backfile":false,"deposits-orcids-backfile":true,"deposits-funders-backfile":true,"deposits-update-policies-current":true,"deposits-similarity-checking-current":true,"deposits-licenses-current":true},"location":"Oxford,
463
+ Oxfordshire, United Kingdom","names":["Oxford University Press (OUP)","Oxford
464
+ University Press","Poultry Science Association","The Journal of AOAC International","American
465
+ Society of Health System Pharmacists","The Genetics Society of America"]}}'
466
+ recorded_at: Sun, 19 Mar 2023 17:39:47 GMT
467
+ - request:
468
+ method: get
469
+ uri: https://doi.org/ra/10.1163
470
+ body:
471
+ encoding: UTF-8
472
+ string: ''
473
+ headers:
474
+ Connection:
475
+ - close
476
+ Host:
477
+ - doi.org
478
+ User-Agent:
479
+ - http.rb/5.1.1
480
+ response:
481
+ status:
482
+ code: 200
483
+ message: OK
484
+ headers:
485
+ Date:
486
+ - Sun, 19 Mar 2023 17:39:48 GMT
487
+ Content-Type:
488
+ - application/json;charset=UTF-8
489
+ Transfer-Encoding:
490
+ - chunked
491
+ Connection:
492
+ - close
493
+ Permissions-Policy:
494
+ - interest-cohort=(),browsing-topics=()
495
+ Cf-Cache-Status:
496
+ - DYNAMIC
497
+ Report-To:
498
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=jrhqAkQ9LKf1wzBA%2Bu5w%2FzVFNVO9EyYerYbCnd4FNn5xC2ZnvJW1J8qa8j%2Bfxc6G6k4n4FzvjxIiDnGVJDfDmVtKHmQj1OvWkg%2F5vghDxg9tGcULbxoOucBwJAI7RM7RbgfAUDg%3D"}],"group":"cf-nel","max_age":604800}'
499
+ Nel:
500
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
501
+ Strict-Transport-Security:
502
+ - max-age=31536000; includeSubDomains; preload
503
+ Server:
504
+ - cloudflare
505
+ Cf-Ray:
506
+ - 7aa77f31ce640bed-AMS
507
+ Alt-Svc:
508
+ - h3=":443"; ma=86400, h3-29=":443"; ma=86400
509
+ body:
510
+ encoding: UTF-8
511
+ string: |-
512
+ [
513
+ {
514
+ "DOI": "10.1163",
515
+ "RA": "Crossref"
516
+ }
517
+ ]
518
+ recorded_at: Sun, 19 Mar 2023 17:39:48 GMT
519
+ recorded_with: VCR 6.1.0