bolognese 1.4.1 → 1.4.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,144 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://schema.org/
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/ld+json;profile=http://www.w3.org/ns/json-ld#context, application/ld+json;q=0.9,
12
+ text/html;q=0.8, application/json;q=0.5
13
+ User-Agent:
14
+ - Ruby RDF.rb/3.1.1
15
+ Accept-Encoding:
16
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
17
+ response:
18
+ status:
19
+ code: 301
20
+ message: Moved Permanently
21
+ headers:
22
+ Location:
23
+ - https://schema.org/
24
+ X-Cloud-Trace-Context:
25
+ - a25bd617254742f94748be46462a7d6a
26
+ Date:
27
+ - Fri, 07 Feb 2020 11:00:34 GMT
28
+ Content-Type:
29
+ - text/html
30
+ Server:
31
+ - Google Frontend
32
+ Content-Length:
33
+ - '0'
34
+ body:
35
+ encoding: UTF-8
36
+ string: ''
37
+ http_version:
38
+ recorded_at: Fri, 07 Feb 2020 11:00:34 GMT
39
+ - request:
40
+ method: get
41
+ uri: https://schema.org/
42
+ body:
43
+ encoding: US-ASCII
44
+ string: ''
45
+ headers:
46
+ Accept:
47
+ - application/ld+json;profile=http://www.w3.org/ns/json-ld#context, application/ld+json;q=0.9,
48
+ text/html;q=0.8, application/json;q=0.5
49
+ User-Agent:
50
+ - Ruby RDF.rb/3.1.1
51
+ Accept-Encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ response:
54
+ status:
55
+ code: 200
56
+ message: OK
57
+ headers:
58
+ Access-Control-Allow-Origin:
59
+ - "*"
60
+ Content-Type:
61
+ - text/html
62
+ Cache-Control:
63
+ - public, max-age=600
64
+ Vary:
65
+ - Accept, Accept-Encoding
66
+ X-Cloud-Trace-Context:
67
+ - 206f64c01898abb49a2f683d45920c9f
68
+ Date:
69
+ - Fri, 07 Feb 2020 11:00:35 GMT
70
+ Server:
71
+ - Google Frontend
72
+ Content-Length:
73
+ - '5083'
74
+ Alt-Svc:
75
+ - quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443";
76
+ ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443";
77
+ ma=2592000
78
+ body:
79
+ encoding: UTF-8
80
+ string: "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <!-- Generated from
81
+ headtags.tpl -->\n <meta charset=\"utf-8\" >\n <link rel=\"shortcut
82
+ icon\" type=\"image/png\" href=\"docs/favicon.ico\"/>\n <link rel=\"stylesheet\"
83
+ type=\"text/css\" href=\"docs/schemaorg.css\" />\n <link rel=\"stylesheet\"
84
+ type=\"text/css\" href=\"docs/prettify.css\" />\n <script type=\"text/javascript\"
85
+ src=\"docs/prettify.js\"></script>\n \n <script type=\"text/javascript\"
86
+ src=\"//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js\"></script>\n<!--
87
+ ##### Generated insert [CSEScript-start] see scripts/genhtmlinserts.sh #####
88
+ --> \n<!-- Enable CSE Search -->\n<script>\n(function() {\nvar cx = '013516846811604855281:nj5laplixaa';
89
+ // Insert your own Custom Search engine ID here\nvar gcse = document.createElement('script');
90
+ gcse.type = 'text/javascript'; gcse.async = true;\ngcse.src = 'https://cse.google.com/cse.js?cx='
91
+ + cx;\nvar s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse,
92
+ s);\n})();\n</script>\n<!-- ##### Generated insert [CSEScript-end] see scripts/genhtmlinserts.sh
93
+ ##### --> \n<!-- End headtags.tpl -->\n <title>Home - schema.org</title>\n
94
+ \ <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n
95
+ \ <meta name=\"description\" content=\"Schema.org is a set of extensible
96
+ schemas that enables webmasters to embed\n structured data on their web
97
+ pages for use by search engines and other applications.\" />\n <link rel=\"stylesheet\"
98
+ type=\"text/css\" href=\"/docs/schemaorg.css\">\n</head>\n<body>\n<!-- Header
99
+ start from basicPageHeader.tpl -->\n<div id=\"container\">\n\t<div id=\"intro\">\n\t\t<div
100
+ id=\"pageHeader\">\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<div id=\"sitename\">\n\t\t\t\t<h1>\n\t\t\t\t\t<a
101
+ href=\"/\">schema.org</a>\n\t\t\t\t</h1>\n\t\t\t\t</div>\n\t\t\t\t<div id=\"cse-search-form\"
102
+ style=\"width: 400px;\"><div class=\"gcse-searchbox-only\" data-resultsUrl=\"docs/search_results.html\"></div></div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div
103
+ id=\"selectionbar\">\n\t<div class=\"wrapper\">\n\t\t<ul>\n\t \n\t
104
+ \ <li>\n\t \n\t\t\t\t<a href=\"docs/documents.html\">Documentation</a>\n\t\t\t</li>\n\t
105
+ \ \n\t <li>\n\t \n\t\t\t\t<a href=\"docs/schemas.html\">Schemas</a>\n\t\t\t</li>\n\t\t\t<li>\n\t
106
+ \ \n\t\t\t\t<a href=\"docs/about.html\">About</a>\n\t \n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n\n<!--
107
+ Header start from topnotes.tpl -->\n\n\n\n\n\n<!-- Header end from topnotes.tpl
108
+ -->\n\n<!-- Header end from basicPageHeader.tpl -->\n\n <div id=\"mainContent\">\n\n\n\n\n\n\n\n\n\n\n
109
+ \ <h1>Welcome to Schema.org</h1>\n\n\n<p>\n Schema.org is a collaborative,
110
+ community activity with a mission to create,\n maintain, and promote schemas
111
+ for structured data on the\n Internet, on web pages, in email messages,
112
+ and beyond.\n</p>\n\n<p>\n Schema.org vocabulary can be used with many
113
+ different encodings,\n including RDFa, Microdata and JSON-LD. These vocabularies
114
+ cover\n entities, relationships between entities and actions, and can\n
115
+ \ easily be extended through a well-documented extension model. Over 10
116
+ million sites use\n Schema.org to markup their web pages and email messages.\n
117
+ \ Many applications from Google, Microsoft, Pinterest, Yandex and others\n
118
+ \ already use these vocabularies to power rich, extensible experiences.\n</p>\n<p>\n
119
+ \ Founded by Google, Microsoft, Yahoo and Yandex,\n Schema.org vocabularies
120
+ are developed by an open <a href=\"https://www.w3.org/community/schemaorg\">community</a>
121
+ process,\n using the <a\n href=\"http://lists.w3.org/Archives/Public/public-schemaorg\">public-schemaorg@w3.org</a>\n
122
+ \ mailing list and through <a href=\"http://github.com/schemaorg/schemaorg\">GitHub</a>.\n</p>\n\n<p>\n
123
+ \ A shared vocabulary makes it easier for webmasters and developers to decide\n
124
+ \ on a schema and get the maximum benefit for their efforts.\n It is in
125
+ this spirit that the founders, together with the\n larger community have
126
+ come together - to provide a shared collection of schemas.\n </p>\n\n<p>\n
127
+ \ We invite you to <a href=\"docs/gs.html\">get started</a>!\n</p>\n<p>\n
128
+ \ View our blog at <a href=\"http://blog.schema.org\">blog.schema.org</a>
129
+ or see <a href=\"/docs/releases.html\">release history</a> for version 6.0.\n</p>\n\n<br/>\n</div>\n\n\n\n\n\n\n<div
130
+ id=\"footer\"><p>\n <a href=\"docs/terms.html\">Terms and conditions</a></p>\n</div>\n\n<script>\n
131
+ \ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n
132
+ \ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),\n
133
+ \ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n
134
+ \ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n\n
135
+ \ ga('create', 'UA-52672119-1', 'auto');\n ga('send', 'pageview');\n\n</script>\n\n\n\n<p><br/></p>\n\n<div
136
+ style=\"display: none;\">\n\n<div style=\"clear: both; float: left; text-align:
137
+ left; font-size: xx-small; color: #888 ; margin: 1em; line-height: 100%;\">\n
138
+ <ul>\n <li>SCHEMA_VERSION: 6.0 </li>\n <li>PYTHONAPP_VERSION: 2.0.1 </li>\n
139
+ \ <li>ENABLE_HOSTED_EXTENSIONS: True </li>\n <li>host_ext: </li>\n <li>myhost:
140
+ None </li>\n <li>myport: 80 </li>\n <li>mybasehost: schema.org </li>\n <li>debugging:
141
+ False </li>\n <li>AppEngine Version: 6-0 </li>\n </ul>\n</div>\n\n</div>\n\n</body>\n</html>"
142
+ http_version:
143
+ recorded_at: Fri, 07 Feb 2020 11:00:35 GMT
144
+ recorded_with: VCR 3.0.3
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Mozilla/5.0 (compatible; Maremma/4.2.1; mailto:info@datacite.org)
11
+ - Mozilla/5.0 (compatible; Maremma/4.5; mailto:info@datacite.org)
12
12
  Accept:
13
13
  - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
14
  response:
@@ -17,7 +17,7 @@ http_interactions:
17
17
  message: OK
18
18
  headers:
19
19
  Date:
20
- - Wed, 03 Jul 2019 19:24:29 GMT
20
+ - Fri, 07 Feb 2020 11:00:35 GMT
21
21
  Content-Type:
22
22
  - application/json; charset=utf-8
23
23
  Connection:
@@ -31,19 +31,162 @@ http_interactions:
31
31
  Vary:
32
32
  - Accept-Encoding, Origin
33
33
  X-Request-Id:
34
- - 0bafa3e8-c2da-41e2-9856-0e0f7a42465c
34
+ - 21173351-6b72-4dcf-b660-292a86a65662
35
35
  Etag:
36
- - W/"52c3f89e975eb93b41de6e3e71e627bd"
36
+ - W/"434085faa4d0e96e567189ddab827cf8"
37
37
  X-Runtime:
38
- - '0.020389'
38
+ - '0.072737'
39
39
  X-Powered-By:
40
- - Phusion Passenger 6.0.2
40
+ - Phusion Passenger 6.0.4
41
41
  Server:
42
- - nginx/1.15.8 + Phusion Passenger 6.0.2
42
+ - nginx/1.14.0 + Phusion Passenger 6.0.4
43
43
  body:
44
44
  encoding: ASCII-8BIT
45
45
  string: !binary |-
46
- eyJkYXRhIjp7ImlkIjoiMTAuNTA2MS9kcnlhZC44NTE1IiwidHlwZSI6ImRvaXMiLCJhdHRyaWJ1dGVzIjp7ImRvaSI6IjEwLjUwNjEvZHJ5YWQuODUxNSIsInByZWZpeCI6IjEwLjUwNjEiLCJzdWZmaXgiOiJkcnlhZC44NTE1IiwiaWRlbnRpZmllcnMiOlt7ImlkZW50aWZpZXIiOiJodHRwczovL2RvaS5vcmcvMTAuNTA2MS9kcnlhZC44NTE1IiwiaWRlbnRpZmllclR5cGUiOiJET0kifSx7ImlkZW50aWZpZXIiOiJPbGxvbW8gQiwgRHVyYW5kIFAsIFBydWdub2xsZSBGLCBEb3V6ZXJ5IEVKUCwgQXJuYXRoYXUgQywgTmtvZ2hlIEQsIExlcm95IEUsIFJlbmF1ZCBGICgyMDA5KSBBIG5ldyBtYWxhcmlhIGFnZW50IGluIEFmcmljYW4gaG9taW5pZHMuIFBMb1MgUGF0aG9nZW5zIDUoNSk6IGUxMDAwNDQ2LiIsImlkZW50aWZpZXJUeXBlIjoiY2l0YXRpb24ifV0sImNyZWF0b3JzIjpbeyJuYW1lIjoiT2xsb21vLCBCZW5qYW1pbiIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJCZW5qYW1pbiIsImZhbWlseU5hbWUiOiJPbGxvbW8ifSx7Im5hbWUiOiJEdXJhbmQsIFBhdHJpY2siLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiUGF0cmljayIsImZhbWlseU5hbWUiOiJEdXJhbmQifSx7Im5hbWUiOiJQcnVnbm9sbGUsIEZyYW5jayIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJGcmFuY2siLCJmYW1pbHlOYW1lIjoiUHJ1Z25vbGxlIn0seyJuYW1lIjoiRG91emVyeSwgRW1tYW51ZWwgSi4gUC4iLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiRW1tYW51ZWwgSi4gUC4iLCJmYW1pbHlOYW1lIjoiRG91emVyeSJ9LHsibmFtZSI6IkFybmF0aGF1LCBDw6lsaW5lIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IkPDqWxpbmUiLCJmYW1pbHlOYW1lIjoiQXJuYXRoYXUifSx7Im5hbWUiOiJOa29naGUsIERpZXVkb25uw6kiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiRGlldWRvbm7DqSIsImZhbWlseU5hbWUiOiJOa29naGUifSx7Im5hbWUiOiJMZXJveSwgRXJpYyIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJFcmljIiwiZmFtaWx5TmFtZSI6Ikxlcm95In0seyJuYW1lIjoiUmVuYXVkLCBGcmFuw6dvaXMiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiRnJhbsOnb2lzIiwiZmFtaWx5TmFtZSI6IlJlbmF1ZCJ9XSwidGl0bGVzIjpbeyJ0aXRsZSI6IkRhdGEgZnJvbTogQSBuZXcgbWFsYXJpYSBhZ2VudCBpbiBBZnJpY2FuIGhvbWluaWRzLiJ9XSwicHVibGlzaGVyIjoiRHJ5YWQgRGlnaXRhbCBSZXBvc2l0b3J5IiwiY29udGFpbmVyIjpudWxsLCJwdWJsaWNhdGlvblllYXIiOjIwMTEsInN1YmplY3RzIjpbeyJzdWJqZWN0IjoiUGh5bG9nZW55In0seyJzdWJqZWN0IjoiTWFsYXJpYSJ9LHsic3ViamVjdCI6IlBhcmFzaXRlcyJ9LHsic3ViamVjdCI6IlRheG9ub215In0seyJzdWJqZWN0IjoiTWl0b2Nob25kcmlhbCBnZW5vbWUifSx7InN1YmplY3QiOiJBZnJpY2EifSx7InN1YmplY3QiOiJQbGFzbW9kaXVtIn1dLCJjb250cmlidXRvcnMiOm51bGwsImRhdGVzIjpbeyJkYXRlIjoiMjAxMSIsImRhdGVUeXBlIjoiSXNzdWVkIn1dLCJsYW5ndWFnZSI6bnVsbCwidHlwZXMiOnsicmlzIjoiREFUQSIsImJpYnRleCI6Im1pc2MiLCJjaXRlcHJvYyI6ImRhdGFzZXQiLCJzY2hlbWFPcmciOiJEYXRhc2V0IiwicmVzb3VyY2VUeXBlIjoiRGF0YVBhY2thZ2UiLCJyZXNvdXJjZVR5cGVHZW5lcmFsIjoiRGF0YXNldCJ9LCJyZWxhdGVkSWRlbnRpZmllcnMiOlt7InJlbGF0aW9uVHlwZSI6Ikhhc1BhcnQiLCJyZWxhdGVkSWRlbnRpZmllciI6IjEwLjUwNjEvZHJ5YWQuODUxNS8xIiwicmVsYXRlZElkZW50aWZpZXJUeXBlIjoiRE9JIn0seyJyZWxhdGlvblR5cGUiOiJIYXNQYXJ0IiwicmVsYXRlZElkZW50aWZpZXIiOiIxMC41MDYxL2RyeWFkLjg1MTUvMiIsInJlbGF0ZWRJZGVudGlmaWVyVHlwZSI6IkRPSSJ9LHsicmVsYXRpb25UeXBlIjoiSXNSZWZlcmVuY2VkQnkiLCJyZWxhdGVkSWRlbnRpZmllciI6IjEwLjEzNzEvam91cm5hbC5wcGF0LjEwMDA0NDYiLCJyZWxhdGVkSWRlbnRpZmllclR5cGUiOiJET0kifSx7InJlbGF0aW9uVHlwZSI6IklzU3VwcGxlbWVudFRvIiwicmVsYXRlZElkZW50aWZpZXIiOiIxMC4xMzcxL2pvdXJuYWwucHBhdC4xMDAwNDQ2IiwicmVsYXRlZElkZW50aWZpZXJUeXBlIjoiRE9JIn0seyJyZWxhdGlvblR5cGUiOiJJc1JlZmVyZW5jZWRCeSIsInJlbGF0ZWRJZGVudGlmaWVyIjoiMTk0Nzg4NzciLCJyZWxhdGVkSWRlbnRpZmllclR5cGUiOiJQTUlEIn0seyJyZWxhdGlvblR5cGUiOiJJc1N1cHBsZW1lbnRUbyIsInJlbGF0ZWRJZGVudGlmaWVyIjoiMTk0Nzg4NzciLCJyZWxhdGVkSWRlbnRpZmllclR5cGUiOiJQTUlEIn1dLCJzaXplcyI6bnVsbCwiZm9ybWF0cyI6bnVsbCwidmVyc2lvbiI6IjEiLCJyaWdodHNMaXN0IjpbeyJyaWdodHNVcmkiOiJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9wdWJsaWNkb21haW4vemVyby8xLjAifV0sImRlc2NyaXB0aW9ucyI6bnVsbCwiZ2VvTG9jYXRpb25zIjpudWxsLCJmdW5kaW5nUmVmZXJlbmNlcyI6bnVsbCwieG1sIjoiUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0S1BISmxjMjkxY21ObElIaHRiRzV6UFNKb2RIUndPaTh2WkdGMFlXTnBkR1V1YjNKbkwzTmphR1Z0WVM5clpYSnVaV3d0TkNJZ2VHMXNibk02ZUhOcFBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF4TDFoTlRGTmphR1Z0WVMxcGJuTjBZVzVqWlNJZ2VHMXNibk02YldWMGN6MGlhSFIwY0RvdkwzZDNkeTVzYjJNdVoyOTJMMDFGVkZNdklpQjRiV3h1Y3pwa2MzQmhZMlU5SW1oMGRIQTZMeTkzZDNjdVpITndZV05sTG05eVp5OTRiV3h1Y3k5a2MzQmhZMlV2WkdsdElpQjRiV3h1Y3pwa2FXMDlJbWgwZEhBNkx5OTNkM2N1WkhOd1lXTmxMbTl5Wnk5NGJXeHVjeTlrYzNCaFkyVXZaR2x0SWlCNGJXeHVjenBrY25saFpEMGlhSFIwY0RvdkwzQjFjbXd1YjNKbkwyUnllV0ZrTDNSbGNtMXpMeUlnZUhOcE9uTmphR1Z0WVV4dlkyRjBhVzl1UFNKb2RIUndPaTh2WkdGMFlXTnBkR1V1YjNKbkwzTmphR1Z0WVM5clpYSnVaV3d0TkNCb2RIUndPaTh2YzJOb1pXMWhMbVJoZEdGamFYUmxMbTl5Wnk5dFpYUmhMMnRsY201bGJDMDBMMjFsZEdGa1lYUmhMbmh6WkNJK0NpQWdQR2xrWlc1MGFXWnBaWElnYVdSbGJuUnBabWxsY2xSNWNHVTlJa1JQU1NJK01UQXVOVEEyTVM5RVVsbEJSQzQ0TlRFMVBDOXBaR1Z1ZEdsbWFXVnlQZ29nSUR4MlpYSnphVzl1UGpFOEwzWmxjbk5wYjI0K0NpQWdQR055WldGMGIzSnpQZ29nSUNBZ1BHTnlaV0YwYjNJK0NpQWdJQ0FnSUR4amNtVmhkRzl5VG1GdFpUNVBiR3h2Ylc4c0lFSmxibXBoYldsdVBDOWpjbVZoZEc5eVRtRnRaVDRLSUNBZ0lEd3ZZM0psWVhSdmNqNEtJQ0FnSUR4amNtVmhkRzl5UGdvZ0lDQWdJQ0E4WTNKbFlYUnZjazVoYldVK1JIVnlZVzVrTENCUVlYUnlhV05yUEM5amNtVmhkRzl5VG1GdFpUNEtJQ0FnSUR3dlkzSmxZWFJ2Y2o0S0lDQWdJRHhqY21WaGRHOXlQZ29nSUNBZ0lDQThZM0psWVhSdmNrNWhiV1UrVUhKMVoyNXZiR3hsTENCR2NtRnVZMnM4TDJOeVpXRjBiM0pPWVcxbFBnb2dJQ0FnUEM5amNtVmhkRzl5UGdvZ0lDQWdQR055WldGMGIzSStDaUFnSUNBZ0lEeGpjbVZoZEc5eVRtRnRaVDVFYjNWNlpYSjVMQ0JGYlcxaGJuVmxiQ0JLTGlCUUxqd3ZZM0psWVhSdmNrNWhiV1UrQ2lBZ0lDQThMMk55WldGMGIzSStDaUFnSUNBOFkzSmxZWFJ2Y2o0S0lDQWdJQ0FnUEdOeVpXRjBiM0pPWVcxbFBrRnlibUYwYUdGMUxDQkR3NmxzYVc1bFBDOWpjbVZoZEc5eVRtRnRaVDRLSUNBZ0lEd3ZZM0psWVhSdmNqNEtJQ0FnSUR4amNtVmhkRzl5UGdvZ0lDQWdJQ0E4WTNKbFlYUnZjazVoYldVK1RtdHZaMmhsTENCRWFXVjFaRzl1YnNPcFBDOWpjbVZoZEc5eVRtRnRaVDRLSUNBZ0lEd3ZZM0psWVhSdmNqNEtJQ0FnSUR4amNtVmhkRzl5UGdvZ0lDQWdJQ0E4WTNKbFlYUnZjazVoYldVK1RHVnliM2tzSUVWeWFXTThMMk55WldGMGIzSk9ZVzFsUGdvZ0lDQWdQQzlqY21WaGRHOXlQZ29nSUNBZ1BHTnlaV0YwYjNJK0NpQWdJQ0FnSUR4amNtVmhkRzl5VG1GdFpUNVNaVzVoZFdRc0lFWnlZVzdEcDI5cGN6d3ZZM0psWVhSdmNrNWhiV1UrQ2lBZ0lDQThMMk55WldGMGIzSStDaUFnUEM5amNtVmhkRzl5Y3o0S0lDQThkR2wwYkdWelBnb2dJQ0FnUEhScGRHeGxQa1JoZEdFZ1puSnZiVG9nUVNCdVpYY2diV0ZzWVhKcFlTQmhaMlZ1ZENCcGJpQkJabkpwWTJGdUlHaHZiV2x1YVdSekxqd3ZkR2wwYkdVK0NpQWdQQzkwYVhSc1pYTStDaUFnUEhCMVlteHBjMmhsY2o1RWNubGhaQ0JFYVdkcGRHRnNJRkpsY0c5emFYUnZjbms4TDNCMVlteHBjMmhsY2o0S0lDQThjSFZpYkdsallYUnBiMjVaWldGeVBqSXdNVEU4TDNCMVlteHBZMkYwYVc5dVdXVmhjajRLSUNBOGMzVmlhbVZqZEhNK0NpQWdJQ0E4YzNWaWFtVmpkRDVRYUhsc2IyZGxibms4TDNOMVltcGxZM1ErQ2lBZ0lDQThjM1ZpYW1WamRENU5ZV3hoY21saFBDOXpkV0pxWldOMFBnb2dJQ0FnUEhOMVltcGxZM1ErVUdGeVlYTnBkR1Z6UEM5emRXSnFaV04wUGdvZ0lDQWdQSE4xWW1wbFkzUStWR0Y0YjI1dmJYazhMM04xWW1wbFkzUStDaUFnSUNBOGMzVmlhbVZqZEQ1TmFYUnZZMmh2Ym1SeWFXRnNJR2RsYm05dFpUd3ZjM1ZpYW1WamRENEtJQ0FnSUR4emRXSnFaV04wUGtGbWNtbGpZVHd2YzNWaWFtVmpkRDRLSUNBZ0lEeHpkV0pxWldOMFBsQnNZWE50YjJScGRXMDhMM04xWW1wbFkzUStDaUFnUEM5emRXSnFaV04wY3o0S0lDQThjbVZ6YjNWeVkyVlVlWEJsSUhKbGMyOTFjbU5sVkhsd1pVZGxibVZ5WVd3OUlrUmhkR0Z6WlhRaVBrUmhkR0ZRWVdOcllXZGxQQzl5WlhOdmRYSmpaVlI1Y0dVK0NpQWdQR0ZzZEdWeWJtRjBaVWxrWlc1MGFXWnBaWEp6UGdvZ0lDQWdQR0ZzZEdWeWJtRjBaVWxrWlc1MGFXWnBaWElnWVd4MFpYSnVZWFJsU1dSbGJuUnBabWxsY2xSNWNHVTlJbU5wZEdGMGFXOXVJajVQYkd4dmJXOGdRaXdnUkhWeVlXNWtJRkFzSUZCeWRXZHViMnhzWlNCR0xDQkViM1Y2WlhKNUlFVktVQ3dnUVhKdVlYUm9ZWFVnUXl3Z1RtdHZaMmhsSUVRc0lFeGxjbTk1SUVVc0lGSmxibUYxWkNCR0lDZ3lNREE1S1NCQklHNWxkeUJ0WVd4aGNtbGhJR0ZuWlc1MElHbHVJRUZtY21sallXNGdhRzl0YVc1cFpITXVJRkJNYjFNZ1VHRjBhRzluWlc1eklEVW9OU2s2SUdVeE1EQXdORFEyTGp3dllXeDBaWEp1WVhSbFNXUmxiblJwWm1sbGNqNEtJQ0E4TDJGc2RHVnlibUYwWlVsa1pXNTBhV1pwWlhKelBnb2dJRHh5Wld4aGRHVmtTV1JsYm5ScFptbGxjbk0rQ2lBZ0lDQThjbVZzWVhSbFpFbGtaVzUwYVdacFpYSWdjbVZzWVhSbFpFbGtaVzUwYVdacFpYSlVlWEJsUFNKRVQwa2lJSEpsYkdGMGFXOXVWSGx3WlQwaVNHRnpVR0Z5ZENJK01UQXVOVEEyTVM5RVVsbEJSQzQ0TlRFMUx6RThMM0psYkdGMFpXUkpaR1Z1ZEdsbWFXVnlQZ29nSUNBZ1BISmxiR0YwWldSSlpHVnVkR2xtYVdWeUlISmxiR0YwWldSSlpHVnVkR2xtYVdWeVZIbHdaVDBpUkU5SklpQnlaV3hoZEdsdmJsUjVjR1U5SWtoaGMxQmhjblFpUGpFd0xqVXdOakV2UkZKWlFVUXVPRFV4TlM4eVBDOXlaV3hoZEdWa1NXUmxiblJwWm1sbGNqNEtJQ0FnSUR4eVpXeGhkR1ZrU1dSbGJuUnBabWxsY2lCeVpXeGhkR1ZrU1dSbGJuUnBabWxsY2xSNWNHVTlJa1JQU1NJZ2NtVnNZWFJwYjI1VWVYQmxQU0pKYzFKbFptVnlaVzVqWldSQ2VTSStNVEF1TVRNM01TOUtUMVZTVGtGTUxsQlFRVlF1TVRBd01EUTBOand2Y21Wc1lYUmxaRWxrWlc1MGFXWnBaWEkrQ2lBZ0lDQThjbVZzWVhSbFpFbGtaVzUwYVdacFpYSWdjbVZzWVhSbFpFbGtaVzUwYVdacFpYSlVlWEJsUFNKRVQwa2lJSEpsYkdGMGFXOXVWSGx3WlQwaVNYTlRkWEJ3YkdWdFpXNTBWRzhpUGpFd0xqRXpOekV2U2s5VlVrNUJUQzVRVUVGVUxqRXdNREEwTkRZOEwzSmxiR0YwWldSSlpHVnVkR2xtYVdWeVBnb2dJQ0FnUEhKbGJHRjBaV1JKWkdWdWRHbG1hV1Z5SUhKbGJHRjBaV1JKWkdWdWRHbG1hV1Z5Vkhsd1pUMGlVRTFKUkNJZ2NtVnNZWFJwYjI1VWVYQmxQU0pKYzFKbFptVnlaVzVqWldSQ2VTSStNVGswTnpnNE56YzhMM0psYkdGMFpXUkpaR1Z1ZEdsbWFXVnlQZ29nSUNBZ1BISmxiR0YwWldSSlpHVnVkR2xtYVdWeUlISmxiR0YwWldSSlpHVnVkR2xtYVdWeVZIbHdaVDBpVUUxSlJDSWdjbVZzWVhScGIyNVVlWEJsUFNKSmMxTjFjSEJzWlcxbGJuUlVieUkrTVRrME56ZzROemM4TDNKbGJHRjBaV1JKWkdWdWRHbG1hV1Z5UGdvZ0lEd3ZjbVZzWVhSbFpFbGtaVzUwYVdacFpYSnpQZ29nSUR4eWFXZG9kSE5NYVhOMFBnb2dJQ0FnUEhKcFoyaDBjeUJ5YVdkb2RITlZVa2s5SW1oMGRIQTZMeTlqY21WaGRHbDJaV052YlcxdmJuTXViM0puTDNCMVlteHBZMlJ2YldGcGJpOTZaWEp2THpFdU1DOGlMejRLSUNBOEwzSnBaMmgwYzB4cGMzUStDand2Y21WemIzVnlZMlUrIiwidXJsIjoiaHR0cHM6Ly9kYXRhZHJ5YWQub3JnL3Jlc291cmNlL2RvaToxMC41MDYxL2RyeWFkLjg1MTUiLCJjb250ZW50VXJsIjpudWxsLCJtZXRhZGF0YVZlcnNpb24iOjEzLCJzY2hlbWFWZXJzaW9uIjoiaHR0cDovL2RhdGFjaXRlLm9yZy9zY2hlbWEva2VybmVsLTQiLCJzb3VyY2UiOiJleiIsImlzQWN0aXZlIjp0cnVlLCJzdGF0ZSI6ImZpbmRhYmxlIiwicmVhc29uIjpudWxsLCJjcmVhdGVkIjoiMjAxMS0xMS0yMlQxMzozNDo1MS4wMDAtMDU6MDAiLCJyZWdpc3RlcmVkIjoiMjAxMS0wMi0wMVQxMjozMjowMi4wMDAtMDU6MDAiLCJwdWJsaXNoZWQiOiIyMDExIiwidXBkYXRlZCI6IjIwMTktMDctMDNUMDQ6MjU6MTUuMDAwLTA0OjAwIn0sInJlbGF0aW9uc2hpcHMiOnsiY2xpZW50Ijp7ImRhdGEiOnsiaWQiOiJkcnlhZC5kcnlhZCIsInR5cGUiOiJjbGllbnRzIn19LCJtZWRpYSI6eyJkYXRhIjpbXX19fSwiaW5jbHVkZWQiOlt7ImlkIjoiZHJ5YWQuZHJ5YWQiLCJ0eXBlIjoiY2xpZW50cyIsImF0dHJpYnV0ZXMiOnsibmFtZSI6IkRSWUFEIiwic3ltYm9sIjoiRFJZQUQuRFJZQUQiLCJ5ZWFyIjoyMDE4LCJjb250YWN0TmFtZSI6IkRyeWFkIEFkbWluaXN0cmF0b3IiLCJjb250YWN0RW1haWwiOiJhZG1pbkBkYXRhZHJ5YWQub3JnIiwiZGVzY3JpcHRpb24iOiJEYXRhRHJ5YWQub3JnIGlzIGEgY3VyYXRlZCBnZW5lcmFsLXB1cnBvc2UgcmVwb3NpdG9yeSB0aGF0IG1ha2VzIHRoZSBkYXRhIHVuZGVybHlpbmcgc2NpZW50aWZpYyBwdWJsaWNhdGlvbnMgZGlzY292ZXJhYmxlLCBmcmVlbHkgcmV1c2FibGUsIGFuZCBjaXRhYmxlLlxyXG5EcnlhZCBpcyBhbiBpbnRlcm5hdGlvbmFsIHJlcG9zaXRvcnkgb2YgZGF0YSB1bmRlcmx5aW5nIHBlZXItcmV2aWV3ZWQgc2NpZW50aWZpYyBhbmQgbWVkaWNhbCBsaXRlcmF0dXJlLCBwYXJ0aWN1bGFybHkgZGF0YSBmb3Igd2hpY2ggbm8gc3BlY2lhbGl6ZWQgcmVwb3NpdG9yeSBleGlzdHMuIFRoZSBjb250ZW50IGlzIGNvbnNpZGVyZWQgdG8gYmUgaW50ZWdyYWwgdG8gdGhlIHB1Ymxpc2hlZCByZXNlYXJjaC4gQWxsIG1hdGVyaWFsIGluIERyeWFkIGlzIGFzc29jaWF0ZWQgd2l0aCBhIHNjaG9sYXJseSBwdWJsaWNhdGlvbiIsImRvbWFpbnMiOiIqIiwidXJsIjoiaHR0cHM6Ly9kYXRhZHJ5YWQub3JnIiwiY3JlYXRlZCI6IjIwMTgtMDQtMjRUMTY6NTk6MTUuMDAwLTA0OjAwIiwidXBkYXRlZCI6IjIwMTktMDYtMDJUMTg6NDc6MTkuMDAwLTA0OjAwIiwiaXNBY3RpdmUiOnRydWUsImhhc1Bhc3N3b3JkIjp0cnVlfSwicmVsYXRpb25zaGlwcyI6eyJwcm92aWRlciI6eyJkYXRhIjp7ImlkIjoiZHJ5YWQiLCJ0eXBlIjoicHJvdmlkZXJzIn19LCJyZXBvc2l0b3J5Ijp7ImRhdGEiOnsiaWQiOiIxMC4xNzYxNi9SMzRTMzMiLCJ0eXBlIjoicmVwb3NpdG9yaWVzIn19LCJwcmVmaXhlcyI6eyJkYXRhIjpbeyJpZCI6IjEwLjUwNjEiLCJ0eXBlIjoicHJlZml4ZXMifSx7ImlkIjoiMTAuMTUxNDYiLCJ0eXBlIjoicHJlZml4ZXMifV19fX1dfQ==
46
+ eyJkYXRhIjp7ImlkIjoiMTAuNTA2MS9kcnlhZC44NTE1IiwidHlwZSI6ImRvaXMiLCJhdHRyaWJ1dGVzIjp7ImRvaSI6IjEwLjUwNjEvZHJ5YWQuODUxNSIsInByZWZpeCI6IjEwLjUwNjEiLCJzdWZmaXgiOiJkcnlhZC44NTE1IiwiaWRlbnRpZmllcnMiOlt7ImlkZW50aWZpZXIiOiJodHRwczovL2RvaS5vcmcvMTAuNTA2MS9kcnlhZC44NTE1IiwiaWRlbnRpZmllclR5cGUiOiJET0kifV0sImNyZWF0b3JzIjpbeyJuYW1lIjoiT2xsb21vLCBCZW5qYW1pbiIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJCZW5qYW1pbiIsImZhbWlseU5hbWUiOiJPbGxvbW8iLCJhZmZpbGlhdGlvbiI6WyJDZW50cmUgSW50ZXJuYXRpb25hbCBkZSBSZWNoZXJjaGVzIE3DqWRpY2FsZXMgZGUgRnJhbmNldmlsbGUiXSwibmFtZUlkZW50aWZpZXJzIjpbXX0seyJuYW1lIjoiRHVyYW5kLCBQYXRyaWNrIiwibmFtZVR5cGUiOiJQZXJzb25hbCIsImdpdmVuTmFtZSI6IlBhdHJpY2siLCJmYW1pbHlOYW1lIjoiRHVyYW5kIiwiYWZmaWxpYXRpb24iOlsiRnJlbmNoIE5hdGlvbmFsIENlbnRyZSBmb3IgU2NpZW50aWZpYyBSZXNlYXJjaCJdLCJuYW1lSWRlbnRpZmllcnMiOltdfSx7Im5hbWUiOiJQcnVnbm9sbGUsIEZyYW5jayIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJGcmFuY2siLCJmYW1pbHlOYW1lIjoiUHJ1Z25vbGxlIiwiYWZmaWxpYXRpb24iOlsiRnJlbmNoIE5hdGlvbmFsIENlbnRyZSBmb3IgU2NpZW50aWZpYyBSZXNlYXJjaCJdLCJuYW1lSWRlbnRpZmllcnMiOltdfSx7Im5hbWUiOiJEb3V6ZXJ5LCBFbW1hbnVlbCBKLiBQLiIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJFbW1hbnVlbCBKLiBQLiIsImZhbWlseU5hbWUiOiJEb3V6ZXJ5IiwiYWZmaWxpYXRpb24iOltdLCJuYW1lSWRlbnRpZmllcnMiOltdfSx7Im5hbWUiOiJBcm5hdGhhdSwgQ8OpbGluZSIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJDw6lsaW5lIiwiZmFtaWx5TmFtZSI6IkFybmF0aGF1IiwiYWZmaWxpYXRpb24iOlsiRnJlbmNoIE5hdGlvbmFsIENlbnRyZSBmb3IgU2NpZW50aWZpYyBSZXNlYXJjaCJdLCJuYW1lSWRlbnRpZmllcnMiOltdfSx7Im5hbWUiOiJOa29naGUsIERpZXVkb25uw6kiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiRGlldWRvbm7DqSIsImZhbWlseU5hbWUiOiJOa29naGUiLCJhZmZpbGlhdGlvbiI6WyJDZW50cmUgSW50ZXJuYXRpb25hbCBkZSBSZWNoZXJjaGVzIE3DqWRpY2FsZXMgZGUgRnJhbmNldmlsbGUiXSwibmFtZUlkZW50aWZpZXJzIjpbXX0seyJuYW1lIjoiTGVyb3ksIEVyaWMiLCJuYW1lVHlwZSI6IlBlcnNvbmFsIiwiZ2l2ZW5OYW1lIjoiRXJpYyIsImZhbWlseU5hbWUiOiJMZXJveSIsImFmZmlsaWF0aW9uIjpbIkNlbnRyZSBJbnRlcm5hdGlvbmFsIGRlIFJlY2hlcmNoZXMgTcOpZGljYWxlcyBkZSBGcmFuY2V2aWxsZSJdLCJuYW1lSWRlbnRpZmllcnMiOltdfSx7Im5hbWUiOiJSZW5hdWQsIEZyYW7Dp29pcyIsIm5hbWVUeXBlIjoiUGVyc29uYWwiLCJnaXZlbk5hbWUiOiJGcmFuw6dvaXMiLCJmYW1pbHlOYW1lIjoiUmVuYXVkIiwiYWZmaWxpYXRpb24iOlsiRnJlbmNoIE5hdGlvbmFsIENlbnRyZSBmb3IgU2NpZW50aWZpYyBSZXNlYXJjaCJdLCJuYW1lSWRlbnRpZmllcnMiOltdfV0sInRpdGxlcyI6W3sidGl0bGUiOiJEYXRhIGZyb206IEEgbmV3IG1hbGFyaWEgYWdlbnQgaW4gQWZyaWNhbiBob21pbmlkcy4ifV0sInB1Ymxpc2hlciI6IkRyeWFkIiwiY29udGFpbmVyIjp7fSwicHVibGljYXRpb25ZZWFyIjoyMDExLCJzdWJqZWN0cyI6W3sic3ViamVjdCI6IlBsYXNtb2RpdW0ifSx7InN1YmplY3QiOiJtYWxhcmlhIn0seyJzdWJqZWN0IjoidGF4b25vbXkifSx7InN1YmplY3QiOiJtaXRvY2hvbmRyaWFsIGdlbm9tZSJ9LHsic3ViamVjdCI6InBoeWxvZ2VueSJ9LHsic3ViamVjdCI6IlBhcmFzaXRlcyJ9XSwiY29udHJpYnV0b3JzIjpbXSwiZGF0ZXMiOlt7ImRhdGUiOiIyMDExLTAyLTAxVDE3OjIyOjQxWiIsImRhdGVUeXBlIjoiQXZhaWxhYmxlIn0seyJkYXRlIjoiMjAxMSIsImRhdGVUeXBlIjoiSXNzdWVkIn1dLCJsYW5ndWFnZSI6ImVuIiwidHlwZXMiOnsicmlzIjoiREFUQSIsImJpYnRleCI6Im1pc2MiLCJjaXRlcHJvYyI6ImRhdGFzZXQiLCJzY2hlbWFPcmciOiJEYXRhc2V0IiwicmVzb3VyY2VUeXBlIjoiZGF0YXNldCIsInJlc291cmNlVHlwZUdlbmVyYWwiOiJEYXRhc2V0In0sInJlbGF0ZWRJZGVudGlmaWVycyI6W3sicmVsYXRpb25UeXBlIjoiSXNTdXBwbGVtZW50VG8iLCJyZWxhdGVkSWRlbnRpZmllciI6ImRvaToxMC4xMzcxL2pvdXJuYWwucHBhdC4xMDAwNDQ2IiwicmVsYXRlZElkZW50aWZpZXJUeXBlIjoiRE9JIn1dLCJzaXplcyI6WyIxMDczMjggYnl0ZXMiXSwiZm9ybWF0cyI6W10sInZlcnNpb24iOiIxIiwicmlnaHRzTGlzdCI6W3sicmlnaHRzIjoiQ0MwIDEuMCBVbml2ZXJzYWwgKENDMCAxLjApIFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbiIsInJpZ2h0c1VyaSI6Imh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9wdWJsaWNkb21haW4vemVyby8xLjAifV0sImRlc2NyaXB0aW9ucyI6W3siZGVzY3JpcHRpb24iOiJQbGFzbW9kaXVtIGZhbGNpcGFydW0gaXMgdGhlIG1ham9yIGh1bWFuIG1hbGFyaWEgYWdlbnQgcmVzcG9uc2libGUgZm9yIDIwMCB0byAzMDAgbWlsbGlvbiBpbmZlY3Rpb25zIGFuZCBvbmUgdG8gdGhyZWUgbWlsbGlvbiBkZWF0aHMgYW5udWFsbHksIG1haW5seSBhbW9uZyBBZnJpY2FuIGluZmFudHMuIFRoZSBvcmlnaW4gYW5kIGV2b2x1dGlvbiBvZiB0aGlzIHBhdGhvZ2VuIHdpdGhpbiB0aGUgaHVtYW4gbGluZWFnZSBpcyBzdGlsbCB1bnJlc29sdmVkLiBBIHNpbmdsZSBzcGVjaWVzLCBQLiByZWljaGVub3dpLCB3aGljaCBpbmZlY3RzIGNoaW1wYW56ZWVzLCBpcyBrbm93biB0byBiZSBhIGNsb3NlIHNpc3RlciBsaW5lYWdlIG9mIFAuIGZhbGNpcGFydW0uIEhlcmUgd2UgcmVwb3J0IHRoZSBkaXNjb3Zlcnkgb2YgYSBuZXcgUGxhc21vZGl1bSBzcGVjaWVzIGluZmVjdGluZyBIb21pbmlkcy4gVGhpcyBuZXcgc3BlY2llcyBoYXMgYmVlbiBpc29sYXRlZCBpbiB0d28gY2hpbXBhbnplZXMgKFBhbiB0cm9nbG9keXRlcykga2VwdCBhcyBwZXRzIGJ5IHZpbGxhZ2VycyBpbiBHYWJvbiAoQWZyaWNhKS4gQW5hbHlzaXMgb2YgaXRzIGNvbXBsZXRlIG1pdG9jaG9uZHJpYWwgZ2Vub21lICg1NTI5IG51Y2xlb3RpZGVzIGluY2x1ZGluZyBDeXQgYiwgQ294IEkgYW5kIENveCBJSUkgZ2VuZXMpIHJldmVhbHMgYW4gb2xkZXIgZGl2ZXJnZW5jZSBvZiB0aGlzIGxpbmVhZ2UgZnJvbSB0aGUgY2xhZGUgdGhhdCBpbmNsdWRlcyBQLiBmYWxjaXBhcnVtIGFuZCBQLiByZWljaGVub3dpIChhcHByb3hpbWF0ZWx5IDIxKy8tOSBNeXJzIGFnbyB1c2luZyBCYXllc2lhbiBtZXRob2RzIGFuZCBjb25zaWRlcmluZyB0aGF0IHRoZSBkaXZlcmdlbmNlIGJldHdlZW4gUC4gZmFsY2lwYXJ1bSBhbmQgUC4gcmVpY2hlbm93aSBvY2N1cnJlZCA0IHRvIDcgbWlsbGlvbiB5ZWFycyBhZ28gYXMgZ2VuZXJhbGx5IGNvbnNpZGVyZWQgaW4gdGhlIGxpdGVyYXR1cmUpLiBUaGlzIHRpbWUgZnJhbWUgd291bGQgYmUgY29uZ3J1ZW50IHdpdGggdGhlIHJhZGlhdGlvbiBvZiBob21pbm9pZHMsIHN1Z2dlc3RpbmcgdGhhdCB0aGlzIFBsYXNtb2RpdW0gbGluZWFnZSBtaWdodCBoYXZlIGJlZW4gcHJlc2VudCBpbiBlYXJseSBob21pbm9pZHMgYW5kIHRoYXQgdGhleSBtYXkgYm90aCBoYXZlIGV4cGVyaWVuY2VkIGEgc2ltdWx0YW5lb3VzIGRpdmVyc2lmaWNhdGlvbi4gSW52ZXN0aWdhdGlvbiBvZiB0aGUgbnVjbGVhciBnZW5vbWUgb2YgdGhpcyBuZXcgc3BlY2llcyB3aWxsIGZ1cnRoZXIgdGhlIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGdlbmV0aWMgYWRhcHRhdGlvbnMgb2YgUC4gZmFsY2lwYXJ1bSB0byBodW1hbnMuIFRoZSByaXNrIG9mIHRyYW5zZmVyIGFuZCBlbWVyZ2VuY2Ugb2YgdGhpcyBuZXcgc3BlY2llcyBpbiBodW1hbnMgbXVzdCBiZSBub3cgc2VyaW91c2x5IGNvbnNpZGVyZWQgZ2l2ZW4gdGhhdCBpdCB3YXMgZm91bmQgaW4gdHdvIGNoaW1wYW56ZWVzIGxpdmluZyBpbiBjb250YWN0IHdpdGggaHVtYW5zIGFuZCBpdHMgY2xvc2UgcmVsYXRlZG5lc3MgdG8gdGhlIG1vc3QgdmlydWxlbnQgYWdlbnQgb2YgbWFsYXJpYS4iLCJkZXNjcmlwdGlvblR5cGUiOiJBYnN0cmFjdCJ9LHsiZGVzY3JpcHRpb24iOiJPbGxvbW9fUExvU1BhdGhvZ18yMDA5TnVjbGVvdGlkZSBhbGlnbm1lbnQgY29uY2F0ZW5hdGlvbiBvZiA0IG1pdG9jaG9uZHJpYWwgZ2VuZXMgZm9yIDE3IFBsYXNtb2RpdW0gc3BlY2llcyBhbmQgb25lIG91dGdyb3VwLk9sbG9tb19QTG9TUGF0aG9nXzIwMDlfUEhZTUxNYXhpbXVtIGxpa2VsaWhvb2QgdHJlZSBpbmZlcnJlZCBmcm9tIHRoZSA0LWdlbmUgY29uY2F0ZW5hdGlvbiB1c2luZyBQSFlNTC4iLCJkZXNjcmlwdGlvblR5cGUiOiJPdGhlciJ9XSwiZ2VvTG9jYXRpb25zIjpbeyJnZW9Mb2NhdGlvblBsYWNlIjoiQWZyaWNhIn1dLCJmdW5kaW5nUmVmZXJlbmNlcyI6W10sInhtbCI6IlBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlWVlJHTFRnaVB6NEtQSEpsYzI5MWNtTmxJSGh0Ykc1ek9uaHphVDBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01TOVlUVXhUWTJobGJXRXRhVzV6ZEdGdVkyVWlJSGh0Ykc1elBTSm9kSFJ3T2k4dlpHRjBZV05wZEdVdWIzSm5MM05qYUdWdFlTOXJaWEp1Wld3dE5DSWdlSE5wT25OamFHVnRZVXh2WTJGMGFXOXVQU0pvZEhSd09pOHZaR0YwWVdOcGRHVXViM0puTDNOamFHVnRZUzlyWlhKdVpXd3ROQ0JvZEhSd09pOHZjMk5vWlcxaExtUmhkR0ZqYVhSbExtOXlaeTl0WlhSaEwydGxjbTVsYkMwMEwyMWxkR0ZrWVhSaExuaHpaQ0krQ2lBZ1BHbGtaVzUwYVdacFpYSWdhV1JsYm5ScFptbGxjbFI1Y0dVOUlrUlBTU0krTVRBdU5UQTJNUzlFVWxsQlJDNDROVEUxUEM5cFpHVnVkR2xtYVdWeVBnb2dJRHhqY21WaGRHOXljejRLSUNBZ0lEeGpjbVZoZEc5eVBnb2dJQ0FnSUNBOFkzSmxZWFJ2Y2s1aGJXVStUMnhzYjIxdkxDQkNaVzVxWVcxcGJqd3ZZM0psWVhSdmNrNWhiV1UrQ2lBZ0lDQWdJRHhoWm1acGJHbGhkR2x2YmlCaFptWnBiR2xoZEdsdmJrbGtaVzUwYVdacFpYSTlJbWgwZEhCek9pOHZjbTl5TG05eVp5OHdNWGQ1Y1dJNU9UY2lJR0ZtWm1sc2FXRjBhVzl1U1dSbGJuUnBabWxsY2xOamFHVnRaVDBpVWs5U0lqNURaVzUwY21VZ1NXNTBaWEp1WVhScGIyNWhiQ0JrWlNCU1pXTm9aWEpqYUdWeklFM0RxV1JwWTJGc1pYTWdaR1VnUm5KaGJtTmxkbWxzYkdVOEwyRm1abWxzYVdGMGFXOXVQZ29nSUNBZ1BDOWpjbVZoZEc5eVBnb2dJQ0FnUEdOeVpXRjBiM0krQ2lBZ0lDQWdJRHhqY21WaGRHOXlUbUZ0WlQ1RWRYSmhibVFzSUZCaGRISnBZMnM4TDJOeVpXRjBiM0pPWVcxbFBnb2dJQ0FnSUNBOFlXWm1hV3hwWVhScGIyNGdZV1ptYVd4cFlYUnBiMjVKWkdWdWRHbG1hV1Z5UFNKb2RIUndjem92TDNKdmNpNXZjbWN2TURKbVpXRm9kemN6SWlCaFptWnBiR2xoZEdsdmJrbGtaVzUwYVdacFpYSlRZMmhsYldVOUlsSlBVaUkrUm5KbGJtTm9JRTVoZEdsdmJtRnNJRU5sYm5SeVpTQm1iM0lnVTJOcFpXNTBhV1pwWXlCU1pYTmxZWEpqYUR3dllXWm1hV3hwWVhScGIyNCtDaUFnSUNBOEwyTnlaV0YwYjNJK0NpQWdJQ0E4WTNKbFlYUnZjajRLSUNBZ0lDQWdQR055WldGMGIzSk9ZVzFsUGxCeWRXZHViMnhzWlN3Z1JuSmhibU5yUEM5amNtVmhkRzl5VG1GdFpUNEtJQ0FnSUNBZ1BHRm1abWxzYVdGMGFXOXVJR0ZtWm1sc2FXRjBhVzl1U1dSbGJuUnBabWxsY2owaWFIUjBjSE02THk5eWIzSXViM0puTHpBeVptVmhhSGMzTXlJZ1lXWm1hV3hwWVhScGIyNUpaR1Z1ZEdsbWFXVnlVMk5vWlcxbFBTSlNUMUlpUGtaeVpXNWphQ0JPWVhScGIyNWhiQ0JEWlc1MGNtVWdabTl5SUZOamFXVnVkR2xtYVdNZ1VtVnpaV0Z5WTJnOEwyRm1abWxzYVdGMGFXOXVQZ29nSUNBZ1BDOWpjbVZoZEc5eVBnb2dJQ0FnUEdOeVpXRjBiM0krQ2lBZ0lDQWdJRHhqY21WaGRHOXlUbUZ0WlQ1RWIzVjZaWEo1TENCRmJXMWhiblZsYkNCS0xpQlFMand2WTNKbFlYUnZjazVoYldVK0NpQWdJQ0E4TDJOeVpXRjBiM0krQ2lBZ0lDQThZM0psWVhSdmNqNEtJQ0FnSUNBZ1BHTnlaV0YwYjNKT1lXMWxQa0Z5Ym1GMGFHRjFMQ0JEdzZsc2FXNWxQQzlqY21WaGRHOXlUbUZ0WlQ0S0lDQWdJQ0FnUEdGbVptbHNhV0YwYVc5dUlHRm1abWxzYVdGMGFXOXVTV1JsYm5ScFptbGxjajBpYUhSMGNITTZMeTl5YjNJdWIzSm5MekF5Wm1WaGFIYzNNeUlnWVdabWFXeHBZWFJwYjI1SlpHVnVkR2xtYVdWeVUyTm9aVzFsUFNKU1QxSWlQa1p5Wlc1amFDQk9ZWFJwYjI1aGJDQkRaVzUwY21VZ1ptOXlJRk5qYVdWdWRHbG1hV01nVW1WelpXRnlZMmc4TDJGbVptbHNhV0YwYVc5dVBnb2dJQ0FnUEM5amNtVmhkRzl5UGdvZ0lDQWdQR055WldGMGIzSStDaUFnSUNBZ0lEeGpjbVZoZEc5eVRtRnRaVDVPYTI5bmFHVXNJRVJwWlhWa2IyNXV3Nms4TDJOeVpXRjBiM0pPWVcxbFBnb2dJQ0FnSUNBOFlXWm1hV3hwWVhScGIyNGdZV1ptYVd4cFlYUnBiMjVKWkdWdWRHbG1hV1Z5UFNKb2RIUndjem92TDNKdmNpNXZjbWN2TURGM2VYRmlPVGszSWlCaFptWnBiR2xoZEdsdmJrbGtaVzUwYVdacFpYSlRZMmhsYldVOUlsSlBVaUkrUTJWdWRISmxJRWx1ZEdWeWJtRjBhVzl1WVd3Z1pHVWdVbVZqYUdWeVkyaGxjeUJOdzZsa2FXTmhiR1Z6SUdSbElFWnlZVzVqWlhacGJHeGxQQzloWm1acGJHbGhkR2x2Ymo0S0lDQWdJRHd2WTNKbFlYUnZjajRLSUNBZ0lEeGpjbVZoZEc5eVBnb2dJQ0FnSUNBOFkzSmxZWFJ2Y2s1aGJXVStUR1Z5YjNrc0lFVnlhV004TDJOeVpXRjBiM0pPWVcxbFBnb2dJQ0FnSUNBOFlXWm1hV3hwWVhScGIyNGdZV1ptYVd4cFlYUnBiMjVKWkdWdWRHbG1hV1Z5UFNKb2RIUndjem92TDNKdmNpNXZjbWN2TURGM2VYRmlPVGszSWlCaFptWnBiR2xoZEdsdmJrbGtaVzUwYVdacFpYSlRZMmhsYldVOUlsSlBVaUkrUTJWdWRISmxJRWx1ZEdWeWJtRjBhVzl1WVd3Z1pHVWdVbVZqYUdWeVkyaGxjeUJOdzZsa2FXTmhiR1Z6SUdSbElFWnlZVzVqWlhacGJHeGxQQzloWm1acGJHbGhkR2x2Ymo0S0lDQWdJRHd2WTNKbFlYUnZjajRLSUNBZ0lEeGpjbVZoZEc5eVBnb2dJQ0FnSUNBOFkzSmxZWFJ2Y2s1aGJXVStVbVZ1WVhWa0xDQkdjbUZ1dzZkdmFYTThMMk55WldGMGIzSk9ZVzFsUGdvZ0lDQWdJQ0E4WVdabWFXeHBZWFJwYjI0Z1lXWm1hV3hwWVhScGIyNUpaR1Z1ZEdsbWFXVnlQU0pvZEhSd2N6b3ZMM0p2Y2k1dmNtY3ZNREptWldGb2R6Y3pJaUJoWm1acGJHbGhkR2x2Ymtsa1pXNTBhV1pwWlhKVFkyaGxiV1U5SWxKUFVpSStSbkpsYm1Ob0lFNWhkR2x2Ym1Gc0lFTmxiblJ5WlNCbWIzSWdVMk5wWlc1MGFXWnBZeUJTWlhObFlYSmphRHd2WVdabWFXeHBZWFJwYjI0K0NpQWdJQ0E4TDJOeVpXRjBiM0krQ2lBZ1BDOWpjbVZoZEc5eWN6NEtJQ0E4ZEdsMGJHVnpQZ29nSUNBZ1BIUnBkR3hsUGtSaGRHRWdabkp2YlRvZ1FTQnVaWGNnYldGc1lYSnBZU0JoWjJWdWRDQnBiaUJCWm5KcFkyRnVJR2h2YldsdWFXUnpMand2ZEdsMGJHVStDaUFnUEM5MGFYUnNaWE0rQ2lBZ1BIQjFZbXhwYzJobGNqNUVjbmxoWkR3dmNIVmliR2x6YUdWeVBnb2dJRHh5WlhOdmRYSmpaVlI1Y0dVZ2NtVnpiM1Z5WTJWVWVYQmxSMlZ1WlhKaGJEMGlSR0YwWVhObGRDSStaR0YwWVhObGREd3ZjbVZ6YjNWeVkyVlVlWEJsUGdvZ0lEeHdkV0pzYVdOaGRHbHZibGxsWVhJK01qQXhNVHd2Y0hWaWJHbGpZWFJwYjI1WlpXRnlQZ29nSUR4emRXSnFaV04wY3o0S0lDQWdJRHh6ZFdKcVpXTjBQbEJzWVhOdGIyUnBkVzA4TDNOMVltcGxZM1ErQ2lBZ0lDQThjM1ZpYW1WamRENXRZV3hoY21saFBDOXpkV0pxWldOMFBnb2dJQ0FnUEhOMVltcGxZM1ErZEdGNGIyNXZiWGs4TDNOMVltcGxZM1ErQ2lBZ0lDQThjM1ZpYW1WamRENXRhWFJ2WTJodmJtUnlhV0ZzSUdkbGJtOXRaVHd2YzNWaWFtVmpkRDRLSUNBZ0lEeHpkV0pxWldOMFBuQm9lV3h2WjJWdWVUd3ZjM1ZpYW1WamRENEtJQ0FnSUR4emRXSnFaV04wUGxCaGNtRnphWFJsY3p3dmMzVmlhbVZqZEQ0S0lDQThMM04xWW1wbFkzUnpQZ29nSUR4a1lYUmxjejRLSUNBZ0lEeGtZWFJsSUdSaGRHVlVlWEJsUFNKQmRtRnBiR0ZpYkdVaVBqSXdNVEV0TURJdE1ERlVNVGM2TWpJNk5ERmFQQzlrWVhSbFBnb2dJRHd2WkdGMFpYTStDaUFnUEd4aGJtZDFZV2RsUG1WdVBDOXNZVzVuZFdGblpUNEtJQ0E4Y21Wc1lYUmxaRWxrWlc1MGFXWnBaWEp6UGdvZ0lDQWdQSEpsYkdGMFpXUkpaR1Z1ZEdsbWFXVnlJSEpsYkdGMGFXOXVWSGx3WlQwaVNYTlRkWEJ3YkdWdFpXNTBWRzhpSUhKbGJHRjBaV1JKWkdWdWRHbG1hV1Z5Vkhsd1pUMGlSRTlKSWo1a2IyazZNVEF1TVRNM01TOXFiM1Z5Ym1Gc0xuQndZWFF1TVRBd01EUTBOand2Y21Wc1lYUmxaRWxrWlc1MGFXWnBaWEkrQ2lBZ1BDOXlaV3hoZEdWa1NXUmxiblJwWm1sbGNuTStDaUFnUEhOcGVtVnpQZ29nSUNBZ1BITnBlbVUrTVRBM016STRJR0o1ZEdWelBDOXphWHBsUGdvZ0lEd3ZjMmw2WlhNK0NpQWdQSFpsY25OcGIyNCtNVHd2ZG1WeWMybHZiajRLSUNBOGNtbG5hSFJ6VEdsemRENEtJQ0FnSUR4eWFXZG9kSE1nY21sbmFIUnpWVkpKUFNKb2RIUndjem92TDJOeVpXRjBhWFpsWTI5dGJXOXVjeTV2Y21jdmNIVmliR2xqWkc5dFlXbHVMM3BsY204dk1TNHdMeUkrUTBNd0lERXVNQ0JWYm1sMlpYSnpZV3dnS0VORE1DQXhMakFwSUZCMVlteHBZeUJFYjIxaGFXNGdSR1ZrYVdOaGRHbHZiand2Y21sbmFIUnpQZ29nSUR3dmNtbG5hSFJ6VEdsemRENEtJQ0E4WkdWelkzSnBjSFJwYjI1elBnb2dJQ0FnUEdSbGMyTnlhWEIwYVc5dUlHUmxjMk55YVhCMGFXOXVWSGx3WlQwaVFXSnpkSEpoWTNRaVBnb2dJQ0FnSUNCUWJHRnpiVzlrYVhWdElHWmhiR05wY0dGeWRXMGdhWE1nZEdobElHMWhhbTl5SUdoMWJXRnVJRzFoYkdGeWFXRWdZV2RsYm5RZ2NtVnpjRzl1YzJsaWJHVWdabTl5SURJd01Bb2dJQ0FnSUNCMGJ5QXpNREFnYldsc2JHbHZiaUJwYm1abFkzUnBiMjV6SUdGdVpDQnZibVVnZEc4Z2RHaHlaV1VnYldsc2JHbHZiaUJrWldGMGFITWdZVzV1ZFdGc2JIa3NJRzFoYVc1c2VRb2dJQ0FnSUNCaGJXOXVaeUJCWm5KcFkyRnVJR2x1Wm1GdWRITXVJRlJvWlNCdmNtbG5hVzRnWVc1a0lHVjJiMngxZEdsdmJpQnZaaUIwYUdseklIQmhkR2h2WjJWdUlIZHBkR2hwYmdvZ0lDQWdJQ0IwYUdVZ2FIVnRZVzRnYkdsdVpXRm5aU0JwY3lCemRHbHNiQ0IxYm5KbGMyOXNkbVZrTGlCQklITnBibWRzWlNCemNHVmphV1Z6TENCUUxpQnlaV2xqYUdWdWIzZHBMQW9nSUNBZ0lDQjNhR2xqYUNCcGJtWmxZM1J6SUdOb2FXMXdZVzU2WldWekxDQnBjeUJyYm05M2JpQjBieUJpWlNCaElHTnNiM05sSUhOcGMzUmxjaUJzYVc1bFlXZGxJRzltSUZBdUNpQWdJQ0FnSUdaaGJHTnBjR0Z5ZFcwdUlFaGxjbVVnZDJVZ2NtVndiM0owSUhSb1pTQmthWE5qYjNabGNua2diMllnWVNCdVpYY2dVR3hoYzIxdlpHbDFiU0J6Y0dWamFXVnpDaUFnSUNBZ0lHbHVabVZqZEdsdVp5QkliMjFwYm1sa2N5NGdWR2hwY3lCdVpYY2djM0JsWTJsbGN5Qm9ZWE1nWW1WbGJpQnBjMjlzWVhSbFpDQnBiaUIwZDI4Z1kyaHBiWEJoYm5wbFpYTUtJQ0FnSUNBZ0tGQmhiaUIwY205bmJHOWtlWFJsY3lrZ2EyVndkQ0JoY3lCd1pYUnpJR0o1SUhacGJHeGhaMlZ5Y3lCcGJpQkhZV0p2YmlBb1FXWnlhV05oS1M0Z1FXNWhiSGx6YVhNZ2IyWUtJQ0FnSUNBZ2FYUnpJR052YlhCc1pYUmxJRzFwZEc5amFHOXVaSEpwWVd3Z1oyVnViMjFsSUNnMU5USTVJRzUxWTJ4bGIzUnBaR1Z6SUdsdVkyeDFaR2x1WnlCRGVYUWdZaXdnUTI5NElFa0tJQ0FnSUNBZ1lXNWtJRU52ZUNCSlNVa2daMlZ1WlhNcElISmxkbVZoYkhNZ1lXNGdiMnhrWlhJZ1pHbDJaWEpuWlc1alpTQnZaaUIwYUdseklHeHBibVZoWjJVZ1puSnZiU0IwYUdVS0lDQWdJQ0FnWTJ4aFpHVWdkR2hoZENCcGJtTnNkV1JsY3lCUUxpQm1ZV3hqYVhCaGNuVnRJR0Z1WkNCUUxpQnlaV2xqYUdWdWIzZHBJQ2hoY0hCeWIzaHBiV0YwWld4NUlESXhLeTh0T1FvZ0lDQWdJQ0JOZVhKeklHRm5ieUIxYzJsdVp5QkNZWGxsYzJsaGJpQnRaWFJvYjJSeklHRnVaQ0JqYjI1emFXUmxjbWx1WnlCMGFHRjBJSFJvWlNCa2FYWmxjbWRsYm1ObENpQWdJQ0FnSUdKbGRIZGxaVzRnVUM0Z1ptRnNZMmx3WVhKMWJTQmhibVFnVUM0Z2NtVnBZMmhsYm05M2FTQnZZMk4xY25KbFpDQTBJSFJ2SURjZ2JXbHNiR2x2YmlCNVpXRnljeUJoWjI4S0lDQWdJQ0FnWVhNZ1oyVnVaWEpoYkd4NUlHTnZibk5wWkdWeVpXUWdhVzRnZEdobElHeHBkR1Z5WVhSMWNtVXBMaUJVYUdseklIUnBiV1VnWm5KaGJXVWdkMjkxYkdRZ1ltVUtJQ0FnSUNBZ1kyOXVaM0oxWlc1MElIZHBkR2dnZEdobElISmhaR2xoZEdsdmJpQnZaaUJvYjIxcGJtOXBaSE1zSUhOMVoyZGxjM1JwYm1jZ2RHaGhkQ0IwYUdseklGQnNZWE50YjJScGRXMEtJQ0FnSUNBZ2JHbHVaV0ZuWlNCdGFXZG9kQ0JvWVhabElHSmxaVzRnY0hKbGMyVnVkQ0JwYmlCbFlYSnNlU0JvYjIxcGJtOXBaSE1nWVc1a0lIUm9ZWFFnZEdobGVTQnRZWGtnWW05MGFBb2dJQ0FnSUNCb1lYWmxJR1Y0Y0dWeWFXVnVZMlZrSUdFZ2MybHRkV3gwWVc1bGIzVnpJR1JwZG1WeWMybG1hV05oZEdsdmJpNGdTVzUyWlhOMGFXZGhkR2x2YmlCdlppQjBhR1VLSUNBZ0lDQWdiblZqYkdWaGNpQm5aVzV2YldVZ2IyWWdkR2hwY3lCdVpYY2djM0JsWTJsbGN5QjNhV3hzSUdaMWNuUm9aWElnZEdobElIVnVaR1Z5YzNSaGJtUnBibWNnYjJZZ2RHaGxDaUFnSUNBZ0lHZGxibVYwYVdNZ1lXUmhjSFJoZEdsdmJuTWdiMllnVUM0Z1ptRnNZMmx3WVhKMWJTQjBieUJvZFcxaGJuTXVJRlJvWlNCeWFYTnJJRzltSUhSeVlXNXpabVZ5SUdGdVpBb2dJQ0FnSUNCbGJXVnlaMlZ1WTJVZ2IyWWdkR2hwY3lCdVpYY2djM0JsWTJsbGN5QnBiaUJvZFcxaGJuTWdiWFZ6ZENCaVpTQnViM2NnYzJWeWFXOTFjMng1SUdOdmJuTnBaR1Z5WldRS0lDQWdJQ0FnWjJsMlpXNGdkR2hoZENCcGRDQjNZWE1nWm05MWJtUWdhVzRnZEhkdklHTm9hVzF3WVc1NlpXVnpJR3hwZG1sdVp5QnBiaUJqYjI1MFlXTjBJSGRwZEdnZ2FIVnRZVzV6Q2lBZ0lDQWdJR0Z1WkNCcGRITWdZMnh2YzJVZ2NtVnNZWFJsWkc1bGMzTWdkRzhnZEdobElHMXZjM1FnZG1seWRXeGxiblFnWVdkbGJuUWdiMllnYldGc1lYSnBZUzRLSUNBZ0lEd3ZaR1Z6WTNKcGNIUnBiMjQrQ2lBZ0lDQThaR1Z6WTNKcGNIUnBiMjRnWkdWelkzSnBjSFJwYjI1VWVYQmxQU0pQZEdobGNpSStDaUFnSUNBZ0lFOXNiRzl0YjE5UVRHOVRVR0YwYUc5blh6SXdNRGxPZFdOc1pXOTBhV1JsSUdGc2FXZHViV1Z1ZENCamIyNWpZWFJsYm1GMGFXOXVJRzltSURRS0lDQWdJQ0FnYldsMGIyTm9iMjVrY21saGJDQm5aVzVsY3lCbWIzSWdNVGNnVUd4aGMyMXZaR2wxYlNCemNHVmphV1Z6SUdGdVpDQnZibVVLSUNBZ0lDQWdiM1YwWjNKdmRYQXVUMnhzYjIxdlgxQk1iMU5RWVhSb2IyZGZNakF3T1Y5UVNGbE5URTFoZUdsdGRXMGdiR2xyWld4cGFHOXZaQ0IwY21WbElHbHVabVZ5Y21Wa0lHWnliMjBLSUNBZ0lDQWdkR2hsSURRdFoyVnVaU0JqYjI1allYUmxibUYwYVc5dUlIVnphVzVuSUZCSVdVMU1MZ29nSUNBZ1BDOWtaWE5qY21sd2RHbHZiajRLSUNBOEwyUmxjMk55YVhCMGFXOXVjejRLSUNBOFoyVnZURzlqWVhScGIyNXpQZ29nSUNBZ1BHZGxiMHh2WTJGMGFXOXVQZ29nSUNBZ0lDQThaMlZ2VEc5allYUnBiMjVRYkdGalpUNUJabkpwWTJFOEwyZGxiMHh2WTJGMGFXOXVVR3hoWTJVK0NpQWdJQ0E4TDJkbGIweHZZMkYwYVc5dVBnb2dJRHd2WjJWdlRHOWpZWFJwYjI1elBnbzhMM0psYzI5MWNtTmxQZz09IiwidXJsIjoiaHR0cDovL2RhdGFkcnlhZC5vcmcvc3Rhc2gvZGF0YXNldC9kb2k6MTAuNTA2MS9kcnlhZC44NTE1IiwiY29udGVudFVybCI6bnVsbCwibWV0YWRhdGFWZXJzaW9uIjoxNSwic2NoZW1hVmVyc2lvbiI6bnVsbCwic291cmNlIjoibWRzIiwiaXNBY3RpdmUiOnRydWUsInN0YXRlIjoiZmluZGFibGUiLCJyZWFzb24iOm51bGwsInZpZXdDb3VudCI6MCwiZG93bmxvYWRDb3VudCI6MCwicmVmZXJlbmNlQ291bnQiOjAsImNpdGF0aW9uQ291bnQiOjAsInBhcnRDb3VudCI6MCwicGFydE9mQ291bnQiOjAsInZlcnNpb25Db3VudCI6MCwidmVyc2lvbk9mQ291bnQiOjAsInZpZXdzT3ZlclRpbWUiOltdLCJkb3dubG9hZHNPdmVyVGltZSI6W10sImNyZWF0ZWQiOiIyMDExLTExLTIyVDE4OjM0OjUxLjAwMFoiLCJyZWdpc3RlcmVkIjoiMjAxMS0wMi0wMVQxNzozMjowMi4wMDBaIiwicHVibGlzaGVkIjoiMjAxMSIsInVwZGF0ZWQiOiIyMDE5LTEyLTE3VDA1OjQ3OjQzLjAwMFoifSwicmVsYXRpb25zaGlwcyI6eyJjbGllbnQiOnsiZGF0YSI6eyJpZCI6ImRyeWFkLmRyeWFkIiwidHlwZSI6ImNsaWVudHMifX0sIm1lZGlhIjp7ImRhdGEiOnsiaWQiOiIxMC41MDYxL2RyeWFkLjg1MTUiLCJ0eXBlIjoibWVkaWEifX0sInJlZmVyZW5jZXMiOnsiZGF0YSI6W119LCJjaXRhdGlvbnMiOnsiZGF0YSI6W119LCJwYXJ0cyI6eyJkYXRhIjpbXX0sInZlcnNpb25zIjp7ImRhdGEiOltdfX19LCJpbmNsdWRlZCI6W3siaWQiOiJkcnlhZC5kcnlhZCIsInR5cGUiOiJjbGllbnRzIiwiYXR0cmlidXRlcyI6eyJuYW1lIjoiRFJZQUQiLCJzeW1ib2wiOiJEUllBRC5EUllBRCIsInllYXIiOjIwMTgsImNvbnRhY3RFbWFpbCI6ImFkbWluQGRhdGFkcnlhZC5vcmciLCJhbHRlcm5hdGVOYW1lIjpudWxsLCJkZXNjcmlwdGlvbiI6IkRhdGFEcnlhZC5vcmcgaXMgYSBjdXJhdGVkIGdlbmVyYWwtcHVycG9zZSByZXBvc2l0b3J5IHRoYXQgbWFrZXMgdGhlIGRhdGEgdW5kZXJseWluZyBzY2llbnRpZmljIHB1YmxpY2F0aW9ucyBkaXNjb3ZlcmFibGUsIGZyZWVseSByZXVzYWJsZSwgYW5kIGNpdGFibGUuXHJcbkRyeWFkIGlzIGFuIGludGVybmF0aW9uYWwgcmVwb3NpdG9yeSBvZiBkYXRhIHVuZGVybHlpbmcgcGVlci1yZXZpZXdlZCBzY2llbnRpZmljIGFuZCBtZWRpY2FsIGxpdGVyYXR1cmUsIHBhcnRpY3VsYXJseSBkYXRhIGZvciB3aGljaCBubyBzcGVjaWFsaXplZCByZXBvc2l0b3J5IGV4aXN0cy4gVGhlIGNvbnRlbnQgaXMgY29uc2lkZXJlZCB0byBiZSBpbnRlZ3JhbCB0byB0aGUgcHVibGlzaGVkIHJlc2VhcmNoLiBBbGwgbWF0ZXJpYWwgaW4gRHJ5YWQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgc2Nob2xhcmx5IHB1YmxpY2F0aW9uIiwibGFuZ3VhZ2UiOm51bGwsImNsaWVudFR5cGUiOiJyZXBvc2l0b3J5IiwiZG9tYWlucyI6IioiLCJyZTNkYXRhIjoiaHR0cHM6Ly9kb2kub3JnLzEwLjE3NjE2L1IzNFMzMyIsIm9wZW5kb2FyIjpudWxsLCJpc3NuIjpudWxsLCJ1cmwiOiJodHRwczovL2RhdGFkcnlhZC5vcmciLCJjcmVhdGVkIjoiMjAxOC0wNC0yNFQyMDo1OToxNS4wMDBaIiwidXBkYXRlZCI6IjIwMTktMDYtMDJUMjI6NDc6MTkuMDAwWiIsImlzQWN0aXZlIjp0cnVlLCJoYXNQYXNzd29yZCI6dHJ1ZX0sInJlbGF0aW9uc2hpcHMiOnsicHJvdmlkZXIiOnsiZGF0YSI6eyJpZCI6ImRyeWFkIiwidHlwZSI6InByb3ZpZGVycyJ9fSwicHJlZml4ZXMiOnsiZGF0YSI6W3siaWQiOiIxMC41MDYxIiwidHlwZSI6InByZWZpeGVzIn0seyJpZCI6IjEwLjE1MTQ2IiwidHlwZSI6InByZWZpeGVzIn1dfX19XX0=
47
47
  http_version:
48
- recorded_at: Wed, 03 Jul 2019 19:24:29 GMT
48
+ recorded_at: Fri, 07 Feb 2020 11:00:35 GMT
49
+ - request:
50
+ method: get
51
+ uri: http://schema.org/
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ''
55
+ headers:
56
+ Accept:
57
+ - application/ld+json;profile=http://www.w3.org/ns/json-ld#context, application/ld+json;q=0.9,
58
+ text/html;q=0.8, application/json;q=0.5
59
+ User-Agent:
60
+ - Ruby RDF.rb/3.1.1
61
+ Accept-Encoding:
62
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
63
+ response:
64
+ status:
65
+ code: 301
66
+ message: Moved Permanently
67
+ headers:
68
+ Location:
69
+ - https://schema.org/
70
+ X-Cloud-Trace-Context:
71
+ - 2ec25785832ed334992a72e6ec7ce4bb
72
+ Date:
73
+ - Fri, 07 Feb 2020 11:00:35 GMT
74
+ Content-Type:
75
+ - text/html
76
+ Server:
77
+ - Google Frontend
78
+ Content-Length:
79
+ - '0'
80
+ body:
81
+ encoding: UTF-8
82
+ string: ''
83
+ http_version:
84
+ recorded_at: Fri, 07 Feb 2020 11:00:35 GMT
85
+ - request:
86
+ method: get
87
+ uri: https://schema.org/
88
+ body:
89
+ encoding: US-ASCII
90
+ string: ''
91
+ headers:
92
+ Accept:
93
+ - application/ld+json;profile=http://www.w3.org/ns/json-ld#context, application/ld+json;q=0.9,
94
+ text/html;q=0.8, application/json;q=0.5
95
+ User-Agent:
96
+ - Ruby RDF.rb/3.1.1
97
+ Accept-Encoding:
98
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
99
+ response:
100
+ status:
101
+ code: 200
102
+ message: OK
103
+ headers:
104
+ Access-Control-Allow-Origin:
105
+ - "*"
106
+ Content-Type:
107
+ - text/html
108
+ Vary:
109
+ - Accept, Accept-Encoding
110
+ X-Cloud-Trace-Context:
111
+ - 206f64c01898abb49a2f683d45920c9f
112
+ Date:
113
+ - Fri, 07 Feb 2020 11:00:35 GMT
114
+ Server:
115
+ - Google Frontend
116
+ Content-Length:
117
+ - '5083'
118
+ Cache-Control:
119
+ - public, max-age=600
120
+ Age:
121
+ - '0'
122
+ Alt-Svc:
123
+ - quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443";
124
+ ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443";
125
+ ma=2592000
126
+ body:
127
+ encoding: UTF-8
128
+ string: "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <!-- Generated from
129
+ headtags.tpl -->\n <meta charset=\"utf-8\" >\n <link rel=\"shortcut
130
+ icon\" type=\"image/png\" href=\"docs/favicon.ico\"/>\n <link rel=\"stylesheet\"
131
+ type=\"text/css\" href=\"docs/schemaorg.css\" />\n <link rel=\"stylesheet\"
132
+ type=\"text/css\" href=\"docs/prettify.css\" />\n <script type=\"text/javascript\"
133
+ src=\"docs/prettify.js\"></script>\n \n <script type=\"text/javascript\"
134
+ src=\"//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js\"></script>\n<!--
135
+ ##### Generated insert [CSEScript-start] see scripts/genhtmlinserts.sh #####
136
+ --> \n<!-- Enable CSE Search -->\n<script>\n(function() {\nvar cx = '013516846811604855281:nj5laplixaa';
137
+ // Insert your own Custom Search engine ID here\nvar gcse = document.createElement('script');
138
+ gcse.type = 'text/javascript'; gcse.async = true;\ngcse.src = 'https://cse.google.com/cse.js?cx='
139
+ + cx;\nvar s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gcse,
140
+ s);\n})();\n</script>\n<!-- ##### Generated insert [CSEScript-end] see scripts/genhtmlinserts.sh
141
+ ##### --> \n<!-- End headtags.tpl -->\n <title>Home - schema.org</title>\n
142
+ \ <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n
143
+ \ <meta name=\"description\" content=\"Schema.org is a set of extensible
144
+ schemas that enables webmasters to embed\n structured data on their web
145
+ pages for use by search engines and other applications.\" />\n <link rel=\"stylesheet\"
146
+ type=\"text/css\" href=\"/docs/schemaorg.css\">\n</head>\n<body>\n<!-- Header
147
+ start from basicPageHeader.tpl -->\n<div id=\"container\">\n\t<div id=\"intro\">\n\t\t<div
148
+ id=\"pageHeader\">\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<div id=\"sitename\">\n\t\t\t\t<h1>\n\t\t\t\t\t<a
149
+ href=\"/\">schema.org</a>\n\t\t\t\t</h1>\n\t\t\t\t</div>\n\t\t\t\t<div id=\"cse-search-form\"
150
+ style=\"width: 400px;\"><div class=\"gcse-searchbox-only\" data-resultsUrl=\"docs/search_results.html\"></div></div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div
151
+ id=\"selectionbar\">\n\t<div class=\"wrapper\">\n\t\t<ul>\n\t \n\t
152
+ \ <li>\n\t \n\t\t\t\t<a href=\"docs/documents.html\">Documentation</a>\n\t\t\t</li>\n\t
153
+ \ \n\t <li>\n\t \n\t\t\t\t<a href=\"docs/schemas.html\">Schemas</a>\n\t\t\t</li>\n\t\t\t<li>\n\t
154
+ \ \n\t\t\t\t<a href=\"docs/about.html\">About</a>\n\t \n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n\n<!--
155
+ Header start from topnotes.tpl -->\n\n\n\n\n\n<!-- Header end from topnotes.tpl
156
+ -->\n\n<!-- Header end from basicPageHeader.tpl -->\n\n <div id=\"mainContent\">\n\n\n\n\n\n\n\n\n\n\n
157
+ \ <h1>Welcome to Schema.org</h1>\n\n\n<p>\n Schema.org is a collaborative,
158
+ community activity with a mission to create,\n maintain, and promote schemas
159
+ for structured data on the\n Internet, on web pages, in email messages,
160
+ and beyond.\n</p>\n\n<p>\n Schema.org vocabulary can be used with many
161
+ different encodings,\n including RDFa, Microdata and JSON-LD. These vocabularies
162
+ cover\n entities, relationships between entities and actions, and can\n
163
+ \ easily be extended through a well-documented extension model. Over 10
164
+ million sites use\n Schema.org to markup their web pages and email messages.\n
165
+ \ Many applications from Google, Microsoft, Pinterest, Yandex and others\n
166
+ \ already use these vocabularies to power rich, extensible experiences.\n</p>\n<p>\n
167
+ \ Founded by Google, Microsoft, Yahoo and Yandex,\n Schema.org vocabularies
168
+ are developed by an open <a href=\"https://www.w3.org/community/schemaorg\">community</a>
169
+ process,\n using the <a\n href=\"http://lists.w3.org/Archives/Public/public-schemaorg\">public-schemaorg@w3.org</a>\n
170
+ \ mailing list and through <a href=\"http://github.com/schemaorg/schemaorg\">GitHub</a>.\n</p>\n\n<p>\n
171
+ \ A shared vocabulary makes it easier for webmasters and developers to decide\n
172
+ \ on a schema and get the maximum benefit for their efforts.\n It is in
173
+ this spirit that the founders, together with the\n larger community have
174
+ come together - to provide a shared collection of schemas.\n </p>\n\n<p>\n
175
+ \ We invite you to <a href=\"docs/gs.html\">get started</a>!\n</p>\n<p>\n
176
+ \ View our blog at <a href=\"http://blog.schema.org\">blog.schema.org</a>
177
+ or see <a href=\"/docs/releases.html\">release history</a> for version 6.0.\n</p>\n\n<br/>\n</div>\n\n\n\n\n\n\n<div
178
+ id=\"footer\"><p>\n <a href=\"docs/terms.html\">Terms and conditions</a></p>\n</div>\n\n<script>\n
179
+ \ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n
180
+ \ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),\n
181
+ \ m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n
182
+ \ })(window,document,'script','//www.google-analytics.com/analytics.js','ga');\n\n
183
+ \ ga('create', 'UA-52672119-1', 'auto');\n ga('send', 'pageview');\n\n</script>\n\n\n\n<p><br/></p>\n\n<div
184
+ style=\"display: none;\">\n\n<div style=\"clear: both; float: left; text-align:
185
+ left; font-size: xx-small; color: #888 ; margin: 1em; line-height: 100%;\">\n
186
+ <ul>\n <li>SCHEMA_VERSION: 6.0 </li>\n <li>PYTHONAPP_VERSION: 2.0.1 </li>\n
187
+ \ <li>ENABLE_HOSTED_EXTENSIONS: True </li>\n <li>host_ext: </li>\n <li>myhost:
188
+ None </li>\n <li>myport: 80 </li>\n <li>mybasehost: schema.org </li>\n <li>debugging:
189
+ False </li>\n <li>AppEngine Version: 6-0 </li>\n </ul>\n</div>\n\n</div>\n\n</body>\n</html>"
190
+ http_version:
191
+ recorded_at: Fri, 07 Feb 2020 11:00:35 GMT
49
192
  recorded_with: VCR 3.0.3
@@ -946,6 +946,15 @@ describe Bolognese::Metadata, vcr: true do
946
946
  expect(subject.rights_list).to eq([{"rights"=>"info:eu-repo/semantics/openAccess"}, {"rights"=>"Open Access", "rightsUri"=>"info:eu-repo/semantics/openAccess"}])
947
947
  end
948
948
 
949
+ it ":tba" do
950
+ input = fixture_path + "datacite-example-complicated-tba.xml"
951
+ subject = Bolognese::Metadata.new(input: input)
952
+ expect(subject.valid?).to be true
953
+ expect(subject.titles).to eq([{"title"=>":unav"}])
954
+ expect(subject.formats).to eq([":null"])
955
+ expect(subject.dates).to eq([{"date"=>":tba", "dateInformation"=>"Correction", "dateType"=>"Other"}, {"date"=>"2010", "dateType"=>"Issued"}])
956
+ end
957
+
949
958
  it "ancient-dates" do
950
959
  input = fixture_path + "datacite-example-ancientdates-v4.3.xml"
951
960
  subject = Bolognese::Metadata.new(input: input)
@@ -954,6 +963,14 @@ describe Bolognese::Metadata, vcr: true do
954
963
  expect(subject.dates).to eq([{"date"=>"-0024/-0022", "dateInformation"=>"from 25 BC to 23 BC", "dateType"=>"Created"}, {"date"=>"2010", "dateType"=>"Issued"}])
955
964
  end
956
965
 
966
+ # TODO properly handle escaped text
967
+ it "escaped text" do
968
+ input = fixture_path + "datacite-example-escaped-text.xml"
969
+ subject = Bolognese::Metadata.new(input: input)
970
+ expect(subject.valid?).to be true
971
+ expect(subject.titles).to eq([{"title"=>"Some initial text"}])
972
+ end
973
+
957
974
  it "missing creators" do
958
975
  input = fixture_path + "datacite_missing_creator.xml"
959
976
  subject = Bolognese::Metadata.new(input: input, regenerate: true)
@@ -23,12 +23,14 @@ describe Bolognese::Metadata, vcr: true do
23
23
  it "Dataset" do
24
24
  input = "https://doi.org/10.5061/DRYAD.8515"
25
25
  subject = Bolognese::Metadata.new(input: input, from: "datacite")
26
- expect(subject.citation).to eq("Ollomo, B., Durand, P., Prugnolle, F., Douzery, E. J. P., Arnathau, C., Nkoghe, D., … Renaud, F. (2011). <i>Data from: A new malaria agent in African hominids.</i> (Version 1) [Data set]. Dryad Digital Repository. https://doi.org/10.5061/dryad.8515")
26
+
27
+ expect(subject.citation).to eq("Ollomo, B., Durand, P., Prugnolle, F., Douzery, E. J. P., Arnathau, C., Nkoghe, D., Leroy, E., &amp; Renaud, F. (2011). <i>Data from: A new malaria agent in African hominids.</i> (Version 1) [Data set]. Dryad Digital Repository. https://doi.org/10.5061/dryad.8515")
27
28
  end
28
29
 
29
30
  it "Missing author" do
30
31
  input = "https://doi.org/10.3390/publications6020015"
31
32
  subject = Bolognese::Metadata.new(input: input, from: "crossref")
33
+
32
34
  expect(subject.citation).to eq("Converting the Literature of a Scientific Field to Open Access through Global Collaboration: The Experience of SCOAP3 in Particle Physics. (2018). <i>Publications</i>, <i>6</i>(2), 15. https://doi.org/10.3390/publications6020015")
33
35
  end
34
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bolognese
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.1
4
+ version: 1.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Fenner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-15 00:00:00.000000000 Z
11
+ date: 2020-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: maremma
@@ -764,9 +764,11 @@ files:
764
764
  - spec/fixtures/datacite-empty-sizes.xml
765
765
  - spec/fixtures/datacite-example-affiliation.xml
766
766
  - spec/fixtures/datacite-example-ancientdates-v4.3.xml
767
+ - spec/fixtures/datacite-example-complicated-tba.xml
767
768
  - spec/fixtures/datacite-example-complicated-v3.0.xml
768
769
  - spec/fixtures/datacite-example-complicated-v4.0.xml
769
770
  - spec/fixtures/datacite-example-complicated-v4.1.xml
771
+ - spec/fixtures/datacite-example-escaped-text.xml
770
772
  - spec/fixtures/datacite-example-geolocation-2.xml
771
773
  - spec/fixtures/datacite-example-geolocation.xml
772
774
  - spec/fixtures/datacite-example-polygon-v4.1.xml
@@ -1161,6 +1163,7 @@ files:
1161
1163
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme.yml
1162
1164
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml
1163
1165
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/BlogPosting_Citeproc_JSON.yml
1166
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Crossref_DOI.yml
1164
1167
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_turtle/Dataset.yml
1165
1168
  - spec/fixtures/vivli.xml
1166
1169
  - spec/metadata_spec.rb