metanorma-standoc 2.2.6 → 2.2.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/lib/metanorma/standoc/base.rb +3 -5
  3. data/lib/metanorma/standoc/biblio.rng +5 -0
  4. data/lib/metanorma/standoc/cleanup.rb +17 -17
  5. data/lib/metanorma/standoc/cleanup_amend.rb +2 -2
  6. data/lib/metanorma/standoc/cleanup_biblio.rb +2 -1
  7. data/lib/metanorma/standoc/cleanup_maths.rb +12 -4
  8. data/lib/metanorma/standoc/cleanup_section.rb +19 -9
  9. data/lib/metanorma/standoc/cleanup_symbols.rb +14 -7
  10. data/lib/metanorma/standoc/cleanup_text.rb +10 -4
  11. data/lib/metanorma/standoc/cleanup_toc.rb +1 -2
  12. data/lib/metanorma/standoc/cleanup_xref.rb +55 -14
  13. data/lib/metanorma/standoc/inline.rb +27 -12
  14. data/lib/metanorma/standoc/isodoc.rng +46 -12
  15. data/lib/metanorma/standoc/ref_utility.rb +1 -0
  16. data/lib/metanorma/standoc/render.rb +10 -1
  17. data/lib/metanorma/standoc/section.rb +10 -3
  18. data/lib/metanorma/standoc/utils.rb +6 -1
  19. data/lib/metanorma/standoc/validate.rb +1 -1
  20. data/lib/metanorma/standoc/version.rb +1 -1
  21. data/metanorma-standoc.gemspec +5 -2
  22. metadata +4 -128
  23. data/.github/workflows/automerge.yml +0 -31
  24. data/.github/workflows/rake.yml +0 -15
  25. data/.github/workflows/release.yml +0 -24
  26. data/Rakefile +0 -8
  27. data/bin/rspec +0 -18
  28. data/spec/assets/a1.adoc +0 -8
  29. data/spec/assets/a2.adoc +0 -10
  30. data/spec/assets/a3.adoc +0 -9
  31. data/spec/assets/a3a.adoc +0 -7
  32. data/spec/assets/a4.adoc +0 -4
  33. data/spec/assets/boilerplate.xml +0 -4
  34. data/spec/assets/codes.yml +0 -695
  35. data/spec/assets/correct.png +0 -0
  36. data/spec/assets/corrupt.png +0 -0
  37. data/spec/assets/header.html +0 -7
  38. data/spec/assets/html-override.css +0 -1
  39. data/spec/assets/html.scss +0 -13
  40. data/spec/assets/htmlcover.html +0 -4
  41. data/spec/assets/htmlintro.html +0 -5
  42. data/spec/assets/i18n.yaml +0 -17
  43. data/spec/assets/iso.adoc +0 -10
  44. data/spec/assets/iso.headless.html +0 -33
  45. data/spec/assets/iso.xml +0 -8
  46. data/spec/assets/iso123.rxl +0 -107
  47. data/spec/assets/rice_image1.png +0 -0
  48. data/spec/assets/scripts.html +0 -3
  49. data/spec/assets/std.css +0 -2
  50. data/spec/assets/word-override.css +0 -1
  51. data/spec/assets/word.scss +0 -13
  52. data/spec/assets/wordcover.html +0 -3
  53. data/spec/assets/wordintro.html +0 -4
  54. data/spec/assets/xref_error.adoc +0 -8
  55. data/spec/examples/103_01_02.html +0 -247
  56. data/spec/examples/codes_table.html +0 -3174
  57. data/spec/examples/datamodel/address_class_profile.adoc +0 -5
  58. data/spec/examples/datamodel/address_class_profile.presentation.xml +0 -14
  59. data/spec/examples/datamodel/address_component_profile.adoc +0 -5
  60. data/spec/examples/datamodel/blank_definition_profile.adoc +0 -5
  61. data/spec/examples/datamodel/common_models_diagram.adoc +0 -5
  62. data/spec/examples/datamodel/models/models/AddressClassProfile.yml +0 -90
  63. data/spec/examples/datamodel/models/models/AddressComponentProfile.yml +0 -63
  64. data/spec/examples/datamodel/models/models/AddressComponentSpecification.yml +0 -15
  65. data/spec/examples/datamodel/models/models/AddressProfile.yml +0 -36
  66. data/spec/examples/datamodel/models/models/AttributeProfile.yml +0 -32
  67. data/spec/examples/datamodel/models/models/InterchangeAddressClassProfile.yml +0 -79
  68. data/spec/examples/datamodel/models/models/Localization copy.yml +0 -23
  69. data/spec/examples/datamodel/models/models/Localization.yml +0 -23
  70. data/spec/examples/datamodel/models/models/ProfileCompliantAddress.yml +0 -36
  71. data/spec/examples/datamodel/models/models/ProfileCompliantAddressComponent.yml +0 -15
  72. data/spec/examples/datamodel/models/models/Signature.yml +0 -20
  73. data/spec/examples/datamodel/models/models/SignatureBlankDefinition.yml +0 -20
  74. data/spec/examples/datamodel/models/models/TextDirectionCode copy.yml +0 -16
  75. data/spec/examples/datamodel/models/models/TextDirectionCode.yml +0 -16
  76. data/spec/examples/datamodel/models/models/Validity.yml +0 -14
  77. data/spec/examples/datamodel/models/models/iso19160-1/Address.yml +0 -22
  78. data/spec/examples/datamodel/models/models/iso19160-1/AddressComponent.yml +0 -2
  79. data/spec/examples/datamodel/models/style.uml.inc +0 -37
  80. data/spec/examples/datamodel/models/views/CommonModels.yml +0 -9
  81. data/spec/examples/datamodel/models/views/TopDown.yml +0 -62
  82. data/spec/examples/datamodel/top_down_diagram.adoc +0 -5
  83. data/spec/examples/english.yaml +0 -69
  84. data/spec/examples/iso_123_.xml +0 -46
  85. data/spec/examples/iso_123_all_parts.xml +0 -46
  86. data/spec/examples/iso_123_no_year_note.xml +0 -47
  87. data/spec/examples/iso_124_.xml +0 -42
  88. data/spec/examples/iso_216_.xml +0 -48
  89. data/spec/examples/iso_iec_12382_.xml +0 -49
  90. data/spec/examples/rice.adoc +0 -715
  91. data/spec/examples/rice.preview.html +0 -1877
  92. data/spec/examples/rice.sh +0 -4
  93. data/spec/examples/rice_images/rice_image1.png +0 -0
  94. data/spec/examples/rice_images/rice_image2.png +0 -0
  95. data/spec/examples/rice_images/rice_image3_1.png +0 -0
  96. data/spec/examples/rice_images/rice_image3_2.png +0 -0
  97. data/spec/examples/rice_images/rice_image3_3.png +0 -0
  98. data/spec/fixtures/action_schemaexpg1.svg +0 -122
  99. data/spec/fixtures/datamodel_description_sections_tree.xml +0 -327
  100. data/spec/fixtures/diagram_definitions.lutaml +0 -22
  101. data/spec/fixtures/macros_datamodel/address_class_profile.xml +0 -149
  102. data/spec/fixtures/macros_datamodel/address_component_profile.xml +0 -71
  103. data/spec/fixtures/macros_datamodel/blank_definition_profile.xml +0 -51
  104. data/spec/fixtures/macros_datamodel/common_models_diagram.xml +0 -7
  105. data/spec/fixtures/macros_datamodel/top_down_diagram.xml +0 -7
  106. data/spec/fixtures/test.exp +0 -121
  107. data/spec/fixtures/test.xmi +0 -9250
  108. data/spec/metanorma/base_spec.rb +0 -1125
  109. data/spec/metanorma/biblio_spec.rb +0 -1012
  110. data/spec/metanorma/blank_spec.rb +0 -37
  111. data/spec/metanorma/blocks_spec.rb +0 -1784
  112. data/spec/metanorma/cleanup_blocks_spec.rb +0 -1099
  113. data/spec/metanorma/cleanup_sections_spec.rb +0 -1849
  114. data/spec/metanorma/cleanup_spec.rb +0 -1931
  115. data/spec/metanorma/cleanup_terms_spec.rb +0 -1543
  116. data/spec/metanorma/datamodel/attributes_table_preprocessor_spec.rb +0 -111
  117. data/spec/metanorma/datamodel/diagram_preprocessor_spec.rb +0 -72
  118. data/spec/metanorma/inline_spec.rb +0 -785
  119. data/spec/metanorma/isobib_cache_spec.rb +0 -742
  120. data/spec/metanorma/lists_spec.rb +0 -232
  121. data/spec/metanorma/macros_concept_spec.rb +0 -1052
  122. data/spec/metanorma/macros_json2text_spec.rb +0 -10
  123. data/spec/metanorma/macros_plantuml_spec.rb +0 -402
  124. data/spec/metanorma/macros_spec.rb +0 -1183
  125. data/spec/metanorma/macros_yaml2text_spec.rb +0 -10
  126. data/spec/metanorma/processor_spec.rb +0 -96
  127. data/spec/metanorma/refs_spec.rb +0 -2807
  128. data/spec/metanorma/reqt_spec.rb +0 -130
  129. data/spec/metanorma/section_spec.rb +0 -1325
  130. data/spec/metanorma/table_spec.rb +0 -474
  131. data/spec/metanorma/validate_spec.rb +0 -886
  132. data/spec/spec_helper.rb +0 -290
  133. data/spec/support/shared_examples/structured_data_2_text_preprocessor.rb +0 -781
  134. data/spec/vcr_cassettes/bsi16341.yml +0 -486
  135. data/spec/vcr_cassettes/dated_iso_ref_joint_iso_iec.yml +0 -611
  136. data/spec/vcr_cassettes/dated_iso_ref_joint_iso_iec1.yml +0 -149
  137. data/spec/vcr_cassettes/hide_refs.yml +0 -587
  138. data/spec/vcr_cassettes/isobib_get_123.yml +0 -149
  139. data/spec/vcr_cassettes/isobib_get_123_1.yml +0 -295
  140. data/spec/vcr_cassettes/isobib_get_123_1_fr.yml +0 -385
  141. data/spec/vcr_cassettes/isobib_get_123_2.yml +0 -295
  142. data/spec/vcr_cassettes/isobib_get_123_2001.yml +0 -149
  143. data/spec/vcr_cassettes/isobib_get_124.yml +0 -149
  144. data/spec/vcr_cassettes/rfcbib_get_rfc8341.yml +0 -367
  145. data/spec/vcr_cassettes/separates_iev_citations_by_top_level_clause.yml +0 -560
  146. data/spec/vcr_cassettes/std-link.yml +0 -149
@@ -1,149 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: post
5
- uri: https://jcl49wv5ar-dsn.algolia.net/1/indexes/all_en/query
6
- body:
7
- encoding: UTF-8
8
- string: '{"query":"ISO 131","hitsPerPage":100,"filters":"category:standard"}'
9
- headers:
10
- User-Agent:
11
- - Algolia for Ruby (2.2.5), Ruby (3.1.2)
12
- X-Algolia-Api-Key:
13
- - dd1b9e1ab383f4d4817d29cd5e96d3f0
14
- X-Algolia-Application-Id:
15
- - JCL49WV5AR
16
- Content-Type:
17
- - application/json; charset=utf-8
18
- Accept-Encoding:
19
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
20
- Accept:
21
- - "*/*"
22
- Connection:
23
- - keep-alive
24
- Keep-Alive:
25
- - '30'
26
- response:
27
- status:
28
- code: 200
29
- message: OK
30
- headers:
31
- Server:
32
- - nginx
33
- Date:
34
- - Mon, 24 Oct 2022 10:31:28 GMT
35
- Content-Type:
36
- - application/json; charset=UTF-8
37
- Transfer-Encoding:
38
- - chunked
39
- Connection:
40
- - keep-alive
41
- X-Alg-Pt:
42
- - '5'
43
- Accept-Encoding:
44
- - deflate, gzip
45
- Cache-Control:
46
- - no-store
47
- Access-Control-Allow-Origin:
48
- - "*"
49
- Timing-Allow-Origin:
50
- - "*"
51
- X-Content-Type-Options:
52
- - nosniff
53
- Strict-Transport-Security:
54
- - max-age=31536000; includeSubDomains; preload
55
- Content-Disposition:
56
- - inline; filename=a.txt
57
- body:
58
- encoding: ASCII-8BIT
59
- string: !binary |-
60
- eyJoaXRzIjpbeyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wMC8zOS8zOTQ0IiwidXVpZCI6IjQwMDRhYzZjLTQ3NjEtNDFjOS1iOTg3LWMwMTkyYTE4MjU5YyIsInRpdGxlIjoiSVNPIDEzMToxOTc5IEFjb3VzdGljcyDigJQgRXhwcmVzc2lvbiBvZiBwaHlzaWNhbCBhbmQgc3ViamVjdGl2ZSBtYWduaXR1ZGVzIG9mIHNvdW5kIG9yIG5vaXNlIGluIGFpciIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjE5OTYsIm9yZGVyIjoxMDAsIm9iamVjdElEIjoiMzk0NF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT46MTk3OSBBY291c3RpY3Mg4oCUIEV4cHJlc3Npb24gb2YgcGh5c2ljYWwgYW5kIHN1YmplY3RpdmUgbWFnbml0dWRlcyBvZiBzb3VuZCBvciBub2lzZSBpbiBhaXIiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wOC8yMC84MjAwNiIsInV1aWQiOiIyZjc3NDE2YS1kMzliLTQ5NTQtODYzMi0zOTY0MjdjMWY0ZWUiLCJ0aXRsZSI6IklTTyAxMzE2NS0yOjIwMjIgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAyOiBUZXN0IG1ldGhvZCB1c2luZyBlbWFub21ldHJ5Iiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMiwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgYSB0ZXN0IG1ldGhvZCB0byBkZXRlcm1pbmUgcmFkaXVtLTIyNiAoIDIyNiBSYSkgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXIgYnkgZW1hbm9tZXRyeS4gVGhlIHRlc3QgbWV0aG9kIHNwZWNpZmllZCBpcyBzdWl0YWJsZSBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgdGhlIHNvbHVibGUsIHN1c3BlbmRlZCBhbmQgdG90YWwgMjI2IFJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIHdpdGggc29sdWJsZSAyMjYgUmEgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgZ3JlYXRlciB0aGFuIDAsMDLCoEJxwqBsIOKIkjEgLiBUaGUgZGVjYXkgY2hhaW5zIG9mIDIzOCBVIGFuZCAyMzIgVGggYXJlIGdpdmVuIGluIEFubmV4wqBBLiBGaWd1cmXCoEEuMSBzaG93cyB0aGUgMjM4IFUgYW5kIGl0cyBkZWNheSBjaGFpbi4gIiwib2JqZWN0SUQiOiI4MjAwNl8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0yOjIwMjIgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAyOiBUZXN0IG1ldGhvZCB1c2luZyBlbWFub21ldHJ5IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGEgdGVzdCBtZXRob2QgdG8gZGV0ZXJtaW5lIHJhZGl1bS0yMjYgKCAyMjYgUmEpIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIGJ5IGVtYW5vbWV0cnkuIFRoZSB0ZXN0IG1ldGhvZCBzcGVjaWZpZWQgaXMgc3VpdGFibGUgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHRoZSBzb2x1YmxlLCBzdXNwZW5kZWQgYW5kIHRvdGFsIDIyNiBSYSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIGFsbCB0eXBlcyBvZiB3YXRlciB3aXRoIHNvbHVibGUgMjI2IFJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGdyZWF0ZXIgdGhhbiAwLDAywqBCccKgbCDiiJIxIC4gVGhlIGRlY2F5IGNoYWlucyBvZiAyMzggVSBhbmQgMjMyIFRoIGFyZSBnaXZlbiBpbiBBbm5leMKgQS4gRmlndXJlwqBBLjEgc2hvd3MgdGhlIDIzOCBVIGFuZCBpdHMgZGVjYXkgY2hhaW4uICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA3Lzk2Lzc5NjgyIiwidXVpZCI6IjczMjQ1ZDJlLWI4MWUtNDk5OC1hNzQyLWQ1M2JmMThkYjVlZSIsInRpdGxlIjoiSVNPIDEzMTM3OjIwMjIgV29ya3BsYWNlIGF0bW9zcGhlcmVzIOKAlCBQdW1wcyBmb3IgcGVyc29uYWwgc2FtcGxpbmcgb2YgY2hlbWljYWwgYW5kIGJpb2xvZ2ljYWwgYWdlbnRzIOKAlCBSZXF1aXJlbWVudHMgYW5kIHRlc3QgbWV0aG9kcyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIHBlcmZvcm1hbmNlIHJlcXVpcmVtZW50cyBmb3IgYmF0dGVyeSBwb3dlcmVkIHB1bXBzIHVzZWQgZm9yIHBlcnNvbmFsIHNhbXBsaW5nIG9mIGNoZW1pY2FsIGFuZCBiaW9sb2dpY2FsIGFnZW50cyBpbiB3b3JrcGxhY2UgYWlyLiBJdCBhbHNvIHNwZWNpZmllcyB0ZXN0IG1ldGhvZHMgaW4gb3JkZXIgdG8gZGV0ZXJtaW5lIHRoZSBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpY3Mgb2Ygc3VjaCBwdW1wcyB1bmRlciBwcmVzY3JpYmVkIGxhYm9yYXRvcnkgY29uZGl0aW9ucy4gVGhpcyBkb2N1bWVudCBpcyBhcHBsaWNhYmxlIHRvIGJhdHRlcnkgcG93ZXJlZCBwdW1wcyBoYXZpbmcgYSBub21pbmFsIHZvbHVtZXRyaWMgZmxvdyByYXRlIGFib3ZlIDEwwqBtbMKg4ouFwqBtaW4g4oiSMSAsIGFzIHVzZWQgd2l0aCBjb21iaW5hdGlvbnMgb2Ygc2FtcGxlciBhbmQgY29sbGVjdGlvbiBzdWJzdHJhdGUgZm9yIHNhbXBsaW5nIG9mIGdhc2VzLCB2YXBvdXJzLCBkdXN0cywgZnVtZXMsIG1pc3RzIGFuZCBmaWJyZXMuIFRoaXMgZG9jdW1lbnQgaXMgcHJpbWFyaWx5IGludGVuZGVkIGZvciBmbG93LWNvbnRyb2xsZWQgcHVtcHMuICIsIm9iamVjdElEIjoiNzk2ODJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Mzc6MjAyMiBXb3JrcGxhY2UgYXRtb3NwaGVyZXMg4oCUIFB1bXBzIGZvciBwZXJzb25hbCBzYW1wbGluZyBvZiBjaGVtaWNhbCBhbmQgYmlvbG9naWNhbCBhZ2VudHMg4oCUIFJlcXVpcmVtZW50cyBhbmQgdGVzdCBtZXRob2RzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIHBlcmZvcm1hbmNlIHJlcXVpcmVtZW50cyBmb3IgYmF0dGVyeSBwb3dlcmVkIHB1bXBzIHVzZWQgZm9yIHBlcnNvbmFsIHNhbXBsaW5nIG9mIGNoZW1pY2FsIGFuZCBiaW9sb2dpY2FsIGFnZW50cyBpbiB3b3JrcGxhY2UgYWlyLiBJdCBhbHNvIHNwZWNpZmllcyB0ZXN0IG1ldGhvZHMgaW4gb3JkZXIgdG8gZGV0ZXJtaW5lIHRoZSBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpY3Mgb2Ygc3VjaCBwdW1wcyB1bmRlciBwcmVzY3JpYmVkIGxhYm9yYXRvcnkgY29uZGl0aW9ucy4gVGhpcyBkb2N1bWVudCBpcyBhcHBsaWNhYmxlIHRvIGJhdHRlcnkgcG93ZXJlZCBwdW1wcyBoYXZpbmcgYSBub21pbmFsIHZvbHVtZXRyaWMgZmxvdyByYXRlIGFib3ZlIDEwwqBtbMKg4ouFwqBtaW4g4oiSMSAsIGFzIHVzZWQgd2l0aCBjb21iaW5hdGlvbnMgb2Ygc2FtcGxlciBhbmQgY29sbGVjdGlvbiBzdWJzdHJhdGUgZm9yIHNhbXBsaW5nIG9mIGdhc2VzLCB2YXBvdXJzLCBkdXN0cywgZnVtZXMsIG1pc3RzIGFuZCBmaWJyZXMuIFRoaXMgZG9jdW1lbnQgaXMgcHJpbWFyaWx5IGludGVuZGVkIGZvciBmbG93LWNvbnRyb2xsZWQgcHVtcHMuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA3Lzg4Lzc4ODYzIiwidXVpZCI6IjAzMTVjMzcyLTMyNTUtNDQ4NC04MjJkLWFkYWZiMTRiMGFiYyIsInRpdGxlIjoiSVNPIDEzMTExLTI6MjAyMiBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyAoSVRTKSDigJQgVGhlIHVzZSBvZiBwZXJzb25hbCBJVFMgc3RhdGlvbnMgdG8gc3VwcG9ydCBJVFMgc2VydmljZSBwcm92aXNpb24gZm9yIHRyYXZlbGxlcnMg4oCUIFBhcnQgMjogR2VuZXJhbCByZXF1aXJlbWVudHMgZm9yIGRhdGEgZXhjaGFuZ2UgYmV0d2VlbiBJVFMgc3RhdGlvbnMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IGRlZmluZXMgdGhlIGRhdGEgZXhjaGFuZ2UgcHJvdG9jb2wgdXNlZCB0byBpbXBsZW1lbnQgdXNlIGNhc2VzIGZvciBhcHBsaWNhdGlvbnMgYmFzZWQgb24gdGhlIHBlcnNvbmFsIElUUyBzdGF0aW9uIGRlZmluZWQgaW4gSVNPwqAxMzExMS0xLCB3aGljaCBwcm92aWRlcyBhbmQgbWFpbnRhaW5zIElUUyBzZXJ2aWNlcyB0byB0cmF2ZWxsZXJzLCBpbmNsdWRpbmcgZHJpdmVycywgcGFzc2VuZ2VycyBhbmQgcGVkZXN0cmlhbnMuIFRoZSBJVFMgYXBwbGljYXRpb25zIHN1cHBvcnRlZCBieSB0aGlzIGRvY3VtZW50IGluY2x1ZGUgbXVsdGltb2RhbCB0cmFuc3BvcnRhdGlvbiBpbmZvcm1hdGlvbiBzZXJ2aWNlcyBhbmQgbXVsdGltb2RhbCBuYXZpZ2F0aW9uIHNlcnZpY2VzIHRoYXQgYXJlIGJhc2VkIG9uIHBlcnNvbmFsIElUUyBzdGF0aW9ucyBpbiB2YXJpb3VzIGFwcGxpY2F0aW9uIHNjZW5hcmlvcyBkZWZpbmVkIGluIElTT8KgMTMxMTEtMS4gVGhlIHVzZSBjYXNlIGltcGxlbWVudGF0aW9ucyBkZXNjcmliZWQgaW4gdGhpcyBkb2N1bWVudCByZWZlciB0byB0aGUgYXJjaGl0ZWN0dXJlIGRlZmluZWQgaW4gSVNPwqAyMTIxNyBhbmQgSVNPwqAxMzE4NC4gIiwib2JqZWN0SUQiOiI3ODg2M18wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xMS0yOjIwMjIgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMgKElUUykg4oCUIFRoZSB1c2Ugb2YgcGVyc29uYWwgSVRTIHN0YXRpb25zIHRvIHN1cHBvcnQgSVRTIHNlcnZpY2UgcHJvdmlzaW9uIGZvciB0cmF2ZWxsZXJzIOKAlCBQYXJ0IDI6IEdlbmVyYWwgcmVxdWlyZW1lbnRzIGZvciBkYXRhIGV4Y2hhbmdlIGJldHdlZW4gSVRTIHN0YXRpb25zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgZGVmaW5lcyB0aGUgZGF0YSBleGNoYW5nZSBwcm90b2NvbCB1c2VkIHRvIGltcGxlbWVudCB1c2UgY2FzZXMgZm9yIGFwcGxpY2F0aW9ucyBiYXNlZCBvbiB0aGUgcGVyc29uYWwgSVRTIHN0YXRpb24gZGVmaW5lZCBpbiA8ZW0+SVNPPC9lbT7CoDxlbT4xMzE8L2VtPjExLTEsIHdoaWNoIHByb3ZpZGVzIGFuZCBtYWludGFpbnMgSVRTIHNlcnZpY2VzIHRvIHRyYXZlbGxlcnMsIGluY2x1ZGluZyBkcml2ZXJzLCBwYXNzZW5nZXJzIGFuZCBwZWRlc3RyaWFucy4gVGhlIElUUyBhcHBsaWNhdGlvbnMgc3VwcG9ydGVkIGJ5IHRoaXMgZG9jdW1lbnQgaW5jbHVkZSBtdWx0aW1vZGFsIHRyYW5zcG9ydGF0aW9uIGluZm9ybWF0aW9uIHNlcnZpY2VzIGFuZCBtdWx0aW1vZGFsIG5hdmlnYXRpb24gc2VydmljZXMgdGhhdCBhcmUgYmFzZWQgb24gcGVyc29uYWwgSVRTIHN0YXRpb25zIGluIHZhcmlvdXMgYXBwbGljYXRpb24gc2NlbmFyaW9zIGRlZmluZWQgaW4gPGVtPklTTzwvZW0+wqA8ZW0+MTMxPC9lbT4xMS0xLiBUaGUgdXNlIGNhc2UgaW1wbGVtZW50YXRpb25zIGRlc2NyaWJlZCBpbiB0aGlzIGRvY3VtZW50IHJlZmVyIHRvIHRoZSBhcmNoaXRlY3R1cmUgZGVmaW5lZCBpbiA8ZW0+SVNPPC9lbT7CoDIxMjE3IGFuZCA8ZW0+SVNPPC9lbT7CoDxlbT4xMzE8L2VtPjg0LiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy84My83ODM5MiIsInV1aWQiOiJlYjdlZWZmOS1iNjA1LTRlM2ItYTJlNi05ZjNjMjRiMzE5MTAiLCJ0aXRsZSI6IklTTyAxMzExOToyMDIyIEhlYWx0aCBpbmZvcm1hdGljcyDigJQgQ2xpbmljYWwga25vd2xlZGdlIHJlc291cmNlcyDigJQgTWV0YWRhdGEiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyBhIG51bWJlciBvZiBtZXRhZGF0YSBlbGVtZW50cyB0aGF0IGRlc2NyaWJlIHJlc291cmNlcyBjb250YWluaW5nIG1lZGljYWwga25vd2xlZGdlLCBwcmltYXJpbHkgZGlnaXRhbCBkb2N1bWVudHMgcHJvdmlkZWQgYXMgd2ViIHJlc291cmNlcywgYWNjZXNzaWJsZSBmcm9tIGRhdGFiYXNlcyBvciB2aWEgZmlsZSB0cmFuc2ZlciwgYnV0IGNhbiBiZSBhcHBsaWNhYmxlIGFsc28gdG8gcGFwZXIgZG9jdW1lbnRzLCBlLmcuIGFydGljbGVzIGluIHRoZSBtZWRpY2FsIGxpdGVyYXR1cmUuIFRoZSBtZXRhZGF0YSBlbGVtZW50cyDigJTCoMKgwqAgc3VwcG9ydCB1bmFtYmlndW91cyBhbmQgaW50ZXJuYXRpb25hbCB1bmRlcnN0YW5kaW5nIG9mIGltcG9ydGFudCBhc3BlY3RzIHRvIGRlc2NyaWJlIGEgcmVzb3VyY2UsIGUuZy4gcHVycG9zZSwgaXNzdWVyLCBpbnRlbmRlZCBhdWRpZW5jZSwgbGVnYWwgc3RhdHVzIGFuZCBzY2llbnRpZmljIGJhY2tncm91bmQsIOKAlMKgwqDCoCBhcmUgYXBwbGljYWJsZSB0byBkaWZmZXJlbnQga2luZHMgb2YgZGlnaXRhbCByZXNvdXJjZXMsIGUuZy4gcmVjb21tZW5kYXRpb24gZnJvbSBjb25zZW5zdXMgb2YgYSBwcm9mZXNzaW9uYWwgZ3JvdXAsIHJlZ3VsYXRpb24gYnkgYSBnb3Zlcm5tZW50YWwgYXV0aG9yaXR5LCBjbGluaWNhbCB0cmlhbCBwcm90b2NvbCBmcm9tIGEgcGhhcm1hY2V1dGljYWwgY29tcGFueSwgc2NpZW50aWZpYyBtYW51c2NyaXB0IGZyb20gYSByZXNlYXJjaCBncm91cCwgYWR2aWNlIHRvIHBhdGllbnRzIHdpdGggYSBzcGVjaWZpYyBkaXNlYXNlLCByZXZpZXcgYXJ0aWNsZSwg4oCUwqDCoMKgIGFyZSBwb3NzaWJsZSB0byBwcmVzZW50IHRvIGh1bWFuIHJlYWRlcnMgaW5jbHVkaW5nIGhlYWx0aCBwcm9mZXNzaW9uYWxzIGFzIHdlbGwgYXMgaW5kaXZpZHVhbHMvcGF0aWVudHMsIGFuZCDigJTCoMKgwqAgYXJlIHBvdGVudGlhbGx5IHVzYWJsZSBmb3IgYXV0b21hdGljIHByb2Nlc3NpbmcsIGUuZy4gdG8gc3VwcG9ydCBzZWFyY2ggZW5naW5lcyB0byByZXN0cmljdCBtYXRjaGVzIHRvIGRvY3VtZW50cyBvZiBhIGNlcnRhaW4gdHlwZSBvciBxdWFsaXR5IGxldmVsLiBUaGUgbWV0YWRhdGEgZWxlbWVudHMgZGVmaW5lZCBpbiB0aGlzIGRvY3VtZW50IGFyZSBub3QgaW50ZW5kZWQgdG8g4oCUwqDCoMKgIGRlc2NyaWJlIGRvY3VtZW50cyBhYm91dCBhIHNpbmdsZSBwYXRpZW50LCBzdWNoIGFzIG1lZGljYWwgcmVjb3Jkcywg4oCUwqDCoMKgIGRlc2NyaWJlIGRldGFpbHMgb2YgdGhlIG1lZGljYWwgY29udGVudCBvZiB0aGUgcmVzb3VyY2UgKGJ1dCBzb21lIGlkZWEgb2YgdGhlIGNvbnRlbnQgY2FuIGJlIGRlc2NyaWJlZCB2aWEga2V5d29yZHMgb3IgY29kZXMpLCBvciDigJTCoMKgwqAgcHJlc2NyaWJlIGNyaXRlcmlhIGZvciB0aGUgcXVhbGl0eSBvZiB0aGUgcmVzb3VyY2UgY29udGVudC4gIiwib2JqZWN0SUQiOiI3ODM5Ml8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xOToyMDIyIEhlYWx0aCBpbmZvcm1hdGljcyDigJQgQ2xpbmljYWwga25vd2xlZGdlIHJlc291cmNlcyDigJQgTWV0YWRhdGEiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgYSBudW1iZXIgb2YgbWV0YWRhdGEgZWxlbWVudHMgdGhhdCBkZXNjcmliZSByZXNvdXJjZXMgY29udGFpbmluZyBtZWRpY2FsIGtub3dsZWRnZSwgcHJpbWFyaWx5IGRpZ2l0YWwgZG9jdW1lbnRzIHByb3ZpZGVkIGFzIHdlYiByZXNvdXJjZXMsIGFjY2Vzc2libGUgZnJvbSBkYXRhYmFzZXMgb3IgdmlhIGZpbGUgdHJhbnNmZXIsIGJ1dCBjYW4gYmUgYXBwbGljYWJsZSBhbHNvIHRvIHBhcGVyIGRvY3VtZW50cywgZS5nLiBhcnRpY2xlcyBpbiB0aGUgbWVkaWNhbCBsaXRlcmF0dXJlLiBUaGUgbWV0YWRhdGEgZWxlbWVudHMg4oCUwqDCoMKgIHN1cHBvcnQgdW5hbWJpZ3VvdXMgYW5kIGludGVybmF0aW9uYWwgdW5kZXJzdGFuZGluZyBvZiBpbXBvcnRhbnQgYXNwZWN0cyB0byBkZXNjcmliZSBhIHJlc291cmNlLCBlLmcuIHB1cnBvc2UsIGlzc3VlciwgaW50ZW5kZWQgYXVkaWVuY2UsIGxlZ2FsIHN0YXR1cyBhbmQgc2NpZW50aWZpYyBiYWNrZ3JvdW5kLCDigJTCoMKgwqAgYXJlIGFwcGxpY2FibGUgdG8gZGlmZmVyZW50IGtpbmRzIG9mIGRpZ2l0YWwgcmVzb3VyY2VzLCBlLmcuIHJlY29tbWVuZGF0aW9uIGZyb20gY29uc2Vuc3VzIG9mIGEgcHJvZmVzc2lvbmFsIGdyb3VwLCByZWd1bGF0aW9uIGJ5IGEgZ292ZXJubWVudGFsIGF1dGhvcml0eSwgY2xpbmljYWwgdHJpYWwgcHJvdG9jb2wgZnJvbSBhIHBoYXJtYWNldXRpY2FsIGNvbXBhbnksIHNjaWVudGlmaWMgbWFudXNjcmlwdCBmcm9tIGEgcmVzZWFyY2ggZ3JvdXAsIGFkdmljZSB0byBwYXRpZW50cyB3aXRoIGEgc3BlY2lmaWMgZGlzZWFzZSwgcmV2aWV3IGFydGljbGUsIOKAlMKgwqDCoCBhcmUgcG9zc2libGUgdG8gcHJlc2VudCB0byBodW1hbiByZWFkZXJzIGluY2x1ZGluZyBoZWFsdGggcHJvZmVzc2lvbmFscyBhcyB3ZWxsIGFzIGluZGl2aWR1YWxzL3BhdGllbnRzLCBhbmQg4oCUwqDCoMKgIGFyZSBwb3RlbnRpYWxseSB1c2FibGUgZm9yIGF1dG9tYXRpYyBwcm9jZXNzaW5nLCBlLmcuIHRvIHN1cHBvcnQgc2VhcmNoIGVuZ2luZXMgdG8gcmVzdHJpY3QgbWF0Y2hlcyB0byBkb2N1bWVudHMgb2YgYSBjZXJ0YWluIHR5cGUgb3IgcXVhbGl0eSBsZXZlbC4gVGhlIG1ldGFkYXRhIGVsZW1lbnRzIGRlZmluZWQgaW4gdGhpcyBkb2N1bWVudCBhcmUgbm90IGludGVuZGVkIHRvIOKAlMKgwqDCoCBkZXNjcmliZSBkb2N1bWVudHMgYWJvdXQgYSBzaW5nbGUgcGF0aWVudCwgc3VjaCBhcyBtZWRpY2FsIHJlY29yZHMsIOKAlMKgwqDCoCBkZXNjcmliZSBkZXRhaWxzIG9mIHRoZSBtZWRpY2FsIGNvbnRlbnQgb2YgdGhlIHJlc291cmNlIChidXQgc29tZSBpZGVhIG9mIHRoZSBjb250ZW50IGNhbiBiZSBkZXNjcmliZWQgdmlhIGtleXdvcmRzIG9yIGNvZGVzKSwgb3Ig4oCUwqDCoMKgIHByZXNjcmliZSBjcml0ZXJpYSBmb3IgdGhlIHF1YWxpdHkgb2YgdGhlIHJlc291cmNlIGNvbnRlbnQuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA3LzgzLzc4MzU0IiwidXVpZCI6ImY3YmY2N2YzLWJmZmQtNGJlOS1iYTBlLTc5NjNhZmQ3MzQ3ZCIsInRpdGxlIjoiSVNPIDEzMTQzLTE6MjAyMCBFbGVjdHJvbmljIGZlZSBjb2xsZWN0aW9uIOKAlCBFdmFsdWF0aW9uIG9mIG9uLWJvYXJkIGFuZCByb2Fkc2lkZSBlcXVpcG1lbnQgZm9yIGNvbmZvcm1pdHkgdG8gSVNPIDEyODEzIOKAlCBQYXJ0IDE6IFRlc3Qgc3VpdGUgc3RydWN0dXJlIGFuZCB0ZXN0IHB1cnBvc2VzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMiwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgdGhlIHRlc3Qgc3VpdGUgc3RydWN0dXJlIChUU1MpIGFuZCB0ZXN0IHB1cnBvc2VzIChUUHMpIGZvciBldmFsdWF0aW5nIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIElTTyAxMjgxMy4gSXQgcHJvdmlkZXMgYSBiYXNpcyBmb3IgY29uZm9ybWFuY2UgdGVzdHMgZm9yIGRlZGljYXRlZCBzaG9ydC1yYW5nZSBjb21tdW5pY2F0aW9uIChEU1JDKSBPQkUgYW5kIFJTRSB0byBzdXBwb3J0IGludGVyb3BlcmFiaWxpdHkgYmV0d2VlbiBkaWZmZXJlbnQgZXF1aXBtZW50IHN1cHBsaWVkIGJ5IGRpZmZlcmVudCBtYW51ZmFjdHVyZXJzLiBJU08gMTI4MTMgZGVmaW5lcyByZXF1aXJlbWVudHMgb24gdGhlIGNvbXBsaWFuY2UgY2hlY2sgY29tbXVuaWNhdGlvbiAoQ0NDKSBpbnRlcmZhY2UgbGV2ZWwsIGJ1dCBub3QgZm9yIHRoZSBSU0Ugb3IgT0JFIGludGVybmFsIGZ1bmN0aW9uYWwgYmVoYXZpb3VyLiBDb25zZXF1ZW50bHksIHRlc3RzIHJlZ2FyZGluZyBPQkUgYW5kL29yIFJTRSBmdW5jdGlvbmFsIGJlaGF2aW91ciByZW1haW4gb3V0c2lkZSB0aGUgc2NvcGUgb2YgdGhpcyBkb2N1bWVudC4gIiwib2JqZWN0SUQiOiI3ODM1NF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40My0xOjIwMjAgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgRXZhbHVhdGlvbiBvZiBvbi1ib2FyZCBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IGZvciBjb25mb3JtaXR5IHRvIDxlbT5JU088L2VtPiAxMjgxMyDigJQgUGFydCAxOiBUZXN0IHN1aXRlIHN0cnVjdHVyZSBhbmQgdGVzdCBwdXJwb3NlcyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyB0aGUgdGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgKFRTUykgYW5kIHRlc3QgcHVycG9zZXMgKFRQcykgZm9yIGV2YWx1YXRpbmcgdGhlIGNvbmZvcm1pdHkgb2Ygb24tYm9hcmQgZXF1aXBtZW50IChPQkUpIGFuZCByb2Fkc2lkZSBlcXVpcG1lbnQgKFJTRSkgdG8gPGVtPklTTzwvZW0+IDEyODEzLiBJdCBwcm92aWRlcyBhIGJhc2lzIGZvciBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gKERTUkMpIE9CRSBhbmQgUlNFIHRvIHN1cHBvcnQgaW50ZXJvcGVyYWJpbGl0eSBiZXR3ZWVuIGRpZmZlcmVudCBlcXVpcG1lbnQgc3VwcGxpZWQgYnkgZGlmZmVyZW50IG1hbnVmYWN0dXJlcnMuIDxlbT5JU088L2VtPiAxMjgxMyBkZWZpbmVzIHJlcXVpcmVtZW50cyBvbiB0aGUgY29tcGxpYW5jZSBjaGVjayBjb21tdW5pY2F0aW9uIChDQ0MpIGludGVyZmFjZSBsZXZlbCwgYnV0IG5vdCBmb3IgdGhlIFJTRSBvciBPQkUgaW50ZXJuYWwgZnVuY3Rpb25hbCBiZWhhdmlvdXIuIENvbnNlcXVlbnRseSwgdGVzdHMgcmVnYXJkaW5nIE9CRSBhbmQvb3IgUlNFIGZ1bmN0aW9uYWwgYmVoYXZpb3VyIHJlbWFpbiBvdXRzaWRlIHRoZSBzY29wZSBvZiB0aGlzIGRvY3VtZW50LiAiLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy8xOC83MTg3MSIsInV1aWQiOiI5YjQxZGU4Mi0yMTFlLTQyOWQtYjk5OS02ZDJmZGNjMDBlZDUiLCJ0aXRsZSI6IklTTyAxMzE4NC0zOjIwMTcgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMgKElUUykg4oCUIEd1aWRhbmNlIHByb3RvY29sIHZpYSBwZXJzb25hbCBJVFMgc3RhdGlvbiBmb3IgYWR2aXNvcnkgc2FmZXR5IHN5c3RlbXMg4oCUIFBhcnQgMzogUm9hZCBndWlkYW5jZSBwcm90b2NvbCAoUkdQKSBjb25mb3JtYW5jZSB0ZXN0IHNwZWNpZmljYXRpb24iLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxODQtMzoyMDE3IHNwZWNpZmllcyBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgYSBzZWxmLWNvbmZvcm1hbmNlIGFzc2Vzc21lbnQgb2YgdGhlIHN1cHBsaWVyJ3MgUC1JVFMtUyBzeXN0ZW0uIFRoZSBjb25mb3JtYW5jZSB0ZXN0IGNhc2VzIGZvbGxvdyB0aGUgdXNlIGNhc2UgZGVmaW5pdGlvbiBvZiBJU08vVFIgMTMxODTigJExIGFuZCB0aGUgcmVxdWlyZW1lbnRzIHN0YXRlZCBpbiBJU08gMTMxODTigJEyIGJhc2VkIG9uIHRoZSBEYXRhIGVYY2hhbmdlIE1lc3NhZ2UgKERYTSkgYXQgdGhlIGFwcGxpY2F0aW9uIGxldmVsIHJlZ2FyZGluZyB0aGUgc2FmZXR5IHdhcm5pbmcgYW5kIHBhcmtpbmcgZ3VpZGUgc2VydmljZXMgYmV0d2VlbiAtICAgICAgdGhlIFZlaGljbGUgSVRTIFN0YXRpb24gKFYtSVRTLVMpIGluc3RhbGxlZCBpbiB0aGUgdmVoaWNsZSwgb3IgLSAgICAgIGEgUGVyc29uYWwgSVRTIFN0YXRpb24gKFAtSVRTLVMpLCBlLmcuIE5vbWFkaWMgRGV2aWNlLCBpbiBhIHZlaGljbGUgb3IgdXNlZCBieSBhIHBlZGVzdHJpYW4sIGFuZCAtICAgICAgYSBSb2Fkc2lkZSBJVFMgU3RhdGlvbiAoUi1JVFMtUykgaW5zdGFsbGVkIGF0IHRoZSByb2Fkc2lkZS4gVGhlIHByaW1hcnkgYnV0IG5vdCBleGNsdXNpdmUgcHVycG9zZSBvZiB0aGlzIGRvY3VtZW50IGlzIHRvIHByb3ZpZGUgaW5mb3JtYXRpb24gdG8gdGhlIFAtSVRTLVMgc3lzdGVtIHByb3ZpZGVyIHRvIGJ1aWxkIGFuZCB0ZXN0IHRoZSBQLUlUUy1TIHN5c3RlbSBhZ2FpbnN0IHRoZSBjb25mb3JtYW5jZSB0ZXN0IGNhc2VzLiBUaGlzIGZpbmFsIHN0ZXAgaW4gdGhlIGRldmVsb3BtZW50IHByb2Nlc3Mgb2YgdGhlIFAtSVRTLVMgc3lzdGVtIGVuc3VyZXMgcHJvdmlkZXJzIHRoYXQgdGhlaXIgUC1JVFMtUyBzeXN0ZW0gbWVldHMgYSBoaWdoIGRlZ3JlZSBvZiBmdW5jdGlvbmFsIHJlcXVpcmVtZW50cyBleHBlY3RlZCBieSB0aGUgZW5kIHVzZXIuICIsIm9iamVjdElEIjoiNzE4NzFfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODQtMzoyMDE3IEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIChJVFMpIOKAlCBHdWlkYW5jZSBwcm90b2NvbCB2aWEgcGVyc29uYWwgSVRTIHN0YXRpb24gZm9yIGFkdmlzb3J5IHNhZmV0eSBzeXN0ZW1zIOKAlCBQYXJ0IDM6IFJvYWQgZ3VpZGFuY2UgcHJvdG9jb2wgKFJHUCkgY29uZm9ybWFuY2UgdGVzdCBzcGVjaWZpY2F0aW9uIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NC0zOjIwMTcgc3BlY2lmaWVzIGNvbmZvcm1hbmNlIHRlc3RzIGZvciBhIHNlbGYtY29uZm9ybWFuY2UgYXNzZXNzbWVudCBvZiB0aGUgc3VwcGxpZXIncyBQLUlUUy1TIHN5c3RlbS4gVGhlIGNvbmZvcm1hbmNlIHRlc3QgY2FzZXMgZm9sbG93IHRoZSB1c2UgY2FzZSBkZWZpbml0aW9uIG9mIDxlbT5JU088L2VtPi9UUiA8ZW0+MTMxPC9lbT44NOKAkTEgYW5kIHRoZSByZXF1aXJlbWVudHMgc3RhdGVkIGluIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NOKAkTIgYmFzZWQgb24gdGhlIERhdGEgZVhjaGFuZ2UgTWVzc2FnZSAoRFhNKSBhdCB0aGUgYXBwbGljYXRpb24gbGV2ZWwgcmVnYXJkaW5nIHRoZSBzYWZldHkgd2FybmluZyBhbmQgcGFya2luZyBndWlkZSBzZXJ2aWNlcyBiZXR3ZWVuIC0gICAgICB0aGUgVmVoaWNsZSBJVFMgU3RhdGlvbiAoVi1JVFMtUykgaW5zdGFsbGVkIGluIHRoZSB2ZWhpY2xlLCBvciAtICAgICAgYSBQZXJzb25hbCBJVFMgU3RhdGlvbiAoUC1JVFMtUyksIGUuZy4gTm9tYWRpYyBEZXZpY2UsIGluIGEgdmVoaWNsZSBvciB1c2VkIGJ5IGEgcGVkZXN0cmlhbiwgYW5kIC0gICAgICBhIFJvYWRzaWRlIElUUyBTdGF0aW9uIChSLUlUUy1TKSBpbnN0YWxsZWQgYXQgdGhlIHJvYWRzaWRlLiBUaGUgcHJpbWFyeSBidXQgbm90IGV4Y2x1c2l2ZSBwdXJwb3NlIG9mIHRoaXMgZG9jdW1lbnQgaXMgdG8gcHJvdmlkZSBpbmZvcm1hdGlvbiB0byB0aGUgUC1JVFMtUyBzeXN0ZW0gcHJvdmlkZXIgdG8gYnVpbGQgYW5kIHRlc3QgdGhlIFAtSVRTLVMgc3lzdGVtIGFnYWluc3QgdGhlIGNvbmZvcm1hbmNlIHRlc3QgY2FzZXMuIFRoaXMgZmluYWwgc3RlcCBpbiB0aGUgZGV2ZWxvcG1lbnQgcHJvY2VzcyBvZiB0aGUgUC1JVFMtUyBzeXN0ZW0gZW5zdXJlcyBwcm92aWRlcnMgdGhhdCB0aGVpciBQLUlUUy1TIHN5c3RlbSBtZWV0cyBhIGhpZ2ggZGVncmVlIG9mIGZ1bmN0aW9uYWwgcmVxdWlyZW1lbnRzIGV4cGVjdGVkIGJ5IHRoZSBlbmQgdXNlci4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDcvMDAvNzAwNDgiLCJ1dWlkIjoiM2YyZmIzMzUtYTljNC00ZmU3LWI5NGMtZGNjY2M4YjkzZjk2IiwidGl0bGUiOiJJU08gMTMxNDAtMjoyMDE2IEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIEV2YWx1YXRpb24gb2Ygb24tYm9hcmQgYW5kIHJvYWRzaWRlIGVxdWlwbWVudCBmb3IgY29uZm9ybWl0eSB0byBJU08gMTMxNDEg4oCUIFBhcnQgMjogQWJzdHJhY3QgdGVzdCBzdWl0ZSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE0MC0yOjIwMTYgc3BlY2lmaWVzIHRoZSBhYnN0cmFjdCB0ZXN0IHN1aXRlIChBVFMpIHRvIGV2YWx1YXRlIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIElTTyAxMzE0MToyMDE1IGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgdGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgYW5kIHRlc3QgcHVycG9zZXMgZGVmaW5lZCBpbiBJU08gMTMxNDDigJExOjIwMTYuIEl0IHByb3ZpZGVzIGEgYmFzaXMgZm9yIGNvbmZvcm1hbmNlIHRlc3RzIGZvciBkZWRpY2F0ZWQgc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbiAoRFNSQykgZXF1aXBtZW50IChPQkUgYW5kIFJTRSkgdG8gc3VwcG9ydCBpbnRlcm9wZXJhYmlsaXR5IGJldHdlZW4gZGlmZmVyZW50IGVxdWlwbWVudCBzdXBwbGllZCBieSBkaWZmZXJlbnQgbWFudWZhY3R1cmVycy4gIiwib2JqZWN0SUQiOiI3MDA0OF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MC0yOjIwMTYgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgRXZhbHVhdGlvbiBvZiBvbi1ib2FyZCBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IGZvciBjb25mb3JtaXR5IHRvIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MSDigJQgUGFydCAyOiBBYnN0cmFjdCB0ZXN0IHN1aXRlIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MC0yOjIwMTYgc3BlY2lmaWVzIHRoZSBhYnN0cmFjdCB0ZXN0IHN1aXRlIChBVFMpIHRvIGV2YWx1YXRlIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgdGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgYW5kIHRlc3QgcHVycG9zZXMgZGVmaW5lZCBpbiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NDDigJExOjIwMTYuIEl0IHByb3ZpZGVzIGEgYmFzaXMgZm9yIGNvbmZvcm1hbmNlIHRlc3RzIGZvciBkZWRpY2F0ZWQgc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbiAoRFNSQykgZXF1aXBtZW50IChPQkUgYW5kIFJTRSkgdG8gc3VwcG9ydCBpbnRlcm9wZXJhYmlsaXR5IGJldHdlZW4gZGlmZmVyZW50IGVxdWlwbWVudCBzdXBwbGllZCBieSBkaWZmZXJlbnQgbWFudWZhY3R1cmVycy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvODIvNjgyNDciLCJ1dWlkIjoiMzI5Y2Y4MDMtMjViYy00YWM3LWE4MTUtOTRjOTYxNDRhNjRmIiwidGl0bGUiOiJJU08gMTMxNDMtMjoyMDE2IEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIEV2YWx1YXRpb24gb2Ygb24tYm9hcmQgYW5kIHJvYWRzaWRlIGVxdWlwbWVudCBmb3IgY29uZm9ybWl0eSB0byBJU08gMTI4MTMg4oCUIFBhcnQgMjogQWJzdHJhY3QgdGVzdCBzdWl0ZSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE0My0yOjIwMTYgc3BlY2lmaWVzIHRoZSBhYnN0cmFjdCB0ZXN0IHN1aXRlIChBVFMpIHRvIGV2YWx1YXRlIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIElTTyAxMjgxMyBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIHRlc3Qgc3VpdGUgc3RydWN0dXJlIGFuZCB0ZXN0IHB1cnBvc2VzIGRlZmluZWQgaW4gSVNPIDEzMTQz4oCRMToyMDE2LiBJdCBwcm92aWRlcyBhIGJhc2lzIGZvciBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gKERTUkMpIGVxdWlwbWVudCAoT0JFIGFuZCBSU0UpIHRvIGVuYWJsZSBpbnRlcm9wZXJhYmlsaXR5IGJldHdlZW4gZXF1aXBtZW50IHN1cHBsaWVkIGJ5IGRpZmZlcmVudCBtYW51ZmFjdHVyZXJzLiBJbiBvcmRlciB0byBhc2NlcnRhaW4gdGhhdCBPQkUgYW5kIFJTRSBmdWxmaWwgZXNzZW50aWFsIHJhZGlvIHJlcXVpcmVtZW50cywgdGhleSBhcmUgYWxzbyBsaWtlbHkgdG8gYmUgc3ViamVjdCB0byBhZGRpdGlvbmFsIGZhY3RvcnksIHNpdGUgYW5kIHN5c3RlbSBhY2NlcHRhbmNlIHRlc3RpbmcgKGUuZy4gb2YgcGh5c2ljYWwgYW5kIGVudmlyb25tZW50YWwgZW5kdXJhbmNlLCBxdWFsaXR5IGFzc3VyYW5jZSBhbmQgY29udHJvbCBhdCBtYW51ZmFjdHVyaW5nLCBhbmQgY2hhcmdlIHBvaW50IGludGVncmF0aW9uKSwgd2hpY2ggaXMgb3V0c2lkZSB0aGUgc2NvcGUgb2YgdGhpcyBkb2N1bWVudC4gIiwib2JqZWN0SUQiOiI2ODI0N18wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40My0yOjIwMTYgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgRXZhbHVhdGlvbiBvZiBvbi1ib2FyZCBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IGZvciBjb25mb3JtaXR5IHRvIDxlbT5JU088L2VtPiAxMjgxMyDigJQgUGFydCAyOiBBYnN0cmFjdCB0ZXN0IHN1aXRlIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40My0yOjIwMTYgc3BlY2lmaWVzIHRoZSBhYnN0cmFjdCB0ZXN0IHN1aXRlIChBVFMpIHRvIGV2YWx1YXRlIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIDxlbT5JU088L2VtPiAxMjgxMyBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIHRlc3Qgc3VpdGUgc3RydWN0dXJlIGFuZCB0ZXN0IHB1cnBvc2VzIGRlZmluZWQgaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQz4oCRMToyMDE2LiBJdCBwcm92aWRlcyBhIGJhc2lzIGZvciBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gKERTUkMpIGVxdWlwbWVudCAoT0JFIGFuZCBSU0UpIHRvIGVuYWJsZSBpbnRlcm9wZXJhYmlsaXR5IGJldHdlZW4gZXF1aXBtZW50IHN1cHBsaWVkIGJ5IGRpZmZlcmVudCBtYW51ZmFjdHVyZXJzLiBJbiBvcmRlciB0byBhc2NlcnRhaW4gdGhhdCBPQkUgYW5kIFJTRSBmdWxmaWwgZXNzZW50aWFsIHJhZGlvIHJlcXVpcmVtZW50cywgdGhleSBhcmUgYWxzbyBsaWtlbHkgdG8gYmUgc3ViamVjdCB0byBhZGRpdGlvbmFsIGZhY3RvcnksIHNpdGUgYW5kIHN5c3RlbSBhY2NlcHRhbmNlIHRlc3RpbmcgKGUuZy4gb2YgcGh5c2ljYWwgYW5kIGVudmlyb25tZW50YWwgZW5kdXJhbmNlLCBxdWFsaXR5IGFzc3VyYW5jZSBhbmQgY29udHJvbCBhdCBtYW51ZmFjdHVyaW5nLCBhbmQgY2hhcmdlIHBvaW50IGludGVncmF0aW9uKSwgd2hpY2ggaXMgb3V0c2lkZSB0aGUgc2NvcGUgb2YgdGhpcyBkb2N1bWVudC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvODIvNjgyNDUiLCJ1dWlkIjoiNGRkYmY1YzQtNTZhOC00MDgzLWJlNjMtZDllZTY2YTQyNjdhIiwidGl0bGUiOiJJU08gMTMxNDAtMToyMDE2IEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIEV2YWx1YXRpb24gb2Ygb24tYm9hcmQgYW5kIHJvYWRzaWRlIGVxdWlwbWVudCBmb3IgY29uZm9ybWl0eSB0byBJU08gMTMxNDEg4oCUIFBhcnQgMTogVGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgYW5kIHRlc3QgcHVycG9zZXMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxNDAtMToyMDE2IHNwZWNpZmllcyB0aGUgdGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgKFRTUykgYW5kIHRlc3QgcHVycG9zZXMgKFRQKSB0byBldmFsdWF0ZSB0aGUgY29uZm9ybWl0eSBvZiBvbi1ib2FyZCB1bml0cyAoT0JVKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIElTTyAxMzE0MS4gSXQgcHJvdmlkZXMgYSBiYXNpcyBmb3IgY29uZm9ybWFuY2UgdGVzdHMgZm9yIGRlZGljYXRlZCBzaG9ydC1yYW5nZSBjb21tdW5pY2F0aW9uIChEU1JDKSBlcXVpcG1lbnQgKG9uLWJvYXJkIHVuaXRzIGFuZCByb2Fkc2lkZSB1bml0cykgdG8gZW5hYmxlIGludGVyb3BlcmFiaWxpdHkgYmV0d2VlbiBkaWZmZXJlbnQgZXF1aXBtZW50IHN1cHBsaWVkIGJ5IGRpZmZlcmVudCBtYW51ZmFjdHVyZXJzLiAiLCJvYmplY3RJRCI6IjY4MjQ1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQwLTE6MjAxNiBFbGVjdHJvbmljIGZlZSBjb2xsZWN0aW9uIOKAlCBFdmFsdWF0aW9uIG9mIG9uLWJvYXJkIGFuZCByb2Fkc2lkZSBlcXVpcG1lbnQgZm9yIGNvbmZvcm1pdHkgdG8gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQxIOKAlCBQYXJ0IDE6IFRlc3Qgc3VpdGUgc3RydWN0dXJlIGFuZCB0ZXN0IHB1cnBvc2VzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MC0xOjIwMTYgc3BlY2lmaWVzIHRoZSB0ZXN0IHN1aXRlIHN0cnVjdHVyZSAoVFNTKSBhbmQgdGVzdCBwdXJwb3NlcyAoVFApIHRvIGV2YWx1YXRlIHRoZSBjb25mb3JtaXR5IG9mIG9uLWJvYXJkIHVuaXRzIChPQlUpIGFuZCByb2Fkc2lkZSBlcXVpcG1lbnQgKFJTRSkgdG8gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQxLiBJdCBwcm92aWRlcyBhIGJhc2lzIGZvciBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gKERTUkMpIGVxdWlwbWVudCAob24tYm9hcmQgdW5pdHMgYW5kIHJvYWRzaWRlIHVuaXRzKSB0byBlbmFibGUgaW50ZXJvcGVyYWJpbGl0eSBiZXR3ZWVuIGRpZmZlcmVudCBlcXVpcG1lbnQgc3VwcGxpZWQgYnkgZGlmZmVyZW50IG1hbnVmYWN0dXJlcnMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzYyLzY2MjAyIiwidXVpZCI6IjAxOTY4OTRmLTBlYzYtNDE0NS04N2Q4LTE1NDE0NWE4ZDI3YyIsInRpdGxlIjoiSVNPIDEzMTcxOjIwMTYgRXNzZW50aWFsIG9pbCBvZiBvcmVnYW5vIFtPcmlnYW51bSB2dWxnYXJlIEwuIHN1YnNwLiBoaXJ0dW0gKExpbmspIGxldHN3XSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE3MToyMDE2IHNwZWNpZmllcyBjZXJ0YWluIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgZXNzZW50aWFsIG9pbCBvZiBvcmVnYW5vIFsgT3JpZ2FudW0gdnVsZ2FyZSBMLiBzdWJzcC4gaGlydHVtIChMaW5rKSBsZXRzd10sIGluIG9yZGVyIHRvIGZhY2lsaXRhdGUgdGhlIGFzc2Vzc21lbnQgb2YgaXRzIHF1YWxpdHkuICIsIm9iamVjdElEIjoiNjYyMDJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzE6MjAxNiBFc3NlbnRpYWwgb2lsIG9mIG9yZWdhbm8gW09yaWdhbnVtIHZ1bGdhcmUgTC4gc3Vic3AuIGhpcnR1bSAoTGluaykgbGV0c3ddIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43MToyMDE2IHNwZWNpZmllcyBjZXJ0YWluIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgZXNzZW50aWFsIG9pbCBvZiBvcmVnYW5vIFsgT3JpZ2FudW0gdnVsZ2FyZSBMLiBzdWJzcC4gaGlydHVtIChMaW5rKSBsZXRzd10sIGluIG9yZGVyIHRvIGZhY2lsaXRhdGUgdGhlIGFzc2Vzc21lbnQgb2YgaXRzIHF1YWxpdHkuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzIyLzYyMjg1IiwidXVpZCI6ImZiMTZjNWQ5LWJkMGItNDIwZC04MDhmLTU2MWQ1YzNhYzRjMCIsInRpdGxlIjoiSVNPIDEzMTA1LTI6MjAxNCBCdWlsZGluZyBjb25zdHJ1Y3Rpb24gbWFjaGluZXJ5IGFuZCBlcXVpcG1lbnQg4oCUIE1hY2hpbmVyeSBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nIOKAlCBQYXJ0IDI6IFNhZmV0eSByZXF1aXJlbWVudHMgYW5kIHZlcmlmaWNhdGlvbiIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEwNS0yOjIwMTQgc3BlY2lmaWVzIHNhZmV0eSByZXF1aXJlbWVudHMgZm9yIG1hY2hpbmVzIHVzZWQgZm9yIGNvbmNyZXRlIHN1cmZhY2UgZmxvYXRpbmcgYW5kIGZpbmlzaGluZy4gVGhpcyBpbmNsdWRlcyBwZWRlc3RyaWFuLWNvbnRyb2xsZWQgZXF1aXBtZW50IGFuZCByaWRlLW9uIGVxdWlwbWVudC4gSXQgaXMgbm90IGFwcGxpY2FibGUgdG8gICAgaW50ZXJuYWwgb3IgZXh0ZXJuYWwgdmlicmF0b3JzIG9yIGFuY2lsbGFyeSBlcXVpcG1lbnQgdXNlZCB3aXRoIGludGVybmFsIGFuZCBleHRlcm5hbCB2aWJyYXRvcnMsIGZvciBleGFtcGxlLCBhaXIgY29tcHJlc3NvcnMsIGh5ZHJhdWxpYyBwb3dlciBzb3VyY2VzLCBhbmQgdm9sdGFnZSB0cmFuc2Zvcm1lcnMsIHRvIHJlbW90ZS1jb250cm9sbGVkIG9yIGhhbmQtaGVsZCBzbW9vdGhpbmcgbWFjaGluZXMgYW5kIHNlbGYtYWN0aW5nIChyb2JvdGljKSBzbW9vdGhpbmcgbWFjaGluZXMsIG9yIHRvIHN0cmlrZS1vZmYgdHlwZSBtYWNoaW5lcyBjb21tb25seSBrbm93biBhcyBzY3JlZWRzLiBJdCBkZWFscyB3aXRoIHNpZ25pZmljYW50IGhhemFyZHMsIGhhemFyZG91cyBzaXR1YXRpb25zLCBvciBoYXphcmRvdXMgZXZlbnRzIHJlbGV2YW50IHRvIG1hY2hpbmVyeSBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nIChwb3dlciB0cm93ZWxzKSB3aGVuIHVzZWQgYXMgaW50ZW5kZWQgYW5kIHVuZGVyIGNvbmRpdGlvbnMgb2YgbWlzdXNlIHdoaWNoIGFyZSByZWFzb25hYmx5IGZvcmVzZWVhYmxlIGJ5IHRoZSBtYW51ZmFjdHVyZXIuIEl0IGlzIG5vdCBhcHBsaWNhYmxlIHRvIG1hY2hpbmVzIHdoaWNoIGFyZSBtYW51ZmFjdHVyZWQgYmVmb3JlIHRoZSBkYXRlIG9mIGl0cyBwdWJsaWNhdGlvbi4gIiwib2JqZWN0SUQiOiI2MjI4NV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4wNS0yOjIwMTQgQnVpbGRpbmcgY29uc3RydWN0aW9uIG1hY2hpbmVyeSBhbmQgZXF1aXBtZW50IOKAlCBNYWNoaW5lcnkgZm9yIGNvbmNyZXRlIHN1cmZhY2UgZmxvYXRpbmcgYW5kIGZpbmlzaGluZyDigJQgUGFydCAyOiBTYWZldHkgcmVxdWlyZW1lbnRzIGFuZCB2ZXJpZmljYXRpb24iLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA1LTI6MjAxNCBzcGVjaWZpZXMgc2FmZXR5IHJlcXVpcmVtZW50cyBmb3IgbWFjaGluZXMgdXNlZCBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nLiBUaGlzIGluY2x1ZGVzIHBlZGVzdHJpYW4tY29udHJvbGxlZCBlcXVpcG1lbnQgYW5kIHJpZGUtb24gZXF1aXBtZW50LiBJdCBpcyBub3QgYXBwbGljYWJsZSB0byAgICBpbnRlcm5hbCBvciBleHRlcm5hbCB2aWJyYXRvcnMgb3IgYW5jaWxsYXJ5IGVxdWlwbWVudCB1c2VkIHdpdGggaW50ZXJuYWwgYW5kIGV4dGVybmFsIHZpYnJhdG9ycywgZm9yIGV4YW1wbGUsIGFpciBjb21wcmVzc29ycywgaHlkcmF1bGljIHBvd2VyIHNvdXJjZXMsIGFuZCB2b2x0YWdlIHRyYW5zZm9ybWVycywgdG8gcmVtb3RlLWNvbnRyb2xsZWQgb3IgaGFuZC1oZWxkIHNtb290aGluZyBtYWNoaW5lcyBhbmQgc2VsZi1hY3RpbmcgKHJvYm90aWMpIHNtb290aGluZyBtYWNoaW5lcywgb3IgdG8gc3RyaWtlLW9mZiB0eXBlIG1hY2hpbmVzIGNvbW1vbmx5IGtub3duIGFzIHNjcmVlZHMuIEl0IGRlYWxzIHdpdGggc2lnbmlmaWNhbnQgaGF6YXJkcywgaGF6YXJkb3VzIHNpdHVhdGlvbnMsIG9yIGhhemFyZG91cyBldmVudHMgcmVsZXZhbnQgdG8gbWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcgKHBvd2VyIHRyb3dlbHMpIHdoZW4gdXNlZCBhcyBpbnRlbmRlZCBhbmQgdW5kZXIgY29uZGl0aW9ucyBvZiBtaXN1c2Ugd2hpY2ggYXJlIHJlYXNvbmFibHkgZm9yZXNlZWFibGUgYnkgdGhlIG1hbnVmYWN0dXJlci4gSXQgaXMgbm90IGFwcGxpY2FibGUgdG8gbWFjaGluZXMgd2hpY2ggYXJlIG1hbnVmYWN0dXJlZCBiZWZvcmUgdGhlIGRhdGUgb2YgaXRzIHB1YmxpY2F0aW9uLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi8xNS82MTU2MiIsInV1aWQiOiI0ZTU2YmM2Zi0zMzQ3LTQwZDQtOGY1MS0xYzMzMmY2MTYyMjIiLCJ0aXRsZSI6IklTTyAxMzExMS0xOjIwMTcgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMgKElUUykg4oCUIFRoZSB1c2Ugb2YgcGVyc29uYWwgSVRTIHN0YXRpb24gdG8gc3VwcG9ydCBJVFMgc2VydmljZSBwcm92aXNpb24gZm9yIHRyYXZlbGxlcnMg4oCUIFBhcnQgMTogR2VuZXJhbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGNhc2UgZGVmaW5pdGlvbnMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxMTEtMToyMDE3IGRlZmluZXMgdGhlIGdlbmVyYWwgaW5mb3JtYXRpb24gYW5kIHVzZSBjYXNlcyBvZiB0aGUgYXBwbGljYXRpb25zIGJhc2VkIG9uIHRoZSBwZXJzb25hbCBJVFMgc3RhdGlvbiB0byBwcm92aWRlIGFuZCBtYWludGFpbiBJVFMgc2VydmljZXMgdG8gdHJhdmVsbGVycyBpbmNsdWRpbmcgZHJpdmVycywgcGFzc2VuZ2VycyBhbmQgcGVkZXN0cmlhbnMuIFRoZSBJVFMgYXBwbGljYXRpb25zIHN1cHBvcnRlZCBieSBJU08gMTMxMTEtMToyMDE3IGluY2x1ZGUgbXVsdGktbW9kYWwgdHJhbnNwb3J0YXRpb24gaW5mb3JtYXRpb24gc2VydmljZSBhbmQgbXVsdGltb2RhbCBuYXZpZ2F0aW9uIHNlcnZpY2Ugd2hpY2ggYXJlIGJhc2VkIG9uIHBlcnNvbmFsIElUUyBzdGF0aW9ucyBpbiB2YXJpb3VzIGFwcGxpY2F0aW9uIHNjZW5hcmlvcyBhcyBmb2xsb3dzLiAtICAgICAgU2xvdyB0cmFuc3BvcnQgaW5mb3JtYXRpb24gc2VydmljZSBhbmQgbmF2aWdhdGlvbiBzZXJ2aWNlIHN1Y2ggYXMgcGVkZXN0cmlhbnMsIGJpY3ljbGVzIGFuZCBkaXNhYmxlZCAod2hlZWxjaGFpciBhY2Nlc3NpYmxlKSBuYXZpZ2F0aW9uLCBhcyB3ZWxsIGFzIGludGVybmFsIHRyYWZmaWMgbmF2aWdhdGlvbiBpbnNpZGUgdGhlIGxvY2FsIHRyYW5zcG9ydCBhcmVhLiAtICAgICAgVHJhbnNmZXIgaW5mb3JtYXRpb24gc2VydmljZS4gVGhlIGNvbnNpZGVyZWQgYXBwbGljYXRpb24gZW52aXJvbm1lbnQgaW5jbHVkZXMgdGhlIHRyYW5zZmVyIGluZm9ybWF0aW9uIHNlcnZpY2UgaW4gYSB0cmFuc2ZlciBub2RlIHN1Y2ggYXMgdGhlIGludGVncmF0ZWQgdHJhbnNwb3J0YXRpb24gaHViLCBidXMgc3RhdGlvbnMsIGNhciBwYXJraW5nIGxvdCwgYW4gaW5kb29yIHRyYW5zZmVyIGFyZWEsIGV0Yy4gLSAgICAgIE11bHRpLW1vZGFsIHRyYWZmaWMgaW5mb3JtYXRpb24gc2VydmljZS4gVHlwZXMgb2YgdHJhZmZpYyBpbmZvcm1hdGlvbiBpbmNsdWRlIHJlYWwtdGltZSByb2FkIHRyYWZmaWMgaW5mb3JtYXRpb24sIHB1YmxpYyB0cmFuc3BvcnQgb3BlcmF0aW5nIGluZm9ybWF0aW9uLCBzZXJ2aWNlIGluZm9ybWF0aW9uIGZvciBwZWRlc3RyaWFucycgcm9hZCBuZXR3b3JrIGFuZCBzZXJ2aWNlIGluZm9ybWF0aW9uIGZvciB0cmFuc2ZlciBub2RlIHN1Y2ggYXMgaW50ZWdyYXRlZCB0cmFuc3BvcnRhdGlvbiBodWIsIGJ1cyBzdGF0aW9ucywgY2FyIHBhcmtpbmcgbG90LCBhbiBpbmRvb3IgdHJhbnNmZXIgYXJlYSwgZXRjLiAtICAgICAgTXVsdGktbW9kYWwgbmF2aWdhdGlvbiBzZXJ2aWNlLiBJbmNsdWRlcyBzdGF0aWMgYW5kIGR5bmFtaWMgbXVsdGktbW9kYWwgcm91dGluZyBhbmQgcmUtcm91dGluZyBzZXJ2aWNlLCBhcyB3ZWxsIGFzIHJlYWwtdGltZSBndWlkYW5jZSBzZXJ2aWNlIHdpdGggdm9pY2UvaW1hZ2UvdGV4dC9tYXAgZHJhd2luZ3MuIC0gICAgICBDb21tdW5pdGllcyBhY3Rpdml0aWVzLiBGb3IgZXhhbXBsZSwgYSB0ZWFtIHRyYXZlbCB3aGVuIGEgZ3JvdXAgb2YgdmVoaWNsZXMgKG9yIGJpY3ljbGVzKSB0cmFjayB0aGUgbGVhZCB2ZWhpY2xlIG9uIHRoZSB3YXkgdG8gdGhlIHNhbWUgZGVzdGluYXRpb24uICIsIm9iamVjdElEIjoiNjE1NjJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MTEtMToyMDE3IEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIChJVFMpIOKAlCBUaGUgdXNlIG9mIHBlcnNvbmFsIElUUyBzdGF0aW9uIHRvIHN1cHBvcnQgSVRTIHNlcnZpY2UgcHJvdmlzaW9uIGZvciB0cmF2ZWxsZXJzIOKAlCBQYXJ0IDE6IEdlbmVyYWwgaW5mb3JtYXRpb24gYW5kIHVzZSBjYXNlIGRlZmluaXRpb25zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xMS0xOjIwMTcgZGVmaW5lcyB0aGUgZ2VuZXJhbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGNhc2VzIG9mIHRoZSBhcHBsaWNhdGlvbnMgYmFzZWQgb24gdGhlIHBlcnNvbmFsIElUUyBzdGF0aW9uIHRvIHByb3ZpZGUgYW5kIG1haW50YWluIElUUyBzZXJ2aWNlcyB0byB0cmF2ZWxsZXJzIGluY2x1ZGluZyBkcml2ZXJzLCBwYXNzZW5nZXJzIGFuZCBwZWRlc3RyaWFucy4gVGhlIElUUyBhcHBsaWNhdGlvbnMgc3VwcG9ydGVkIGJ5IDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xMS0xOjIwMTcgaW5jbHVkZSBtdWx0aS1tb2RhbCB0cmFuc3BvcnRhdGlvbiBpbmZvcm1hdGlvbiBzZXJ2aWNlIGFuZCBtdWx0aW1vZGFsIG5hdmlnYXRpb24gc2VydmljZSB3aGljaCBhcmUgYmFzZWQgb24gcGVyc29uYWwgSVRTIHN0YXRpb25zIGluIHZhcmlvdXMgYXBwbGljYXRpb24gc2NlbmFyaW9zIGFzIGZvbGxvd3MuIC0gICAgICBTbG93IHRyYW5zcG9ydCBpbmZvcm1hdGlvbiBzZXJ2aWNlIGFuZCBuYXZpZ2F0aW9uIHNlcnZpY2Ugc3VjaCBhcyBwZWRlc3RyaWFucywgYmljeWNsZXMgYW5kIGRpc2FibGVkICh3aGVlbGNoYWlyIGFjY2Vzc2libGUpIG5hdmlnYXRpb24sIGFzIHdlbGwgYXMgaW50ZXJuYWwgdHJhZmZpYyBuYXZpZ2F0aW9uIGluc2lkZSB0aGUgbG9jYWwgdHJhbnNwb3J0IGFyZWEuIC0gICAgICBUcmFuc2ZlciBpbmZvcm1hdGlvbiBzZXJ2aWNlLiBUaGUgY29uc2lkZXJlZCBhcHBsaWNhdGlvbiBlbnZpcm9ubWVudCBpbmNsdWRlcyB0aGUgdHJhbnNmZXIgaW5mb3JtYXRpb24gc2VydmljZSBpbiBhIHRyYW5zZmVyIG5vZGUgc3VjaCBhcyB0aGUgaW50ZWdyYXRlZCB0cmFuc3BvcnRhdGlvbiBodWIsIGJ1cyBzdGF0aW9ucywgY2FyIHBhcmtpbmcgbG90LCBhbiBpbmRvb3IgdHJhbnNmZXIgYXJlYSwgZXRjLiAtICAgICAgTXVsdGktbW9kYWwgdHJhZmZpYyBpbmZvcm1hdGlvbiBzZXJ2aWNlLiBUeXBlcyBvZiB0cmFmZmljIGluZm9ybWF0aW9uIGluY2x1ZGUgcmVhbC10aW1lIHJvYWQgdHJhZmZpYyBpbmZvcm1hdGlvbiwgcHVibGljIHRyYW5zcG9ydCBvcGVyYXRpbmcgaW5mb3JtYXRpb24sIHNlcnZpY2UgaW5mb3JtYXRpb24gZm9yIHBlZGVzdHJpYW5zJyByb2FkIG5ldHdvcmsgYW5kIHNlcnZpY2UgaW5mb3JtYXRpb24gZm9yIHRyYW5zZmVyIG5vZGUgc3VjaCBhcyBpbnRlZ3JhdGVkIHRyYW5zcG9ydGF0aW9uIGh1YiwgYnVzIHN0YXRpb25zLCBjYXIgcGFya2luZyBsb3QsIGFuIGluZG9vciB0cmFuc2ZlciBhcmVhLCBldGMuIC0gICAgICBNdWx0aS1tb2RhbCBuYXZpZ2F0aW9uIHNlcnZpY2UuIEluY2x1ZGVzIHN0YXRpYyBhbmQgZHluYW1pYyBtdWx0aS1tb2RhbCByb3V0aW5nIGFuZCByZS1yb3V0aW5nIHNlcnZpY2UsIGFzIHdlbGwgYXMgcmVhbC10aW1lIGd1aWRhbmNlIHNlcnZpY2Ugd2l0aCB2b2ljZS9pbWFnZS90ZXh0L21hcCBkcmF3aW5ncy4gLSAgICAgIENvbW11bml0aWVzIGFjdGl2aXRpZXMuIEZvciBleGFtcGxlLCBhIHRlYW0gdHJhdmVsIHdoZW4gYSBncm91cCBvZiB2ZWhpY2xlcyAob3IgYmljeWNsZXMpIHRyYWNrIHRoZSBsZWFkIHZlaGljbGUgb24gdGhlIHdheSB0byB0aGUgc2FtZSBkZXN0aW5hdGlvbi4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvNzIvNTcyMzYiLCJ1dWlkIjoiOGMzYzAwNzAtNGQ2Ni00MWU0LWEzYjEtNWY3YWVmNWRjNTQ2IiwidGl0bGUiOiJJU08gMTMxMDUtMToyMDE0IEJ1aWxkaW5nIGNvbnN0cnVjdGlvbiBtYWNoaW5lcnkgYW5kIGVxdWlwbWVudCDigJQgTWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcg4oCUIFBhcnQgMTogVGVybXMgYW5kIGNvbW1lcmNpYWwgc3BlY2lmaWNhdGlvbnMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxMDUtMToyMDE0IGRlZmluZXMgdGVybXMgYW5kIGNvbW1lcmNpYWwgc3BlY2lmaWNhdGlvbnMgZm9yIG1hY2hpbmVzIHVzZWQgZm9yIGNvbmNyZXRlIHN1cmZhY2UgZmxvYXRpbmcgYW5kIGZpbmlzaGluZyAoYWxzbyBrbm93biBhcyBwb3dlciB0cm93ZWxzKS4gVGhpcyBpbmNsdWRlcyBwZWRlc3RyaWFuLWNvbnRyb2xsZWQgZXF1aXBtZW50IGFuZCByaWRlLW9uIGVxdWlwbWVudC4gSXQgZG9lcyBub3QgYWRkcmVzcyBzdHJpa2Utb2ZmIHR5cGUgbWFjaGluZXMsIGNvbW1vbmx5IGtub3duIGFzIHNjcmVlZHMuICIsIm9iamVjdElEIjoiNTcyMzZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MDUtMToyMDE0IEJ1aWxkaW5nIGNvbnN0cnVjdGlvbiBtYWNoaW5lcnkgYW5kIGVxdWlwbWVudCDigJQgTWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcg4oCUIFBhcnQgMTogVGVybXMgYW5kIGNvbW1lcmNpYWwgc3BlY2lmaWNhdGlvbnMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA1LTE6MjAxNCBkZWZpbmVzIHRlcm1zIGFuZCBjb21tZXJjaWFsIHNwZWNpZmljYXRpb25zIGZvciBtYWNoaW5lcyB1c2VkIGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcgKGFsc28ga25vd24gYXMgcG93ZXIgdHJvd2VscykuIFRoaXMgaW5jbHVkZXMgcGVkZXN0cmlhbi1jb250cm9sbGVkIGVxdWlwbWVudCBhbmQgcmlkZS1vbiBlcXVpcG1lbnQuIEl0IGRvZXMgbm90IGFkZHJlc3Mgc3RyaWtlLW9mZiB0eXBlIG1hY2hpbmVzLCBjb21tb25seSBrbm93biBhcyBzY3JlZWRzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQ3OCIsInV1aWQiOiJkYmQ0ZWVjYy02MWY4LTQyYjAtYjY5Ny02YWUxYzkzYTkyMDkiLCJ0aXRsZSI6IklTTyAxMzE5NDoyMDExIEJveCBwYWxsZXRzIOKAlCBQcmluY2lwYWwgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IG1ldGhvZHMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxOTQ6MjAxMSBzcGVjaWZpZXMgdGhlIGRlZmluaXRpb25zLCBwcmluY2lwYWwgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IG1ldGhvZHMgZm9yIGJveCBwYWxsZXRzIG9mIGFsbCBtYXRlcmlhbHMuIEl0IGFwcGxpZXMgdG8gYm94IHBhbGxldHMsIGluY2x1ZGluZyBwb3N0IHBhbGxldHMgYW5kIGNhZ2UgcGFsbGV0cywgYnV0IGlzIG5vdCBpbnRlbmRlZCB0byBhcHBseSB0byB0YW5rIGFuZCBzaWxvIHBhbGxldHMgYXMgZGVmaW5lZCBpbiBJU08gNDQ1LiBJdCBhbHNvIGFwcGxpZXMgdG8gYm94IHBhbGxldHMgd2hpY2ggY2FuIGJlIHN0YWNrZWQgYW5kIGhhbmRsZWQgYnkgZm9ya2xpZnQgdHJ1Y2tzIG9yIHBhbGxldCB0cnVja3MsIGJ1dCBleGNsdWRlcyBvdGhlciBsaWZ0aW5nIGRldmljZXMuIElTTyAxMzE5NDoyMDExIGFkZHJlc3NlcyB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIGJveCBwYWxsZXQgb25seSwgYW5kIG5vdCBpdHMgY29udGVudHMuICIsIm9iamVjdElEIjoiNTM0NzhfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+OTQ6MjAxMSBCb3ggcGFsbGV0cyDigJQgUHJpbmNpcGFsIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBtZXRob2RzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT45NDoyMDExIHNwZWNpZmllcyB0aGUgZGVmaW5pdGlvbnMsIHByaW5jaXBhbCByZXF1aXJlbWVudHMgYW5kIHRlc3QgbWV0aG9kcyBmb3IgYm94IHBhbGxldHMgb2YgYWxsIG1hdGVyaWFscy4gSXQgYXBwbGllcyB0byBib3ggcGFsbGV0cywgaW5jbHVkaW5nIHBvc3QgcGFsbGV0cyBhbmQgY2FnZSBwYWxsZXRzLCBidXQgaXMgbm90IGludGVuZGVkIHRvIGFwcGx5IHRvIHRhbmsgYW5kIHNpbG8gcGFsbGV0cyBhcyBkZWZpbmVkIGluIDxlbT5JU088L2VtPiA0NDUuIEl0IGFsc28gYXBwbGllcyB0byBib3ggcGFsbGV0cyB3aGljaCBjYW4gYmUgc3RhY2tlZCBhbmQgaGFuZGxlZCBieSBmb3JrbGlmdCB0cnVja3Mgb3IgcGFsbGV0IHRydWNrcywgYnV0IGV4Y2x1ZGVzIG90aGVyIGxpZnRpbmcgZGV2aWNlcy4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjk0OjIwMTEgYWRkcmVzc2VzIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgYm94IHBhbGxldCBvbmx5LCBhbmQgbm90IGl0cyBjb250ZW50cy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzMvNTMzODkiLCJ1dWlkIjoiY2VkYjdkMjktYmY5ZC00MjhkLWE0NWYtOTViYWQ2YTkxYmZiIiwidGl0bGUiOiJJU08gMTMxNDU6MjAxMiBSdWJiZXIg4oCUIERldGVybWluYXRpb24gb2YgdmlzY29zaXR5IGFuZCBzdHJlc3MgcmVsYXhhdGlvbiB1c2luZyBhIHJvdG9ybGVzcyBzZWFsZWQgc2hlYXIgcmhlb21ldGVyIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMiwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTQ1OjIwMTIgZGVzY3JpYmVzIGEgbWV0aG9kIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiB0aGUgdmlzY29zaXR5IGFuZCBzdHJlc3MgcmVsYXhhdGlvbiBvZiByYXcgb3IgY29tcG91bmRlZCBydWJiZXIgdW5kZXIgc3BlY2lmaWVkIGNvbmRpdGlvbnMuIFRoZSB2aXNjb3NpdHkgZGV0ZXJtaW5hdGlvbiBjb25zaXN0cyBvZiBhIGNvbnN0YW50IHN0cmFpbiwgdGVtcGVyYXR1cmUgYW5kIGZyZXF1ZW5jeSB0ZXN0IGluIHdoaWNoIHRoZSBlbGFzdGljIGFuZCB0aGUgbG9zcyBjb21wb25lbnRzIG9mIHRoZSBjb21wbGV4IHNoZWFyIG1vZHVsdXMgY2FuIGJlIGRldGVybWluZWQuIFRoZSBkZXRlcm1pbmF0aW9uIG9mIHN0cmVzcyByZWxheGF0aW9uIGNvbnNpc3RzIG9mIGEgY29uc3RhbnQgc3RhdGljIHN0cmFpbiBhbmQgdGVtcGVyYXR1cmUgdGVzdCBpbiB3aGljaCB0aGUgdG9ycXVlIGRlY3JlYXNlIGNhbiBiZSBkZXRlcm1pbmVkLiAiLCJvYmplY3RJRCI6IjUzMzg5XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQ1OjIwMTIgUnViYmVyIOKAlCBEZXRlcm1pbmF0aW9uIG9mIHZpc2Nvc2l0eSBhbmQgc3RyZXNzIHJlbGF4YXRpb24gdXNpbmcgYSByb3Rvcmxlc3Mgc2VhbGVkIHNoZWFyIHJoZW9tZXRlciIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NDU6MjAxMiBkZXNjcmliZXMgYSBtZXRob2QgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHRoZSB2aXNjb3NpdHkgYW5kIHN0cmVzcyByZWxheGF0aW9uIG9mIHJhdyBvciBjb21wb3VuZGVkIHJ1YmJlciB1bmRlciBzcGVjaWZpZWQgY29uZGl0aW9ucy4gVGhlIHZpc2Nvc2l0eSBkZXRlcm1pbmF0aW9uIGNvbnNpc3RzIG9mIGEgY29uc3RhbnQgc3RyYWluLCB0ZW1wZXJhdHVyZSBhbmQgZnJlcXVlbmN5IHRlc3QgaW4gd2hpY2ggdGhlIGVsYXN0aWMgYW5kIHRoZSBsb3NzIGNvbXBvbmVudHMgb2YgdGhlIGNvbXBsZXggc2hlYXIgbW9kdWx1cyBjYW4gYmUgZGV0ZXJtaW5lZC4gVGhlIGRldGVybWluYXRpb24gb2Ygc3RyZXNzIHJlbGF4YXRpb24gY29uc2lzdHMgb2YgYSBjb25zdGFudCBzdGF0aWMgc3RyYWluIGFuZCB0ZW1wZXJhdHVyZSB0ZXN0IGluIHdoaWNoIHRoZSB0b3JxdWUgZGVjcmVhc2UgY2FuIGJlIGRldGVybWluZWQuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzMzLzUzMzMxIiwidXVpZCI6Ijg1M2RkN2NkLWVlYjMtNDkyYS1hNjY5LTQ5NjY1OWIyMWRlOSIsInRpdGxlIjoiSVNPIDEzMTM4OjIwMTIgQWlyIHF1YWxpdHkg4oCUIFNhbXBsaW5nIGNvbnZlbnRpb25zIGZvciBhaXJib3JuZSBwYXJ0aWNsZSBkZXBvc2l0aW9uIGluIHRoZSBodW1hbiByZXNwaXJhdG9yeSBzeXN0ZW0iLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxMzg6MjAxMiBzcGVjaWZpZXMgc2FtcGxpbmcgY29udmVudGlvbnMgdG8gZGVmaW5lIGlkZWFsaXplZCBzYW1wbGVycyBmb3IgZXN0aW1hdGluZyB0aGUgZGVwb3NpdGlvbiBvZiBub24tdm9sYXRpbGUsIG5vbi1oeWdyb3Njb3BpYywgbm9uLWZpYnJvdXMgYWVyb3NvbHMgaW4gZml2ZSBzcGVjaWZpYyBsb2NpIG9mIHRoZSByZXNwaXJhdG9yeSB0cmFjdC4gVGhlIGZpdmUgbG9jaSBjb25zaXN0IG9mIHRoZSBhbnRlcmlvciBhbmQgcG9zdGVyaW9yIGFyZWFzIG9mIHRoZSBuYXNhbCBwYXNzYWdlcywgdGhlIGNpbGlhdGVkIGFuZCBub24tY2lsaWF0ZWQgcGFydHMgb2YgdGhlIHRyYWNoZW9icm9uY2hpYWwgYXJlYSwgYW5kIHRoZSBhbHZlb2xhciAoZ2FzIGV4Y2hhbmdlKSByZWdpb24uIFRoZSBjb252ZW50aW9ucyBhcmUgc2VwYXJhdGVkIGludG8gdGhyZWUgaW5kZXBlbmRlbnQgc2FtcGxpbmcgZWZmaWNpZW5jaWVzIGRlZmluZWQgaW4gdGVybXMgb2YgdGhlcm1vZHluYW1pYyBkaWFtZXRlciBjaGFyYWN0ZXJpemluZyB0aGUgZGlmZnVzaXZlIChCcm93bmlhbikgbW90aW9uIG9mIHN1Yi1taWNyb21ldHJlIHBhcnRpY2xlcyBhbmQgZm91ciBlZmZpY2llbmNpZXMgaW4gdGVybXMgb2YgYWVyb2R5bmFtaWMgZGlhbWV0ZXIg74C+MCwxIM68bSBjaGFyYWN0ZXJpemluZyBkZXBvc2l0aW9uIGJ5IGltcGFjdGlvbiwgaW50ZXJjZXB0aW9uIG9yIGdyYXZpdGF0aW9uYWwgc2V0dGxpbmcuIEVhY2ggY29udmVudGlvbmFsIGN1cnZlIGhhcyBiZWVuIGRldmVsb3BlZCBhcyBhbiBhdmVyYWdlIG9mIDEyIGRlcG9zaXRpb24gY3VydmVzIGNvcnJlc3BvbmRpbmcgdG8gMTIgYnJlYXRoaW5nIGNvbmRpdGlvbnMgcmFuZ2luZyBmcm9tIHNpdHRpbmcgdG8gaGVhdnkgZXhlcmNpc2UsIG1hbGUgdnMgZmVtYWxlLCBhbmQgYnJlYXRoaW5nIG1vZGUgKG1vdXRoIHZzIG5hc2FsIGJyZWF0aGluZykuICIsIm9iamVjdElEIjoiNTMzMzFfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Mzg6MjAxMiBBaXIgcXVhbGl0eSDigJQgU2FtcGxpbmcgY29udmVudGlvbnMgZm9yIGFpcmJvcm5lIHBhcnRpY2xlIGRlcG9zaXRpb24gaW4gdGhlIGh1bWFuIHJlc3BpcmF0b3J5IHN5c3RlbSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Mzg6MjAxMiBzcGVjaWZpZXMgc2FtcGxpbmcgY29udmVudGlvbnMgdG8gZGVmaW5lIGlkZWFsaXplZCBzYW1wbGVycyBmb3IgZXN0aW1hdGluZyB0aGUgZGVwb3NpdGlvbiBvZiBub24tdm9sYXRpbGUsIG5vbi1oeWdyb3Njb3BpYywgbm9uLWZpYnJvdXMgYWVyb3NvbHMgaW4gZml2ZSBzcGVjaWZpYyBsb2NpIG9mIHRoZSByZXNwaXJhdG9yeSB0cmFjdC4gVGhlIGZpdmUgbG9jaSBjb25zaXN0IG9mIHRoZSBhbnRlcmlvciBhbmQgcG9zdGVyaW9yIGFyZWFzIG9mIHRoZSBuYXNhbCBwYXNzYWdlcywgdGhlIGNpbGlhdGVkIGFuZCBub24tY2lsaWF0ZWQgcGFydHMgb2YgdGhlIHRyYWNoZW9icm9uY2hpYWwgYXJlYSwgYW5kIHRoZSBhbHZlb2xhciAoZ2FzIGV4Y2hhbmdlKSByZWdpb24uIFRoZSBjb252ZW50aW9ucyBhcmUgc2VwYXJhdGVkIGludG8gdGhyZWUgaW5kZXBlbmRlbnQgc2FtcGxpbmcgZWZmaWNpZW5jaWVzIGRlZmluZWQgaW4gdGVybXMgb2YgdGhlcm1vZHluYW1pYyBkaWFtZXRlciBjaGFyYWN0ZXJpemluZyB0aGUgZGlmZnVzaXZlIChCcm93bmlhbikgbW90aW9uIG9mIHN1Yi1taWNyb21ldHJlIHBhcnRpY2xlcyBhbmQgZm91ciBlZmZpY2llbmNpZXMgaW4gdGVybXMgb2YgYWVyb2R5bmFtaWMgZGlhbWV0ZXIg74C+MCwxIM68bSBjaGFyYWN0ZXJpemluZyBkZXBvc2l0aW9uIGJ5IGltcGFjdGlvbiwgaW50ZXJjZXB0aW9uIG9yIGdyYXZpdGF0aW9uYWwgc2V0dGxpbmcuIEVhY2ggY29udmVudGlvbmFsIGN1cnZlIGhhcyBiZWVuIGRldmVsb3BlZCBhcyBhbiBhdmVyYWdlIG9mIDEyIGRlcG9zaXRpb24gY3VydmVzIGNvcnJlc3BvbmRpbmcgdG8gMTIgYnJlYXRoaW5nIGNvbmRpdGlvbnMgcmFuZ2luZyBmcm9tIHNpdHRpbmcgdG8gaGVhdnkgZXhlcmNpc2UsIG1hbGUgdnMgZmVtYWxlLCBhbmQgYnJlYXRoaW5nIG1vZGUgKG1vdXRoIHZzIG5hc2FsIGJyZWF0aGluZykuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzMwLzUzMDUxIiwidXVpZCI6IjNhMWM4ZmNmLTQ4OWMtNDFiNi1iNWM4LTMyY2ZkYWZmNjA2NCIsInRpdGxlIjoiSVNPIDEzMTMwOjIwMTEgTGFib3JhdG9yeSBnbGFzc3dhcmUg4oCUIERlc2ljY2F0b3JzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMiwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTMwOjIwMTEgc3BlY2lmaWVzIHJlcXVpcmVtZW50cyBhbmQgdGVzdHMgZm9yIGRlc2ljY2F0b3JzIGFuZCB2YWN1dW0gZGVzaWNjYXRvcnMgaW50ZW5kZWQgZm9yIGdlbmVyYWwgbGFib3JhdG9yeSBwdXJwb3NlcyBzdWNoIGFzIGRyeWluZyBvZiBzdWJzdGFuY2VzIG9yIG1hdGVyaWFsLiAiLCJvYmplY3RJRCI6IjUzMDUxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjMwOjIwMTEgTGFib3JhdG9yeSBnbGFzc3dhcmUg4oCUIERlc2ljY2F0b3JzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4zMDoyMDExIHNwZWNpZmllcyByZXF1aXJlbWVudHMgYW5kIHRlc3RzIGZvciBkZXNpY2NhdG9ycyBhbmQgdmFjdXVtIGRlc2ljY2F0b3JzIGludGVuZGVkIGZvciBnZW5lcmFsIGxhYm9yYXRvcnkgcHVycG9zZXMgc3VjaCBhcyBkcnlpbmcgb2Ygc3Vic3RhbmNlcyBvciBtYXRlcmlhbC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzAvNTMwMDYiLCJ1dWlkIjoiZTMxZGU3ZjMtMjY4Ny00YjViLTg2YmItNTA3NmQ3M2YwN2VmIiwidGl0bGUiOiJJU08gMTMxMjM6MjAxMSBNZXRhbGxpYyBhbmQgb3RoZXIgaW5vcmdhbmljIGNvYXRpbmdzIOKAlCBUZXN0IG1ldGhvZCBvZiBjeWNsaWMgaGVhdGluZyBmb3IgdGhlcm1hbC1iYXJyaWVyIGNvYXRpbmdzIHVuZGVyIHRlbXBlcmF0dXJlIGdyYWRpZW50Iiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMiwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTIzOjIwMTEgYXBwbGllcyB0byB0aGUgdGVzdCBtZXRob2Qgb2YgY3ljbGljIGhlYXRpbmcgdG8gZXZhbHVhdGUgdGhlIHRoZXJtYWwtYmFycmllciBwZXJmb3JtYW5jZSBhbmQgY3ljbGljIGhlYXQgcmVzaXN0YW5jZSBvZiB0aGUgdGhlcm1hbC1iYXJyaWVyIGNvYXRpbmdzIHByb3ZpZGVkIGZvciBoaWdoLXRlbXBlcmF0dXJlIGNvbXBvbmVudHMsIHN1Y2ggYXMgYnVybmVycywgcm90b3IgYW5kIHN0YXRvciBibGFkZXMsIGV0Yy4gb2YgcG93ZXItZ2VuZXJhdGlvbiBnYXMgdHVyYmluZXMgdXNlZCBpbiB0aGVybWFsIHBvd2VyIHBsYW50cywgYWlyY3JhZnQgZW5naW5lcyBhbmQgcm9ja2V0IGVuZ2luZXMuICIsIm9iamVjdElEIjoiNTMwMDZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjM6MjAxMSBNZXRhbGxpYyBhbmQgb3RoZXIgaW5vcmdhbmljIGNvYXRpbmdzIOKAlCBUZXN0IG1ldGhvZCBvZiBjeWNsaWMgaGVhdGluZyBmb3IgdGhlcm1hbC1iYXJyaWVyIGNvYXRpbmdzIHVuZGVyIHRlbXBlcmF0dXJlIGdyYWRpZW50IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yMzoyMDExIGFwcGxpZXMgdG8gdGhlIHRlc3QgbWV0aG9kIG9mIGN5Y2xpYyBoZWF0aW5nIHRvIGV2YWx1YXRlIHRoZSB0aGVybWFsLWJhcnJpZXIgcGVyZm9ybWFuY2UgYW5kIGN5Y2xpYyBoZWF0IHJlc2lzdGFuY2Ugb2YgdGhlIHRoZXJtYWwtYmFycmllciBjb2F0aW5ncyBwcm92aWRlZCBmb3IgaGlnaC10ZW1wZXJhdHVyZSBjb21wb25lbnRzLCBzdWNoIGFzIGJ1cm5lcnMsIHJvdG9yIGFuZCBzdGF0b3IgYmxhZGVzLCBldGMuIG9mIHBvd2VyLWdlbmVyYXRpb24gZ2FzIHR1cmJpbmVzIHVzZWQgaW4gdGhlcm1hbCBwb3dlciBwbGFudHMsIGFpcmNyYWZ0IGVuZ2luZXMgYW5kIHJvY2tldCBlbmdpbmVzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8yOC81MjgyMSIsInV1aWQiOiJlMWM3ZjQxNC1kOTY5LTQyNjYtYmNmYy1iMzg3NDFjZjhlOTEiLCJ0aXRsZSI6IklTTyAxMzEwMjoyMDEyIEdlb21ldHJpY2FsIHByb2R1Y3Qgc3BlY2lmaWNhdGlvbnMgKEdQUykg4oCUIERpbWVuc2lvbmFsIG1lYXN1cmluZyBlcXVpcG1lbnQ6IEVsZWN0cm9uaWMgZGlnaXRhbC1pbmRpY2F0b3IgZ2F1Z2Ug4oCUIERlc2lnbiBhbmQgbWV0cm9sb2dpY2FsIGNoYXJhY3RlcmlzdGljcyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEwMjoyMDEyIHNwZWNpZmllcyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVzaWduIGFuZCBtZXRyb2xvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIGVsZWN0cm9uaWMgZGlnaXRhbC1pbmRpY2F0b3IgZ2F1Z2VzLiAiLCJvYmplY3RJRCI6IjUyODIxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjAyOjIwMTIgR2VvbWV0cmljYWwgcHJvZHVjdCBzcGVjaWZpY2F0aW9ucyAoR1BTKSDigJQgRGltZW5zaW9uYWwgbWVhc3VyaW5nIGVxdWlwbWVudDogRWxlY3Ryb25pYyBkaWdpdGFsLWluZGljYXRvciBnYXVnZSDigJQgRGVzaWduIGFuZCBtZXRyb2xvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4wMjoyMDEyIHNwZWNpZmllcyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVzaWduIGFuZCBtZXRyb2xvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIGVsZWN0cm9uaWMgZGlnaXRhbC1pbmRpY2F0b3IgZ2F1Z2VzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy85OC83OTgyNyIsInV1aWQiOiI5OTM3MWM4MS0xM2U4LTQ0OTctOTI1MC02ODQ2MDA3ZWFjNmQiLCJ0aXRsZSI6IklTTyAxMzE3OS0xOjIwMjEgSW1wbGFudHMgZm9yIHN1cmdlcnkg4oCUIENvYXRpbmdzIG9uIG1ldGFsbGljIHN1cmdpY2FsIGltcGxhbnRzIOKAlCBQYXJ0IDE6IFBsYXNtYS1zcHJheWVkIGNvYXRpbmdzIGRlcml2ZWQgZnJvbSB0aXRhbml1bSBvciB0aXRhbml1bS02IGFsdW1pbnVtLTQgdmFuYWRpdW0gYWxsb3kgcG93ZGVycyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGdlbmVyYWwgcmVxdWlyZW1lbnRzIGZvciBwbGFzbWEtc3ByYXllZCB0aXRhbml1bSBjb2F0aW5ncyBvbiBtZXRhbGxpYyBzdXJnaWNhbCBpbXBsYW50cy4gVGhpcyBkb2N1bWVudCBhcHBsaWVzIHRvIGF0bW9zcGhlcmljIHBsYXNtYSBzcHJheWluZyBhbmQgdmFjdXVtIHBsYXNtYSBzcHJheWluZy4gVGhpcyBkb2N1bWVudCBkb2VzIG5vdCBhcHBseSB0byBjb2F0aW5ncyBtYWRlIG9mIG90aGVyIG1hdGVyaWFscyB0aGFuIHRpdGFuaXVtIG9yIHRpdGFuaXVtLTYgYWx1bWludW0tNCB2YW5hZGl1bSBhbGxveSBvciB0byBjb2F0aW5ncyByZWFsaXplZCBieSBhbm90aGVyIHRlY2hub2xvZ3kgdGhhbiBwbGFzbWEgc3ByYXlpbmcuIE5PVEXCoMKgwqDCoMKgwqAgQSBxdWFsaXR5IG1hbmFnZW1lbnQgc3lzdGVtIGNhbiBiZSB1c2VmdWwsIGUuZy4gYXMgZGVzY3JpYmVkIGluIElTT8KgMTM0ODUuIFJlcXVpcmVtZW50cyBmb3IgdGhlIGNvbXBldGVuY2Ugb2YgdGVzdGluZyBsYWJvcmF0b3JpZXMgY2FuIGJlIGZvdW5kIGluIElTTy9JRUPCoDE3MDI1LiAiLCJvYmplY3RJRCI6Ijc5ODI3XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjc5LTE6MjAyMSBJbXBsYW50cyBmb3Igc3VyZ2VyeSDigJQgQ29hdGluZ3Mgb24gbWV0YWxsaWMgc3VyZ2ljYWwgaW1wbGFudHMg4oCUIFBhcnQgMTogUGxhc21hLXNwcmF5ZWQgY29hdGluZ3MgZGVyaXZlZCBmcm9tIHRpdGFuaXVtIG9yIHRpdGFuaXVtLTYgYWx1bWludW0tNCB2YW5hZGl1bSBhbGxveSBwb3dkZXJzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGdlbmVyYWwgcmVxdWlyZW1lbnRzIGZvciBwbGFzbWEtc3ByYXllZCB0aXRhbml1bSBjb2F0aW5ncyBvbiBtZXRhbGxpYyBzdXJnaWNhbCBpbXBsYW50cy4gVGhpcyBkb2N1bWVudCBhcHBsaWVzIHRvIGF0bW9zcGhlcmljIHBsYXNtYSBzcHJheWluZyBhbmQgdmFjdXVtIHBsYXNtYSBzcHJheWluZy4gVGhpcyBkb2N1bWVudCBkb2VzIG5vdCBhcHBseSB0byBjb2F0aW5ncyBtYWRlIG9mIG90aGVyIG1hdGVyaWFscyB0aGFuIHRpdGFuaXVtIG9yIHRpdGFuaXVtLTYgYWx1bWludW0tNCB2YW5hZGl1bSBhbGxveSBvciB0byBjb2F0aW5ncyByZWFsaXplZCBieSBhbm90aGVyIHRlY2hub2xvZ3kgdGhhbiBwbGFzbWEgc3ByYXlpbmcuIE5PVEXCoMKgwqDCoMKgwqAgQSBxdWFsaXR5IG1hbmFnZW1lbnQgc3lzdGVtIGNhbiBiZSB1c2VmdWwsIGUuZy4gYXMgZGVzY3JpYmVkIGluIDxlbT5JU088L2VtPsKgMTM0ODUuIFJlcXVpcmVtZW50cyBmb3IgdGhlIGNvbXBldGVuY2Ugb2YgdGVzdGluZyBsYWJvcmF0b3JpZXMgY2FuIGJlIGZvdW5kIGluIDxlbT5JU088L2VtPi9JRUPCoDE3MDI1LiAiLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy84OC83ODg0NSIsInV1aWQiOiI1MTBhN2I1ZS1jMTNlLTRkZTMtYjljYS0xNmQ5NDY2NThhZWYiLCJ0aXRsZSI6IklTTyAxMzE2MzoyMDIxIFdhdGVyIHF1YWxpdHkg4oCUIExlYWQtMjEwIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGEgbWV0aG9kIGZvciB0aGUgbWVhc3VyZW1lbnQgb2YgMjEwIFBiIGluIGFsbCB0eXBlcyBvZiB3YXRlcnMgYnkgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgKExTQykuIFRoZSBtZXRob2QgaXMgYXBwbGljYWJsZSB0byB0ZXN0IHNhbXBsZXMgb2Ygc3VwcGx5L2RyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgYXMgd2VsbCBhcyBjb29saW5nIHdhdGVyLCBpbmR1c3RyaWFsIHdhdGVyLCBkb21lc3RpYywgYW5kIGluZHVzdHJpYWwgd2FzdGV3YXRlciBhZnRlciBwcm9wZXIgc2FtcGxpbmcgYW5kIGhhbmRsaW5nLCBhbmQgdGVzdCBzYW1wbGUgcHJlcGFyYXRpb24uIEZpbHRyYXRpb24gb2YgdGhlIHRlc3Qgc2FtcGxlIGlzIG5lY2Vzc2FyeS4gTGVhZOKAkTIxMCBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIHRoZSBlbnZpcm9ubWVudCBjYW4gdmFyeSBhbmQgdXN1YWxseSByYW5nZXMgZnJvbSAywqBtQnHCoGwgLTEgdG/CoDMwMMKgbUJxwqBsIC0xIFsyN11bMjhdIC4gVXNpbmcgY3VycmVudGx5IGF2YWlsYWJsZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGVycywgdGhlIGxpbWl0IG9mIGRldGVjdGlvbiBvZiB0aGlzIG1ldGhvZCBmb3LCoCAyMTAgUGIgaXMgZ2VuZXJhbGx5IG9mIHRoZSBvcmRlciBvZiAyMMKgbUJxwqBsIC0xIHRvIDUwwqBtQnHCoGwgLTEgLCB3aGljaCBpcyBsb3dlciB0aGFuIHRoZSBXSE8gY3JpdGVyaWEgZm9yIHNhZmUgY29uc3VtcHRpb24gb2YgZHJpbmtpbmcgd2F0ZXIgKDEwMMKgbUJxIGwg4oiSMSApLiBbNF1bNl0gVGhlc2UgdmFsdWVzIGNhbiBiZSBhY2hpZXZlZCB3aXRoIGEgY291bnRpbmcgdGltZSBiZXR3ZWVuIDE4MMKgbWluIGFuZCA3MjDCoG1pbiBmb3IgYSBzYW1wbGUgdm9sdW1lIGZyb20gMCw1wqBsIHRvIDEsNcKgbC4gSGlnaGVyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGNhbiBiZSBtZWFzdXJlZCBieSBlaXRoZXIgZGlsdXRpbmcgdGhlIHNhbXBsZSBvciB1c2luZyBzbWFsbGVyIHNhbXBsZSBhbGlxdW90cyBvciBib3RoLiBUaGUgbWV0aG9kIHByZXNlbnRlZCBpbiB0aGlzIGRvY3VtZW50IGlzIG5vdCBpbnRlbmRlZCBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgYW4gdWx0cmEtdHJhY2UgYW1vdW50IG9mIDIxMCBQYi4gVGhlIHJhbmdlIG9mIGFwcGxpY2F0aW9uIGRlcGVuZHMgb24gdGhlIGFtb3VudCBvZiBkaXNzb2x2ZWQgbWF0ZXJpYWwgaW4gdGhlIHdhdGVyIGFuZCBvbiB0aGUgcGVyZm9ybWFuY2UgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBtZWFzdXJlbWVudCBlcXVpcG1lbnQgKGJhY2tncm91bmQgY291bnQgcmF0ZSBhbmQgY291bnRpbmcgZWZmaWNpZW5jeSkuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQgaXMgYXBwbGljYWJsZSB0byBhbiBlbWVyZ2VuY3kgc2l0dWF0aW9uLiBUaGUgYW5hbHlzaXMgb2YgUGIgYWRzb3JiZWQgdG8gc3VzcGVuZGVkIG1hdHRlciBpcyBub3QgY292ZXJlZCBieSB0aGlzIG1ldGhvZC4gSXQgaXMgdGhlIHVzZXLigJlzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJvYmplY3RJRCI6Ijc4ODQ1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYzOjIwMjEgV2F0ZXIgcXVhbGl0eSDigJQgTGVhZC0yMTAg4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGEgbWV0aG9kIGZvciB0aGUgbWVhc3VyZW1lbnQgb2YgMjEwIFBiIGluIGFsbCB0eXBlcyBvZiB3YXRlcnMgYnkgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgKExTQykuIFRoZSBtZXRob2QgaXMgYXBwbGljYWJsZSB0byB0ZXN0IHNhbXBsZXMgb2Ygc3VwcGx5L2RyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgYXMgd2VsbCBhcyBjb29saW5nIHdhdGVyLCBpbmR1c3RyaWFsIHdhdGVyLCBkb21lc3RpYywgYW5kIGluZHVzdHJpYWwgd2FzdGV3YXRlciBhZnRlciBwcm9wZXIgc2FtcGxpbmcgYW5kIGhhbmRsaW5nLCBhbmQgdGVzdCBzYW1wbGUgcHJlcGFyYXRpb24uIEZpbHRyYXRpb24gb2YgdGhlIHRlc3Qgc2FtcGxlIGlzIG5lY2Vzc2FyeS4gTGVhZOKAkTIxMCBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIHRoZSBlbnZpcm9ubWVudCBjYW4gdmFyeSBhbmQgdXN1YWxseSByYW5nZXMgZnJvbSAywqBtQnHCoGwgLTEgdG/CoDMwMMKgbUJxwqBsIC0xIFsyN11bMjhdIC4gVXNpbmcgY3VycmVudGx5IGF2YWlsYWJsZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGVycywgdGhlIGxpbWl0IG9mIGRldGVjdGlvbiBvZiB0aGlzIG1ldGhvZCBmb3LCoCAyMTAgUGIgaXMgZ2VuZXJhbGx5IG9mIHRoZSBvcmRlciBvZiAyMMKgbUJxwqBsIC0xIHRvIDUwwqBtQnHCoGwgLTEgLCB3aGljaCBpcyBsb3dlciB0aGFuIHRoZSBXSE8gY3JpdGVyaWEgZm9yIHNhZmUgY29uc3VtcHRpb24gb2YgZHJpbmtpbmcgd2F0ZXIgKDEwMMKgbUJxIGwg4oiSMSApLiBbNF1bNl0gVGhlc2UgdmFsdWVzIGNhbiBiZSBhY2hpZXZlZCB3aXRoIGEgY291bnRpbmcgdGltZSBiZXR3ZWVuIDE4MMKgbWluIGFuZCA3MjDCoG1pbiBmb3IgYSBzYW1wbGUgdm9sdW1lIGZyb20gMCw1wqBsIHRvIDEsNcKgbC4gSGlnaGVyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGNhbiBiZSBtZWFzdXJlZCBieSBlaXRoZXIgZGlsdXRpbmcgdGhlIHNhbXBsZSBvciB1c2luZyBzbWFsbGVyIHNhbXBsZSBhbGlxdW90cyBvciBib3RoLiBUaGUgbWV0aG9kIHByZXNlbnRlZCBpbiB0aGlzIGRvY3VtZW50IGlzIG5vdCBpbnRlbmRlZCBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgYW4gdWx0cmEtdHJhY2UgYW1vdW50IG9mIDIxMCBQYi4gVGhlIHJhbmdlIG9mIGFwcGxpY2F0aW9uIGRlcGVuZHMgb24gdGhlIGFtb3VudCBvZiBkaXNzb2x2ZWQgbWF0ZXJpYWwgaW4gdGhlIHdhdGVyIGFuZCBvbiB0aGUgcGVyZm9ybWFuY2UgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBtZWFzdXJlbWVudCBlcXVpcG1lbnQgKGJhY2tncm91bmQgY291bnQgcmF0ZSBhbmQgY291bnRpbmcgZWZmaWNpZW5jeSkuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQgaXMgYXBwbGljYWJsZSB0byBhbiBlbWVyZ2VuY3kgc2l0dWF0aW9uLiBUaGUgYW5hbHlzaXMgb2YgUGIgYWRzb3JiZWQgdG8gc3VzcGVuZGVkIG1hdHRlciBpcyBub3QgY292ZXJlZCBieSB0aGlzIG1ldGhvZC4gSXQgaXMgdGhlIHVzZXLigJlzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJtYXRjaExldmVsIjoibm9uZSIsIm1hdGNoZWRXb3JkcyI6W119fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy84Mi83ODIwNSIsInV1aWQiOiJhZTNjOTBmZS01MjY1LTQ0NzQtOTkzYy0zZWUzYTI0N2RlMzEiLCJ0aXRsZSI6IklTTyAxMzE2MDoyMDIxIFdhdGVyIHF1YWxpdHkg4oCUIFN0cm9udGl1bSA5MCBhbmQgc3Ryb250aXVtIDg5IOKAlCBUZXN0IG1ldGhvZHMgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgb3IgcHJvcG9ydGlvbmFsIGNvdW50aW5nIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMSwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgY29uZGl0aW9ucyBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgOTAgU3IgYW5kIDg5IFNyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBlbnZpcm9ubWVudGFsIHdhdGVyIHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIChMU0MpIG9yIHByb3BvcnRpb25hbCBjb3VudGluZyAoUEMpLiBUaGUgbWV0aG9kIGlzIGFwcGxpY2FibGUgdG8gdGVzdCBzYW1wbGVzIG9mIGRyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgbWFyaW5lIHdhdGVyLCBhcyB3ZWxsIGFzIGNvb2xpbmcgd2F0ZXIsIGluZHVzdHJpYWwgd2F0ZXIsIGRvbWVzdGljLCBhbmQgaW5kdXN0cmlhbCB3YXN0ZXdhdGVyIGFmdGVyIHByb3BlciBzYW1wbGluZyBhbmQgaGFuZGxpbmcsIGFuZCB0ZXN0IHNhbXBsZSBwcmVwYXJhdGlvbi4gRmlsdHJhdGlvbiBvZiB0aGUgdGVzdCBzYW1wbGUgYW5kIGEgY2hlbWljYWwgc2VwYXJhdGlvbiBhcmUgcmVxdWlyZWQgdG8gc2VwYXJhdGUgYW5kIHB1cmlmeSBzdHJvbnRpdW0gZnJvbSBhIHRlc3QgcG9ydGlvbiBvZiB0aGUgc2FtcGxlLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IGRlcGVuZHMgb24gdGhlIHNhbXBsZSB2b2x1bWUsIHRoZSBpbnN0cnVtZW50IHVzZWQsIHRoZSBzYW1wbGUgY291bnQgdGltZSwgdGhlIGJhY2tncm91bmQgY291bnQgcmF0ZSwgdGhlIGRldGVjdGlvbiBlZmZpY2llbmN5IGFuZCB0aGUgY2hlbWljYWwgeWllbGQuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQsIHVzaW5nIGN1cnJlbnRseSBhdmFpbGFibGUgTFNDIGNvdW50ZXJzLCBoYXMgYSBkZXRlY3Rpb24gbGltaXQgb2YgYXBwcm94aW1hdGVseSAxMMKgbUJxIGwg4oiSMSBhbmQgMsKgbUJxIGwg4oiSMSBmb3IgODkgU3IgYW5kIDkwIFNyLCByZXNwZWN0aXZlbHksIHdoaWNoIGlzIGxvd2VyIHRoYW4gdGhlIFdITyBjcml0ZXJpYSBmb3Igc2FmZSBjb25zdW1wdGlvbiBvZiBkcmlua2luZyB3YXRlciAoMTAwwqBCccK3bCDiiJIxIGZvciA4OSBTciBhbmQgMTDCoEJxwrdsIOKIkjEgZm9yIDkwIFNyKSBbIDMgXSAuIFRoZXNlIHZhbHVlcyBjYW4gYmUgYWNoaWV2ZWQgd2l0aCBhIGNvdW50aW5nIHRpbWUgb2YgMcKgMDAwwqBtaW4gZm9yIGEgc2FtcGxlIHZvbHVtZSBvZiAywqBsLiBUaGUgbWV0aG9kcyBkZXNjcmliZWQgaW4gdGhpcyBkb2N1bWVudCBhcmUgYXBwbGljYWJsZSBpbiB0aGUgZXZlbnQgb2YgYW4gZW1lcmdlbmN5IHNpdHVhdGlvbi4gV2hlbiBmYWxsb3V0IG9jY3VycyBmb2xsb3dpbmcgYSBudWNsZWFyIGFjY2lkZW50LCB0aGUgY29udHJpYnV0aW9uIG9mIDg5IFNyIHRvIHRoZSB0b3RhbCBhbW91bnQgb2YgcmFkaW9hY3RpdmUgc3Ryb250aXVtIGlzIG5vdCBuZWdsaWdpYmxlLiBUaGlzIGRvY3VtZW50IHByb3ZpZGVzIHRlc3QgbWV0aG9kcyB0byBkZXRlcm1pbmUgdGhlIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gb2YgOTAgU3IgaW4gcHJlc2VuY2Ugb2YgODkgU3IuIFRoZSBhbmFseXNpcyBvZiA5MCBTciBhbmQgODkgU3IgYWRzb3JiZWQgdG8gc3VzcGVuZGVkIG1hdHRlciBpcyBub3QgY292ZXJlZCBieSB0aGlzIG1ldGhvZC4gSXQgaXMgdGhlIHVzZXLigJlzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBzZWxlY3RlZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJvYmplY3RJRCI6Ijc4MjA1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYwOjIwMjEgV2F0ZXIgcXVhbGl0eSDigJQgU3Ryb250aXVtIDkwIGFuZCBzdHJvbnRpdW0gODkg4oCUIFRlc3QgbWV0aG9kcyB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyBvciBwcm9wb3J0aW9uYWwgY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgY29uZGl0aW9ucyBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgOTAgU3IgYW5kIDg5IFNyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBlbnZpcm9ubWVudGFsIHdhdGVyIHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIChMU0MpIG9yIHByb3BvcnRpb25hbCBjb3VudGluZyAoUEMpLiBUaGUgbWV0aG9kIGlzIGFwcGxpY2FibGUgdG8gdGVzdCBzYW1wbGVzIG9mIGRyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgbWFyaW5lIHdhdGVyLCBhcyB3ZWxsIGFzIGNvb2xpbmcgd2F0ZXIsIGluZHVzdHJpYWwgd2F0ZXIsIGRvbWVzdGljLCBhbmQgaW5kdXN0cmlhbCB3YXN0ZXdhdGVyIGFmdGVyIHByb3BlciBzYW1wbGluZyBhbmQgaGFuZGxpbmcsIGFuZCB0ZXN0IHNhbXBsZSBwcmVwYXJhdGlvbi4gRmlsdHJhdGlvbiBvZiB0aGUgdGVzdCBzYW1wbGUgYW5kIGEgY2hlbWljYWwgc2VwYXJhdGlvbiBhcmUgcmVxdWlyZWQgdG8gc2VwYXJhdGUgYW5kIHB1cmlmeSBzdHJvbnRpdW0gZnJvbSBhIHRlc3QgcG9ydGlvbiBvZiB0aGUgc2FtcGxlLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IGRlcGVuZHMgb24gdGhlIHNhbXBsZSB2b2x1bWUsIHRoZSBpbnN0cnVtZW50IHVzZWQsIHRoZSBzYW1wbGUgY291bnQgdGltZSwgdGhlIGJhY2tncm91bmQgY291bnQgcmF0ZSwgdGhlIGRldGVjdGlvbiBlZmZpY2llbmN5IGFuZCB0aGUgY2hlbWljYWwgeWllbGQuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQsIHVzaW5nIGN1cnJlbnRseSBhdmFpbGFibGUgTFNDIGNvdW50ZXJzLCBoYXMgYSBkZXRlY3Rpb24gbGltaXQgb2YgYXBwcm94aW1hdGVseSAxMMKgbUJxIGwg4oiSMSBhbmQgMsKgbUJxIGwg4oiSMSBmb3IgODkgU3IgYW5kIDkwIFNyLCByZXNwZWN0aXZlbHksIHdoaWNoIGlzIGxvd2VyIHRoYW4gdGhlIFdITyBjcml0ZXJpYSBmb3Igc2FmZSBjb25zdW1wdGlvbiBvZiBkcmlua2luZyB3YXRlciAoMTAwwqBCccK3bCDiiJIxIGZvciA4OSBTciBhbmQgMTDCoEJxwrdsIOKIkjEgZm9yIDkwIFNyKSBbIDMgXSAuIFRoZXNlIHZhbHVlcyBjYW4gYmUgYWNoaWV2ZWQgd2l0aCBhIGNvdW50aW5nIHRpbWUgb2YgMcKgMDAwwqBtaW4gZm9yIGEgc2FtcGxlIHZvbHVtZSBvZiAywqBsLiBUaGUgbWV0aG9kcyBkZXNjcmliZWQgaW4gdGhpcyBkb2N1bWVudCBhcmUgYXBwbGljYWJsZSBpbiB0aGUgZXZlbnQgb2YgYW4gZW1lcmdlbmN5IHNpdHVhdGlvbi4gV2hlbiBmYWxsb3V0IG9jY3VycyBmb2xsb3dpbmcgYSBudWNsZWFyIGFjY2lkZW50LCB0aGUgY29udHJpYnV0aW9uIG9mIDg5IFNyIHRvIHRoZSB0b3RhbCBhbW91bnQgb2YgcmFkaW9hY3RpdmUgc3Ryb250aXVtIGlzIG5vdCBuZWdsaWdpYmxlLiBUaGlzIGRvY3VtZW50IHByb3ZpZGVzIHRlc3QgbWV0aG9kcyB0byBkZXRlcm1pbmUgdGhlIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gb2YgOTAgU3IgaW4gcHJlc2VuY2Ugb2YgODkgU3IuIFRoZSBhbmFseXNpcyBvZiA5MCBTciBhbmQgODkgU3IgYWRzb3JiZWQgdG8gc3VzcGVuZGVkIG1hdHRlciBpcyBub3QgY292ZXJlZCBieSB0aGlzIG1ldGhvZC4gSXQgaXMgdGhlIHVzZXLigJlzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBzZWxlY3RlZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJtYXRjaExldmVsIjoibm9uZSIsIm1hdGNoZWRXb3JkcyI6W119fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy81OS83NTk2MiIsInV1aWQiOiIzMjZjNDhiOS01NTM2LTQ2YzMtOGZlYi00OTg5YzQyNjI1MjkiLCJ0aXRsZSI6IklTTyAxMzEzMToyMDIxIEhlYWx0aCBpbmZvcm1hdGljcyDigJQgVGVsZWhlYWx0aCBzZXJ2aWNlcyDigJQgUXVhbGl0eSBwbGFubmluZyBndWlkZWxpbmVzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMSwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBwcm92aWRlcyBwcm9jZXNzZXMgdGhhdCBjYW4gYmUgdXNlZCB0byBhbmFseXplIHRoZSByaXNrcyB0byB0aGUgcXVhbGl0eSBhbmQgc2FmZXR5IG9mIGhlYWx0aGNhcmUgYW5kIGNvbnRpbnVpdHkgb2YgY2FyZSB3aGVuIHRlbGVoZWFsdGggc2VydmljZXMgYXJlIHVzZWQgdG8gc3VwcG9ydCBoZWFsdGhjYXJlIGFjdGl2aXRpZXMuIFVzaW5nIHJpc2sgbWFuYWdlbWVudCBwcm9jZXNzZXMsIHF1YWxpdHkgb2JqZWN0aXZlcyBhbmQgcHJvY2VkdXJlcyBhcmUgZGVyaXZlZCB3aGljaCBwcm92aWRlIGd1aWRlbGluZXMgZm9yIHRoZSBvcGVyYXRpb25zIG9mIHRlbGVoZWFsdGggc2VydmljZXMuIFRoZXNlIGluY2x1ZGUgYnV0IGFyZSBub3QgbGltaXRlZCB0byB0aGUgZm9sbG93aW5nIGRvbWFpbnM6IOKAlMKgwqDCoCBtYW5hZ2VtZW50IG9mIHRlbGVoZWFsdGggcXVhbGl0eSBwcm9jZXNzZXMgYnkgdGhlIGhlYWx0aGNhcmUgb3JnYW5pemF0aW9uOyDigJTCoMKgwqAgc3RyYXRlZ2ljIGFuZCBvcGVyYXRpb25hbCBwcm9jZXNzIG1hbmFnZW1lbnQgcmVsYXRpbmcgdG8gcmVndWxhdGlvbnMsIGtub3dsZWRnZSBtYW5hZ2VtZW50IChiZXN0IHByYWN0aWNlKSBhbmQgZ3VpZGVsaW5lczsg4oCUwqDCoMKgIGhlYWx0aGNhcmUgcHJvY2Vzc2VzIHJlbGF0aW5nIHRvIHBlb3BsZSBzdWNoIGFzIGhlYWx0aGNhcmUgYWN0aXZpdGllcywgcGxhbm5pbmcsIGFuZCByZXNwb25zaWJpbGl0aWVzOyDigJTCoMKgwqAgbWFuYWdlbWVudCBvZiBmaW5hbmNpYWwgcmVzb3VyY2VzIHRvIHN1cHBvcnQgdGVsZWhlYWx0aCBzZXJ2aWNlczsg4oCUwqDCoMKgIG1hbmFnZW1lbnQgb2YgaW5mb3JtYXRpb24gbWFuYWdlbWVudCBhbmQgc2VjdXJpdHkgdXNlZCBpbiB0ZWxlaGVhbHRoIHNlcnZpY2VzOyDigJTCoMKgwqAgcHJvY2Vzc2VzIHJlbGF0ZWQgdG8gdGhlIHBsYW5uaW5nIGFuZCBwcm92aXNpb24gb2YgaHVtYW4gcmVzb3VyY2VzLCBpbmZyYXN0cnVjdHVyZSwgZmFjaWxpdGllcyBhbmQgdGVjaG5vbG9neSByZXNvdXJjZXMgZm9yIHVzZSBieSB0ZWxlaGVhbHRoIHNlcnZpY2VzLiBUaGlzIGRvY3VtZW50IHByb3ZpZGVzIGEgc2V0IG9mIGV4YW1wbGUgZ3VpZGVsaW5lcyBjb250YWluaW5nIHF1YWxpdHkgb2JqZWN0aXZlcyBhbmQgcHJvY2VkdXJlcyBmb3IgZWFjaCBkb21haW4uIE9yZ2FuaXphdGlvbnMgY2FuIGFwcGx5IHRoZSBxdWFsaXR5IGFuZCByaXNrIG1hbmFnZW1lbnQgcHJvY2Vzc2VzIGRlc2NyaWJlZCBpbiBDbGF1c2VzwqA1IGFuZCA2IHRvIGRldmVsb3AgcXVhbGl0eSBvYmplY3RpdmVzIGFuZCBwcm9jZWR1cmVzIGFwcHJvcHJpYXRlIHRvIHRoZSB0ZWxlaGVhbHRoIHNlcnZpY2VzIHRoZXkgcHJvdmlkZS4gVGhpcyBkb2N1bWVudCBkb2VzIG5vdCBwcm92aWRlIGd1aWRhbmNlIGZvciB0aGUgbWFudWZhY3R1cmUsIGFzc2VtYmx5LCBjb25maWd1cmF0aW9uLCBpbnRlcm9wZXJhYmlsaXR5IG9yIG1hbmFnZW1lbnQgb2YgZGV2aWNlcywgcHJvZHVjdHMgb3IgdGVjaG5pY2FsIHN5c3RlbXMuIEFubmV4wqBBIHByb3ZpZGVzIHByb2NlZHVyZXMgZm9yIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0ZWxlaGVhbHRoIHNlcnZpY2VzIGJ5IGEgbGFyZ2Ugb3JnYW5pemF0aW9uLiBBbm5leMKgQiBwcm92aWRlcyB1c2UgY2FzZXMgZm9yIHRoZSBhcHBsaWNhdGlvbiBvZiBxdWFsaXR5IHBsYW5uaW5nIGd1aWRlbGluZXMgaW4gZGlmZmVyZW50IHR5cGVzIG9mIHJlYWwtd29ybGQgdGVsZWhlYWx0aCBzZXJ2aWNlcy4gIiwib2JqZWN0SUQiOiI3NTk2Ml8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4zMToyMDIxIEhlYWx0aCBpbmZvcm1hdGljcyDigJQgVGVsZWhlYWx0aCBzZXJ2aWNlcyDigJQgUXVhbGl0eSBwbGFubmluZyBndWlkZWxpbmVzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgcHJvdmlkZXMgcHJvY2Vzc2VzIHRoYXQgY2FuIGJlIHVzZWQgdG8gYW5hbHl6ZSB0aGUgcmlza3MgdG8gdGhlIHF1YWxpdHkgYW5kIHNhZmV0eSBvZiBoZWFsdGhjYXJlIGFuZCBjb250aW51aXR5IG9mIGNhcmUgd2hlbiB0ZWxlaGVhbHRoIHNlcnZpY2VzIGFyZSB1c2VkIHRvIHN1cHBvcnQgaGVhbHRoY2FyZSBhY3Rpdml0aWVzLiBVc2luZyByaXNrIG1hbmFnZW1lbnQgcHJvY2Vzc2VzLCBxdWFsaXR5IG9iamVjdGl2ZXMgYW5kIHByb2NlZHVyZXMgYXJlIGRlcml2ZWQgd2hpY2ggcHJvdmlkZSBndWlkZWxpbmVzIGZvciB0aGUgb3BlcmF0aW9ucyBvZiB0ZWxlaGVhbHRoIHNlcnZpY2VzLiBUaGVzZSBpbmNsdWRlIGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8gdGhlIGZvbGxvd2luZyBkb21haW5zOiDigJTCoMKgwqAgbWFuYWdlbWVudCBvZiB0ZWxlaGVhbHRoIHF1YWxpdHkgcHJvY2Vzc2VzIGJ5IHRoZSBoZWFsdGhjYXJlIG9yZ2FuaXphdGlvbjsg4oCUwqDCoMKgIHN0cmF0ZWdpYyBhbmQgb3BlcmF0aW9uYWwgcHJvY2VzcyBtYW5hZ2VtZW50IHJlbGF0aW5nIHRvIHJlZ3VsYXRpb25zLCBrbm93bGVkZ2UgbWFuYWdlbWVudCAoYmVzdCBwcmFjdGljZSkgYW5kIGd1aWRlbGluZXM7IOKAlMKgwqDCoCBoZWFsdGhjYXJlIHByb2Nlc3NlcyByZWxhdGluZyB0byBwZW9wbGUgc3VjaCBhcyBoZWFsdGhjYXJlIGFjdGl2aXRpZXMsIHBsYW5uaW5nLCBhbmQgcmVzcG9uc2liaWxpdGllczsg4oCUwqDCoMKgIG1hbmFnZW1lbnQgb2YgZmluYW5jaWFsIHJlc291cmNlcyB0byBzdXBwb3J0IHRlbGVoZWFsdGggc2VydmljZXM7IOKAlMKgwqDCoCBtYW5hZ2VtZW50IG9mIGluZm9ybWF0aW9uIG1hbmFnZW1lbnQgYW5kIHNlY3VyaXR5IHVzZWQgaW4gdGVsZWhlYWx0aCBzZXJ2aWNlczsg4oCUwqDCoMKgIHByb2Nlc3NlcyByZWxhdGVkIHRvIHRoZSBwbGFubmluZyBhbmQgcHJvdmlzaW9uIG9mIGh1bWFuIHJlc291cmNlcywgaW5mcmFzdHJ1Y3R1cmUsIGZhY2lsaXRpZXMgYW5kIHRlY2hub2xvZ3kgcmVzb3VyY2VzIGZvciB1c2UgYnkgdGVsZWhlYWx0aCBzZXJ2aWNlcy4gVGhpcyBkb2N1bWVudCBwcm92aWRlcyBhIHNldCBvZiBleGFtcGxlIGd1aWRlbGluZXMgY29udGFpbmluZyBxdWFsaXR5IG9iamVjdGl2ZXMgYW5kIHByb2NlZHVyZXMgZm9yIGVhY2ggZG9tYWluLiBPcmdhbml6YXRpb25zIGNhbiBhcHBseSB0aGUgcXVhbGl0eSBhbmQgcmlzayBtYW5hZ2VtZW50IHByb2Nlc3NlcyBkZXNjcmliZWQgaW4gQ2xhdXNlc8KgNSBhbmQgNiB0byBkZXZlbG9wIHF1YWxpdHkgb2JqZWN0aXZlcyBhbmQgcHJvY2VkdXJlcyBhcHByb3ByaWF0ZSB0byB0aGUgdGVsZWhlYWx0aCBzZXJ2aWNlcyB0aGV5IHByb3ZpZGUuIFRoaXMgZG9jdW1lbnQgZG9lcyBub3QgcHJvdmlkZSBndWlkYW5jZSBmb3IgdGhlIG1hbnVmYWN0dXJlLCBhc3NlbWJseSwgY29uZmlndXJhdGlvbiwgaW50ZXJvcGVyYWJpbGl0eSBvciBtYW5hZ2VtZW50IG9mIGRldmljZXMsIHByb2R1Y3RzIG9yIHRlY2huaWNhbCBzeXN0ZW1zLiBBbm5leMKgQSBwcm92aWRlcyBwcm9jZWR1cmVzIGZvciB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGVsZWhlYWx0aCBzZXJ2aWNlcyBieSBhIGxhcmdlIG9yZ2FuaXphdGlvbi4gQW5uZXjCoEIgcHJvdmlkZXMgdXNlIGNhc2VzIGZvciB0aGUgYXBwbGljYXRpb24gb2YgcXVhbGl0eSBwbGFubmluZyBndWlkZWxpbmVzIGluIGRpZmZlcmVudCB0eXBlcyBvZiByZWFsLXdvcmxkIHRlbGVoZWFsdGggc2VydmljZXMuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA3LzU4Lzc1ODU3IiwidXVpZCI6IjkzNDQzYzA2LTlkMTAtNGJmNi1hNGQxLTZhZGYwNzQ4ZjZhMyIsInRpdGxlIjoiSVNPIDEzMTQyOjIwMjEgT3B0aWNzIGFuZCBwaG90b25pY3Mg4oCUIExhc2VycyBhbmQgbGFzZXItcmVsYXRlZCBlcXVpcG1lbnQg4oCUIENhdml0eSByaW5nLWRvd24gbWV0aG9kIGZvciBoaWdoLXJlZmxlY3RhbmNlIGFuZCBoaWdoLXRyYW5zbWl0dGFuY2UgbWVhc3VyZW1lbnRzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMSwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgbWVhc3VyZW1lbnQgcHJvY2VkdXJlcyBmb3IgdGhlIHByZWNpc2UgZGV0ZXJtaW5hdGlvbiBvZiB0aGUgaGlnaCByZWZsZWN0YW5jZSBvciBoaWdoIHRyYW5zbWl0dGFuY2UgKD45OcKgJSkgb2Ygb3B0aWNhbCBsYXNlciBjb21wb25lbnRzLiBUaGUgbWV0aG9kcyBnaXZlbiBpbiB0aGlzIGRvY3VtZW50IGFyZSBpbnRlbmRlZCB0byBiZSB1c2VkIGZvciB0aGUgdGVzdGluZyBhbmQgY2hhcmFjdGVyaXphdGlvbiBvZiBoaWdoIHJlZmxlY3RhbmNlIG9mIGJvdGggY29uY2F2ZSBhbmQgcGxhbmUgbWlycm9ycyBvciBoaWdoIHRyYW5zbWl0dGFuY2Ugb2YgcGxhbmUgd2luZG93cyB1c2VkIGluIGxhc2VyIHN5c3RlbXMgYW5kIGxhc2VyLWJhc2VkIGluc3RydW1lbnRzLiBUaGUgcmVmbGVjdGFuY2Ugb2YgY29udmV4IG1pcnJvcnMgb3IgdHJhbnNtaXR0YW5jZSBvZiBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBsZW5zZXMgY2FuIGFsc28gYmUgdGVzdGVkIGJ5IHRha2luZyBpbnRvIGNvbnNpZGVyYXRpb24gdGhlIHJhZGl1cyBvZiBjdXJ2YXR1cmUgb2YgdGhlIG1pcnJvciBzdXJmYWNlIG9yIHRoZSBmb2NhbCBsZW5ndGggb2YgdGhlIGxlbnMuIFRoaXMgZG9jdW1lbnQgaXMgY29tcGxlbWVudGFyeSB0byBJU0/CoDE1MzY4IHdoaWNoIHNwZWNpZmllcyB0aGUgbWVhc3VyZW1lbnQgcHJvY2VkdXJlcyBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgcmVmbGVjdGFuY2UgYW5kIHRyYW5zbWl0dGFuY2Ugb2Ygb3B0aWNhbCBjb21wb25lbnRzIHdpdGggc3BlY3Ryb3Bob3RvbWV0cnkuIElTT8KgMTUzNjggaXMgYXBwbGljYWJsZSB0byB0aGUgbWVhc3VyZW1lbnRzIG9mIHJlZmxlY3RhbmNlIGFuZCB0cmFuc21pdHRhbmNlIGluIHRoZSByYW5nZSBmcm9tIDDCoCUgdG8gMTAwwqAlIHdpdGggYSB0eXBpY2FsIGFjY3VyYWN5IG9mIMKxMCwzwqAlLCBhbmQgaXMgdGhlcmVmb3JlIG5vdCBhcHBsaWNhYmxlIHRvIHRoZSBwcmVjaXNlIG1lYXN1cmVtZW50cyBvZiByZWZsZWN0YW5jZSBhbmQgdHJhbnNtaXR0YW5jZSBoaWdoZXIgdGhhbiA5OSw5wqAlLiAiLCJvYmplY3RJRCI6Ijc1ODU3XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQyOjIwMjEgT3B0aWNzIGFuZCBwaG90b25pY3Mg4oCUIExhc2VycyBhbmQgbGFzZXItcmVsYXRlZCBlcXVpcG1lbnQg4oCUIENhdml0eSByaW5nLWRvd24gbWV0aG9kIGZvciBoaWdoLXJlZmxlY3RhbmNlIGFuZCBoaWdoLXRyYW5zbWl0dGFuY2UgbWVhc3VyZW1lbnRzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIG1lYXN1cmVtZW50IHByb2NlZHVyZXMgZm9yIHRoZSBwcmVjaXNlIGRldGVybWluYXRpb24gb2YgdGhlIGhpZ2ggcmVmbGVjdGFuY2Ugb3IgaGlnaCB0cmFuc21pdHRhbmNlICg+OTnCoCUpIG9mIG9wdGljYWwgbGFzZXIgY29tcG9uZW50cy4gVGhlIG1ldGhvZHMgZ2l2ZW4gaW4gdGhpcyBkb2N1bWVudCBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCBmb3IgdGhlIHRlc3RpbmcgYW5kIGNoYXJhY3Rlcml6YXRpb24gb2YgaGlnaCByZWZsZWN0YW5jZSBvZiBib3RoIGNvbmNhdmUgYW5kIHBsYW5lIG1pcnJvcnMgb3IgaGlnaCB0cmFuc21pdHRhbmNlIG9mIHBsYW5lIHdpbmRvd3MgdXNlZCBpbiBsYXNlciBzeXN0ZW1zIGFuZCBsYXNlci1iYXNlZCBpbnN0cnVtZW50cy4gVGhlIHJlZmxlY3RhbmNlIG9mIGNvbnZleCBtaXJyb3JzIG9yIHRyYW5zbWl0dGFuY2Ugb2YgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbGVuc2VzIGNhbiBhbHNvIGJlIHRlc3RlZCBieSB0YWtpbmcgaW50byBjb25zaWRlcmF0aW9uIHRoZSByYWRpdXMgb2YgY3VydmF0dXJlIG9mIHRoZSBtaXJyb3Igc3VyZmFjZSBvciB0aGUgZm9jYWwgbGVuZ3RoIG9mIHRoZSBsZW5zLiBUaGlzIGRvY3VtZW50IGlzIGNvbXBsZW1lbnRhcnkgdG8gPGVtPklTTzwvZW0+wqAxNTM2OCB3aGljaCBzcGVjaWZpZXMgdGhlIG1lYXN1cmVtZW50IHByb2NlZHVyZXMgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJlZmxlY3RhbmNlIGFuZCB0cmFuc21pdHRhbmNlIG9mIG9wdGljYWwgY29tcG9uZW50cyB3aXRoIHNwZWN0cm9waG90b21ldHJ5LiA8ZW0+SVNPPC9lbT7CoDE1MzY4IGlzIGFwcGxpY2FibGUgdG8gdGhlIG1lYXN1cmVtZW50cyBvZiByZWZsZWN0YW5jZSBhbmQgdHJhbnNtaXR0YW5jZSBpbiB0aGUgcmFuZ2UgZnJvbSAwwqAlIHRvIDEwMMKgJSB3aXRoIGEgdHlwaWNhbCBhY2N1cmFjeSBvZiDCsTAsM8KgJSwgYW5kIGlzIHRoZXJlZm9yZSBub3QgYXBwbGljYWJsZSB0byB0aGUgcHJlY2lzZSBtZWFzdXJlbWVudHMgb2YgcmVmbGVjdGFuY2UgYW5kIHRyYW5zbWl0dGFuY2UgaGlnaGVyIHRoYW4gOTksOcKgJS4gIiwibWF0Y2hMZXZlbCI6InBhcnRpYWwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDcvNTgvNzU4MjEiLCJ1dWlkIjoiMDc0ZDEzNzgtMmIzNS00NTI1LWFjN2EtNjdkZjA3NzMyODBhIiwidGl0bGUiOiJJU08gMTMxNjI6MjAyMSBXYXRlciBxdWFsaXR5IOKAlCBDYXJib24gMTQg4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMSwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgYSBtZXRob2QgZm9yIHRoZSBtZWFzdXJlbWVudCBvZiAxNCBDIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIHNhbXBsZXMgYnkgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgKExTQykgZWl0aGVyIGRpcmVjdGx5IG9uIHRoZSB0ZXN0IHNhbXBsZSBvciBmb2xsb3dpbmcgYSBjaGVtaWNhbCBzZXBhcmF0aW9uLiBUaGUgbWV0aG9kIGlzIGFwcGxpY2FibGUgdG8gdGVzdCBzYW1wbGVzIG9mIHN1cHBseS9kcmlua2luZyB3YXRlciwgcmFpbndhdGVyLCBzdXJmYWNlIGFuZCBncm91bmQgd2F0ZXIsIG1hcmluZSB3YXRlciwgYXMgd2VsbCBhcyBjb29saW5nIHdhdGVyLCBpbmR1c3RyaWFsIHdhdGVyLCBkb21lc3RpYywgYW5kIGluZHVzdHJpYWwgd2FzdGV3YXRlci4gVGhlIGRldGVjdGlvbiBsaW1pdCBkZXBlbmRzIG9uIHRoZSBzYW1wbGUgdm9sdW1lLCB0aGUgaW5zdHJ1bWVudCB1c2VkLCB0aGUgc2FtcGxlIGNvdW50aW5nIHRpbWUsIHRoZSBiYWNrZ3JvdW5kIGNvdW50IHJhdGUsIHRoZSBkZXRlY3Rpb24gZWZmaWNpZW5jeSBhbmQgdGhlIGNoZW1pY2FsIHJlY292ZXJ5LiBUaGUgbWV0aG9kIGRlc2NyaWJlZCBpbiB0aGlzIGRvY3VtZW50LCB1c2luZyBjdXJyZW50bHkgYXZhaWxhYmxlIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50ZXJzIGFuZCBzdWl0YWJsZSB0ZWNobmljYWwgY29uZGl0aW9ucywgaGFzIGEgZGV0ZWN0aW9uIGxpbWl0IGFzIGxvdyBhcyAxwqBCceKImWwg4oiSMSAsIHdoaWNoIGlzIGxvd2VyIHRoYW4gdGhlIFdITyBjcml0ZXJpYSBmb3Igc2FmZSBjb25zdW1wdGlvbiBvZiBkcmlua2luZyB3YXRlciAoMTAwwqBCccK3bCAtMSApLiAxNCBDIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGNhbiBiZSBtZWFzdXJlZCB1cCB0byAxMCA2IMKgQnHiiJlsIC0xIHdpdGhvdXQgYW55IHNhbXBsZSBkaWx1dGlvbi4gSXQgaXMgdGhlIHVzZXLigJlzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJvYmplY3RJRCI6Ijc1ODIxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYyOjIwMjEgV2F0ZXIgcXVhbGl0eSDigJQgQ2FyYm9uIDE0IOKAlCBUZXN0IG1ldGhvZCB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyBhIG1ldGhvZCBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIDE0IEMgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXIgc2FtcGxlcyBieSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyAoTFNDKSBlaXRoZXIgZGlyZWN0bHkgb24gdGhlIHRlc3Qgc2FtcGxlIG9yIGZvbGxvd2luZyBhIGNoZW1pY2FsIHNlcGFyYXRpb24uIFRoZSBtZXRob2QgaXMgYXBwbGljYWJsZSB0byB0ZXN0IHNhbXBsZXMgb2Ygc3VwcGx5L2RyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgbWFyaW5lIHdhdGVyLCBhcyB3ZWxsIGFzIGNvb2xpbmcgd2F0ZXIsIGluZHVzdHJpYWwgd2F0ZXIsIGRvbWVzdGljLCBhbmQgaW5kdXN0cmlhbCB3YXN0ZXdhdGVyLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IGRlcGVuZHMgb24gdGhlIHNhbXBsZSB2b2x1bWUsIHRoZSBpbnN0cnVtZW50IHVzZWQsIHRoZSBzYW1wbGUgY291bnRpbmcgdGltZSwgdGhlIGJhY2tncm91bmQgY291bnQgcmF0ZSwgdGhlIGRldGVjdGlvbiBlZmZpY2llbmN5IGFuZCB0aGUgY2hlbWljYWwgcmVjb3ZlcnkuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQsIHVzaW5nIGN1cnJlbnRseSBhdmFpbGFibGUgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRlcnMgYW5kIHN1aXRhYmxlIHRlY2huaWNhbCBjb25kaXRpb25zLCBoYXMgYSBkZXRlY3Rpb24gbGltaXQgYXMgbG93IGFzIDHCoEJx4oiZbCDiiJIxICwgd2hpY2ggaXMgbG93ZXIgdGhhbiB0aGUgV0hPIGNyaXRlcmlhIGZvciBzYWZlIGNvbnN1bXB0aW9uIG9mIGRyaW5raW5nIHdhdGVyICgxMDDCoEJxwrdsIC0xICkuIDE0IEMgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgY2FuIGJlIG1lYXN1cmVkIHVwIHRvIDEwIDYgwqBCceKImWwgLTEgd2l0aG91dCBhbnkgc2FtcGxlIGRpbHV0aW9uLiBJdCBpcyB0aGUgdXNlcuKAmXMgcmVzcG9uc2liaWxpdHkgdG8gZW5zdXJlIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB0aGUgd2F0ZXIgc2FtcGxlcyB0ZXN0ZWQuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzQxLzY0MTY2IiwidXVpZCI6ImIyMGYxMTQyLWM2MDAtNDIxMC05ZjMxLTY4YTBlMmI2ODdjNyIsInRpdGxlIjoiSVNPIDEzMTQxOjIwMTUgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgTG9jYWxpc2F0aW9uIGF1Z21lbnRhdGlvbiBjb21tdW5pY2F0aW9uIGZvciBhdXRvbm9tb3VzIHN5c3RlbXMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxNDE6MjAxNSBlc3RhYmxpc2hlcyByZXF1aXJlbWVudHMgZm9yIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gZm9yIHRoZSBwdXJwb3NlcyBvZiBhdWdtZW50aW5nIHRoZSBsb2NhbGl6YXRpb24gaW4gYXV0b25vbW91cyBlbGVjdHJvbmljIGZlZSBjb2xsZWN0aW9uIChFRkMpIHN5c3RlbXMuIExvY2FsaXphdGlvbiBhdWdtZW50YXRpb24gc2VydmVzIHRvIGluZm9ybSBvbi1ib2FyZCBlcXVpcG1lbnQgKE9CRSkgYWJvdXQgZ2VvZ3JhcGhpY2FsIGxvY2F0aW9uIGFuZCB0aGUgaWRlbnRpZmljYXRpb24gb2YgYSBjaGFyZ2Ugb2JqZWN0LiBUaGlzIEludGVybmF0aW9uYWwgU3RhbmRhcmQgc3BlY2lmaWVzIHRoZSBwcm92aXNpb24gb2YgbG9jYXRpb24gYW5kIGhlYWRpbmcgaW5mb3JtYXRpb24gYW5kIHNlY3VyaXR5IG1lYW5zIHRvIHByb3RlY3QgZnJvbSB0aGUgbWFuaXB1bGF0aW9uIG9mIHRoZSBPQkUgd2l0aCBmYWxzZSByb2Fkc2lkZSBlcXVpcG1lbnQgKFJTRSkuIFRoZSBsb2NhbGl6YXRpb24gYXVnbWVudGF0aW9uIGNvbW11bmljYXRpb24gdGFrZXMgcGxhY2UgYmV0d2VlbiBhbiBPQkUgaW4gYSB2ZWhpY2xlIGFuZCBmaXhlZCByb2Fkc2lkZSBlcXVpcG1lbnQuIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBpcyBhcHBsaWNhYmxlIHRvIE9CRSBpbiBhbiBhdXRvbm9tb3VzIG1vZGUgb2Ygb3BlcmF0aW9uLiBJU08gMTMxNDE6MjAxNSBkZWZpbmVzIGF0dHJpYnV0ZXMgYW5kIGZ1bmN0aW9ucyBmb3IgdGhlIHB1cnBvc2Ugb2YgbG9jYWxpemF0aW9uIGF1Z21lbnRhdGlvbiwgYnkgbWFraW5nIHVzZSBvZiB0aGUgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb25zIChEU1JDKSBjb21tdW5pY2F0aW9uIHNlcnZpY2VzIHByb3ZpZGVkIGJ5IERTUkMgTGF5ZXIgNywgYW5kIG1ha2VzIHRoZXNlIExBQyBhdHRyaWJ1dGVzIGFuZCBmdW5jdGlvbnMgYXZhaWxhYmxlIHRvIHRoZSBMQUMgYXBwbGljYXRpb25zIGF0IHRoZSBSU0UgYW5kIHRoZSBPQkUuIEF0dHJpYnV0ZXMgYW5kIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBvbiB0aGUgbGV2ZWwgb2YgQXBwbGljYXRpb24gRGF0YSBVbml0cyAoQURVcywgc2VlIEZpZ3VyZSAxKS4gIiwib2JqZWN0SUQiOiI2NDE2Nl8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIExvY2FsaXNhdGlvbiBhdWdtZW50YXRpb24gY29tbXVuaWNhdGlvbiBmb3IgYXV0b25vbW91cyBzeXN0ZW1zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IGVzdGFibGlzaGVzIHJlcXVpcmVtZW50cyBmb3Igc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbiBmb3IgdGhlIHB1cnBvc2VzIG9mIGF1Z21lbnRpbmcgdGhlIGxvY2FsaXphdGlvbiBpbiBhdXRvbm9tb3VzIGVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24gKEVGQykgc3lzdGVtcy4gTG9jYWxpemF0aW9uIGF1Z21lbnRhdGlvbiBzZXJ2ZXMgdG8gaW5mb3JtIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhYm91dCBnZW9ncmFwaGljYWwgbG9jYXRpb24gYW5kIHRoZSBpZGVudGlmaWNhdGlvbiBvZiBhIGNoYXJnZSBvYmplY3QuIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBzcGVjaWZpZXMgdGhlIHByb3Zpc2lvbiBvZiBsb2NhdGlvbiBhbmQgaGVhZGluZyBpbmZvcm1hdGlvbiBhbmQgc2VjdXJpdHkgbWVhbnMgdG8gcHJvdGVjdCBmcm9tIHRoZSBtYW5pcHVsYXRpb24gb2YgdGhlIE9CRSB3aXRoIGZhbHNlIHJvYWRzaWRlIGVxdWlwbWVudCAoUlNFKS4gVGhlIGxvY2FsaXphdGlvbiBhdWdtZW50YXRpb24gY29tbXVuaWNhdGlvbiB0YWtlcyBwbGFjZSBiZXR3ZWVuIGFuIE9CRSBpbiBhIHZlaGljbGUgYW5kIGZpeGVkIHJvYWRzaWRlIGVxdWlwbWVudC4gVGhpcyBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIGlzIGFwcGxpY2FibGUgdG8gT0JFIGluIGFuIGF1dG9ub21vdXMgbW9kZSBvZiBvcGVyYXRpb24uIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IGRlZmluZXMgYXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGZvciB0aGUgcHVycG9zZSBvZiBsb2NhbGl6YXRpb24gYXVnbWVudGF0aW9uLCBieSBtYWtpbmcgdXNlIG9mIHRoZSBkZWRpY2F0ZWQgc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbnMgKERTUkMpIGNvbW11bmljYXRpb24gc2VydmljZXMgcHJvdmlkZWQgYnkgRFNSQyBMYXllciA3LCBhbmQgbWFrZXMgdGhlc2UgTEFDIGF0dHJpYnV0ZXMgYW5kIGZ1bmN0aW9ucyBhdmFpbGFibGUgdG8gdGhlIExBQyBhcHBsaWNhdGlvbnMgYXQgdGhlIFJTRSBhbmQgdGhlIE9CRS4gQXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGFyZSBkZWZpbmVkIG9uIHRoZSBsZXZlbCBvZiBBcHBsaWNhdGlvbiBEYXRhIFVuaXRzIChBRFVzLCBzZWUgRmlndXJlIDEpLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi8yNC82MjQyNCIsInV1aWQiOiI5NDE1YTMwOC05NDBhLTQwZGItYjZiNi01YzNhMzAyNmM5M2IiLCJ0aXRsZSI6IklTTyAxMzE2NC00OjIwMTUgV2F0ZXIgcXVhbGl0eSDigJQgUmFkb24tMjIyIOKAlCBQYXJ0IDQ6IFRlc3QgbWV0aG9kIHVzaW5nIHR3by1waGFzZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE2NC00OjIwMTUgZGVzY3JpYmVzIGEgdGVzdCBtZXRob2QgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZG9uLTIyMiAoIDIyMiBSbikgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBub24tc2FsaW5lIHdhdGVycyBieSBleHRyYWN0aW9uIGFuZCBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZy4gVGhlIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgaW5zdHJ1bWVudHMsIGFyZSBhdCBsZWFzdCBhYm92ZSAwLDUgQnEgbCDiiJIxIGZvciBhIDEwIG1sIHRlc3Qgc2FtcGxlIGFuZCBhIG1lYXN1cmluZyB0aW1lIG9mIDEgaC4gVGhpcyB0ZXN0IG1ldGhvZCBjYW4gYmUgdXNlZCBzdWNjZXNzZnVsbHkgd2l0aCBkcmlua2luZyB3YXRlciBzYW1wbGVzIGFuZCBpdCBpcyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlIGxhYm9yYXRvcnkgdG8gZW5zdXJlIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB3YXRlciBzYW1wbGVzIG9mIHVudGVzdGVkIG1hdHJpY2VzLiBBbm5leCBBIGdpdmVzIGluZGljYXRpb24gb24gdGhlIG5lY2Vzc2FyeSBjb3VudGluZyBjb25kaXRpb25zIHRvIG1lZXQgdGhlIHJlcXVpcmVkIGRldGVjdGlvbiBsaW1pdHMgZm9yIGRyaW5raW5nIHdhdGVyIG1vbml0b3JpbmcuICIsIm9iamVjdElEIjoiNjI0MjRfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjQtNDoyMDE1IFdhdGVyIHF1YWxpdHkg4oCUIFJhZG9uLTIyMiDigJQgUGFydCA0OiBUZXN0IG1ldGhvZCB1c2luZyB0d28tcGhhc2UgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjY0LTQ6MjAxNSBkZXNjcmliZXMgYSB0ZXN0IG1ldGhvZCBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgcmFkb24tMjIyICggMjIyIFJuKSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIG5vbi1zYWxpbmUgd2F0ZXJzIGJ5IGV4dHJhY3Rpb24gYW5kIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nLiBUaGUgcmFkb24tMjIyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zLCB3aGljaCBjYW4gYmUgbWVhc3VyZWQgYnkgdGhpcyB0ZXN0IG1ldGhvZCB1dGlsaXppbmcgY3VycmVudGx5IGF2YWlsYWJsZSBpbnN0cnVtZW50cywgYXJlIGF0IGxlYXN0IGFib3ZlIDAsNSBCcSBsIOKIkjEgZm9yIGEgMTAgbWwgdGVzdCBzYW1wbGUgYW5kIGEgbWVhc3VyaW5nIHRpbWUgb2YgMSBoLiBUaGlzIHRlc3QgbWV0aG9kIGNhbiBiZSB1c2VkIHN1Y2Nlc3NmdWxseSB3aXRoIGRyaW5raW5nIHdhdGVyIHNhbXBsZXMgYW5kIGl0IGlzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgbGFib3JhdG9yeSB0byBlbnN1cmUgdGhlIHZhbGlkaXR5IG9mIHRoaXMgdGVzdCBtZXRob2QgZm9yIHdhdGVyIHNhbXBsZXMgb2YgdW50ZXN0ZWQgbWF0cmljZXMuIEFubmV4IEEgZ2l2ZXMgaW5kaWNhdGlvbiBvbiB0aGUgbmVjZXNzYXJ5IGNvdW50aW5nIGNvbmRpdGlvbnMgdG8gbWVldCB0aGUgcmVxdWlyZWQgZGV0ZWN0aW9uIGxpbWl0cyBmb3IgZHJpbmtpbmcgd2F0ZXIgbW9uaXRvcmluZy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvMTUvNjE1NzMiLCJ1dWlkIjoiNjBmYzEzNjctZmY0ZS00MmQ1LWE5MzQtNjUzYzk3NTcxZTI2IiwidGl0bGUiOiJJU08gMTMxODQtMjoyMDE2IEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIChJVFMpIOKAlCBHdWlkYW5jZSBwcm90b2NvbCB2aWEgcGVyc29uYWwgSVRTIHN0YXRpb24gZm9yIGFkdmlzb3J5IHNhZmV0eSBzeXN0ZW1zIOKAlCBQYXJ0IDI6IFJvYWQgZ3VpZGFuY2UgcHJvdG9jb2wgKFJHUCkgcmVxdWlyZW1lbnRzIGFuZCBzcGVjaWZpY2F0aW9uIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTg0LTI6MjAxNiBzcGVjaWZpZXMgdGhlIHJvYWQgZ3VpZGFuY2UgdXNlIGNhc2VzIG9uIHRoZSBEWE0gdG8gcHJvdmlkZSB0aGUgcmVhbC10aW1lIGRlY2lzaW9uIHN1cHBvcnQgc3lzdGVtIHRvIGRyaXZlcnMgb3IgcGVkZXN0cmlhbnMgdXNpbmcgUC1JVFMtUy4gVGhlIHJvYWQgZ3VpZGFuY2UgcHJvdG9jb2wgKFJHUCkgaXMgYW4gaW5zdGFudGlhdGlvbiBvZiB0aGUgZGF0YSBleGNoYW5nZSBtZXNzYWdlIChEWE0pLCB3aGljaCByZXByZXNlbnRzIGEgZ2VuZXJpYyBtZXNzYWdlIHRvIGV4Y2hhbmdlIGRhdGEgYmV0d2VlbiBJVFMgc3RhdGlvbnMuIFRoZSBSR1AgZGVmaW5lcyBhbiBpbnRlcm9wZXJhYmxlIHNlcnZpY2UgcHJvdG9jb2wgYmV0d2VlbiBQLUlUUy1TIGFuZCBSLUlUUy1TIGZvciBleGNoYW5naW5nIGRhdGEgZWxlbWVudHMuIFRoaXMgcGFydCBvZiBJU08gMTMxODQgc3BlY2lmaWVzIHRoZSBmb2xsb3dpbmc6IC0gICAgICBSZWZlcmVuY2UgYXJjaGl0ZWN0dXJlIGZvciByZWFsLXRpbWUgZGVjaXNpb24gc3VwcG9ydCBzeXN0ZW0uIFRoaXMgcmVmZXJlbmNlIGFyY2hpdGVjdHVyZSBwcm92aWRlcyBhIGdlbmVyYWwgc3RydWN0dXJlIGZvciB0aGUgcmVhbC10aW1lIGRlY2lzaW9uIHN1cHBvcnQgc3lzdGVtIGFuZCB0aGUgbWV0aG9kIG9mIG1lc3NhZ2UgZXhjaGFuZ2UgYmV0d2VlbiB0aGUgUC1JVFMtUyBhbmQgdGhlIFItSVRTLVMuIFRoaXMgcmVmZXJlbmNlIGFyY2hpdGVjdHVyZSBpcyB1c2VkIHRvIGJ1aWxkIHRoZSBpbnRlcmNvbm5lY3Rpb25zIGJldHdlZW4gdGhlIFAtSVRTLVMgYW5kIHRoZSBSLUlUUy1TLiAtICAgICAgVGVjaG5pcXVlIG9mIGFwcGxpY2F0aW9uIHByb3RvY29sIGRlc2lnbiBmb3IgdmFyaW91cyB1c2UgY2FzZXMgb24gYSBQLUlUUy1TLiBUaGlzIHRlY2huaXF1ZSBhZG9wdHMgYSBmbGV4aWJsZSBhbmQgZXh0ZW5kYWJsZSBwcm90b2NvbCBkZXNpZ24uIEluIG1hbnkgY2FzZXMsIHRoZSBhcHBsaWNhdGlvbiBwcm90b2NvbCBmb3IgdGhlIElUUyBpcyBkZXNpZ25lZCB0byBwcm92aWRlIGEgc2V0IG9mIG1lc3NhZ2VzIHRoYXQgaXMgZGVwZW5kZW50IG9uIHRoZSB1c2UgY2FzZXMgYW5kIHRoZSBtZXNzYWdlIGV4Y2hhbmdlIG1ldGhvZC4gSG93ZXZlciwgaXQgaXMgbm90IGVhc3kgdG8gZW51bWVyYXRlIGFsbCB1c2UgY2FzZXMgZm9yIHNvbWUgYXBwbGljYXRpb25zLiBUaGUgdXNlIGNhc2VzIGNhbiBiZSBjaGFuZ2VkIG9yIGVuaGFuY2VkIGZyZXF1ZW50bHkuIEZvciB0aGlzIHR5cGUgb2YgYXBwbGljYXRpb24sIHRoZSBwcm90b2NvbCBkZXNpZ24sIGRlcGVuZGluZyBvbiB0aGUgdXNlIGNhc2VzLCBpcyBub3QgYXBwcm9wcmlhdGUuIFRoaXMgcGFydCBvZiBJU08gMTMxODQgcHJvdmlkZXMgYSBnZW5lcmFsIHRlY2huaXF1ZSBvZiBkZXNpZ25pbmcgdGhlIHJvYWQgZ3VpZGFuY2UgYXBwbGljYXRpb24gcHJvdG9jb2wgYmFzZWQgb24gdGhlIHVzZSBjYXNlcy4gLSAgICAgIFByaW1pdGl2ZSBkYXRhIGVsZW1lbnQuIFRoZSBwcmltaXRpdmUgZGF0YSBlbGVtZW50IHdpbGwgYmUgY29tbW9ubHkgdXNlZCB0byBjb25maWd1cmUgdGhlIHNhZmV0eSB3YXJuaW5nIGFuZCBwYXJraW5nIGd1aWRlIHNlcnZpY2UgaW4gdGhlIGZvcm0gb2Ygc3BlZWQsIGxvY2F0aW9uIGFuZCB0aW1lLiAtICAgICAgVXNlIGNhc2VzIGF0IHRoZSByb2FkIGFuZCBwYXJraW5nIHNwYWNlcyBmb3Igd2FybmluZyBhbmQgcGFya2luZyBndWlkZS4gVGhpcyBwYXJ0IG9mIElTTyAxMzE4NCBkZXNjcmliZXMgdGhlIHVzZSBjYXNlcyBhcHBsaWNhYmxlIHRvIHRoZSBjb21tdW5pY2F0aW9uIHNlcnZpY2VzIGJldHdlZW4gdGhlIFAtSVRTLVMgYW5kIHRoZSBSLUlUUy1TIGZvciB0aGUgcHVycG9zZXMgb2YgcHJvdmlkaW5nIHNhZmV0eSB3YXJuaW5nIGFuZCBwYXJraW5nIGd1aWRhbmNlLiBJU08gMTMxODQgKGFsbCBwYXJ0cykgaGF2ZSBiZWVuIGFsaWduZWQgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgc3BlY2lmaWVkIGluIElTTyAyMTIxNywgSVNPL1RTIDE3NDE5IGFuZCBJU08vVFMgMTc0MjMuIElTTyAxMzE4NC0yOjIwMTYgb25seSBzcGVjaWZpZXMgdGhlIFJHUCBtZXNzYWdlcyBiYXNlZCBvbiB0aGUgRFhNIGRlZmluaXRpb24gKHNlZSBBbm5leCBCIGFuZCBBbm5leCBDKSBhdCByZWFsLXRpbWUuIFRoZSBjb250ZW50IG9mIHRoZSBSR1AgbWVzc2FnZXMgYXJlIGJhc2VkIG9uIHRoZSBkZWZpbml0aW9uIG9mIHJvYWQgZ3VpZGFuY2UgdXNlIGNhc2VzIGFzIGRvY3VtZW50ZWQgaW4gSVNPIDEzMTg0PzEuIFRoaXMgcGFydCBvZiBJU08gMTMxODQgaW1wbGVtZW50cyBJVFMtU1Ugb2JqZWN0cywgd2hpY2ggaXMgYSBnZW5lcmFsIHJlZmVyZW5jZSB0byBJVFMgYXBwbGljYXRpb24gb2JqZWN0cywgSVRTIG1lc3NhZ2Ugc2V0cyBhbmQgb3RoZXIgb2JqZWN0cyB3aGljaCBtYXkgcmVxdWlyZSBnbG9iYWxseSB1bmlxdWUgaWRlbnRpZmljYXRpb24gYW5kIHJlZ2lzdHJhdGlvbi4gVGhlIG1hbmFnZW1lbnQgb2YgSVRTLVNVIG9iamVjdHMgaXMgbWFueS1mb2xkLCBlLmcuIHNwZWNpZmllZCBpbiBJU08gMjQxMDI/NCwgSVNPIDI0MTAyPzUsIElTTyAyNDEwMj82LCBJU08gMjQxMDI/NywgSVNPIDI0MTAyPzggYW5kIElTTyAyNDEwMj85LCBhbmQgaW4gQ0VOL0lTTy9UUyAxNzQyMy4gVGhpcyBwYXJ0IG9mIElTTyAxMzE4NCBpbXBsZW1lbnRzIGF1dGhvcml6ZWQgYW5kIGNvbnRyb2xsZWQgb3BlcmF0aW9uIG9mIElUUy1TVSBvYmplY3RzLCB3aGljaCByZXF1aXJlcyBjb25zaWRlcmF0aW9ucyBvZiBJVFMtU1Ugb2JqZWN0IGlkZW50aWZpZXJzLCBpLmUuIElUUy1BSUQsIElUUy1Nc2dTZXRJRCwgSVRTLVNVSUQsIElUUy1TQ1VJRCwgYWRkcmVzc2VzIGFuZCBwcm90b2NvbCBpZGVudGlmaWVycyB1c2VkIGluIHRoZSBjb21tdW5pY2F0aW9uIHByb3RvY29sIHN0YWNrIG9mIGFuIElUUy1TLCBhbmQgb3RoZXJzLiBOT1RFICAgICAgICAgIFRoZSBhY2N1cmFjeSBvZiB0aGUgbmF2aWdhdGlvbiBhbmQgcG9zaXRpb25pbmcgc3lzdGVtIGFzIGlucHV0IHRvIHRoZSBSb2FkIEd1aWRhbmNlIGFwcGxpY2F0aW9uIGlzIGltcG9ydGFudCBmb3Igcm9hZCBndWlkYW5jZSBidXQgaXMgbm90IHBhcnQgb2YgdGhlIElTTyAxMzE4NCBzZXJpZXMuIERldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGNyb3Nzcm9hZHMgaXMgbmVlZGVkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiBSb2FkIEd1aWRhbmNlIGFwcGxpY2F0aW9ucy4gIiwib2JqZWN0SUQiOiI2MTU3M18wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NC0yOjIwMTYgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMgKElUUykg4oCUIEd1aWRhbmNlIHByb3RvY29sIHZpYSBwZXJzb25hbCBJVFMgc3RhdGlvbiBmb3IgYWR2aXNvcnkgc2FmZXR5IHN5c3RlbXMg4oCUIFBhcnQgMjogUm9hZCBndWlkYW5jZSBwcm90b2NvbCAoUkdQKSByZXF1aXJlbWVudHMgYW5kIHNwZWNpZmljYXRpb24iLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg0LTI6MjAxNiBzcGVjaWZpZXMgdGhlIHJvYWQgZ3VpZGFuY2UgdXNlIGNhc2VzIG9uIHRoZSBEWE0gdG8gcHJvdmlkZSB0aGUgcmVhbC10aW1lIGRlY2lzaW9uIHN1cHBvcnQgc3lzdGVtIHRvIGRyaXZlcnMgb3IgcGVkZXN0cmlhbnMgdXNpbmcgUC1JVFMtUy4gVGhlIHJvYWQgZ3VpZGFuY2UgcHJvdG9jb2wgKFJHUCkgaXMgYW4gaW5zdGFudGlhdGlvbiBvZiB0aGUgZGF0YSBleGNoYW5nZSBtZXNzYWdlIChEWE0pLCB3aGljaCByZXByZXNlbnRzIGEgZ2VuZXJpYyBtZXNzYWdlIHRvIGV4Y2hhbmdlIGRhdGEgYmV0d2VlbiBJVFMgc3RhdGlvbnMuIFRoZSBSR1AgZGVmaW5lcyBhbiBpbnRlcm9wZXJhYmxlIHNlcnZpY2UgcHJvdG9jb2wgYmV0d2VlbiBQLUlUUy1TIGFuZCBSLUlUUy1TIGZvciBleGNoYW5naW5nIGRhdGEgZWxlbWVudHMuIFRoaXMgcGFydCBvZiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODQgc3BlY2lmaWVzIHRoZSBmb2xsb3dpbmc6IC0gICAgICBSZWZlcmVuY2UgYXJjaGl0ZWN0dXJlIGZvciByZWFsLXRpbWUgZGVjaXNpb24gc3VwcG9ydCBzeXN0ZW0uIFRoaXMgcmVmZXJlbmNlIGFyY2hpdGVjdHVyZSBwcm92aWRlcyBhIGdlbmVyYWwgc3RydWN0dXJlIGZvciB0aGUgcmVhbC10aW1lIGRlY2lzaW9uIHN1cHBvcnQgc3lzdGVtIGFuZCB0aGUgbWV0aG9kIG9mIG1lc3NhZ2UgZXhjaGFuZ2UgYmV0d2VlbiB0aGUgUC1JVFMtUyBhbmQgdGhlIFItSVRTLVMuIFRoaXMgcmVmZXJlbmNlIGFyY2hpdGVjdHVyZSBpcyB1c2VkIHRvIGJ1aWxkIHRoZSBpbnRlcmNvbm5lY3Rpb25zIGJldHdlZW4gdGhlIFAtSVRTLVMgYW5kIHRoZSBSLUlUUy1TLiAtICAgICAgVGVjaG5pcXVlIG9mIGFwcGxpY2F0aW9uIHByb3RvY29sIGRlc2lnbiBmb3IgdmFyaW91cyB1c2UgY2FzZXMgb24gYSBQLUlUUy1TLiBUaGlzIHRlY2huaXF1ZSBhZG9wdHMgYSBmbGV4aWJsZSBhbmQgZXh0ZW5kYWJsZSBwcm90b2NvbCBkZXNpZ24uIEluIG1hbnkgY2FzZXMsIHRoZSBhcHBsaWNhdGlvbiBwcm90b2NvbCBmb3IgdGhlIElUUyBpcyBkZXNpZ25lZCB0byBwcm92aWRlIGEgc2V0IG9mIG1lc3NhZ2VzIHRoYXQgaXMgZGVwZW5kZW50IG9uIHRoZSB1c2UgY2FzZXMgYW5kIHRoZSBtZXNzYWdlIGV4Y2hhbmdlIG1ldGhvZC4gSG93ZXZlciwgaXQgaXMgbm90IGVhc3kgdG8gZW51bWVyYXRlIGFsbCB1c2UgY2FzZXMgZm9yIHNvbWUgYXBwbGljYXRpb25zLiBUaGUgdXNlIGNhc2VzIGNhbiBiZSBjaGFuZ2VkIG9yIGVuaGFuY2VkIGZyZXF1ZW50bHkuIEZvciB0aGlzIHR5cGUgb2YgYXBwbGljYXRpb24sIHRoZSBwcm90b2NvbCBkZXNpZ24sIGRlcGVuZGluZyBvbiB0aGUgdXNlIGNhc2VzLCBpcyBub3QgYXBwcm9wcmlhdGUuIFRoaXMgcGFydCBvZiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODQgcHJvdmlkZXMgYSBnZW5lcmFsIHRlY2huaXF1ZSBvZiBkZXNpZ25pbmcgdGhlIHJvYWQgZ3VpZGFuY2UgYXBwbGljYXRpb24gcHJvdG9jb2wgYmFzZWQgb24gdGhlIHVzZSBjYXNlcy4gLSAgICAgIFByaW1pdGl2ZSBkYXRhIGVsZW1lbnQuIFRoZSBwcmltaXRpdmUgZGF0YSBlbGVtZW50IHdpbGwgYmUgY29tbW9ubHkgdXNlZCB0byBjb25maWd1cmUgdGhlIHNhZmV0eSB3YXJuaW5nIGFuZCBwYXJraW5nIGd1aWRlIHNlcnZpY2UgaW4gdGhlIGZvcm0gb2Ygc3BlZWQsIGxvY2F0aW9uIGFuZCB0aW1lLiAtICAgICAgVXNlIGNhc2VzIGF0IHRoZSByb2FkIGFuZCBwYXJraW5nIHNwYWNlcyBmb3Igd2FybmluZyBhbmQgcGFya2luZyBndWlkZS4gVGhpcyBwYXJ0IG9mIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NCBkZXNjcmliZXMgdGhlIHVzZSBjYXNlcyBhcHBsaWNhYmxlIHRvIHRoZSBjb21tdW5pY2F0aW9uIHNlcnZpY2VzIGJldHdlZW4gdGhlIFAtSVRTLVMgYW5kIHRoZSBSLUlUUy1TIGZvciB0aGUgcHVycG9zZXMgb2YgcHJvdmlkaW5nIHNhZmV0eSB3YXJuaW5nIGFuZCBwYXJraW5nIGd1aWRhbmNlLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODQgKGFsbCBwYXJ0cykgaGF2ZSBiZWVuIGFsaWduZWQgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgc3BlY2lmaWVkIGluIDxlbT5JU088L2VtPiAyMTIxNywgPGVtPklTTzwvZW0+L1RTIDE3NDE5IGFuZCA8ZW0+SVNPPC9lbT4vVFMgMTc0MjMuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NC0yOjIwMTYgb25seSBzcGVjaWZpZXMgdGhlIFJHUCBtZXNzYWdlcyBiYXNlZCBvbiB0aGUgRFhNIGRlZmluaXRpb24gKHNlZSBBbm5leCBCIGFuZCBBbm5leCBDKSBhdCByZWFsLXRpbWUuIFRoZSBjb250ZW50IG9mIHRoZSBSR1AgbWVzc2FnZXMgYXJlIGJhc2VkIG9uIHRoZSBkZWZpbml0aW9uIG9mIHJvYWQgZ3VpZGFuY2UgdXNlIGNhc2VzIGFzIGRvY3VtZW50ZWQgaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg0PzEuIFRoaXMgcGFydCBvZiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODQgaW1wbGVtZW50cyBJVFMtU1Ugb2JqZWN0cywgd2hpY2ggaXMgYSBnZW5lcmFsIHJlZmVyZW5jZSB0byBJVFMgYXBwbGljYXRpb24gb2JqZWN0cywgSVRTIG1lc3NhZ2Ugc2V0cyBhbmQgb3RoZXIgb2JqZWN0cyB3aGljaCBtYXkgcmVxdWlyZSBnbG9iYWxseSB1bmlxdWUgaWRlbnRpZmljYXRpb24gYW5kIHJlZ2lzdHJhdGlvbi4gVGhlIG1hbmFnZW1lbnQgb2YgSVRTLVNVIG9iamVjdHMgaXMgbWFueS1mb2xkLCBlLmcuIHNwZWNpZmllZCBpbiA8ZW0+SVNPPC9lbT4gMjQxMDI/NCwgPGVtPklTTzwvZW0+IDI0MTAyPzUsIDxlbT5JU088L2VtPiAyNDEwMj82LCA8ZW0+SVNPPC9lbT4gMjQxMDI/NywgPGVtPklTTzwvZW0+IDI0MTAyPzggYW5kIDxlbT5JU088L2VtPiAyNDEwMj85LCBhbmQgaW4gQ0VOLzxlbT5JU088L2VtPi9UUyAxNzQyMy4gVGhpcyBwYXJ0IG9mIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NCBpbXBsZW1lbnRzIGF1dGhvcml6ZWQgYW5kIGNvbnRyb2xsZWQgb3BlcmF0aW9uIG9mIElUUy1TVSBvYmplY3RzLCB3aGljaCByZXF1aXJlcyBjb25zaWRlcmF0aW9ucyBvZiBJVFMtU1Ugb2JqZWN0IGlkZW50aWZpZXJzLCBpLmUuIElUUy1BSUQsIElUUy1Nc2dTZXRJRCwgSVRTLVNVSUQsIElUUy1TQ1VJRCwgYWRkcmVzc2VzIGFuZCBwcm90b2NvbCBpZGVudGlmaWVycyB1c2VkIGluIHRoZSBjb21tdW5pY2F0aW9uIHByb3RvY29sIHN0YWNrIG9mIGFuIElUUy1TLCBhbmQgb3RoZXJzLiBOT1RFICAgICAgICAgIFRoZSBhY2N1cmFjeSBvZiB0aGUgbmF2aWdhdGlvbiBhbmQgcG9zaXRpb25pbmcgc3lzdGVtIGFzIGlucHV0IHRvIHRoZSBSb2FkIEd1aWRhbmNlIGFwcGxpY2F0aW9uIGlzIGltcG9ydGFudCBmb3Igcm9hZCBndWlkYW5jZSBidXQgaXMgbm90IHBhcnQgb2YgdGhlIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NCBzZXJpZXMuIERldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGNyb3Nzcm9hZHMgaXMgbmVlZGVkIGZvciBpbXBsZW1lbnRhdGlvbiBvZiBSb2FkIEd1aWRhbmNlIGFwcGxpY2F0aW9ucy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvMDEvNjAxNDYiLCJ1dWlkIjoiYzU5MmYyNGItZWI0ZS00NjYzLWEwMTAtOGM0ZGRlOTFlMjg1IiwidGl0bGUiOiJJU08gMTMxNjUtMzoyMDE2IFdhdGVyIHF1YWxpdHkg4oCUIFJhZGl1bS0yMjYg4oCUIFBhcnQgMzogVGVzdCBtZXRob2QgdXNpbmcgY29wcmVjaXBpdGF0aW9uIGFuZCBnYW1tYS1zcGVjdHJvbWV0cnkiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxNjUtMzoyMDE2IHNwZWNpZmllcyB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRpdW0tMjI2ICgyMjZSYSkgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXIgYnkgY29wcmVjaXBpdGF0aW9uIGZvbGxvd2VkIGJ5IGdhbW1hLXNwZWN0cm9tZXRyeSAoc2VlIElTTyAxODU4OeKAkTMpLiBUaGUgbWV0aG9kIGRlc2NyaWJlZCBpcyBzdWl0YWJsZSBmb3IgZGV0ZXJtaW5hdGlvbiBvZiBzb2x1YmxlIDIyNlJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGdyZWF0ZXIgdGhhbiAwLDAyIEJxIGziiJIxIHVzaW5nIGEgc2FtcGxlIHZvbHVtZSBvZiAxIGwgdG8gMTAwIGwgb2YgYW55IHdhdGVyIHR5cGUuIEZvciB3YXRlciBzYW1wbGVzIHNtYWxsZXIgdGhhbiBhIHZvbHVtZSBvZiAxIGwsIGRpcmVjdCBnYW1tYS1zcGVjdHJvbWV0cnkgY2FuIGJlIHBlcmZvcm1lZCBmb2xsb3dpbmcgSVNPIDEwNzAzIHdpdGggYSBoaWdoZXIgZGV0ZWN0aW9uIGxpbWl0LiBOT1RFICAgICAgICAgIFRoaXMgdGVzdCBtZXRob2QgYWxzbyBhbGxvd3Mgb3RoZXIgaXNvdG9wZXMgb2YgcmFkaXVtLCAyMjNSYSwgMjI0UmEsIGFuZCAyMjhSYSwgdG8gYmUgZGV0ZXJtaW5lZC4gIiwib2JqZWN0SUQiOiI2MDE0Nl8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0zOjIwMTYgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAzOiBUZXN0IG1ldGhvZCB1c2luZyBjb3ByZWNpcGl0YXRpb24gYW5kIGdhbW1hLXNwZWN0cm9tZXRyeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjUtMzoyMDE2IHNwZWNpZmllcyB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRpdW0tMjI2ICgyMjZSYSkgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXIgYnkgY29wcmVjaXBpdGF0aW9uIGZvbGxvd2VkIGJ5IGdhbW1hLXNwZWN0cm9tZXRyeSAoc2VlIDxlbT5JU088L2VtPiAxODU4OeKAkTMpLiBUaGUgbWV0aG9kIGRlc2NyaWJlZCBpcyBzdWl0YWJsZSBmb3IgZGV0ZXJtaW5hdGlvbiBvZiBzb2x1YmxlIDIyNlJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGdyZWF0ZXIgdGhhbiAwLDAyIEJxIGziiJIxIHVzaW5nIGEgc2FtcGxlIHZvbHVtZSBvZiAxIGwgdG8gMTAwIGwgb2YgYW55IHdhdGVyIHR5cGUuIEZvciB3YXRlciBzYW1wbGVzIHNtYWxsZXIgdGhhbiBhIHZvbHVtZSBvZiAxIGwsIGRpcmVjdCBnYW1tYS1zcGVjdHJvbWV0cnkgY2FuIGJlIHBlcmZvcm1lZCBmb2xsb3dpbmcgPGVtPklTTzwvZW0+IDEwNzAzIHdpdGggYSBoaWdoZXIgZGV0ZWN0aW9uIGxpbWl0LiBOT1RFICAgICAgICAgIFRoaXMgdGVzdCBtZXRob2QgYWxzbyBhbGxvd3Mgb3RoZXIgaXNvdG9wZXMgb2YgcmFkaXVtLCAyMjNSYSwgMjI0UmEsIGFuZCAyMjhSYSwgdG8gYmUgZGV0ZXJtaW5lZC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzQvNTM0MDgiLCJ1dWlkIjoiMDNiODk1OGMtZTA5Yi00NDdmLWI2MTEtMWYyMDI4NmZlMGRkIiwidGl0bGUiOiJJU08gMTMxNjc6MjAxNSBXYXRlciBxdWFsaXR5IOKAlCBQbHV0b25pdW0sIGFtZXJpY2l1bSwgY3VyaXVtIGFuZCBuZXB0dW5pdW0g4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGFscGhhIHNwZWN0cm9tZXRyeSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE2NzoyMDE1IHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGZvciBtZWFzdXJpbmcgYWN0aW5pZGVzICggMjM4IFB1LCAyMzkrMjQwIFB1LCAyNDEgQW0sIDI0MiBDbSwgMjQzKzI0NCBDbSBhbmQgMjM3IE5wKSBpbiB3YXRlciBzYW1wbGVzIGJ5IGFscGhhIHNwZWN0cm9tZXRyeSBmb2xsb3dpbmcgYSBjaGVtaWNhbCBzZXBhcmF0aW9uLiBUaGUgbWV0aG9kIGNhbiBiZSB1c2VkIGZvciBhbnkgdHlwZSBvZiBlbnZpcm9ubWVudGFsIHN0dWR5IG9yIG1vbml0b3JpbmcuIFRoZSB2b2x1bWUgb2YgdGhlIHRlc3QgcG9ydGlvbiByZXF1aXJlZCBkZXBlbmRzIG9uIHRoZSBhc3N1bWVkIGFjdGl2aXR5IG9mIHRoZSBzYW1wbGUgYW5kIHRoZSBkZXNpcmVkIGRldGVjdGlvbiBsaW1pdC4gVGhlIGRldGVjdGlvbiBsaW1pdCBvZiB0aGUgdGVzdCBtZXRob2QgaXMgNSDDlyAxMCDiiJIzIHRvIDUgw5cgMTAg4oiSNCBCcS9sIGZvciBhIHZvbHVtZSBvZiB0aGUgdGVzdCBwb3J0aW9uIG9mIDAsMSBsIHRvIDUgbCB3aXRoIGEgY291bnRpbmcgdGltZSBvZiB0d28gdG8gdGVuIGRheXMuICIsIm9iamVjdElEIjoiNTM0MDhfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Njc6MjAxNSBXYXRlciBxdWFsaXR5IOKAlCBQbHV0b25pdW0sIGFtZXJpY2l1bSwgY3VyaXVtIGFuZCBuZXB0dW5pdW0g4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGFscGhhIHNwZWN0cm9tZXRyeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Njc6MjAxNSBzcGVjaWZpZXMgYSB0ZXN0IG1ldGhvZCBmb3IgbWVhc3VyaW5nIGFjdGluaWRlcyAoIDIzOCBQdSwgMjM5KzI0MCBQdSwgMjQxIEFtLCAyNDIgQ20sIDI0MysyNDQgQ20gYW5kIDIzNyBOcCkgaW4gd2F0ZXIgc2FtcGxlcyBieSBhbHBoYSBzcGVjdHJvbWV0cnkgZm9sbG93aW5nIGEgY2hlbWljYWwgc2VwYXJhdGlvbi4gVGhlIG1ldGhvZCBjYW4gYmUgdXNlZCBmb3IgYW55IHR5cGUgb2YgZW52aXJvbm1lbnRhbCBzdHVkeSBvciBtb25pdG9yaW5nLiBUaGUgdm9sdW1lIG9mIHRoZSB0ZXN0IHBvcnRpb24gcmVxdWlyZWQgZGVwZW5kcyBvbiB0aGUgYXNzdW1lZCBhY3Rpdml0eSBvZiB0aGUgc2FtcGxlIGFuZCB0aGUgZGVzaXJlZCBkZXRlY3Rpb24gbGltaXQuIFRoZSBkZXRlY3Rpb24gbGltaXQgb2YgdGhlIHRlc3QgbWV0aG9kIGlzIDUgw5cgMTAg4oiSMyB0byA1IMOXIDEwIOKIkjQgQnEvbCBmb3IgYSB2b2x1bWUgb2YgdGhlIHRlc3QgcG9ydGlvbiBvZiAwLDEgbCB0byA1IGwgd2l0aCBhIGNvdW50aW5nIHRpbWUgb2YgdHdvIHRvIHRlbiBkYXlzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zMC81MzA1NCIsInV1aWQiOiI2NzgxNjg4NC03YzUxLTRlNWUtYmQ2Yy02ZWUxYWZlYTVhOGQiLCJ0aXRsZSI6IklTTyAxMzEzMjoyMDExIExhYm9yYXRvcnkgZ2xhc3N3YXJlIOKAlCBQZXRyaSBkaXNoZXMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxMzI6MjAxMSBzcGVjaWZpZXMgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0cyBmb3IgZ2xhc3MgUGV0cmkgZGlzaGVzIGludGVuZGVkIGZvciBnZW5lcmFsIGxhYm9yYXRvcnkgcHVycG9zZXMgYW5kIG1pY3JvYmlvbG9naWNhbCB3b3JrLiAiLCJvYmplY3RJRCI6IjUzMDU0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjMyOjIwMTEgTGFib3JhdG9yeSBnbGFzc3dhcmUg4oCUIFBldHJpIGRpc2hlcyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MzI6MjAxMSBzcGVjaWZpZXMgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0cyBmb3IgZ2xhc3MgUGV0cmkgZGlzaGVzIGludGVuZGVkIGZvciBnZW5lcmFsIGxhYm9yYXRvcnkgcHVycG9zZXMgYW5kIG1pY3JvYmlvbG9naWNhbCB3b3JrLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zMC81MzAwNyIsInV1aWQiOiJkMmNjZjJiYy01OWRmLTQxN2EtYTVkZS0yMzliNGJjZDQwZmUiLCJ0aXRsZSI6IklTTyAxMzEyNDoyMDExIEZpbmUgY2VyYW1pY3MgKGFkdmFuY2VkIGNlcmFtaWNzLCBhZHZhbmNlZCB0ZWNobmljYWwgY2VyYW1pY3MpIOKAlCBUZXN0IG1ldGhvZCBmb3IgaW50ZXJmYWNpYWwgYm9uZCBzdHJlbmd0aCBvZiBjZXJhbWljIG1hdGVyaWFscyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEyNDoyMDExIHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGZvciBkZXRlcm1pbmluZyB0aGUgaW50ZXJmYWNpYWwgdGVuc2lsZSBhbmQgc2hlYXIgYm9uZCBzdHJlbmd0aCBvZiBjZXJhbWljLWNlcmFtaWMsIGNlcmFtaWMtbWV0YWwsIGFuZCBjZXJhbWljLWdsYXNzIGpvaW5pbmcgYXQgYW1iaWVudCB0ZW1wZXJhdHVyZSBieSBjb21wcmVzc2lvbiB0ZXN0cyBvbiBjcm9zcy1ib25kZWQgdGVzdCBwaWVjZXMuIE1ldGhvZHMgZm9yIHRlc3QtcGllY2UgcHJlcGFyYXRpb24sIHRlc3QgbW9kZXMgYW5kIHJhdGVzIChsb2FkIHJhdGUgb3IgZGlzcGxhY2VtZW50IHJhdGUpLCBkYXRhIGNvbGxlY3Rpb24gYW5kIHJlcG9ydGluZyBwcm9jZWR1cmVzIGFyZSBhZGRyZXNzZWQuIElTTyAxMzEyNDoyMDExIGFwcGxpZXMgcHJpbWFyaWx5IHRvIGNlcmFtaWMgbWF0ZXJpYWxzLCBpbmNsdWRpbmcgbW9ub2xpdGhpYyBmaW5lIGNlcmFtaWNzIGFuZCB3aGlza2VyLSwgZmlicmUtIG9yIHBhcnRpY3VsYXRlLXJlaW5mb3JjZWQgY2VyYW1pYyBjb21wb3NpdGVzLiBUaGlzIHRlc3QgbWV0aG9kIGNhbiBiZSB1c2VkIGZvciBtYXRlcmlhbHMgcmVzZWFyY2gsIHF1YWxpdHkgY29udHJvbCwgYW5kIGNoYXJhY3Rlcml6YXRpb24gYW5kIGRlc2lnbiBkYXRhIGdlbmVyYXRpb24gcHVycG9zZXMuICIsIm9iamVjdElEIjoiNTMwMDdfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjQ6MjAxMSBGaW5lIGNlcmFtaWNzIChhZHZhbmNlZCBjZXJhbWljcywgYWR2YW5jZWQgdGVjaG5pY2FsIGNlcmFtaWNzKSDigJQgVGVzdCBtZXRob2QgZm9yIGludGVyZmFjaWFsIGJvbmQgc3RyZW5ndGggb2YgY2VyYW1pYyBtYXRlcmlhbHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjI0OjIwMTEgc3BlY2lmaWVzIGEgdGVzdCBtZXRob2QgZm9yIGRldGVybWluaW5nIHRoZSBpbnRlcmZhY2lhbCB0ZW5zaWxlIGFuZCBzaGVhciBib25kIHN0cmVuZ3RoIG9mIGNlcmFtaWMtY2VyYW1pYywgY2VyYW1pYy1tZXRhbCwgYW5kIGNlcmFtaWMtZ2xhc3Mgam9pbmluZyBhdCBhbWJpZW50IHRlbXBlcmF0dXJlIGJ5IGNvbXByZXNzaW9uIHRlc3RzIG9uIGNyb3NzLWJvbmRlZCB0ZXN0IHBpZWNlcy4gTWV0aG9kcyBmb3IgdGVzdC1waWVjZSBwcmVwYXJhdGlvbiwgdGVzdCBtb2RlcyBhbmQgcmF0ZXMgKGxvYWQgcmF0ZSBvciBkaXNwbGFjZW1lbnQgcmF0ZSksIGRhdGEgY29sbGVjdGlvbiBhbmQgcmVwb3J0aW5nIHByb2NlZHVyZXMgYXJlIGFkZHJlc3NlZC4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjI0OjIwMTEgYXBwbGllcyBwcmltYXJpbHkgdG8gY2VyYW1pYyBtYXRlcmlhbHMsIGluY2x1ZGluZyBtb25vbGl0aGljIGZpbmUgY2VyYW1pY3MgYW5kIHdoaXNrZXItLCBmaWJyZS0gb3IgcGFydGljdWxhdGUtcmVpbmZvcmNlZCBjZXJhbWljIGNvbXBvc2l0ZXMuIFRoaXMgdGVzdCBtZXRob2QgY2FuIGJlIHVzZWQgZm9yIG1hdGVyaWFscyByZXNlYXJjaCwgcXVhbGl0eSBjb250cm9sLCBhbmQgY2hhcmFjdGVyaXphdGlvbiBhbmQgZGVzaWduIGRhdGEgZ2VuZXJhdGlvbiBwdXJwb3Nlcy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDgvMDAvODAwMzciLCJ1dWlkIjoiMzI1YzMxMzgtZDk2Yi00ZWUxLWFkZDItNzEyMmQ4ZWUwNjQyIiwidGl0bGUiOiJJU08gMTMxNjY6MjAyMCBXYXRlciBxdWFsaXR5IOKAlCBVcmFuaXVtIGlzb3RvcGVzIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBhbHBoYS1zcGVjdHJvbWV0cnkiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIwLCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyB0aGUgY29uZGl0aW9ucyBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgdXJhbml1bSBpc290b3BlIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBlbnZpcm9ubWVudGFsIHdhdGVyIChpbmNsdWRpbmcgc2VhIHdhdGVycykgdXNpbmcgYWxwaGEtc3BlY3Ryb21ldHJ5IGFuZCAyMzIgVSBhcyBhIHlpZWxkIHRyYWNlci4gQSBjaGVtaWNhbCBzZXBhcmF0aW9uIGlzIHJlcXVpcmVkIHRvIHNlcGFyYXRlIGFuZCBwdXJpZnkgdXJhbml1bSBmcm9tIGEgdGVzdCBwb3J0aW9uIG9mIHRoZSBzYW1wbGUuICIsIm9iamVjdElEIjoiODAwMzdfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjY6MjAyMCBXYXRlciBxdWFsaXR5IOKAlCBVcmFuaXVtIGlzb3RvcGVzIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBhbHBoYS1zcGVjdHJvbWV0cnkiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgdGhlIGNvbmRpdGlvbnMgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHVyYW5pdW0gaXNvdG9wZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIHNhbXBsZXMgb2YgZW52aXJvbm1lbnRhbCB3YXRlciAoaW5jbHVkaW5nIHNlYSB3YXRlcnMpIHVzaW5nIGFscGhhLXNwZWN0cm9tZXRyeSBhbmQgMjMyIFUgYXMgYSB5aWVsZCB0cmFjZXIuIEEgY2hlbWljYWwgc2VwYXJhdGlvbiBpcyByZXF1aXJlZCB0byBzZXBhcmF0ZSBhbmQgcHVyaWZ5IHVyYW5pdW0gZnJvbSBhIHRlc3QgcG9ydGlvbiBvZiB0aGUgc2FtcGxlLiAiLCJtYXRjaExldmVsIjoibm9uZSIsIm1hdGNoZWRXb3JkcyI6W119fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy80Ny83NDc3NiIsInV1aWQiOiI1NGIwYzJjMC02NDQyLTQ3NDQtODJmOS0wN2NiODBmYjA5ODkiLCJ0aXRsZSI6IklTTyAxMzE2MToyMDIwIFdhdGVyIHF1YWxpdHkg4oCUIFBvbG9uaXVtIDIxMCDigJQgVGVzdCBtZXRob2QgdXNpbmcgYWxwaGEgc3BlY3Ryb21ldHJ5Iiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAyMCwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgYSBtZXRob2QgZm9yIHRoZSBtZWFzdXJlbWVudCBvZiAyMTAgUG8gaW4gYWxsIHR5cGVzIG9mIHdhdGVycyBieSBhbHBoYSBzcGVjdHJvbWV0cnkuIFRoZSBtZXRob2QgaXMgYXBwbGljYWJsZSB0byB0ZXN0IHNhbXBsZXMgb2Ygc3VwcGx5L2RyaW5raW5nIHdhdGVyLCByYWlud2F0ZXIsIHN1cmZhY2UgYW5kIGdyb3VuZCB3YXRlciwgbWFyaW5lIHdhdGVyLCBhcyB3ZWxsIGFzIGNvb2xpbmcgd2F0ZXIsIGluZHVzdHJpYWwgd2F0ZXIsIGRvbWVzdGljLCBhbmQgaW5kdXN0cmlhbCB3YXN0ZXdhdGVyIGFmdGVyIHByb3BlciBzYW1wbGluZyBhbmQgaGFuZGxpbmcsIGFuZCB0ZXN0IHNhbXBsZSBwcmVwYXJhdGlvbi4gRmlsdHJhdGlvbiBvZiB0aGUgdGVzdCBzYW1wbGUgbWF5IGJlIHJlcXVpcmVkLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IGRlcGVuZHMgb24gdGhlIHNhbXBsZSB2b2x1bWUsIHRoZSBpbnN0cnVtZW50IHVzZWQsIHRoZSBjb3VudGluZyB0aW1lLCB0aGUgYmFja2dyb3VuZCBjb3VudCByYXRlLCB0aGUgZGV0ZWN0aW9uIGVmZmljaWVuY3kgYW5kIHRoZSBjaGVtaWNhbCB5aWVsZC4gVGhlIG1ldGhvZCBkZXNjcmliZWQgaW4gdGhpcyBkb2N1bWVudCwgdXNpbmcgY3VycmVudGx5IGF2YWlsYWJsZSBhbHBoYSBzcGVjdHJvbWV0cnkgYXBwYXJhdHVzLCBoYXMgYSBkZXRlY3Rpb24gbGltaXQgb2YgYXBwcm94aW1hdGVseSA1IG1CcSBsIOKIkjEgLCB3aGljaCBpcyBsb3dlciB0aGFuIHRoZSBXSE8gY3JpdGVyaWEgZm9yIHNhZmUgY29uc3VtcHRpb24gb2YgZHJpbmtpbmcgd2F0ZXIgKDEwMCBtQnEgbCDiiJIxICkuIFRoaXMgdmFsdWUgY2FuIGJlIGFjaGlldmVkIHdpdGggYSBjb3VudGluZyB0aW1lIG9mIDI0IGggZm9yIGEgc2FtcGxlIHZvbHVtZSBvZiA1MDAgbWwuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGluIHRoaXMgZG9jdW1lbnQgaXMgYWxzbyBhcHBsaWNhYmxlIGluIGFuIGVtZXJnZW5jeSBzaXR1YXRpb24uIFRoZSBhbmFseXNpcyBvZiAyMTAgUG8gYWRzb3JiZWQgdG8gc3VzcGVuZGVkIG1hdHRlciBpbiB0aGUgc2FtcGxlIGlzIG5vdCBjb3ZlcmVkIGJ5IHRoaXMgbWV0aG9kLiBJZiBzdXNwZW5kZWQgbWF0ZXJpYWwgaGFzIHRvIGJlIHJlbW92ZWQgb3IgYW5hbHlzZWQsIGZpbHRyYXRpb24gdXNpbmcgYSAwLDQ1IM68bSBmaWx0ZXIgaXMgcmVjb21tZW5kZWQuIFRoZSBhbmFseXNpcyBvZiB0aGUgaW5zb2x1YmxlIGZyYWN0aW9uIHJlcXVpcmVzIGEgbWluZXJhbGl6YXRpb24gc3RlcCB0aGF0IGlzIG5vdCBjb3ZlcmVkIGJ5IHRoaXMgZG9jdW1lbnQgWzEzXSAuIEluIHRoaXMgY2FzZSwgdGhlIG1lYXN1cmVtZW50IGlzIG1hZGUgb24gdGhlIGRpZmZlcmVudCBwaGFzZXMgb2J0YWluZWQuIFRoZSBmaW5hbCBhY3Rpdml0eSBpcyB0aGUgc3VtIG9mIGFsbCB0aGUgbWVhc3VyZWQgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMuIEl0IGlzIHRoZSB1c2VyJ3MgcmVzcG9uc2liaWxpdHkgdG8gZW5zdXJlIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB0aGUgd2F0ZXIgc2FtcGxlcyB0ZXN0ZWQuICIsIm9iamVjdElEIjoiNzQ3NzZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjE6MjAyMCBXYXRlciBxdWFsaXR5IOKAlCBQb2xvbml1bSAyMTAg4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGFscGhhIHNwZWN0cm9tZXRyeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyBhIG1ldGhvZCBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIDIxMCBQbyBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXJzIGJ5IGFscGhhIHNwZWN0cm9tZXRyeS4gVGhlIG1ldGhvZCBpcyBhcHBsaWNhYmxlIHRvIHRlc3Qgc2FtcGxlcyBvZiBzdXBwbHkvZHJpbmtpbmcgd2F0ZXIsIHJhaW53YXRlciwgc3VyZmFjZSBhbmQgZ3JvdW5kIHdhdGVyLCBtYXJpbmUgd2F0ZXIsIGFzIHdlbGwgYXMgY29vbGluZyB3YXRlciwgaW5kdXN0cmlhbCB3YXRlciwgZG9tZXN0aWMsIGFuZCBpbmR1c3RyaWFsIHdhc3Rld2F0ZXIgYWZ0ZXIgcHJvcGVyIHNhbXBsaW5nIGFuZCBoYW5kbGluZywgYW5kIHRlc3Qgc2FtcGxlIHByZXBhcmF0aW9uLiBGaWx0cmF0aW9uIG9mIHRoZSB0ZXN0IHNhbXBsZSBtYXkgYmUgcmVxdWlyZWQuIFRoZSBkZXRlY3Rpb24gbGltaXQgZGVwZW5kcyBvbiB0aGUgc2FtcGxlIHZvbHVtZSwgdGhlIGluc3RydW1lbnQgdXNlZCwgdGhlIGNvdW50aW5nIHRpbWUsIHRoZSBiYWNrZ3JvdW5kIGNvdW50IHJhdGUsIHRoZSBkZXRlY3Rpb24gZWZmaWNpZW5jeSBhbmQgdGhlIGNoZW1pY2FsIHlpZWxkLiBUaGUgbWV0aG9kIGRlc2NyaWJlZCBpbiB0aGlzIGRvY3VtZW50LCB1c2luZyBjdXJyZW50bHkgYXZhaWxhYmxlIGFscGhhIHNwZWN0cm9tZXRyeSBhcHBhcmF0dXMsIGhhcyBhIGRldGVjdGlvbiBsaW1pdCBvZiBhcHByb3hpbWF0ZWx5IDUgbUJxIGwg4oiSMSAsIHdoaWNoIGlzIGxvd2VyIHRoYW4gdGhlIFdITyBjcml0ZXJpYSBmb3Igc2FmZSBjb25zdW1wdGlvbiBvZiBkcmlua2luZyB3YXRlciAoMTAwIG1CcSBsIOKIkjEgKS4gVGhpcyB2YWx1ZSBjYW4gYmUgYWNoaWV2ZWQgd2l0aCBhIGNvdW50aW5nIHRpbWUgb2YgMjQgaCBmb3IgYSBzYW1wbGUgdm9sdW1lIG9mIDUwMCBtbC4gVGhlIG1ldGhvZCBkZXNjcmliZWQgaW4gdGhpcyBkb2N1bWVudCBpcyBhbHNvIGFwcGxpY2FibGUgaW4gYW4gZW1lcmdlbmN5IHNpdHVhdGlvbi4gVGhlIGFuYWx5c2lzIG9mIDIxMCBQbyBhZHNvcmJlZCB0byBzdXNwZW5kZWQgbWF0dGVyIGluIHRoZSBzYW1wbGUgaXMgbm90IGNvdmVyZWQgYnkgdGhpcyBtZXRob2QuIElmIHN1c3BlbmRlZCBtYXRlcmlhbCBoYXMgdG8gYmUgcmVtb3ZlZCBvciBhbmFseXNlZCwgZmlsdHJhdGlvbiB1c2luZyBhIDAsNDUgzrxtIGZpbHRlciBpcyByZWNvbW1lbmRlZC4gVGhlIGFuYWx5c2lzIG9mIHRoZSBpbnNvbHVibGUgZnJhY3Rpb24gcmVxdWlyZXMgYSBtaW5lcmFsaXphdGlvbiBzdGVwIHRoYXQgaXMgbm90IGNvdmVyZWQgYnkgdGhpcyBkb2N1bWVudCBbMTNdIC4gSW4gdGhpcyBjYXNlLCB0aGUgbWVhc3VyZW1lbnQgaXMgbWFkZSBvbiB0aGUgZGlmZmVyZW50IHBoYXNlcyBvYnRhaW5lZC4gVGhlIGZpbmFsIGFjdGl2aXR5IGlzIHRoZSBzdW0gb2YgYWxsIHRoZSBtZWFzdXJlZCBhY3Rpdml0eSBjb25jZW50cmF0aW9ucy4gSXQgaXMgdGhlIHVzZXIncyByZXNwb25zaWJpbGl0eSB0byBlbnN1cmUgdGhlIHZhbGlkaXR5IG9mIHRoaXMgdGVzdCBtZXRob2QgZm9yIHRoZSB3YXRlciBzYW1wbGVzIHRlc3RlZC4gIiwibWF0Y2hMZXZlbCI6Im5vbmUiLCJtYXRjaGVkV29yZHMiOltdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDcvNDMvNzQzMzciLCJ1dWlkIjoiYjA3MmM0MGEtN2U4Ni00Y2RhLWI4NTMtNGE0MDlmMzNhODhiIiwidGl0bGUiOiJJU08gMTMxODUtNDoyMDIwIEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIOKAlCBWZWhpY2xlIGludGVyZmFjZSBmb3IgcHJvdmlzaW9uaW5nIGFuZCBzdXBwb3J0IG9mIElUUyBTZXJ2aWNlcyDigJQgUGFydCA0OiBVbmlmaWVkIHZlaGljbGUgaW50ZXJmYWNlIHByb3RvY29sIChVVklQKSBjb25mb3JtYW5jZSB0ZXN0IHNwZWNpZmljYXRpb24iLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIwLCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyBhIGNvbmZvcm1hbmNlIHRlc3QgZm9yIGEgVVZJUCBzZXJ2ZXIgYW5kIGNsaWVudCBzeXN0ZW0gZGV2ZWxvcGVyIGFzc2Vzc21lbnQgb2Ygc2VsZi1jb25mb3JtYW5jZSBvZiB0aGUgc3VwcGxpZXIncyBVVklQIHNlcnZlciBhbmQgY2xpZW50IHN5c3RlbS4gVGhlIGNvbmZvcm1hbmNlIHRlc3QgY2FzZXMgZm9sbG93IHRoZSB1c2UgY2FzZXMgZGVmaW5pdGlvbiBvZiBJU08gMTMxODUtMSBhbmQgdGhlIHJlcXVpcmVtZW50cyBzdGF0ZWQgaW4gSVNPIDEzMTg1LTIgYW5kIElTTyAxMzE4NS0zLiBUaGUgcHVycG9zZSBvZiB0aGlzIGRvY3VtZW50IGlzIHRvIHByb3ZpZGUgaW5mb3JtYXRpb24gdG8gdGhlIFVWSVAgc2VydmVyIGFuZCBjbGllbnQgc3lzdGVtIHByb3ZpZGVyIHRvIGJ1aWxkIGFuZCB0ZXN0IHRoZSBVVklQIHNlcnZlciBhbmQgY2xpZW50IHN5c3RlbSBhZ2FpbnN0IHRoZSBjb25mb3JtYW5jZSB0ZXN0IGNhc2VzLiAiLCJvYmplY3RJRCI6Ijc0MzM3XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg1LTQ6MjAyMCBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgVmVoaWNsZSBpbnRlcmZhY2UgZm9yIHByb3Zpc2lvbmluZyBhbmQgc3VwcG9ydCBvZiBJVFMgU2VydmljZXMg4oCUIFBhcnQgNDogVW5pZmllZCB2ZWhpY2xlIGludGVyZmFjZSBwcm90b2NvbCAoVVZJUCkgY29uZm9ybWFuY2UgdGVzdCBzcGVjaWZpY2F0aW9uIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIGEgY29uZm9ybWFuY2UgdGVzdCBmb3IgYSBVVklQIHNlcnZlciBhbmQgY2xpZW50IHN5c3RlbSBkZXZlbG9wZXIgYXNzZXNzbWVudCBvZiBzZWxmLWNvbmZvcm1hbmNlIG9mIHRoZSBzdXBwbGllcidzIFVWSVAgc2VydmVyIGFuZCBjbGllbnQgc3lzdGVtLiBUaGUgY29uZm9ybWFuY2UgdGVzdCBjYXNlcyBmb2xsb3cgdGhlIHVzZSBjYXNlcyBkZWZpbml0aW9uIG9mIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NS0xIGFuZCB0aGUgcmVxdWlyZW1lbnRzIHN0YXRlZCBpbiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODUtMiBhbmQgPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg1LTMuIFRoZSBwdXJwb3NlIG9mIHRoaXMgZG9jdW1lbnQgaXMgdG8gcHJvdmlkZSBpbmZvcm1hdGlvbiB0byB0aGUgVVZJUCBzZXJ2ZXIgYW5kIGNsaWVudCBzeXN0ZW0gcHJvdmlkZXIgdG8gYnVpbGQgYW5kIHRlc3QgdGhlIFVWSVAgc2VydmVyIGFuZCBjbGllbnQgc3lzdGVtIGFnYWluc3QgdGhlIGNvbmZvcm1hbmNlIHRlc3QgY2FzZXMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzMxLzYzMTM1IiwidXVpZCI6IjUxYTg0YzY2LWMwNmYtNGUyNS1hZGM4LTY0Y2I4MmZiZjJiMyIsInRpdGxlIjoiSVNPIDEzMTE2OjIwMTQgRGVudGlzdHJ5IOKAlCBUZXN0IG1ldGhvZCBmb3IgZGV0ZXJtaW5pbmcgcmFkaW8tb3BhY2l0eSBvZiBtYXRlcmlhbHMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIwLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxMTY6MjAxNCBzcGVjaWZpZXMgdGVzdCBtZXRob2RzIGZvciBkZXRlcm1pbmF0aW9uIG9mIHJhZGlvLW9wYWNpdHkgb2YgYSB0ZXN0IG1hdGVyaWFsIGJ5IHJlZmVyZW5jZSB0byBhIHNwZWNpbWVuIG9mIGFuIGFsdW1pbml1bSBzdGFuZGFyZC4gVGhlIG1ldGhvZCBpcyBkZXNpZ25lZCB0byBkaXNjcmltaW5hdGUgcmFkaW8tb3BhY2l0eSBhdCBhIGNsaW5pY2FsbHkgbWVhbmluZ2Z1bCBsZXZlbCBhbmQgaXMgbm90IGRlc2lnbmVkIHRvIHRha2UgYWNjb3VudCBvZiBmYWN0b3JzIHdoaWNoIG1heSBhZmZlY3QgcHJlY2lzZSwgaW5oZXJlbnQgdmFsdWVzIG9mIHJhZGlvLW9wYWNpdHkgc3VjaCBhcyBiYWNrZ3JvdW5kIG5vaXNlLCBYLXJheSBiZWFtIHBvd2VyLCBncmV5IHNjYWxlIGNvcnJlY3Rpb24gYW5kIGltYWdlIGVuaGFuY2VtZW50LiBJdCBpcyByZWNvZ25pemVkIHRoYXQgc3VjaCBmYWN0b3JzIGNhbiBjaGFuZ2UgdGhlIHZhbHVlIG9mIHJhZGlvLW9wYWNpdHkgYnV0IG5vdCB0aGUgcmVsYXRpdmUgcmFua2luZyBjb21wYXJlZCB0byBzdGFuZGFyZCB0aGlja25lc3NlcyBvZiBhbiBpbnRlcm5hbCBzdGFuZGFyZCBzdWNoIGFzIGFsdW1pbml1bS4gVGhpcyB0ZXN0IG1heSBiZSBwZXJmb3JtZWQgd2l0aCBjb252ZW50aW9uYWwgb3IgZGlnaXRhbCBzZW5zb3JpbmcgdGVjaG5pcXVlcyBvZiBkZW50YWwgWC1yYXkgYXBwYXJhdHVzLiAiLCJvYmplY3RJRCI6IjYzMTM1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjE2OjIwMTQgRGVudGlzdHJ5IOKAlCBUZXN0IG1ldGhvZCBmb3IgZGV0ZXJtaW5pbmcgcmFkaW8tb3BhY2l0eSBvZiBtYXRlcmlhbHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjE2OjIwMTQgc3BlY2lmaWVzIHRlc3QgbWV0aG9kcyBmb3IgZGV0ZXJtaW5hdGlvbiBvZiByYWRpby1vcGFjaXR5IG9mIGEgdGVzdCBtYXRlcmlhbCBieSByZWZlcmVuY2UgdG8gYSBzcGVjaW1lbiBvZiBhbiBhbHVtaW5pdW0gc3RhbmRhcmQuIFRoZSBtZXRob2QgaXMgZGVzaWduZWQgdG8gZGlzY3JpbWluYXRlIHJhZGlvLW9wYWNpdHkgYXQgYSBjbGluaWNhbGx5IG1lYW5pbmdmdWwgbGV2ZWwgYW5kIGlzIG5vdCBkZXNpZ25lZCB0byB0YWtlIGFjY291bnQgb2YgZmFjdG9ycyB3aGljaCBtYXkgYWZmZWN0IHByZWNpc2UsIGluaGVyZW50IHZhbHVlcyBvZiByYWRpby1vcGFjaXR5IHN1Y2ggYXMgYmFja2dyb3VuZCBub2lzZSwgWC1yYXkgYmVhbSBwb3dlciwgZ3JleSBzY2FsZSBjb3JyZWN0aW9uIGFuZCBpbWFnZSBlbmhhbmNlbWVudC4gSXQgaXMgcmVjb2duaXplZCB0aGF0IHN1Y2ggZmFjdG9ycyBjYW4gY2hhbmdlIHRoZSB2YWx1ZSBvZiByYWRpby1vcGFjaXR5IGJ1dCBub3QgdGhlIHJlbGF0aXZlIHJhbmtpbmcgY29tcGFyZWQgdG8gc3RhbmRhcmQgdGhpY2tuZXNzZXMgb2YgYW4gaW50ZXJuYWwgc3RhbmRhcmQgc3VjaCBhcyBhbHVtaW5pdW0uIFRoaXMgdGVzdCBtYXkgYmUgcGVyZm9ybWVkIHdpdGggY29udmVudGlvbmFsIG9yIGRpZ2l0YWwgc2Vuc29yaW5nIHRlY2huaXF1ZXMgb2YgZGVudGFsIFgtcmF5IGFwcGFyYXR1cy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvNjgvNTY4MjEiLCJ1dWlkIjoiOTMyODQyZTQtNDljNS00MTlkLWE2MGItMzQ2YzUzYjlhNmZiIiwidGl0bGUiOiJJU08gMTMxODUtMjoyMDE1IEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIOKAlCBWZWhpY2xlIGludGVyZmFjZSBmb3IgcHJvdmlzaW9uaW5nIGFuZCBzdXBwb3J0IG9mIElUUyBzZXJ2aWNlcyDigJQgUGFydCAyOiBVbmlmaWVkIGdhdGV3YXkgcHJvdG9jb2wgKFVHUCkgcmVxdWlyZW1lbnRzIGFuZCBzcGVjaWZpY2F0aW9uIGZvciB2ZWhpY2xlIElUUyBzdGF0aW9uIGdhdGV3YXkgKFYtSVRTLVNHKSBpbnRlcmZhY2UiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIwLCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxODUtMjoyMDE1IHNwZWNpZmllcyB0aGUgcmVxdWlyZW1lbnRzIG9mIGFuIEFTTi4xLWJhc2VkIHByb3RvY29sIGJldHdlZW4gYSB2ZWhpY2xlLUlUUy1TdGF0aW9uIEdhdGV3YXkgKFYtSVRTLVNHKSBhbmQgYSBub21hZGljIGFuZC9vciBtb2JpbGUgZGV2aWNlIChORCkgdG8gZWFzaWx5IGV4Y2hhbmdlIHZlaGljbGUgaW5mb3JtYXRpb24gZGF0YS4gVGhlIEFTTi4xLWJhc2VkIHByb3RvY29sIGhhcyBiZWVuIHNwZWNpZmllZCB0byBzdXBwb3J0IGEgd2lyZWQgb3Igd2lyZWxlc3MgY29ubmVjdGlvbiBiZXR3ZWVuIHRoZSBORCBhbmQgVi1JVFMtU0cuIFRoZSBVbmlmaWVkIEdhdGV3YXkgUHJvdG9jb2wgKFVHUCkgaXMgdXNlZCBiZXR3ZWVuIHRoZSBWLUlUUy1TRyBhbmQgdGhlIE5ELiBVR1Agc3VwcG9ydHMgc2V2ZXJhbCBmZWF0dXJlcyBpbiBvcmRlciB0byBwcm92aWRlIMK3ICAgICAgICAgYXV0aG9yaXphdGlvbiAoZGF0YSBwcml2YWN5KSwgwrcgICAgICAgICBzZWN1cmVkIGFjY2VzcywgwrcgICAgICAgICBWLUlUUy1TRyBhbmQgaW4tdmVoaWNsZSBFQ1VzIGlkZW50aWZpY2F0aW9uLCDCtyAgICAgICAgIHJlYWwtdGltZSB2ZWhpY2xlIGRhdGEgcGFyYW1ldGVycyB3aXRoIGlkZW50aWZpZXIgYW5kIHR5cGUgaW5mb3JtYXRpb24gaW4gQVNOLjEgZm9ybWF0LCBhbmQgwrcgICAgICAgICBlbmhhbmNlZCB2ZWhpY2xlIGRhdGEgcGFyYW1ldGVycyB3aXRoIGlkZW50aWZpZXIgYW5kIHR5cGUgaW5mb3JtYXRpb24gaW4gQVNOLjEgZm9ybWF0LiAiLCJvYmplY3RJRCI6IjU2ODIxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg1LTI6MjAxNSBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgVmVoaWNsZSBpbnRlcmZhY2UgZm9yIHByb3Zpc2lvbmluZyBhbmQgc3VwcG9ydCBvZiBJVFMgc2VydmljZXMg4oCUIFBhcnQgMjogVW5pZmllZCBnYXRld2F5IHByb3RvY29sIChVR1ApIHJlcXVpcmVtZW50cyBhbmQgc3BlY2lmaWNhdGlvbiBmb3IgdmVoaWNsZSBJVFMgc3RhdGlvbiBnYXRld2F5IChWLUlUUy1TRykgaW50ZXJmYWNlIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NS0yOjIwMTUgc3BlY2lmaWVzIHRoZSByZXF1aXJlbWVudHMgb2YgYW4gQVNOLjEtYmFzZWQgcHJvdG9jb2wgYmV0d2VlbiBhIHZlaGljbGUtSVRTLVN0YXRpb24gR2F0ZXdheSAoVi1JVFMtU0cpIGFuZCBhIG5vbWFkaWMgYW5kL29yIG1vYmlsZSBkZXZpY2UgKE5EKSB0byBlYXNpbHkgZXhjaGFuZ2UgdmVoaWNsZSBpbmZvcm1hdGlvbiBkYXRhLiBUaGUgQVNOLjEtYmFzZWQgcHJvdG9jb2wgaGFzIGJlZW4gc3BlY2lmaWVkIHRvIHN1cHBvcnQgYSB3aXJlZCBvciB3aXJlbGVzcyBjb25uZWN0aW9uIGJldHdlZW4gdGhlIE5EIGFuZCBWLUlUUy1TRy4gVGhlIFVuaWZpZWQgR2F0ZXdheSBQcm90b2NvbCAoVUdQKSBpcyB1c2VkIGJldHdlZW4gdGhlIFYtSVRTLVNHIGFuZCB0aGUgTkQuIFVHUCBzdXBwb3J0cyBzZXZlcmFsIGZlYXR1cmVzIGluIG9yZGVyIHRvIHByb3ZpZGUgwrcgICAgICAgICBhdXRob3JpemF0aW9uIChkYXRhIHByaXZhY3kpLCDCtyAgICAgICAgIHNlY3VyZWQgYWNjZXNzLCDCtyAgICAgICAgIFYtSVRTLVNHIGFuZCBpbi12ZWhpY2xlIEVDVXMgaWRlbnRpZmljYXRpb24sIMK3ICAgICAgICAgcmVhbC10aW1lIHZlaGljbGUgZGF0YSBwYXJhbWV0ZXJzIHdpdGggaWRlbnRpZmllciBhbmQgdHlwZSBpbmZvcm1hdGlvbiBpbiBBU04uMSBmb3JtYXQsIGFuZCDCtyAgICAgICAgIGVuaGFuY2VkIHZlaGljbGUgZGF0YSBwYXJhbWV0ZXJzIHdpdGggaWRlbnRpZmllciBhbmQgdHlwZSBpbmZvcm1hdGlvbiBpbiBBU04uMSBmb3JtYXQuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzM0LzUzNDk0IiwidXVpZCI6IjhjZGY4MmU4LTlmMmQtNDJmYi05ZDEzLTA2ZGE5YTdiZDk1NSIsInRpdGxlIjoiSVNPIDEzMTk5OjIwMTIgU3RhdGlvbmFyeSBzb3VyY2UgZW1pc3Npb25zIOKAlCBEZXRlcm1pbmF0aW9uIG9mIHRvdGFsIHZvbGF0aWxlIG9yZ2FuaWMgY29tcG91bmRzIChUVk9DcykgaW4gd2FzdGUgZ2FzZXMgZnJvbSBub24tY29tYnVzdGlvbiBwcm9jZXNzZXMg4oCUIE5vbi1kaXNwZXJzaXZlIGluZnJhcmVkIGFuYWx5c2VyIGVxdWlwcGVkIHdpdGggY2F0YWx5dGljIGNvbnZlcnRlciIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjAsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE5OToyMDEyIHNwZWNpZmllcyB0aGUgcHJpbmNpcGxlLCB0aGUgZXNzZW50aWFsIHBlcmZvcm1hbmNlIGNyaXRlcmlhIGFuZCBxdWFsaXR5IGFzc3VyYW5jZS9xdWFsaXR5IGNvbnRyb2wgKFFBL1FDKSBwcm9jZWR1cmVzIG9mIGFuIGF1dG9tYXRpYyBtZXRob2QgZm9yIG1lYXN1cmluZyB0b3RhbCB2b2xhdGlsZSBvcmdhbmljIGNvbXBvdW5kIChUVk9DKSBjb250ZW50IGluIHdhc3RlIGdhc2VzIG9mIHN0YXRpb25hcnkgc291cmNlcywgdXNpbmcgYSBub24tZGlzcGVyc2l2ZSBpbmZyYXJlZCBhYnNvcnB0aW9uIChORElSKSBhbmFseXNlciBlcXVpcHBlZCB3aXRoIGEgY2F0YWx5dGljIGNvbnZlcnRlciB3aGljaCBveGlkaXplcyBWT0MgdG8gY2FyYm9uIGRpb3hpZGUuIFRoaXMgbWV0aG9kIGlzIHN1aXRhYmxlIGZvciB0aGUgbWVhc3VyZW1lbnQgb2YgVFZPQyBlbWlzc2lvbnMgZnJvbSBub24tY29tYnVzdGlvbiBwcm9jZXNzZXMuIFRoaXMgbWV0aG9kIGFsbG93cyBjb250aW51b3VzIG1vbml0b3Jpbmcgd2l0aCBwZXJtYW5lbnRseSBpbnN0YWxsZWQgbWVhc3VyaW5nIHN5c3RlbXMsIGFzIHdlbGwgYXMgaW50ZXJtaXR0ZW50IG1lYXN1cmVtZW50cyBvZiBUVk9DIGVtaXNzaW9ucy4gVGhlIG1ldGhvZCBoYXMgYmVlbiB0ZXN0ZWQgb24gZmllbGQgb3BlcmF0aW9uIGZvciBwYWludGluZyBhbmQgcHJpbnRpbmcgcHJvY2Vzc2VzLCB3aGVyZSBUVk9DIGNvbmNlbnRyYXRpb25zIGluIHRoZSB3YXN0ZSBnYXNlcyB3ZXJlIGZyb20gYWJvdXQgNzAgbWcvbSAzIHRvIDYwMCBtZy9tIDMgLiAiLCJvYmplY3RJRCI6IjUzNDk0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjk5OjIwMTIgU3RhdGlvbmFyeSBzb3VyY2UgZW1pc3Npb25zIOKAlCBEZXRlcm1pbmF0aW9uIG9mIHRvdGFsIHZvbGF0aWxlIG9yZ2FuaWMgY29tcG91bmRzIChUVk9DcykgaW4gd2FzdGUgZ2FzZXMgZnJvbSBub24tY29tYnVzdGlvbiBwcm9jZXNzZXMg4oCUIE5vbi1kaXNwZXJzaXZlIGluZnJhcmVkIGFuYWx5c2VyIGVxdWlwcGVkIHdpdGggY2F0YWx5dGljIGNvbnZlcnRlciIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+OTk6MjAxMiBzcGVjaWZpZXMgdGhlIHByaW5jaXBsZSwgdGhlIGVzc2VudGlhbCBwZXJmb3JtYW5jZSBjcml0ZXJpYSBhbmQgcXVhbGl0eSBhc3N1cmFuY2UvcXVhbGl0eSBjb250cm9sIChRQS9RQykgcHJvY2VkdXJlcyBvZiBhbiBhdXRvbWF0aWMgbWV0aG9kIGZvciBtZWFzdXJpbmcgdG90YWwgdm9sYXRpbGUgb3JnYW5pYyBjb21wb3VuZCAoVFZPQykgY29udGVudCBpbiB3YXN0ZSBnYXNlcyBvZiBzdGF0aW9uYXJ5IHNvdXJjZXMsIHVzaW5nIGEgbm9uLWRpc3BlcnNpdmUgaW5mcmFyZWQgYWJzb3JwdGlvbiAoTkRJUikgYW5hbHlzZXIgZXF1aXBwZWQgd2l0aCBhIGNhdGFseXRpYyBjb252ZXJ0ZXIgd2hpY2ggb3hpZGl6ZXMgVk9DIHRvIGNhcmJvbiBkaW94aWRlLiBUaGlzIG1ldGhvZCBpcyBzdWl0YWJsZSBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIFRWT0MgZW1pc3Npb25zIGZyb20gbm9uLWNvbWJ1c3Rpb24gcHJvY2Vzc2VzLiBUaGlzIG1ldGhvZCBhbGxvd3MgY29udGludW91cyBtb25pdG9yaW5nIHdpdGggcGVybWFuZW50bHkgaW5zdGFsbGVkIG1lYXN1cmluZyBzeXN0ZW1zLCBhcyB3ZWxsIGFzIGludGVybWl0dGVudCBtZWFzdXJlbWVudHMgb2YgVFZPQyBlbWlzc2lvbnMuIFRoZSBtZXRob2QgaGFzIGJlZW4gdGVzdGVkIG9uIGZpZWxkIG9wZXJhdGlvbiBmb3IgcGFpbnRpbmcgYW5kIHByaW50aW5nIHByb2Nlc3Nlcywgd2hlcmUgVFZPQyBjb25jZW50cmF0aW9ucyBpbiB0aGUgd2FzdGUgZ2FzZXMgd2VyZSBmcm9tIGFib3V0IDcwIG1nL20gMyB0byA2MDAgbWcvbSAzIC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzQvNTM0NDciLCJ1dWlkIjoiZDFhNzRlYjYtY2UzYy00ZjNhLWE1ODEtNzVhZjM0NWMzMjNjIiwidGl0bGUiOiJJU08gMTMxNzUtMzoyMDEyIEltcGxhbnRzIGZvciBzdXJnZXJ5IOKAlCBDYWxjaXVtIHBob3NwaGF0ZXMg4oCUIFBhcnQgMzogSHlkcm94eWFwYXRpdGUgYW5kIGJldGEtdHJpY2FsY2l1bSBwaG9zcGhhdGUgYm9uZSBzdWJzdGl0dXRlcyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjAsIm9yZGVyIjoxMSwidGV4dCI6IjEgU2NvcGUgVGhpcyBwYXJ0IG9mIElTTyAxMzE3NSBzcGVjaWZpZXMgcmVxdWlyZW1lbnRzIGZvciBtb25vcGhhc2ljIGh5ZHJveHlhcGF0aXRlIGJvbmUgc3Vic3RpdHV0ZXMsIG1vbm9waGFzaWMgzrItdHJpY2FsY2l1bSBwaG9zcGhhdGUgYm9uZSBzdWJzdGl0dXRlcyBhbmQgYmlwaGFzaWMgaHlkcm94eWFwYXRpdGUvzrItdHJpY2FsY2l1bSBwaG9zcGhhdGUgYm9uZSBzdWJzdGl0dXRlcyBpbiB0aGUgZm9ybSBvZiBibG9ja3Mgb3IgZ3JhbnVsZXMuIFRoaXMgcGFydCBvZiBJU08gMTMxNzUgaXMgbm90IGFwcGxpY2FibGUgdG8gY2VsbC1zZWVkZWQgYm9uZSB2b2lkIGZpbGxlcnMsIGNhbGNpdW0gcGhvc3BoYXRlIGNlbWVudHMgb3IgYm9uZSB2b2lkIGZpbGxlcnMgY29udGFpbmluZyBtYXRlcmlhbHMgb3RoZXIgdGhhbiBoeWRyb3h5YXBhdGl0ZSBhbmQgzrItdHJpY2FsY2l1bSBwaG9zcGhhdGUuICIsIm9iamVjdElEIjoiNTM0NDdfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzUtMzoyMDEyIEltcGxhbnRzIGZvciBzdXJnZXJ5IOKAlCBDYWxjaXVtIHBob3NwaGF0ZXMg4oCUIFBhcnQgMzogSHlkcm94eWFwYXRpdGUgYW5kIGJldGEtdHJpY2FsY2l1bSBwaG9zcGhhdGUgYm9uZSBzdWJzdGl0dXRlcyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiIxIFNjb3BlIFRoaXMgcGFydCBvZiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzUgc3BlY2lmaWVzIHJlcXVpcmVtZW50cyBmb3IgbW9ub3BoYXNpYyBoeWRyb3h5YXBhdGl0ZSBib25lIHN1YnN0aXR1dGVzLCBtb25vcGhhc2ljIM6yLXRyaWNhbGNpdW0gcGhvc3BoYXRlIGJvbmUgc3Vic3RpdHV0ZXMgYW5kIGJpcGhhc2ljIGh5ZHJveHlhcGF0aXRlL86yLXRyaWNhbGNpdW0gcGhvc3BoYXRlIGJvbmUgc3Vic3RpdHV0ZXMgaW4gdGhlIGZvcm0gb2YgYmxvY2tzIG9yIGdyYW51bGVzLiBUaGlzIHBhcnQgb2YgPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjc1IGlzIG5vdCBhcHBsaWNhYmxlIHRvIGNlbGwtc2VlZGVkIGJvbmUgdm9pZCBmaWxsZXJzLCBjYWxjaXVtIHBob3NwaGF0ZSBjZW1lbnRzIG9yIGJvbmUgdm9pZCBmaWxsZXJzIGNvbnRhaW5pbmcgbWF0ZXJpYWxzIG90aGVyIHRoYW4gaHlkcm94eWFwYXRpdGUgYW5kIM6yLXRyaWNhbGNpdW0gcGhvc3BoYXRlLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQwOSIsInV1aWQiOiI1ODQwNDBmMS1mODdiLTRiODYtODhiNS1hNGQ4NDAzNjY0M2UiLCJ0aXRsZSI6IklTTyAxMzE2ODoyMDE1IFdhdGVyIHF1YWxpdHkg4oCUIFNpbXVsdGFuZW91cyBkZXRlcm1pbmF0aW9uIG9mIHRyaXRpdW0gYW5kIGNhcmJvbiAxNCBhY3Rpdml0aWVzIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjAsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE2ODoyMDE1IGRlc2NyaWJlcyBhIHRlc3QgbWV0aG9kIGZvciB0aGUgc2ltdWx0YW5lb3VzIG1lYXN1cmVtZW50IG9mIHRyaXRpdW0gYW5kIGNhcmJvbi0xNCBpbiB3YXRlciBzYW1wbGVzIGJ5IGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIG9mIGEgc291cmNlIG9idGFpbmVkIGJ5IG1peGluZyB0aGUgd2F0ZXIgc2FtcGxlIHdpdGggYSBoeWRyb3BoaWxpYyBzY2ludGlsbGF0aW9uIGNvY2t0YWlsLiBUaGlzIGlzIGNvbnNpZGVyZWQgYSBzY3JlZW5pbmcgbWV0aG9kIGJlY2F1c2Ugb2YgdGhlIHBvdGVudGlhbCBwcmVzZW5jZSBvZiBpbnRlcmZlcmluZyBudWNsaWRlcyBpbiB0aGUgdGVzdCBzYW1wbGUuIFRoZSBtZXRob2QgY2FuIGJlIHVzZWQgZm9yIGFueSB0eXBlIG9mIGVudmlyb25tZW50YWwgc3R1ZHkgb3IgbW9uaXRvcmluZy4gSVNPIDEzMTY4OjIwMTUgaXMgYXBwbGljYWJsZSB0byBhbGwgdHlwZXMgb2Ygd2F0ZXJzIGhhdmluZyBhbiBhY3Rpdml0eSBjb25jZW50cmF0aW9uIHJhbmdpbmcgZnJvbSA1IEJxL2wgdG8gMTAgNiBCcS9sICh1cHBlciBsaW1pdCBvZiB0aGUgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRlcnMgZm9yIGRpcmVjdCBjb3VudGluZykuIEZvciBoaWdoZXIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMsIHRoZSBzYW1wbGUgY2FuIGJlIGRpbHV0ZWQgdG8gb2J0YWluIGEgdGVzdCBzYW1wbGUgd2l0aGluIHRoaXMgcmFuZ2UuICIsIm9iamVjdElEIjoiNTM0MDlfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Njg6MjAxNSBXYXRlciBxdWFsaXR5IOKAlCBTaW11bHRhbmVvdXMgZGV0ZXJtaW5hdGlvbiBvZiB0cml0aXVtIGFuZCBjYXJib24gMTQgYWN0aXZpdGllcyDigJQgVGVzdCBtZXRob2QgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjY4OjIwMTUgZGVzY3JpYmVzIGEgdGVzdCBtZXRob2QgZm9yIHRoZSBzaW11bHRhbmVvdXMgbWVhc3VyZW1lbnQgb2YgdHJpdGl1bSBhbmQgY2FyYm9uLTE0IGluIHdhdGVyIHNhbXBsZXMgYnkgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgb2YgYSBzb3VyY2Ugb2J0YWluZWQgYnkgbWl4aW5nIHRoZSB3YXRlciBzYW1wbGUgd2l0aCBhIGh5ZHJvcGhpbGljIHNjaW50aWxsYXRpb24gY29ja3RhaWwuIFRoaXMgaXMgY29uc2lkZXJlZCBhIHNjcmVlbmluZyBtZXRob2QgYmVjYXVzZSBvZiB0aGUgcG90ZW50aWFsIHByZXNlbmNlIG9mIGludGVyZmVyaW5nIG51Y2xpZGVzIGluIHRoZSB0ZXN0IHNhbXBsZS4gVGhlIG1ldGhvZCBjYW4gYmUgdXNlZCBmb3IgYW55IHR5cGUgb2YgZW52aXJvbm1lbnRhbCBzdHVkeSBvciBtb25pdG9yaW5nLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Njg6MjAxNSBpcyBhcHBsaWNhYmxlIHRvIGFsbCB0eXBlcyBvZiB3YXRlcnMgaGF2aW5nIGFuIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gcmFuZ2luZyBmcm9tIDUgQnEvbCB0byAxMCA2IEJxL2wgKHVwcGVyIGxpbWl0IG9mIHRoZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGVycyBmb3IgZGlyZWN0IGNvdW50aW5nKS4gRm9yIGhpZ2hlciBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgdGhlIHNhbXBsZSBjYW4gYmUgZGlsdXRlZCB0byBvYnRhaW4gYSB0ZXN0IHNhbXBsZSB3aXRoaW4gdGhpcyByYW5nZS4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvOTMvNjkzMTgiLCJ1dWlkIjoiYmFmNDI5YzAtYTFmNS00OTllLTkwYjUtYjFiYzdhM2IxYzlhIiwidGl0bGUiOiJJU08gMTMxMjA6MjAxOSBIZWFsdGggaW5mb3JtYXRpY3Mg4oCUIFN5bnRheCB0byByZXByZXNlbnQgdGhlIGNvbnRlbnQgb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIOKAlCBDbGFzc2lmaWNhdGlvbiBNYXJrdXAgTGFuZ3VhZ2UgKENsYU1MKSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTksIm9yZGVyIjoxMSwidGV4dCI6IlRoZSBtYWluIHB1cnBvc2Ugb2YgQ2xhTUwgaXMgdG8gZm9ybWFsbHkgcmVwcmVzZW50IHRoZSBjb250ZW50IGFuZCBoaWVyYXJjaGljYWwgc3RydWN0dXJlIG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtcyBpbiBhIG1hcmt1cCBsYW5ndWFnZSBmb3IgdGhlIHNhZmUgZXhjaGFuZ2UgYW5kIGRpc3RyaWJ1dGlvbiBvZiBkYXRhIGFuZCBzdHJ1Y3R1cmUgYmV0d2VlbiBvcmdhbml6YXRpb25zIGFuZCBkaXNzaW1pbGFyIHNvZnR3YXJlIHByb2R1Y3RzLiBUaGUgc2NvcGUgb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIGNvdmVyZWQgYnkgdGhpcyBkb2N1bWVudCBlbmNvbXBhc3NlcyB0ZXJtaW5vbG9naWVzLCBhbmQgaXMgY29uc3RyYWluZWQgdG8gdHJhZGl0aW9uYWwgcGFwZXItYmFzZWQgc3lzdGVtcyAobGlrZSBJQ0QtMTApIGFuZCBzeXN0ZW1zIGJ1aWx0IGFjY29yZGluZyB0byBjYXRlZ29yaWFsIHN0cnVjdHVyZXMgYW5kIGEgY3Jvc3MgdGhlc2F1cnVzIChsaWtlIElDTlApWzJdLiBDbGFNTCBpcyBpbnRlbmRlZCBmb3IgcmVwcmVzZW50YXRpb24gb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIGluIHdoaWNoIGNsYXNzZXMgaGF2ZSB0ZXh0dWFsIGRlZmluaXRpb25zLCBoaWVyYXJjaGljYWwgb3JkZXJpbmcsIG5hbWVkIGhpZXJhcmNoaWNhbCBsZXZlbHMgKHN1Y2ggYXMgXCJjaGFwdGVyXCIsIFwic2VjdGlvblwiKSwgaW5jbHVzaW9uIGFuZCBleGNsdXNpb24gY3JpdGVyaWEsIGFuZCBjb2Rlcy4gSXQgaXMgbm90IGludGVuZGVkIHRvIGNvdmVyIGFueSBmb3JtYWwgcmVwcmVzZW50YXRpb24sIG5laXRoZXIgZm9yIGRlZmluaXRpb24gb3IgY29tcG9zaXRpb24gb2YgY29uY2VwdHMsIG5vciBmb3Igc3BlY2lmaWNhdGlvbiBvZiBjbGFzc2lmaWNhdGlvbiBydWxlcy4gU3lzdGVtcyB3aXRoIHN1Y2ggZm9ybWFsIHNwZWNpZmljYXRpb25zIGNhbiBhdCBiZXN0IGJlIHBhcnRpYWxseSByZXByZXNlbnRlZCB1c2luZyBDbGFNTCwgYW5kIGFyZSBoZW5jZSBvdXQgb2Ygc2NvcGUuIE1vc3Qgb2YgdGhlIG5vdGVzIGFuZCBleGFtcGxlcyBpbiB0aGlzIGRvY3VtZW50IHJlbGF0ZSB0byBJQ0QuIFRoaXMgaXMgYmVjYXVzZSBJQ0QgaXMgdGhlIG1vc3QgY29tbW9uIGNsYXNzaWZpY2F0aW9uIHN5c3RlbSBpbiB0aGUgc2NvcGUgb2YgdGhpcyBkb2N1bWVudC4gQXMgYSBoaWdobHkgY29tcGxleCBjbGFzc2lmaWNhdGlvbiBzeXN0ZW0gaXQgaXMgYW4gaW5leGhhdXN0aWJsZSBzb3VyY2UgZm9yIGV4YW1wbGVzIG9mIG5lYXJseSBhbnkga2luZC4gQnV0IGFsbCB0aGVzZSBub3RlcyBhbmQgZXhhbXBsZXMgcmVwcmVzZW50IGFsc28gb3RoZXIgc2ltaWxhciBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zLCBpZiBhcHBsaWNhYmxlLCB3aGljaCBhcmUgdXN1YWxseSBsZXNzIGNvbXBsZXguIEFuIG92ZXJ2aWV3IG9mIGN1cnJlbnRseSBrbm93biBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIHVzaW5nIENsYU1MIGlzIHByb3ZpZGVkIGluIGEgc2VwYXJhdGUgZG9jdW1lbnQgd2hpY2ggaXMgZWxlY3Ryb25pY2FsbHkgYXZhaWxhYmxlIChzZWUgNy4zKS4gVGhpcyBkb2N1bWVudCBpcyBub3QgaW50ZW5kZWQgdG86IGEpICAgIHByb3ZpZGUgYSBub3JtYXRpdmUgc3ludGF4IG9uIGhvdyBhIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtIGlzIHRvIGJlIGNvbnN0cnVjdGVkOyBiKSAgICBkZWZpbmUgbGluayB0eXBlcyBiZXR3ZWVuIGVsZW1lbnRzIGluIGEgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW0gKHRoaXMgaXMgbGVmdCB0byB0aGUgZGV2ZWxvcGVycyBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMpOyBjKSAgICBwcm92aWRlIGEgcmVwcmVzZW50YXRpb24gZm9yIGRpcmVjdCB2aWV3aW5nIG9yIHByaW50aW5nLiAiLCJvYmplY3RJRCI6IjY5MzE4XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjIwOjIwMTkgSGVhbHRoIGluZm9ybWF0aWNzIOKAlCBTeW50YXggdG8gcmVwcmVzZW50IHRoZSBjb250ZW50IG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtcyDigJQgQ2xhc3NpZmljYXRpb24gTWFya3VwIExhbmd1YWdlIChDbGFNTCkiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhlIG1haW4gcHVycG9zZSBvZiBDbGFNTCBpcyB0byBmb3JtYWxseSByZXByZXNlbnQgdGhlIGNvbnRlbnQgYW5kIGhpZXJhcmNoaWNhbCBzdHJ1Y3R1cmUgb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIGluIGEgbWFya3VwIGxhbmd1YWdlIGZvciB0aGUgc2FmZSBleGNoYW5nZSBhbmQgZGlzdHJpYnV0aW9uIG9mIGRhdGEgYW5kIHN0cnVjdHVyZSBiZXR3ZWVuIG9yZ2FuaXphdGlvbnMgYW5kIGRpc3NpbWlsYXIgc29mdHdhcmUgcHJvZHVjdHMuIFRoZSBzY29wZSBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMgY292ZXJlZCBieSB0aGlzIGRvY3VtZW50IGVuY29tcGFzc2VzIHRlcm1pbm9sb2dpZXMsIGFuZCBpcyBjb25zdHJhaW5lZCB0byB0cmFkaXRpb25hbCBwYXBlci1iYXNlZCBzeXN0ZW1zIChsaWtlIElDRC0xMCkgYW5kIHN5c3RlbXMgYnVpbHQgYWNjb3JkaW5nIHRvIGNhdGVnb3JpYWwgc3RydWN0dXJlcyBhbmQgYSBjcm9zcyB0aGVzYXVydXMgKGxpa2UgSUNOUClbMl0uIENsYU1MIGlzIGludGVuZGVkIGZvciByZXByZXNlbnRhdGlvbiBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMgaW4gd2hpY2ggY2xhc3NlcyBoYXZlIHRleHR1YWwgZGVmaW5pdGlvbnMsIGhpZXJhcmNoaWNhbCBvcmRlcmluZywgbmFtZWQgaGllcmFyY2hpY2FsIGxldmVscyAoc3VjaCBhcyBcImNoYXB0ZXJcIiwgXCJzZWN0aW9uXCIpLCBpbmNsdXNpb24gYW5kIGV4Y2x1c2lvbiBjcml0ZXJpYSwgYW5kIGNvZGVzLiBJdCBpcyBub3QgaW50ZW5kZWQgdG8gY292ZXIgYW55IGZvcm1hbCByZXByZXNlbnRhdGlvbiwgbmVpdGhlciBmb3IgZGVmaW5pdGlvbiBvciBjb21wb3NpdGlvbiBvZiBjb25jZXB0cywgbm9yIGZvciBzcGVjaWZpY2F0aW9uIG9mIGNsYXNzaWZpY2F0aW9uIHJ1bGVzLiBTeXN0ZW1zIHdpdGggc3VjaCBmb3JtYWwgc3BlY2lmaWNhdGlvbnMgY2FuIGF0IGJlc3QgYmUgcGFydGlhbGx5IHJlcHJlc2VudGVkIHVzaW5nIENsYU1MLCBhbmQgYXJlIGhlbmNlIG91dCBvZiBzY29wZS4gTW9zdCBvZiB0aGUgbm90ZXMgYW5kIGV4YW1wbGVzIGluIHRoaXMgZG9jdW1lbnQgcmVsYXRlIHRvIElDRC4gVGhpcyBpcyBiZWNhdXNlIElDRCBpcyB0aGUgbW9zdCBjb21tb24gY2xhc3NpZmljYXRpb24gc3lzdGVtIGluIHRoZSBzY29wZSBvZiB0aGlzIGRvY3VtZW50LiBBcyBhIGhpZ2hseSBjb21wbGV4IGNsYXNzaWZpY2F0aW9uIHN5c3RlbSBpdCBpcyBhbiBpbmV4aGF1c3RpYmxlIHNvdXJjZSBmb3IgZXhhbXBsZXMgb2YgbmVhcmx5IGFueSBraW5kLiBCdXQgYWxsIHRoZXNlIG5vdGVzIGFuZCBleGFtcGxlcyByZXByZXNlbnQgYWxzbyBvdGhlciBzaW1pbGFyIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMsIGlmIGFwcGxpY2FibGUsIHdoaWNoIGFyZSB1c3VhbGx5IGxlc3MgY29tcGxleC4gQW4gb3ZlcnZpZXcgb2YgY3VycmVudGx5IGtub3duIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMgdXNpbmcgQ2xhTUwgaXMgcHJvdmlkZWQgaW4gYSBzZXBhcmF0ZSBkb2N1bWVudCB3aGljaCBpcyBlbGVjdHJvbmljYWxseSBhdmFpbGFibGUgKHNlZSA3LjMpLiBUaGlzIGRvY3VtZW50IGlzIG5vdCBpbnRlbmRlZCB0bzogYSkgICAgcHJvdmlkZSBhIG5vcm1hdGl2ZSBzeW50YXggb24gaG93IGEgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW0gaXMgdG8gYmUgY29uc3RydWN0ZWQ7IGIpICAgIGRlZmluZSBsaW5rIHR5cGVzIGJldHdlZW4gZWxlbWVudHMgaW4gYSBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbSAodGhpcyBpcyBsZWZ0IHRvIHRoZSBkZXZlbG9wZXJzIG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtcyk7IGMpICAgIHByb3ZpZGUgYSByZXByZXNlbnRhdGlvbiBmb3IgZGlyZWN0IHZpZXdpbmcgb3IgcHJpbnRpbmcuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzY0LzU2NDY0IiwidXVpZCI6ImRmZjVhNGUxLTE2MzMtNGJmYS05ODllLTJiYzgyMDUwNjE4OSIsInRpdGxlIjoiSVNPIDEzMTY1LTE6MjAxMyBXYXRlciBxdWFsaXR5IOKAlCBSYWRpdW0tMjI2IOKAlCBQYXJ0IDE6IFRlc3QgbWV0aG9kIHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTY1LTE6MjAxMyBzcGVjaWZpZXMgdGhlIGRldGVybWluYXRpb24gb2YgcmFkaXVtLTIyNiAoIDIyNiBSYSkgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBub24tc2FsaW5lIHdhdGVyIHNhbXBsZXMgYnkgZXh0cmFjdGlvbiBvZiBpdHMgZGF1Z2h0ZXIgcmFkb24tMjIyICggMjIyIFJuKSBhbmQgaXRzIG1lYXN1cmVtZW50IHVzaW5nIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50aW5nLiBSYWRpdW0tMjI2IGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIHdoaWNoIGNhbiBiZSBtZWFzdXJlZCBieSB0aGlzIHRlc3QgbWV0aG9kIHV0aWxpemluZyBjdXJyZW50bHkgYXZhaWxhYmxlIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50ZXJzIGdvZXMgZG93biB0byA1MCBtQnEgbCDiiJIxIC4gVGhpcyBtZXRob2QgaXMgbm90IGFwcGxpY2FibGUgdG8gdGhlIG1lYXN1cmVtZW50IG9mIG90aGVyIHJhZGl1bSBpc290b3Blcy4gIiwib2JqZWN0SUQiOiI1NjQ2NF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0xOjIwMTMgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAxOiBUZXN0IG1ldGhvZCB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjUtMToyMDEzIHNwZWNpZmllcyB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRpdW0tMjI2ICggMjI2IFJhKSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIG5vbi1zYWxpbmUgd2F0ZXIgc2FtcGxlcyBieSBleHRyYWN0aW9uIG9mIGl0cyBkYXVnaHRlciByYWRvbi0yMjIgKCAyMjIgUm4pIGFuZCBpdHMgbWVhc3VyZW1lbnQgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcuIFJhZGl1bS0yMjYgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRlcnMgZ29lcyBkb3duIHRvIDUwIG1CcSBsIOKIkjEgLiBUaGlzIG1ldGhvZCBpcyBub3QgYXBwbGljYWJsZSB0byB0aGUgbWVhc3VyZW1lbnQgb2Ygb3RoZXIgcmFkaXVtIGlzb3RvcGVzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS82MS81NjEwOSIsInV1aWQiOiJmODBlZmM1OS1jNDkxLTRmMWQtYThiYy05MjlkYmU5ZjdiNDciLCJ0aXRsZSI6IklTTyAxMzE2NC0zOjIwMTMgV2F0ZXIgcXVhbGl0eSDigJQgUmFkb24tMjIyIOKAlCBQYXJ0IDM6IFRlc3QgbWV0aG9kIHVzaW5nIGVtYW5vbWV0cnkiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE5LCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxNjQtMzoyMDEzIHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRvbi0yMjIgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhIHNhbXBsZSBvZiB3YXRlciBmb2xsb3dpbmcgaXRzIHRyYW5zZmVyIGZyb20gdGhlIGFxdWVvdXMgcGhhc2UgdG8gdGhlIGFpciBwaGFzZSBieSBkZWdhc3NpbmcgYW5kIGl0cyBkZXRlY3Rpb24uIEl0IGdpdmVzIHJlY29tbWVuZGF0aW9ucyBmb3IgcmFwaWQgbWVhc3VyZW1lbnRzIHBlcmZvcm1lZCB3aXRoaW4gbGVzcyB0aGFuIDEgaC4gVGhlIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgaW5zdHJ1bWVudHMsIHJhbmdlIGZyb20gMCwxIEJxIGwg4oiSMSB0byBzZXZlcmFsIGh1bmRyZWQgdGhvdXNhbmQgYmVjcXVlcmVscyBwZXIgbGl0cmUgZm9yIGEgMTAwIG1sIHRlc3Qgc2FtcGxlLiBUaGlzIHRlc3QgbWV0aG9kIGlzIHVzZWQgc3VjY2Vzc2Z1bGx5IHdpdGggZHJpbmtpbmcgd2F0ZXIgc2FtcGxlcy4gVGhlIGxhYm9yYXRvcnkgaXMgcmVzcG9uc2libGUgZm9yIGVuc3VyaW5nIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB3YXRlciBzYW1wbGVzIG9mIHVudGVzdGVkIG1hdHJpY2VzLiBUaGlzIHRlc3QgbWV0aG9kIGNhbiBiZSBhcHBsaWVkIG9uIGZpZWxkIHNpdGVzIG9yIGluIHRoZSBsYWJvcmF0b3J5LiBBbm5leGVzIEEgYW5kIEIgZ2l2ZSBpbmRpY2F0aW9ucyBvbiB0aGUgbmVjZXNzYXJ5IGNvdW50aW5nIGNvbmRpdGlvbnMgdG8gbWVldCB0aGUgcmVxdWlyZWQgc2Vuc2l0aXZpdHkgZm9yIGRyaW5raW5nIHdhdGVyIG1vbml0b3JpbmcgIiwib2JqZWN0SUQiOiI1NjEwOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NC0zOjIwMTMgV2F0ZXIgcXVhbGl0eSDigJQgUmFkb24tMjIyIOKAlCBQYXJ0IDM6IFRlc3QgbWV0aG9kIHVzaW5nIGVtYW5vbWV0cnkiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjY0LTM6MjAxMyBzcGVjaWZpZXMgYSB0ZXN0IG1ldGhvZCBmb3IgdGhlIGRldGVybWluYXRpb24gb2YgcmFkb24tMjIyIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYSBzYW1wbGUgb2Ygd2F0ZXIgZm9sbG93aW5nIGl0cyB0cmFuc2ZlciBmcm9tIHRoZSBhcXVlb3VzIHBoYXNlIHRvIHRoZSBhaXIgcGhhc2UgYnkgZGVnYXNzaW5nIGFuZCBpdHMgZGV0ZWN0aW9uLiBJdCBnaXZlcyByZWNvbW1lbmRhdGlvbnMgZm9yIHJhcGlkIG1lYXN1cmVtZW50cyBwZXJmb3JtZWQgd2l0aGluIGxlc3MgdGhhbiAxIGguIFRoZSByYWRvbi0yMjIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMsIHdoaWNoIGNhbiBiZSBtZWFzdXJlZCBieSB0aGlzIHRlc3QgbWV0aG9kIHV0aWxpemluZyBjdXJyZW50bHkgYXZhaWxhYmxlIGluc3RydW1lbnRzLCByYW5nZSBmcm9tIDAsMSBCcSBsIOKIkjEgdG8gc2V2ZXJhbCBodW5kcmVkIHRob3VzYW5kIGJlY3F1ZXJlbHMgcGVyIGxpdHJlIGZvciBhIDEwMCBtbCB0ZXN0IHNhbXBsZS4gVGhpcyB0ZXN0IG1ldGhvZCBpcyB1c2VkIHN1Y2Nlc3NmdWxseSB3aXRoIGRyaW5raW5nIHdhdGVyIHNhbXBsZXMuIFRoZSBsYWJvcmF0b3J5IGlzIHJlc3BvbnNpYmxlIGZvciBlbnN1cmluZyB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3Igd2F0ZXIgc2FtcGxlcyBvZiB1bnRlc3RlZCBtYXRyaWNlcy4gVGhpcyB0ZXN0IG1ldGhvZCBjYW4gYmUgYXBwbGllZCBvbiBmaWVsZCBzaXRlcyBvciBpbiB0aGUgbGFib3JhdG9yeS4gQW5uZXhlcyBBIGFuZCBCIGdpdmUgaW5kaWNhdGlvbnMgb24gdGhlIG5lY2Vzc2FyeSBjb3VudGluZyBjb25kaXRpb25zIHRvIG1lZXQgdGhlIHJlcXVpcmVkIHNlbnNpdGl2aXR5IGZvciBkcmlua2luZyB3YXRlciBtb25pdG9yaW5nICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzYxLzU2MTA4IiwidXVpZCI6ImY3YTZhNDU4LTg3ZjgtNDY4Yy1iZmMxLTM3YjdmMDBlMDBmYyIsInRpdGxlIjoiSVNPIDEzMTY0LTI6MjAxMyBXYXRlciBxdWFsaXR5IOKAlCBSYWRvbi0yMjIg4oCUIFBhcnQgMjogVGVzdCBtZXRob2QgdXNpbmcgZ2FtbWEtcmF5IHNwZWN0cm9tZXRyeSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTksIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE2NC0yOjIwMTMgc3BlY2lmaWVzIGEgdGVzdCBtZXRob2QgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIGEgc2FtcGxlIG9mIHdhdGVyIGZvbGxvd2luZyB0aGUgbWVhc3VyZW1lbnQgb2YgaXRzIHNob3J0LWxpdmVkIGRlY2F5IHByb2R1Y3RzIGJ5IGRpcmVjdCBnYW1tYS1zcGVjdHJvbWV0cnkgb2YgdGhlIHdhdGVyIHNhbXBsZS4gVGhlIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgZ2FtbWEtcmF5IGluc3RydW1lbnRzLCByYW5nZSBmcm9tIGEgZmV3IGJlY3F1ZXJlbHMgcGVyIGxpdHJlIHRvIHNldmVyYWwgaHVuZHJlZCB0aG91c2FuZCBiZWNxdWVyZWxzIHBlciBsaXRyZSBmb3IgYSAxIGwgdGVzdCBzYW1wbGUuIFRoaXMgdGVzdCBtZXRob2QgY2FuIGJlIHVzZWQgc3VjY2Vzc2Z1bGx5IHdpdGggZHJpbmtpbmcgd2F0ZXIgc2FtcGxlcy4gVGhlIGxhYm9yYXRvcnkgaXMgcmVzcG9uc2libGUgZm9yIGVuc3VyaW5nIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB3YXRlciBzYW1wbGVzIG9mIHVudGVzdGVkIG1hdHJpY2VzLiBBbiBhbm5leCBnaXZlcyBpbmRpY2F0aW9ucyBvbiB0aGUgbmVjZXNzYXJ5IGNvdW50aW5nIGNvbmRpdGlvbnMgdG8gbWVldCB0aGUgcmVxdWlyZWQgc2Vuc2l0aXZpdHkgZm9yIGRyaW5raW5nIHdhdGVyIG1vbml0b3JpbmcuICIsIm9iamVjdElEIjoiNTYxMDhfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjQtMjoyMDEzIFdhdGVyIHF1YWxpdHkg4oCUIFJhZG9uLTIyMiDigJQgUGFydCAyOiBUZXN0IG1ldGhvZCB1c2luZyBnYW1tYS1yYXkgc3BlY3Ryb21ldHJ5IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NC0yOjIwMTMgc3BlY2lmaWVzIGEgdGVzdCBtZXRob2QgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIGEgc2FtcGxlIG9mIHdhdGVyIGZvbGxvd2luZyB0aGUgbWVhc3VyZW1lbnQgb2YgaXRzIHNob3J0LWxpdmVkIGRlY2F5IHByb2R1Y3RzIGJ5IGRpcmVjdCBnYW1tYS1zcGVjdHJvbWV0cnkgb2YgdGhlIHdhdGVyIHNhbXBsZS4gVGhlIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgZ2FtbWEtcmF5IGluc3RydW1lbnRzLCByYW5nZSBmcm9tIGEgZmV3IGJlY3F1ZXJlbHMgcGVyIGxpdHJlIHRvIHNldmVyYWwgaHVuZHJlZCB0aG91c2FuZCBiZWNxdWVyZWxzIHBlciBsaXRyZSBmb3IgYSAxIGwgdGVzdCBzYW1wbGUuIFRoaXMgdGVzdCBtZXRob2QgY2FuIGJlIHVzZWQgc3VjY2Vzc2Z1bGx5IHdpdGggZHJpbmtpbmcgd2F0ZXIgc2FtcGxlcy4gVGhlIGxhYm9yYXRvcnkgaXMgcmVzcG9uc2libGUgZm9yIGVuc3VyaW5nIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB3YXRlciBzYW1wbGVzIG9mIHVudGVzdGVkIG1hdHJpY2VzLiBBbiBhbm5leCBnaXZlcyBpbmRpY2F0aW9ucyBvbiB0aGUgbmVjZXNzYXJ5IGNvdW50aW5nIGNvbmRpdGlvbnMgdG8gbWVldCB0aGUgcmVxdWlyZWQgc2Vuc2l0aXZpdHkgZm9yIGRyaW5raW5nIHdhdGVyIG1vbml0b3JpbmcuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzM0LzUzNDkwIiwidXVpZCI6IjNkYjAyN2VmLTdhM2UtNDc1Ny04ZmIxLWJmMGNjNjhkMGQ5YiIsInRpdGxlIjoiSVNPIDEzMTk2OjIwMTMgU29pbCBxdWFsaXR5IOKAlCBTY3JlZW5pbmcgc29pbHMgZm9yIHNlbGVjdGVkIGVsZW1lbnRzIGJ5IGVuZXJneS1kaXNwZXJzaXZlIFgtcmF5IGZsdW9yZXNjZW5jZSBzcGVjdHJvbWV0cnkgdXNpbmcgYSBoYW5kaGVsZCBvciBwb3J0YWJsZSBpbnN0cnVtZW50Iiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTk2OjIwMTMgc3BlY2lmaWVzIHRoZSBwcm9jZWR1cmUgZm9yIHNjcmVlbmluZyBzb2lscyBhbmQgc29pbC1saWtlIG1hdGVyaWFscyBmb3Igc2VsZWN0ZWQgZWxlbWVudHMgd2hlbiBoYW5kaGVsZCBvciBwb3J0YWJsZSBlbmVyZ3ktZGlzcGVyc2l2ZSBYUkYgc3BlY3Ryb21ldGVycyBhcmUgdXNlZC4gVGhpcyBxdWljayBtZXRob2QgaXMgYXNzdW1lZCB0byBiZSBhcHBsaWVkIG9uLXNpdGUgdG8gb2J0YWluIHF1YWxpdGF0aXZlIG9yIHNlbWlxdWFudGl0YXRpdmUgZGF0YSB0aGF0IGFzc2lzdHMgZGVjaXNpb25zIG9uIGZ1cnRoZXIgc2FtcGxpbmcgc3RyYXRlZ3kgZm9yIGFzc2Vzc2luZyBzb2lsIHF1YWxpdHkuIFRoZSBoaWdoZXIgdGhlIGVmZm9ydHMgZm9yIHByZXRyZWF0bWVudCB1c2VkIG9uIHNvaWwgc2FtcGxlcywgdGhlIGJldHRlciB0aGUgYW5hbHl0aWNhbCByZXN1bHRzIGNhbiBiZSBleHBlY3RlZC4gSVNPIDEzMTk2OjIwMTMgZG9lcyBub3QgZXhwbGljaXRseSBzcGVjaWZ5IGVsZW1lbnRzIGZvciB3aGljaCBpdCBpcyBhcHBsaWNhYmxlLCBzaW5jZSB0aGUgYXBwbGljYWJpbGl0eSBkZXBlbmRzIG9uIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgYXBwYXJhdHVzIGFuZCB0aGUgb2JqZWN0aXZlIG9mIHRoZSBzY3JlZW5pbmcuIFRoZSBlbGVtZW50cyB3aGljaCBjYW4gYmUgZGV0ZXJtaW5lZCBhcmUgbGltaXRlZCBieSB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIGluc3RydW1lbnRzIHVzZWQsIHRoZSBjb25jZW50cmF0aW9uIG9mIHRoZSBlbGVtZW50IHByZXNlbnQgaW4gdGhlIHNvaWwsIGFuZCB0aGUgcmVxdWlyZW1lbnRzIG9mIHRoZSBpbnZlc3RpZ2F0aW9uIChlLmcuIGd1aWRlbGluZSB2YWx1ZSkuIEZvciBIZywgQ2QsIENvLCBNbywgViBhbmQgU2IsIGEgbWFqb3JpdHkgb2YgaW5zdHJ1bWVudHMgYXJlIG5vdCBzZW5zaXRpdmUgZW5vdWdoIHRvIHJlYWNoIHN1ZmZpY2llbnRseSBsb3cgbGltaXRzIG9mIHF1YW50aWZpY2F0aW9uIChMT1EpIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50cyAobGltaXQgb3IgdGhyZXNob2xkIHZhbHVlcykgc2V0IGluIHRoZSBvcmRpbmFuY2VzIG9mIGRpZmZlcmVudCBjb3VudHJpZXMuIEluIHRoaXMgY2FzZSwgb3RoZXIgbWV0aG9kcyBuZWVkIHRvIGJlIGVtcGxveWVkIHRvIG1lYXN1cmUgdGhlc2UgbG93IGNvbmNlbnRyYXRpb25zLiBVc3VhbGx5LCB3ZXQgY2hlbWljYWwgbWV0aG9kcyBhcmUgdXNlZCwgYmFzZWQgb24gYXF1YSByZWdpYSBleHRyYWN0cywgaW4gY29tYmluYXRpb24gd2l0aCBvcHRpY2FsIG9yIG1hc3Mgc3BlY3Ryb21ldHJpYyAoTVMpIG1ldGhvZHMgbGlrZSBhdG9taWMgYWJzb3JwdGlvbiBzcGVjdHJvbWV0cnkgKEFBUyksIGluZHVjdGl2ZWx5IGNvdXBsZWQgcGxhc21hL29wdGljYWwgZW1pc3Npb24gc3BlY3Ryb21ldHJ5IChJQ1AvT0VTKSBvciBJQ1AvTVMuICIsIm9iamVjdElEIjoiNTM0OTBfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+OTY6MjAxMyBTb2lsIHF1YWxpdHkg4oCUIFNjcmVlbmluZyBzb2lscyBmb3Igc2VsZWN0ZWQgZWxlbWVudHMgYnkgZW5lcmd5LWRpc3BlcnNpdmUgWC1yYXkgZmx1b3Jlc2NlbmNlIHNwZWN0cm9tZXRyeSB1c2luZyBhIGhhbmRoZWxkIG9yIHBvcnRhYmxlIGluc3RydW1lbnQiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjk2OjIwMTMgc3BlY2lmaWVzIHRoZSBwcm9jZWR1cmUgZm9yIHNjcmVlbmluZyBzb2lscyBhbmQgc29pbC1saWtlIG1hdGVyaWFscyBmb3Igc2VsZWN0ZWQgZWxlbWVudHMgd2hlbiBoYW5kaGVsZCBvciBwb3J0YWJsZSBlbmVyZ3ktZGlzcGVyc2l2ZSBYUkYgc3BlY3Ryb21ldGVycyBhcmUgdXNlZC4gVGhpcyBxdWljayBtZXRob2QgaXMgYXNzdW1lZCB0byBiZSBhcHBsaWVkIG9uLXNpdGUgdG8gb2J0YWluIHF1YWxpdGF0aXZlIG9yIHNlbWlxdWFudGl0YXRpdmUgZGF0YSB0aGF0IGFzc2lzdHMgZGVjaXNpb25zIG9uIGZ1cnRoZXIgc2FtcGxpbmcgc3RyYXRlZ3kgZm9yIGFzc2Vzc2luZyBzb2lsIHF1YWxpdHkuIFRoZSBoaWdoZXIgdGhlIGVmZm9ydHMgZm9yIHByZXRyZWF0bWVudCB1c2VkIG9uIHNvaWwgc2FtcGxlcywgdGhlIGJldHRlciB0aGUgYW5hbHl0aWNhbCByZXN1bHRzIGNhbiBiZSBleHBlY3RlZC4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjk2OjIwMTMgZG9lcyBub3QgZXhwbGljaXRseSBzcGVjaWZ5IGVsZW1lbnRzIGZvciB3aGljaCBpdCBpcyBhcHBsaWNhYmxlLCBzaW5jZSB0aGUgYXBwbGljYWJpbGl0eSBkZXBlbmRzIG9uIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgYXBwYXJhdHVzIGFuZCB0aGUgb2JqZWN0aXZlIG9mIHRoZSBzY3JlZW5pbmcuIFRoZSBlbGVtZW50cyB3aGljaCBjYW4gYmUgZGV0ZXJtaW5lZCBhcmUgbGltaXRlZCBieSB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIGluc3RydW1lbnRzIHVzZWQsIHRoZSBjb25jZW50cmF0aW9uIG9mIHRoZSBlbGVtZW50IHByZXNlbnQgaW4gdGhlIHNvaWwsIGFuZCB0aGUgcmVxdWlyZW1lbnRzIG9mIHRoZSBpbnZlc3RpZ2F0aW9uIChlLmcuIGd1aWRlbGluZSB2YWx1ZSkuIEZvciBIZywgQ2QsIENvLCBNbywgViBhbmQgU2IsIGEgbWFqb3JpdHkgb2YgaW5zdHJ1bWVudHMgYXJlIG5vdCBzZW5zaXRpdmUgZW5vdWdoIHRvIHJlYWNoIHN1ZmZpY2llbnRseSBsb3cgbGltaXRzIG9mIHF1YW50aWZpY2F0aW9uIChMT1EpIHRvIG1lZXQgdGhlIHJlcXVpcmVtZW50cyAobGltaXQgb3IgdGhyZXNob2xkIHZhbHVlcykgc2V0IGluIHRoZSBvcmRpbmFuY2VzIG9mIGRpZmZlcmVudCBjb3VudHJpZXMuIEluIHRoaXMgY2FzZSwgb3RoZXIgbWV0aG9kcyBuZWVkIHRvIGJlIGVtcGxveWVkIHRvIG1lYXN1cmUgdGhlc2UgbG93IGNvbmNlbnRyYXRpb25zLiBVc3VhbGx5LCB3ZXQgY2hlbWljYWwgbWV0aG9kcyBhcmUgdXNlZCwgYmFzZWQgb24gYXF1YSByZWdpYSBleHRyYWN0cywgaW4gY29tYmluYXRpb24gd2l0aCBvcHRpY2FsIG9yIG1hc3Mgc3BlY3Ryb21ldHJpYyAoTVMpIG1ldGhvZHMgbGlrZSBhdG9taWMgYWJzb3JwdGlvbiBzcGVjdHJvbWV0cnkgKEFBUyksIGluZHVjdGl2ZWx5IGNvdXBsZWQgcGxhc21hL29wdGljYWwgZW1pc3Npb24gc3BlY3Ryb21ldHJ5IChJQ1AvT0VTKSBvciBJQ1AvTVMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzM0LzUzNDA1IiwidXVpZCI6ImU0ZWRmNWZmLWExNTQtNGI2ZS1hYWZmLWRmNGM0YWJmZjg0OCIsInRpdGxlIjoiSVNPIDEzMTY0LTE6MjAxMyBXYXRlciBxdWFsaXR5IOKAlCBSYWRvbi0yMjIg4oCUIFBhcnQgMTogR2VuZXJhbCBwcmluY2lwbGVzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTY0LTE6MjAxMyBnaXZlcyBnZW5lcmFsIGd1aWRlbGluZXMgZm9yIHNhbXBsaW5nLCBwYWNrYWdpbmcsIGFuZCB0cmFuc3BvcnRpbmcgb2YgYWxsIGtpbmRzIG9mIHdhdGVyIHNhbXBsZXMsIGZvciB0aGUgbWVhc3VyZW1lbnQgb2YgdGhlIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gb2YgcmFkb24tMjIyLiBUaGUgdGVzdCBtZXRob2RzIGZhbGwgaW50byB0d28gY2F0ZWdvcmllczogYSkgZGlyZWN0IG1lYXN1cmVtZW50IG9mIHRoZSB3YXRlciBzYW1wbGUgd2l0aG91dCBhbnkgdHJhbnNmZXIgb2YgcGhhc2UgKHNlZSBJU08gMTMxNjTigJEyKTsgYikgaW5kaXJlY3QgbWVhc3VyZW1lbnQgaW52b2x2aW5nIHRoZSB0cmFuc2ZlciBvZiB0aGUgcmFkb24tMjIyIGZyb20gdGhlIGFxdWVvdXMgcGhhc2UgdG8gYW5vdGhlciBwaGFzZSAoc2VlIElTTyAxMzE2NOKAkTMpLiBUaGUgdGVzdCBtZXRob2RzIGNhbiBiZSBhcHBsaWVkIGVpdGhlciBpbiB0aGUgbGFib3JhdG9yeSBvciBvbiBzaXRlLiBUaGUgbGFib3JhdG9yeSBpcyByZXNwb25zaWJsZSBmb3IgZW5zdXJpbmcgdGhlIHN1aXRhYmlsaXR5IG9mIHRoZSB0ZXN0IG1ldGhvZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJvYmplY3RJRCI6IjUzNDA1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjY0LTE6MjAxMyBXYXRlciBxdWFsaXR5IOKAlCBSYWRvbi0yMjIg4oCUIFBhcnQgMTogR2VuZXJhbCBwcmluY2lwbGVzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NC0xOjIwMTMgZ2l2ZXMgZ2VuZXJhbCBndWlkZWxpbmVzIGZvciBzYW1wbGluZywgcGFja2FnaW5nLCBhbmQgdHJhbnNwb3J0aW5nIG9mIGFsbCBraW5kcyBvZiB3YXRlciBzYW1wbGVzLCBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIHRoZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIG9mIHJhZG9uLTIyMi4gVGhlIHRlc3QgbWV0aG9kcyBmYWxsIGludG8gdHdvIGNhdGVnb3JpZXM6IGEpIGRpcmVjdCBtZWFzdXJlbWVudCBvZiB0aGUgd2F0ZXIgc2FtcGxlIHdpdGhvdXQgYW55IHRyYW5zZmVyIG9mIHBoYXNlIChzZWUgPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjY04oCRMik7IGIpIGluZGlyZWN0IG1lYXN1cmVtZW50IGludm9sdmluZyB0aGUgdHJhbnNmZXIgb2YgdGhlIHJhZG9uLTIyMiBmcm9tIHRoZSBhcXVlb3VzIHBoYXNlIHRvIGFub3RoZXIgcGhhc2UgKHNlZSA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjTigJEzKS4gVGhlIHRlc3QgbWV0aG9kcyBjYW4gYmUgYXBwbGllZCBlaXRoZXIgaW4gdGhlIGxhYm9yYXRvcnkgb3Igb24gc2l0ZS4gVGhlIGxhYm9yYXRvcnkgaXMgcmVzcG9uc2libGUgZm9yIGVuc3VyaW5nIHRoZSBzdWl0YWJpbGl0eSBvZiB0aGUgdGVzdCBtZXRob2QgZm9yIHRoZSB3YXRlciBzYW1wbGVzIHRlc3RlZC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzAvNTMwMTkiLCJ1dWlkIjoiNDEzZWE3NTktNWJhMy00ZTIzLTllM2EtNDY5YzMzMjM3YjQ4IiwidGl0bGUiOiJJU08gMTMxMjc6MjAxMiBQYWNrYWdpbmcg4oCUIENoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcg4oCUIE1lY2hhbmljYWwgdGVzdCBtZXRob2RzIGZvciByZWNsb3NhYmxlIGNoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcgc3lzdGVtcyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTksIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEyNzoyMDEyIHNwZWNpZmllcyB0ZXN0IG1ldGhvZHMgZm9yIG1lY2hhbmljYWwgdGVzdGluZyBvZiByZWNsb3NhYmxlIGNoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcuIFRoZSBkYXRhIGdlbmVyYXRlZCBieSB0aGVzZSBtZWNoYW5pY2FsIHRlc3QgbWV0aG9kcyBhcmUgc3VpdGFibGUgZm9yIGNvbXBhcmluZyBjaGlsZCByZXNpc3RhbnQgY2hhcmFjdGVyaXN0aWNzIG9mIHJlbGF0ZWQgcmVjbG9zYWJsZSBwYWNrYWdpbmcgc3lzdGVtcy4gIiwib2JqZWN0SUQiOiI1MzAxOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yNzoyMDEyIFBhY2thZ2luZyDigJQgQ2hpbGQgcmVzaXN0YW50IHBhY2thZ2luZyDigJQgTWVjaGFuaWNhbCB0ZXN0IG1ldGhvZHMgZm9yIHJlY2xvc2FibGUgY2hpbGQgcmVzaXN0YW50IHBhY2thZ2luZyBzeXN0ZW1zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yNzoyMDEyIHNwZWNpZmllcyB0ZXN0IG1ldGhvZHMgZm9yIG1lY2hhbmljYWwgdGVzdGluZyBvZiByZWNsb3NhYmxlIGNoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcuIFRoZSBkYXRhIGdlbmVyYXRlZCBieSB0aGVzZSBtZWNoYW5pY2FsIHRlc3QgbWV0aG9kcyBhcmUgc3VpdGFibGUgZm9yIGNvbXBhcmluZyBjaGlsZCByZXNpc3RhbnQgY2hhcmFjdGVyaXN0aWNzIG9mIHJlbGF0ZWQgcmVjbG9zYWJsZSBwYWNrYWdpbmcgc3lzdGVtcy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMjgvNTI4MzYiLCJ1dWlkIjoiYjdkNjFjODQtNjgxMS00NThiLWE0YTktYzU3MDNlNzk4NjY4IiwidGl0bGUiOiJJU08gMTMxMDY6MjAxNCBQbGFzdGljcyDigJQgQmxvdy1tb3VsZGVkIHBvbHlwcm9weWxlbmUgY29udGFpbmVycyBmb3IgcGFja2FnaW5nIG9mIGxpcXVpZCBmb29kc3R1ZmZzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPIDEzMTA2OjIwMTQgcHJvdmlkZXMgdGhlIHJlcXVpcmVtZW50cyBmb3IgcG9seXByb3B5bGVuZSByZXNpbnMgaW50ZW5kZWQgZm9yIHVzZSBpbiBibG93LW1vdWxkZWQsIHJvdW5kIGNvbnRhaW5lcnMgd2l0aCBjYXBhY2l0aWVzIHVwIHRvLCBhbmQgaW5jbHVkaW5nIHR3byBsaXRyZXMgaW50ZW5kZWQgZm9yIHRoZSBwYWNrYWdpbmcgb2YgbGlxdWlkcyBmb3IgaHVtYW4gY29uc3VtcHRpb24uIElTTyAxMzEwNjoyMDE0IGFsc28gcHJvdmlkZXMgdG9sZXJhbmNlcyBvbiBtYXNzLCBkaW1lbnNpb25zLCBtZXRob2RzIG9mIHNhbXBsaW5nLCB0ZXN0aW5nLCBhbmQgcGVyZm9ybWFuY2UgcmVxdWlyZW1lbnRzLiAiLCJvYmplY3RJRCI6IjUyODM2XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA2OjIwMTQgUGxhc3RpY3Mg4oCUIEJsb3ctbW91bGRlZCBwb2x5cHJvcHlsZW5lIGNvbnRhaW5lcnMgZm9yIHBhY2thZ2luZyBvZiBsaXF1aWQgZm9vZHN0dWZmcyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MDY6MjAxNCBwcm92aWRlcyB0aGUgcmVxdWlyZW1lbnRzIGZvciBwb2x5cHJvcHlsZW5lIHJlc2lucyBpbnRlbmRlZCBmb3IgdXNlIGluIGJsb3ctbW91bGRlZCwgcm91bmQgY29udGFpbmVycyB3aXRoIGNhcGFjaXRpZXMgdXAgdG8sIGFuZCBpbmNsdWRpbmcgdHdvIGxpdHJlcyBpbnRlbmRlZCBmb3IgdGhlIHBhY2thZ2luZyBvZiBsaXF1aWRzIGZvciBodW1hbiBjb25zdW1wdGlvbi4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA2OjIwMTQgYWxzbyBwcm92aWRlcyB0b2xlcmFuY2VzIG9uIG1hc3MsIGRpbWVuc2lvbnMsIG1ldGhvZHMgb2Ygc2FtcGxpbmcsIHRlc3RpbmcsIGFuZCBwZXJmb3JtYW5jZSByZXF1aXJlbWVudHMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2Lzg3LzY4NzY5IiwidXVpZCI6IjM2YTY2MzIwLWMwZjgtNGE4NC1iYmUxLTgwZDMyNTE2OGNkNiIsInRpdGxlIjoiSVNPIDEzMTY5OjIwMTggV2F0ZXIgcXVhbGl0eSDigJQgVXJhbml1bSDigJQgVGVzdCBtZXRob2QgdXNpbmcgYWxwaGEgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE4LCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyB0aGUgbWVhc3VyZW1lbnQgbWV0aG9kIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiB0b3RhbCBhY3Rpdml0eSBjb25jZW50cmF0aW9uIG9mIHVyYW5pdW0gaXNvdG9wZXMgaW4gbm9uLXNhbGluZSB3YXRlcnMgYnkgZXh0cmFjdGlvbiBhbmQgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcuIFRoaXMgbWV0aG9kIGNvdmVycyB0aGUgbWVhc3VyZW1lbnQgb2Ygc29sdWJsZSB1cmFuaXVtIGlzb3RvcGVzIGluIHdhdGVyIGluIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGJldHdlZW4gYXBwcm94aW1hdGVseSAywrcxMCDiiJIzIEJxL2tnIGFuZCAxMCBCcS9rZyB3aGVuIGFuYWx5c2luZyBhIDEgbCB0ZXN0IHNhbXBsZSB2b2x1bWUgd2l0aCBhIDYwIDAwMCBzIGNvdW50aW5nIHRpbWUgd2l0aCBhIHR5cGljYWwgYWxwaGEgTFNDIGluc3RydW1lbnQuIFRoZSByYXRpbyAyMzQgVS8gMjM4IFUgY2FuIGFsc28gYmUgZGV0ZXJtaW5lZC4gVGhpcyBtZXRob2QgaGFzIG5vdCBiZWVuIHRlc3RlZCBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIG90aGVyIHVyYW5pdW0gaXNvdG9wZXMuICIsIm9iamVjdElEIjoiNjg3NjlfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+Njk6MjAxOCBXYXRlciBxdWFsaXR5IOKAlCBVcmFuaXVtIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBhbHBoYSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyB0aGUgbWVhc3VyZW1lbnQgbWV0aG9kIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiB0b3RhbCBhY3Rpdml0eSBjb25jZW50cmF0aW9uIG9mIHVyYW5pdW0gaXNvdG9wZXMgaW4gbm9uLXNhbGluZSB3YXRlcnMgYnkgZXh0cmFjdGlvbiBhbmQgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcuIFRoaXMgbWV0aG9kIGNvdmVycyB0aGUgbWVhc3VyZW1lbnQgb2Ygc29sdWJsZSB1cmFuaXVtIGlzb3RvcGVzIGluIHdhdGVyIGluIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGJldHdlZW4gYXBwcm94aW1hdGVseSAywrcxMCDiiJIzIEJxL2tnIGFuZCAxMCBCcS9rZyB3aGVuIGFuYWx5c2luZyBhIDEgbCB0ZXN0IHNhbXBsZSB2b2x1bWUgd2l0aCBhIDYwIDAwMCBzIGNvdW50aW5nIHRpbWUgd2l0aCBhIHR5cGljYWwgYWxwaGEgTFNDIGluc3RydW1lbnQuIFRoZSByYXRpbyAyMzQgVS8gMjM4IFUgY2FuIGFsc28gYmUgZGV0ZXJtaW5lZC4gVGhpcyBtZXRob2QgaGFzIG5vdCBiZWVuIHRlc3RlZCBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIG90aGVyIHVyYW5pdW0gaXNvdG9wZXMuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzE1LzYxNTcyIiwidXVpZCI6IjYzOGExOTc4LTk2ZmItNDg4OC05ODEwLWVkY2VmYjllYmJmZiIsInRpdGxlIjoiSVNPIDEzMTg1LTM6MjAxOCBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyAg4oCUIFZlaGljbGUgaW50ZXJmYWNlIGZvciBwcm92aXNpb25pbmcgYW5kIHN1cHBvcnQgb2YgSVRTIFNlcnZpY2VzIOKAlCBQYXJ0IDM6IFVuaWZpZWQgdmVoaWNsZSBpbnRlcmZhY2UgcHJvdG9jb2wgKFVWSVApIHNlcnZlciBhbmQgY2xpZW50IEFQSSBzcGVjaWZpY2F0aW9uIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOCwib3JkZXIiOjExLCJ0ZXh0IjoiVGhpcyBkb2N1bWVudCBzcGVjaWZpZXMgdGhlIHNlcnZlciBhbmQgY2xpZW50IEFQSXMgb2YgdGhlIFVuaWZpZWQgR2F0ZXdheSBQcm90b2NvbCAoVUdQKS4gRmlndXJlIDEgc2hvd3MgYW4gb3ZlcnZpZXcgb2YgdGhlIFVHUCBjbGllbnQgYW5kIHNlcnZlciBBUEkuIEEgVUdQIGNsaWVudCBhcHBsaWNhdGlvbiBvbiBhIFAtSVRTLVMgY29tbXVuaWNhdGVzIHdpdGggYSBVR1Agc2VydmVyIGFwcGxpY2F0aW9uIG9uIGEgVi1JVFMtUy4gVGhlIFVHUCBjbGllbnQgYXBwbGljYXRpb24gaW1wbGVtZW50cyB0aGUgVUdQIGNsaWVudCBBUEkgdXNpbmcgSVNPIDEzMTg1LTIuIFRoZSBVR1Agc2VydmVyIGFwcGxpY2F0aW9uIGltcGxlbWVudHMgdGhlIFVHUCBzZXJ2ZXIgQVBJIHVzaW5nIElTTyAxMzE4NS0yLiAiLCJvYmplY3RJRCI6IjYxNTcyXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg1LTM6MjAxOCBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyAg4oCUIFZlaGljbGUgaW50ZXJmYWNlIGZvciBwcm92aXNpb25pbmcgYW5kIHN1cHBvcnQgb2YgSVRTIFNlcnZpY2VzIOKAlCBQYXJ0IDM6IFVuaWZpZWQgdmVoaWNsZSBpbnRlcmZhY2UgcHJvdG9jb2wgKFVWSVApIHNlcnZlciBhbmQgY2xpZW50IEFQSSBzcGVjaWZpY2F0aW9uIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIHRoZSBzZXJ2ZXIgYW5kIGNsaWVudCBBUElzIG9mIHRoZSBVbmlmaWVkIEdhdGV3YXkgUHJvdG9jb2wgKFVHUCkuIEZpZ3VyZSAxIHNob3dzIGFuIG92ZXJ2aWV3IG9mIHRoZSBVR1AgY2xpZW50IGFuZCBzZXJ2ZXIgQVBJLiBBIFVHUCBjbGllbnQgYXBwbGljYXRpb24gb24gYSBQLUlUUy1TIGNvbW11bmljYXRlcyB3aXRoIGEgVUdQIHNlcnZlciBhcHBsaWNhdGlvbiBvbiBhIFYtSVRTLVMuIFRoZSBVR1AgY2xpZW50IGFwcGxpY2F0aW9uIGltcGxlbWVudHMgdGhlIFVHUCBjbGllbnQgQVBJIHVzaW5nIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44NS0yLiBUaGUgVUdQIHNlcnZlciBhcHBsaWNhdGlvbiBpbXBsZW1lbnRzIHRoZSBVR1Agc2VydmVyIEFQSSB1c2luZyA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODUtMi4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzYvNTM2NjAiLCJ1dWlkIjoiNzdlNTc1NDAtYjM1NS00MWMyLWE5Y2QtMDI2MmQwN2I4YTI4IiwidGl0bGUiOiJJU08gMTMxNzQ6MjAxMiBDYXRob2RpYyBwcm90ZWN0aW9uIG9mIGhhcmJvdXIgaW5zdGFsbGF0aW9ucyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTgsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzE3NDoyMDEyIGRlZmluZXMgdGhlIG1lYW5zIHRvIGJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgY2F0aG9kaWMgcHJvdGVjdGlvbiBpcyBlZmZpY2llbnRseSBhcHBsaWVkIHRvIHRoZSBpbW1lcnNlZCBhbmQgZHJpdmVuL2J1cmllZCBtZXRhbGxpYyBleHRlcm5hbCBzdXJmYWNlcyBvZiBzdGVlbCBwb3J0LCBoYXJib3VyLCBjb2FzdGFsIGFuZCBmbG9vZCBkZWZlbmNlIGluc3RhbGxhdGlvbnMgYW5kIGFwcHVydGVuYW5jZXMgaW4gc2Vhd2F0ZXIgYW5kIHNhbGluZSBtdWQgdG8gcHJvdmlkZSBwcm90ZWN0aW9uIGZyb20gY29ycm9zaW9uLiBJU08gMTMxNzQ6MjAxMiBzcGVjaWZpZXMgY2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBmaXhlZCBhbmQgZmxvYXRpbmcgcG9ydCBhbmQgaGFyYm91ciBzdHJ1Y3R1cmVzLiBUaGlzIGluY2x1ZGVzIHBpZXJzLCBqZXR0aWVzLCBkb2xwaGlucyAobW9vcmluZyBhbmQgYmVydGhpbmcpLCBzaGVldCBvciB0dWJ1bGFyIHBpbGluZywgcG9udG9vbnMsIGJ1b3lzLCBmbG9hdGluZyBkb2NrcywgbG9jayBhbmQgc2x1aWNlIGdhdGVzLiBJdCBhbHNvIHNwZWNpZmllcyBjYXRob2RpYyBwcm90ZWN0aW9uIG9mIHRoZSBzdWJtZXJnZWQgYXJlYXMgb2YgYXBwdXJ0ZW5hbmNlcywgc3VjaCBhcyBjaGFpbnMgYXR0YWNoZWQgdG8gdGhlIHN0cnVjdHVyZSwgd2hlbiB0aGVzZSBhcmUgbm90IGVsZWN0cmljYWxseSBpc29sYXRlZCBmcm9tIHRoZSBzdHJ1Y3R1cmUuIElTTyAxMzE3NDoyMDEyIGlzIHRvIGJlIHVzZWQgaW4gcmVzcGVjdCBvZiBjYXRob2RpYyBwcm90ZWN0aW9uIHN5c3RlbXMgd2hlcmUgdGhlIGFub2RlcyBhcmUgZXhwb3NlZCB0byB3YXRlciBvciBzYWxpbmUgbXVkLiBGb3IgYnVyaWVkIGFyZWFzLCB0eXBpY2FsbHkgaW4gc29pbCBvciBzYW5kIGZpbGxlZCBhcmVhcyBiZWhpbmQgcGlsZWQgd2FsbHMgb3Igd2l0aGluIGZpbGxlZCBjYWlzc29ucywgd2hpY2ggbWF5IGJlIHNpZ25pZmljYW50bHkgYWZmZWN0ZWQgYnkgY29ycm9zaW9uLCBzcGVjaWZpYyBjYXRob2RpYyBwcm90ZWN0aW9uIGRlc2lnbiBhbmQgb3BlcmF0aW9uIHJlcXVpcmVtZW50cyBhcmUgZGVmaW5lZCBpbiBFTiAxMjk1NCwgdGhlIGFub2RlcyBiZWluZyBleHBvc2VkIHRvIHNvaWxzLiBJU08gMTMxNzQ6MjAxMiBkb2VzIG5vdCBjb3ZlciB0aGUgY2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBmaXhlZCBvciBmbG9hdGluZyBvZmZzaG9yZSBzdHJ1Y3R1cmVzIChpbmNsdWRpbmcgb2Zmc2hvcmUgbG9hZGluZyBidW95cyksIHN1Ym1hcmluZSBwaXBlbGluZXMgb3Igc2hpcHMuIElTTyAxMzE3NDoyMDEyIGRvZXMgbm90IGluY2x1ZGUgdGhlIGludGVybmFsIHByb3RlY3Rpb24gb2Ygc3VyZmFjZXMgb2YgYW55IGNvbXBvbmVudHMgc3VjaCBhcyBiYWxsYXN0IHRhbmtzLCBpbnRlcm5hbHMgb2YgZmxvYXRpbmcgc3RydWN0dXJlcyBmbG9vZGVkIGNvbXBhcnRtZW50cyBvZiBsb2NrIGFuZCBzbHVpY2UgZ2F0ZXMgb3IgdGhlIGludGVybmFscyBvZiB0dWJ1bGFyIHN0ZWVsIHBpbGVzLiBJU08gMTMxNzQ6MjAxMiBjb3ZlcnMgdGhlIGNhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3RydWN0dXJlcyBmYWJyaWNhdGVkIHByaW5jaXBhbGx5IGZyb20gYmFyZSBvciBjb2F0ZWQgY2FyYm9uIGFuZCBjYXJib24gbWFuZ2FuZXNlIHN0ZWVscy4gQXMgc29tZSBwYXJ0cyBvZiB0aGUgc3RydWN0dXJlIG1heSBiZSBtYWRlIG9mIG1ldGFsbGljIG1hdGVyaWFscyBvdGhlciB0aGFuIGNhcmJvbiBzdGVlbHMsIHRoZSBjYXRob2RpYyBwcm90ZWN0aW9uIHN5c3RlbSBzaG91bGQgYmUgZGVzaWduZWQgdG8gZW5zdXJlIHRoYXQgdGhlcmUgaXMgYSBjb21wbGV0ZSBjb250cm9sIG92ZXIgYW55IGdhbHZhbmljIGNvdXBsaW5nIGFuZCBtaW5pbWl6ZSByaXNrcyBkdWUgdG8gaHlkcm9nZW4gZW1icml0dGxlbWVudCBvciBoeWRyb2dlbi1pbmR1Y2VkIGNyYWNraW5nIChzZWUgSVNPIDEyNDczICkuIElTTyAxMzE3NDoyMDEyIGRvZXMgbm90IGFkZHJlc3Mgc3RlZWwgcmVpbmZvcmNlZCBjb25jcmV0ZSBzdHJ1Y3R1cmVzIChzZWUgRU4gMTI2OTYpLiBJU08gMTMxNzQ6MjAxMiBpcyBhcHBsaWNhYmxlIHRvIHRoZSB3aG9sZSBzdWJtZXJnZWQgem9uZSBpbiBzZWF3YXRlciwgYnJhY2tpc2ggd2F0ZXJzIGFuZCBzYWxpbmUgbXVkIGFuZCByZWxhdGVkIGJ1cmllZCBhcmVhcyB3aGljaCBjYW4gbm9ybWFsbHkgYmUgZm91bmQgaW4gcG9ydCwgaGFyYm91ciwgY29hc3RhbCBhbmQgZmxvb2QgZGVmZW5jZSBpbnN0YWxsYXRpb25zIHdoZXJldmVyIHRoZXNlIHN0cnVjdHVyZXMgYXJlIGZpeGVkIG9yIGZsb2F0aW5nLiBGb3Igc3VyZmFjZXMgd2hpY2ggYXJlIGFsdGVybmF0ZWx5IGltbWVyc2VkIGFuZCBleHBvc2VkIHRvIHRoZSBhdG1vc3BoZXJlLCB0aGUgY2F0aG9kaWMgcHJvdGVjdGlvbiBpcyBvbmx5IGVmZmVjdGl2ZSB3aGVuIHRoZSBpbW1lcnNpb24gdGltZSBpcyBsb25nIGVub3VnaCBmb3IgdGhlIHN0ZWVsIHRvIGJlY29tZSBwb2xhcml6ZWQuIFR5cGljYWxseSwgZWZmZWN0aXZlIGNhdGhvZGljIHByb3RlY3Rpb24gaXMgYWNoaWV2ZWQgZm9yIGFsbCBzdXJmYWNlcyBiZWxvdyBtaWQgdGlkZS4gRm9yIHN0cnVjdHVyZXMgc3VjaCBhcyBzaGVldCBzdGVlbCBhbmQgdHVidWxhciBzdGVlbCBwaWxlcyB0aGF0IGFyZSBkcml2ZW4gaW50byB0aGUgc2VhIGJlZCBvciB0aG9zZSB0aGF0IGFyZSBwYXJ0aWFsbHkgYnVyaWVkIG9yIGNvdmVyZWQgaW4gbXVkLCBJU08gMTMxNzQ6MjAxMiBpcyBhbHNvIGFwcGxpY2FibGUgdG8gdGhlIHN1cmZhY2VzIGJ1cmllZCwgZHJpdmVuIGFuZCBleHBvc2VkIHRvIG11ZCB3aGljaCBhcmUgaW50ZW5kZWQgdG8gcmVjZWl2ZSBjYXRob2RpYyBwcm90ZWN0aW9uIGFsb25nIHdpdGggc3VyZmFjZXMgaW1tZXJzZWQgaW4gd2F0ZXIuIENhdGhvZGljIHByb3RlY3Rpb24gbWF5IGFsc28gYmUgYXBwbGllZCB0byB0aGUgcmVhciBmYWNlcyBvZiBzaGVldCBzdGVlbCBwaWxlZCB3YWxscyBhbmQgdGhlIGludGVybmFsIHN1cmZhY2VzIG9mIGZpbGxlZCBjYWlzc29ucy4gQ2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBzdWNoIHN1cmZhY2VzIGlzIHNwZWNpZmllZCBieSBFTiAxMjk1NC4gIiwib2JqZWN0SUQiOiI1MzY2MF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NDoyMDEyIENhdGhvZGljIHByb3RlY3Rpb24gb2YgaGFyYm91ciBpbnN0YWxsYXRpb25zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NDoyMDEyIGRlZmluZXMgdGhlIG1lYW5zIHRvIGJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgY2F0aG9kaWMgcHJvdGVjdGlvbiBpcyBlZmZpY2llbnRseSBhcHBsaWVkIHRvIHRoZSBpbW1lcnNlZCBhbmQgZHJpdmVuL2J1cmllZCBtZXRhbGxpYyBleHRlcm5hbCBzdXJmYWNlcyBvZiBzdGVlbCBwb3J0LCBoYXJib3VyLCBjb2FzdGFsIGFuZCBmbG9vZCBkZWZlbmNlIGluc3RhbGxhdGlvbnMgYW5kIGFwcHVydGVuYW5jZXMgaW4gc2Vhd2F0ZXIgYW5kIHNhbGluZSBtdWQgdG8gcHJvdmlkZSBwcm90ZWN0aW9uIGZyb20gY29ycm9zaW9uLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQ6MjAxMiBzcGVjaWZpZXMgY2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBmaXhlZCBhbmQgZmxvYXRpbmcgcG9ydCBhbmQgaGFyYm91ciBzdHJ1Y3R1cmVzLiBUaGlzIGluY2x1ZGVzIHBpZXJzLCBqZXR0aWVzLCBkb2xwaGlucyAobW9vcmluZyBhbmQgYmVydGhpbmcpLCBzaGVldCBvciB0dWJ1bGFyIHBpbGluZywgcG9udG9vbnMsIGJ1b3lzLCBmbG9hdGluZyBkb2NrcywgbG9jayBhbmQgc2x1aWNlIGdhdGVzLiBJdCBhbHNvIHNwZWNpZmllcyBjYXRob2RpYyBwcm90ZWN0aW9uIG9mIHRoZSBzdWJtZXJnZWQgYXJlYXMgb2YgYXBwdXJ0ZW5hbmNlcywgc3VjaCBhcyBjaGFpbnMgYXR0YWNoZWQgdG8gdGhlIHN0cnVjdHVyZSwgd2hlbiB0aGVzZSBhcmUgbm90IGVsZWN0cmljYWxseSBpc29sYXRlZCBmcm9tIHRoZSBzdHJ1Y3R1cmUuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NDoyMDEyIGlzIHRvIGJlIHVzZWQgaW4gcmVzcGVjdCBvZiBjYXRob2RpYyBwcm90ZWN0aW9uIHN5c3RlbXMgd2hlcmUgdGhlIGFub2RlcyBhcmUgZXhwb3NlZCB0byB3YXRlciBvciBzYWxpbmUgbXVkLiBGb3IgYnVyaWVkIGFyZWFzLCB0eXBpY2FsbHkgaW4gc29pbCBvciBzYW5kIGZpbGxlZCBhcmVhcyBiZWhpbmQgcGlsZWQgd2FsbHMgb3Igd2l0aGluIGZpbGxlZCBjYWlzc29ucywgd2hpY2ggbWF5IGJlIHNpZ25pZmljYW50bHkgYWZmZWN0ZWQgYnkgY29ycm9zaW9uLCBzcGVjaWZpYyBjYXRob2RpYyBwcm90ZWN0aW9uIGRlc2lnbiBhbmQgb3BlcmF0aW9uIHJlcXVpcmVtZW50cyBhcmUgZGVmaW5lZCBpbiBFTiAxMjk1NCwgdGhlIGFub2RlcyBiZWluZyBleHBvc2VkIHRvIHNvaWxzLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQ6MjAxMiBkb2VzIG5vdCBjb3ZlciB0aGUgY2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBmaXhlZCBvciBmbG9hdGluZyBvZmZzaG9yZSBzdHJ1Y3R1cmVzIChpbmNsdWRpbmcgb2Zmc2hvcmUgbG9hZGluZyBidW95cyksIHN1Ym1hcmluZSBwaXBlbGluZXMgb3Igc2hpcHMuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NDoyMDEyIGRvZXMgbm90IGluY2x1ZGUgdGhlIGludGVybmFsIHByb3RlY3Rpb24gb2Ygc3VyZmFjZXMgb2YgYW55IGNvbXBvbmVudHMgc3VjaCBhcyBiYWxsYXN0IHRhbmtzLCBpbnRlcm5hbHMgb2YgZmxvYXRpbmcgc3RydWN0dXJlcyBmbG9vZGVkIGNvbXBhcnRtZW50cyBvZiBsb2NrIGFuZCBzbHVpY2UgZ2F0ZXMgb3IgdGhlIGludGVybmFscyBvZiB0dWJ1bGFyIHN0ZWVsIHBpbGVzLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQ6MjAxMiBjb3ZlcnMgdGhlIGNhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3RydWN0dXJlcyBmYWJyaWNhdGVkIHByaW5jaXBhbGx5IGZyb20gYmFyZSBvciBjb2F0ZWQgY2FyYm9uIGFuZCBjYXJib24gbWFuZ2FuZXNlIHN0ZWVscy4gQXMgc29tZSBwYXJ0cyBvZiB0aGUgc3RydWN0dXJlIG1heSBiZSBtYWRlIG9mIG1ldGFsbGljIG1hdGVyaWFscyBvdGhlciB0aGFuIGNhcmJvbiBzdGVlbHMsIHRoZSBjYXRob2RpYyBwcm90ZWN0aW9uIHN5c3RlbSBzaG91bGQgYmUgZGVzaWduZWQgdG8gZW5zdXJlIHRoYXQgdGhlcmUgaXMgYSBjb21wbGV0ZSBjb250cm9sIG92ZXIgYW55IGdhbHZhbmljIGNvdXBsaW5nIGFuZCBtaW5pbWl6ZSByaXNrcyBkdWUgdG8gaHlkcm9nZW4gZW1icml0dGxlbWVudCBvciBoeWRyb2dlbi1pbmR1Y2VkIGNyYWNraW5nIChzZWUgPGVtPklTTzwvZW0+IDEyNDczICkuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NDoyMDEyIGRvZXMgbm90IGFkZHJlc3Mgc3RlZWwgcmVpbmZvcmNlZCBjb25jcmV0ZSBzdHJ1Y3R1cmVzIChzZWUgRU4gMTI2OTYpLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQ6MjAxMiBpcyBhcHBsaWNhYmxlIHRvIHRoZSB3aG9sZSBzdWJtZXJnZWQgem9uZSBpbiBzZWF3YXRlciwgYnJhY2tpc2ggd2F0ZXJzIGFuZCBzYWxpbmUgbXVkIGFuZCByZWxhdGVkIGJ1cmllZCBhcmVhcyB3aGljaCBjYW4gbm9ybWFsbHkgYmUgZm91bmQgaW4gcG9ydCwgaGFyYm91ciwgY29hc3RhbCBhbmQgZmxvb2QgZGVmZW5jZSBpbnN0YWxsYXRpb25zIHdoZXJldmVyIHRoZXNlIHN0cnVjdHVyZXMgYXJlIGZpeGVkIG9yIGZsb2F0aW5nLiBGb3Igc3VyZmFjZXMgd2hpY2ggYXJlIGFsdGVybmF0ZWx5IGltbWVyc2VkIGFuZCBleHBvc2VkIHRvIHRoZSBhdG1vc3BoZXJlLCB0aGUgY2F0aG9kaWMgcHJvdGVjdGlvbiBpcyBvbmx5IGVmZmVjdGl2ZSB3aGVuIHRoZSBpbW1lcnNpb24gdGltZSBpcyBsb25nIGVub3VnaCBmb3IgdGhlIHN0ZWVsIHRvIGJlY29tZSBwb2xhcml6ZWQuIFR5cGljYWxseSwgZWZmZWN0aXZlIGNhdGhvZGljIHByb3RlY3Rpb24gaXMgYWNoaWV2ZWQgZm9yIGFsbCBzdXJmYWNlcyBiZWxvdyBtaWQgdGlkZS4gRm9yIHN0cnVjdHVyZXMgc3VjaCBhcyBzaGVldCBzdGVlbCBhbmQgdHVidWxhciBzdGVlbCBwaWxlcyB0aGF0IGFyZSBkcml2ZW4gaW50byB0aGUgc2VhIGJlZCBvciB0aG9zZSB0aGF0IGFyZSBwYXJ0aWFsbHkgYnVyaWVkIG9yIGNvdmVyZWQgaW4gbXVkLCA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQ6MjAxMiBpcyBhbHNvIGFwcGxpY2FibGUgdG8gdGhlIHN1cmZhY2VzIGJ1cmllZCwgZHJpdmVuIGFuZCBleHBvc2VkIHRvIG11ZCB3aGljaCBhcmUgaW50ZW5kZWQgdG8gcmVjZWl2ZSBjYXRob2RpYyBwcm90ZWN0aW9uIGFsb25nIHdpdGggc3VyZmFjZXMgaW1tZXJzZWQgaW4gd2F0ZXIuIENhdGhvZGljIHByb3RlY3Rpb24gbWF5IGFsc28gYmUgYXBwbGllZCB0byB0aGUgcmVhciBmYWNlcyBvZiBzaGVldCBzdGVlbCBwaWxlZCB3YWxscyBhbmQgdGhlIGludGVybmFsIHN1cmZhY2VzIG9mIGZpbGxlZCBjYWlzc29ucy4gQ2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBzdWNoIHN1cmZhY2VzIGlzIHNwZWNpZmllZCBieSBFTiAxMjk1NC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzQvNTM0NDkiLCJ1dWlkIjoiODVhMzhiNmYtMjE0NS00ZDM2LWEzNjgtNmZkNGE3MDJkNjM2IiwidGl0bGUiOiJJU08gMTMxODM6MjAxMiBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgQ29tbXVuaWNhdGlvbnMgYWNjZXNzIGZvciBsYW5kIG1vYmlsZXMgKENBTE0pIOKAlCBVc2luZyBicm9hZGNhc3QgY29tbXVuaWNhdGlvbnMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE4LCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxODM6MjAxMiBzcGVjaWZpZXMgdGhlIGFyY2hpdGVjdHVyYWwgY29tbXVuaWNhdGlvbnMgZnJhbWV3b3JrIG9mIGludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIChJVFMpIGZvciB0aGUgZmFtaWx5IG9mIGNvbW11bmljYXRpb25zIGFjY2VzcyBmb3IgbGFuZCBtb2JpbGVzIChDQUxNKSByZWxhdGVkIEludGVybmF0aW9uYWwgU3RhbmRhcmRzLiBUaGUgYXJjaGl0ZWN0dXJlIGlzIGRlc2NyaWJlZCBpbiBhbiBhYnN0cmFjdCB3YXkgd2l0aCBzZXZlcmFsIGdyYXBoaWNhbCB2aWV3cyBhbmQgZXhhbXBsZXMuIFRoZSBncmFwaGljYWwgcmVwcmVzZW50YXRpb25zIHBhcnRseSBmb2xsb3cgdGhlIElTTyBvcGVuIHN5c3RlbXMgaW50ZXJjb25uZWN0aW9uIChPU0kpIHByaW5jaXBsZXMuIEluIGFkZGl0aW9uIHRvIHRoZSByZXF1aXJlbWVudHMgc3BlY2lmaWVkIHdpdGhpbiBJU08gMTMxODM6MjAxMiwgYSBudW1iZXIgb2Ygbm90ZXMgYW5kIGV4YW1wbGVzIGFyZSBwcm92aWRlZCB0byBpbGx1c3RyYXRlIHRoZSBDQUxNIGNvbmNlcHQuICIsIm9iamVjdElEIjoiNTM0NDlfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+ODM6MjAxMiBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgQ29tbXVuaWNhdGlvbnMgYWNjZXNzIGZvciBsYW5kIG1vYmlsZXMgKENBTE0pIOKAlCBVc2luZyBicm9hZGNhc3QgY29tbXVuaWNhdGlvbnMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjgzOjIwMTIgc3BlY2lmaWVzIHRoZSBhcmNoaXRlY3R1cmFsIGNvbW11bmljYXRpb25zIGZyYW1ld29yayBvZiBpbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyAoSVRTKSBmb3IgdGhlIGZhbWlseSBvZiBjb21tdW5pY2F0aW9ucyBhY2Nlc3MgZm9yIGxhbmQgbW9iaWxlcyAoQ0FMTSkgcmVsYXRlZCBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkcy4gVGhlIGFyY2hpdGVjdHVyZSBpcyBkZXNjcmliZWQgaW4gYW4gYWJzdHJhY3Qgd2F5IHdpdGggc2V2ZXJhbCBncmFwaGljYWwgdmlld3MgYW5kIGV4YW1wbGVzLiBUaGUgZ3JhcGhpY2FsIHJlcHJlc2VudGF0aW9ucyBwYXJ0bHkgZm9sbG93IHRoZSA8ZW0+SVNPPC9lbT4gb3BlbiBzeXN0ZW1zIGludGVyY29ubmVjdGlvbiAoT1NJKSBwcmluY2lwbGVzLiBJbiBhZGRpdGlvbiB0byB0aGUgcmVxdWlyZW1lbnRzIHNwZWNpZmllZCB3aXRoaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjgzOjIwMTIsIGEgbnVtYmVyIG9mIG5vdGVzIGFuZCBleGFtcGxlcyBhcmUgcHJvdmlkZWQgdG8gaWxsdXN0cmF0ZSB0aGUgQ0FMTSBjb25jZXB0LiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQwMSIsInV1aWQiOiIyMzY4OGMzYS0zYWMzLTRhMWItYTMyYi03MmY1NGQxOTExYTQiLCJ0aXRsZSI6IklTTyAxMzE1MzoyMDEyIEZyYW1ld29yayBvZiB0aGUgZGVzaWduIHByb2Nlc3MgZm9yIGVuZXJneS1zYXZpbmcgc2luZ2xlLWZhbWlseSByZXNpZGVudGlhbCBhbmQgc21hbGwgY29tbWVyY2lhbCBidWlsZGluZ3MiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE4LCJvcmRlciI6MTEsInRleHQiOiJJU08gMTMxNTM6MjAxMiBzcGVjaWZpZXMgYSBmcmFtZXdvcmsgb2YgdGhlIGRlc2lnbiBwcm9jZXNzIGZvciBlbmVyZ3ktc2F2aW5nIHNpbmdsZS1mYW1pbHkgcmVzaWRlbnRpYWwgYW5kIHNtYWxsIGNvbW1lcmNpYWwgYnVpbGRpbmdzLCB3aXRoIHRoZSBlbmVyZ3kgY29uc3VtcHRpb24gcmF0aW8gYXMgdGhlIGtleSBjcml0ZXJpb24uIEl0IGlzIGludGVuZGVkIHRvIGFzc2lzdCBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgZGVzaWduIGd1aWRlbGluZXMgZm9yIHByYWN0aXRpb25lcnMgd2hvIGRlc2lnbiBlbmVyZ3ktcmVsYXRlZCBwYXJ0cyBvZiBidWlsZGluZ3MuICIsIm9iamVjdElEIjoiNTM0MDFfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NTM6MjAxMiBGcmFtZXdvcmsgb2YgdGhlIGRlc2lnbiBwcm9jZXNzIGZvciBlbmVyZ3ktc2F2aW5nIHNpbmdsZS1mYW1pbHkgcmVzaWRlbnRpYWwgYW5kIHNtYWxsIGNvbW1lcmNpYWwgYnVpbGRpbmdzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT41MzoyMDEyIHNwZWNpZmllcyBhIGZyYW1ld29yayBvZiB0aGUgZGVzaWduIHByb2Nlc3MgZm9yIGVuZXJneS1zYXZpbmcgc2luZ2xlLWZhbWlseSByZXNpZGVudGlhbCBhbmQgc21hbGwgY29tbWVyY2lhbCBidWlsZGluZ3MsIHdpdGggdGhlIGVuZXJneSBjb25zdW1wdGlvbiByYXRpbyBhcyB0aGUga2V5IGNyaXRlcmlvbi4gSXQgaXMgaW50ZW5kZWQgdG8gYXNzaXN0IGluIHRoZSBkZXZlbG9wbWVudCBvZiBkZXNpZ24gZ3VpZGVsaW5lcyBmb3IgcHJhY3RpdGlvbmVycyB3aG8gZGVzaWduIGVuZXJneS1yZWxhdGVkIHBhcnRzIG9mIGJ1aWxkaW5ncy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzAvNTMwNTAiLCJ1dWlkIjoiMmI2NGE4MDYtNGFlYS00MTlhLWE2YTAtN2QxNjhiYjlhYmFiIiwidGl0bGUiOiJJU08gMTMxMjk6MjAxMiBQYWludHMgYW5kIHZhcm5pc2hlcyDigJQgRWxlY3Ryb2NoZW1pY2FsIG1lYXN1cmVtZW50IG9mIHRoZSBwcm90ZWN0aW9uIHByb3ZpZGVkIHRvIHN0ZWVsIGJ5IHBhaW50IGNvYXRpbmdzIOKAlCBDdXJyZW50IGludGVycnVwdGVyIChDSSkgdGVjaG5pcXVlLCByZWxheGF0aW9uIHZvbHRhbW1ldHJ5IChSVikgdGVjaG5pcXVlIGFuZCBEQyB0cmFuc2llbnQgKERDVCkgbWVhc3VyZW1lbnRzIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOCwib3JkZXIiOjExLCJ0ZXh0IjoiMSBTY29wZSBUaGlzIEludGVybmF0aW9uYWwgU3RhbmRhcmQgc3BlY2lmaWVzIHRoZSBwcm9jZWR1cmUgZm9yIGV2YWx1YXRpb24gb2YgdGhlIGV4cGVyaW1lbnRhbCBzZXQtdXAgb2YgZWxlY3Ryb2NoZW1pY2FsIG1lYXN1cmVtZW50cyBvbiBoaWdoLWltcGVkYW5jZSBjb2F0ZWQgc2FtcGxlcyB1c2luZyBtZXRob2RzIHRoYXQgYXJlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGludGVycnVwdGVyIChDSSkgdGVjaG5pcXVlLCByZWxheGF0aW9uIHZvbHRhbW1ldHJ5IChSVikgb3IgREMgdHJhbnNpZW50IChEQ1QpIG1lYXN1cmVtZW50cy4gSXQgcHJvdmlkZXMgc3BlY2lmaWMgZGVmaW5pdGlvbnMgYW5kIGd1aWRhbmNlIG9uIG9wdGltaXppbmcgdGhlIGNvbGxlY3Rpb24gb2YgQ0ksIFJWIGFuZCBEQ1QgZGF0YSBmcm9tIGhpZ2hpbXBlZGFuY2Ugc3lzdGVtcy4gSGlnaCBpbXBlZGFuY2UgaW4gdGhlIGNvbnRleHQgb2YgaW50YWN0IGNvYXRpbmdzIHJlZmVycyB0byBzeXN0ZW1zIHdpdGggYW4gaW1wZWRhbmNlIGdyZWF0ZXIgdGhhbiAxMDkgzqkvY20yLiBUaGlzIGRvZXMgbm90IHByZWNsdWRlIG1lYXN1cmVtZW50cyBvbiBzeXN0ZW1zIHdpdGggbG93ZXIgaW1wZWRhbmNlLiBUaGlzIEludGVybmF0aW9uYWwgU3RhbmRhcmQgZGVhbHMgaW4gcGFydGljdWxhciB3aXRoOiDigJQgaW5zdHJ1bWVudGFsIHNldC11cDogcmVxdWlyZW1lbnRzIGFuZCBzaG9ydGNvbWluZ3M7IOKAlCBkYXRhIHZhbGlkYXRpb246IGNoZWNraW5nIHRoZSBtZWFzdXJlbWVudCByYW5nZSBhbmQgdGhlIGFjY3VyYWN5IG9mIHRoZSBkYXRhOyDigJQgcGVyZm9ybWluZyBDSSwgUlYsIERDVCBtZWFzdXJlbWVudHM6IHNwZWNpbWVuIGNvbnNpZGVyYXRpb25zIGFuZCBpbnN0cnVtZW50YWwgcGFyYW1ldGVyczsg4oCUIHRoZSBleHBlcmltZW50YWwgcmVzdWx0czogZGlmZmVyZW50IG1ldGhvZHMgb2YgcHJlc2VudGluZyBDSSwgUlYgYW5kIERDVCBkYXRhLiBGb2xsb3dpbmcgdGhlIHJlY29tbWVuZGF0aW9ucyBzaG91bGQgZW5zdXJlIHRoZSBhY3F1aXNpdGlvbiBvZiBDSSwgUlYgYW5kIERDVCBkYXRhIHRoYXQgY2FuIGJlIHVzZWQgdG8gc3R1ZHkgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBzcGVjaW1lbi4gVGhpcyBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIGRvZXMgbm90IGdpdmUgZ3VpZGVsaW5lcyBmb3IgdGhlIGludGVycHJldGF0aW9uIG9mIHRoZSBkYXRhLiAiLCJvYmplY3RJRCI6IjUzMDUwXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjI5OjIwMTIgUGFpbnRzIGFuZCB2YXJuaXNoZXMg4oCUIEVsZWN0cm9jaGVtaWNhbCBtZWFzdXJlbWVudCBvZiB0aGUgcHJvdGVjdGlvbiBwcm92aWRlZCB0byBzdGVlbCBieSBwYWludCBjb2F0aW5ncyDigJQgQ3VycmVudCBpbnRlcnJ1cHRlciAoQ0kpIHRlY2huaXF1ZSwgcmVsYXhhdGlvbiB2b2x0YW1tZXRyeSAoUlYpIHRlY2huaXF1ZSBhbmQgREMgdHJhbnNpZW50IChEQ1QpIG1lYXN1cmVtZW50cyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiIxIFNjb3BlIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBzcGVjaWZpZXMgdGhlIHByb2NlZHVyZSBmb3IgZXZhbHVhdGlvbiBvZiB0aGUgZXhwZXJpbWVudGFsIHNldC11cCBvZiBlbGVjdHJvY2hlbWljYWwgbWVhc3VyZW1lbnRzIG9uIGhpZ2gtaW1wZWRhbmNlIGNvYXRlZCBzYW1wbGVzIHVzaW5nIG1ldGhvZHMgdGhhdCBhcmUgYmFzZWQgb24gdGhlIGN1cnJlbnQgaW50ZXJydXB0ZXIgKENJKSB0ZWNobmlxdWUsIHJlbGF4YXRpb24gdm9sdGFtbWV0cnkgKFJWKSBvciBEQyB0cmFuc2llbnQgKERDVCkgbWVhc3VyZW1lbnRzLiBJdCBwcm92aWRlcyBzcGVjaWZpYyBkZWZpbml0aW9ucyBhbmQgZ3VpZGFuY2Ugb24gb3B0aW1pemluZyB0aGUgY29sbGVjdGlvbiBvZiBDSSwgUlYgYW5kIERDVCBkYXRhIGZyb20gaGlnaGltcGVkYW5jZSBzeXN0ZW1zLiBIaWdoIGltcGVkYW5jZSBpbiB0aGUgY29udGV4dCBvZiBpbnRhY3QgY29hdGluZ3MgcmVmZXJzIHRvIHN5c3RlbXMgd2l0aCBhbiBpbXBlZGFuY2UgZ3JlYXRlciB0aGFuIDEwOSDOqS9jbTIuIFRoaXMgZG9lcyBub3QgcHJlY2x1ZGUgbWVhc3VyZW1lbnRzIG9uIHN5c3RlbXMgd2l0aCBsb3dlciBpbXBlZGFuY2UuIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBkZWFscyBpbiBwYXJ0aWN1bGFyIHdpdGg6IOKAlCBpbnN0cnVtZW50YWwgc2V0LXVwOiByZXF1aXJlbWVudHMgYW5kIHNob3J0Y29taW5nczsg4oCUIGRhdGEgdmFsaWRhdGlvbjogY2hlY2tpbmcgdGhlIG1lYXN1cmVtZW50IHJhbmdlIGFuZCB0aGUgYWNjdXJhY3kgb2YgdGhlIGRhdGE7IOKAlCBwZXJmb3JtaW5nIENJLCBSViwgRENUIG1lYXN1cmVtZW50czogc3BlY2ltZW4gY29uc2lkZXJhdGlvbnMgYW5kIGluc3RydW1lbnRhbCBwYXJhbWV0ZXJzOyDigJQgdGhlIGV4cGVyaW1lbnRhbCByZXN1bHRzOiBkaWZmZXJlbnQgbWV0aG9kcyBvZiBwcmVzZW50aW5nIENJLCBSViBhbmQgRENUIGRhdGEuIEZvbGxvd2luZyB0aGUgcmVjb21tZW5kYXRpb25zIHNob3VsZCBlbnN1cmUgdGhlIGFjcXVpc2l0aW9uIG9mIENJLCBSViBhbmQgRENUIGRhdGEgdGhhdCBjYW4gYmUgdXNlZCB0byBzdHVkeSB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIHNwZWNpbWVuLiBUaGlzIEludGVybmF0aW9uYWwgU3RhbmRhcmQgZG9lcyBub3QgZ2l2ZSBndWlkZWxpbmVzIGZvciB0aGUgaW50ZXJwcmV0YXRpb24gb2YgdGhlIGRhdGEuICIsIm1hdGNoTGV2ZWwiOiJub25lIiwibWF0Y2hlZFdvcmRzIjpbXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzMwLzUzMDA5IiwidXVpZCI6IjE5OTJlOGRmLWExZDctNGY1Yy1iNGZlLTRmOGVkZDk5N2IyZSIsInRpdGxlIjoiSVNPIDEzMTI1OjIwMTMgRmluZSBjZXJhbWljcyAoYWR2YW5jZWQgY2VyYW1pY3MsIGFkdmFuY2VkIHRlY2huaWNhbCBjZXJhbWljcykg4oCUIFRlc3QgbWV0aG9kIGZvciBhbnRpZnVuZ2FsIGFjdGl2aXR5IG9mIHNlbWljb25kdWN0aW5nIHBob3RvY2F0YWx5dGljIG1hdGVyaWFscyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTgsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEyNToyMDEzIHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGNvdmVyaW5nIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHRoZSBhbnRpZnVuZ2FsIGFjdGl2aXR5IG9mIG1hdGVyaWFscyB0aGF0IGNvbnRhaW4gYSBwaG90b2NhdGFseXN0IG9yIGhhdmUgcGhvdG9jYXRhbHl0aWMgZmlsbXMgb24gdGhlaXIgc3VyZmFjZSwgYnkgY291bnRpbmcgdGhlIG51bWJlciBvZiBwcmUtaW5jdWJhdGVkIGZ1bmdhbCBzcG9yZXMgdGhhdCBzdXJ2aXZlIGV4cG9zdXJlIHRvIHVsdHJhdmlvbGV0IChVVi1BKSBsaWdodC4gSVNPIDEzMTI1OjIwMTMgcHJvdmlkZXMgZm9yIHRoZSBhc3Nlc3NtZW50IG9mIGRpZmZlcmVudCBraW5kcyBvbiBtYXRlcmlhbHMgdXNlZCBpbiB2YXJpb3VzIGFwcGxpY2F0aW9ucywgc3VjaCBhcyBjb25zdHJ1Y3Rpb24gbWF0ZXJpYWxzIGluIGZsYXQgY29hdGluZywgc2hlZXQsIGJvYXJkIG9yIHBsYXRlIGZvcm0sIGV0Yy4gUG93ZGVyLCBncmFudWxhciwgZmlicm91cyBvciBwb3JvdXMgcGhvdG9jYXRhbHl0aWMgbWF0ZXJpYWxzIGFyZSBub3QgaW5jbHVkZWQuIFZhbHVlcyBleHByZXNzZWQgaW4gSVNPIDEzMTI1OjIwMTMgYXJlIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgSW50ZXJuYXRpb25hbCBTeXN0ZW0gb2YgVW5pdHMgKFNJKS4gIiwib2JqZWN0SUQiOiI1MzAwOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yNToyMDEzIEZpbmUgY2VyYW1pY3MgKGFkdmFuY2VkIGNlcmFtaWNzLCBhZHZhbmNlZCB0ZWNobmljYWwgY2VyYW1pY3MpIOKAlCBUZXN0IG1ldGhvZCBmb3IgYW50aWZ1bmdhbCBhY3Rpdml0eSBvZiBzZW1pY29uZHVjdGluZyBwaG90b2NhdGFseXRpYyBtYXRlcmlhbHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjI1OjIwMTMgc3BlY2lmaWVzIGEgdGVzdCBtZXRob2QgY292ZXJpbmcgdGhlIGRldGVybWluYXRpb24gb2YgdGhlIGFudGlmdW5nYWwgYWN0aXZpdHkgb2YgbWF0ZXJpYWxzIHRoYXQgY29udGFpbiBhIHBob3RvY2F0YWx5c3Qgb3IgaGF2ZSBwaG90b2NhdGFseXRpYyBmaWxtcyBvbiB0aGVpciBzdXJmYWNlLCBieSBjb3VudGluZyB0aGUgbnVtYmVyIG9mIHByZS1pbmN1YmF0ZWQgZnVuZ2FsIHNwb3JlcyB0aGF0IHN1cnZpdmUgZXhwb3N1cmUgdG8gdWx0cmF2aW9sZXQgKFVWLUEpIGxpZ2h0LiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjU6MjAxMyBwcm92aWRlcyBmb3IgdGhlIGFzc2Vzc21lbnQgb2YgZGlmZmVyZW50IGtpbmRzIG9uIG1hdGVyaWFscyB1c2VkIGluIHZhcmlvdXMgYXBwbGljYXRpb25zLCBzdWNoIGFzIGNvbnN0cnVjdGlvbiBtYXRlcmlhbHMgaW4gZmxhdCBjb2F0aW5nLCBzaGVldCwgYm9hcmQgb3IgcGxhdGUgZm9ybSwgZXRjLiBQb3dkZXIsIGdyYW51bGFyLCBmaWJyb3VzIG9yIHBvcm91cyBwaG90b2NhdGFseXRpYyBtYXRlcmlhbHMgYXJlIG5vdCBpbmNsdWRlZC4gVmFsdWVzIGV4cHJlc3NlZCBpbiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjU6MjAxMyBhcmUgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBJbnRlcm5hdGlvbmFsIFN5c3RlbSBvZiBVbml0cyAoU0kpLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8yOS81Mjk3OSIsInV1aWQiOiJhNGEwN2E5OC1lYzljLTRiYWQtYjNkYy0wOGYzODQyMjEyNjciLCJ0aXRsZSI6IklTTyAxMzEyMjoyMDExIFNoaXBzIGFuZCBtYXJpbmUgdGVjaG5vbG9neSDigJQgTGF1bmNoaW5nIGFwcGxpYW5jZXMgZm9yIGRhdml0LWxhdW5jaGVkIGxpZmVyYWZ0cyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTgsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzEyMjoyMDExIHNwZWNpZmllcyByZXF1aXJlbWVudHMgZm9yIHRoZSBwZXJmb3JtYW5jZSwgZGVzaWduLCBjb25zdHJ1Y3Rpb24sIG9wZXJhdGlvbiwgc2FmZXR5LCBpbnNwZWN0aW9uLCBtYWludGVuYW5jZSwgYW5kIHRlc3RpbmcgYW5kIGFjY2VwdGFuY2Ugb2YgbGF1bmNoaW5nIGFwcGxpYW5jZXMgZm9yIGRhdml0LWxhdW5jaGVkIGxpZmVyYWZ0cyBpbnN0YWxsZWQgb24gYSB2YXJpZXR5IG9mIHNlYS1nb2luZyBzaGlwcy4gIiwib2JqZWN0SUQiOiI1Mjk3OV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yMjoyMDExIFNoaXBzIGFuZCBtYXJpbmUgdGVjaG5vbG9neSDigJQgTGF1bmNoaW5nIGFwcGxpYW5jZXMgZm9yIGRhdml0LWxhdW5jaGVkIGxpZmVyYWZ0cyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjI6MjAxMSBzcGVjaWZpZXMgcmVxdWlyZW1lbnRzIGZvciB0aGUgcGVyZm9ybWFuY2UsIGRlc2lnbiwgY29uc3RydWN0aW9uLCBvcGVyYXRpb24sIHNhZmV0eSwgaW5zcGVjdGlvbiwgbWFpbnRlbmFuY2UsIGFuZCB0ZXN0aW5nIGFuZCBhY2NlcHRhbmNlIG9mIGxhdW5jaGluZyBhcHBsaWFuY2VzIGZvciBkYXZpdC1sYXVuY2hlZCBsaWZlcmFmdHMgaW5zdGFsbGVkIG9uIGEgdmFyaWV0eSBvZiBzZWEtZ29pbmcgc2hpcHMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzI4LzUyODk4IiwidXVpZCI6ImY2NjYxNmVkLWQxOTMtNGVlMS1hYmUwLTM3NDg4MjRlN2FlOSIsInRpdGxlIjoiSVNPIDEzMTEwOjIwMTIgQ2lnYXJldHRlcyDigJQgRGV0ZXJtaW5hdGlvbiBvZiBtZW50aG9sIGluIHNtb2tlIGNvbmRlbnNhdGVzIOKAlCBHYXMtY2hyb21hdG9ncmFwaGljIG1ldGhvZCIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTgsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMzExMDoyMDEyIHNwZWNpZmllcyBhIG1ldGhvZCBmb3IgdGhlIGdhcy1jaHJvbWF0b2dyYXBoaWMgZGV0ZXJtaW5hdGlvbiBvZiBtZW50aG9sIGluIHRoZSB0b3RhbCBwYXJ0aWN1bGF0ZSBtYXR0ZXIgKFRQTSkgb2YgbWVudGhvbGF0ZWQgY2lnYXJldHRlIHNtb2tlIGNvbmRlbnNhdGVzLiBUaGUgc21va2luZyBvZiBjaWdhcmV0dGVzIGFuZCB0aGUgY29sbGVjdGlvbiBvZiBtYWluc3RyZWFtIHNtb2tlIGFyZSBjYXJyaWVkIG91dCBpbiBhY2NvcmRhbmNlIHdpdGggSVNPIDQzODcgd2l0aCBzb21lIGV4Y2VwdGlvbnMuIEVuY2Fwc3VsYXRlZCBtZW50aG9sIGluIHNwZWNpZmljIHByb2R1Y3RzIG1heSBsZWFkIHRvIHNwZWNpZmljIGhhbmRsaW5nIG5vdCBkZXNjcmliZWQgaW4gSVNPIDEzMTEwOjIwMTIuICIsIm9iamVjdElEIjoiNTI4OThfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MTA6MjAxMiBDaWdhcmV0dGVzIOKAlCBEZXRlcm1pbmF0aW9uIG9mIG1lbnRob2wgaW4gc21va2UgY29uZGVuc2F0ZXMg4oCUIEdhcy1jaHJvbWF0b2dyYXBoaWMgbWV0aG9kIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xMDoyMDEyIHNwZWNpZmllcyBhIG1ldGhvZCBmb3IgdGhlIGdhcy1jaHJvbWF0b2dyYXBoaWMgZGV0ZXJtaW5hdGlvbiBvZiBtZW50aG9sIGluIHRoZSB0b3RhbCBwYXJ0aWN1bGF0ZSBtYXR0ZXIgKFRQTSkgb2YgbWVudGhvbGF0ZWQgY2lnYXJldHRlIHNtb2tlIGNvbmRlbnNhdGVzLiBUaGUgc21va2luZyBvZiBjaWdhcmV0dGVzIGFuZCB0aGUgY29sbGVjdGlvbiBvZiBtYWluc3RyZWFtIHNtb2tlIGFyZSBjYXJyaWVkIG91dCBpbiBhY2NvcmRhbmNlIHdpdGggPGVtPklTTzwvZW0+IDQzODcgd2l0aCBzb21lIGV4Y2VwdGlvbnMuIEVuY2Fwc3VsYXRlZCBtZW50aG9sIGluIHNwZWNpZmljIHByb2R1Y3RzIG1heSBsZWFkIHRvIHNwZWNpZmljIGhhbmRsaW5nIG5vdCBkZXNjcmliZWQgaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjEwOjIwMTIuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA3LzI1LzcyNTYxIiwidXVpZCI6IjI4ZGI3ZTQ3LTgwNmQtNGRkZS1hZTMyLTZjMzY4ZWU0ZjFmOCIsInRpdGxlIjoiSVNPIDEzMTA1LTI6MjAxNC9BbWQgMToyMDE3IEJ1aWxkaW5nIGNvbnN0cnVjdGlvbiBtYWNoaW5lcnkgYW5kIGVxdWlwbWVudCDigJQgTWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcg4oCUIFBhcnQgMjogU2FmZXR5IHJlcXVpcmVtZW50cyBhbmQgdmVyaWZpY2F0aW9uIOKAlCBBbWVuZG1lbnQgMSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTcsIm9yZGVyIjoxMSwib2JqZWN0SUQiOiI3MjU2MV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4wNS0yOjIwMTQvQW1kIDE6MjAxNyBCdWlsZGluZyBjb25zdHJ1Y3Rpb24gbWFjaGluZXJ5IGFuZCBlcXVpcG1lbnQg4oCUIE1hY2hpbmVyeSBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nIOKAlCBQYXJ0IDI6IFNhZmV0eSByZXF1aXJlbWVudHMgYW5kIHZlcmlmaWNhdGlvbiDigJQgQW1lbmRtZW50IDEiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy8wMC83MDAzNCIsInV1aWQiOiIxY2VmNzEyOS00NjlkLTRmMTEtYTlmZC04OWFiZWI5MTc0MmUiLCJ0aXRsZSI6IklTTyAxMzE0MToyMDE1L0FtZCAxOjIwMTcgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgTG9jYWxpc2F0aW9uIGF1Z21lbnRhdGlvbiBjb21tdW5pY2F0aW9uIGZvciBhdXRvbm9tb3VzIHN5c3RlbXMg4oCUIEFtZW5kbWVudCAxIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxNywib3JkZXIiOjExLCJvYmplY3RJRCI6IjcwMDM0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQxOjIwMTUvQW1kIDE6MjAxNyBFbGVjdHJvbmljIGZlZSBjb2xsZWN0aW9uIOKAlCBMb2NhbGlzYXRpb24gYXVnbWVudGF0aW9uIGNvbW11bmljYXRpb24gZm9yIGF1dG9ub21vdXMgc3lzdGVtcyDigJQgQW1lbmRtZW50IDEiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi8zMC82MzA5MSIsInV1aWQiOiJhYWNhNjk4MC1jYzM3LTRjN2UtOWFiYy1jZmE4Y2Y5MTIwOTkiLCJ0aXRsZSI6IklTTyAxMzEyNzoyMDEyL0NvciAxOjIwMTIgUGFja2FnaW5nIOKAlCBDaGlsZCByZXNpc3RhbnQgcGFja2FnaW5nIOKAlCBNZWNoYW5pY2FsIHRlc3QgbWV0aG9kcyBmb3IgcmVjbG9zYWJsZSBjaGlsZCByZXNpc3RhbnQgcGFja2FnaW5nIHN5c3RlbXMg4oCUIFRlY2huaWNhbCBDb3JyaWdlbmR1bSAxIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxMiwib3JkZXIiOjExLCJvYmplY3RJRCI6IjYzMDkxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjI3OjIwMTIvQ29yIDE6MjAxMiBQYWNrYWdpbmcg4oCUIENoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcg4oCUIE1lY2hhbmljYWwgdGVzdCBtZXRob2RzIGZvciByZWNsb3NhYmxlIGNoaWxkIHJlc2lzdGFudCBwYWNrYWdpbmcgc3lzdGVtcyDigJQgVGVjaG5pY2FsIENvcnJpZ2VuZHVtIDEiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNy84OC83ODgwMiIsInV1aWQiOiJkZTMzZjU3YS00MzBjLTQ4OTctODBhMy1hOTI0MWU0ZWI0Y2YiLCJ0aXRsZSI6IklTTyAxMzE2NS0xIFdhdGVyIHF1YWxpdHkg4oCUIFJhZGl1bS0yMjYg4oCUIFBhcnQgMTogVGVzdCBtZXRob2QgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJzdGF0dXMiOiJVbmRlciBkZXZlbG9wbWVudCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMiwib2JqZWN0SUQiOiI3ODgwMl8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0xIFdhdGVyIHF1YWxpdHkg4oCUIFJhZGl1bS0yMjYg4oCUIFBhcnQgMTogVGVzdCBtZXRob2QgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQwNiIsInV1aWQiOiJkNjI4NDdkZC05OGUxLTRjNjYtOTJjNi03ZjhjOTEyOWUwNWMiLCJ0aXRsZSI6IklTTyAxMzE2NS0yOjIwMTQgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAyOiBUZXN0IG1ldGhvZCB1c2luZyBlbWFub21ldHJ5Iiwic3RhdHVzIjoiV2l0aGRyYXduIiwieWVhciI6MjAyMiwib3JkZXIiOjEwMCwidGV4dCI6IklTTyAxMzE2NS0yOjIwMTQgc3BlY2lmaWVzIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZGl1bS0yMjYgKCAyMjYgUmEpIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIGJ5IGVtYW5vbWV0cnkuIFRoZSBtZXRob2Qgc3BlY2lmaWVkIGlzIHN1aXRhYmxlIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiB0aGUgc29sdWJsZSwgc3VzcGVuZGVkLCBhbmQgdG90YWwgMjI2IFJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIHdpdGggc29sdWJsZSAyMjYgUmEgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgZ3JlYXRlciB0aGFuIDAsMDIgQnEgbCDiiJIxIC4gSW4gd2F0ZXIgY29udGFpbmluZyBoaWdoIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIG9mIDIyOCBUaCwgaW50ZXJmZXJlbmNlIGZyb20gMjIwIFJuIGRlY2F5IHByb2R1Y3RzIGNhbiBsZWFkIHRvIG92ZXJlc3RpbWF0aW9uIG9mIG1lYXN1cmVkIGxldmVscy4gIiwib2JqZWN0SUQiOiI1MzQwNl8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0yOjIwMTQgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAyOiBUZXN0IG1ldGhvZCB1c2luZyBlbWFub21ldHJ5IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NS0yOjIwMTQgc3BlY2lmaWVzIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZGl1bS0yMjYgKCAyMjYgUmEpIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIGJ5IGVtYW5vbWV0cnkuIFRoZSBtZXRob2Qgc3BlY2lmaWVkIGlzIHN1aXRhYmxlIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiB0aGUgc29sdWJsZSwgc3VzcGVuZGVkLCBhbmQgdG90YWwgMjI2IFJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gYWxsIHR5cGVzIG9mIHdhdGVyIHdpdGggc29sdWJsZSAyMjYgUmEgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgZ3JlYXRlciB0aGFuIDAsMDIgQnEgbCDiiJIxIC4gSW4gd2F0ZXIgY29udGFpbmluZyBoaWdoIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIG9mIDIyOCBUaCwgaW50ZXJmZXJlbmNlIGZyb20gMjIwIFJuIGRlY2F5IHByb2R1Y3RzIGNhbiBsZWFkIHRvIG92ZXJlc3RpbWF0aW9uIG9mIG1lYXN1cmVkIGxldmVscy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzMvNTMzMzAiLCJ1dWlkIjoiYjZlYjIxNDYtYTRiMy00NGNlLWIwNzMtYjc1NDljMzZlNDg2IiwidGl0bGUiOiJJU08gMTMxMzc6MjAxMyBXb3JrcGxhY2UgYXRtb3NwaGVyZXMg4oCUIFB1bXBzIGZvciBwZXJzb25hbCBzYW1wbGluZyBvZiBjaGVtaWNhbCBhbmQgYmlvbG9naWNhbCBhZ2VudHMg4oCUIFJlcXVpcmVtZW50cyBhbmQgdGVzdCBtZXRob2RzIiwic3RhdHVzIjoiV2l0aGRyYXduIiwieWVhciI6MjAyMiwib3JkZXIiOjEwMCwidGV4dCI6IklTTyAxMzEzNzoyMDEzIHNwZWNpZmllcyBwZXJmb3JtYW5jZSByZXF1aXJlbWVudHMgZm9yIGJhdHRlcnkgcG93ZXJlZCBwdW1wcyB1c2VkIGZvciBwZXJzb25hbCBzYW1wbGluZyBvZiBjaGVtaWNhbCBhbmQgYmlvbG9naWNhbCBhZ2VudHMgaW4gd29ya3BsYWNlIGFpci4gSXQgYWxzbyBzcGVjaWZpZXMgdGVzdCBtZXRob2RzIGluIG9yZGVyIHRvIGRldGVybWluZSB0aGUgcGVyZm9ybWFuY2UgY2hhcmFjdGVyaXN0aWNzIG9mIHN1Y2ggcHVtcHMgdW5kZXIgcHJlc2NyaWJlZCBsYWJvcmF0b3J5IGNvbmRpdGlvbnMuIElTTyAxMzEzNzoyMDEzIGlzIGFwcGxpY2FibGUgdG8gYmF0dGVyeSBwb3dlcmVkIHB1bXBzIGhhdmluZyBhIG5vbWluYWwgdm9sdW1lIGZsb3cgcmF0ZSBhYm92ZSAxMCBtbCDii4UgbWluIOKIkjEgLCBhcyB1c2VkIHdpdGggY29tYmluYXRpb25zIG9mIHNhbXBsZXIgYW5kIGNvbGxlY3Rpb24gc3Vic3RyYXRlIGZvciBzYW1wbGluZyBvZiBnYXNlcywgdmFwb3VycywgZHVzdHMsIGZ1bWVzLCBtaXN0cyBhbmQgZmlicmVzLiBJU08gMTMxMzc6MjAxMyBpcyBwcmltYXJpbHkgaW50ZW5kZWQgZm9yIGZsb3ctY29udHJvbGxlZCBwdW1wcy4gIiwib2JqZWN0SUQiOiI1MzMzMF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4zNzoyMDEzIFdvcmtwbGFjZSBhdG1vc3BoZXJlcyDigJQgUHVtcHMgZm9yIHBlcnNvbmFsIHNhbXBsaW5nIG9mIGNoZW1pY2FsIGFuZCBiaW9sb2dpY2FsIGFnZW50cyDigJQgUmVxdWlyZW1lbnRzIGFuZCB0ZXN0IG1ldGhvZHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjM3OjIwMTMgc3BlY2lmaWVzIHBlcmZvcm1hbmNlIHJlcXVpcmVtZW50cyBmb3IgYmF0dGVyeSBwb3dlcmVkIHB1bXBzIHVzZWQgZm9yIHBlcnNvbmFsIHNhbXBsaW5nIG9mIGNoZW1pY2FsIGFuZCBiaW9sb2dpY2FsIGFnZW50cyBpbiB3b3JrcGxhY2UgYWlyLiBJdCBhbHNvIHNwZWNpZmllcyB0ZXN0IG1ldGhvZHMgaW4gb3JkZXIgdG8gZGV0ZXJtaW5lIHRoZSBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpY3Mgb2Ygc3VjaCBwdW1wcyB1bmRlciBwcmVzY3JpYmVkIGxhYm9yYXRvcnkgY29uZGl0aW9ucy4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjM3OjIwMTMgaXMgYXBwbGljYWJsZSB0byBiYXR0ZXJ5IHBvd2VyZWQgcHVtcHMgaGF2aW5nIGEgbm9taW5hbCB2b2x1bWUgZmxvdyByYXRlIGFib3ZlIDEwIG1sIOKLhSBtaW4g4oiSMSAsIGFzIHVzZWQgd2l0aCBjb21iaW5hdGlvbnMgb2Ygc2FtcGxlciBhbmQgY29sbGVjdGlvbiBzdWJzdHJhdGUgZm9yIHNhbXBsaW5nIG9mIGdhc2VzLCB2YXBvdXJzLCBkdXN0cywgZnVtZXMsIG1pc3RzIGFuZCBmaWJyZXMuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4zNzoyMDEzIGlzIHByaW1hcmlseSBpbnRlbmRlZCBmb3IgZmxvdy1jb250cm9sbGVkIHB1bXBzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8yOS81Mjk1MSIsInV1aWQiOiI5ZWZlYTcxNi1iODQ2LTQxZDUtOGQ4My0xNDJlMmRlM2NhODMiLCJ0aXRsZSI6IklTTyAxMzExOToyMDEyIEhlYWx0aCBpbmZvcm1hdGljcyDigJQgQ2xpbmljYWwga25vd2xlZGdlIHJlc291cmNlcyDigJQgTWV0YWRhdGEiLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTAwLCJ0ZXh0IjoiSVNPIDEzMTE5OjIwMTIgc3BlY2lmaWVzIGEgbnVtYmVyIG9mIG1ldGFkYXRhIGVsZW1lbnRzIHRoYXQgZGVzY3JpYmUgcmVzb3VyY2VzIGNvbnRhaW5pbmcgbWVkaWNhbCBrbm93bGVkZ2UuIEl0IGlzIHByaW1hcmlseSBhcHBsaWNhYmxlIHRvIGRpZ2l0YWwgZG9jdW1lbnRzIHByb3ZpZGVkIGFzIHdlYiByZXNvdXJjZXMsIGFjY2Vzc2libGUgZnJvbSBkYXRhYmFzZXMgb3IgdmlhIGZpbGUgdHJhbnNmZXIsIGJ1dCBjYW4gYmUgYXBwbGljYWJsZSBhbHNvIHRvIHBhcGVyIGRvY3VtZW50cywgZS5nLiBhcnRpY2xlcyBpbiBtZWRpY2FsIGxpdGVyYXR1cmUuICIsIm9iamVjdElEIjoiNTI5NTFfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MTk6MjAxMiBIZWFsdGggaW5mb3JtYXRpY3Mg4oCUIENsaW5pY2FsIGtub3dsZWRnZSByZXNvdXJjZXMg4oCUIE1ldGFkYXRhIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4xOToyMDEyIHNwZWNpZmllcyBhIG51bWJlciBvZiBtZXRhZGF0YSBlbGVtZW50cyB0aGF0IGRlc2NyaWJlIHJlc291cmNlcyBjb250YWluaW5nIG1lZGljYWwga25vd2xlZGdlLiBJdCBpcyBwcmltYXJpbHkgYXBwbGljYWJsZSB0byBkaWdpdGFsIGRvY3VtZW50cyBwcm92aWRlZCBhcyB3ZWIgcmVzb3VyY2VzLCBhY2Nlc3NpYmxlIGZyb20gZGF0YWJhc2VzIG9yIHZpYSBmaWxlIHRyYW5zZmVyLCBidXQgY2FuIGJlIGFwcGxpY2FibGUgYWxzbyB0byBwYXBlciBkb2N1bWVudHMsIGUuZy4gYXJ0aWNsZXMgaW4gbWVkaWNhbCBsaXRlcmF0dXJlLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS82NC81NjQ2MyIsInV1aWQiOiJhOWUxYWYxMC1iM2FiLTRkN2ItYjU3OC0zNTkwMTNkNWJhODciLCJ0aXRsZSI6IklTTyAxMzE2MzoyMDEzIFdhdGVyIHF1YWxpdHkg4oCUIExlYWQtMjEwIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjIwMjEsIm9yZGVyIjoxMDAsInRleHQiOiJJU08gMTMxNjMgc3BlY2lmaWVzIHRoZSBkZXRlcm1pbmF0aW9uIG9mIGxlYWQtMjEwICgyMTBQYikgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBzYW1wbGVzIG9mIGFsbCB0eXBlcyBvZiB3YXRlciB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyAoTFNDKS4gRm9yIHJhdyBhbmQgZHJpbmtpbmcgd2F0ZXIsIHRoZSBzYW1wbGUgc2hvdWxkIGJlIGRlZ2Fzc2VkIGluIG9yZGVyIHRvIG1pbmltaXplIHRoZSBpbmdyb3d0aCBvZiAyMTAgUGIgZnJvbSByYWRvbi0yMjIgKCAyMjIgUm4pLiBVc2luZyBjdXJyZW50bHkgYXZhaWxhYmxlIGxpcXVpZCBzY2ludGlsbGF0aW9uIGNvdW50ZXJzLCB0aGlzIHRlc3QgbWV0aG9kIGNhbiBtZWFzdXJlIHRoZSAyMTAgUGIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgaW4gdGhlIHJhbmdlIG9mIGxlc3MgdGhhbiAyMCBtQnHii4VsIC0xIHRvIDUwIG1CceKLhWwgLTEgLiBUaGVzZSB2YWx1ZXMgY2FuIGJlIGFjaGlldmVkIHdpdGggYSBjb3VudGluZyB0aW1lIGJldHdlZW4gMTgwIG1pbiBhbmQgNzIwIG1pbiBmb3IgYSBzYW1wbGUgdm9sdW1lIGZyb20gMCw1IGwgdG8gMSw1IGwuIEhpZ2hlciAyMTAgUGIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgY2FuIGJlIG1lYXN1cmVkIGJ5IGVpdGhlciBkaWx1dGluZyB0aGUgc2FtcGxlIG9yIHVzaW5nIHNtYWxsZXIgc2FtcGxlIGFsaXF1b3RzIG9yIGJvdGguIEl0IGlzIHRoZSBsYWJvcmF0b3J5J3MgcmVzcG9uc2liaWxpdHkgdG8gZW5zdXJlIHRoZSBzdWl0YWJpbGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB0aGUgd2F0ZXIgc2FtcGxlcyB0ZXN0ZWQuICIsIm9iamVjdElEIjoiNTY0NjNfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjM6MjAxMyBXYXRlciBxdWFsaXR5IOKAlCBMZWFkLTIxMCDigJQgVGVzdCBtZXRob2QgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYzIHNwZWNpZmllcyB0aGUgZGV0ZXJtaW5hdGlvbiBvZiBsZWFkLTIxMCAoMjEwUGIpIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBhbGwgdHlwZXMgb2Ygd2F0ZXIgdXNpbmcgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcgKExTQykuIEZvciByYXcgYW5kIGRyaW5raW5nIHdhdGVyLCB0aGUgc2FtcGxlIHNob3VsZCBiZSBkZWdhc3NlZCBpbiBvcmRlciB0byBtaW5pbWl6ZSB0aGUgaW5ncm93dGggb2YgMjEwIFBiIGZyb20gcmFkb24tMjIyICggMjIyIFJuKS4gVXNpbmcgY3VycmVudGx5IGF2YWlsYWJsZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGVycywgdGhpcyB0ZXN0IG1ldGhvZCBjYW4gbWVhc3VyZSB0aGUgMjEwIFBiIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGluIHRoZSByYW5nZSBvZiBsZXNzIHRoYW4gMjAgbUJx4ouFbCAtMSB0byA1MCBtQnHii4VsIC0xIC4gVGhlc2UgdmFsdWVzIGNhbiBiZSBhY2hpZXZlZCB3aXRoIGEgY291bnRpbmcgdGltZSBiZXR3ZWVuIDE4MCBtaW4gYW5kIDcyMCBtaW4gZm9yIGEgc2FtcGxlIHZvbHVtZSBmcm9tIDAsNSBsIHRvIDEsNSBsLiBIaWdoZXIgMjEwIFBiIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGNhbiBiZSBtZWFzdXJlZCBieSBlaXRoZXIgZGlsdXRpbmcgdGhlIHNhbXBsZSBvciB1c2luZyBzbWFsbGVyIHNhbXBsZSBhbGlxdW90cyBvciBib3RoLiBJdCBpcyB0aGUgbGFib3JhdG9yeSdzIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGUgc3VpdGFiaWxpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3IgdGhlIHdhdGVyIHNhbXBsZXMgdGVzdGVkLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQ0OCIsInV1aWQiOiI1NjVjOGYxMC0wZjRmLTRiNmItYWEzZS00MTZjMGZjOTc2ZGQiLCJ0aXRsZSI6IklTTyAxMzE3OS0xOjIwMTQgSW1wbGFudHMgZm9yIHN1cmdlcnkg4oCUIFBsYXNtYS1zcHJheWVkIHVuYWxsb3llZCB0aXRhbml1bSBjb2F0aW5ncyBvbiBtZXRhbGxpYyBzdXJnaWNhbCBpbXBsYW50cyDigJQgUGFydCAxOiBHZW5lcmFsIHJlcXVpcmVtZW50cyIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjIwMjEsIm9yZGVyIjoxMDAsInRleHQiOiJJU08gMTMxNzktMToyMDE0IHNwZWNpZmllcyBnZW5lcmFsIHJlcXVpcmVtZW50cyBmb3IgcGxhc21hLXNwcmF5ZWQgdW5hbGxveWVkIHRpdGFuaXVtIGNvYXRpbmdzIG9uIG1ldGFsbGljIHN1cmdpY2FsIGltcGxhbnRzLiBJdCBhcHBsaWVzIHRvIHBsYXNtYSBzcHJheWluZyBpbiBhaXIgYW5kIGluIHZhY3V1bS4gSVNPIDEzMTc5LTE6MjAxNCBkb2VzIG5vdCBhcHBseSB0byBjb2F0aW5ncyBtYWRlIG9mIG90aGVyIG1hdGVyaWFscyB0aGFuIHVuYWxsb3llZCB0aXRhbml1bSBvciBjb2F0aW5ncyByZWFsaXplZCBieSBhbm90aGVyIHRlY2hub2xvZ3kgdGhhbiBwbGFzbWEgc3ByYXlpbmcuICIsIm9iamVjdElEIjoiNTM0NDhfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzktMToyMDE0IEltcGxhbnRzIGZvciBzdXJnZXJ5IOKAlCBQbGFzbWEtc3ByYXllZCB1bmFsbG95ZWQgdGl0YW5pdW0gY29hdGluZ3Mgb24gbWV0YWxsaWMgc3VyZ2ljYWwgaW1wbGFudHMg4oCUIFBhcnQgMTogR2VuZXJhbCByZXF1aXJlbWVudHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjc5LTE6MjAxNCBzcGVjaWZpZXMgZ2VuZXJhbCByZXF1aXJlbWVudHMgZm9yIHBsYXNtYS1zcHJheWVkIHVuYWxsb3llZCB0aXRhbml1bSBjb2F0aW5ncyBvbiBtZXRhbGxpYyBzdXJnaWNhbCBpbXBsYW50cy4gSXQgYXBwbGllcyB0byBwbGFzbWEgc3ByYXlpbmcgaW4gYWlyIGFuZCBpbiB2YWN1dW0uIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43OS0xOjIwMTQgZG9lcyBub3QgYXBwbHkgdG8gY29hdGluZ3MgbWFkZSBvZiBvdGhlciBtYXRlcmlhbHMgdGhhbiB1bmFsbG95ZWQgdGl0YW5pdW0gb3IgY29hdGluZ3MgcmVhbGl6ZWQgYnkgYW5vdGhlciB0ZWNobm9sb2d5IHRoYW4gcGxhc21hIHNwcmF5aW5nLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQwMyIsInV1aWQiOiI4MDg5NWU4My1kM2NkLTQ0NzUtOWMzYS0wOGZjNjk4MmI2NTYiLCJ0aXRsZSI6IklTTyAxMzE2MjoyMDExIFdhdGVyIHF1YWxpdHkg4oCUIERldGVybWluYXRpb24gb2YgY2FyYm9uIDE0IGFjdGl2aXR5IOKAlCBMaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyBtZXRob2QiLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTAwLCJ0ZXh0IjoiSVNPIDEzMTYyOjIwMTEgc3BlY2lmaWVzIHRoZSBjb25kaXRpb25zIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiAxNCBDIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBlbnZpcm9ubWVudGFsIHdhdGVyIG9yIG9mIDE0IEMtY29udGFpbmluZyB3YXRlciB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZy4gVGhlIG1ldGhvZCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBhbmFseXNpcyBvZiBhbnkgb3JnYW5pYyBtb2xlY3VsZSBzb2x1YmxlIGluIHdhdGVyIHRoYXQgaXMgd2VsbCBtaXhlZCB3aXRoIHRoZSBzY2ludGlsbGF0aW9uIGNvY2t0YWlsLiBJdCBkb2VzIG5vdCBhcHBseSB0byBtaWNlbGxlcyBvciBcImxhcmdlXCIgcGFydGljbGVzIChsaXBpZHMsIGZ1bHZpYyBhY2lkLCBodW1pYyBhY2lkLCBldGMuKSB0aGF0IGFyZSBpbmFkZXF1YXRlbHkgbWl4ZWQgd2l0aCB0aGUgc2NpbnRpbGxhdGlvbiBjb2NrdGFpbCBhbmQgdGhlIHdhdGVyLiBTb21lIGJldGEgZW5lcmd5IGlzIGxvc3Qgd2l0aG91dCBhbnkgZXhjaXRhdGlvbiBvZiB0aGUgc2NpbnRpbGxhdGlvbiBjb2NrdGFpbCBhbmQgdGhlIHJlc3VsdHMgYXJlIHVuZGVyZXN0aW1hdGVkLiBUaGUgbWV0aG9kIGlzIG5vdCBhcHBsaWNhYmxlIHRvIHRoZSBhbmFseXNpcyBvZiBvcmdhbmljYWxseSBib3VuZCAxNCBDLCB3aG9zZSBkZXRlcm1pbmF0aW9uIHJlcXVpcmVzIGFkZGl0aW9uYWwgY2hlbWljYWwgcHJvY2Vzc2luZyAoc3VjaCBhcyBjaGVtaWNhbCBveGlkYXRpb24sIGNvbWJ1c3Rpb24pLiBJdCBpcyBwb3NzaWJsZSB0byBkZXRlcm1pbmUgMTQgQyBhY3Rpdml0eSBjb25jZW50cmF0aW9ucyBiZWxvdyAxMCA2IEJxIGwgLSAxIHdpdGhvdXQgYW55IHNhbXBsZSBkaWx1dGlvbi4gIiwib2JqZWN0SUQiOiI1MzQwM18wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42MjoyMDExIFdhdGVyIHF1YWxpdHkg4oCUIERldGVybWluYXRpb24gb2YgY2FyYm9uIDE0IGFjdGl2aXR5IOKAlCBMaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyBtZXRob2QiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYyOjIwMTEgc3BlY2lmaWVzIHRoZSBjb25kaXRpb25zIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiAxNCBDIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gc2FtcGxlcyBvZiBlbnZpcm9ubWVudGFsIHdhdGVyIG9yIG9mIDE0IEMtY29udGFpbmluZyB3YXRlciB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZy4gVGhlIG1ldGhvZCBpcyBhcHBsaWNhYmxlIHRvIHRoZSBhbmFseXNpcyBvZiBhbnkgb3JnYW5pYyBtb2xlY3VsZSBzb2x1YmxlIGluIHdhdGVyIHRoYXQgaXMgd2VsbCBtaXhlZCB3aXRoIHRoZSBzY2ludGlsbGF0aW9uIGNvY2t0YWlsLiBJdCBkb2VzIG5vdCBhcHBseSB0byBtaWNlbGxlcyBvciBcImxhcmdlXCIgcGFydGljbGVzIChsaXBpZHMsIGZ1bHZpYyBhY2lkLCBodW1pYyBhY2lkLCBldGMuKSB0aGF0IGFyZSBpbmFkZXF1YXRlbHkgbWl4ZWQgd2l0aCB0aGUgc2NpbnRpbGxhdGlvbiBjb2NrdGFpbCBhbmQgdGhlIHdhdGVyLiBTb21lIGJldGEgZW5lcmd5IGlzIGxvc3Qgd2l0aG91dCBhbnkgZXhjaXRhdGlvbiBvZiB0aGUgc2NpbnRpbGxhdGlvbiBjb2NrdGFpbCBhbmQgdGhlIHJlc3VsdHMgYXJlIHVuZGVyZXN0aW1hdGVkLiBUaGUgbWV0aG9kIGlzIG5vdCBhcHBsaWNhYmxlIHRvIHRoZSBhbmFseXNpcyBvZiBvcmdhbmljYWxseSBib3VuZCAxNCBDLCB3aG9zZSBkZXRlcm1pbmF0aW9uIHJlcXVpcmVzIGFkZGl0aW9uYWwgY2hlbWljYWwgcHJvY2Vzc2luZyAoc3VjaCBhcyBjaGVtaWNhbCBveGlkYXRpb24sIGNvbWJ1c3Rpb24pLiBJdCBpcyBwb3NzaWJsZSB0byBkZXRlcm1pbmUgMTQgQyBhY3Rpdml0eSBjb25jZW50cmF0aW9ucyBiZWxvdyAxMCA2IEJxIGwgLSAxIHdpdGhvdXQgYW55IHNhbXBsZSBkaWx1dGlvbi4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzMvNTMzNjIiLCJ1dWlkIjoiMThlYjFmODItNGRhOC00MGMyLTljZTEtN2Y0MWY4NDhiOWNmIiwidGl0bGUiOiJJU08gMTMxNDI6MjAxNSBFbGVjdHJvLW9wdGljYWwgc3lzdGVtcyDigJQgQ2F2aXR5IHJpbmctZG93biB0ZWNobmlxdWUgZm9yIGhpZ2gtcmVmbGVjdGFuY2UgbWVhc3VyZW1lbnQiLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTAwLCJ0ZXh0IjoiSVNPIDEzMTQyOjIwMTUgc3BlY2lmaWVzIG1lYXN1cmVtZW50IHByb2NlZHVyZXMgZm9yIHRoZSBwcmVjaXNlIGRldGVybWluYXRpb24gb2YgdGhlIGhpZ2ggcmVmbGVjdGFuY2Ugb2Ygb3B0aWNhbCBsYXNlciBjb21wb25lbnRzLiBVcCB0byBub3csIHRoZSBJU08gc3RhbmRhcmRpemVkIHRlc3RpbmcgbWV0aG9kcyBmb3IgcmVmbGVjdGFuY2Ugb2Ygb3B0aWNhbCBsYXNlciBjb21wb25lbnRzIGhhdmUgdGhlIGFjY3VyYWN5IGxpbWl0IG9mIGFwcHJveGltYXRlbHkgMCwwMSAlIChmb3IgbWVhc3VyZW1lbnQgb2YgYWJzb2x1dGUgcmVmbGVjdGFuY2UpIHdoaWNoIGFyZSBub3QgYXBwcm9wcmlhdGUgZm9yIG1lYXN1cmluZyB0aGUgcmVmbGVjdGFuY2UgaGlnaGVyIHRoYW4gOTksOTkgJSBvciwgaW4gc29tZSBjYXNlcywgbWVhc3VyZW1lbnQgYWNjdXJhY3kgYmV0dGVyIHRoYW4gMCwwMSAlIGlzIHJlcXVpcmVkLiBUaGUgcmFuZ2Ugb2YgYXBwbGljYXRpb24gb2YgdGhpcyBzdGFuZGFyZGl6ZWQgdGVzdCBtZXRob2QgaXMgcmVmbGVjdGFuY2UgOTkgJSBhbmQgaGlnaGVyICh0aGVvcmV0aWNhbGx5IHVwIHRvIDEwMCAlKS4gVGhlIG1ldGhvZHMgZ2l2ZW4gaW4gSVNPIDEzMTQyOjIwMTUgYXJlIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIHRoZSB0ZXN0aW5nIGFuZCBjaGFyYWN0ZXJpemF0aW9uIG9mIGhpZ2ggcmVmbGVjdGFuY2Ugb2YgYm90aCBjb25jYXZlIGFuZCBwbGFuZSBtaXJyb3JzIHVzZWQgaW4gbGFzZXIgc3lzdGVtcyBhbmQgbGFzZXItYmFzZWQgaW5zdHJ1bWVudHMuIFRoZSByZWZsZWN0YW5jZSBvZiBjb252ZXggbWlycm9ycyBjYW4gYWxzbyBiZSB0ZXN0ZWQgYnkgdGFraW5nIGludG8gY29uc2lkZXJhdGlvbiB0aGUgcmFkaXVzIG9mIGN1cnZhdHVyZSBvZiB0aGUgbWlycm9yIHN1cmZhY2UuICIsIm9iamVjdElEIjoiNTMzNjJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NDI6MjAxNSBFbGVjdHJvLW9wdGljYWwgc3lzdGVtcyDigJQgQ2F2aXR5IHJpbmctZG93biB0ZWNobmlxdWUgZm9yIGhpZ2gtcmVmbGVjdGFuY2UgbWVhc3VyZW1lbnQiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQyOjIwMTUgc3BlY2lmaWVzIG1lYXN1cmVtZW50IHByb2NlZHVyZXMgZm9yIHRoZSBwcmVjaXNlIGRldGVybWluYXRpb24gb2YgdGhlIGhpZ2ggcmVmbGVjdGFuY2Ugb2Ygb3B0aWNhbCBsYXNlciBjb21wb25lbnRzLiBVcCB0byBub3csIHRoZSA8ZW0+SVNPPC9lbT4gc3RhbmRhcmRpemVkIHRlc3RpbmcgbWV0aG9kcyBmb3IgcmVmbGVjdGFuY2Ugb2Ygb3B0aWNhbCBsYXNlciBjb21wb25lbnRzIGhhdmUgdGhlIGFjY3VyYWN5IGxpbWl0IG9mIGFwcHJveGltYXRlbHkgMCwwMSAlIChmb3IgbWVhc3VyZW1lbnQgb2YgYWJzb2x1dGUgcmVmbGVjdGFuY2UpIHdoaWNoIGFyZSBub3QgYXBwcm9wcmlhdGUgZm9yIG1lYXN1cmluZyB0aGUgcmVmbGVjdGFuY2UgaGlnaGVyIHRoYW4gOTksOTkgJSBvciwgaW4gc29tZSBjYXNlcywgbWVhc3VyZW1lbnQgYWNjdXJhY3kgYmV0dGVyIHRoYW4gMCwwMSAlIGlzIHJlcXVpcmVkLiBUaGUgcmFuZ2Ugb2YgYXBwbGljYXRpb24gb2YgdGhpcyBzdGFuZGFyZGl6ZWQgdGVzdCBtZXRob2QgaXMgcmVmbGVjdGFuY2UgOTkgJSBhbmQgaGlnaGVyICh0aGVvcmV0aWNhbGx5IHVwIHRvIDEwMCAlKS4gVGhlIG1ldGhvZHMgZ2l2ZW4gaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjQyOjIwMTUgYXJlIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIHRoZSB0ZXN0aW5nIGFuZCBjaGFyYWN0ZXJpemF0aW9uIG9mIGhpZ2ggcmVmbGVjdGFuY2Ugb2YgYm90aCBjb25jYXZlIGFuZCBwbGFuZSBtaXJyb3JzIHVzZWQgaW4gbGFzZXIgc3lzdGVtcyBhbmQgbGFzZXItYmFzZWQgaW5zdHJ1bWVudHMuIFRoZSByZWZsZWN0YW5jZSBvZiBjb252ZXggbWlycm9ycyBjYW4gYWxzbyBiZSB0ZXN0ZWQgYnkgdGFraW5nIGludG8gY29uc2lkZXJhdGlvbiB0aGUgcmFkaXVzIG9mIGN1cnZhdHVyZSBvZiB0aGUgbWlycm9yIHN1cmZhY2UuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzMzLzUzMzMyIiwidXVpZCI6IjlhZjRkMDZjLTUxOWItNDk1Ny1iMTE5LWVhOWYxZTM4MGY2OCIsInRpdGxlIjoiSVNPIDEzMTYwOjIwMTIgV2F0ZXIgcXVhbGl0eSDigJQgU3Ryb250aXVtIDkwIGFuZCBzdHJvbnRpdW0gODkg4oCUIFRlc3QgbWV0aG9kcyB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyBvciBwcm9wb3J0aW9uYWwgY291bnRpbmciLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDIxLCJvcmRlciI6MTAwLCJ0ZXh0IjoiSVNPIDEzMTYwOjIwMTIgc3BlY2lmaWVzIHRoZSB0ZXN0IG1ldGhvZHMgYW5kIHRoZWlyIGFzc29jaWF0ZWQgcHJpbmNpcGxlcyBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIHRoZSBhY3Rpdml0eSBvZiA5MCBTciBpbiBlcXVpbGlicml1bSB3aXRoIDkwIFksIGFuZCA4OSBTciwgcHVyZSBiZXRhLWVtaXR0aW5nIHJhZGlvbnVjbGlkZXMsIGluIHdhdGVyIHNhbXBsZXMuIERpZmZlcmVudCBjaGVtaWNhbCBzZXBhcmF0aW9uIG1ldGhvZHMgYXJlIHByZXNlbnRlZCB0byBwcm9kdWNlIHN0cm9udGl1bSBhbmQgeXR0cml1bSBzb3VyY2VzLCB0aGUgYWN0aXZpdHkgb2Ygd2hpY2ggaXMgZGV0ZXJtaW5lZCB1c2luZyBhIHByb3BvcnRpb25hbCBjb3VudGVyIChQQykgb3IgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRlciAoTFNDKS4gVGhlIHNlbGVjdGlvbiBvZiB0aGUgdGVzdCBtZXRob2QgZGVwZW5kcyBvbiB0aGUgb3JpZ2luIG9mIHRoZSBjb250YW1pbmF0aW9uLCB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSB3YXRlciB0byBiZSBhbmFseXNlZCwgdGhlIHJlcXVpcmVkIGFjY3VyYWN5IG9mIHRlc3QgcmVzdWx0cyBhbmQgdGhlIGF2YWlsYWJsZSByZXNvdXJjZXMgb2YgdGhlIGxhYm9yYXRvcmllcy4gVGhlc2UgdGVzdCBtZXRob2RzIGFyZSB1c2VkIGZvciB3YXRlciBtb25pdG9yaW5nIGZvbGxvd2luZywgcGFzdCBvciBwcmVzZW50LCBhY2NpZGVudGFsIG9yIHJvdXRpbmUsIGxpcXVpZCBvciBnYXNlb3VzIGRpc2NoYXJnZXMuIEl0IGFsc28gY292ZXJzIHRoZSBtb25pdG9yaW5nIG9mIGNvbnRhbWluYXRpb24gY2F1c2VkIGJ5IGdsb2JhbCBmYWxsb3V0LiBXaGVuIGZhbGxvdXQgb2NjdXJzIGltbWVkaWF0ZWx5IGZvbGxvd2luZyBhIG51Y2xlYXIgYWNjaWRlbnQsIHRoZSBjb250cmlidXRpb24gb2YgODkgU3IgdG8gdGhlIHRvdGFsIGFtb3VudCBvZiBzdHJvbnRpdW0gYWN0aXZpdHkgaXMgbm90IG5lZ2xpZ2libGUuIElTTyAxMzE2MDoyMDEyIHByb3ZpZGVzIHRoZSB0ZXN0IG1ldGhvZHMgdG8gZGV0ZXJtaW5lIHRoZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIG9mIDkwIFNyIGluIHByZXNlbmNlIG9mIDg5IFNyLiAiLCJvYmplY3RJRCI6IjUzMzMyXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYwOjIwMTIgV2F0ZXIgcXVhbGl0eSDigJQgU3Ryb250aXVtIDkwIGFuZCBzdHJvbnRpdW0gODkg4oCUIFRlc3QgbWV0aG9kcyB1c2luZyBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyBvciBwcm9wb3J0aW9uYWwgY291bnRpbmciLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYwOjIwMTIgc3BlY2lmaWVzIHRoZSB0ZXN0IG1ldGhvZHMgYW5kIHRoZWlyIGFzc29jaWF0ZWQgcHJpbmNpcGxlcyBmb3IgdGhlIG1lYXN1cmVtZW50IG9mIHRoZSBhY3Rpdml0eSBvZiA5MCBTciBpbiBlcXVpbGlicml1bSB3aXRoIDkwIFksIGFuZCA4OSBTciwgcHVyZSBiZXRhLWVtaXR0aW5nIHJhZGlvbnVjbGlkZXMsIGluIHdhdGVyIHNhbXBsZXMuIERpZmZlcmVudCBjaGVtaWNhbCBzZXBhcmF0aW9uIG1ldGhvZHMgYXJlIHByZXNlbnRlZCB0byBwcm9kdWNlIHN0cm9udGl1bSBhbmQgeXR0cml1bSBzb3VyY2VzLCB0aGUgYWN0aXZpdHkgb2Ygd2hpY2ggaXMgZGV0ZXJtaW5lZCB1c2luZyBhIHByb3BvcnRpb25hbCBjb3VudGVyIChQQykgb3IgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRlciAoTFNDKS4gVGhlIHNlbGVjdGlvbiBvZiB0aGUgdGVzdCBtZXRob2QgZGVwZW5kcyBvbiB0aGUgb3JpZ2luIG9mIHRoZSBjb250YW1pbmF0aW9uLCB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSB3YXRlciB0byBiZSBhbmFseXNlZCwgdGhlIHJlcXVpcmVkIGFjY3VyYWN5IG9mIHRlc3QgcmVzdWx0cyBhbmQgdGhlIGF2YWlsYWJsZSByZXNvdXJjZXMgb2YgdGhlIGxhYm9yYXRvcmllcy4gVGhlc2UgdGVzdCBtZXRob2RzIGFyZSB1c2VkIGZvciB3YXRlciBtb25pdG9yaW5nIGZvbGxvd2luZywgcGFzdCBvciBwcmVzZW50LCBhY2NpZGVudGFsIG9yIHJvdXRpbmUsIGxpcXVpZCBvciBnYXNlb3VzIGRpc2NoYXJnZXMuIEl0IGFsc28gY292ZXJzIHRoZSBtb25pdG9yaW5nIG9mIGNvbnRhbWluYXRpb24gY2F1c2VkIGJ5IGdsb2JhbCBmYWxsb3V0LiBXaGVuIGZhbGxvdXQgb2NjdXJzIGltbWVkaWF0ZWx5IGZvbGxvd2luZyBhIG51Y2xlYXIgYWNjaWRlbnQsIHRoZSBjb250cmlidXRpb24gb2YgODkgU3IgdG8gdGhlIHRvdGFsIGFtb3VudCBvZiBzdHJvbnRpdW0gYWN0aXZpdHkgaXMgbm90IG5lZ2xpZ2libGUuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42MDoyMDEyIHByb3ZpZGVzIHRoZSB0ZXN0IG1ldGhvZHMgdG8gZGV0ZXJtaW5lIHRoZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIG9mIDkwIFNyIGluIHByZXNlbmNlIG9mIDg5IFNyLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi84Mi82ODI0NiIsInV1aWQiOiIwYTFmNDk5MC00ODI0LTQ3NDctYTllNC0xZThkZGIxODkxMWEiLCJ0aXRsZSI6IklTTyAxMzE0My0xOjIwMTYgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgRXZhbHVhdGlvbiBvZiBvbi1ib2FyZCBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IGZvciBjb25mb3JtaXR5IHRvIElTTyAxMjgxMyDigJQgUGFydCAxOiBUZXN0IHN1aXRlIHN0cnVjdHVyZSBhbmQgdGVzdCBwdXJwb3NlcyIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjIwMjAsIm9yZGVyIjoxMDAsInRleHQiOiJJU08gMTgxNDMtMToyMDE2IHNwZWNpZmllcyB0aGUgdGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgKFRTUykgYW5kIHRlc3QgcHVycG9zZXMgKFRQKSB0byBldmFsdWF0ZSB0aGUgY29uZm9ybWl0eSBvZiBvbi1ib2FyZCB1bml0cyAoT0JVKSBhbmQgcm9hZHNpZGUgZXF1aXBtZW50IChSU0UpIHRvIElTTyAxMjgxMzoyMDE1LiBJdCBwcm92aWRlcyBhIGJhc2lzIGZvciBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgZGVkaWNhdGVkIHNob3J0LXJhbmdlIGNvbW11bmljYXRpb24gKERTUkMpIGVxdWlwbWVudCAob24tYm9hcmQgdW5pdHMgYW5kIHJvYWRzaWRlIHVuaXRzKSB0byBlbmFibGUgaW50ZXJvcGVyYWJpbGl0eSBiZXR3ZWVuIGRpZmZlcmVudCBlcXVpcG1lbnQgc3VwcGxpZWQgYnkgZGlmZmVyZW50IG1hbnVmYWN0dXJlcnMuICIsIm9iamVjdElEIjoiNjgyNDZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NDMtMToyMDE2IEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIEV2YWx1YXRpb24gb2Ygb24tYm9hcmQgYW5kIHJvYWRzaWRlIGVxdWlwbWVudCBmb3IgY29uZm9ybWl0eSB0byA8ZW0+SVNPPC9lbT4gMTI4MTMg4oCUIFBhcnQgMTogVGVzdCBzdWl0ZSBzdHJ1Y3R1cmUgYW5kIHRlc3QgcHVycG9zZXMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDE4MTQzLTE6MjAxNiBzcGVjaWZpZXMgdGhlIHRlc3Qgc3VpdGUgc3RydWN0dXJlIChUU1MpIGFuZCB0ZXN0IHB1cnBvc2VzIChUUCkgdG8gZXZhbHVhdGUgdGhlIGNvbmZvcm1pdHkgb2Ygb24tYm9hcmQgdW5pdHMgKE9CVSkgYW5kIHJvYWRzaWRlIGVxdWlwbWVudCAoUlNFKSB0byA8ZW0+SVNPPC9lbT4gMTI4MTM6MjAxNS4gSXQgcHJvdmlkZXMgYSBiYXNpcyBmb3IgY29uZm9ybWFuY2UgdGVzdHMgZm9yIGRlZGljYXRlZCBzaG9ydC1yYW5nZSBjb21tdW5pY2F0aW9uIChEU1JDKSBlcXVpcG1lbnQgKG9uLWJvYXJkIHVuaXRzIGFuZCByb2Fkc2lkZSB1bml0cykgdG8gZW5hYmxlIGludGVyb3BlcmFiaWxpdHkgYmV0d2VlbiBkaWZmZXJlbnQgZXF1aXBtZW50IHN1cHBsaWVkIGJ5IGRpZmZlcmVudCBtYW51ZmFjdHVyZXJzLiAiLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS85Mi81OTIwOSIsInV1aWQiOiI4MmE1ZjVjZS05NjAwLTRjOTMtODQzZS1lNmI5ZjE2ZmI3MmMiLCJ0aXRsZSI6IklTTyAxMzE2NjoyMDE0IFdhdGVyIHF1YWxpdHkg4oCUIFVyYW5pdW0gaXNvdG9wZXMg4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGFscGhhLXNwZWN0cm9tZXRyeSIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjIwMjAsIm9yZGVyIjoxMDAsInRleHQiOiJJU08gMTMxNjY6MjAxNCBzcGVjaWZpZXMgdGhlIGNvbmRpdGlvbnMgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHVyYW5pdW0gaXNvdG9wZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIHNhbXBsZXMgb2YgZW52aXJvbm1lbnRhbCB3YXRlciAoaW5jbHVkaW5nIHNlYSB3YXRlcnMpIHVzaW5nIGFscGhhLXNwZWN0cm9tZXRyeSBhbmQgMjMyIFUgYXMgYSB5aWVsZCB0cmFjZXIuIEEgY2hlbWljYWwgc2VwYXJhdGlvbiBpcyByZXF1aXJlZCB0byBzZXBhcmF0ZSBhbmQgcHVyaWZ5IHVyYW5pdW0gZnJvbSBhIHRlc3QgcG9ydGlvbiBvZiB0aGUgc2FtcGxlLiBQbHV0b25pdW0gaXNvdG9wZXMgY2FuIGludGVyZmVyZSwgaWYgcHJlc2VudCwgd2l0aCBkZXRlY3RhYmxlIGFjdGl2aXRpZXMgaW4gdGhlIHNhbXBsZS4gVGhlIGRldGVjdGlvbiBsaW1pdCBmb3IgbWVhc3VyZW1lbnQgb2YgYSB0ZXN0IHBvcnRpb24gb2YgYWJvdXQgNTAwIG1sIGlzIGFwcHJveGltYXRlbHkgNSBtQnEgwrcgbCDiiJIxIHdpdGggYSBjb3VudGluZyB0aW1lIG9mIGFib3V0IDIwMCAwMDAgcy4gIiwib2JqZWN0SUQiOiI1OTIwOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NjoyMDE0IFdhdGVyIHF1YWxpdHkg4oCUIFVyYW5pdW0gaXNvdG9wZXMg4oCUIFRlc3QgbWV0aG9kIHVzaW5nIGFscGhhLXNwZWN0cm9tZXRyeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjY6MjAxNCBzcGVjaWZpZXMgdGhlIGNvbmRpdGlvbnMgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHVyYW5pdW0gaXNvdG9wZSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIHNhbXBsZXMgb2YgZW52aXJvbm1lbnRhbCB3YXRlciAoaW5jbHVkaW5nIHNlYSB3YXRlcnMpIHVzaW5nIGFscGhhLXNwZWN0cm9tZXRyeSBhbmQgMjMyIFUgYXMgYSB5aWVsZCB0cmFjZXIuIEEgY2hlbWljYWwgc2VwYXJhdGlvbiBpcyByZXF1aXJlZCB0byBzZXBhcmF0ZSBhbmQgcHVyaWZ5IHVyYW5pdW0gZnJvbSBhIHRlc3QgcG9ydGlvbiBvZiB0aGUgc2FtcGxlLiBQbHV0b25pdW0gaXNvdG9wZXMgY2FuIGludGVyZmVyZSwgaWYgcHJlc2VudCwgd2l0aCBkZXRlY3RhYmxlIGFjdGl2aXRpZXMgaW4gdGhlIHNhbXBsZS4gVGhlIGRldGVjdGlvbiBsaW1pdCBmb3IgbWVhc3VyZW1lbnQgb2YgYSB0ZXN0IHBvcnRpb24gb2YgYWJvdXQgNTAwIG1sIGlzIGFwcHJveGltYXRlbHkgNSBtQnEgwrcgbCDiiJIxIHdpdGggYSBjb3VudGluZyB0aW1lIG9mIGFib3V0IDIwMCAwMDAgcy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvMzQvNTM0MDIiLCJ1dWlkIjoiNmI2ZmM3YzUtNzRhYS00NjkwLWEyNmMtZDYyNGMzNzE5NGNmIiwidGl0bGUiOiJJU08gMTMxNjE6MjAxMSBXYXRlciBxdWFsaXR5IOKAlCBNZWFzdXJlbWVudCBvZiBwb2xvbml1bSAyMTAgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiB3YXRlciBieSBhbHBoYSBzcGVjdHJvbWV0cnkiLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDIwLCJvcmRlciI6MTAwLCJ0ZXh0IjoiSVNPIDEzMTYxOjIwMTEgc3BlY2lmaWVzIHRoZSBtZWFzdXJlbWVudCBvZiAyMTAgUG8gYWN0aXZpdHkgY29uY2VudHJhdGlvbiBieSBhbHBoYSBzcGVjdHJvbWV0cnkgaW4gYWxsIGtpbmRzIG9mIG5hdHVyYWwgd2F0ZXJzLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IG9mIHRoaXMgbWV0aG9kIGRlcGVuZHMgb24gdGhlIHZvbHVtZSBvZiB0aGUgc2FtcGxlLCB0aGUgY291bnRpbmcgdGltZSwgdGhlIGJhY2tncm91bmQgY291bnQgcmF0ZSBhbmQgdGhlIGRldGVjdGlvbiBlZmZpY2llbmN5LiBJbiB0aGUgY2FzZSBvZiBkcmlua2luZyB3YXRlciwgdGhlIGFuYWx5c2lzIGlzIHVzdWFsbHkgY2FycmllZCBvdXQgb24gdGhlIHJhdyBzYW1wbGUsIHdpdGhvdXQgZmlsdHJhdGlvbiBvciBvdGhlciBwcmV0cmVhdG1lbnQuIElmIHN1c3BlbmRlZCBtYXRlcmlhbCBoYXMgdG8gYmUgcmVtb3ZlZCBvciBhbmFseXNlZCwgZmlsdHJhdGlvbiBhdCAwLDQ1IMK1bSBpcyByZWNvbW1lbmRlZC4gVGhlIGFuYWx5c2lzIG9mIHRoZSBpbnNvbHVibGUgZnJhY3Rpb24gcmVxdWlyZXMgYSBtaW5lcmFsaXphdGlvbiBzdGVwIHRoYXQgaXMgbm90IGNvdmVyZWQgYnkgSVNPIDEzMTYxOjIwMTEuIEluIHRoaXMgY2FzZSwgdGhlIG1lYXN1cmVtZW50IGlzIG1hZGUgb24gdGhlIGRpZmZlcmVudCBwaGFzZXMgb2J0YWluZWQuIFRoZSBmaW5hbCBhY3Rpdml0eSBpcyB0aGUgc3VtIG9mIGFsbCB0aGUgbWVhc3VyZWQgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMuICIsIm9iamVjdElEIjoiNTM0MDJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjE6MjAxMSBXYXRlciBxdWFsaXR5IOKAlCBNZWFzdXJlbWVudCBvZiBwb2xvbml1bSAyMTAgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiB3YXRlciBieSBhbHBoYSBzcGVjdHJvbWV0cnkiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYxOjIwMTEgc3BlY2lmaWVzIHRoZSBtZWFzdXJlbWVudCBvZiAyMTAgUG8gYWN0aXZpdHkgY29uY2VudHJhdGlvbiBieSBhbHBoYSBzcGVjdHJvbWV0cnkgaW4gYWxsIGtpbmRzIG9mIG5hdHVyYWwgd2F0ZXJzLiBUaGUgZGV0ZWN0aW9uIGxpbWl0IG9mIHRoaXMgbWV0aG9kIGRlcGVuZHMgb24gdGhlIHZvbHVtZSBvZiB0aGUgc2FtcGxlLCB0aGUgY291bnRpbmcgdGltZSwgdGhlIGJhY2tncm91bmQgY291bnQgcmF0ZSBhbmQgdGhlIGRldGVjdGlvbiBlZmZpY2llbmN5LiBJbiB0aGUgY2FzZSBvZiBkcmlua2luZyB3YXRlciwgdGhlIGFuYWx5c2lzIGlzIHVzdWFsbHkgY2FycmllZCBvdXQgb24gdGhlIHJhdyBzYW1wbGUsIHdpdGhvdXQgZmlsdHJhdGlvbiBvciBvdGhlciBwcmV0cmVhdG1lbnQuIElmIHN1c3BlbmRlZCBtYXRlcmlhbCBoYXMgdG8gYmUgcmVtb3ZlZCBvciBhbmFseXNlZCwgZmlsdHJhdGlvbiBhdCAwLDQ1IMK1bSBpcyByZWNvbW1lbmRlZC4gVGhlIGFuYWx5c2lzIG9mIHRoZSBpbnNvbHVibGUgZnJhY3Rpb24gcmVxdWlyZXMgYSBtaW5lcmFsaXphdGlvbiBzdGVwIHRoYXQgaXMgbm90IGNvdmVyZWQgYnkgPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjYxOjIwMTEuIEluIHRoaXMgY2FzZSwgdGhlIG1lYXN1cmVtZW50IGlzIG1hZGUgb24gdGhlIGRpZmZlcmVudCBwaGFzZXMgb2J0YWluZWQuIFRoZSBmaW5hbCBhY3Rpdml0eSBpcyB0aGUgc3VtIG9mIGFsbCB0aGUgbWVhc3VyZWQgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzI5LzUyOTUyIiwidXVpZCI6IjBkN2M1NmM2LWI0OTctNGNmNC04NjM0LWJmNThmYzQ3ZDQ0NyIsInRpdGxlIjoiSVNPIDEzMTIwOjIwMTMgSGVhbHRoIGluZm9ybWF0aWNzIOKAlCBTeW50YXggdG8gcmVwcmVzZW50IHRoZSBjb250ZW50IG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtcyDigJQgQ2xhc3NpZmljYXRpb24gTWFya3VwIExhbmd1YWdlIChDbGFNTCkiLCJzdGF0dXMiOiJXaXRoZHJhd24iLCJ5ZWFyIjoyMDE5LCJvcmRlciI6MTAwLCJ0ZXh0IjoiVGhlIG1haW4gcHVycG9zZSBvZiBJU08gMTMxMjA6MjAxMyBpcyB0byBmb3JtYWxseSByZXByZXNlbnQgdGhlIGNvbnRlbnQgYW5kIGhpZXJhcmNoaWNhbCBzdHJ1Y3R1cmUgb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIGluIGEgbWFya3VwIGxhbmd1YWdlIGZvciB0aGUgc2FmZSBleGNoYW5nZSBhbmQgZGlzdHJpYnV0aW9uIG9mIGRhdGEgYW5kIHN0cnVjdHVyZSBiZXR3ZWVuIG9yZ2FuaXphdGlvbnMgYW5kIGRpc3NpbWlsYXIgc29mdHdhcmUgcHJvZHVjdHMuIFRoZSBzY29wZSBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9ucyBzeXN0ZW1zIGNvdmVyZWQgaW4gSVNPIDEzMTIwOjIwMTMgZW5jb21wYXNzZXMgdGVybWlub2xvZ2llcywgYW5kIGlzIGNvbnN0cmFpbmVkIHRvIHRyYWRpdGlvbmFsIHBhcGVyLWJhc2VkIHN5c3RlbXMgKGxpa2UgSUNELTEwKSBhbmQgc3lzdGVtcyBidWlsdCBhY2NvcmRpbmcgdG8gY2F0ZWdvcmlhbCBzdHJ1Y3R1cmVzIGFuZCBhIGNyb3NzIHRoZXNhdXJ1cyAobGlrZSBJQ05QKS4gSVNPIDEzMTIwOjIwMTMgaXMgaW50ZW5kZWQgZm9yIHJlcHJlc2VudGF0aW9uIG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtcyBpbiB3aGljaCBjbGFzc2VzIGhhdmUgdGV4dHVhbCBkZWZpbml0aW9ucywgaGllcmFyY2hpY2FsIG9yZGVyaW5nLCBuYW1lZCBoaWVyYXJjaGljYWwgbGV2ZWxzIChzdWNoIGFzIFwiY2hhcHRlclwiLCBcInNlY3Rpb25cIiksIGluY2x1c2lvbi0gYW5kIGV4Y2x1c2lvbiBjcml0ZXJpYSwgYW5kIGNvZGVzLiBJdCBpcyBub3QgaW50ZW5kZWQgdG8gY292ZXIgYW55IGZvcm1hbCByZXByZXNlbnRhdGlvbiwgZWl0aGVyIGZvciBkZWZpbml0aW9uIG9yIGNvbXBvc2l0aW9uLCBvZiBjb25jZXB0cywgb3IgZm9yIHNwZWNpZmljYXRpb24gb2YgY2xhc3NpZmljYXRpb24gcnVsZXMuIFN5c3RlbXMgd2l0aCBzdWNoIGZvcm1hbCBzcGVjaWZpY2F0aW9ucyBjYW4gYXQgYmVzdCBiZSBwYXJ0aWFsbHkgcmVwcmVzZW50ZWQgdXNpbmcgSVNPIDEzMTIwOjIwMTMsIGFuZCBhcmUgaGVuY2Ugb3V0IG9mIHNjb3BlLiBJU08gMTMxMjA6MjAxMyBpcyBub3QgaW50ZW5kZWQgdG86IHByb3ZpZGUgYSBub3JtYXRpdmUgc3ludGF4IG9uIGhvdyBhIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtIGlzIHRvIGJlIGNvbnN0cnVjdGVkOyBkZWZpbmUgbGluayB0eXBlcyBiZXR3ZWVuIGVsZW1lbnRzIGluIGEgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW07IHRoaXMgaXMgbGVmdCB0byB0aGUgZGV2ZWxvcGVycyBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXM7IHByb3ZpZGUgYSByZXByZXNlbnRhdGlvbiBmb3IgZGlyZWN0IHZpZXdpbmcgb3IgcHJpbnRpbmcuICIsIm9iamVjdElEIjoiNTI5NTJfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjA6MjAxMyBIZWFsdGggaW5mb3JtYXRpY3Mg4oCUIFN5bnRheCB0byByZXByZXNlbnQgdGhlIGNvbnRlbnQgb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIOKAlCBDbGFzc2lmaWNhdGlvbiBNYXJrdXAgTGFuZ3VhZ2UgKENsYU1MKSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiJUaGUgbWFpbiBwdXJwb3NlIG9mIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yMDoyMDEzIGlzIHRvIGZvcm1hbGx5IHJlcHJlc2VudCB0aGUgY29udGVudCBhbmQgaGllcmFyY2hpY2FsIHN0cnVjdHVyZSBvZiBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbXMgaW4gYSBtYXJrdXAgbGFuZ3VhZ2UgZm9yIHRoZSBzYWZlIGV4Y2hhbmdlIGFuZCBkaXN0cmlidXRpb24gb2YgZGF0YSBhbmQgc3RydWN0dXJlIGJldHdlZW4gb3JnYW5pemF0aW9ucyBhbmQgZGlzc2ltaWxhciBzb2Z0d2FyZSBwcm9kdWN0cy4gVGhlIHNjb3BlIG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb25zIHN5c3RlbXMgY292ZXJlZCBpbiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjA6MjAxMyBlbmNvbXBhc3NlcyB0ZXJtaW5vbG9naWVzLCBhbmQgaXMgY29uc3RyYWluZWQgdG8gdHJhZGl0aW9uYWwgcGFwZXItYmFzZWQgc3lzdGVtcyAobGlrZSBJQ0QtMTApIGFuZCBzeXN0ZW1zIGJ1aWx0IGFjY29yZGluZyB0byBjYXRlZ29yaWFsIHN0cnVjdHVyZXMgYW5kIGEgY3Jvc3MgdGhlc2F1cnVzIChsaWtlIElDTlApLiA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjA6MjAxMyBpcyBpbnRlbmRlZCBmb3IgcmVwcmVzZW50YXRpb24gb2YgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW1zIGluIHdoaWNoIGNsYXNzZXMgaGF2ZSB0ZXh0dWFsIGRlZmluaXRpb25zLCBoaWVyYXJjaGljYWwgb3JkZXJpbmcsIG5hbWVkIGhpZXJhcmNoaWNhbCBsZXZlbHMgKHN1Y2ggYXMgXCJjaGFwdGVyXCIsIFwic2VjdGlvblwiKSwgaW5jbHVzaW9uLSBhbmQgZXhjbHVzaW9uIGNyaXRlcmlhLCBhbmQgY29kZXMuIEl0IGlzIG5vdCBpbnRlbmRlZCB0byBjb3ZlciBhbnkgZm9ybWFsIHJlcHJlc2VudGF0aW9uLCBlaXRoZXIgZm9yIGRlZmluaXRpb24gb3IgY29tcG9zaXRpb24sIG9mIGNvbmNlcHRzLCBvciBmb3Igc3BlY2lmaWNhdGlvbiBvZiBjbGFzc2lmaWNhdGlvbiBydWxlcy4gU3lzdGVtcyB3aXRoIHN1Y2ggZm9ybWFsIHNwZWNpZmljYXRpb25zIGNhbiBhdCBiZXN0IGJlIHBhcnRpYWxseSByZXByZXNlbnRlZCB1c2luZyA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MjA6MjAxMywgYW5kIGFyZSBoZW5jZSBvdXQgb2Ygc2NvcGUuIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4yMDoyMDEzIGlzIG5vdCBpbnRlbmRlZCB0bzogcHJvdmlkZSBhIG5vcm1hdGl2ZSBzeW50YXggb24gaG93IGEgaGVhbHRoY2FyZSBjbGFzc2lmaWNhdGlvbiBzeXN0ZW0gaXMgdG8gYmUgY29uc3RydWN0ZWQ7IGRlZmluZSBsaW5rIHR5cGVzIGJldHdlZW4gZWxlbWVudHMgaW4gYSBoZWFsdGhjYXJlIGNsYXNzaWZpY2F0aW9uIHN5c3RlbTsgdGhpcyBpcyBsZWZ0IHRvIHRoZSBkZXZlbG9wZXJzIG9mIGhlYWx0aGNhcmUgY2xhc3NpZmljYXRpb24gc3lzdGVtczsgcHJvdmlkZSBhIHJlcHJlc2VudGF0aW9uIGZvciBkaXJlY3Qgdmlld2luZyBvciBwcmludGluZy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDAvNTgvNTg5MSIsInV1aWQiOiIyNmZmNzQ1MS02ZGQ5LTQ4YjYtYjFkMC0yODkyZTBhZGU3NDMiLCJ0aXRsZSI6IklTTyAxMzEwOjE5NzQgQ2FyYm9uIGJsYWNrIGZvciB1c2UgaW4gdGhlIHJ1YmJlciBpbmR1c3RyeSDigJQgU2FtcGxpbmcgcGFja2FnZWQgc2hpcG1lbnRzIiwic3RhdHVzIjoiV2l0aGRyYXduIiwieWVhciI6MTk4OSwib3JkZXIiOjEwMCwib2JqZWN0SUQiOiI1ODkxXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA6MTk3NCBDYXJib24gYmxhY2sgZm9yIHVzZSBpbiB0aGUgcnViYmVyIGluZHVzdHJ5IOKAlCBTYW1wbGluZyBwYWNrYWdlZCBzaGlwbWVudHMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wOC80OS84NDkxNSIsInV1aWQiOiIwN2MwYjI4ZS00NzM1LTRjOWMtOTFlOS1iNjQzNGExYjliZjAiLCJ0aXRsZSI6IklTTy9ESVMgMTMxMDUtMiBCdWlsZGluZyBjb25zdHJ1Y3Rpb24gbWFjaGluZXJ5IGFuZCBlcXVpcG1lbnQg4oCUIE1hY2hpbmVyeSBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nIOKAlCBQYXJ0IDI6IFNhZmV0eSByZXF1aXJlbWVudHMgYW5kIHZlcmlmaWNhdGlvbiIsInN0YXR1cyI6IlVuZGVyIGRldmVsb3BtZW50IiwieWVhciI6MjAyMiwib3JkZXIiOjEyLCJ0ZXh0IjoiSVNPIDEzMTA1LTI6MjAxNCBzcGVjaWZpZXMgc2FmZXR5IHJlcXVpcmVtZW50cyBmb3IgbWFjaGluZXMgdXNlZCBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nLiBUaGlzIGluY2x1ZGVzIHBlZGVzdHJpYW4tY29udHJvbGxlZCBlcXVpcG1lbnQgYW5kIHJpZGUtb24gZXF1aXBtZW50LiBJdCBpcyBub3QgYXBwbGljYWJsZSB0byBpbnRlcm5hbCBvciBleHRlcm5hbCB2aWJyYXRvcnMgb3IgYW5jaWxsYXJ5IGVxdWlwbWVudCB1c2VkIHdpdGggaW50ZXJuYWwgYW5kIGV4dGVybmFsIHZpYnJhdG9ycywgZm9yIGV4YW1wbGUsIGFpciBjb21wcmVzc29ycywgaHlkcmF1bGljIHBvd2VyIHNvdXJjZXMsIGFuZCB2b2x0YWdlIHRyYW5zZm9ybWVycywgdG8gcmVtb3RlLWNvbnRyb2xsZWQgb3IgaGFuZC1oZWxkIHNtb290aGluZyBtYWNoaW5lcyBhbmQgc2VsZi1hY3RpbmcgKHJvYm90aWMpIHNtb290aGluZyBtYWNoaW5lcywgb3IgdG8gc3RyaWtlLW9mZiB0eXBlIG1hY2hpbmVzIGNvbW1vbmx5IGtub3duIGFzIHNjcmVlZHMuIEl0IGRlYWxzIHdpdGggc2lnbmlmaWNhbnQgaGF6YXJkcywgaGF6YXJkb3VzIHNpdHVhdGlvbnMsIG9yIGhhemFyZG91cyBldmVudHMgcmVsZXZhbnQgdG8gbWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcgKHBvd2VyIHRyb3dlbHMpIHdoZW4gdXNlZCBhcyBpbnRlbmRlZCBhbmQgdW5kZXIgY29uZGl0aW9ucyBvZiBtaXN1c2Ugd2hpY2ggYXJlIHJlYXNvbmFibHkgZm9yZXNlZWFibGUgYnkgdGhlIG1hbnVmYWN0dXJlci4gSXQgaXMgbm90IGFwcGxpY2FibGUgdG8gbWFjaGluZXMgd2hpY2ggYXJlIG1hbnVmYWN0dXJlZCBiZWZvcmUgdGhlIGRhdGUgb2YgaXRzIHB1YmxpY2F0aW9uLiAiLCJvYmplY3RJRCI6Ijg0OTE1XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0RJUyA8ZW0+MTMxPC9lbT4wNS0yIEJ1aWxkaW5nIGNvbnN0cnVjdGlvbiBtYWNoaW5lcnkgYW5kIGVxdWlwbWVudCDigJQgTWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcg4oCUIFBhcnQgMjogU2FmZXR5IHJlcXVpcmVtZW50cyBhbmQgdmVyaWZpY2F0aW9uIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT4wNS0yOjIwMTQgc3BlY2lmaWVzIHNhZmV0eSByZXF1aXJlbWVudHMgZm9yIG1hY2hpbmVzIHVzZWQgZm9yIGNvbmNyZXRlIHN1cmZhY2UgZmxvYXRpbmcgYW5kIGZpbmlzaGluZy4gVGhpcyBpbmNsdWRlcyBwZWRlc3RyaWFuLWNvbnRyb2xsZWQgZXF1aXBtZW50IGFuZCByaWRlLW9uIGVxdWlwbWVudC4gSXQgaXMgbm90IGFwcGxpY2FibGUgdG8gaW50ZXJuYWwgb3IgZXh0ZXJuYWwgdmlicmF0b3JzIG9yIGFuY2lsbGFyeSBlcXVpcG1lbnQgdXNlZCB3aXRoIGludGVybmFsIGFuZCBleHRlcm5hbCB2aWJyYXRvcnMsIGZvciBleGFtcGxlLCBhaXIgY29tcHJlc3NvcnMsIGh5ZHJhdWxpYyBwb3dlciBzb3VyY2VzLCBhbmQgdm9sdGFnZSB0cmFuc2Zvcm1lcnMsIHRvIHJlbW90ZS1jb250cm9sbGVkIG9yIGhhbmQtaGVsZCBzbW9vdGhpbmcgbWFjaGluZXMgYW5kIHNlbGYtYWN0aW5nIChyb2JvdGljKSBzbW9vdGhpbmcgbWFjaGluZXMsIG9yIHRvIHN0cmlrZS1vZmYgdHlwZSBtYWNoaW5lcyBjb21tb25seSBrbm93biBhcyBzY3JlZWRzLiBJdCBkZWFscyB3aXRoIHNpZ25pZmljYW50IGhhemFyZHMsIGhhemFyZG91cyBzaXR1YXRpb25zLCBvciBoYXphcmRvdXMgZXZlbnRzIHJlbGV2YW50IHRvIG1hY2hpbmVyeSBmb3IgY29uY3JldGUgc3VyZmFjZSBmbG9hdGluZyBhbmQgZmluaXNoaW5nIChwb3dlciB0cm93ZWxzKSB3aGVuIHVzZWQgYXMgaW50ZW5kZWQgYW5kIHVuZGVyIGNvbmRpdGlvbnMgb2YgbWlzdXNlIHdoaWNoIGFyZSByZWFzb25hYmx5IGZvcmVzZWVhYmxlIGJ5IHRoZSBtYW51ZmFjdHVyZXIuIEl0IGlzIG5vdCBhcHBsaWNhYmxlIHRvIG1hY2hpbmVzIHdoaWNoIGFyZSBtYW51ZmFjdHVyZWQgYmVmb3JlIHRoZSBkYXRlIG9mIGl0cyBwdWJsaWNhdGlvbi4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDgvNDkvODQ5MTQiLCJ1dWlkIjoiYTBjNGZiMjUtYzFmOS00YmYyLWIwODEtYjM1MDFlNWI0OGU4IiwidGl0bGUiOiJJU08vRElTIDEzMTA1LTEgQnVpbGRpbmcgY29uc3RydWN0aW9uIG1hY2hpbmVyeSBhbmQgZXF1aXBtZW50IOKAlCBNYWNoaW5lcnkgZm9yIGNvbmNyZXRlIHN1cmZhY2UgZmxvYXRpbmcgYW5kIGZpbmlzaGluZyDigJQgUGFydCAxOiBUZXJtcyBhbmQgY29tbWVyY2lhbCBzcGVjaWZpY2F0aW9ucyIsInN0YXR1cyI6IlVuZGVyIGRldmVsb3BtZW50IiwieWVhciI6MjAyMiwib3JkZXIiOjEyLCJ0ZXh0IjoiSVNPIDEzMTA1LTE6MjAxNCBkZWZpbmVzIHRlcm1zIGFuZCBjb21tZXJjaWFsIHNwZWNpZmljYXRpb25zIGZvciBtYWNoaW5lcyB1c2VkIGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcgKGFsc28ga25vd24gYXMgcG93ZXIgdHJvd2VscykuIFRoaXMgaW5jbHVkZXMgcGVkZXN0cmlhbi1jb250cm9sbGVkIGVxdWlwbWVudCBhbmQgcmlkZS1vbiBlcXVpcG1lbnQuIEl0IGRvZXMgbm90IGFkZHJlc3Mgc3RyaWtlLW9mZiB0eXBlIG1hY2hpbmVzLCBjb21tb25seSBrbm93biBhcyBzY3JlZWRzLiAiLCJvYmplY3RJRCI6Ijg0OTE0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0RJUyA8ZW0+MTMxPC9lbT4wNS0xIEJ1aWxkaW5nIGNvbnN0cnVjdGlvbiBtYWNoaW5lcnkgYW5kIGVxdWlwbWVudCDigJQgTWFjaGluZXJ5IGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcg4oCUIFBhcnQgMTogVGVybXMgYW5kIGNvbW1lcmNpYWwgc3BlY2lmaWNhdGlvbnMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjA1LTE6MjAxNCBkZWZpbmVzIHRlcm1zIGFuZCBjb21tZXJjaWFsIHNwZWNpZmljYXRpb25zIGZvciBtYWNoaW5lcyB1c2VkIGZvciBjb25jcmV0ZSBzdXJmYWNlIGZsb2F0aW5nIGFuZCBmaW5pc2hpbmcgKGFsc28ga25vd24gYXMgcG93ZXIgdHJvd2VscykuIFRoaXMgaW5jbHVkZXMgcGVkZXN0cmlhbi1jb250cm9sbGVkIGVxdWlwbWVudCBhbmQgcmlkZS1vbiBlcXVpcG1lbnQuIEl0IGRvZXMgbm90IGFkZHJlc3Mgc3RyaWtlLW9mZiB0eXBlIG1hY2hpbmVzLCBjb21tb25seSBrbm93biBhcyBzY3JlZWRzLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wOC8zMC84MzA1NiIsInV1aWQiOiI0MmQ0NjUyZC1mZjk5LTRmNGMtYjdlZS1jYzI4OTQ3YWU1OGYiLCJ0aXRsZSI6IklTTy9ESVMgMTMxNjcgV2F0ZXIgcXVhbGl0eSDigJQgUGx1dG9uaXVtLCBhbWVyaWNpdW0sIGN1cml1bSBhbmQgbmVwdHVuaXVtIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBhbHBoYSBzcGVjdHJvbWV0cnkiLCJzdGF0dXMiOiJVbmRlciBkZXZlbG9wbWVudCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMiwidGV4dCI6IklTTyAxMzE2NzoyMDE1IHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGZvciBtZWFzdXJpbmcgYWN0aW5pZGVzICggMjM4IFB1LCAyMzkrMjQwIFB1LCAyNDEgQW0sIDI0MiBDbSwgMjQzKzI0NCBDbSBhbmQgMjM3IE5wKSBpbiB3YXRlciBzYW1wbGVzIGJ5IGFscGhhIHNwZWN0cm9tZXRyeSBmb2xsb3dpbmcgYSBjaGVtaWNhbCBzZXBhcmF0aW9uLiBUaGUgbWV0aG9kIGNhbiBiZSB1c2VkIGZvciBhbnkgdHlwZSBvZiBlbnZpcm9ubWVudGFsIHN0dWR5IG9yIG1vbml0b3JpbmcuIFRoZSB2b2x1bWUgb2YgdGhlIHRlc3QgcG9ydGlvbiByZXF1aXJlZCBkZXBlbmRzIG9uIHRoZSBhc3N1bWVkIGFjdGl2aXR5IG9mIHRoZSBzYW1wbGUgYW5kIHRoZSBkZXNpcmVkIGRldGVjdGlvbiBsaW1pdC4gVGhlIGRldGVjdGlvbiBsaW1pdCBvZiB0aGUgdGVzdCBtZXRob2QgaXMgNSDDlyAxMCDiiJIzIHRvIDUgw5cgMTAg4oiSNCBCcS9sIGZvciBhIHZvbHVtZSBvZiB0aGUgdGVzdCBwb3J0aW9uIG9mIDAsMSBsIHRvIDUgbCB3aXRoIGEgY291bnRpbmcgdGltZSBvZiB0d28gdG8gdGVuIGRheXMuICIsIm9iamVjdElEIjoiODMwNTZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vRElTIDxlbT4xMzE8L2VtPjY3IFdhdGVyIHF1YWxpdHkg4oCUIFBsdXRvbml1bSwgYW1lcmljaXVtLCBjdXJpdW0gYW5kIG5lcHR1bml1bSDigJQgVGVzdCBtZXRob2QgdXNpbmcgYWxwaGEgc3BlY3Ryb21ldHJ5IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42NzoyMDE1IHNwZWNpZmllcyBhIHRlc3QgbWV0aG9kIGZvciBtZWFzdXJpbmcgYWN0aW5pZGVzICggMjM4IFB1LCAyMzkrMjQwIFB1LCAyNDEgQW0sIDI0MiBDbSwgMjQzKzI0NCBDbSBhbmQgMjM3IE5wKSBpbiB3YXRlciBzYW1wbGVzIGJ5IGFscGhhIHNwZWN0cm9tZXRyeSBmb2xsb3dpbmcgYSBjaGVtaWNhbCBzZXBhcmF0aW9uLiBUaGUgbWV0aG9kIGNhbiBiZSB1c2VkIGZvciBhbnkgdHlwZSBvZiBlbnZpcm9ubWVudGFsIHN0dWR5IG9yIG1vbml0b3JpbmcuIFRoZSB2b2x1bWUgb2YgdGhlIHRlc3QgcG9ydGlvbiByZXF1aXJlZCBkZXBlbmRzIG9uIHRoZSBhc3N1bWVkIGFjdGl2aXR5IG9mIHRoZSBzYW1wbGUgYW5kIHRoZSBkZXNpcmVkIGRldGVjdGlvbiBsaW1pdC4gVGhlIGRldGVjdGlvbiBsaW1pdCBvZiB0aGUgdGVzdCBtZXRob2QgaXMgNSDDlyAxMCDiiJIzIHRvIDUgw5cgMTAg4oiSNCBCcS9sIGZvciBhIHZvbHVtZSBvZiB0aGUgdGVzdCBwb3J0aW9uIG9mIDAsMSBsIHRvIDUgbCB3aXRoIGEgY291bnRpbmcgdGltZSBvZiB0d28gdG8gdGVuIGRheXMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA4LzMwLzgzMDU1IiwidXVpZCI6IjIwODFmODc5LWZkNDAtNGZjZi1iMzEzLTNkYWM2MzQwNDc0NCIsInRpdGxlIjoiSVNPL0RJUyAxMzE2NC00IFdhdGVyIHF1YWxpdHkg4oCUIFJhZG9uLTIyMiDigJQgUGFydCA0OiBUZXN0IG1ldGhvZCB1c2luZyB0d28tcGhhc2UgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmciLCJzdGF0dXMiOiJVbmRlciBkZXZlbG9wbWVudCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMiwidGV4dCI6IklTTyAxMzE2NC00OjIwMTUgZGVzY3JpYmVzIGEgdGVzdCBtZXRob2QgZm9yIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZG9uLTIyMiAoIDIyMiBSbikgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBub24tc2FsaW5lIHdhdGVycyBieSBleHRyYWN0aW9uIGFuZCBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZy4gVGhlIHJhZG9uLTIyMiBhY3Rpdml0eSBjb25jZW50cmF0aW9ucywgd2hpY2ggY2FuIGJlIG1lYXN1cmVkIGJ5IHRoaXMgdGVzdCBtZXRob2QgdXRpbGl6aW5nIGN1cnJlbnRseSBhdmFpbGFibGUgaW5zdHJ1bWVudHMsIGFyZSBhdCBsZWFzdCBhYm92ZSAwLDUgQnEgbCDiiJIxIGZvciBhIDEwIG1sIHRlc3Qgc2FtcGxlIGFuZCBhIG1lYXN1cmluZyB0aW1lIG9mIDEgaC4gVGhpcyB0ZXN0IG1ldGhvZCBjYW4gYmUgdXNlZCBzdWNjZXNzZnVsbHkgd2l0aCBkcmlua2luZyB3YXRlciBzYW1wbGVzIGFuZCBpdCBpcyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlIGxhYm9yYXRvcnkgdG8gZW5zdXJlIHRoZSB2YWxpZGl0eSBvZiB0aGlzIHRlc3QgbWV0aG9kIGZvciB3YXRlciBzYW1wbGVzIG9mIHVudGVzdGVkIG1hdHJpY2VzLiBBbm5leCBBIGdpdmVzIGluZGljYXRpb24gb24gdGhlIG5lY2Vzc2FyeSBjb3VudGluZyBjb25kaXRpb25zIHRvIG1lZXQgdGhlIHJlcXVpcmVkIGRldGVjdGlvbiBsaW1pdHMgZm9yIGRyaW5raW5nIHdhdGVyIG1vbml0b3JpbmcuICIsIm9iamVjdElEIjoiODMwNTVfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vRElTIDxlbT4xMzE8L2VtPjY0LTQgV2F0ZXIgcXVhbGl0eSDigJQgUmFkb24tMjIyIOKAlCBQYXJ0IDQ6IFRlc3QgbWV0aG9kIHVzaW5nIHR3by1waGFzZSBsaXF1aWQgc2NpbnRpbGxhdGlvbiBjb3VudGluZyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjQtNDoyMDE1IGRlc2NyaWJlcyBhIHRlc3QgbWV0aG9kIGZvciB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRvbi0yMjIgKCAyMjIgUm4pIGFjdGl2aXR5IGNvbmNlbnRyYXRpb24gaW4gbm9uLXNhbGluZSB3YXRlcnMgYnkgZXh0cmFjdGlvbiBhbmQgbGlxdWlkIHNjaW50aWxsYXRpb24gY291bnRpbmcuIFRoZSByYWRvbi0yMjIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMsIHdoaWNoIGNhbiBiZSBtZWFzdXJlZCBieSB0aGlzIHRlc3QgbWV0aG9kIHV0aWxpemluZyBjdXJyZW50bHkgYXZhaWxhYmxlIGluc3RydW1lbnRzLCBhcmUgYXQgbGVhc3QgYWJvdmUgMCw1IEJxIGwg4oiSMSBmb3IgYSAxMCBtbCB0ZXN0IHNhbXBsZSBhbmQgYSBtZWFzdXJpbmcgdGltZSBvZiAxIGguIFRoaXMgdGVzdCBtZXRob2QgY2FuIGJlIHVzZWQgc3VjY2Vzc2Z1bGx5IHdpdGggZHJpbmtpbmcgd2F0ZXIgc2FtcGxlcyBhbmQgaXQgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBsYWJvcmF0b3J5IHRvIGVuc3VyZSB0aGUgdmFsaWRpdHkgb2YgdGhpcyB0ZXN0IG1ldGhvZCBmb3Igd2F0ZXIgc2FtcGxlcyBvZiB1bnRlc3RlZCBtYXRyaWNlcy4gQW5uZXggQSBnaXZlcyBpbmRpY2F0aW9uIG9uIHRoZSBuZWNlc3NhcnkgY291bnRpbmcgY29uZGl0aW9ucyB0byBtZWV0IHRoZSByZXF1aXJlZCBkZXRlY3Rpb24gbGltaXRzIGZvciBkcmlua2luZyB3YXRlciBtb25pdG9yaW5nLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wOC8yOS84Mjk3OSIsInV1aWQiOiIxYjQzOWNlNy01ZTkzLTRjNmQtODM2Ny0yMTI0N2M4YzQ5YzciLCJ0aXRsZSI6IklTTy9ESVMgMTMxMzIgTGFib3JhdG9yeSBnbGFzc3dhcmUg4oCUIFBldHJpIGRpc2hlcyIsInN0YXR1cyI6IlVuZGVyIGRldmVsb3BtZW50IiwieWVhciI6MjAyMiwib3JkZXIiOjEyLCJ0ZXh0IjoiSVNPIDEzMTMyOjIwMTEgc3BlY2lmaWVzIHJlcXVpcmVtZW50cyBhbmQgdGVzdHMgZm9yIGdsYXNzIFBldHJpIGRpc2hlcyBpbnRlbmRlZCBmb3IgZ2VuZXJhbCBsYWJvcmF0b3J5IHB1cnBvc2VzIGFuZCBtaWNyb2Jpb2xvZ2ljYWwgd29yay4gIiwib2JqZWN0SUQiOiI4Mjk3OV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9ESVMgPGVtPjEzMTwvZW0+MzIgTGFib3JhdG9yeSBnbGFzc3dhcmUg4oCUIFBldHJpIGRpc2hlcyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+MzI6MjAxMSBzcGVjaWZpZXMgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0cyBmb3IgZ2xhc3MgUGV0cmkgZGlzaGVzIGludGVuZGVkIGZvciBnZW5lcmFsIGxhYm9yYXRvcnkgcHVycG9zZXMgYW5kIG1pY3JvYmlvbG9naWNhbCB3b3JrLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wOC80Mi84NDIzOCIsInV1aWQiOiI4Yzc0NWNhYi0yMWQwLTQyZTEtYTg5OC03MGFmZmI1MDU2YWEiLCJ0aXRsZSI6IklTTy9DRCAxMzE2NS0zIFdhdGVyIHF1YWxpdHkg4oCUIFJhZGl1bS0yMjYg4oCUIFBhcnQgMzogVGVzdCBtZXRob2QgdXNpbmcgY29wcmVjaXBpdGF0aW9uIGFuZCBnYW1tYS1zcGVjdHJvbWV0cnkiLCJzdGF0dXMiOiJVbmRlciBkZXZlbG9wbWVudCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMiwidGV4dCI6IklTTyAxMzE2NS0zOjIwMTYgc3BlY2lmaWVzIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHJhZGl1bS0yMjYgKDIyNlJhKSBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGluIGFsbCB0eXBlcyBvZiB3YXRlciBieSBjb3ByZWNpcGl0YXRpb24gZm9sbG93ZWQgYnkgZ2FtbWEtc3BlY3Ryb21ldHJ5IChzZWUgSVNPIDE4NTg54oCRMykuIFRoZSBtZXRob2QgZGVzY3JpYmVkIGlzIHN1aXRhYmxlIGZvciBkZXRlcm1pbmF0aW9uIG9mIHNvbHVibGUgMjI2UmEgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgZ3JlYXRlciB0aGFuIDAsMDIgQnEgbOKIkjEgdXNpbmcgYSBzYW1wbGUgdm9sdW1lIG9mIDEgbCB0byAxMDAgbCBvZiBhbnkgd2F0ZXIgdHlwZS4gRm9yIHdhdGVyIHNhbXBsZXMgc21hbGxlciB0aGFuIGEgdm9sdW1lIG9mIDEgbCwgZGlyZWN0IGdhbW1hLXNwZWN0cm9tZXRyeSBjYW4gYmUgcGVyZm9ybWVkIGZvbGxvd2luZyBJU08gMTA3MDMgd2l0aCBhIGhpZ2hlciBkZXRlY3Rpb24gbGltaXQuIE5PVEUgICAgICAgICAgVGhpcyB0ZXN0IG1ldGhvZCBhbHNvIGFsbG93cyBvdGhlciBpc290b3BlcyBvZiByYWRpdW0sIDIyM1JhLCAyMjRSYSwgYW5kIDIyOFJhLCB0byBiZSBkZXRlcm1pbmVkLiAiLCJvYmplY3RJRCI6Ijg0MjM4XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0NEIDxlbT4xMzE8L2VtPjY1LTMgV2F0ZXIgcXVhbGl0eSDigJQgUmFkaXVtLTIyNiDigJQgUGFydCAzOiBUZXN0IG1ldGhvZCB1c2luZyBjb3ByZWNpcGl0YXRpb24gYW5kIGdhbW1hLXNwZWN0cm9tZXRyeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjUtMzoyMDE2IHNwZWNpZmllcyB0aGUgZGV0ZXJtaW5hdGlvbiBvZiByYWRpdW0tMjI2ICgyMjZSYSkgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBpbiBhbGwgdHlwZXMgb2Ygd2F0ZXIgYnkgY29wcmVjaXBpdGF0aW9uIGZvbGxvd2VkIGJ5IGdhbW1hLXNwZWN0cm9tZXRyeSAoc2VlIDxlbT5JU088L2VtPiAxODU4OeKAkTMpLiBUaGUgbWV0aG9kIGRlc2NyaWJlZCBpcyBzdWl0YWJsZSBmb3IgZGV0ZXJtaW5hdGlvbiBvZiBzb2x1YmxlIDIyNlJhIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGdyZWF0ZXIgdGhhbiAwLDAyIEJxIGziiJIxIHVzaW5nIGEgc2FtcGxlIHZvbHVtZSBvZiAxIGwgdG8gMTAwIGwgb2YgYW55IHdhdGVyIHR5cGUuIEZvciB3YXRlciBzYW1wbGVzIHNtYWxsZXIgdGhhbiBhIHZvbHVtZSBvZiAxIGwsIGRpcmVjdCBnYW1tYS1zcGVjdHJvbWV0cnkgY2FuIGJlIHBlcmZvcm1lZCBmb2xsb3dpbmcgPGVtPklTTzwvZW0+IDEwNzAzIHdpdGggYSBoaWdoZXIgZGV0ZWN0aW9uIGxpbWl0LiBOT1RFICAgICAgICAgIFRoaXMgdGVzdCBtZXRob2QgYWxzbyBhbGxvd3Mgb3RoZXIgaXNvdG9wZXMgb2YgcmFkaXVtLCAyMjNSYSwgMjI0UmEsIGFuZCAyMjhSYSwgdG8gYmUgZGV0ZXJtaW5lZC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDgvMjkvODI5MzAiLCJ1dWlkIjoiYTI0ODY2NjQtNDU4YS00OTU1LTg3YmQtZjU4MWRiNzg3ZTRmIiwidGl0bGUiOiJJU08vQ0QgMTMxNDEgRWxlY3Ryb25pYyBmZWUgY29sbGVjdGlvbiDigJQgTG9jYWxpc2F0aW9uIGF1Z21lbnRhdGlvbiBjb21tdW5pY2F0aW9uIGZvciBhdXRvbm9tb3VzIHN5c3RlbXMiLCJzdGF0dXMiOiJVbmRlciBkZXZlbG9wbWVudCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMiwidGV4dCI6IklTTyAxMzE0MToyMDE1IGVzdGFibGlzaGVzIHJlcXVpcmVtZW50cyBmb3Igc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbiBmb3IgdGhlIHB1cnBvc2VzIG9mIGF1Z21lbnRpbmcgdGhlIGxvY2FsaXphdGlvbiBpbiBhdXRvbm9tb3VzIGVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24gKEVGQykgc3lzdGVtcy4gTG9jYWxpemF0aW9uIGF1Z21lbnRhdGlvbiBzZXJ2ZXMgdG8gaW5mb3JtIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhYm91dCBnZW9ncmFwaGljYWwgbG9jYXRpb24gYW5kIHRoZSBpZGVudGlmaWNhdGlvbiBvZiBhIGNoYXJnZSBvYmplY3QuIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBzcGVjaWZpZXMgdGhlIHByb3Zpc2lvbiBvZiBsb2NhdGlvbiBhbmQgaGVhZGluZyBpbmZvcm1hdGlvbiBhbmQgc2VjdXJpdHkgbWVhbnMgdG8gcHJvdGVjdCBmcm9tIHRoZSBtYW5pcHVsYXRpb24gb2YgdGhlIE9CRSB3aXRoIGZhbHNlIHJvYWRzaWRlIGVxdWlwbWVudCAoUlNFKS4gVGhlIGxvY2FsaXphdGlvbiBhdWdtZW50YXRpb24gY29tbXVuaWNhdGlvbiB0YWtlcyBwbGFjZSBiZXR3ZWVuIGFuIE9CRSBpbiBhIHZlaGljbGUgYW5kIGZpeGVkIHJvYWRzaWRlIGVxdWlwbWVudC4gVGhpcyBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIGlzIGFwcGxpY2FibGUgdG8gT0JFIGluIGFuIGF1dG9ub21vdXMgbW9kZSBvZiBvcGVyYXRpb24uIElTTyAxMzE0MToyMDE1IGRlZmluZXMgYXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGZvciB0aGUgcHVycG9zZSBvZiBsb2NhbGl6YXRpb24gYXVnbWVudGF0aW9uLCBieSBtYWtpbmcgdXNlIG9mIHRoZSBkZWRpY2F0ZWQgc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbnMgKERTUkMpIGNvbW11bmljYXRpb24gc2VydmljZXMgcHJvdmlkZWQgYnkgRFNSQyBMYXllciA3LCBhbmQgbWFrZXMgdGhlc2UgTEFDIGF0dHJpYnV0ZXMgYW5kIGZ1bmN0aW9ucyBhdmFpbGFibGUgdG8gdGhlIExBQyBhcHBsaWNhdGlvbnMgYXQgdGhlIFJTRSBhbmQgdGhlIE9CRS4gQXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGFyZSBkZWZpbmVkIG9uIHRoZSBsZXZlbCBvZiBBcHBsaWNhdGlvbiBEYXRhIFVuaXRzIChBRFVzLCBzZWUgRmlndXJlIDEpLiAiLCJvYmplY3RJRCI6IjgyOTMwXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0NEIDxlbT4xMzE8L2VtPjQxIEVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24g4oCUIExvY2FsaXNhdGlvbiBhdWdtZW50YXRpb24gY29tbXVuaWNhdGlvbiBmb3IgYXV0b25vbW91cyBzeXN0ZW1zIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IGVzdGFibGlzaGVzIHJlcXVpcmVtZW50cyBmb3Igc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbiBmb3IgdGhlIHB1cnBvc2VzIG9mIGF1Z21lbnRpbmcgdGhlIGxvY2FsaXphdGlvbiBpbiBhdXRvbm9tb3VzIGVsZWN0cm9uaWMgZmVlIGNvbGxlY3Rpb24gKEVGQykgc3lzdGVtcy4gTG9jYWxpemF0aW9uIGF1Z21lbnRhdGlvbiBzZXJ2ZXMgdG8gaW5mb3JtIG9uLWJvYXJkIGVxdWlwbWVudCAoT0JFKSBhYm91dCBnZW9ncmFwaGljYWwgbG9jYXRpb24gYW5kIHRoZSBpZGVudGlmaWNhdGlvbiBvZiBhIGNoYXJnZSBvYmplY3QuIFRoaXMgSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBzcGVjaWZpZXMgdGhlIHByb3Zpc2lvbiBvZiBsb2NhdGlvbiBhbmQgaGVhZGluZyBpbmZvcm1hdGlvbiBhbmQgc2VjdXJpdHkgbWVhbnMgdG8gcHJvdGVjdCBmcm9tIHRoZSBtYW5pcHVsYXRpb24gb2YgdGhlIE9CRSB3aXRoIGZhbHNlIHJvYWRzaWRlIGVxdWlwbWVudCAoUlNFKS4gVGhlIGxvY2FsaXphdGlvbiBhdWdtZW50YXRpb24gY29tbXVuaWNhdGlvbiB0YWtlcyBwbGFjZSBiZXR3ZWVuIGFuIE9CRSBpbiBhIHZlaGljbGUgYW5kIGZpeGVkIHJvYWRzaWRlIGVxdWlwbWVudC4gVGhpcyBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIGlzIGFwcGxpY2FibGUgdG8gT0JFIGluIGFuIGF1dG9ub21vdXMgbW9kZSBvZiBvcGVyYXRpb24uIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT40MToyMDE1IGRlZmluZXMgYXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGZvciB0aGUgcHVycG9zZSBvZiBsb2NhbGl6YXRpb24gYXVnbWVudGF0aW9uLCBieSBtYWtpbmcgdXNlIG9mIHRoZSBkZWRpY2F0ZWQgc2hvcnQtcmFuZ2UgY29tbXVuaWNhdGlvbnMgKERTUkMpIGNvbW11bmljYXRpb24gc2VydmljZXMgcHJvdmlkZWQgYnkgRFNSQyBMYXllciA3LCBhbmQgbWFrZXMgdGhlc2UgTEFDIGF0dHJpYnV0ZXMgYW5kIGZ1bmN0aW9ucyBhdmFpbGFibGUgdG8gdGhlIExBQyBhcHBsaWNhdGlvbnMgYXQgdGhlIFJTRSBhbmQgdGhlIE9CRS4gQXR0cmlidXRlcyBhbmQgZnVuY3Rpb25zIGFyZSBkZWZpbmVkIG9uIHRoZSBsZXZlbCBvZiBBcHBsaWNhdGlvbiBEYXRhIFVuaXRzIChBRFVzLCBzZWUgRmlndXJlIDEpLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi85NC82OTQwNCIsInV1aWQiOiI2ZGU4MmVmMy02NDQ4LTRjOGEtYmE5MC0xYzMzMzE3ZDViMWQiLCJ0aXRsZSI6IklTTyAyMDg5OToyMDE4IFdhdGVyIHF1YWxpdHkg4oCUIFBsdXRvbml1bSBhbmQgbmVwdHVuaXVtIOKAlCBUZXN0IG1ldGhvZCB1c2luZyBJQ1AtTVMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE4LCJvcmRlciI6MTEsInRleHQiOiJUaGlzIGRvY3VtZW50IHNwZWNpZmllcyBtZXRob2RzIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBjb25jZW50cmF0aW9uIG9mIHBsdXRvbml1bSBhbmQgbmVwdHVuaXVtIGlzb3RvcGVzIGluIHdhdGVyIGJ5IGluZHVjdGl2ZWx5IGNvdXBsZWQgcGxhc21hIG1hc3Mgc3BlY3Ryb21ldHJ5IChJQ1AtTVMpICgyMzlQdSwgMjQwUHUsIDI0MVB1IGFuZCAyMzdOcCkuIFRoZSBjb25jZW50cmF0aW9ucyBvYnRhaW5lZCBjYW4gYmUgY29udmVydGVkIGludG8gYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgb2YgdGhlIGRpZmZlcmVudCBpc290b3Blc1s5XS4gRHVlIHRvIGl0cyByZWxhdGl2ZWx5IHNob3J0IGhhbGYtbGlmZSBhbmQgMjM4VSBpc29iYXJpYyBpbnRlcmZlcmVuY2UsIDIzOFB1IGNhbiBoYXJkbHkgYmUgbWVhc3VyZWQgYnkgdGhpcyBtZXRob2QuIFRvIHF1YW50aWZ5IHRoaXMgaXNvdG9wZSwgb3RoZXIgdGVjaG5pcXVlcyBjYW4gYmUgdXNlZCAoSUNQLU1TIHdpdGggY29sbGlzaW9uLXJlYWN0aW9uIGNlbGwsIElDUC1NUy9NUyB3aXRoIGNvbGxpc2lvbi1yZWFjdGlvbiBjZWxsIG9yIGNoZW1pY2FsIHNlcGFyYXRpb24pLiBBbHBoYSBzcGVjdHJvbWV0cnkgbWVhc3VyZW1lbnQsIGFzIGRlc2NyaWJlZCBpbiBJU08gMTMxNjdbMTBdLCBpcyBjdXJyZW50bHkgdXNlZFsxMV0uIFRoaXMgbWV0aG9kIGlzIGFwcGxpY2FibGUgdG8gYWxsIHR5cGVzIG9mIHdhdGVyIGhhdmluZyBhIHNhbGluZSBsb2FkIGxlc3MgdGhhbiAxIGfCt2ziiJIxLiBBIGRpbHV0aW9uIG9mIHRoZSBzYW1wbGUgaXMgcG9zc2libGUgdG8gb2J0YWluIGEgc29sdXRpb24gaGF2aW5nIGEgc2FsaW5lIGxvYWQgYW5kIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGNvbXBhdGlibGUgd2l0aCB0aGUgcHJlcGFyYXRpb24gYW5kIHRoZSBtZWFzdXJlbWVudCBhc3NlbWJseS4gQSBmaWx0cmF0aW9uIGF0IDAsNDUgzrxtIGlzIG5lZWRlZCBmb3IgZGV0ZXJtaW5hdGlvbiBvZiBkaXNzb2x2ZWQgbnVjbGlkZXMuIEFjaWRpZmljYXRpb24gYW5kIGNoZW1pY2FsIHNlcGFyYXRpb24gb2YgdGhlIHNhbXBsZSBhcmUgYWx3YXlzIG5lZWRlZC4gVGhlIGxpbWl0IG9mIHF1YW50aWZpY2F0aW9uIGRlcGVuZHMgb24gdGhlIGNoZW1pY2FsIHNlcGFyYXRpb24gYW5kIHRoZSBwZXJmb3JtYW5jZSBvZiB0aGUgbWVhc3VyZW1lbnQgZGV2aWNlLiBUaGlzIG1ldGhvZCBjb3ZlcnMgdGhlIG1lYXN1cmVtZW50IG9mIHRob3NlIGlzb3RvcGVzIGluIHdhdGVyIGluIGFjdGl2aXR5IGNvbmNlbnRyYXRpb25zIGJldHdlZW4gYXJvdW5kWzEyXVsxM106IOKAlCAgICAgICAgICAxIG1CccK3bOKIkjEgdG8gNSBCccK3bOKIkjEgZm9yIDIzOVB1LCAyNDBQdSBhbmQgMjM3TnA7IOKAlCAgICAgICAgICAxIEJxwrds4oiSMSB0byA1IEJxwrds4oiSMSBmb3IgMjQxUHUuIEluIGJvdGggY2FzZXMsIHNhbXBsZXMgd2l0aCBoaWdoZXIgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgdGhhbiA1IEJxwrds4oiSMSBjYW4gYmUgbWVhc3VyZWQgaWYgYSBkaWx1dGlvbiBpcyBwZXJmb3JtZWQgYmVmb3JlIHRoZSBjaGVtaWNhbCBzZXBhcmF0aW9uLiBJdCBpcyBwb3NzaWJsZSB0byBtZWFzdXJlIDI0MVB1IGZvbGxvd2luZyBhIHByZS1jb25jZW50cmF0aW9uIHN0ZXAgb2YgYXQgbGVhc3QgMSAwMDAuICIsIm9iamVjdElEIjoiNjk0MDRfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gMjA4OTk6MjAxOCBXYXRlciBxdWFsaXR5IOKAlCBQbHV0b25pdW0gYW5kIG5lcHR1bml1bSDigJQgVGVzdCBtZXRob2QgdXNpbmcgSUNQLU1TIiwibWF0Y2hMZXZlbCI6InBhcnRpYWwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyJdfSwidGV4dCI6eyJ2YWx1ZSI6IlRoaXMgZG9jdW1lbnQgc3BlY2lmaWVzIG1ldGhvZHMgdXNlZCB0byBkZXRlcm1pbmUgdGhlIGNvbmNlbnRyYXRpb24gb2YgcGx1dG9uaXVtIGFuZCBuZXB0dW5pdW0gaXNvdG9wZXMgaW4gd2F0ZXIgYnkgaW5kdWN0aXZlbHkgY291cGxlZCBwbGFzbWEgbWFzcyBzcGVjdHJvbWV0cnkgKElDUC1NUykgKDIzOVB1LCAyNDBQdSwgMjQxUHUgYW5kIDIzN05wKS4gVGhlIGNvbmNlbnRyYXRpb25zIG9idGFpbmVkIGNhbiBiZSBjb252ZXJ0ZWQgaW50byBhY3Rpdml0eSBjb25jZW50cmF0aW9ucyBvZiB0aGUgZGlmZmVyZW50IGlzb3RvcGVzWzldLiBEdWUgdG8gaXRzIHJlbGF0aXZlbHkgc2hvcnQgaGFsZi1saWZlIGFuZCAyMzhVIGlzb2JhcmljIGludGVyZmVyZW5jZSwgMjM4UHUgY2FuIGhhcmRseSBiZSBtZWFzdXJlZCBieSB0aGlzIG1ldGhvZC4gVG8gcXVhbnRpZnkgdGhpcyBpc290b3BlLCBvdGhlciB0ZWNobmlxdWVzIGNhbiBiZSB1c2VkIChJQ1AtTVMgd2l0aCBjb2xsaXNpb24tcmVhY3Rpb24gY2VsbCwgSUNQLU1TL01TIHdpdGggY29sbGlzaW9uLXJlYWN0aW9uIGNlbGwgb3IgY2hlbWljYWwgc2VwYXJhdGlvbikuIEFscGhhIHNwZWN0cm9tZXRyeSBtZWFzdXJlbWVudCwgYXMgZGVzY3JpYmVkIGluIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT42N1sxMF0sIGlzIGN1cnJlbnRseSB1c2VkWzExXS4gVGhpcyBtZXRob2QgaXMgYXBwbGljYWJsZSB0byBhbGwgdHlwZXMgb2Ygd2F0ZXIgaGF2aW5nIGEgc2FsaW5lIGxvYWQgbGVzcyB0aGFuIDEgZ8K3bOKIkjEuIEEgZGlsdXRpb24gb2YgdGhlIHNhbXBsZSBpcyBwb3NzaWJsZSB0byBvYnRhaW4gYSBzb2x1dGlvbiBoYXZpbmcgYSBzYWxpbmUgbG9hZCBhbmQgYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgY29tcGF0aWJsZSB3aXRoIHRoZSBwcmVwYXJhdGlvbiBhbmQgdGhlIG1lYXN1cmVtZW50IGFzc2VtYmx5LiBBIGZpbHRyYXRpb24gYXQgMCw0NSDOvG0gaXMgbmVlZGVkIGZvciBkZXRlcm1pbmF0aW9uIG9mIGRpc3NvbHZlZCBudWNsaWRlcy4gQWNpZGlmaWNhdGlvbiBhbmQgY2hlbWljYWwgc2VwYXJhdGlvbiBvZiB0aGUgc2FtcGxlIGFyZSBhbHdheXMgbmVlZGVkLiBUaGUgbGltaXQgb2YgcXVhbnRpZmljYXRpb24gZGVwZW5kcyBvbiB0aGUgY2hlbWljYWwgc2VwYXJhdGlvbiBhbmQgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBtZWFzdXJlbWVudCBkZXZpY2UuIFRoaXMgbWV0aG9kIGNvdmVycyB0aGUgbWVhc3VyZW1lbnQgb2YgdGhvc2UgaXNvdG9wZXMgaW4gd2F0ZXIgaW4gYWN0aXZpdHkgY29uY2VudHJhdGlvbnMgYmV0d2VlbiBhcm91bmRbMTJdWzEzXTog4oCUICAgICAgICAgIDEgbUJxwrds4oiSMSB0byA1IEJxwrds4oiSMSBmb3IgMjM5UHUsIDI0MFB1IGFuZCAyMzdOcDsg4oCUICAgICAgICAgIDEgQnHCt2ziiJIxIHRvIDUgQnHCt2ziiJIxIGZvciAyNDFQdS4gSW4gYm90aCBjYXNlcywgc2FtcGxlcyB3aXRoIGhpZ2hlciBhY3Rpdml0eSBjb25jZW50cmF0aW9ucyB0aGFuIDUgQnHCt2ziiJIxIGNhbiBiZSBtZWFzdXJlZCBpZiBhIGRpbHV0aW9uIGlzIHBlcmZvcm1lZCBiZWZvcmUgdGhlIGNoZW1pY2FsIHNlcGFyYXRpb24uIEl0IGlzIHBvc3NpYmxlIHRvIG1lYXN1cmUgMjQxUHUgZm9sbG93aW5nIGEgcHJlLWNvbmNlbnRyYXRpb24gc3RlcCBvZiBhdCBsZWFzdCAxIDAwMC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvNzcvNjc3MjkiLCJ1dWlkIjoiNGY1NWRiMjktMTExNC00MGY3LWI0MmYtOTI2ZDY1Zjg4NGVkIiwidGl0bGUiOiJJU08gMTI0NzM6MjAxNyBHZW5lcmFsIHByaW5jaXBsZXMgb2YgY2F0aG9kaWMgcHJvdGVjdGlvbiBpbiBzZWF3YXRlciIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjIsIm9yZGVyIjoxMSwidGV4dCI6IklTTyAxMjQ3MyBjb3ZlcnMgdGhlIGdlbmVyYWwgcHJpbmNpcGxlcyBvZiBjYXRob2RpYyBwcm90ZWN0aW9uIHdoZW4gYXBwbGllZCBpbiBzZWF3YXRlciwgYnJhY2tpc2ggd2F0ZXJzIGFuZCBtYXJpbmUgbXVkLiBJdCBpcyBpbnRlbmRlZCB0byBiZSBhbiBpbnRyb2R1Y3Rpb24sIHRvIHByb3ZpZGUgYSBsaW5rIGJldHdlZW4gdGhlIHRoZW9yZXRpY2FsIGFzcGVjdHMgYW5kIHRoZSBwcmFjdGljYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gY29uc3RpdHV0ZSBhIHN1cHBvcnQgdG8gdGhlIG90aGVyIHN0YW5kYXJkcyBkZXZvdGVkIHRvIGNhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3RlZWwgc3RydWN0dXJlcyBpbiBzZWF3YXRlci4gSVNPIDEyNDczIHNwZWNpZmllcyB0aGUgY3JpdGVyaWEgcmVxdWlyZWQgZm9yIGNhdGhvZGljIHByb3RlY3Rpb24uIEl0IHByb3ZpZGVzIHJlY29tbWVuZGF0aW9ucyBhbmQgaW5mb3JtYXRpb24gb24gcmVmZXJlbmNlIGVsZWN0cm9kZXMsIGRlc2lnbiBjb25zaWRlcmF0aW9ucyBhbmQgcHJldmVudGlvbiBvZiB0aGUgc2Vjb25kYXJ5IGVmZmVjdHMgb2YgY2F0aG9kaWMgcHJvdGVjdGlvbi4gVGhlIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgY2F0aG9kaWMgcHJvdGVjdGlvbiBpbiBzZWF3YXRlciBhcmUgY292ZXJlZCBieSB0aGUgZm9sbG93aW5nIHN0YW5kYXJkczogLSAgICAgIEVOIDEyNDk1LCBDYXRob2RpYyBwcm90ZWN0aW9uIGZvciBmaXhlZCBzdGVlbCBvZmZzaG9yZSBzdHJ1Y3R1cmVzIDsgLSAgICAgIElTTyAxMzE3NCwgQ2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBoYXJib3VyIGluc3RhbGxhdGlvbnMgKCBJU08gMTMxNzQgKSA7IC0gICAgICBFTiAxMjQ5NiwgR2FsdmFuaWMgYW5vZGVzIGZvciBjYXRob2RpYyBwcm90ZWN0aW9uIGluIHNlYXdhdGVyIGFuZCBzYWxpbmUgbXVkIDsgLSAgICAgIEVOIDEzMTczLCBDYXRob2RpYyBwcm90ZWN0aW9uIGZvciBzdGVlbCBvZmZzaG9yZSBmbG9hdGluZyBzdHJ1Y3R1cmVzIDsgLSAgICAgIEVOIDE2MjIyLCBDYXRob2RpYyBwcm90ZWN0aW9uIG9mIHNoaXAgaHVsbHMgOyAtICAgICAgRU4gMTI0NzQsIENhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3VibWFyaW5lIHBpcGVsaW5lcyA7IC0gICAgICBJU08gMTU1ODnigJEyLCBQZXRyb2xldW0sIHBldHJvY2hlbWljYWwgYW5kIG5hdHVyYWwgZ2FzIGluZHVzdHJpZXMgPyBDYXRob2RpYyBwcm90ZWN0aW9uIG9mIHBpcGVsaW5lIHRyYW5zcG9ydGF0aW9uIHN5c3RlbXMgPyBQYXJ0IDI6IE9mZnNob3JlIHBpcGVsaW5lcyAuIEZvciBjYXRob2RpYyBwcm90ZWN0aW9uIG9mIHN0ZWVsIHJlaW5mb3JjZWQgY29uY3JldGUgd2hldGhlciBleHBvc2VkIHRvIHNlYXdhdGVyIG9yIHRvIHRoZSBhdG1vc3BoZXJlLCBJU08gMTI2OTYgYXBwbGllcy4gIiwib2JqZWN0SUQiOiI2NzcyOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiAxMjQ3MzoyMDE3IEdlbmVyYWwgcHJpbmNpcGxlcyBvZiBjYXRob2RpYyBwcm90ZWN0aW9uIGluIHNlYXdhdGVyIiwibWF0Y2hMZXZlbCI6InBhcnRpYWwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPiAxMjQ3MyBjb3ZlcnMgdGhlIGdlbmVyYWwgcHJpbmNpcGxlcyBvZiBjYXRob2RpYyBwcm90ZWN0aW9uIHdoZW4gYXBwbGllZCBpbiBzZWF3YXRlciwgYnJhY2tpc2ggd2F0ZXJzIGFuZCBtYXJpbmUgbXVkLiBJdCBpcyBpbnRlbmRlZCB0byBiZSBhbiBpbnRyb2R1Y3Rpb24sIHRvIHByb3ZpZGUgYSBsaW5rIGJldHdlZW4gdGhlIHRoZW9yZXRpY2FsIGFzcGVjdHMgYW5kIHRoZSBwcmFjdGljYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gY29uc3RpdHV0ZSBhIHN1cHBvcnQgdG8gdGhlIG90aGVyIHN0YW5kYXJkcyBkZXZvdGVkIHRvIGNhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3RlZWwgc3RydWN0dXJlcyBpbiBzZWF3YXRlci4gPGVtPklTTzwvZW0+IDEyNDczIHNwZWNpZmllcyB0aGUgY3JpdGVyaWEgcmVxdWlyZWQgZm9yIGNhdGhvZGljIHByb3RlY3Rpb24uIEl0IHByb3ZpZGVzIHJlY29tbWVuZGF0aW9ucyBhbmQgaW5mb3JtYXRpb24gb24gcmVmZXJlbmNlIGVsZWN0cm9kZXMsIGRlc2lnbiBjb25zaWRlcmF0aW9ucyBhbmQgcHJldmVudGlvbiBvZiB0aGUgc2Vjb25kYXJ5IGVmZmVjdHMgb2YgY2F0aG9kaWMgcHJvdGVjdGlvbi4gVGhlIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgY2F0aG9kaWMgcHJvdGVjdGlvbiBpbiBzZWF3YXRlciBhcmUgY292ZXJlZCBieSB0aGUgZm9sbG93aW5nIHN0YW5kYXJkczogLSAgICAgIEVOIDEyNDk1LCBDYXRob2RpYyBwcm90ZWN0aW9uIGZvciBmaXhlZCBzdGVlbCBvZmZzaG9yZSBzdHJ1Y3R1cmVzIDsgLSAgICAgIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT43NCwgQ2F0aG9kaWMgcHJvdGVjdGlvbiBvZiBoYXJib3VyIGluc3RhbGxhdGlvbnMgKCA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NzQgKSA7IC0gICAgICBFTiAxMjQ5NiwgR2FsdmFuaWMgYW5vZGVzIGZvciBjYXRob2RpYyBwcm90ZWN0aW9uIGluIHNlYXdhdGVyIGFuZCBzYWxpbmUgbXVkIDsgLSAgICAgIEVOIDxlbT4xMzE8L2VtPjczLCBDYXRob2RpYyBwcm90ZWN0aW9uIGZvciBzdGVlbCBvZmZzaG9yZSBmbG9hdGluZyBzdHJ1Y3R1cmVzIDsgLSAgICAgIEVOIDE2MjIyLCBDYXRob2RpYyBwcm90ZWN0aW9uIG9mIHNoaXAgaHVsbHMgOyAtICAgICAgRU4gMTI0NzQsIENhdGhvZGljIHByb3RlY3Rpb24gb2Ygc3VibWFyaW5lIHBpcGVsaW5lcyA7IC0gICAgICA8ZW0+SVNPPC9lbT4gMTU1ODnigJEyLCBQZXRyb2xldW0sIHBldHJvY2hlbWljYWwgYW5kIG5hdHVyYWwgZ2FzIGluZHVzdHJpZXMgPyBDYXRob2RpYyBwcm90ZWN0aW9uIG9mIHBpcGVsaW5lIHRyYW5zcG9ydGF0aW9uIHN5c3RlbXMgPyBQYXJ0IDI6IE9mZnNob3JlIHBpcGVsaW5lcyAuIEZvciBjYXRob2RpYyBwcm90ZWN0aW9uIG9mIHN0ZWVsIHJlaW5mb3JjZWQgY29uY3JldGUgd2hldGhlciBleHBvc2VkIHRvIHNlYXdhdGVyIG9yIHRvIHRoZSBhdG1vc3BoZXJlLCA8ZW0+SVNPPC9lbT4gMTI2OTYgYXBwbGllcy4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDQvNTMvNDUzODAiLCJ1dWlkIjoiYzhhZjcxMzEtNjFlMy00M2Q4LTk3ZmYtYjZhMmUzMjU1M2JjIiwidGl0bGUiOiJJU08gMjkyODI6MjAxMSBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgQ29tbXVuaWNhdGlvbnMgYWNjZXNzIGZvciBsYW5kIG1vYmlsZXMgKENBTE0pIOKAlCBTYXRlbGxpdGUgbmV0d29ya3MiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE4LCJvcmRlciI6MTEsInRleHQiOiJJU08gMjkyODI6MjAxMSBwcm92aWRlcyBkZWZpbml0aW9ucyBhbmQgcHJvY2VkdXJlcyBmb3IgdGhlIGVzdGFibGlzaG1lbnQsIG1haW50ZW5hbmNlIGFuZCB0ZXJtaW5hdGlvbiBvZiBhbiBJVFMgKGludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zKSBjb21tdW5pY2F0aW9ucyBzZXNzaW9uIHdpdGhpbiBhIENBTE0gKGNvbW11bmljYXRpb24gYWNjZXNzIGZvciBsYW5kIG1vYmlsZXMpIHN5c3RlbSBlbnZpcm9ubWVudCB1c2luZyBiaS1kaXJlY3Rpb25hbCBzYXRlbGxpdGUgY29tbXVuaWNhdGlvbnMuIEl0IGRlZmluZXMgdGhlIG9wZXJhdGlvbiBvZiB0aGUgbWVkaXVtIG1hbmFnZW1lbnQgYWRhcHRhdGlvbiBlbnRpdHkgKE1NQUUpLCB3aGljaCBwcm92aWRlcyB0aGUgbWFuYWdlbWVudCBpbnRlcmZhY2UgYmV0d2VlbiBhIHByb3ByaWV0YXJ5IHNhdGVsbGl0ZSBjb21tdW5pY2F0aW9ucyBtZWRpdW0gYW5kIHRoZSBcIklUUyBzdGF0aW9uIG1hbmFnZW1lbnRcIi4gVGhpcyBlbmFibGVzIHRoZSBcIklUUyBzdGF0aW9uIG1hbmFnZW1lbnRcIiB0byBrbm93IHRoZSBzdGF0dXMgb2YgdGhlIGNvbW11bmljYXRpb25zIG1lZGl1bSBhbmQgY29udHJvbCB0aGUgaW50ZXJmYWNlIHdpdGhvdXQgdGhlIG5lZWQgZm9yIGFwcGxpY2F0aW9ucyBhdCB0aGUgSVRTIHN0YXRpb24gdG8gaGF2ZSBhbnkga25vd2xlZGdlIG9mIHRoZSBzYXRlbGxpdGUgY29tbXVuaWNhdGlvbnMgaW50ZXJmYWNlLiBUaGUgcHJvY2VkdXJlcyB0aGF0IHRoZSBcIklUUyBzdGF0aW9uIG1hbmFnZW1lbnRcIiBleHBlY3RzIHRvIHVzZSBhcmUgYWxzbyBleHBsYWluZWQuIElTTyAyOTI4MjoyMDExIGRlZmluZXMgaG93IHRvIGNvbm5lY3QgYW5kIGRpc2Nvbm5lY3QgYSBjb21tdW5pY2F0aW9uIHNlc3Npb24gdXNpbmcgc2F0ZWxsaXRlIGNvbW11bmljYXRpb24gc3lzdGVtcyBpbiB0aGUgY29udGV4dCBvZiBhbiBhcHBsaWNhdGlvbiBvcGVyYXRlZCB3aXRoaW4gdGhlIGVudmlyb25tZW50IGRlZmluZWQgaW4gSVNPIDIxMjE3LiBJdCBzdXBwb3J0cyBwZWVyLXRvLXBlZXIgbW9kZXMgb2YgY29tbXVuaWNhdGlvbi4gU3VwcG9ydCBmb3IgYnJvYWRjYXN0IHNhdGVsbGl0ZSBzeXN0ZW1zIGlzIGRlZmluZWQgaW4gSVNPIDEzMTgzLCB3aGljaCBwcm92aWRlcyBhIGNvbW1vbiBhcHByb2FjaCBmb3IgYWxsIGJyb2FkY2FzdCBtZWRpYS4gSXQgc3VwcG9ydHMgc2F0ZWxsaXRlIGNvbW11bmljYXRpb25zIG5ldHdvcmtzIHRoYXQgYXJlIGludGVyY29ubmVjdGVkIHdpdGggdGhlIHB1YmxpYyBuZXR3b3JrLCBhcyB3ZWxsIGFzIHRob3NlIHdoaWNoIGNvbm5lY3QgdmlhIHRoZSBpbnRlcm5ldCBhbmQgdGhvc2Ugd2hpY2ggcHJvdmlkZSBhIHN0YW5kLWFsb25lIGNhcGFiaWxpdHkuICIsIm9iamVjdElEIjoiNDUzODBfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gMjkyODI6MjAxMSBJbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcyDigJQgQ29tbXVuaWNhdGlvbnMgYWNjZXNzIGZvciBsYW5kIG1vYmlsZXMgKENBTE0pIOKAlCBTYXRlbGxpdGUgbmV0d29ya3MiLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDI5MjgyOjIwMTEgcHJvdmlkZXMgZGVmaW5pdGlvbnMgYW5kIHByb2NlZHVyZXMgZm9yIHRoZSBlc3RhYmxpc2htZW50LCBtYWludGVuYW5jZSBhbmQgdGVybWluYXRpb24gb2YgYW4gSVRTIChpbnRlbGxpZ2VudCB0cmFuc3BvcnQgc3lzdGVtcykgY29tbXVuaWNhdGlvbnMgc2Vzc2lvbiB3aXRoaW4gYSBDQUxNIChjb21tdW5pY2F0aW9uIGFjY2VzcyBmb3IgbGFuZCBtb2JpbGVzKSBzeXN0ZW0gZW52aXJvbm1lbnQgdXNpbmcgYmktZGlyZWN0aW9uYWwgc2F0ZWxsaXRlIGNvbW11bmljYXRpb25zLiBJdCBkZWZpbmVzIHRoZSBvcGVyYXRpb24gb2YgdGhlIG1lZGl1bSBtYW5hZ2VtZW50IGFkYXB0YXRpb24gZW50aXR5IChNTUFFKSwgd2hpY2ggcHJvdmlkZXMgdGhlIG1hbmFnZW1lbnQgaW50ZXJmYWNlIGJldHdlZW4gYSBwcm9wcmlldGFyeSBzYXRlbGxpdGUgY29tbXVuaWNhdGlvbnMgbWVkaXVtIGFuZCB0aGUgXCJJVFMgc3RhdGlvbiBtYW5hZ2VtZW50XCIuIFRoaXMgZW5hYmxlcyB0aGUgXCJJVFMgc3RhdGlvbiBtYW5hZ2VtZW50XCIgdG8ga25vdyB0aGUgc3RhdHVzIG9mIHRoZSBjb21tdW5pY2F0aW9ucyBtZWRpdW0gYW5kIGNvbnRyb2wgdGhlIGludGVyZmFjZSB3aXRob3V0IHRoZSBuZWVkIGZvciBhcHBsaWNhdGlvbnMgYXQgdGhlIElUUyBzdGF0aW9uIHRvIGhhdmUgYW55IGtub3dsZWRnZSBvZiB0aGUgc2F0ZWxsaXRlIGNvbW11bmljYXRpb25zIGludGVyZmFjZS4gVGhlIHByb2NlZHVyZXMgdGhhdCB0aGUgXCJJVFMgc3RhdGlvbiBtYW5hZ2VtZW50XCIgZXhwZWN0cyB0byB1c2UgYXJlIGFsc28gZXhwbGFpbmVkLiA8ZW0+SVNPPC9lbT4gMjkyODI6MjAxMSBkZWZpbmVzIGhvdyB0byBjb25uZWN0IGFuZCBkaXNjb25uZWN0IGEgY29tbXVuaWNhdGlvbiBzZXNzaW9uIHVzaW5nIHNhdGVsbGl0ZSBjb21tdW5pY2F0aW9uIHN5c3RlbXMgaW4gdGhlIGNvbnRleHQgb2YgYW4gYXBwbGljYXRpb24gb3BlcmF0ZWQgd2l0aGluIHRoZSBlbnZpcm9ubWVudCBkZWZpbmVkIGluIDxlbT5JU088L2VtPiAyMTIxNy4gSXQgc3VwcG9ydHMgcGVlci10by1wZWVyIG1vZGVzIG9mIGNvbW11bmljYXRpb24uIFN1cHBvcnQgZm9yIGJyb2FkY2FzdCBzYXRlbGxpdGUgc3lzdGVtcyBpcyBkZWZpbmVkIGluIDxlbT5JU088L2VtPiA8ZW0+MTMxPC9lbT44Mywgd2hpY2ggcHJvdmlkZXMgYSBjb21tb24gYXBwcm9hY2ggZm9yIGFsbCBicm9hZGNhc3QgbWVkaWEuIEl0IHN1cHBvcnRzIHNhdGVsbGl0ZSBjb21tdW5pY2F0aW9ucyBuZXR3b3JrcyB0aGF0IGFyZSBpbnRlcmNvbm5lY3RlZCB3aXRoIHRoZSBwdWJsaWMgbmV0d29yaywgYXMgd2VsbCBhcyB0aG9zZSB3aGljaCBjb25uZWN0IHZpYSB0aGUgaW50ZXJuZXQgYW5kIHRob3NlIHdoaWNoIHByb3ZpZGUgYSBzdGFuZC1hbG9uZSBjYXBhYmlsaXR5LiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi83MC82NzA4OSIsInV1aWQiOiI0OTg1Y2E0MS1jNDYwLTRkMmYtODdlNi01OTk0Y2I0YzgxYjQiLCJ0aXRsZSI6IklTTyAxNzQzOC00OjIwMTkgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMg4oCUIEluZG9vciBuYXZpZ2F0aW9uIGZvciBwZXJzb25hbCBhbmQgdmVoaWNsZSBJVFMgc3RhdGlvbiDigJQgUGFydCA0OiBSZXF1aXJlbWVudHMgYW5kIHNwZWNpZmljYXRpb25zIGZvciBpbnRlcmZhY2UgYmV0d2VlbiBwZXJzb25hbC92ZWhpY2xlIGFuZCBjZW50cmFsIElUUyBzdGF0aW9ucyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTksIm9yZGVyIjoxMSwidGV4dCI6IlRoaXMgZG9jdW1lbnQgZGVmaW5lcyBkZXRhaWxlZCB1c2UgY2FzZXMsIHJlcXVpcmVtZW50cyBhbmQgbWVzc2FnZSBzcGVjaWZpY2F0aW9ucyBmb3Igc3VwcG9ydGluZyBpbmRvb3IgbmF2aWdhdGlvbiBmdW5jdGlvbmFsaXR5IGJldHdlZW4gYSBwZXJzb25hbC92ZWhpY2xlIChQL1YpIElUUyBzdGF0aW9uIGFuZCBhIGNlbnRyYWwgSVRTIHN0YXRpb24uIFRoaXMgZG9jdW1lbnQgZGVmaW5lczogYSkgICAgQ2x1c3RlcnMgb2YgdXNlIGNhc2VzIGJhc2VkIG9uIHByb2Nlc3NpbmcgZmxvd3MgZm9yIGluZG9vciBuYXZpZ2F0aW9uIGJldHdlZW4gYSBQL1YgSVRTIHN0YXRpb24gYW5kIGEgY2VudHJhbCBJVFMgc3RhdGlvbjsgYikgICAgRGV0YWlsZWQgdXNlIGNhc2VzIGRlcml2ZWQgZnJvbSB0aGUgY2x1c3RlcnMgb2YgdXNlIGNhc2VzIGZvciBpbmRvb3IgbmF2aWdhdGlvbjsgYykgICAgTWVzc2FnZSBzcGVjaWZpY2F0aW9ucyB0byBzdXBwb3J0IHNvbWUgb2YgdGhlIGRldGFpbGVkIHVzZSBjYXNlcy4gVGhlIG1lc3NhZ2Ugc3BlY2lmaWNhdGlvbnMgaW5jbHVkZSBtYW5kYXRvcnksIGNvbmRpdGlvbmFsIGFuZCBvcHRpb25hbCBlbGVtZW50cy4gVGhpcyBkb2N1bWVudCBpcyBvbmx5IGFwcGxpY2FibGUgdG8gdGhlIGNvcmUgZmxvdyBmb3IgdGhlIG5hdmlnYXRpb25hbCBmdW5jdGlvbmFsaXR5IGluIGluZG9vciBzcGFjZS4gVGhlIGZvbGxvd2luZyBpc3N1ZXMgd2hpY2ggYXJlIGFkanVuY3RpdmUgYnV0IGVzc2VudGlhbCBmb3IgY29tbWVyY2lhbCBuYXZpZ2F0aW9uIHNlcnZpY2VzIGFyZSBiZXlvbmQgdGhlIHNjb3BlIG9mIHRoaXMgZG9jdW1lbnQ6IOKAlCAgICAgICAgICBBdXRob3JpemVkIGFuZCBhdXRoZW50aWNhdGVkIGFjY2VzcyBvZiB1c2VycyBhbmQgc2VydmljZXMsIGluY2x1ZGluZyBzZWN1cml0eTsg4oCUICAgICAgICAgIFBheW1lbnQ7IOKAlCAgICAgICAgICBQcmVwYXJhdGlvbiBvZiBpbmRvb3IgZGF0YSB3aGljaCBhcmUgbmVjZXNzYXJ5IGZvciBpbmRvb3IgbmF2aWdhdGlvbjsg4oCUICAgICAgICAgIERldGFpbGVkIGRhdGEgZm9ybWF0cyBmb3IgaW5kb29yIG5hdmlnYXRpb24gZGF0YSwgaW5jbHVkaW5nIGluZG9vciBtYXBzIGFuZCBpbmRvb3IgcG9zaXRpb25pbmcgcmVmZXJlbmNlcyAodGhlc2UgZm9ybSBhIHBhcnQgb2YgSVNPIDE3NDM4LTJbMV0gYW5kIElTTyAxNzQzOC0zWzJdKTsg4oCUICAgICAgICAgIEhvdyB0byB0cmFuc2ZlciBhbmQgc2hhcmUgZGF0YSByZXF1aXJlZCBmb3IgaW5kb29yIG5hdmlnYXRpb24gYmV0d2VlbiBhIHJvYWRzaWRlIElUUyBzdGF0aW9uIGFuZCBhIGNlbnRyYWwgSVRTIHN0YXRpb24sIGkuZS4gbG93LWxldmVsIGNvbW11bmljYXRpb24gcHJvdG9jb2xzOyDigJQgICAgICAgICAgT3RoZXIgaXNzdWVzIGRlcGVuZGVudCBvbiBpbXBsZW1lbnRhdGlvbiBvZiBhbiBpbnN0YW5jZSBvZiBpbmRvb3IgbmF2aWdhdGlvbiwgZS5nLiBpbmRvb3Itb3V0ZG9vciBzZWFtbGVzcyBuYXZpZ2F0aW9uLiBUaGlzIGRvY3VtZW50IHVzZXMgdGhlIFhNTCBhbmQgRGF0YSBlWGNoYW5nZSBNZXNzYWdlIChEWE0pIGZvcm1hdCBkZWZpbmVkIGluIElTTyAxMzE4NC0yIHRvIGVuY29kZSBkZWZpbmVkIG1lc3NhZ2VzLiBbMV0gVW5kZXIgZGV2ZWxvcG1lbnQuIEN1cnJlbnQgc3RhZ2UgMC4wMC4gWzJdIFVuZGVyIGRldmVsb3BtZW50LiBDdXJyZW50IHN0YWdlIDAuMDAuICIsIm9iamVjdElEIjoiNjcwODlfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4gMTc0MzgtNDoyMDE5IEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIOKAlCBJbmRvb3IgbmF2aWdhdGlvbiBmb3IgcGVyc29uYWwgYW5kIHZlaGljbGUgSVRTIHN0YXRpb24g4oCUIFBhcnQgNDogUmVxdWlyZW1lbnRzIGFuZCBzcGVjaWZpY2F0aW9ucyBmb3IgaW50ZXJmYWNlIGJldHdlZW4gcGVyc29uYWwvdmVoaWNsZSBhbmQgY2VudHJhbCBJVFMgc3RhdGlvbnMiLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhpcyBkb2N1bWVudCBkZWZpbmVzIGRldGFpbGVkIHVzZSBjYXNlcywgcmVxdWlyZW1lbnRzIGFuZCBtZXNzYWdlIHNwZWNpZmljYXRpb25zIGZvciBzdXBwb3J0aW5nIGluZG9vciBuYXZpZ2F0aW9uIGZ1bmN0aW9uYWxpdHkgYmV0d2VlbiBhIHBlcnNvbmFsL3ZlaGljbGUgKFAvVikgSVRTIHN0YXRpb24gYW5kIGEgY2VudHJhbCBJVFMgc3RhdGlvbi4gVGhpcyBkb2N1bWVudCBkZWZpbmVzOiBhKSAgICBDbHVzdGVycyBvZiB1c2UgY2FzZXMgYmFzZWQgb24gcHJvY2Vzc2luZyBmbG93cyBmb3IgaW5kb29yIG5hdmlnYXRpb24gYmV0d2VlbiBhIFAvViBJVFMgc3RhdGlvbiBhbmQgYSBjZW50cmFsIElUUyBzdGF0aW9uOyBiKSAgICBEZXRhaWxlZCB1c2UgY2FzZXMgZGVyaXZlZCBmcm9tIHRoZSBjbHVzdGVycyBvZiB1c2UgY2FzZXMgZm9yIGluZG9vciBuYXZpZ2F0aW9uOyBjKSAgICBNZXNzYWdlIHNwZWNpZmljYXRpb25zIHRvIHN1cHBvcnQgc29tZSBvZiB0aGUgZGV0YWlsZWQgdXNlIGNhc2VzLiBUaGUgbWVzc2FnZSBzcGVjaWZpY2F0aW9ucyBpbmNsdWRlIG1hbmRhdG9yeSwgY29uZGl0aW9uYWwgYW5kIG9wdGlvbmFsIGVsZW1lbnRzLiBUaGlzIGRvY3VtZW50IGlzIG9ubHkgYXBwbGljYWJsZSB0byB0aGUgY29yZSBmbG93IGZvciB0aGUgbmF2aWdhdGlvbmFsIGZ1bmN0aW9uYWxpdHkgaW4gaW5kb29yIHNwYWNlLiBUaGUgZm9sbG93aW5nIGlzc3VlcyB3aGljaCBhcmUgYWRqdW5jdGl2ZSBidXQgZXNzZW50aWFsIGZvciBjb21tZXJjaWFsIG5hdmlnYXRpb24gc2VydmljZXMgYXJlIGJleW9uZCB0aGUgc2NvcGUgb2YgdGhpcyBkb2N1bWVudDog4oCUICAgICAgICAgIEF1dGhvcml6ZWQgYW5kIGF1dGhlbnRpY2F0ZWQgYWNjZXNzIG9mIHVzZXJzIGFuZCBzZXJ2aWNlcywgaW5jbHVkaW5nIHNlY3VyaXR5OyDigJQgICAgICAgICAgUGF5bWVudDsg4oCUICAgICAgICAgIFByZXBhcmF0aW9uIG9mIGluZG9vciBkYXRhIHdoaWNoIGFyZSBuZWNlc3NhcnkgZm9yIGluZG9vciBuYXZpZ2F0aW9uOyDigJQgICAgICAgICAgRGV0YWlsZWQgZGF0YSBmb3JtYXRzIGZvciBpbmRvb3IgbmF2aWdhdGlvbiBkYXRhLCBpbmNsdWRpbmcgaW5kb29yIG1hcHMgYW5kIGluZG9vciBwb3NpdGlvbmluZyByZWZlcmVuY2VzICh0aGVzZSBmb3JtIGEgcGFydCBvZiA8ZW0+SVNPPC9lbT4gMTc0MzgtMlsxXSBhbmQgPGVtPklTTzwvZW0+IDE3NDM4LTNbMl0pOyDigJQgICAgICAgICAgSG93IHRvIHRyYW5zZmVyIGFuZCBzaGFyZSBkYXRhIHJlcXVpcmVkIGZvciBpbmRvb3IgbmF2aWdhdGlvbiBiZXR3ZWVuIGEgcm9hZHNpZGUgSVRTIHN0YXRpb24gYW5kIGEgY2VudHJhbCBJVFMgc3RhdGlvbiwgaS5lLiBsb3ctbGV2ZWwgY29tbXVuaWNhdGlvbiBwcm90b2NvbHM7IOKAlCAgICAgICAgICBPdGhlciBpc3N1ZXMgZGVwZW5kZW50IG9uIGltcGxlbWVudGF0aW9uIG9mIGFuIGluc3RhbmNlIG9mIGluZG9vciBuYXZpZ2F0aW9uLCBlLmcuIGluZG9vci1vdXRkb29yIHNlYW1sZXNzIG5hdmlnYXRpb24uIFRoaXMgZG9jdW1lbnQgdXNlcyB0aGUgWE1MIGFuZCBEYXRhIGVYY2hhbmdlIE1lc3NhZ2UgKERYTSkgZm9ybWF0IGRlZmluZWQgaW4gPGVtPklTTzwvZW0+IDxlbT4xMzE8L2VtPjg0LTIgdG8gZW5jb2RlIGRlZmluZWQgbWVzc2FnZXMuIFsxXSBVbmRlciBkZXZlbG9wbWVudC4gQ3VycmVudCBzdGFnZSAwLjAwLiBbMl0gVW5kZXIgZGV2ZWxvcG1lbnQuIEN1cnJlbnQgc3RhZ2UgMC4wMC4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDcvMjMvNzIzNzMiLCJ1dWlkIjoiNTFhYWI0NTktM2E2NS00MDFjLWJjYmYtZjhjZDZkNjg1MWI5IiwidGl0bGUiOiJJU08gMjIwMTc6MjAyMCBXYXRlciBxdWFsaXR5IOKAlCBHdWlkYW5jZSBmb3IgcmFwaWQgcmFkaW9hY3Rpdml0eSBtZWFzdXJlbWVudHMgaW4gbnVjbGVhciBvciByYWRpb2xvZ2ljYWwgZW1lcmdlbmN5IHNpdHVhdGlvbiIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjAsIm9yZGVyIjoxMSwidGV4dCI6IlRoaXMgZG9jdW1lbnQgcHJvdmlkZXMgZ3VpZGVsaW5lcyBmb3IgdGVzdGluZyBsYWJvcmF0b3JpZXMgd2FudGluZyB0byB1c2UgcmFwaWQgdGVzdCBtZXRob2RzIG9uIHdhdGVyIHNhbXBsZXMgdGhhdCBtYXkgYmUgY29udGFtaW5hdGVkIGZvbGxvd2luZyBhIG51Y2xlYXIgb3IgcmFkaW9sb2dpY2FsIGVtZXJnZW5jeSBpbmNpZGVudC4gSW4gYW4gZW1lcmdlbmN5IHNpdHVhdGlvbiwgY29uc2lkZXJhdGlvbiBzaG91bGQgYmUgZ2l2ZW4gdG86IOKAlCAgICAgdGFraW5nIGludG8gYWNjb3VudCB0aGUgc3BlY2lmaWMgY29udGV4dCBmb3IgdGhlIHRlc3RzIHRvIGJlIHBlcmZvcm1lZCwgZS5nLiBhIHBvdGVudGlhbGx5IGhpZ2ggbGV2ZWwgb2YgY29udGFtaW5hdGlvbjsg4oCUICAgICB1c2luZyBvciBhZGp1c3RpbmcsIHdoZW4gcG9zc2libGUsIHJhZGlvYWN0aXZpdHkgdGVzdCBtZXRob2RzIGltcGxlbWVudGVkIGR1cmluZyByb3V0aW5lIHNpdHVhdGlvbnMgdG8gb2J0YWluIGEgcmVzdWx0IHJhcGlkbHkgb3IsIGZvciB0ZXN0cyBub3QgcGVyZm9ybWVkIHJvdXRpbmVseSwgYXBwbHlpbmcgc3BlY2lmaWMgcmFwaWQgdGVzdCBtZXRob2RzIHByZXZpb3VzbHkgdmFsaWRhdGVkIGJ5IHRoZSBsYWJvcmF0b3J5LCBlLmcuIGZvciA4OSBTciBkZXRlcm1pbmF0aW9uOyDigJQgICAgIHByZXBhcmluZyB0aGUgdGVzdCBsYWJvcmF0b3J5IHRvIG1lYXN1cmUgYSBsYXJnZSBudW1iZXIgb2YgcG90ZW50aWFsbHkgY29udGFtaW5hdGVkIHNhbXBsZXMuIFRoZSBhaW0gb2YgdGhpcyBkb2N1bWVudCBpcyB0byBlbnN1cmUgZGVjaXNpb24gbWFrZXJzIGhhdmUgcmVsaWFibGUgcmVzdWx0cyBuZWVkZWQgdG8gdGFrZSBhY3Rpb25zIHF1aWNrbHkgYW5kIG1pbmltaXplIHRoZSByYWRpYXRpb24gZG9zZSB0byB0aGUgcHVibGljLiBNZWFzdXJlbWVudHMgYXJlIHBlcmZvcm1lZCBpbiBvcmRlciB0byBtaW5pbWl6ZSB0aGUgcmlzayB0byB0aGUgcHVibGljIGJ5IGNoZWNraW5nIHRoZSBxdWFsaXR5IG9mIHdhdGVyIHN1cHBsaWVzLiBGb3IgZW1lcmdlbmN5IHNpdHVhdGlvbnMsIHRlc3QgcmVzdWx0cyBhcmUgb2Z0ZW4gY29tcGFyZWQgdG8gb3BlcmF0aW9uYWwgaW50ZXJ2ZW50aW9uIGxldmVscy4gTk9URSAgICBPcGVyYXRpb25hbCBpbnRlcnZlbnRpb24gbGV2ZWxzIChPSUxzKSBhcmUgZGVyaXZlZCBmcm9tIElBRUEgU2FmZXR5IFN0YW5kYXJkcyBbOF0gb3IgbmF0aW9uYWwgYXV0aG9yaXRpZXMgWzldIC4gQSBrZXkgZWxlbWVudCBvZiByYXBpZCBhbmFseXNpcyBjYW4gYmUgdGhlIHVzZSBvZiByb3V0aW5lIG1ldGhvZHMgYnV0IHdpdGggYSByZWR1Y2VkIHR1cm5hcm91bmQgdGltZS4gVGhlIGdvYWwgb2YgdGhlc2UgcmFwaWQgbWVhc3VyZW1lbnRzIGlzIG9mdGVuIHRvIGNoZWNrIGZvciB1bnVzdWFsIHJhZGlvYWN0aXZpdHkgbGV2ZWxzIGluIHRoZSB0ZXN0IHNhbXBsZSwgdG8gaWRlbnRpZnkgdGhlIHJhZGlvbnVjbGlkZXMgcHJlc2VudCBhbmQgdGhlaXIgYWN0aXZpdHkgY29uY2VudHJhdGlvbiBsZXZlbHMgYW5kIHRvIGVzdGFibGlzaCBjb21wbGlhbmNlIG9mIHRoZSB3YXRlciB3aXRoIGludGVydmVudGlvbiBsZXZlbHMgWzEwXVsxMV1bMTJdIC4gSXQgc2hvdWxkIGJlIG5vdGVkIHRoYXQgaW4gc3VjaCBjaXJjdW1zdGFuY2VzLCB2YWxpZGF0aW9uIHBhcmFtZXRlcnMgZXZhbHVhdGVkIGZvciByb3V0aW5lIHVzZSAoZS5nLiByZXByb2R1Y2liaWxpdHksIHByZWNpc2lvbiwgZXRjLikgbWF5IG5vdCBiZSBhcHBsaWNhYmxlIHRvIHRoZSBtb2RpZmllZCByYXBpZCBtZXRob2QuIEhvd2V2ZXIsIGR1ZSB0byB0aGUgY2lyY3Vtc3RhbmNlcyBhcmlzaW5nIGFmdGVyIGFuIGVtZXJnZW5jeSwgdGhlIG1vZGlmaWVkIG1ldGhvZCBtYXkgc3RpbGwgYmUgZml0LWZvci1wdXJwb3NlIGFsdGhvdWdoIHVuY2VydGFpbnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0ZXN0IHJlc3VsdHMgbmVlZCB0byBiZSBldmFsdWF0ZWQgYW5kIG1heSBpbmNyZWFzZSBmcm9tIHJvdXRpbmUgYW5hbHlzZXMuIFRoZSBmaXJzdCBzdGVwcyBvZiB0aGUgYW5hbHl0aWNhbCBhcHByb2FjaCBhcmUgdXN1YWxseSBzY3JlZW5pbmcgbWV0aG9kcyBiYXNlZCBvbiBncm9zcyBhbHBoYSBhbmQgZ3Jvc3MgYmV0YSB0ZXN0IG1ldGhvZHMgKGFkYXB0YXRpb24gb2YgSVNPIDEwNzA0IGFuZCBJU08gMTE3MDQpIGFuZCBnYW1tYSBzcGVjdHJvbWV0cnkgKGFkYXB0YXRpb24gb2YgSVNPIDIwMDQyLCBJU08gMTA3MDMgYW5kIElTTyAxOTU4MSkuIFRoZW4sIGlmIHJlcXVpcmVkIFsxM10gLCB0ZXN0IG1ldGhvZCBzdGFuZGFyZHMgZm9yIHNwZWNpZmljIHJhZGlvbnVjbGlkZXMgKHNlZSBDbGF1c2UgMikgYXJlIGFkYXB0ZWQgYW5kIGFwcGxpZWQgKGZvciBleGFtcGxlLCA5MCBTciBtZWFzdXJlbWVudCBhY2NvcmRpbmcgdG8gSVNPIDEzMTYwKSBhcyBwcm9wb3NlZCBpbiBBbm5leCBBLiBUaGlzIGRvY3VtZW50IHJlZmVycyB0byBwdWJsaXNoZWQgSVNPIGRvY3VtZW50cy4gV2hlbiBhcHByb3ByaWF0ZSwgdGhpcyBkb2N1bWVudCBhbHNvIHJlZmVycyB0byBuYXRpb25hbCBzdGFuZGFyZHMgb3Igb3RoZXIgcHVibGljbHkgYXZhaWxhYmxlIGRvY3VtZW50cy4gU2NyZWVuaW5nIHRlY2huaXF1ZXMgdGhhdCBjYW4gYmUgY2FycmllZCBvdXQgZGlyZWN0bHkgaW4gdGhlIGZpZWxkIGFyZSBub3QgcGFydCBvZiB0aGlzIGRvY3VtZW50LiAiLCJvYmplY3RJRCI6IjcyMzczXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+IDIyMDE3OjIwMjAgV2F0ZXIgcXVhbGl0eSDigJQgR3VpZGFuY2UgZm9yIHJhcGlkIHJhZGlvYWN0aXZpdHkgbWVhc3VyZW1lbnRzIGluIG51Y2xlYXIgb3IgcmFkaW9sb2dpY2FsIGVtZXJnZW5jeSBzaXR1YXRpb24iLCJtYXRjaExldmVsIjoicGFydGlhbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIl19LCJ0ZXh0Ijp7InZhbHVlIjoiVGhpcyBkb2N1bWVudCBwcm92aWRlcyBndWlkZWxpbmVzIGZvciB0ZXN0aW5nIGxhYm9yYXRvcmllcyB3YW50aW5nIHRvIHVzZSByYXBpZCB0ZXN0IG1ldGhvZHMgb24gd2F0ZXIgc2FtcGxlcyB0aGF0IG1heSBiZSBjb250YW1pbmF0ZWQgZm9sbG93aW5nIGEgbnVjbGVhciBvciByYWRpb2xvZ2ljYWwgZW1lcmdlbmN5IGluY2lkZW50LiBJbiBhbiBlbWVyZ2VuY3kgc2l0dWF0aW9uLCBjb25zaWRlcmF0aW9uIHNob3VsZCBiZSBnaXZlbiB0bzog4oCUICAgICB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBzcGVjaWZpYyBjb250ZXh0IGZvciB0aGUgdGVzdHMgdG8gYmUgcGVyZm9ybWVkLCBlLmcuIGEgcG90ZW50aWFsbHkgaGlnaCBsZXZlbCBvZiBjb250YW1pbmF0aW9uOyDigJQgICAgIHVzaW5nIG9yIGFkanVzdGluZywgd2hlbiBwb3NzaWJsZSwgcmFkaW9hY3Rpdml0eSB0ZXN0IG1ldGhvZHMgaW1wbGVtZW50ZWQgZHVyaW5nIHJvdXRpbmUgc2l0dWF0aW9ucyB0byBvYnRhaW4gYSByZXN1bHQgcmFwaWRseSBvciwgZm9yIHRlc3RzIG5vdCBwZXJmb3JtZWQgcm91dGluZWx5LCBhcHBseWluZyBzcGVjaWZpYyByYXBpZCB0ZXN0IG1ldGhvZHMgcHJldmlvdXNseSB2YWxpZGF0ZWQgYnkgdGhlIGxhYm9yYXRvcnksIGUuZy4gZm9yIDg5IFNyIGRldGVybWluYXRpb247IOKAlCAgICAgcHJlcGFyaW5nIHRoZSB0ZXN0IGxhYm9yYXRvcnkgdG8gbWVhc3VyZSBhIGxhcmdlIG51bWJlciBvZiBwb3RlbnRpYWxseSBjb250YW1pbmF0ZWQgc2FtcGxlcy4gVGhlIGFpbSBvZiB0aGlzIGRvY3VtZW50IGlzIHRvIGVuc3VyZSBkZWNpc2lvbiBtYWtlcnMgaGF2ZSByZWxpYWJsZSByZXN1bHRzIG5lZWRlZCB0byB0YWtlIGFjdGlvbnMgcXVpY2tseSBhbmQgbWluaW1pemUgdGhlIHJhZGlhdGlvbiBkb3NlIHRvIHRoZSBwdWJsaWMuIE1lYXN1cmVtZW50cyBhcmUgcGVyZm9ybWVkIGluIG9yZGVyIHRvIG1pbmltaXplIHRoZSByaXNrIHRvIHRoZSBwdWJsaWMgYnkgY2hlY2tpbmcgdGhlIHF1YWxpdHkgb2Ygd2F0ZXIgc3VwcGxpZXMuIEZvciBlbWVyZ2VuY3kgc2l0dWF0aW9ucywgdGVzdCByZXN1bHRzIGFyZSBvZnRlbiBjb21wYXJlZCB0byBvcGVyYXRpb25hbCBpbnRlcnZlbnRpb24gbGV2ZWxzLiBOT1RFICAgIE9wZXJhdGlvbmFsIGludGVydmVudGlvbiBsZXZlbHMgKE9JTHMpIGFyZSBkZXJpdmVkIGZyb20gSUFFQSBTYWZldHkgU3RhbmRhcmRzIFs4XSBvciBuYXRpb25hbCBhdXRob3JpdGllcyBbOV0gLiBBIGtleSBlbGVtZW50IG9mIHJhcGlkIGFuYWx5c2lzIGNhbiBiZSB0aGUgdXNlIG9mIHJvdXRpbmUgbWV0aG9kcyBidXQgd2l0aCBhIHJlZHVjZWQgdHVybmFyb3VuZCB0aW1lLiBUaGUgZ29hbCBvZiB0aGVzZSByYXBpZCBtZWFzdXJlbWVudHMgaXMgb2Z0ZW4gdG8gY2hlY2sgZm9yIHVudXN1YWwgcmFkaW9hY3Rpdml0eSBsZXZlbHMgaW4gdGhlIHRlc3Qgc2FtcGxlLCB0byBpZGVudGlmeSB0aGUgcmFkaW9udWNsaWRlcyBwcmVzZW50IGFuZCB0aGVpciBhY3Rpdml0eSBjb25jZW50cmF0aW9uIGxldmVscyBhbmQgdG8gZXN0YWJsaXNoIGNvbXBsaWFuY2Ugb2YgdGhlIHdhdGVyIHdpdGggaW50ZXJ2ZW50aW9uIGxldmVscyBbMTBdWzExXVsxMl0gLiBJdCBzaG91bGQgYmUgbm90ZWQgdGhhdCBpbiBzdWNoIGNpcmN1bXN0YW5jZXMsIHZhbGlkYXRpb24gcGFyYW1ldGVycyBldmFsdWF0ZWQgZm9yIHJvdXRpbmUgdXNlIChlLmcuIHJlcHJvZHVjaWJpbGl0eSwgcHJlY2lzaW9uLCBldGMuKSBtYXkgbm90IGJlIGFwcGxpY2FibGUgdG8gdGhlIG1vZGlmaWVkIHJhcGlkIG1ldGhvZC4gSG93ZXZlciwgZHVlIHRvIHRoZSBjaXJjdW1zdGFuY2VzIGFyaXNpbmcgYWZ0ZXIgYW4gZW1lcmdlbmN5LCB0aGUgbW9kaWZpZWQgbWV0aG9kIG1heSBzdGlsbCBiZSBmaXQtZm9yLXB1cnBvc2UgYWx0aG91Z2ggdW5jZXJ0YWludGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIHRlc3QgcmVzdWx0cyBuZWVkIHRvIGJlIGV2YWx1YXRlZCBhbmQgbWF5IGluY3JlYXNlIGZyb20gcm91dGluZSBhbmFseXNlcy4gVGhlIGZpcnN0IHN0ZXBzIG9mIHRoZSBhbmFseXRpY2FsIGFwcHJvYWNoIGFyZSB1c3VhbGx5IHNjcmVlbmluZyBtZXRob2RzIGJhc2VkIG9uIGdyb3NzIGFscGhhIGFuZCBncm9zcyBiZXRhIHRlc3QgbWV0aG9kcyAoYWRhcHRhdGlvbiBvZiA8ZW0+SVNPPC9lbT4gMTA3MDQgYW5kIDxlbT5JU088L2VtPiAxMTcwNCkgYW5kIGdhbW1hIHNwZWN0cm9tZXRyeSAoYWRhcHRhdGlvbiBvZiA8ZW0+SVNPPC9lbT4gMjAwNDIsIDxlbT5JU088L2VtPiAxMDcwMyBhbmQgPGVtPklTTzwvZW0+IDE5NTgxKS4gVGhlbiwgaWYgcmVxdWlyZWQgWzEzXSAsIHRlc3QgbWV0aG9kIHN0YW5kYXJkcyBmb3Igc3BlY2lmaWMgcmFkaW9udWNsaWRlcyAoc2VlIENsYXVzZSAyKSBhcmUgYWRhcHRlZCBhbmQgYXBwbGllZCAoZm9yIGV4YW1wbGUsIDkwIFNyIG1lYXN1cmVtZW50IGFjY29yZGluZyB0byA8ZW0+SVNPPC9lbT4gPGVtPjEzMTwvZW0+NjApIGFzIHByb3Bvc2VkIGluIEFubmV4IEEuIFRoaXMgZG9jdW1lbnQgcmVmZXJzIHRvIHB1Ymxpc2hlZCA8ZW0+SVNPPC9lbT4gZG9jdW1lbnRzLiBXaGVuIGFwcHJvcHJpYXRlLCB0aGlzIGRvY3VtZW50IGFsc28gcmVmZXJzIHRvIG5hdGlvbmFsIHN0YW5kYXJkcyBvciBvdGhlciBwdWJsaWNseSBhdmFpbGFibGUgZG9jdW1lbnRzLiBTY3JlZW5pbmcgdGVjaG5pcXVlcyB0aGF0IGNhbiBiZSBjYXJyaWVkIG91dCBkaXJlY3RseSBpbiB0aGUgZmllbGQgYXJlIG5vdCBwYXJ0IG9mIHRoaXMgZG9jdW1lbnQuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzAwLzAwLzQ2IiwidXVpZCI6IjQxZTdlZTkxLTQwZmMtNGU5My04OTMzLWE2YTMzZWNmODE4NyIsInRpdGxlIjoiSVNPL1IgMTMxOjE5NTkgVGl0bGUgbWlzc2luZyAtIExlZ2FjeSBwYXBlciBkb2N1bWVudCIsInN0YXR1cyI6IldpdGhkcmF3biIsInllYXIiOjE5NjQsIm9yZGVyIjoxMDAsIm9iamVjdElEIjoiNDZfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vUiA8ZW0+MTMxPC9lbT46MTk1OSBUaXRsZSBtaXNzaW5nIC0gTGVnYWN5IHBhcGVyIGRvY3VtZW50IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvNzkvNTc5NTQiLCJ1dWlkIjoiOGJmZDc1MDMtYjg5Ny00ZjFiLWI4NjgtMmZlMzZhZjcxYzNhIiwidGl0bGUiOiJJU08vSUVDIDEzMTU2OjIwMTEgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgVGVsZWNvbW11bmljYXRpb25zIGFuZCBpbmZvcm1hdGlvbiBleGNoYW5nZSBiZXR3ZWVuIHN5c3RlbXMg4oCUIEhpZ2ggcmF0ZSA2MCBHSHogUEhZLCBNQUMgYW5kIFBBTHMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08vSUVDIDEzMTU2OjIwMTEgc3BlY2lmaWVzIGEgcGh5c2ljYWwgbGF5ZXIgKFBIWSksIGRpc3RyaWJ1dGVkIG1lZGl1bSBhY2Nlc3MgY29udHJvbCAoTUFDKSBzdWJsYXllciwgYW5kIGFuIEhETUkgcHJvdG9jb2wgYWRhcHRhdGlvbiBsYXllciAoUEFMKSBmb3IgNjAgR0h6IHdpcmVsZXNzIG5ldHdvcmtzLiAiLCJvYmplY3RJRCI6IjU3OTU0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT41NjoyMDExIEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIFRlbGVjb21tdW5pY2F0aW9ucyBhbmQgaW5mb3JtYXRpb24gZXhjaGFuZ2UgYmV0d2VlbiBzeXN0ZW1zIOKAlCBIaWdoIHJhdGUgNjAgR0h6IFBIWSwgTUFDIGFuZCBQQUxzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTY6MjAxMSBzcGVjaWZpZXMgYSBwaHlzaWNhbCBsYXllciAoUEhZKSwgZGlzdHJpYnV0ZWQgbWVkaXVtIGFjY2VzcyBjb250cm9sIChNQUMpIHN1YmxheWVyLCBhbmQgYW4gSERNSSBwcm90b2NvbCBhZGFwdGF0aW9uIGxheWVyIChQQUwpIGZvciA2MCBHSHogd2lyZWxlc3MgbmV0d29ya3MuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzMzLzUzMzI4IiwidXVpZCI6ImQ4MGZhZWEwLWZkNzYtNDIxYy1iNGZkLTk0NGU2NTJlNmQyOSIsInRpdGxlIjoiSVNPL1RTIDEzMTM2OjIwMTIgTWljcm9iaW9sb2d5IG9mIGZvb2QgYW5kIGFuaW1hbCBmZWVkIOKAlCBSZWFsLXRpbWUgcG9seW1lcmFzZSBjaGFpbiByZWFjdGlvbiAoUENSKS1iYXNlZCBtZXRob2QgZm9yIHRoZSBkZXRlY3Rpb24gb2YgZm9vZC1ib3JuZSBwYXRob2dlbnMg4oCUIEhvcml6b250YWwgbWV0aG9kIGZvciB0aGUgZGV0ZWN0aW9uIG9mIFNoaWdhIHRveGluLXByb2R1Y2luZyBFc2NoZXJpY2hpYSBjb2xpIChTVEVDKSBhbmQgdGhlIGRldGVybWluYXRpb24gb2YgTzE1NywgTzExMSwgTzI2LCBPMTAzIGFuZCBPMTQ1IHNlcm9ncm91cHMiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDIyLCJvcmRlciI6MTEsInRleHQiOiJJU08vVFIgMTMxMzY6MjAxMiBkZXNjcmliZXMgdGhlIGlkZW50aWZpY2F0aW9uIG9mIFNoaWdhIHRveGluLXByb2R1Y2luZyBFc2NoZXJpY2hpYSBjb2xpIChTVEVDKSBieSBtZWFucyBvZiB0aGUgZGV0ZWN0aW9uIG9mIHRoZSBmb2xsb3dpbmcgZ2VuZXM6IGEpIHRoZSBtYWpvciB2aXJ1bGVuY2UgZ2VuZXMgb2YgU1RFQywgc3R4IGFuZCBlYWUgOyBiKSB0aGUgZ2VuZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZXJvZ3JvdXBzIE8xNTcsIE8xMTEsIE8yNiwgTzEwMywgYW5kIE8xNDUuIEluIGFueSBjYXNlLCB3aGVuIG9uZSBvciBib3RoIG9mIHRoZSBzdHggZ2VuZXMgaXMvYXJlIGRldGVjdGVkLCB0aGUgaXNvbGF0aW9uIG9mIHRoZSBzdHJhaW4gaXMgYXR0ZW1wdGVkLiBUaGUgaXNvbGF0aW9uIG9mIFNURUMgZnJvbSBzYW1wbGVzIHBvc2l0aXZlIGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGdlbmVzIHNwZWNpZnlpbmcgdGhlIHNlcm9ncm91cHMgaW4gdGhlIHNjb3BlIG9mIHRoaXMgbWV0aG9kIGNhbiBiZSBmYWNpbGl0YXRlZCBieSB1c2luZyBzZXJvZ3JvdXAtc3BlY2lmaWMgZW5yaWNobWVudCB0ZWNobmlxdWVzIChlLmcuIGltbXVub21hZ25ldGljIHNlcGFyYXRpb24sIElNUykuIFRoZSBwcm90b2NvbCB1c2VzIHJlYWwtdGltZSBQQ1IgYXMgdGhlIHJlZmVyZW5jZSB0ZWNobm9sb2d5IGZvciBkZXRlY3Rpb24gb2YgdGhlIHZpcnVsZW5jZSBhbmQgc2Vyb2dyb3VwLWFzc29jaWF0ZWQgZ2VuZXMuIElTTy9UUiAxMzEzNjoyMDEyIGlzIGFwcGxpY2FibGUgdG86IDEpIHByb2R1Y3RzIGludGVuZGVkIGZvciBodW1hbiBjb25zdW1wdGlvbiBhbmQgdGhlIGZlZWRpbmcgb2YgYW5pbWFsczsgMikgZW52aXJvbm1lbnRhbCBzYW1wbGVzIGluIHRoZSBhcmVhIG9mIGZvb2QgcHJvZHVjdGlvbiBhbmQgZm9vZCBoYW5kbGluZzsgMykgZW52aXJvbm1lbnRhbCBzYW1wbGVzIGluIHRoZSBhcmVhIG9mIHByaW1hcnkgcHJvZHVjdGlvbi4gIiwib2JqZWN0SUQiOiI1MzMyOF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9UUyA8ZW0+MTMxPC9lbT4zNjoyMDEyIE1pY3JvYmlvbG9neSBvZiBmb29kIGFuZCBhbmltYWwgZmVlZCDigJQgUmVhbC10aW1lIHBvbHltZXJhc2UgY2hhaW4gcmVhY3Rpb24gKFBDUiktYmFzZWQgbWV0aG9kIGZvciB0aGUgZGV0ZWN0aW9uIG9mIGZvb2QtYm9ybmUgcGF0aG9nZW5zIOKAlCBIb3Jpem9udGFsIG1ldGhvZCBmb3IgdGhlIGRldGVjdGlvbiBvZiBTaGlnYSB0b3hpbi1wcm9kdWNpbmcgRXNjaGVyaWNoaWEgY29saSAoU1RFQykgYW5kIHRoZSBkZXRlcm1pbmF0aW9uIG9mIE8xNTcsIE8xMTEsIE8yNiwgTzEwMyBhbmQgTzE0NSBzZXJvZ3JvdXBzIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9UUiA8ZW0+MTMxPC9lbT4zNjoyMDEyIGRlc2NyaWJlcyB0aGUgaWRlbnRpZmljYXRpb24gb2YgU2hpZ2EgdG94aW4tcHJvZHVjaW5nIEVzY2hlcmljaGlhIGNvbGkgKFNURUMpIGJ5IG1lYW5zIG9mIHRoZSBkZXRlY3Rpb24gb2YgdGhlIGZvbGxvd2luZyBnZW5lczogYSkgdGhlIG1ham9yIHZpcnVsZW5jZSBnZW5lcyBvZiBTVEVDLCBzdHggYW5kIGVhZSA7IGIpIHRoZSBnZW5lcyBhc3NvY2lhdGVkIHdpdGggdGhlIHNlcm9ncm91cHMgTzE1NywgTzExMSwgTzI2LCBPMTAzLCBhbmQgTzE0NS4gSW4gYW55IGNhc2UsIHdoZW4gb25lIG9yIGJvdGggb2YgdGhlIHN0eCBnZW5lcyBpcy9hcmUgZGV0ZWN0ZWQsIHRoZSBpc29sYXRpb24gb2YgdGhlIHN0cmFpbiBpcyBhdHRlbXB0ZWQuIFRoZSBpc29sYXRpb24gb2YgU1RFQyBmcm9tIHNhbXBsZXMgcG9zaXRpdmUgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgZ2VuZXMgc3BlY2lmeWluZyB0aGUgc2Vyb2dyb3VwcyBpbiB0aGUgc2NvcGUgb2YgdGhpcyBtZXRob2QgY2FuIGJlIGZhY2lsaXRhdGVkIGJ5IHVzaW5nIHNlcm9ncm91cC1zcGVjaWZpYyBlbnJpY2htZW50IHRlY2huaXF1ZXMgKGUuZy4gaW1tdW5vbWFnbmV0aWMgc2VwYXJhdGlvbiwgSU1TKS4gVGhlIHByb3RvY29sIHVzZXMgcmVhbC10aW1lIFBDUiBhcyB0aGUgcmVmZXJlbmNlIHRlY2hub2xvZ3kgZm9yIGRldGVjdGlvbiBvZiB0aGUgdmlydWxlbmNlIGFuZCBzZXJvZ3JvdXAtYXNzb2NpYXRlZCBnZW5lcy4gPGVtPklTTzwvZW0+L1RSIDxlbT4xMzE8L2VtPjM2OjIwMTIgaXMgYXBwbGljYWJsZSB0bzogMSkgcHJvZHVjdHMgaW50ZW5kZWQgZm9yIGh1bWFuIGNvbnN1bXB0aW9uIGFuZCB0aGUgZmVlZGluZyBvZiBhbmltYWxzOyAyKSBlbnZpcm9ubWVudGFsIHNhbXBsZXMgaW4gdGhlIGFyZWEgb2YgZm9vZCBwcm9kdWN0aW9uIGFuZCBmb29kIGhhbmRsaW5nOyAzKSBlbnZpcm9ubWVudGFsIHNhbXBsZXMgaW4gdGhlIGFyZWEgb2YgcHJpbWFyeSBwcm9kdWN0aW9uLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi85My82OTM0NCIsInV1aWQiOiJjZWY2YmViNy03MWQ5LTQ1YmItODFlNy00YWZjOTU3YmQ3NTkiLCJ0aXRsZSI6IklTTy9JRUMgMTMxNTctNToyMDE2IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIFRlbGVjb21tdW5pY2F0aW9ucyBhbmQgaW5mb3JtYXRpb24gZXhjaGFuZ2UgYmV0d2VlbiBzeXN0ZW1zIOKAlCBORkMgU2VjdXJpdHkg4oCUIFBhcnQgNTogTkZDLVNFQyBlbnRpdHkgYXV0aGVudGljYXRpb24gYW5kIGtleSBhZ3JlZW1lbnQgdXNpbmcgc3ltbWV0cmljIGNyeXB0b2dyYXBoeSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNTctNToyMDE2IHNwZWNpZmllcyB0aGUgbWVzc2FnZSBjb250ZW50cyBhbmQgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcyBmb3IgUElEIDA0LiBJU08vSUVDIDEzMTU3LTU6MjAxNiBzcGVjaWZpZXMga2V5IGFncmVlbWVudCBhbmQgY29uZmlybWF0aW9uIG1lY2hhbmlzbXMgcHJvdmlkaW5nIG11dHVhbCBhdXRoZW50aWNhdGlvbiwgdXNpbmcgc3ltbWV0cmljIGNyeXB0b2dyYXBoeS4gSVNPL0lFQyAxMzE1Ny01OjIwMTYgYWRkcyBlbnRpdHkgYXV0aGVudGljYXRpb24gdG8gdGhlIHNlcnZpY2VzIHByb3ZpZGVkIGJ5IElTTy9JRUMgMTMxNTctMyAoRUNNQeKAkTQwOSkgTkZDLVNFQy0wMi4gIiwib2JqZWN0SUQiOiI2OTM0NF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTctNToyMDE2IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIFRlbGVjb21tdW5pY2F0aW9ucyBhbmQgaW5mb3JtYXRpb24gZXhjaGFuZ2UgYmV0d2VlbiBzeXN0ZW1zIOKAlCBORkMgU2VjdXJpdHkg4oCUIFBhcnQgNTogTkZDLVNFQyBlbnRpdHkgYXV0aGVudGljYXRpb24gYW5kIGtleSBhZ3JlZW1lbnQgdXNpbmcgc3ltbWV0cmljIGNyeXB0b2dyYXBoeSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTU6MjAxNiBzcGVjaWZpZXMgdGhlIG1lc3NhZ2UgY29udGVudHMgYW5kIHRoZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMgZm9yIFBJRCAwNC4gPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT41Ny01OjIwMTYgc3BlY2lmaWVzIGtleSBhZ3JlZW1lbnQgYW5kIGNvbmZpcm1hdGlvbiBtZWNoYW5pc21zIHByb3ZpZGluZyBtdXR1YWwgYXV0aGVudGljYXRpb24sIHVzaW5nIHN5bW1ldHJpYyBjcnlwdG9ncmFwaHkuIDxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTctNToyMDE2IGFkZHMgZW50aXR5IGF1dGhlbnRpY2F0aW9uIHRvIHRoZSBzZXJ2aWNlcyBwcm92aWRlZCBieSA8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTMgKEVDTUHigJE0MDkpIE5GQy1TRUMtMDIuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzkzLzY5MzQzIiwidXVpZCI6Ijg2YmM0MjRmLWY2NTMtNDFiOC1iMjUyLTIyOTRiYjFlMTk3YSIsInRpdGxlIjoiSVNPL0lFQyAxMzE1Ny00OjIwMTYgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgVGVsZWNvbW11bmljYXRpb25zIGFuZCBpbmZvcm1hdGlvbiBleGNoYW5nZSBiZXR3ZWVuIHN5c3RlbXMg4oCUIE5GQyBTZWN1cml0eSDigJQgUGFydCA0OiBORkMtU0VDIGVudGl0eSBhdXRoZW50aWNhdGlvbiBhbmQga2V5IGFncmVlbWVudCB1c2luZyBhc3ltbWV0cmljIGNyeXB0b2dyYXBoeSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNTctNDoyMDE2IHNwZWNpZmllcyB0aGUgbWVzc2FnZSBjb250ZW50cyBhbmQgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcyBmb3IgUElEIDAzLiBJU08vSUVDIDEzMTU3LTQ6MjAxNiBzcGVjaWZpZXMga2V5IGFncmVlbWVudCBhbmQgY29uZmlybWF0aW9uIG1lY2hhbmlzbXMgcHJvdmlkaW5nIG11dHVhbCBhdXRoZW50aWNhdGlvbiwgdXNpbmcgYXN5bW1ldHJpYyBjcnlwdG9ncmFwaHksIGFuZCB0aGUgdHJhbnNwb3J0IHByb3RvY29sIHJlcXVpcmVtZW50cyBmb3IgdGhlIGV4Y2hhbmdlIGJldHdlZW4gU2VuZGVyIGFuZCBUVFAuIE5PVEUgSVNPL0lFQyAxMzE1Ny00OjIwMTYgYWRkcyBlbnRpdHkgYXV0aGVudGljYXRpb24gdG8gdGhlIHNlcnZpY2VzIHByb3ZpZGVkIGJ5IElTTy9JRUMgMTMxNTctMyAoRUNNQS00MDkpIE5GQy1TRUMtMDIuICIsIm9iamVjdElEIjoiNjkzNDNfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTQ6MjAxNiBJbmZvcm1hdGlvbiB0ZWNobm9sb2d5IOKAlCBUZWxlY29tbXVuaWNhdGlvbnMgYW5kIGluZm9ybWF0aW9uIGV4Y2hhbmdlIGJldHdlZW4gc3lzdGVtcyDigJQgTkZDIFNlY3VyaXR5IOKAlCBQYXJ0IDQ6IE5GQy1TRUMgZW50aXR5IGF1dGhlbnRpY2F0aW9uIGFuZCBrZXkgYWdyZWVtZW50IHVzaW5nIGFzeW1tZXRyaWMgY3J5cHRvZ3JhcGh5IiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTctNDoyMDE2IHNwZWNpZmllcyB0aGUgbWVzc2FnZSBjb250ZW50cyBhbmQgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcyBmb3IgUElEIDAzLiA8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTQ6MjAxNiBzcGVjaWZpZXMga2V5IGFncmVlbWVudCBhbmQgY29uZmlybWF0aW9uIG1lY2hhbmlzbXMgcHJvdmlkaW5nIG11dHVhbCBhdXRoZW50aWNhdGlvbiwgdXNpbmcgYXN5bW1ldHJpYyBjcnlwdG9ncmFwaHksIGFuZCB0aGUgdHJhbnNwb3J0IHByb3RvY29sIHJlcXVpcmVtZW50cyBmb3IgdGhlIGV4Y2hhbmdlIGJldHdlZW4gU2VuZGVyIGFuZCBUVFAuIE5PVEUgPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT41Ny00OjIwMTYgYWRkcyBlbnRpdHkgYXV0aGVudGljYXRpb24gdG8gdGhlIHNlcnZpY2VzIHByb3ZpZGVkIGJ5IDxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTctMyAoRUNNQS00MDkpIE5GQy1TRUMtMDIuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA2LzkzLzY5MzQyIiwidXVpZCI6IjkwZmY1NTBmLWY3ODMtNGE4My1hNmJkLTM4YmEwY2E4NDg2ZCIsInRpdGxlIjoiSVNPL0lFQyAxMzE1Ny0zOjIwMTYgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgVGVsZWNvbW11bmljYXRpb25zIGFuZCBpbmZvcm1hdGlvbiBleGNoYW5nZSBiZXR3ZWVuIHN5c3RlbXMg4oCUIE5GQyBTZWN1cml0eSDigJQgUGFydCAzOiBORkMtU0VDIGNyeXB0b2dyYXBoeSBzdGFuZGFyZCB1c2luZyBFQ0RILTI1NiBhbmQgQUVTLUdDTSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNTctMzoyMDE2IHNwZWNpZmllcyB0aGUgbWVzc2FnZSBjb250ZW50cyBhbmQgdGhlIGNyeXB0b2dyYXBoaWMgbWV0aG9kcyBmb3IgUElEIDAyLiBJdCBzcGVjaWZpZXMgY3J5cHRvZ3JhcGhpYyBtZWNoYW5pc21zIHRoYXQgdXNlIHRoZSBFbGxpcHRpYyBDdXJ2ZXMgRGlmZmllLUhlbGxtYW4gKEVDREgpIHByb3RvY29sIHdpdGggYSBrZXkgbGVuZ3RoIG9mIDI1NiBiaXRzIGZvciBrZXkgYWdyZWVtZW50IGFuZCB0aGUgQUVTIGFsZ29yaXRobSBpbiBHQ00gbW9kZSB0byBwcm92aWRlIGRhdGEgYXV0aGVudGljYXRlZCBlbmNyeXB0aW9uLiAiLCJvYmplY3RJRCI6IjY5MzQyXzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT41Ny0zOjIwMTYgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgVGVsZWNvbW11bmljYXRpb25zIGFuZCBpbmZvcm1hdGlvbiBleGNoYW5nZSBiZXR3ZWVuIHN5c3RlbXMg4oCUIE5GQyBTZWN1cml0eSDigJQgUGFydCAzOiBORkMtU0VDIGNyeXB0b2dyYXBoeSBzdGFuZGFyZCB1c2luZyBFQ0RILTI1NiBhbmQgQUVTLUdDTSIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTM6MjAxNiBzcGVjaWZpZXMgdGhlIG1lc3NhZ2UgY29udGVudHMgYW5kIHRoZSBjcnlwdG9ncmFwaGljIG1ldGhvZHMgZm9yIFBJRCAwMi4gSXQgc3BlY2lmaWVzIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcyB0aGF0IHVzZSB0aGUgRWxsaXB0aWMgQ3VydmVzIERpZmZpZS1IZWxsbWFuIChFQ0RIKSBwcm90b2NvbCB3aXRoIGEga2V5IGxlbmd0aCBvZiAyNTYgYml0cyBmb3Iga2V5IGFncmVlbWVudCBhbmQgdGhlIEFFUyBhbGdvcml0aG0gaW4gR0NNIG1vZGUgdG8gcHJvdmlkZSBkYXRhIGF1dGhlbnRpY2F0ZWQgZW5jcnlwdGlvbi4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvOTMvNjkzMjgiLCJ1dWlkIjoiYzUwZDE0ZGYtYTY3OS00ZDc3LTk5ZmMtYThiMmUyYzJlZWY2IiwidGl0bGUiOiJJU08vSUVDIDEzMTU3LTI6MjAxNiBJbmZvcm1hdGlvbiB0ZWNobm9sb2d5IOKAlCBUZWxlY29tbXVuaWNhdGlvbnMgYW5kIGluZm9ybWF0aW9uIGV4Y2hhbmdlIGJldHdlZW4gc3lzdGVtcyDigJQgTkZDIFNlY3VyaXR5IOKAlCBQYXJ0IDI6IE5GQy1TRUMgY3J5cHRvZ3JhcGh5IHN0YW5kYXJkIHVzaW5nIEVDREggYW5kIEFFUyIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjEsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNTctMjoyMDE2IHNwZWNpZmllcyB0aGUgbWVzc2FnZSBjb250ZW50cyBhbmQgdGhlIGNyeXB0b2dyYXBoaWMgbWV0aG9kcyBmb3IgUElEIDAxLiBJU08vSUVDIDEzMTU3LTI6MjAxNiBzcGVjaWZpZXMgY3J5cHRvZ3JhcGhpYyBtZWNoYW5pc21zIHRoYXQgdXNlIHRoZSBFbGxpcHRpYyBDdXJ2ZXMgRGlmZmllLUhlbGxtYW4gKEVDREgpIHByb3RvY29sIGZvciBrZXkgYWdyZWVtZW50IGFuZCB0aGUgQUVTIGFsZ29yaXRobSBmb3IgZGF0YSBlbmNyeXB0aW9uIGFuZCBpbnRlZ3JpdHkuICIsIm9iamVjdElEIjoiNjkzMjhfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTI6MjAxNiBJbmZvcm1hdGlvbiB0ZWNobm9sb2d5IOKAlCBUZWxlY29tbXVuaWNhdGlvbnMgYW5kIGluZm9ybWF0aW9uIGV4Y2hhbmdlIGJldHdlZW4gc3lzdGVtcyDigJQgTkZDIFNlY3VyaXR5IOKAlCBQYXJ0IDI6IE5GQy1TRUMgY3J5cHRvZ3JhcGh5IHN0YW5kYXJkIHVzaW5nIEVDREggYW5kIEFFUyIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTI6MjAxNiBzcGVjaWZpZXMgdGhlIG1lc3NhZ2UgY29udGVudHMgYW5kIHRoZSBjcnlwdG9ncmFwaGljIG1ldGhvZHMgZm9yIFBJRCAwMS4gPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT41Ny0yOjIwMTYgc3BlY2lmaWVzIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcyB0aGF0IHVzZSB0aGUgRWxsaXB0aWMgQ3VydmVzIERpZmZpZS1IZWxsbWFuIChFQ0RIKSBwcm90b2NvbCBmb3Iga2V5IGFncmVlbWVudCBhbmQgdGhlIEFFUyBhbGdvcml0aG0gZm9yIGRhdGEgZW5jcnlwdGlvbiBhbmQgaW50ZWdyaXR5LiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQzNCIsInV1aWQiOiI3OTRiMTQ4NC05ZjQ2LTQzMmUtYWNmMC0xODE4YWIzMzRlMDkiLCJ0aXRsZSI6IklTTy9JRUMgMTMxNzA6MjAwOSBJbmZvcm1hdGlvbiB0ZWNobm9sb2d5IOKAlCAxMjAgbW0gKDgsNTQgR2J5dGVzIHBlciBzaWRlKSBhbmQgODAgbW0gKDIsNjYgR2J5dGVzIHBlciBzaWRlKSBEVkQgcmUtcmVjb3JkYWJsZSBkaXNrIGZvciBkdWFsIGxheWVyIChEVkQtUlcgZm9yIERMKSIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMjAsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNzA6MjAxMCBzcGVjaWZpZXMgdGhlIG1lY2hhbmljYWwsIHBoeXNpY2FsIGFuZCBvcHRpY2FsIGNoYXJhY3RlcmlzdGljcyBvZiBhIDEyMCBtbSBhbmQgYW4gODAgbW0gZHVhbCBsYXllciBEVkQgcmUtcmVjb3JkYWJsZSBkaXNrIHRvIGVuYWJsZSB0aGUgaW50ZXJjaGFuZ2Ugb2Ygc3VjaCBkaXNrcy4gSXQgc3BlY2lmaWVzIHRoZSBxdWFsaXR5IG9mIHRoZSBlbWJvc3NlZCwgdW5yZWNvcmRlZCBhbmQgdGhlIHJlY29yZGVkIHNpZ25hbHMsIHRoZSBmb3JtYXQgb2YgdGhlIGRhdGEsIHRoZSBmb3JtYXQgb2YgdGhlIGluZm9ybWF0aW9uIHpvbmUsIHRoZSBmb3JtYXQgb2YgdGhlIHVucmVjb3JkZWQgem9uZSwgYW5kIHRoZSByZWNvcmRpbmcgbWV0aG9kLCB0aGVyZWJ5IGFsbG93aW5nIGZvciBpbmZvcm1hdGlvbiBpbnRlcmNoYW5nZSBieSBtZWFucyBvZiBzdWNoIGRpc2tzLiBUaGlzIGRpc2sgaXMgaWRlbnRpZmllZCBhcyBhIERWRCByZS1yZWNvcmRhYmxlIGRpc2sgZm9yIGR1YWwgbGF5ZXIgKERWRC1SVyBmb3IgREwpLiBJU08vSUVDIDEzMTcwOjIwMTAgc3BlY2lmaWVzOiAxMjAgbW0gYW5kIDgwIG1tIG5vbWluYWwgZGlhbWV0ZXIgZGlza3MgdGhhdCBtYXkgYmUgZWl0aGVyIHNpbmdsZSBvciBkb3VibGUgc2lkZWQ7IHRoZSBjb25kaXRpb25zIGZvciBjb25mb3JtYW5jZTsgdGhlIGVudmlyb25tZW50cyBpbiB3aGljaCB0aGUgZGlzayBpcyB0byBiZSBvcGVyYXRlZCBhbmQgc3RvcmVkOyB0aGUgbWVjaGFuaWNhbCBhbmQgcGh5c2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBkaXNrLCBzbyBhcyB0byBwcm92aWRlIG1lY2hhbmljYWwgaW50ZXJjaGFuZ2UgYmV0d2VlbiBkYXRhIHByb2Nlc3Npbmcgc3lzdGVtczsgdGhlIGZvcm1hdCBvZiB0aGUgZW1ib3NzZWQgaW5mb3JtYXRpb24gb24gYW4gdW5yZWNvcmRlZCBkaXNrLCBpbmNsdWRpbmcgdGhlIHBoeXNpY2FsIGRpc3Bvc2l0aW9uIG9mIHRoZSB0cmFja3MgYW5kIHNlY3RvcnMsIHRoZSBlcnJvciBjb3JyZWN0aW5nIGNvZGVzIGFuZCB0aGUgY29kaW5nIG1ldGhvZCB1c2VkOyB0aGUgZm9ybWF0IG9mIHRoZSBkYXRhIGFuZCB0aGUgcmVjb3JkZWQgaW5mb3JtYXRpb24gb24gdGhlIGRpc2ssIGluY2x1ZGluZyB0aGUgcGh5c2ljYWwgZGlzcG9zaXRpb24gb2YgdGhlIHRyYWNrcyBhbmQgc2VjdG9ycywgdGhlIGVycm9yIGNvcnJlY3RpbmcgY29kZXMgYW5kIHRoZSBjb2RpbmcgbWV0aG9kIHVzZWQ7IHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIHNpZ25hbHMgZnJvbSBlbWJvc3NlZCBhbmQgdW5yZWNvcmRlZCBhcmVhcyBvbiB0aGUgZGlzaywgZW5hYmxpbmcgZGF0YSBwcm9jZXNzaW5nIHN5c3RlbXMgdG8gcmVhZCB0aGUgZW1ib3NzZWQgaW5mb3JtYXRpb24gYW5kIHRvIHdyaXRlIHRvIHRoZSBkaXNrczsgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgc2lnbmFscyByZWNvcmRlZCBvbiB0aGUgZGlzaywgZW5hYmxpbmcgZGF0YSBwcm9jZXNzaW5nIHN5c3RlbXMgdG8gcmVhZCB0aGUgZGF0YSBmcm9tIHRoZSBkaXNrLiBJU08vSUVDIDEzMTcwOjIwMTAgcHJvdmlkZXMgZm9yIGludGVyY2hhbmdlIG9mIGRpc2tzIGJldHdlZW4gZGlzayBkcml2ZXMuIFRvZ2V0aGVyIHdpdGggYW4gSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBmb3Igdm9sdW1lIGFuZCBmaWxlIHN0cnVjdHVyZSwgaXQgcHJvdmlkZXMgZm9yIGZ1bGwgZGF0YSBpbnRlcmNoYW5nZSBiZXR3ZWVuIGRhdGEgcHJvY2Vzc2luZyBzeXN0ZW1zLiAiLCJvYmplY3RJRCI6IjUzNDM0XzAiLCJfaGlnaGxpZ2h0UmVzdWx0Ijp7InRpdGxlIjp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT43MDoyMDA5IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIDEyMCBtbSAoOCw1NCBHYnl0ZXMgcGVyIHNpZGUpIGFuZCA4MCBtbSAoMiw2NiBHYnl0ZXMgcGVyIHNpZGUpIERWRCByZS1yZWNvcmRhYmxlIGRpc2sgZm9yIGR1YWwgbGF5ZXIgKERWRC1SVyBmb3IgREwpIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfSwidGV4dCI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NzA6MjAxMCBzcGVjaWZpZXMgdGhlIG1lY2hhbmljYWwsIHBoeXNpY2FsIGFuZCBvcHRpY2FsIGNoYXJhY3RlcmlzdGljcyBvZiBhIDEyMCBtbSBhbmQgYW4gODAgbW0gZHVhbCBsYXllciBEVkQgcmUtcmVjb3JkYWJsZSBkaXNrIHRvIGVuYWJsZSB0aGUgaW50ZXJjaGFuZ2Ugb2Ygc3VjaCBkaXNrcy4gSXQgc3BlY2lmaWVzIHRoZSBxdWFsaXR5IG9mIHRoZSBlbWJvc3NlZCwgdW5yZWNvcmRlZCBhbmQgdGhlIHJlY29yZGVkIHNpZ25hbHMsIHRoZSBmb3JtYXQgb2YgdGhlIGRhdGEsIHRoZSBmb3JtYXQgb2YgdGhlIGluZm9ybWF0aW9uIHpvbmUsIHRoZSBmb3JtYXQgb2YgdGhlIHVucmVjb3JkZWQgem9uZSwgYW5kIHRoZSByZWNvcmRpbmcgbWV0aG9kLCB0aGVyZWJ5IGFsbG93aW5nIGZvciBpbmZvcm1hdGlvbiBpbnRlcmNoYW5nZSBieSBtZWFucyBvZiBzdWNoIGRpc2tzLiBUaGlzIGRpc2sgaXMgaWRlbnRpZmllZCBhcyBhIERWRCByZS1yZWNvcmRhYmxlIGRpc2sgZm9yIGR1YWwgbGF5ZXIgKERWRC1SVyBmb3IgREwpLiA8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjcwOjIwMTAgc3BlY2lmaWVzOiAxMjAgbW0gYW5kIDgwIG1tIG5vbWluYWwgZGlhbWV0ZXIgZGlza3MgdGhhdCBtYXkgYmUgZWl0aGVyIHNpbmdsZSBvciBkb3VibGUgc2lkZWQ7IHRoZSBjb25kaXRpb25zIGZvciBjb25mb3JtYW5jZTsgdGhlIGVudmlyb25tZW50cyBpbiB3aGljaCB0aGUgZGlzayBpcyB0byBiZSBvcGVyYXRlZCBhbmQgc3RvcmVkOyB0aGUgbWVjaGFuaWNhbCBhbmQgcGh5c2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIHRoZSBkaXNrLCBzbyBhcyB0byBwcm92aWRlIG1lY2hhbmljYWwgaW50ZXJjaGFuZ2UgYmV0d2VlbiBkYXRhIHByb2Nlc3Npbmcgc3lzdGVtczsgdGhlIGZvcm1hdCBvZiB0aGUgZW1ib3NzZWQgaW5mb3JtYXRpb24gb24gYW4gdW5yZWNvcmRlZCBkaXNrLCBpbmNsdWRpbmcgdGhlIHBoeXNpY2FsIGRpc3Bvc2l0aW9uIG9mIHRoZSB0cmFja3MgYW5kIHNlY3RvcnMsIHRoZSBlcnJvciBjb3JyZWN0aW5nIGNvZGVzIGFuZCB0aGUgY29kaW5nIG1ldGhvZCB1c2VkOyB0aGUgZm9ybWF0IG9mIHRoZSBkYXRhIGFuZCB0aGUgcmVjb3JkZWQgaW5mb3JtYXRpb24gb24gdGhlIGRpc2ssIGluY2x1ZGluZyB0aGUgcGh5c2ljYWwgZGlzcG9zaXRpb24gb2YgdGhlIHRyYWNrcyBhbmQgc2VjdG9ycywgdGhlIGVycm9yIGNvcnJlY3RpbmcgY29kZXMgYW5kIHRoZSBjb2RpbmcgbWV0aG9kIHVzZWQ7IHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIHNpZ25hbHMgZnJvbSBlbWJvc3NlZCBhbmQgdW5yZWNvcmRlZCBhcmVhcyBvbiB0aGUgZGlzaywgZW5hYmxpbmcgZGF0YSBwcm9jZXNzaW5nIHN5c3RlbXMgdG8gcmVhZCB0aGUgZW1ib3NzZWQgaW5mb3JtYXRpb24gYW5kIHRvIHdyaXRlIHRvIHRoZSBkaXNrczsgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgc2lnbmFscyByZWNvcmRlZCBvbiB0aGUgZGlzaywgZW5hYmxpbmcgZGF0YSBwcm9jZXNzaW5nIHN5c3RlbXMgdG8gcmVhZCB0aGUgZGF0YSBmcm9tIHRoZSBkaXNrLiA8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjcwOjIwMTAgcHJvdmlkZXMgZm9yIGludGVyY2hhbmdlIG9mIGRpc2tzIGJldHdlZW4gZGlzayBkcml2ZXMuIFRvZ2V0aGVyIHdpdGggYW4gSW50ZXJuYXRpb25hbCBTdGFuZGFyZCBmb3Igdm9sdW1lIGFuZCBmaWxlIHN0cnVjdHVyZSwgaXQgcHJvdmlkZXMgZm9yIGZ1bGwgZGF0YSBpbnRlcmNoYW5nZSBiZXR3ZWVuIGRhdGEgcHJvY2Vzc2luZyBzeXN0ZW1zLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNi80Ny82NDcxOSIsInV1aWQiOiI1MTg1NjYxYS1hMmJkLTQwMDEtOTRiMC1jMTE4MjRjNTIyN2IiLCJ0aXRsZSI6IklTTy9JRUMgMTMxNTctMToyMDE0IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIFRlbGVjb21tdW5pY2F0aW9ucyBhbmQgaW5mb3JtYXRpb24gZXhjaGFuZ2UgYmV0d2VlbiBzeXN0ZW1zIOKAlCBORkMgU2VjdXJpdHkg4oCUIFBhcnQgMTogTkZDLVNFQyBORkNJUC0xIHNlY3VyaXR5IHNlcnZpY2VzIGFuZCBwcm90b2NvbCIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTksIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxNTctMToyMDE0IHNwZWNpZmllcyB0aGUgTkZDLVNFQyBzZWN1cmUgY2hhbm5lbCBhbmQgc2hhcmVkIHNlY3JldCBzZXJ2aWNlcyBmb3IgTkZDSVAtMSBhbmQgdGhlIFByb3RvY29sIERhdGEgVW5pdHMgYW5kIHByb3RvY29sIGZvciB0aG9zZSBzZXJ2aWNlcy4gIiwib2JqZWN0SUQiOiI2NDcxOV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9JRUMgPGVtPjEzMTwvZW0+NTctMToyMDE0IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kg4oCUIFRlbGVjb21tdW5pY2F0aW9ucyBhbmQgaW5mb3JtYXRpb24gZXhjaGFuZ2UgYmV0d2VlbiBzeXN0ZW1zIOKAlCBORkMgU2VjdXJpdHkg4oCUIFBhcnQgMTogTkZDLVNFQyBORkNJUC0xIHNlY3VyaXR5IHNlcnZpY2VzIGFuZCBwcm90b2NvbCIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjU3LTE6MjAxNCBzcGVjaWZpZXMgdGhlIE5GQy1TRUMgc2VjdXJlIGNoYW5uZWwgYW5kIHNoYXJlZCBzZWNyZXQgc2VydmljZXMgZm9yIE5GQ0lQLTEgYW5kIHRoZSBQcm90b2NvbCBEYXRhIFVuaXRzIGFuZCBwcm90b2NvbCBmb3IgdGhvc2Ugc2VydmljZXMuICIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX19fSx7ImNhdGVnb3J5Ijoic3RhbmRhcmQiLCJwYXRoIjoiL3NpdGVzL2lzb29yZy9jb250ZW50cy9kYXRhL3N0YW5kYXJkLzA1LzM0LzUzNDc5IiwidXVpZCI6IjNkMTYxNTEzLTAwZjYtNGQ1OC04NTUxLTY1YWVlY2VkYWY3NyIsInRpdGxlIjoiSVNPL1RSIDEzMTk1OjIwMTUgU2VsZWN0ZWQgaWxsdXN0cmF0aW9ucyBvZiByZXNwb25zZSBzdXJmYWNlIG1ldGhvZCDigJQgQ2VudHJhbCBjb21wb3NpdGUgZGVzaWduIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxOSwib3JkZXIiOjExLCJ0ZXh0IjoiSVNPL1RSIDEzMTk1OjIwMTUgZGVzY3JpYmVzIHRoZSBzdGVwcyBuZWNlc3NhcnkgdG8gdW5kZXJzdGFuZCB0aGUgc2NvcGUgb2YgUmVzcG9uc2UgU3VyZmFjZSBNZXRob2RvbG9neSAoUlNNKSBhbmQgdGhlIG1ldGhvZCB0byBhbmFseXNlIGRhdGEgY29sbGVjdGVkIHVzaW5nIENlbnRyYWwgQ29tcG9zaXRlIERlc2lnbnMgKENDRCkgdGhyb3VnaCBpbGx1c3RyYXRpb24gd2l0aCBmb3VyIGRpc3RpbmN0IGFwcGxpY2F0aW9ucyBvZiB0aGlzIG1ldGhvZG9sb2d5LiBSZXNwb25zZSBzdXJmYWNlIG1ldGhvZG9sb2d5IChSU00pIGlzIHVzZWQgaW4gb3JkZXIgdG8gaW52ZXN0aWdhdGUgYSByZWxhdGlvbiBiZXR3ZWVuIHRoZSByZXNwb25zZSBhbmQgdGhlIHNldCBvZiBxdWFudGl0YXRpdmUgcHJlZGljdG9yIHZhcmlhYmxlcyBvciBmYWN0b3JzLiBFc3BlY2lhbGx5IGFmdGVyIHNwZWNpZnlpbmcgdGhlIHZpdGFsIGZldyBjb250cm9sbGFibGUgZmFjdG9ycywgUlNNIGlzIHVzZWQgaW4gb3JkZXIgdG8gZmluZCB0aGUgZmFjdG9yIHNldHRpbmcgd2hpY2ggb3B0aW1pemVzIHRoZSByZXNwb25zZS4gIiwib2JqZWN0SUQiOiI1MzQ3OV8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9UUiA8ZW0+MTMxPC9lbT45NToyMDE1IFNlbGVjdGVkIGlsbHVzdHJhdGlvbnMgb2YgcmVzcG9uc2Ugc3VyZmFjZSBtZXRob2Qg4oCUIENlbnRyYWwgY29tcG9zaXRlIGRlc2lnbiIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vVFIgPGVtPjEzMTwvZW0+OTU6MjAxNSBkZXNjcmliZXMgdGhlIHN0ZXBzIG5lY2Vzc2FyeSB0byB1bmRlcnN0YW5kIHRoZSBzY29wZSBvZiBSZXNwb25zZSBTdXJmYWNlIE1ldGhvZG9sb2d5IChSU00pIGFuZCB0aGUgbWV0aG9kIHRvIGFuYWx5c2UgZGF0YSBjb2xsZWN0ZWQgdXNpbmcgQ2VudHJhbCBDb21wb3NpdGUgRGVzaWducyAoQ0NEKSB0aHJvdWdoIGlsbHVzdHJhdGlvbiB3aXRoIGZvdXIgZGlzdGluY3QgYXBwbGljYXRpb25zIG9mIHRoaXMgbWV0aG9kb2xvZ3kuIFJlc3BvbnNlIHN1cmZhY2UgbWV0aG9kb2xvZ3kgKFJTTSkgaXMgdXNlZCBpbiBvcmRlciB0byBpbnZlc3RpZ2F0ZSBhIHJlbGF0aW9uIGJldHdlZW4gdGhlIHJlc3BvbnNlIGFuZCB0aGUgc2V0IG9mIHF1YW50aXRhdGl2ZSBwcmVkaWN0b3IgdmFyaWFibGVzIG9yIGZhY3RvcnMuIEVzcGVjaWFsbHkgYWZ0ZXIgc3BlY2lmeWluZyB0aGUgdml0YWwgZmV3IGNvbnRyb2xsYWJsZSBmYWN0b3JzLCBSU00gaXMgdXNlZCBpbiBvcmRlciB0byBmaW5kIHRoZSBmYWN0b3Igc2V0dGluZyB3aGljaCBvcHRpbWl6ZXMgdGhlIHJlc3BvbnNlLiAiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19fX0seyJjYXRlZ29yeSI6InN0YW5kYXJkIiwicGF0aCI6Ii9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wNS8zNC81MzQ1OCIsInV1aWQiOiJmMGExYTkxOC0xOTE1LTRkMDItOTU1YS01NzdkZDc1NDc3OTkiLCJ0aXRsZSI6IklTTy9JRUMgMTMxODc6MjAxMSBJbmZvcm1hdGlvbiB0ZWNobm9sb2d5IOKAlCBTZXJ2ZXIgbWFuYWdlbWVudCBjb21tYW5kIGxpbmUgcHJvdG9jb2wgKFNNIENMUCkgc3BlY2lmaWNhdGlvbiIsInN0YXR1cyI6IlB1Ymxpc2hlZCIsInllYXIiOjIwMTgsIm9yZGVyIjoxMSwidGV4dCI6IklTTy9JRUMgMTMxODc6MjAxMShFKSBsYXlzIG91dCB0aGUgZ2VuZXJhbCBmcmFtZXdvcmsgZm9yIHRoZVxuU2VydmVyIE1hbmFnZW1lbnQgQ29tbWFuZCBMaW5lIFByb3RvY29sIChTTSBDTFApLiBUaGlzIHN0YW5kYXJkIGlzIGludGVuZGVkIHRvXG5ndWlkZSBkZXZlbG9wZXJzIG9mIGltcGxlbWVudGF0aW9ucyBvZiB0aGUgU00gQ0xQIGFuZCBtYXkgYWxzbyBiZSB1c2VkIGFzIGFcbnJlZmVyZW5jZSBieSBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgYW5kIG90aGVyIHVzZXJzIG9mIFNNIENMUCBpbXBsZW1lbnRhdGlvbnMuXG5JdCB3YXMgcHJlcGFyZWQgYnkgU05JQSAoU3RvcmFnZSBOZXR3b3JraW5nIEluZHVzdHJ5IEFzc29jaWF0aW9uKSwgd2FzIGFkb3B0ZWQsXG51bmRlciB0aGUgZmFzdCB0cmFjayBwcm9jZWR1cmUuICIsIm9iamVjdElEIjoiNTM0NThfMCIsIl9oaWdobGlnaHRSZXN1bHQiOnsidGl0bGUiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vSUVDIDxlbT4xMzE8L2VtPjg3OjIwMTEgSW5mb3JtYXRpb24gdGVjaG5vbG9neSDigJQgU2VydmVyIG1hbmFnZW1lbnQgY29tbWFuZCBsaW5lIHByb3RvY29sIChTTSBDTFApIHNwZWNpZmljYXRpb24iLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+L0lFQyA8ZW0+MTMxPC9lbT44NzoyMDExKEUpIGxheXMgb3V0IHRoZSBnZW5lcmFsIGZyYW1ld29yayBmb3IgdGhlXG5TZXJ2ZXIgTWFuYWdlbWVudCBDb21tYW5kIExpbmUgUHJvdG9jb2wgKFNNIENMUCkuIFRoaXMgc3RhbmRhcmQgaXMgaW50ZW5kZWQgdG9cbmd1aWRlIGRldmVsb3BlcnMgb2YgaW1wbGVtZW50YXRpb25zIG9mIHRoZSBTTSBDTFAgYW5kIG1heSBhbHNvIGJlIHVzZWQgYXMgYVxucmVmZXJlbmNlIGJ5IHN5c3RlbSBhZG1pbmlzdHJhdG9ycyBhbmQgb3RoZXIgdXNlcnMgb2YgU00gQ0xQIGltcGxlbWVudGF0aW9ucy5cbkl0IHdhcyBwcmVwYXJlZCBieSBTTklBIChTdG9yYWdlIE5ldHdvcmtpbmcgSW5kdXN0cnkgQXNzb2NpYXRpb24pLCB3YXMgYWRvcHRlZCxcbnVuZGVyIHRoZSBmYXN0IHRyYWNrIHByb2NlZHVyZS4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDYvOTMvNjkzNDciLCJ1dWlkIjoiODA1OTliMzQtYzFmNy00NTVmLWFkNWUtYjA1OTQ1MmQyOTRhIiwidGl0bGUiOiJJU08vVFIgMTMxNTQ6MjAxNyBNZWRpY2FsIGVsZWN0cmljYWwgZXF1aXBtZW50IOKAlCBEZXBsb3ltZW50LCBpbXBsZW1lbnRhdGlvbiBhbmQgb3BlcmF0aW9uYWwgZ3VpZGVsaW5lcyBmb3IgaWRlbnRpZnlpbmcgZmVicmlsZSBodW1hbnMgdXNpbmcgYSBzY3JlZW5pbmcgdGhlcm1vZ3JhcGgiLCJzdGF0dXMiOiJQdWJsaXNoZWQiLCJ5ZWFyIjoyMDE3LCJvcmRlciI6MTEsInRleHQiOiJJU08vVFIgMTMxNTQ6MjAxNyBwcm92aWRlcyBnZW5lcmFsIGd1aWRlbGluZXMgZm9yIHRoZSBkZXBsb3ltZW50LCBpbXBsZW1lbnRhdGlvbiBhbmQgb3BlcmF0aW9uIG9mIGEgc2NyZWVuaW5nIHRoZXJtb2dyYXBoIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIG5vbi1pbnZhc2l2ZSBmZWJyaWxlIHRlbXBlcmF0dXJlIHNjcmVlbmluZyBvZiBpbmRpdmlkdWFscyB1bmRlciBpbmRvb3IgZW52aXJvbm1lbnRhbCBjb25kaXRpb25zIHRvIHByZXZlbnQgdGhlIHNwcmVhZCBvZiBpbmZlY3Rpb24uIE5PVEUgICAgICAgICAgVGhlIGVxdWlwbWVudCBzdGFuZGFyZCBmb3Igc2NyZWVuaW5nIHRoZXJtb2dyYXBocyBpcyBmb3VuZCBpbiBJRUMgODA2MDE/Mi01OS4gIiwib2JqZWN0SUQiOiI2OTM0N18wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9UUiA8ZW0+MTMxPC9lbT41NDoyMDE3IE1lZGljYWwgZWxlY3RyaWNhbCBlcXVpcG1lbnQg4oCUIERlcGxveW1lbnQsIGltcGxlbWVudGF0aW9uIGFuZCBvcGVyYXRpb25hbCBndWlkZWxpbmVzIGZvciBpZGVudGlmeWluZyBmZWJyaWxlIGh1bWFucyB1c2luZyBhIHNjcmVlbmluZyB0aGVybW9ncmFwaCIsIm1hdGNoTGV2ZWwiOiJmdWxsIiwiZnVsbHlIaWdobGlnaHRlZCI6ZmFsc2UsIm1hdGNoZWRXb3JkcyI6WyJpc28iLCIxMzEiXX0sInRleHQiOnsidmFsdWUiOiI8ZW0+SVNPPC9lbT4vVFIgPGVtPjEzMTwvZW0+NTQ6MjAxNyBwcm92aWRlcyBnZW5lcmFsIGd1aWRlbGluZXMgZm9yIHRoZSBkZXBsb3ltZW50LCBpbXBsZW1lbnRhdGlvbiBhbmQgb3BlcmF0aW9uIG9mIGEgc2NyZWVuaW5nIHRoZXJtb2dyYXBoIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIG5vbi1pbnZhc2l2ZSBmZWJyaWxlIHRlbXBlcmF0dXJlIHNjcmVlbmluZyBvZiBpbmRpdmlkdWFscyB1bmRlciBpbmRvb3IgZW52aXJvbm1lbnRhbCBjb25kaXRpb25zIHRvIHByZXZlbnQgdGhlIHNwcmVhZCBvZiBpbmZlY3Rpb24uIE5PVEUgICAgICAgICAgVGhlIGVxdWlwbWVudCBzdGFuZGFyZCBmb3Igc2NyZWVuaW5nIHRoZXJtb2dyYXBocyBpcyBmb3VuZCBpbiBJRUMgODA2MDE/Mi01OS4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19LHsiY2F0ZWdvcnkiOiJzdGFuZGFyZCIsInBhdGgiOiIvc2l0ZXMvaXNvb3JnL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDUvNzAvNTcwMjQiLCJ1dWlkIjoiNmUzNjhkMjUtZDAzOS00ZGQwLWFlZTUtMDVjY2VkNTY4OWEzIiwidGl0bGUiOiJJU08vVFIgMTMxODQtMToyMDEzIEludGVsbGlnZW50IHRyYW5zcG9ydCBzeXN0ZW1zIChJVFMpIOKAlCBHdWlkYW5jZSBwcm90b2NvbCB2aWEgcGVyc29uYWwgSVRTIHN0YXRpb24gZm9yIGFkdmlzb3J5IHNhZmV0eSBzeXN0ZW1zIOKAlCBQYXJ0IDE6IEdlbmVyYWwgaW5mb3JtYXRpb24gYW5kIHVzZSBjYXNlIGRlZmluaXRpb25zIiwic3RhdHVzIjoiUHVibGlzaGVkIiwieWVhciI6MjAxMywib3JkZXIiOjExLCJ0ZXh0IjoiSVNPL1RSIDEzMTg0LTE6MjAxMyBzcGVjaWZpZXMgZ3VpZGFuY2UgaW5mb3JtYXRpb24gcHJvdG9jb2wgdG8gcHJvdmlkZSByZWFsLXRpbWUgZGVjaXNpb24gc3VwcG9ydCBzeXN0ZW0gdG8gZHJpdmVycyBvciBwZWRlc3RyaWFucyB1c2luZyBwZXJzb25hbCBJVFMgc3RhdGlvbnM6IGEpIFJlZmVyZW5jZSBhcmNoaXRlY3R1cmUgZm9yIHJlYWwtdGltZSBkZWNpc2lvbiBzdXBwb3J0IHN5c3RlbXMgVGhpcyByZWZlcmVuY2UgYXJjaGl0ZWN0dXJlIHByb3ZpZGVzIGEgZ2VuZXJhbCBzdHJ1Y3R1cmUgZm9yIHJlYWwtdGltZSBkZWNpc2lvbiBzdXBwb3J0IHN5c3RlbXMgYW5kIHRoZSBtZXRob2Qgb2YgbWVzc2FnZSBleGNoYW5nZSBiZXR3ZWVuIHRoZSBwZXJzb25hbCBJVFMgc3RhdGlvbiBhbmQgdGhlIHJvYWRzaWRlIElUUyBzdGF0aW9uLiBUaGlzIHJlZmVyZW5jZSBhcmNoaXRlY3R1cmUgaXMgdXNlZCB0byBidWlsZCB0aGUgaW50ZXJjb25uZWN0aW9ucyBiZXR3ZWVuIHBlcnNvbmFsIElUUyBzdGF0aW9ucyBhbmQgcm9hZHNpZGUgSVRTIHN0YXRpb25zLiBiKSBEIGVzaWduIG1ldGhvZCBvZiBhcHBsaWNhdGlvbiBwcm90b2NvbHMgZm9yIGxpZ2h0LXdlaWdodGVkIGRldmljZXMgVGhpcyBtZXRob2QgaXMgYSBmbGV4aWJsZSBhcHBsaWNhdGlvbiBwcm90b2NvbCBmb3Igc2FmZXR5IHdhcm5pbmcgYW5kIHBhcmtpbmcgZ3VpZGFuY2Ugc2VydmljZXMuIFVubGlrZSBtYW55IG90aGVyIGFwcGxpY2F0aW9uIHByb3RvY29scyBpbiB0aGUgSVRTIGFuZCBUZWxlbWF0aWNzIGRvbWFpbnMsIHRoaXMgcHJvdG9jb2wgbWFrZXMgdGhlIGNsaWVudCBwYXJ0IGluZGVwZW5kZW50IG9mIHVzZSBjYXNlcyBmb3Igc3VwcG9ydGluZyBsaWdodC13ZWlnaHRlZCBkZXZpY2VzLiBjKSBVc2UgY2FzZXMgYXQgdGhlIHJvYWQgYW5kIHBhcmtpbmcgYmF5cyBmb3Igd2FybmluZyBhbmQgcGFya2luZyBndWlkZSBJU08vVFIgMTMxODQtMToyMDEzIGRlc2NyaWJlcyB0aGUgdXNlIGNhc2VzIGFwcGxpY2FibGUgdG8gdGhlIGNvbW11bmljYXRpb24gc2VydmljZXMgYmV0d2VlbiBwZXJzb25hbCBJVFMgc3RhdGlvbnMgYW5kIHJvYWRzaWRlIElUUyBzdGF0aW9ucyBmb3IgdGhlIHB1cnBvc2VzIG9mIHByb3ZpZGluZyBzYWZldHkgd2FybmluZyBhbmQgcGFya2luZyBndWlkYW5jZS4gIiwib2JqZWN0SUQiOiI1NzAyNF8wIiwiX2hpZ2hsaWdodFJlc3VsdCI6eyJ0aXRsZSI6eyJ2YWx1ZSI6IjxlbT5JU088L2VtPi9UUiA8ZW0+MTMxPC9lbT44NC0xOjIwMTMgSW50ZWxsaWdlbnQgdHJhbnNwb3J0IHN5c3RlbXMgKElUUykg4oCUIEd1aWRhbmNlIHByb3RvY29sIHZpYSBwZXJzb25hbCBJVFMgc3RhdGlvbiBmb3IgYWR2aXNvcnkgc2FmZXR5IHN5c3RlbXMg4oCUIFBhcnQgMTogR2VuZXJhbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGNhc2UgZGVmaW5pdGlvbnMiLCJtYXRjaExldmVsIjoiZnVsbCIsImZ1bGx5SGlnaGxpZ2h0ZWQiOmZhbHNlLCJtYXRjaGVkV29yZHMiOlsiaXNvIiwiMTMxIl19LCJ0ZXh0Ijp7InZhbHVlIjoiPGVtPklTTzwvZW0+L1RSIDxlbT4xMzE8L2VtPjg0LTE6MjAxMyBzcGVjaWZpZXMgZ3VpZGFuY2UgaW5mb3JtYXRpb24gcHJvdG9jb2wgdG8gcHJvdmlkZSByZWFsLXRpbWUgZGVjaXNpb24gc3VwcG9ydCBzeXN0ZW0gdG8gZHJpdmVycyBvciBwZWRlc3RyaWFucyB1c2luZyBwZXJzb25hbCBJVFMgc3RhdGlvbnM6IGEpIFJlZmVyZW5jZSBhcmNoaXRlY3R1cmUgZm9yIHJlYWwtdGltZSBkZWNpc2lvbiBzdXBwb3J0IHN5c3RlbXMgVGhpcyByZWZlcmVuY2UgYXJjaGl0ZWN0dXJlIHByb3ZpZGVzIGEgZ2VuZXJhbCBzdHJ1Y3R1cmUgZm9yIHJlYWwtdGltZSBkZWNpc2lvbiBzdXBwb3J0IHN5c3RlbXMgYW5kIHRoZSBtZXRob2Qgb2YgbWVzc2FnZSBleGNoYW5nZSBiZXR3ZWVuIHRoZSBwZXJzb25hbCBJVFMgc3RhdGlvbiBhbmQgdGhlIHJvYWRzaWRlIElUUyBzdGF0aW9uLiBUaGlzIHJlZmVyZW5jZSBhcmNoaXRlY3R1cmUgaXMgdXNlZCB0byBidWlsZCB0aGUgaW50ZXJjb25uZWN0aW9ucyBiZXR3ZWVuIHBlcnNvbmFsIElUUyBzdGF0aW9ucyBhbmQgcm9hZHNpZGUgSVRTIHN0YXRpb25zLiBiKSBEIGVzaWduIG1ldGhvZCBvZiBhcHBsaWNhdGlvbiBwcm90b2NvbHMgZm9yIGxpZ2h0LXdlaWdodGVkIGRldmljZXMgVGhpcyBtZXRob2QgaXMgYSBmbGV4aWJsZSBhcHBsaWNhdGlvbiBwcm90b2NvbCBmb3Igc2FmZXR5IHdhcm5pbmcgYW5kIHBhcmtpbmcgZ3VpZGFuY2Ugc2VydmljZXMuIFVubGlrZSBtYW55IG90aGVyIGFwcGxpY2F0aW9uIHByb3RvY29scyBpbiB0aGUgSVRTIGFuZCBUZWxlbWF0aWNzIGRvbWFpbnMsIHRoaXMgcHJvdG9jb2wgbWFrZXMgdGhlIGNsaWVudCBwYXJ0IGluZGVwZW5kZW50IG9mIHVzZSBjYXNlcyBmb3Igc3VwcG9ydGluZyBsaWdodC13ZWlnaHRlZCBkZXZpY2VzLiBjKSBVc2UgY2FzZXMgYXQgdGhlIHJvYWQgYW5kIHBhcmtpbmcgYmF5cyBmb3Igd2FybmluZyBhbmQgcGFya2luZyBndWlkZSA8ZW0+SVNPPC9lbT4vVFIgPGVtPjEzMTwvZW0+ODQtMToyMDEzIGRlc2NyaWJlcyB0aGUgdXNlIGNhc2VzIGFwcGxpY2FibGUgdG8gdGhlIGNvbW11bmljYXRpb24gc2VydmljZXMgYmV0d2VlbiBwZXJzb25hbCBJVFMgc3RhdGlvbnMgYW5kIHJvYWRzaWRlIElUUyBzdGF0aW9ucyBmb3IgdGhlIHB1cnBvc2VzIG9mIHByb3ZpZGluZyBzYWZldHkgd2FybmluZyBhbmQgcGFya2luZyBndWlkYW5jZS4gIiwibWF0Y2hMZXZlbCI6ImZ1bGwiLCJmdWxseUhpZ2hsaWdodGVkIjpmYWxzZSwibWF0Y2hlZFdvcmRzIjpbImlzbyIsIjEzMSJdfX19XSwibmJIaXRzIjoxODAsInBhZ2UiOjAsIm5iUGFnZXMiOjIsImhpdHNQZXJQYWdlIjoxMDAsImV4aGF1c3RpdmVOYkhpdHMiOnRydWUsImV4aGF1c3RpdmVUeXBvIjp0cnVlLCJleGhhdXN0aXZlIjp7Im5iSGl0cyI6dHJ1ZSwidHlwbyI6dHJ1ZX0sInF1ZXJ5IjoiSVNPIDEzMSIsInBhcmFtcyI6InF1ZXJ5PUlTTysxMzEmaGl0c1BlclBhZ2U9MTAwJmZpbHRlcnM9Y2F0ZWdvcnklM0FzdGFuZGFyZCIsInByb2Nlc3NpbmdUaW1lTVMiOjksInByb2Nlc3NpbmdUaW1pbmdzTVMiOnsiYWZ0ZXJGZXRjaCI6eyJmb3JtYXQiOnsiaGlnaGxpZ2h0aW5nIjo2LCJ0b3RhbCI6OH0sInRvdGFsIjo4fSwidG90YWwiOjl9fQ==
61
- recorded_at: Mon, 24 Oct 2022 10:31:29 GMT
62
- - request:
63
- method: get
64
- uri: https://www.iso.org/contents/data/standard/00/39/3944.html
65
- body:
66
- encoding: US-ASCII
67
- string: ''
68
- headers:
69
- Accept-Encoding:
70
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
71
- Accept:
72
- - "*/*"
73
- User-Agent:
74
- - Ruby
75
- Host:
76
- - www.iso.org
77
- response:
78
- status:
79
- code: 301
80
- message: ''
81
- headers:
82
- Expires:
83
- - Wed, 09 May 1979 05:30:00 GMT
84
- Cache-Control:
85
- - no-cache, no-store, must-revalidate, proxy-revalidate, max-age=0
86
- Pragma:
87
- - no-cache
88
- Set-Cookie:
89
- - BIGipServerpool_prod_iso_www-jahia=747131274.36895.0000; path=/; Httponly;
90
- Secure
91
- - JSESSIONID=1380ACC607F35BF8F454FC2161F84AEE; Path=/; Secure; HttpOnly
92
- Location:
93
- - "/standard/3944.html"
94
- Content-Length:
95
- - '0'
96
- Date:
97
- - Mon, 24 Oct 2022 10:31:34 GMT
98
- Strict-Transport-Security:
99
- - max-age=31536000; includeSubDomains
100
- body:
101
- encoding: UTF-8
102
- string: ''
103
- recorded_at: Mon, 24 Oct 2022 10:31:34 GMT
104
- - request:
105
- method: get
106
- uri: https://www.iso.org/standard/3944.html
107
- body:
108
- encoding: US-ASCII
109
- string: ''
110
- headers:
111
- Accept-Encoding:
112
- - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
113
- Accept:
114
- - "*/*"
115
- User-Agent:
116
- - Ruby
117
- Host:
118
- - www.iso.org
119
- response:
120
- status:
121
- code: 200
122
- message: ''
123
- headers:
124
- Expires:
125
- - Wed, 09 May 1979 05:30:00 GMT
126
- Cache-Control:
127
- - no-cache, no-store, must-revalidate, proxy-revalidate, max-age=0
128
- Pragma:
129
- - no-cache
130
- Set-Cookie:
131
- - BIGipServerpool_prod_iso_www-jahia=730354058.36895.0000; path=/; Httponly;
132
- Secure
133
- - JSESSIONID=F74615C9D60BA5C6153D001F98E57B7E; Path=/; Secure; HttpOnly
134
- Vary:
135
- - accept-encoding
136
- Content-Type:
137
- - text/html;charset=UTF-8
138
- Transfer-Encoding:
139
- - chunked
140
- Date:
141
- - Mon, 24 Oct 2022 10:31:35 GMT
142
- Strict-Transport-Security:
143
- - max-age=31536000; includeSubDomains
144
- body:
145
- encoding: ASCII-8BIT
146
- string: !binary |-
147
- PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD48bGluayByZWw9ImNhbm9uaWNhbCIgaHJlZj0iaHR0cHM6Ly93d3cuaXNvLm9yZy9zdGFuZGFyZC8zOTQ0Lmh0bWwiIC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmbGFuZz0iZnIiIGhyZWY9Imh0dHBzOi8vd3d3Lmlzby5vcmcvZnIvc3RhbmRhcmQvMzk0NC5odG1sIiAvPgogICAgPHNjcmlwdD4KICAgICAgZGF0YUxheWVyID0gW3sKICAgICAgICAncGFnZVR5cGUnOiAnaXRzOnN0YW5kYXJkJywKICAgICAgICAncGFnZUxhbmd1YWdlJzogJ2VuJwogICAgICB9XTsKICAgIDwvc2NyaXB0PgoKICAgIDwhLS0gT25lVHJ1c3QgQ29va2llcyBDb25zZW50IE5vdGljZSBzdGFydCBmb3Igd3d3Lmlzby5vcmcgLS0+CjwhLS0gPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9jZG4uY29va2llbGF3Lm9yZy9jb25zZW50LzA5NjQ0OTNhLWIzOTYtNDY4NS05MTUwLTE4Zjc0OWFiZmJmYi9PdEF1dG9CbG9jay5qcyIgPjwvc2NyaXB0PiAtLT4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLmNvb2tpZWxhdy5vcmcvc2NyaXB0dGVtcGxhdGVzL290U0RLU3R1Yi5qcyIgZGF0YS1kb2N1bWVudC1sYW5ndWFnZT0idHJ1ZSIgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJVVEYtOCIgZGF0YS1kb21haW4tc2NyaXB0PSIwOTY0NDkzYS1iMzk2LTQ2ODUtOTE1MC0xOGY3NDlhYmZiZmIiIGRlZmVyID48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovLyBmdW5jdGlvbiB0byBwdWxsIGNvb2tpZSB2YWx1ZQoKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHsKICAoZnVuY3Rpb24gT3B0YW5vbldyYXBwZXIoKSB7CgogICAgICB2YXIgT0FCQ2Nvb2tpZU5hbWUgPSAiT3B0YW5vbkFsZXJ0Qm94Q2xvc2VkIjsKICAgICAgdmFyIGJhbm5lckFjY2VwdEJ0biA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvbmV0cnVzdC1hY2NlcHQtYnRuLWhhbmRsZXIiKTsKICAgICAgdmFyIHBjQWxsb3dBbGxCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWNjZXB0LXJlY29tbWVuZGVkLWJ0bi1oYW5kbGVyIik7CiAgICAgIHZhciBwY1NhdmVCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzYXZlLXByZWZlcmVuY2UtYnRuLWhhbmRsZXIgb25ldHJ1c3QtY2xvc2UtYnRuLWhhbmRsZXIgYnV0dG9uLXRoZW1lIilbMF07CgogICAgICB2YXIgdmFsdWUgPSAiOyAiICsgZG9jdW1lbnQuY29va2llOwogICAgICB2YXIgcGFydHMgPSB2YWx1ZS5zcGxpdCgiOyAiICsgT0FCQ2Nvb2tpZU5hbWUgKyAiPSIpOwogICAgICBpZiAocGFydHMubGVuZ3RoID09IDIpIHsKICAgICAgICB2YXIgT0FCQ2Nvb2tpZSA9IHBhcnRzLnBvcCgpLnNwbGl0KCI7Iikuc2hpZnQoKTsKICAgICAgfQoKICAgICAgLy8gSUYgbG9naWMgbmVlZGVkIGhlcmUgYmVjYXVzZSBvdC1iYW5uZXItc2RrIERJViBpcyBub3QgaW5qZWN0ZWQgb24gcGFnZSBsb2FkcyBpZiBiYW5uZXIgaXMgbm90IGV4cG9zZWQKCiAgICAgIGlmICghT0FCQ2Nvb2tpZSAmJiBiYW5uZXJBY2NlcHRCdG4pIHsKICAgICAgICAgIGJhbm5lckFjY2VwdEJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJBbGxvd2VkIGFsbCB2aWEgQmFubmVyIik7CiAgICAgICAgICAgICAgbG9jYXRpb24ucmVsb2FkKCk7CiAgICAgICAgICB9KTsKICAgICAgfQogICAgICBpZiAocGNBbGxvd0FsbEJ0bikgewogICAgICAgICAgcGNBbGxvd0FsbEJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJBbGxvd2VkIGFsbCB2aWEgUHJlZmVyZW5jZSBDZW50ZXIiKTsKICAgICAgICAgICAgICBsb2NhdGlvbi5yZWxvYWQoKTsKICAgICAgICAgIH0pOwogICAgICB9CiAgICAgIGlmIChwY1NhdmVCdG4pIHsKICAgICAgICBwY1NhdmVCdG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgY29uc29sZS5sb2coIlNldCBjdXN0b20gc2V0dGluZ3MgdmlhIFByZWZlcmVuY2UgQ2VudGVyIik7CiAgICAgICAgICAgIGxvY2F0aW9uLnJlbG9hZCgpOwogICAgICAgIH0pOwogICAgICB9CiAgfSkoalF1ZXJ5KTsKfSk7Cjwvc2NyaXB0Pgo8IS0tIE9uZVRydXN0IENvb2tpZXMgQ29uc2VudCBOb3RpY2UgZW5kIGZvciB3d3cuaXNvLm9yZyAtLT4KCjwhLS0gSG90amFyIFRyYWNraW5nIENvZGUgZm9yIHd3dy5pc28ub3JnIC0tPgo8IS0tCjxzY3JpcHQgdHlwZT0idGV4dC9wbGFpbiIgY2xhc3M9Im9wdGFub24tY2F0ZWdvcnktQzAwMDMiPgogICAgKGZ1bmN0aW9uKGgsbyx0LGosYSxyKXsKICAgICAgICBoLmhqPWguaGp8fGZ1bmN0aW9uKCl7KGguaGoucT1oLmhqLnF8fFtdKS5wdXNoKGFyZ3VtZW50cyl9OwogICAgICAgIGguX2hqU2V0dGluZ3M9e2hqaWQ6MjUxMDgwNSxoanN2OjZ9OwogICAgICAgIGE9by5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdOwogICAgICAgIHI9by5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtyLmFzeW5jPTE7CiAgICAgICAgci5zcmM9dCtoLl9oalNldHRpbmdzLmhqaWQraitoLl9oalNldHRpbmdzLmhqc3Y7CiAgICAgICAgYS5hcHBlbmRDaGlsZChyKTsKICAgIH0pKHdpbmRvdyxkb2N1bWVudCwnaHR0cHM6Ly9zdGF0aWMuaG90amFyLmNvbS9jL2hvdGphci0nLCcuanM/c3Y9Jyk7Cjwvc2NyaXB0PgotLT48IS0tIEdvb2dsZSBUYWcgTWFuYWdlciAtLT4KICAgICAgPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6CiAgICAgICAgICBuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sCiAgICAgICAgaj1kLmNyZWF0ZUVsZW1lbnQocyksZGw9bCE9J2RhdGFMYXllcic/JyZsPScrbDonJztqLmFzeW5jPXRydWU7ai5zcmM9CiAgICAgICAgJ2h0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL2d0bS5qcz9pZD0nK2krZGw7Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICB9KSh3aW5kb3csZG9jdW1lbnQsJ3NjcmlwdCcsJ2RhdGFMYXllcicsJ0dUTS1URkdLUVFCJyk7PC9zY3JpcHQ+CiAgICAgIDwhLS0gRW5kIEdvb2dsZSBUYWcgTWFuYWdlciAtLT4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPgogICAgPHRpdGxlPklTTyAtIElTTyAxMzE6MTk3OSAtIEFjb3VzdGljcyDigJQgRXhwcmVzc2lvbiBvZiBwaHlzaWNhbCBhbmQgc3ViamVjdGl2ZSBtYWduaXR1ZGVzIG9mIHNvdW5kIG9yIG5vaXNlIGluIGFpcjwvdGl0bGU+CgogICAgPCEtLQogICAgICA8bGluayByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiIGhyZWY9Ii9tb2R1bGVzL2lzb29yZy10ZW1wbGF0ZS9qYXZhc2NyaXB0L3dvb2QuZnVsbC5taW4uanMiIC8+CiAgICAgIDxsaW5rIHJlbD0icHJlbG9hZCIgYXM9InN0eWxlIiBocmVmPSIvbW9kdWxlcy9pc29vcmctdGVtcGxhdGUvY3NzL3dvb2QuZnVsbC5taW4uY3NzIiAvPgogICAgICAtLT4KCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9tb2R1bGVzL2lzb29yZy10ZW1wbGF0ZS9jc3Mvd29vZC5mdWxsLm1pbi5jc3MiIG1lZGlhPSJzY3JlZW4scHJpbnQsaGFuZGhlbGQiIHR5cGU9InRleHQvY3NzIi8+CgoKICAgIAoKPGxpbmsgcmVsPSJjYW5vbmljYWwiIGhyZWY9Imh0dHBzOi8vd3d3Lmlzby5vcmcvc3RhbmRhcmQvMzk0NC5odG1sIiAvPgoKICAgIDwhLS0gc3RhcnQgZmF2aWNvbnMgLS0+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24tcHJlY29tcG9zZWQiIGhyZWY9Ii9tb2R1bGVzL2lzb29yZy10ZW1wbGF0ZS9pbWcvaXNvL2Zhdmljb24vcmVkL2FwcGxlLXRvdWNoLWljb24tMTUyeDE1Mi1wcmVjb21wb3NlZC5wbmciPgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvbW9kdWxlcy9pc29vcmctdGVtcGxhdGUvaW1nL2lzby9mYXZpY29uL3JlZC9mYXZpY29uLmljbyI+CiAgICA8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLVRpbGVDb2xvciIgY29udGVudD0iI2VlZSI+CiAgICA8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLVRpbGVJbWFnZSIgY29udGVudD0iL21vZHVsZXMvaXNvb3JnLXRlbXBsYXRlL2ltZy9pc28vZmF2aWNvbi9yZWQvbXN0aWxlLTE0NHgxNDQucG5nIj4KICAgIDwhLS0gZW5kIGZhdmljb25zIC0tPgoKICAgIDxtZXRhIG5hbWU9InRoZW1lLWNvbG9yIiBjb250ZW50PSIjMzMzIj4KCiAgCjxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vanNvbiIgaWQ9ImphaGlhLWRhdGEtY3R4Ij57ImNvbnRleHRQYXRoIjoiIiwibGFuZyI6ImVuIiwidWlsYW5nIjoiZW4iLCJzaXRlVXVpZCI6IjQzOTE0NmY4LTY3N2UtNGRkZS1iNmM2LWI2OTJiNzUzNGY1MiIsIndjYWciOmZhbHNlLCJja2VDZmciOiIifTwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9ImFwcGxpY2F0aW9uL2pzb24iIGlkPSJqYWhpYS1kYXRhLWNrIj57InBhdGgiOiIvbW9kdWxlcy9ja2VkaXRvci9qYXZhc2NyaXB0LyIsImxuZyI6ImVuX1VTIn08L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9qYXZhc2NyaXB0L2luaXRKYWhpYUNvbnRleHQuanMiPjwvc2NyaXB0Pgo8bGluayBpZD0ic3RhdGljQXNzZXRDU1MwIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9tb2R1bGVzL2lzby1qYWhpYS1zZXJ2aWNlLW1vZHVsZS9jc3MvY2F0YWxvZ3VlLmNzcz8xNjY2MDEzOTc2MzMzIiBtZWRpYT0ic2NyZWVuIiB0eXBlPSJ0ZXh0L2NzcyIvPgo8c2NyaXB0IHNyYz0iL21vZHVsZXMvaXNvb3JnLXRlbXBsYXRlL2phdmFzY3JpcHQvd29vZC5mdWxsLm1pbi5qcyIgZGVmZXIgPjwvc2NyaXB0PgogICAgCjxzY3JpcHQgc3JjPSIvbW9kdWxlcy9pc29vcmctdGVtcGxhdGUvamF2YXNjcmlwdC9jdXN0b20uanMiIGRlZmVyID48L3NjcmlwdD4KICAgIAo8c2NyaXB0IHNyYz0iL21vZHVsZXMvaXNvLWphaGlhLXNlcnZpY2UtbW9kdWxlL2phdmFzY3JpcHQvY2F0YWxvZ3VlLmpzIiBkZWZlciA+PC9zY3JpcHQ+Cgo8bWV0YSBuYW1lPSJjYXRlZ29yeSIgY29udGVudD0idyIgLz4KICA8bWV0YSBuYW1lPSJwdWJkYXRlIiBjb250ZW50PSIxOTk2MDMwNyIgLz4KICAKPCEtLSBUd2l0dGVyIENhcmQgZGF0YSAtLT4KICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9IkBpc29zdGFuZGFyZHMiIC8+CgogIDwhLS0gT3BlbiBHcmFwaCBkYXRhIC0tPgogIDxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IklTTyIgLz4KICA8bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL3d3dy5pc28ub3JnL2Ntcy9yZW5kZXIvbGl2ZS9lbi9zaXRlcy9pc29vcmcvY29udGVudHMvZGF0YS9zdGFuZGFyZC8wMC8zOS8zOTQ0Lmh0bWwiIC8+CiAgPG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9IndlYnNpdGUiIC8+CiAgPCEtLSBUaHVtYm5haWwgaW1hZ2UgKGZvciB0d2l0dGVyIGFuZCBPcGVuIEdyYXBoKSAtLT4KICAgIDxtZXRhIG5hbWU9InRodW1ibmFpbCIgY29udGVudD0iL21vZHVsZXMvaXNvLWphaGlhLXNlcnZpY2UtbW9kdWxlL2ltZy9pc28vaXNvLWxvZ28tcHJpbnQuZ2lmIiAvPgogICAgPG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5IiAvPgogICAgPG1ldGEgbmFtZT0idHdpdHRlcjppbWFnZSIgY29udGVudD0iL21vZHVsZXMvaXNvLWphaGlhLXNlcnZpY2UtbW9kdWxlL2ltZy9pc28vaXNvLWxvZ28tcHJpbnQuZ2lmIiAvPgogICAgPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlIiBjb250ZW50PSIvbW9kdWxlcy9pc28tamFoaWEtc2VydmljZS1tb2R1bGUvaW1nL2lzby9pc28tbG9nby1wcmludC5naWYiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2U6YWx0IiBjb250ZW50PSJJU08gbG9nbyIgLz4KICA8IS0tIFRpdGxlIChmb3IgdHdpdHRlciBhbmQgT3BlbiBHcmFwaCkgLS0+CiAgICA8bWV0YSBuYW1lPSJ0d2l0dGVyOnRpdGxlIiBjb250ZW50PSJJU08gMTMxOjE5NzkiIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IklTTyAxMzE6MTk3OSIgLz4KICA8IS0tIERlc2NyaXB0aW9uIChmb3IgZ29vZ2xlLCB0d2l0dGVyIGFuZCBPcGVuIEdyYXBoKSAtLT4KICAgIDxtZXRhIG5hbWU9InR3aXR0ZXI6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IkFjb3VzdGljcyDigJQgRXhwcmVzc2lvbiBvZiBwaHlzaWNhbCBhbmQgc3ViamVjdGl2ZSBtYWduaXR1ZGVzIG9mIHNvdW5kIG9yIG5vaXNlIGluIGFpciIgLz4KICAgIDxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iQWNvdXN0aWNzIOKAlCBFeHByZXNzaW9uIG9mIHBoeXNpY2FsIGFuZCBzdWJqZWN0aXZlIG1hZ25pdHVkZXMgb2Ygc291bmQgb3Igbm9pc2UgaW4gYWlyIiAvPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IkFjb3VzdGljcyDigJQgRXhwcmVzc2lvbiBvZiBwaHlzaWNhbCBhbmQgc3ViamVjdGl2ZSBtYWduaXR1ZGVzIG9mIHNvdW5kIG9yIG5vaXNlIGluIGFpciIgLz4KICA8IS0tIEZhY2Vib29rIGFkbWlucyA6IExpb25lbCxNYXJpYSAtLT4KICA8bWV0YSBwcm9wZXJ0eT0iZmI6YWRtaW5zIiBjb250ZW50PSIxMDAwMDExMTYwNzk2NzYsMTAwMDAxNDQwMDAzMzA1IiAvPgoKICAKCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9tb2R1bGVzL0NzcmZTZXJ2bGV0Ij48L3NjcmlwdD4KPC9oZWFkPgogIDxib2R5IGNsYXNzPSJ0aGVtZS1yZWQiIGlkPSJwYWdlLXRvcCI+CiAgICA8IS0tIEdvb2dsZSBUYWcgTWFuYWdlciAobm9zY3JpcHQpIC0tPgogICAgICA8bm9zY3JpcHQgYXJpYS1oaWRkZW49InRydWUiPjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ucy5odG1sP2lkPUdUTS1URkdLUVFCIiBoZWlnaHQ9IjAiIHdpZHRoPSIwIiBzdHlsZT0iZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVuIj48L2lmcmFtZT48L25vc2NyaXB0PgogICAgICA8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KICAgIDxhIGNsYXNzPSJza2lwLW5hdmlnYXRpb24gYnRuIGJ0bi1pbmZvIHZpc3VhbGx5LWhpZGRlbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlIiBocmVmPSIjY29udGVudCI+U2tpcCB0byBtYWluIGNvbnRlbnQ8L2E+CgogICAgPCEtLSBUb3BiYXIgdXRpbGl0eSAtLT4KICAgIDxuYXYgcm9sZT0ibmF2aWdhdGlvbiIgYXJpYS1sYWJlbD0iVXRpbGl0eSBOYXZpZ2F0aW9uIiBjbGFzcz0ibmF2LXV0aWxpdHkgbmF2YmFyLWV4cGFuZC1sZyB0ZXh0LXNtIG5hdmJhci1kYXJrIGJnLWRhcmsgdGV4dC1saWdodCI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgPHVsIGNsYXNzPSJuYXYgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGp1c3RpZnktY29udGVudC1zbS1hcm91bmQganVzdGlmeS1jb250ZW50LW1kLWVuZCIgaWQ9InV0aWxpdGllcyI+CiAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9sb2dpbi5pc28ub3JnIiBjbGFzcz0ibmF2LWxpbmsgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciIgdGl0bGU9IklTTydzIGFwcGxpY2F0aW9ucyBwb3J0YWwiPjxpIGNsYXNzPSJiaS1ncmlkLTN4My1nYXAtZmlsbCI+PC9pPiZuYnNwO0FwcGxpY2F0aW9uczwvYT4KICAgICAgICAgIDwvbGk+CiAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaXNvLm9yZy9vYnAvdWkvZW4vIiBjbGFzcz0ibmF2LWxpbmsgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciIgdGl0bGU9Ik9ubGluZSBCcm93c2luZyBQbGF0Zm9ybSI+PGkgY2xhc3M9ImJpLWpvdXJuYWwtdGV4dCI+PC9pPiZuYnNwO09CUDwvYT4KICAgICAgICAgIDwvbGk+CiAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIGRyb3Bkb3duIiBpZD0ibGFuZy1zd2l0Y2hlciI+CiAgPGEgaWQ9ImxhbmctZHJvcGRvd24iIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiIGRhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biIgaHJlZj0iIyIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPkVuZ2xpc2g8L2E+CiAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51IGRyb3Bkb3duLW1lbnUtZW5kIiByb2xlPSJtZW51IiBhcmlhLWxhYmVsbGVkYnk9ImxhbmctZHJvcGRvd24iPgogICAgPGxpPjxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSIvZnIvc3RhbmRhcmQvMzk0NC5odG1sIj5mcmFuw6dhaXM8L2E+PC9saT48bGk+PGEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9Ii9ydS9zdGFuZGFyZC8zOTQ0Lmh0bWwiPtGA0YPRgdGB0LrQuNC5PC9hPjwvbGk+PC91bD4KPC9saT48L3VsPgogICAgICA8L2Rpdj4KICAgIDwvbmF2PgoKICAgIDwhLS0gSGVhZGVyIElTTy5PUkcgLS0+CiAgICA8aGVhZGVyIGNsYXNzPSJoZWFkZXItYm9vdHN0cmFwIHN0aWNreS10b3AiPgogICAgICA8IS0tIE1haW4gbmF2aWdhdGlvbiAtLT4KICAgICAgPG5hdiBjbGFzcz0ibmF2YmFyIG5hdi1pc28gbmF2YmFyLWV4cGFuZC1tZCBuYXZiYXItbGlnaHQgYmctbGlnaHRncmF5IHRleHQtZGFyayBzaGFkb3ciPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICA8YSBjbGFzcz0ibG9nbyBsb2dvLXNxdWFyZSBpc29sb2dvIGxvZ28tc20iIGhyZWY9Ii9ob21lLmh0bWwiIHRpdGxlPSJJbnRlcm5hdGlvbmFsIE9yZ2FuaXphdGlvbiBmb3IgU3RhbmRhcmRpemF0aW9uIiBhbHQ9IklTTyBsb2dvIj48L2E+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpc29sb2dvLXByaW50Ij48aW1nIGxvYWRpbmc9ImxhenkiIGZldGNocHJpb3JpdHk9ImxvdyIgc3JjPSIvaW1nL2lzby9pc28tbG9nby1wcmludC5naWYiIGFsdD0iSVNPIGxvZ28gZm9yIHByaW50Ii8+PC9kaXY+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWxpZ2h0IG5hdmJhci10b2dnbGVyIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS1icy10YXJnZXQ9IiNtYWluTmF2IiBhcmlhLWNvbnRyb2xzPSJtYWluTmF2IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5hdmlnYXRpb24iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXZiYXItdG9nZ2xlci1pY29uLWFuaW1hdGVkIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InZpc3VhbGx5LWhpZGRlbi14cyI+Jm5ic3A7TWVudTwvc3Bhbj4KICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgPCEtLSBUT1AgTEVWRUwxIE5BVklHQVRJT04gLS0+CiAgICAgICAgICA8bmF2IHJvbGU9Im5hdmlnYXRpb24iIGFyaWEtbGFiZWw9Ik1haW4gTmF2aWdhdGlvbiIgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSAiIGlkPSJtYWluTmF2Ij48dWwgcm9sZT0ibWVudWJhciIgY2xhc3M9Im5hdmJhci1uYXYgbWUtYXV0byBtYi1sZy0wIG5hdi1sZXZlbDEgIj48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5hdi1pdGVtIG5vQ2hpbGRyZW4gZmlyc3RJbkxldmVsIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3N0YW5kYXJkcy5odG1sIj5TdGFuZGFyZHM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5hdi1pdGVtIG5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvYWJvdXQtdXMuaHRtbCI+QWJvdXQgdXM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5hdi1pdGVtIG5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvbmV3cy5odG1sIj5OZXdzPC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJuYXYtaXRlbSBub0NoaWxkcmVuIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL2RldmVsb3Bpbmctc3RhbmRhcmRzLmh0bWwiPlRha2luZyBwYXJ0PC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJuYXYtaXRlbSBub0NoaWxkcmVuIGluUGF0aCAgbGFzdEluTGV2ZWwiPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvc3RvcmUuaHRtbCI+U3RvcmU8L2E+PC9saT48L3VsPjwhLS0gY2xvc2Ugb2YgdWwgbGV2ZWwgLS0+PC9uYXY+PGZvcm0gY2xhc3M9Im5hdmJhci1mb3JtIGQtZmxleCBpc29zZWFyY2ggbXMtc20tMiIgcm9sZT0ic2VhcmNoIiBpZD0ic2l0ZVNlYXJjaCI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJoaWRkZW4iIGRhdGEtc2VhcmNocGFnZXVybD0iL3NlYXJjaC5odG1sIj48L3NwYW4+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ic2VhcmNoIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iU2VhcmNoIiBhcmlhLWxhYmVsbGVkYnk9ImlucHV0LXNlYXJjaCI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBpZD0iaW5wdXQtc2VhcmNoIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IiB0eXBlPSJzdWJtaXQiPjxpIGNsYXNzPSJiaS1zZWFyY2giPjwvaT48c3BhbiBjbGFzcz0idmlzdWFsbHktaGlkZGVuIj5TZWFyY2g8L3NwYW4+PC9idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9mb3JtPgogICAgICAgICAgPGEgcm9sZT0iYnV0dG9uIiBpZD0ic2hvcHBpbmdDYXJ0IiBjbGFzcz0iYnRuIGJ0bi1saWdodCBzaG9wcGluZy1jYXJ0LWxpbmsgc2hhZG93IiBocmVmPSIvd2Vic3RvcmUvc2hvcHBpbmdiYXNrZXQ/bWVtYmVySWQ9SVNPJmd1aWxhbmc9ZW4iIHRpdGxlPSJTaG9wcGluZyBjYXJ0IiBhcmlhLWxhYmVsPSJTaG9wcGluZyBjYXJ0IiBzdHlsZT0iZGlzcGxheTpub25lOyI+CiAgICAgICAgICAgIDxpIGNsYXNzPSJiaS1jYXJ0Ij48L2k+Jm5ic3A7PHNwYW4gY2xhc3M9InZpc3VhbGx5LWhpZGRlbi14cyI+Q2FydDwvc3Bhbj4KICAgICAgICAgIDwvYT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9uYXY+CgogICAgPC9oZWFkZXI+CgogICAgPCEtLSBNQUlOIENPTlRFTlQgLS0+CiAgICA8bWFpbiByb2xlPSJtYWluIiBpZD0iY29udGVudCIgY2xhc3M9ImFjZXIiIGFyaWEtbGFiZWw9IkNvbnRlbnQiIHRhYmluZGV4PSItMSI+CiAgICAgIAoKCgo8c3BhbiBjbGFzcz0idmlzdWFsbHktaGlkZGVuIiBpZD0iaW5kZXhSZWZlcmVuY2UiIGRhdGEtaW5kZXg9IjM5NDQgLSBJU08gMTMxOjE5NzkgLSBBY291c3RpY3Mg4oCUIEV4cHJlc3Npb24gb2YgcGh5c2ljYWwgYW5kIHN1YmplY3RpdmUgbWFnbml0dWRlcyBvZiBzb3VuZCBvciBub2lzZSBpbiBhaXIiPjwvc3Bhbj4KPHNwYW4gY2xhc3M9InZpc3VhbGx5LWhpZGRlbiIgaWQ9Iml0ZW1SZWZlcmVuY2UiPklTTyAxMzE6MTk3OTwvc3Bhbj4KPHNlY3Rpb24gaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwczovL3NjaGVtYS5vcmcvUHJvZHVjdCIgY2xhc3M9InNlY3Rpb24tbmF2aWdhdGlvbiI+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0xMiI+CiAgICAgICAgPGRpdiBjbGFzcz0idmlzdWFsbHktaGlkZGVuIiBpdGVtcHJvcD0iY2F0ZWdvcnkiPnc8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJ2aXN1YWxseS1oaWRkZW4iIGl0ZW1wcm9wPSJuYW1lIiBpZD0iZG9jUmVmIj5JU08gMTMxOjE5Nzk8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJ2aXN1YWxseS1oaWRkZW4iIGl0ZW1wcm9wPSJwcm9kdWN0SUQiIGlkPSJjc051bWJlciI+Mzk0NDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJ2aXN1YWxseS1oaWRkZW4iIGl0ZW1wcm9wPSJicmFuZCIgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwczovL3NjaGVtYS5vcmcvT3JnYW5pemF0aW9uIj4KICAgICAgICAgIDxkaXYgaXRlbXByb3A9ImxvZ28iIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL0ltYWdlT2JqZWN0Ij4KICAgICAgICAgICAgPG1ldGEgaXRlbXByb3A9InVybCIgY29udGVudD0iL21vZHVsZXMvaXNvLWphaGlhLXNlcnZpY2UtbW9kdWxlL2ltZy9pc28vaXNvLWxvZ28tcHJpbnQuZ2lmIi8+CiAgICAgICAgICAgIDxtZXRhIGl0ZW1wcm9wPSJ3aWR0aCIgY29udGVudD0iMjgzIj4KICAgICAgICAgICAgPG1ldGEgaXRlbXByb3A9ImhlaWdodCIgY29udGVudD0iMjYxIj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPG1ldGEgaXRlbXByb3A9Im5hbWUiIGNvbnRlbnQ9IklTTyAtIEludGVybmF0aW9uYWwgT3JnYW5pemF0aW9uIGZvciBTdGFuZGFyZGl6YXRpb24iPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8bmF2IHJvbGU9Im5hdmlnYXRpb24iIGFyaWEtbGFiZWw9IkNoaWxkcmVuIE5hdmlnYXRpb24iIGNsYXNzPSJoZWFkaW5nLWNvbmRlbnNlZCBuYXYtcmVsYXRpdmVzIj4KCiAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkIHNlY3Rpb24taDEgc2VjdGlvbi1iYWNrIj48c3BhbiBjbGFzcz0iaWNvbiAiPjwvc3Bhbj48YSB0YXJnZXQ9IiIgaHJlZj0iL3N0YW5kYXJkcy1jYXRhbG9ndWUvYnJvd3NlLWJ5LWljcy5odG1sInRpdGxlPSJCcm93c2UgdGhlIGZ1bGwgY29sbGVjdGlvbiBvZiBJU08gc3RhbmRhcmRzIGFuZCBmaW5kIHRoZSBvbmVzIHRoYXQgYXBwbHkgdG8geW91ciBzZWN0b3IuIj5JQ1M8L2E+PGEgaHJlZj0iL2VuL2ljcy8xNy5odG1sIj4xNzwvYT48YSBocmVmPSIvZW4vaWNzLzE3LjE0MC5odG1sIj4xNy4xNDA8L2E+PGEgaHJlZj0iL2VuL2ljcy8xNy4xNDAuMDEuaHRtbCI+MTcuMTQwLjAxPC9hPjwvZGl2PgogIDxoMT5JU08gMTMxOjE5Nzk8L2gxPgogIDxoMiBjbGFzcz0ibXQtMCAiPkFjb3VzdGljcyDigJQgRXhwcmVzc2lvbiBvZiBwaHlzaWNhbCBhbmQgc3ViamVjdGl2ZSBtYWduaXR1ZGVzIG9mIHNvdW5kIG9yIG5vaXNlIGluIGFpcjwvaDI+PC9uYXY+PC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPgoKPHNlY3Rpb24gaWQ9InByb2R1Y3QtZGV0YWlscyI+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC03Ij4KICAgICAgICA8aDM+CiAgR2VuZXJhbCBpbmZvcm1hdGlvbjxzdXA+Jm5ic3A7PGEgaHJlZj0iL2NvbnRlbnRzL2RhdGEvc3RhbmRhcmQvMDAvMzkvMzk0NC5kZXRhaWwucnNzIiBjbGFzcz0iYmktcnNzLWZpbGwgdGV4dC13YXJuaW5nIGZzLTYiIGRhdGEtYnMtdG9nZ2xlPSJpc28tdG9vbHRpcCIgZGF0YS1vcmlnaW5hbC10aXRsZT0iU3Vic2NyaWJlJm5ic3A7dG8mbmJzcDt1cGRhdGVzIj48L2E+PC9zdXA+CiAgJm5ic3A7PC9oMz4KPHVsIGNsYXNzPSJyZWZpbmUiPgogIDxsaT4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJlbnRyeS1sYWJlbCI+U3RhdHVzPC9kaXY+Jm5ic3A7OiZuYnNwOzxzcGFuPjxpIGNsYXNzPSJiaS1zbGFzaC1jaXJjbGUiIHRpdGxlPSJXaXRoZHJhd24iPjwvaT4mbmJzcDtXaXRoZHJhd248L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJlbnRyeS1sYWJlbCI+UHVibGljYXRpb24gZGF0ZTwvZGl2PiZuYnNwOzombmJzcDs8c3BhbiBpdGVtcHJvcD0icmVsZWFzZURhdGUiPjE5NzktMTE8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2xpPgogIDxsaT4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJlbnRyeS1sYWJlbCI+RWRpdGlvbjwvZGl2PiZuYnNwOzombmJzcDsxPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJlbnRyeS1sYWJlbCI+TnVtYmVyIG9mIHBhZ2VzPC9kaXY+Jm5ic3A7OiZuYnNwOzM8L2Rpdj4KICAgIDwvZGl2PgogIDwvbGk+CiAgPGxpPgogICAgICA8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+CiAgICAgICAgPGRpdiBjbGFzcz0iZW50cnktbGFiZWwiPlRlY2huaWNhbCBDb21taXR0ZWU8L2Rpdj4mbmJzcDs6CiAgICAgICAgPHNwYW4gY2xhc3M9ImVudHJ5LW5hbWUgZW50cnktYmxvY2siPgogICAgICAgICAgPGEgaHJlZj0iL2NvbW1pdHRlZS80ODQ1OC5odG1sIj5JU08vVEMgNDM8L2E+PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJlbnRyeS10aXRsZSI+QWNvdXN0aWNzPC9zcGFuPgogICAgICA8L2Rpdj4KICAgIDwvbGk+CiAgPGxpPgogICAgPGRsIGNsYXNzPSJkbC1pbmxpbmUgbm8tYm90dG9tLW1hcmdpbiI+CiAgICAgIDxkdCBjbGFzcz0iZW50cnktbGFiZWwgZW50cnktYmxvY2siPjxzdHJvbmc+SUNTPC9zdHJvbmc+PC9kdD4mbmJzcDs6CiAgICAgIDxkZD4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJlbnRyeS1uYW1lIGVudHJ5LWJsb2NrIj4KICAgICAgICAgICAgPGEgaHJlZj0iL2ljcy8xNy4xNDAuMDEuaHRtbCI+CiAgICAgICAgICAgICAgICAxNy4xNDAuMDE8L2E+CiAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iZW50cnktdGl0bGUiPkFjb3VzdGljIG1lYXN1cmVtZW50cyBhbmQgbm9pc2UgYWJhdGVtZW50IGluIGdlbmVyYWw8L3NwYW4+CiAgICAgICAgPC9kZD4KICAgICAgPC9kbD4KICA8L2xpPgo8L3VsPgo8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00IGNvbC1tZC1vZmZzZXQtMSI+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPgoKPHNlY3Rpb24gaWQ9ImxpZmVjeWNsZSI+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0xMiI+CiAgICAgICAgPGgzPkxpZmUgY3ljbGU8L2gzPgogICAgICAgIDxici8+CiAgICAgICAgPGRpdiBjbGFzcz0ibGlmZWN5Y2xlIj4KICAgICAgICAgIDx1bCBjbGFzcz0ic3RlcHMiPgogICAgICAgICAgICA8bGkgY2xhc3M9InRpbWUtc3RlcCI+CiAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRleHQtaGVscCI+UHJldmlvdXNseTwvaDQ+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGVwIHN0ZXAtZGFyayI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0ZXAtaXRlbSI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1oZWFkIj5XaXRoZHJhd248L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8aDU+PGEgaHJlZj0iL3N0YW5kYXJkLzQzMjMuaHRtbCI+SVNPL1IgMzU3OjE5NjM8L2E+PC9oNT4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICA8bGkgY2xhc3M9InRpbWUtc3RlcCI+CiAgICAgICAgICAgICAgPGg0IGNsYXNzPSJ0ZXh0LWhlbHAiPk5vdzwvaDQ+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RlcCBzdGVwLWRhcmsgYWN0aXZlIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWhlYWQiPldpdGhkcmF3bjwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxoNT5JU08gMTMxOjE5Nzk8L2g1PgogICAgICAgICAgICAgICAgICA8YSBkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiIHJvbGU9ImJ1dHRvbiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGhyZWY9IiNzdGFnZXMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUgY3VycmVudC1zdGFnZSB0ZXh0LXNtIGNvbGxhcHNlZCI+U3RhZ2U6IDxzdHJvbmc+OTUuOTk8L3N0cm9uZz48L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDx1bCBjbGFzcz0ic3RhZ2VzIGNvbGxhcHNlIiBpZD0ic3RhZ2VzIj4KICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24gYWxlcnQtaW5mbyI+CgogICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiAgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj4wMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhZ2UtdGl0bGUiPlByZWxpbWluYXJ5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2E+CgogICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biBhbGVydC1pbmZvIj4KCiAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiICByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjEwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+UHJvcG9zYWw8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDwvYT4KCiAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIGFsZXJ0LWluZm8iPgoKICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgIHJvbGU9ImJ1dHRvbiIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtY29kZSI+MjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj5QcmVwYXJhdG9yeTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPC9hPgoKICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24gYWxlcnQtaW5mbyI+CgogICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLWRpc3BsYXk9InN0YXRpYyIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjMwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+Q29tbWl0dGVlPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2E+CgogICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvc3RhZ2UtY29kZXMuaHRtbCMzMF8wMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj4zMC4wMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWRhdGUiPjE5NzgtMDctMDE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb21taXR0ZWUgZHJhZnQgKENEKSByZWdpc3RlcmVkPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48L3VsPgogICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biBhbGVydC1pbmZvIj4KCiAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiICByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjQwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+RW5xdWlyeTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPC9hPgoKICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24gYWxlcnQtaW5mbyI+CgogICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLWRpc3BsYXk9InN0YXRpYyIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjUwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+QXBwcm92YWw8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDwvYT4KCiAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9zdGFnZS1jb2Rlcy5odG1sIzUwXzAwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjUwLjAwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtZGF0ZSI+MTk3OS0wMy0wMTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhZ2UtdGl0bGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZpbmFsIHRleHQgcmVjZWl2ZWQgb3IgRkRJUyByZWdpc3RlcmVkIGZvciBmb3JtYWwgYXBwcm92YWw8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPjxsaSA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvc3RhZ2UtY29kZXMuaHRtbCM1MF8yMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj41MC4yMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWRhdGUiPjE5NzktMDgtMDE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9vZiBzZW50IHRvIHNlY3JldGFyaWF0IG9yIEZESVMgYmFsbG90IGluaXRpYXRlZDogOCB3ZWVrczwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+PGxpID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9zdGFnZS1jb2Rlcy5odG1sIzUwXzYwIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjUwLjYwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtZGF0ZSI+MTk3OS0wOC0wMTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhZ2UtdGl0bGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlIG9mIHZvdGluZy4gUHJvb2YgcmV0dXJuZWQgYnkgc2VjcmV0YXJpYXQ8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPjwvdWw+CiAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIGFsZXJ0LXN1Y2Nlc3MiPgoKICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS1icy1kaXNwbGF5PSJzdGF0aWMiIGRhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biIgcm9sZT0iYnV0dG9uIiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj42MDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhZ2UtdGl0bGUiPlB1YmxpY2F0aW9uPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2E+CgogICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvc3RhZ2UtY29kZXMuaHRtbCM2MF82MCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj42MC42MDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWRhdGUiPjE5NzktMTEtMDE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIHB1Ymxpc2hlZDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+PC91bD4KICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24gYWxlcnQtc3VjY2VzcyI+CgogICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLWRpc3BsYXk9InN0YXRpYyIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjkwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+UmV2aWV3PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2E+CgogICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAgY2xhc3M9J2xpc3Qtc2VwYXJhdGlvbic+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvc3RhZ2UtY29kZXMuaHRtbCM5MF8yMCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj45MC4yMDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWRhdGUiPjE5OTMtMTEtMzA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIHVuZGVyIHN5c3RlbWF0aWMgcmV2aWV3PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48bGkgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3N0YWdlLWNvZGVzLmh0bWwjOTBfNjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtY29kZSI+OTAuNjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1kYXRlIj4xOTk0LTA3LTE1PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2Ugb2YgcmV2aWV3PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48bGkgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3N0YWdlLWNvZGVzLmh0bWwjOTBfOTkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtY29kZSI+OTAuOTk8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1kYXRlIj4xOTk1LTA3LTE5PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2l0aGRyYXdhbCBvZiBJbnRlcm5hdGlvbmFsIFN0YW5kYXJkIHByb3Bvc2VkIGJ5IFRDIG9yIFNDPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48L3VsPgogICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biBiZy1kYXJrIGFjdGl2ZSI+CgogICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLWJzLWRpc3BsYXk9InN0YXRpYyIgZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIiByb2xlPSJidXR0b24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWNvZGUiPjk1PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+V2l0aGRyYXdhbDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPC9hPgoKICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3N0YWdlLWNvZGVzLmh0bWwjOTVfMjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtY29kZSI+OTUuMjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1kYXRlIj4xOTk1LTA4LTEwPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2l0aGRyYXdhbCBiYWxsb3QgaW5pdGlhdGVkPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48bGkgPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iL3N0YWdlLWNvZGVzLmh0bWwjOTVfNjAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhZ2UtY29kZSI+OTUuNjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1kYXRlIj4xOTk1LTExLTA4PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGFnZS10aXRsZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2Ugb2Ygdm90aW5nPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT48bGkgY2xhc3M9ImFjdGl2ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvc3RhZ2UtY29kZXMuaHRtbCM5NV85OSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdGFnZS1jb2RlIj45NS45OTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YWdlLWRhdGUiPjE5OTYtMDMtMDc8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0YWdlLXRpdGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaXRoZHJhd2FsIG9mIEludGVybmF0aW9uYWwgU3RhbmRhcmQ8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPjwvdWw+CiAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICA8L3VsPgoKICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPC91bD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPgo8c2VjdGlvbiBjbGFzcz0iYmctbGlnaHRncmF5IiBpZD0iY29udGFjdCI+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00Ij4KICAgICAgICA8aDQ+R290IGEgcXVlc3Rpb24/PC9oND4KCjxwPkNoZWNrIG91dCBvdXIgPGEgaHJlZj0iL2ZyZXF1ZW50bHktYXNrZWQtcXVlc3Rpb25zLWZhcXMuaHRtbCIgdGl0bGU9IkZyZXF1ZW50bHkgQXNrZWQgUXVlc3Rpb25zIChGQVFzKSI+RkFRczwvYT48L3A+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJ2Y2FyZCBjb250YWN0IG5vLWZpZ3VyZSBjbGVhcmZpeCIgaXRlbXNjb3BlPSIiIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9QZXJzb24iPgo8ZGl2IGNsYXNzPSJjb250ZW50LWJveCBuby1pbWFnZSI+CjxkaXYgY2xhc3M9ImZuIG4iPjxzcGFuIGNsYXNzPSJnaXZlbi1uYW1lIiBpdGVtcHJvcD0iZ2l2ZW5OYW1lIj5DdXN0b21lciBjYXJlPC9zcGFuPjwvZGl2PgoKPGRpdiBjbGFzcz0idGVsIiBpdGVtcHJvcD0idGVsZXBob25lIj4rNDEgMjIgNzQ5IDA4IDg4PC9kaXY+Cgo8ZGl2IGNsYXNzPSJlbWFpbCIgaXRlbXByb3A9ImVtYWlsIj48YSBocmVmPSJtYWlsdG86Y3VzdG9tZXJzZXJ2aWNlQGlzby5vcmciPmN1c3RvbWVyc2VydmljZUBpc28ub3JnPC9hPjwvZGl2PgoKPGhyIC8+CjxkaXYgY2xhc3M9Im5vdGUiPgo8cCBjbGFzcz0ic21hbGwiPk9wZW5pbmcgaG91cnM6PGJyIC8+Ck1vbmRheSB0byBGcmlkYXkgLSAwOTowMC0xMjowMCwgMTQ6MDAtMTc6MDAgKFVUQysxKTwvcD4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTQiPgogICAgICAgIDxkaXYgY2xhc3M9IndlbGwgdGV4dC1jZW50ZXIgY2xlYXJmaXgiPgogIDxoND5LZWVwIHVwIHRvIGRhdGUgd2l0aCBJU088L2g0PgoKPHA+U2lnbiB1cCB0byBvdXIgbmV3c2xldHRlciBmb3IgdGhlIGxhdGVzdCBuZXdzLCB2aWV3cyBhbmQgcHJvZHVjdCBpbmZvcm1hdGlvbi48L3A+PGRpdj48YSBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IiBkYXRhLWZhbmN5Ym94PSIiIGRhdGEtdHlwZT0iaWZyYW1lIiBocmVmPSJodHRwczovL2NvbmZpcm1zdWJzY3JpcHRpb24uY29tL2gvZC8zNDEyREE3OTkzQUMzQjdDIj5TdWJzY3JpYmU8L2E+PC9kaXY+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+LmZhbmN5Ym94LXNsaWRlLS1pZnJhbWUgLmZhbmN5Ym94LWNvbnRlbnQgewogd2lkdGggIDogNTAwcHg7CiBoZWlnaHQgOiA2MDBweDsKIG1heC13aWR0aCAgOiA4MCU7CiBtYXgtaGVpZ2h0IDogODAlOwogbWFyZ2luOiAwOwp9Ci5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jb250ZW50IC5sLXBhZ2UtY29udGFpbmVyIHsKcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50Owp9Cjwvc3R5bGU+PC9kaXY+PC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPjxkaXYgY2xhc3M9Im5hdi1icmVhZGNydW1iIHByaW50LWZvb3RlciBiZy1ibGFjayI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0xMCBzbWFsbCI+CiAgICAgICAgICAgICAgPCEtLSBCUkVBRENSVU1CIC0tPgogICAgICAgICAgICAgIDxvbCBjbGFzcz0iYnJlYWRjcnVtYiI+CiAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+PGEgaHJlZj0iL2hvbWUuaHRtbCIgdGl0bGU9IkhvbWUgcGFnZSI+PGkgY2xhc3M9ImJpLWhvdXNlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvYT48L2xpPgogICAgPGxpIGNsYXNzPSJicmVhZGNydW1iLWl0ZW0iPgogICAgICAgICAgPGEgaHJlZj0iL3N0b3JlLmh0bWwiPlN0b3JlPC9hPgogICAgICAgICAgICA8L2xpPgogICAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+CiAgICAgICAgICA8YSBocmVmPSIvc3RhbmRhcmRzLWNhdGFsb2d1ZS9icm93c2UtYnktaWNzLmh0bWwiID5TdGFuZGFyZHMgY2F0YWxvZ3VlPC9hPgo8L2xpPgogICAgICA8bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+CiAgICAgICAgICA8YSBocmVmPSIvc3RhbmRhcmRzLWNhdGFsb2d1ZS9icm93c2UtYnktaWNzLmh0bWwiPklDUzwvYT4KICAgICAgICAgICAgPC9saT4KICAgICAgPGxpIGNsYXNzPSJicmVhZGNydW1iLWl0ZW0iPjxhIGhyZWY9Ii9lbi9pY3MvMTcuaHRtbCI+MTc8L2E+PC9saT4KICAgIDxsaSBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIj48YSBocmVmPSIvZW4vaWNzLzE3LjE0MC5odG1sIj4xNy4xNDA8L2E+PC9saT4KICAgIDxsaSBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIj48YSBocmVmPSIvZW4vaWNzLzE3LjE0MC4wMS5odG1sIj4xNy4xNDAuMDE8L2E+PC9saT48bGkgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSI+SVNPIDEzMToxOTc5PC9saT48L29sPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMiBoaWRkZW4tcHJpbnQgdGV4dC1lbmQgc21hbGwgbXQtMyBtdC1zbS0wIj4KICAgICAgICAgICAgICA8YSByb2xlPSJidXR0b24iIGNsYXNzPSJkcm9wZG93bi10b2dnbGUgdGV4dC13aGl0ZSBjb2xsYXBzZWQiIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgaHJlZj0iI2NvbGxhcHNlU2l0ZW1hcCIgdGFyZ2V0PSJfc2VsZiIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9ImNvbGxhcHNlU2l0ZW1hcCI+U2l0ZW1hcDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBib3JkZXItdG9wIiBpZD0iY29sbGFwc2VTaXRlbWFwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICA8IS0tIFNJVEVNQVAgLS0+CiAgICAgICAgICAgICAgPG5hdiByb2xlPSJuYXZpZ2F0aW9uIiBhcmlhLWxhYmVsPSJTaXRlbWFwIiBjbGFzcz0ic2l0ZW1hcC1mb290ZXIgY2xlYXJmaXggc21hbGwgIiBpZD0ibmF2LXNpdGVtYXAiPjx1bCByb2xlPSJtZW51YmFyIiBjbGFzcz0iIG5hdi1sZXZlbDEgbGlzdC1pbmxpbmUtNSBjbGVhcmZpeCI+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJoYXNDaGlsZHJlbiBmaXJzdEluTGV2ZWwiPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvc3RhbmRhcmRzLmh0bWwiPlN0YW5kYXJkczwvYT48dWwgcm9sZT0ibWVudSIgY2xhc3M9IiBuYXYtbGV2ZWwyICBsaXN0LXVuc3R5bGVkIj48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4gZmlyc3RJbkxldmVsIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL2JlbmVmaXRzLW9mLXN0YW5kYXJkcy5odG1sIj5CZW5lZml0czwvYT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9wb3B1bGFyLXN0YW5kYXJkcy5odG1sIj5Qb3B1bGFyIHN0YW5kYXJkczwvYT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9jb25mb3JtaXR5LWFzc2Vzc21lbnQuaHRtbCI+Q29uZm9ybWl0eSBhc3Nlc3NtZW50PC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIGxhc3RJbkxldmVsIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3NkZ3MuaHRtbCI+U0RHczwvYT48L2xpPjwvdWw+PCEtLSBjbG9zZSBvZiB1bCBsZXZlbCAtLT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0iaGFzQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvYWJvdXQtdXMuaHRtbCI+QWJvdXQgdXM8L2E+PHVsIHJvbGU9Im1lbnUiIGNsYXNzPSIgbmF2LWxldmVsMiAgbGlzdC11bnN0eWxlZCI+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIGZpcnN0SW5MZXZlbCI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii93aGF0LXdlLWRvLmh0bWwiPldoYXQgd2UgZG88L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvc3RydWN0dXJlLmh0bWwiPlN0cnVjdHVyZTwvYT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9tZW1iZXJzLmh0bWwiPk1lbWJlcnM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4gbGFzdEluTGV2ZWwiPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvc3RyYXRlZ3kyMDMwLmh0bWwiPlN0cmF0ZWd5PC9hPjwvbGk+PC91bD48IS0tIGNsb3NlIG9mIHVsIGxldmVsIC0tPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJoYXNDaGlsZHJlbiI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9uZXdzLmh0bWwiPk5ld3M8L2E+PHVsIHJvbGU9Im1lbnUiIGNsYXNzPSIgbmF2LWxldmVsMiAgbGlzdC11bnN0eWxlZCI+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL2V2ZW50cy5odG1sIj5FdmVudHM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvbWVkaWEta2l0Lmh0bWwiPk1lZGlhIGtpdDwvYT48L2xpPjwvdWw+PCEtLSBjbG9zZSBvZiB1bCBsZXZlbCAtLT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0iaGFzQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvZGV2ZWxvcGluZy1zdGFuZGFyZHMuaHRtbCI+VGFraW5nIHBhcnQ8L2E+PHVsIHJvbGU9Im1lbnUiIGNsYXNzPSIgbmF2LWxldmVsMiAgbGlzdC11bnN0eWxlZCI+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIGZpcnN0SW5MZXZlbCI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii93aG8tZGV2ZWxvcHMtc3RhbmRhcmRzLmh0bWwiPldobyBkZXZlbG9wcyBzdGFuZGFyZHM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvZGVsaXZlcmFibGVzLWFsbC5odG1sIj5EZWxpdmVyYWJsZXM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvZ2V0LWludm9sdmVkLmh0bWwiPkdldCBpbnZvbHZlZDwvYT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9DbGltYXRlQWN0aW9uLmh0bWwiPkNsaW1hdGUgYWN0aW9uIGtpdDwvYT48L2xpPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiBsYXN0SW5MZXZlbCI+PGEgY2xhc3M9Im5hdi1saW5rICIgcm9sZT0ibWVudWl0ZW0iIGhyZWY9Ii9yZXNvdXJjZXMuaHRtbCI+UmVzb3VyY2VzPC9hPjwvbGk+PC91bD48IS0tIGNsb3NlIG9mIHVsIGxldmVsIC0tPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJoYXNDaGlsZHJlbiBpblBhdGggIGxhc3RJbkxldmVsIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3N0b3JlLmh0bWwiPlN0b3JlPC9hPjx1bCByb2xlPSJtZW51IiBjbGFzcz0iIG5hdi1sZXZlbDIgIGxpc3QtdW5zdHlsZWQiPjxsaSByb2xlPSJub25lIiBjbGFzcz0ibm9DaGlsZHJlbiBpblBhdGggIGFjdGl2ZSBmaXJzdEluTGV2ZWwiPjxhIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvc3RhbmRhcmRzLWNhdGFsb2d1ZS9icm93c2UtYnktaWNzLmh0bWwiICBjbGFzcz0ibmF2LWxpbmsgIj5TdGFuZGFyZHMgY2F0YWxvZ3VlPC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3B1YmxpY2F0aW9uLWxpc3QuaHRtbCI+UHVibGljYXRpb25zIGFuZCBwcm9kdWN0czwvYT48L2xpPjwvdWw+PCEtLSBjbG9zZSBvZiB1bCBsZXZlbCAtLT48L2xpPjwvdWw+PCEtLSBjbG9zZSBvZiB1bCBsZXZlbCAtLT48L25hdj48L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvbWFpbj4KICAgIDxmb290ZXIgcm9sZT0iY29udGVudGluZm8iIGFyaWEtbGFiZWw9IkZvb3RlciIgY2xhc3M9ImZvb3Rlci1pc28gZm9vdGVyLWRhcmsgYmctZGFya2VyZ3JheSI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWxpbmtzIGNlbnRlci1ibG9jayI+CiAgICAgICAgICA8IS0tIEZPT1RFUiBMSU5LUyAtLT4KICAgICAgICAgIDxuYXYgcm9sZT0ibmF2aWdhdGlvbiIgYXJpYS1sYWJlbD0iSW5saW5lIE5hdmlnYXRpb24iIGNsYXNzPSIiIGlkPSIiPjx1bCByb2xlPSJtZW51YmFyIiBjbGFzcz0ibGlzdC1pbmxpbmUgY2xlYXJmaXggIG5hdi1sZXZlbDEgIj48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4gZmlyc3RJbkxldmVsIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL2lzby1uYW1lLWFuZC1sb2dvLmh0bWwiPklTTyBuYW1lIGFuZCBsb2dvPC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3ByaXZhY3ktYW5kLWNvcHlyaWdodC5odG1sIj5Qcml2YWN5IGFuZCBjb3B5cmlnaHQ8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvY29va2llcy5odG1sIj5Db29raWUgcG9saWN5PC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIj48YSByb2xlPSJtZW51aXRlbSIgaHJlZj0iL3dvcmtpbmctd2l0aC1pc28uaHRtbCIgIGNsYXNzPSJuYXYtbGluayAiPkpvYnM8L2E+PC9saT48bGkgcm9sZT0ibm9uZSIgY2xhc3M9Im5vQ2hpbGRyZW4iPjxhIGNsYXNzPSJuYXYtbGluayAiIHJvbGU9Im1lbnVpdGVtIiBocmVmPSIvZnJlcXVlbnRseS1hc2tlZC1xdWVzdGlvbnMtZmFxcy5odG1sIj5GQVFzPC9hPjwvbGk+PGxpIHJvbGU9Im5vbmUiIGNsYXNzPSJub0NoaWxkcmVuIj48YSBjbGFzcz0ibmF2LWxpbmsgIiByb2xlPSJtZW51aXRlbSIgaHJlZj0iL2NvbnRhY3QtaXNvLmh0bWwiPkNvbnRhY3QgSVNPPC9hPjwvbGk+PC91bD48IS0tIGNsb3NlIG9mIHVsIGxldmVsIC0tPjwvbmF2PjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1zb2NpYWwgY2xlYXJmaXgiPgogICAgICAgICAgPHVsIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cHM6Ly9zY2hlbWEub3JnL09yZ2FuaXphdGlvbiI+CiAgICAgICAgICAgIDxsaW5rIGl0ZW1wcm9wPSJ1cmwiIGhyZWY9Imh0dHBzOi8vd3d3Lmlzby5vcmcvIj4KICAgICAgICAgICAgPGxpPjxhIGl0ZW1wcm9wPSJzYW1lQXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBocmVmPSJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9pc29zdGFuZGFyZHMiIHRpdGxlPSJMaW5rZWRpbiI+PGkgY2xhc3M9ImJpLWxpbmtlZGluIj48L2k+PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBpdGVtcHJvcD0ic2FtZUFzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9pc29zdGFuZGFyZHMiIHRpdGxlPSJUd2l0dGVyIj48aSBjbGFzcz0iYmktdHdpdHRlciI+PC9pPjwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaXRlbXByb3A9InNhbWVBcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pc29zdGFuZGFyZHMiIHRpdGxlPSJGYWNlYm9vayI+PGkgY2xhc3M9ImJpLWZhY2Vib29rIj48L2k+PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBpdGVtcHJvcD0ic2FtZUFzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vdXNlci9QbGFuZXRJU08iIHRpdGxlPSJZb3VUdWJlIj48aSBjbGFzcz0iYmkteW91dHViZSI+PC9pPjwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaXRlbXByb3A9InNhbWVBcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGhyZWY9Imh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vaXNvc3RhbmRhcmRzIiB0aXRsZT0iSW5zdGFncmFtIj48aSBjbGFzcz0iYmktaW5zdGFncmFtIj48L2k+PC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIDxwIGNsYXNzPSJsZWFkIj5HcmVhdCB0aGluZ3MgaGFwcGVuIHdoZW4gdGhlIHdvcmxkIGFncmVlczwvcD4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTggY29sLW1kLW9mZnNldC0yIHB1bGwtbGVmdCI+CiAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXhzIj5XZSBhcmUgY29tbWl0dGVkIHRvIGVuc3VyaW5nIHRoYXQgb3VyIHdlYnNpdGUgaXMgYWNjZXNzaWJsZSB0byBldmVyeW9uZS4gSWYgeW91IGhhdmUgYW55IHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyByZWdhcmRpbmcgdGhlIGFjY2Vzc2liaWxpdHkgb2YgdGhpcyBzaXRlLCBwbGVhc2UgPGEgaHJlZj0ibWFpbHRvOndlYm1hc3RlckBpc28ub3JnP3N1YmplY3Q9QWNjZXNzaWJpbGl0eSIgc3R5bGU9IndoaXRlLXNwYWNlOiBub3dyYXAiPmNvbnRhY3QgdXM8L2E+LjwvcD4KICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtc20iPjxhIGhyZWY9IiNjb3B5cmlnaHQiIHRhcmdldD0iX3NlbGYiIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9ImNvcHlyaWdodCI+wqkgQWxsIFJpZ2h0cyBSZXNlcnZlZDwvYT4gPHNwYW4gaWQ9ImNvcHlyaWdodCIgY2xhc3M9ImNvbGxhcHNlIj5BbGwgSVNPIHB1YmxpY2F0aW9ucyBhbmQgbWF0ZXJpYWxzIGFyZSBwcm90ZWN0ZWQgYnkgY29weXJpZ2h0IGFuZCBhcmUgc3ViamVjdCB0byB0aGUgdXNlcuKAmXMgYWNjZXB0YW5jZSBvZiBJU0/igJlzIGNvbmRpdGlvbnMgb2YgY29weXJpZ2h0LiBBbnkgdXNlLCBpbmNsdWRpbmcgcmVwcm9kdWN0aW9uIHJlcXVpcmVzIG91ciB3cml0dGVuIHBlcm1pc3Npb24uIEFsbCBjb3B5cmlnaHQgcmVxdWVzdHMgc2hvdWxkIGJlIGFkZHJlc3NlZCB0byA8YSBocmVmPSJtYWlsdG86Y29weXJpZ2h0QGlzby5vcmciPmNvcHlyaWdodEBpc28ub3JnPC9hPi48L3NwYW4+PC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJ0b3BiYXIiPgogICAgICAgIDxkaXYgY2xhc3M9InRvcGJhci1jb250ZW50Ij4KICAgICAgICAgIDxhIGNsYXNzPSJsb2dvIGlzb2xvZ28gbG9nby14cyB0aGVtZS1yZWQgcG93ZXJlZGJ5IHBhZ2Utc2Nyb2xsIGxvZ28tc2Nyb2xsVG9wIiBocmVmPSIjcGFnZS10b3AiIHRpdGxlPSJTY3JvbGwgdG8gdG9wIj48L2E+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3dlcmVkYnktdHh0Ij5Qb3dlcmVkIGJ5PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJydWJiZXIiPjwvZGl2PgogICAgPC9mb290ZXI+CgogICAgPC9ib2R5Pgo8L2h0bWw+
148
- recorded_at: Mon, 24 Oct 2022 10:31:36 GMT
149
- recorded_with: VCR 6.1.0