relaton 1.7.pre7 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/macos.yml +34 -0
  3. data/.github/workflows/ubuntu.yml +32 -0
  4. data/.github/workflows/windows.yml +35 -0
  5. data/docs/README.adoc +3 -233
  6. data/lib/relaton/config.rb +2 -3
  7. data/lib/relaton/db.rb +35 -247
  8. data/lib/relaton/db_cache.rb +6 -28
  9. data/lib/relaton/processor.rb +0 -11
  10. data/lib/relaton/registry.rb +1 -1
  11. data/lib/relaton/version.rb +1 -1
  12. data/lib/relaton.rb +7 -8
  13. data/relaton.gemspec +6 -8
  14. data/spec/relaton/db_cache_spec.rb +1 -1
  15. data/spec/relaton/db_spec.rb +0 -145
  16. data/spec/relaton/processor_spec.rb +0 -4
  17. data/spec/relaton/regirtry_spec.rb +44 -54
  18. data/spec/relaton_spec.rb +19 -120
  19. data/spec/vcr_cassetes/19133_2005.yml +20 -20
  20. data/spec/vcr_cassetes/cc_dir_10005_2019.yml +10 -10
  21. data/spec/vcr_cassetes/fisp_140.yml +6 -6
  22. data/spec/vcr_cassetes/gb_t_20223_2006.yml +11 -15
  23. data/spec/vcr_cassetes/ieee_528_2019.yml +17 -17
  24. data/spec/vcr_cassetes/iho_b_11.yml +15 -15
  25. data/spec/vcr_cassetes/iso_111111119115_1.yml +5 -5
  26. data/spec/vcr_cassetes/iso_19115.yml +22 -22
  27. data/spec/vcr_cassetes/iso_19115_1.yml +20 -20
  28. data/spec/vcr_cassetes/iso_19115_1_2.yml +39 -39
  29. data/spec/vcr_cassetes/iso_awi_24229.yml +22 -22
  30. data/spec/vcr_cassetes/ogc_19_025r1.yml +1902 -2554
  31. data/spec/vcr_cassetes/ogm_ami4ccm_1_0.yml +7 -7
  32. data/spec/vcr_cassetes/rfc_8341.yml +15 -47
  33. data/spec/vcr_cassetes/sp_800_38b.yml +6 -6
  34. data/spec/vcr_cassetes/un_rtade_cefact_2004_32.yml +30 -30
  35. data/spec/vcr_cassetes/w3c_json_ld11.yml +12 -12
  36. metadata +51 -61
  37. data/.github/workflows/rake.yml +0 -46
  38. data/globalcache/iec/iec_60050_102_2007.xml +0 -58
  39. data/globalcache/iec/version +0 -1
  40. data/lib/relaton/workers_pool.rb +0 -23
  41. data/spec/vcr_cassetes/cie_001_1980.yml +0 -120
  42. data/spec/vcr_cassetes/ecma_6.yml +0 -159
  43. data/spec/vcr_cassetes/hist_cmbined_included.yml +0 -105
  44. data/spec/vcr_cassetes/iec_60050_102_2007.yml +0 -285
  45. data/spec/vcr_cassetes/iec_combined_included.yml +0 -945
  46. data/spec/vcr_cassetes/iso_combined_applied.yml +0 -361
  47. data/spec/vcr_cassetes/iso_combined_included.yml +0 -361
  48. data/spec/vcr_cassetes/itu_combined_included.yml +0 -1296
  49. data/spec/vcr_cassetes/rfc_unsuccess.yml +0 -70
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v1.3.0
11
+ - Faraday v1.0.1
12
12
  Accept-Encoding:
13
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
14
  Accept:
@@ -19,7 +19,7 @@ http_interactions:
19
19
  message: OK
20
20
  headers:
21
21
  Date:
22
- - Thu, 25 Mar 2021 18:10:08 GMT
22
+ - Wed, 25 Nov 2020 23:46:33 GMT
23
23
  Cache-Control:
24
24
  - no-cache="set-cookie"
25
25
  Content-Type:
@@ -29,7 +29,7 @@ http_interactions:
29
29
  X-Content-Type-Options:
30
30
  - nosniff
31
31
  X-Dispatcher:
32
- - dispatcher2useast1
32
+ - dispatcher1useast1
33
33
  X-Frame-Options:
34
34
  - SAMEORIGIN
35
35
  - SAMEORIGIN
@@ -38,9 +38,9 @@ http_interactions:
38
38
  Content-Length:
39
39
  - '883'
40
40
  Set-Cookie:
41
- - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7F28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;Secure
42
- - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7F28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
43
- - TS01247332=01c1c020ddc656eb775d0575933515477cf404190d19ae9e1f29c0293afc932e6b2ebd67417934d6dab6f3084f5e3a725c956808a4df8ce58d4e734455b2b3b91f7d65827c2615293e68c1aa0b93b9e40d6e095e10;
41
+ - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7FFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;Secure
42
+ - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7FFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
43
+ - TS01247332=01c1c020dd320996a1f4b8163b01b0f6b96cdddd4a4d7d477cc572a0ac50feb11aada4adedd23fb3b77f48c4a47be3f2222674d0682a6ec0287a0ebc1ff59e958738a358ecb203b44c4be975aac113d9bbdfe97693;
44
44
  Path=/
45
45
  Connection:
46
46
  - close
@@ -53,7 +53,7 @@ http_interactions:
53
53
  string: '{"status":"success","code":200,"message":"{\"response\":{\"Facets\":[{\"facetId\":1,\"facetName\":\"contentType\",\"multiselect\":true,\"facets\":[{\"facetValueName\":\"Project\",\"facetValueId\":4294967250,\"selected\":false},{\"facetValueName\":\"Standard\",\"facetValueId\":4294967245,\"selected\":false}],\"sortOrder\":1},{\"facetId\":3,\"facetName\":\"standardTopics\",\"multiselect\":true,\"facets\":[{\"facetValueName\":\"Aerospace
54
54
  Electronics\",\"facetValueId\":4294967248,\"selected\":false},{\"facetValueName\":\"Nuclear
55
55
  Power\",\"facetValueId\":4294967275,\"selected\":false},{\"facetValueName\":\"Power
56
- and Energy\",\"facetValueId\":4294967279,\"selected\":false}],\"sortOrder\":45}],\"searchResults\":{\"resultsMapList\":[{\"record\":{\"recordTitle\":\"IEEE
56
+ and Energy\",\"facetValueId\":4294967279,\"selected\":false}],\"sortOrder\":38}],\"searchResults\":{\"resultsMapList\":[{\"record\":{\"recordTitle\":\"IEEE
57
57
  528-2019 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"IEEE
58
58
  <endeca_term>528-2019<\/endeca_term> - IEEE Standard for Inertial Sensor Terminology\",\"recordURL\":\"https://standards.ieee.org/content/ieee-standards/en/standard/528-2019.html\"}},{\"record\":{\"recordTitle\":\"IEEE
59
59
  528-2019 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"IEEE
@@ -90,7 +90,7 @@ http_interactions:
90
90
  293-1969/Cor 1-2014 - IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
91
91
  Spring-Restrained Rate Gyros ...\",\"recordURL\":\"https://standards.ieee.org/standard/293-1969-Cor1-2014.html\"}}],\"totalNumberOfResults\":24,\"start\":0,\"offset\":0,\"recordsPerPage\":10}}}"}'
92
92
  http_version:
93
- recorded_at: Thu, 25 Mar 2021 18:10:07 GMT
93
+ recorded_at: Wed, 25 Nov 2020 23:46:33 GMT
94
94
  - request:
95
95
  method: get
96
96
  uri: https://standards.ieee.org/standard/528-2019.html
@@ -99,7 +99,7 @@ http_interactions:
99
99
  string: ''
100
100
  headers:
101
101
  User-Agent:
102
- - Faraday v1.3.0
102
+ - Faraday v1.0.1
103
103
  Accept-Encoding:
104
104
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
105
105
  Accept:
@@ -110,7 +110,7 @@ http_interactions:
110
110
  message: OK
111
111
  headers:
112
112
  Date:
113
- - Thu, 25 Mar 2021 18:10:08 GMT
113
+ - Wed, 25 Nov 2020 23:46:34 GMT
114
114
  Accept-Ranges:
115
115
  - bytes
116
116
  Cache-Control:
@@ -118,7 +118,7 @@ http_interactions:
118
118
  Content-Type:
119
119
  - text/html;charset=utf-8
120
120
  Last-Modified:
121
- - Thu, 25 Mar 2021 00:17:51 GMT
121
+ - Wed, 25 Nov 2020 23:46:34 GMT
122
122
  Vary:
123
123
  - Host,Accept-Encoding,User-Agent
124
124
  X-Content-Type-Options:
@@ -130,11 +130,11 @@ http_interactions:
130
130
  X-Vhost:
131
131
  - standards.ieee.org
132
132
  Content-Length:
133
- - '14961'
133
+ - '15192'
134
134
  Set-Cookie:
135
- - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88AD28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;Secure
136
- - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88AD28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
137
- - TS01247332=01c1c020ddd70eb24f1ba3b500be6b5c7e24c7f152a9d8a599fa8bd2a4aee6aa410e9aaccf85a22cbd9b64389f3fb2479ec7659a88b03007dea5da64a1febc208c4bae568cfd9804ce4fdbdb2eba1548bf694fe649;
135
+ - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7F28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;Secure
136
+ - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41093F0BE677C154DE9C3A182DFDDF69EB7F28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
137
+ - TS01247332=01c1c020dd945478f29ed37562ad8c0f3c83f0b75aa6cdd6c2180e7c0b6e521a56609150049f3a615e22c20bef6acb304b7e0bd020786a0827d58c5eef1bf904b71aa02b8593861cc1fad4322a03a2dd4db0d63f18;
138
138
  Path=/
139
139
  Connection:
140
140
  - close
@@ -145,7 +145,7 @@ http_interactions:
145
145
  body:
146
146
  encoding: ASCII-8BIT
147
147
  string: !binary |-
148
- CjwhRE9DVFlQRSBIVE1MPgo8aHRtbD4KICAgIDxoZWFkPgoKPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iLz4KCjwhLS0gR2xvYmFsIHNpdGUgdGFnIChndGFnLmpzKSAtIEdvb2dsZSBBbmFseXRpY3MgLSBTdGFydCAtLT4KPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6DQpuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sDQpqPWQuY3JlYXRlRWxlbWVudChzKSxkbD1sIT0nZGF0YUxheWVyJz8nJmw9JytsOicnO2ouYXN5bmM9dHJ1ZTtqLnNyYz0NCidodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsNCn0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnZGF0YUxheWVyJywnR1RNLU1SOFQ4NDMnKTs8L3NjcmlwdD4NCjxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0iYnUxZ21XNE1LeThXYXctMHc4UFE3ZFNCRjNzQW5ZVGRobEtDR3dPQndCSSIgLz4NCgo8IS0tIEdsb2JhbCBzaXRlIHRhZyAoZ3RhZy5qcykgLSBHb29nbGUgQW5hbHl0aWNzIC0gRW5kIC0tPgoKCgoKCQoJCTxtZXRhIG5hbWU9ImRlcyIvPgoJCTxtZXRhIG5hbWU9IlN0ZFJlY05vIiBjb250ZW50PSI3MjkyIi8+CgkJPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5zb3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuIi8+CgkJPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3kiLz4KCQk8bWV0YSBuYW1lPSJzdGF0dXMiLz4KCQk8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iSUVFRSA1Mjg/LCBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neSwgaW5lcnRpYWwgc2Vuc29yIHRlcm1pbm9sb2d5Ii8+CgkJPG1ldGEgbmFtZT0iU29jaWV0eSIgY29udGVudD0iSUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5Ii8+CgkJPG1ldGEgbmFtZT0idHlwZSIgY29udGVudD0iU3RhbmRhcmQiLz4KCgkJPG1ldGEgbmFtZT0idG9waWMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgoKCQkKCQoKCgogICAgCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjLmNsaWVudGxpYnMvZm91bmRhdGlvbi9jbGllbnRsaWJzL21haW4ubWluLmI0OTk0Nzg4Y2YxZWFlZWQzMDBhMGFhN2FmNTNmM2M4LmNzcyIgdHlwZT0idGV4dC9jc3MiPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL2pxdWVyeS5taW4uMTQ5NGMwYWJiZTUwMTMwMWUyYWI5ZGFlY2M2MDgyYTguanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL3V0aWxzLm1pbi40YTE5MmI1OTBhMmMyOTI2ZmIwMDAyNjQzNzBjMDU4OC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9jbGllbnRsaWJzL2dyYW5pdGUvanF1ZXJ5L2dyYW5pdGUubWluLjU0M2QyMTRjODhkZmE2ZjRhMzIzM2I2MzBjODJkODc1LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9qcXVlcnkubWluLmRkOWIzOTVjNzQxY2UyNzg0MDk2ZTI2NjE5ZTE0OTEwLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9zaGFyZWQubWluLjlmMzcxNmIyYzQ3M2ZkNTNhYjMxYjFjYWE1MzEzMWE4LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9tYWluLm1pbi5hNmZhYWZiZWVkMjRmNWQ0MGFhZjM2N2M3Nzg3NTNhYi5qcyI+PC9zY3JpcHQ+CgoKCiAgICAKICAgIDxsaW5rIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCgoKCgoKCgoKCgoKCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQogICAgICANCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvYm9vdHN0cmFwLm1pbi40MTVlOTBjZGMyOTc5ZWZmZWNiMWE4NzgzZmQyOTM3NC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvZGF0YXRhYmxlLm1pbi4zMmRhN2E5ZDQ3NDQ3M2I4MDVjODdkYTJiNzQ0MGU3YS5jc3MiIHR5cGU9InRleHQvY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYmFzZS5taW4uYzAzYTQ4ZGJiMzBlYmM1YWI2NTlhNGZiMzlhMDEyZjYuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCg0KCiAgICAKCgoNCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvanF1ZXJ5Lm1pbi43NzEyZjAxOTlkYWUzZGY4YTU3MTBlYjY5OGYzM2E4Mi5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9qcXVlcnlfZm9ybS5taW4uYWFkY2VhMzZmYjYyN2Y0MWQ2MWJjNTFlZWFiYzJkMzAuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9qcXVlcnlfdmFsaWRhdG9yLm1pbi40NDljNzRmNjFjYTU1YmJlYzVlZDM5MzA1ZWRhMTY2MS5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9kYXRhdGFibGUubWluLmUwMTZkYmVlMzA4N2ZmMTE5MzM1NzczZGNiOGJiMGVmLmpzIj48L3NjcmlwdD4KCgoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS90aGlyZHBhcnR5L2Jvb3RzdHJhcC5taW4uZjJlOTE4YTJkNGViZmNlNDg1Zjg3MjE3Y2VkMzA0OWIuanMiPjwvc2NyaXB0PgoKCgo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLWNvcmUvY2xpZW50bGlicy9iYXNlLm1pbi5iOTMwZWFiYTg5NWFlMmFiZGFjOTE1ZDNjMzhmNDNlNS5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoNCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+CiAgICAgIAoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2Jhc2UubWluLjZkOTNlMmYwODg1ZDcxZTkxZmM5MjJiZjA1YTVjMTljLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCgoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2NsaWVudGxpYnMvdGhpcmRwYXJ0eS9mb250LWF3ZXNvbWUubWluLmQxZTY4OWM4YmJmZTMyZGZiY2I3NzIxMTAyYmJhMzc4LmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCgoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL3RoaXJkcGFydHkvb3Blbi1zYW5zLm1pbi5iNjM0NTUxODEwMDU1MTRiMTdlMWMzNjhkNDgxMDMwOC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoKCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2NsaWVudGxpYnMvZ3Jhbml0ZS9oYW5kbGViYXJzLm1pbi41NjYzM2JkYmVjMTlkYmRhYjNkZTNjOThiMTgyY2QwNS5qcyI+PC9zY3JpcHQ+CgoKCg0KCgoKICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vcGxhdGZvcm0tYXBpLnNoYXJldGhpcy5jb20vanMvc2hhcmV0aGlzLmpzI3Byb3BlcnR5PTVhNjlmYmU2MWM1ZDU5MDAxM2I0ZGUzYSZwcm9kdWN0PXNvcCIgYXN5bmM9ImFzeW5jIj48L3NjcmlwdD4KCgo8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3ZuZC5taWNyb3NvZnQuaWNvbiIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2Zhdmljb24uaWNvIi8+CjxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgdHlwZT0iaW1hZ2Uvdm5kLm1pY3Jvc29mdC5pY29uIiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvZmF2aWNvbi5pY28iLz4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNTd4NTciIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9hcHBsZV9mYXZpY29uLnBuZyIvPgoKPHRpdGxlPklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3k8L3RpdGxlPgoKPCEtLSBHRFBSIENvb2tpZSBCYW5uZXIgLSBTdGFydCAtLT4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vczMtdXMtd2VzdC0yLmFtYXpvbmF3cy5jb20vaWVlZXNodXRwYWdlcy9nZHByL3NldHRpbmdzLmpzIj48L3NjcmlwdD4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uY3NzIi8+CjxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9jb29raWVjb25zZW50Mi8zLjAuMy9jb29raWVjb25zZW50Lm1pbi5qcyI+PC9zY3JpcHQ+CjwhLS0gR0RQUiBDb29raWUgQmFubmVyIC0gRW5kIC0tPgo8L2hlYWQ+CiAgICA8Ym9keT4KCjxib2R5PgoJPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9InNoYXJldGhpcy1lbmFibGVkIiBuYW1lPSJzaGFyZXRoaXMtZW5hYmxlZCIgdmFsdWU9InRydWUiLz4KCQogICAgPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KICAgIDxub3NjcmlwdD48aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vbnMuaHRtbD9pZD1HVE0tTVI4VDg0MyINCmhlaWdodD0iMCIgd2lkdGg9IjAiIHN0eWxlPSJkaXNwbGF5Om5vbmU7dmlzaWJpbGl0eTpoaWRkZW4iPjwvaWZyYW1lPjwvbm9zY3JpcHQ+CiAgICA8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KICAgIAogICAgPGRpdiBjbGFzcz0ic2hhcmV0aGlzLWlubGluZS1zaGFyZS1idXR0b25zIj48L2Rpdj4KCTxkaXYgaWQ9InBhZ2Utd3JhcHBlciIgY2xhc3M9ImNsZWFyZml4Ij4KCQkKCjwhLS0gSGVhZGVyCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KPGhlYWRlciBpZD0icGFnZS1oZWFkZXIiIGNsYXNzPSJoZWFkZXIiIHN0eWxlPSJwb3NpdGlvbjpmaXhlZCI+CiAgICAKCgoKCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJuZXdwYXIgbmV3IHNlY3Rpb24iPgoKPC9kaXY+CgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0icGFyIGlwYXJ5c19pbmhlcml0ZWQiPgoKICAgIAogICAgCiAgICAKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Imdsb2JhbC1tZXRhLW5hdi1oZWFkZXIiPgoKCjwhLS0gR2xvYmFsIE1ldGEtTmF2IEhlYWRlciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KPGRpdiBjbGFzcz0iZ2xvYmFsLW1ldGEgaGlkZGVuLXNtIGhpZGRlbi14cyI+Cgk8bmF2IGlkPSJsZWZ0LXNpZGUtbWV0YW5hdi1saW5rcyIgY2xhc3M9Im1ldGEtbmF2Ij4KCQkNCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvaW5kZXguaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUub3JnDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cDovL2llZWV4cGxvcmUuaWVlZS5vcmcvWHBsb3JlL2hvbWUuanNwIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUVFRSBYcGxvcmUgRGlnaXRhbCBMaWJyYXJ5DQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUVFRSBTdGFuZGFyZHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3NwZWN0cnVtLmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUgU3BlY3RydW0NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9zaXRlbWFwLmh0bWwiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Nb3JlIFNpdGVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoJPC9uYXY+Cgk8bmF2IGlkPSJyaWdodC1zaWRlLW1ldGFuYXYtbGlua3MiIGNsYXNzPSJtZXRhLW5hdiI+CgkJDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvZXRvb2xzLyIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+ZVRvb2xzwqAgwqDCoCDCoA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIDwvdWw+DQoNCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+DQoKCQkNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS0gUmVzcG9uc2l2ZSBJbWFnZSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8ZGl2IGNsYXNzPSJyZXNwb25zaXZlLWltZyI+DQogICAgDQoNCiAgICANCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvIiB0YXJnZXQ9Il9zZWxmIiBzdHlsZT0id2lkdGg6MTAwJSI+DQogICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLWxvZ28td2hpdGUuZ2lmIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUiIGFsdD0iSUVFRSBsb2dvIHNtYWxsIi8+DQogICAgICAgICAgICA8L2ltZz4NCiAgICAgICAgPC9hPg0KICAgIA0KICAgIA0KPC9kaXY+DQo8IS0tIEVuZCBSZXNwb25zZSBJbWFnZSBDb250ZW50IC0tPgoJPC9uYXY+CjwvZGl2Pgo8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPgoJLm1ldGEtbmF2IC5saW5rLWxpc3QgbGkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0KCS5tZXRhLW5hdj4ubGluay1saXN0IGxpIGEge2NvbG9yOiB9CgkuZ2xvYmFsLW1ldGEge2JhY2tncm91bmQ6IH0KPC9zdHlsZT4KPCEtLSBFbmQgR2xvYmFsIE1ldGEtTmF2IEhlYWRlciBDb250ZW50IC0tPgo8L2Rpdj4KCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlLWhlYWRlci1jb250YWluZXIiPgo8IS0tUGFnZSBIZWFkZXIgQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CiAgIAogICAKCgogCgoKPGRpdiBjbGFzcz0icGFnZS1oZWFkZXItY29udGFpbmVyIj4KICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyLWJsb2NrIj4KICAgICAgICAgPGRpdiBjbGFzcz0ibG9nbyI+CgkJCTwhLS0gTWFpbiBsb2dvIENvbnRlbnQgLS0+CgkJCQoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciIGNsYXNzPSJuby1zaG93LXNjcm9sbC1kb3duIj4KCQkJCSAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLXNhLWxvZ28tdGV4dC5wbmciIGFsdD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyIgdGl0bGU9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSBzY3JvbGwtdXAtbG9nby1pbWFnZSIvPgoJCQkJPC9hPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciIGNsYXNzPSJuby1zaG93LXJlZ3VsYXIiPgoJCQkJICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2xvZ29zL2llZWUtc2EtbG9nby1zbWFsbC5wbmciIGFsdD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyIgdGl0bGU9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSBzY3JvbGwtZG93bi1sb2dvLWltYWdlIi8+CgkJCQk8L2E+CgkJCQoJCQk8IS0tIE1haW4gbG9nbyBDb250ZW50IGVuZCAtLT4KCgkJCTwhLS0gUGxhdGZvcm0gZ3JhcGhpYyBDb250ZW50IC0tPgoJCQkKCQkJCTxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIiBjbGFzcz0ibm8tc2hvdy1zY3JvbGwtZG93biI+CgkJCQkgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvbG9nb3MvcGxhdGZvcm1fZ3JhcGhpY190b3Bfc3BhY2UucG5nIiBhbHQ9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIHRpdGxlPSJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUgcGxhdGZvcm0tZ3JhcGhpYy1pbWFnZSIvPgoJCQkJPC9hPgoJCQkKCQkJPCEtLSBQbGF0Zm9ybSBncmFwaGljIENvbnRlbnQgZW5kIC0tPgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLWJhci1jb21wIj4KICAgICAgICAgICAgDQoNCjwhLS0gU2lnaHRseSBnbG9iYWwgb2JqZWN0cyBkZWNsYXJhdGlvbg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQo8IS0tICNzaWdodGx5LWdsb2JhbC1vYmplY3RzLWRlY2xhcmF0aW9uIGVuZCAtLT4NCg0KPCEtLSBQbGFjZWhvbGRlciBDb250ZW50IG9taXR0ZWQgc2luY2Ugc2VhcmNoIHdpbGwgYmUgb24gaGVhZGVyLg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPiAgICAgICAgIA0KPCEtLSAjcGxhY2Vob2xkZXItY29udGVudCBlbmQgLS0+DQoNCjwhLS0gU2VhcmNoIFVJIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGZvcm0gYWN0aW9uPSIvc2VhcmNoLXJlc3VsdHMuaHRtbCIgcm9sZT0ic2VhcmNoIiBpZD0ic2VhcmNoRm9ybSI+DQoJPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAgc2VhcmNoLWJhciI+DQoJCTxpbnB1dCB0eXBlPSJzZWFyY2giIG5hbWU9InEiIGlkPSJxIiB0aXRsZT0iU2VhcmNoIGFsbCBJRUVFIHdlYnNpdGVzIiBwbGFjZWhvbGRlcj0iU2VhcmNoIiBjbGFzcz0icmVxdWlyZWQgZm9ybS1jb250cm9sIi8+IA0KCQk8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYWRkb24iIGlkPSJzZWFyY2hTdWJtaXRCdXR0b24iPg0KCQkJPGkgY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIj48L2k+DQoJCTwvc3Bhbj4NCgk8L2Rpdj4NCjwvZm9ybT4NCjwhLS0gI3NlYXJjaCBVSSBjb250ZW50IGVuZCAtLT4JICAgICAgICAgICAgCiAgICAgICAgIDwvZGl2PgoJCSA8IS0tIE1vYmlsZSBsb2dvIENvbnRlbnQgLS0+CiAgICAgICAgIDxkaXYgY2xhc3M9ImllZWUtbG9nbyBoaWRkZW4tbWQgaGlkZGVuLWxnIj4KICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KIA0KDQoNCjwhLS0gTG9nbyBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iPg0KICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2xvZ29zL2llZWUtbG9nby13aGl0ZS5wbmciIGFsdD0iSUVFRSBsb2dvIiB0aXRsZT0iSUVFRSBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUiLz4NCjwvYT4NCjwhLS0gI2xvZ28tY29udGVudCBlbmQgLS0+DQoKICAgICAgICAgPC9kaXY+CgkJPCEtLSBNb2JpbGUgbG9nbyBDb250ZW50IGVuZCAtLT4KICAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICA8ZGl2IGNsYXNzPSJzaXRlLW5hdmlnYXRpb24iPgogICAgICAKPCEtLSBTaWdodGx5IGdsb2JhbCBvYmplY3RzIGRlY2xhcmF0aW9uCiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCjwhLS0gI3NpZ2h0bHktZ2xvYmFsLW9iamVjdHMtZGVjbGFyYXRpb24gZW5kIC0tPiAKCgo8bmF2PgogICA8IS0tIEJyYW5kIGFuZCB0b2dnbGUgZ2V0IGdyb3VwZWQgZm9yIGJldHRlciBtb2JpbGUgZGlzcGxheSAtLT4KICAgPGRpdiBjbGFzcz0ibmF2YmFyLWhlYWRlciI+CiAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSBjb2xsYXBzZWQiPgogICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIgbmF2LWJhcjEiPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIG5hdi1iYXIyIj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciBuYXYtYmFyMyI+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iY2xvc2UtaWNvbiI+CiAgICAgIDxpbWcgc3JjPSdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlhWE52TFRnNE5Ua3RNU0kvUGdvOElTMHRJRWRsYm1WeVlYUnZjam9nUVdSdlltVWdTV3hzZFhOMGNtRjBiM0lnTVRrdU1DNHdMQ0JUVmtjZ1JYaHdiM0owSUZCc2RXY3RTVzRnTGlCVFZrY2dWbVZ5YzJsdmJqb2dOaTR3TUNCQ2RXbHNaQ0F3S1NBZ0xTMCtDanh6ZG1jZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUlnZG1WeWMybHZiajBpTVM0eElpQnBaRDBpVEdGNVpYSmZNU0lnZUQwaU1IQjRJaUI1UFNJd2NIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBMU1USWdOVEV5SWlCemRIbHNaVDBpWlc1aFlteGxMV0poWTJ0bmNtOTFibVE2Ym1WM0lEQWdNQ0ExTVRJZ05URXlPeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJZ2QybGtkR2c5SWpVeE1uQjRJaUJvWldsbmFIUTlJalV4TW5CNElqNEtQR2MrQ2drOFp6NEtDUWs4Y0dGMGFDQmtQU0pOTlRBMUxqazBNeXcyTGpBMU9HTXRPQzR3TnpjdE9DNHdOemN0TWpFdU1UY3lMVGd1TURjM0xUSTVMakkwT1N3d1REWXVNRFU0TERRM05pNDJPVE5qTFRndU1EYzNMRGd1TURjM0xUZ3VNRGMzTERJeExqRTNNaXd3TERJNUxqSTBPU0FnSUNCRE1UQXVNRGsyTERVd09TNDVPRElzTVRVdU16a3NOVEV5TERJd0xqWTRNeXcxTVRKak5TNHlPVE1zTUN3eE1DNDFPRFl0TWk0d01Ua3NNVFF1TmpJMUxUWXVNRFU1VERVd05TNDVORE1zTXpVdU16QTJJQ0FnSUVNMU1UUXVNREU1TERJM0xqSXpMRFV4TkM0d01Ua3NNVFF1TVRNMUxEVXdOUzQ1TkRNc05pNHdOVGg2SWlCbWFXeHNQU0lqTXpNek16TXpJaTgrQ2drOEwyYytDand2Wno0S1BHYytDZ2s4Wno0S0NRazhjR0YwYUNCa1BTSk5OVEExTGprME1pdzBOell1TmprMFRETTFMak13Tml3MkxqQTFPV010T0M0d056WXRPQzR3TnpjdE1qRXVNVGN5TFRndU1EYzNMVEk1TGpJME9Dd3dZeTA0TGpBM055dzRMakEzTmkwNExqQTNOeXd5TVM0eE56RXNNQ3d5T1M0eU5EaHNORGN3TGpZek5pdzBOekF1TmpNMklDQWdJR00wTGpBek9DdzBMakF6T1N3NUxqTXpNaXcyTGpBMU9Dd3hOQzQyTWpVc05pNHdOVGhqTlM0eU9UTXNNQ3d4TUM0MU9EY3RNaTR3TVRrc01UUXVOakkwTFRZdU1EVTNRelV4TkM0d01UZ3NORGszTGpnMk5pdzFNVFF1TURFNExEUTROQzQzTnpFc05UQTFMamswTWl3ME56WXVOamswZWlJZ1ptbHNiRDBpSXpNek16TXpNeUl2UGdvSlBDOW5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0Nqd3ZjM1puUGdvPScvPgogICAgICA8L3NwYW4+CiAgICAgIDwvYnV0dG9uPgogICA8L2Rpdj4KICAgPGRpdiBjbGFzcz0iYm94LXNoYWRvdy1saW5lIj48L2Rpdj4KICAgPCEtLSBDb2xsZWN0IHRoZSBuYXYgbGlua3MgLS0+CiAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG1lbnUtdG9nZ2xlIj4KICAgICAgPHVsIGNsYXNzPSJuYXZpZ2F0aW9uLWJhciI+CiAgICAgICAgIAogICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3AtZG93bi1uYXYiPgogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tbGluayIgc3R5bGU9Im1pbi13aWR0aDogODRweDsiPgogICAgICAgICAgICAgICAJCVN0YW5kYXJkcyAKICAgICAgICAgICAgICAgPC9hPgkJCQogICAgICAgICAgICAgICAKCjxkaXYgY2xhc3M9Im1lZ2EtZHJvcGRvd24tbWVudSI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrLWluZm8iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2siPgogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvaW1hZ2VzL25hdi1zdGFuZGFyZHMtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy5jbGllbnRsaWJzL3djbS9mb3VuZGF0aW9uL2NsaWVudGxpYnMvYWNjZXNzaWJpbGl0eS5taW4uNmZlNWQ0NDI3MzYxYTRjMGNhNWE3NTQ1N2UzZTQyNTYuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPkZpbmQgc3RhbmRhcmRzLCBzdGFuZGFyZHMgaW4gZGV2ZWxvcG1lbnQsIGxlYXJuIGFib3V0IHRoZSBTdGFuZGFyZHMgRGV2ZWxvcG1lbnQgTGlmZWN5Y2xlLCBhbmQgbXVjaCBtb3JlITwvc3Bhbj4KPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMiBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3N0YW5kYXJkL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgRmluZCBTdGFuZGFyZHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9qZWN0L2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgIEZpbmQgUHJvamVjdHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9kZXZlbG9wL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgRGV2ZWxvcCBTdGFuZGFyZHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3d3dy50ZWNoc3RyZWV0LmNvbS9pZWVlLyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgIEJ1eSBTdGFuZGFyZHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9pbnRsL2Fkb3B0aW9uLmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgQWRvcHQgU3RhbmRhcmRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZGV2ZWxvcC9ldG9vbHMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBTdGFuZGFyZHMgRGV2ZWxvcG1lbnQgZVRvb2xzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvaWVlZS1nZXQtcHJvZ3JhbS5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIElFRUUgR0VUIFByb2dyYW0KICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgPC91bD4KCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+CgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImNsb3NlLWljb24gaGlkZGVuLXhzIGhpZGRlbi1zbSI+PGltZyBzcmM9ImRhdGE6aW1hZ2UvcG5nK3htbDtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURJQUFBQXlDQVlBQUFBZVA0aXhBQUFBQVhOU1IwSUFyczRjNlFBQSBBV0pwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpIFlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWxoTlVDQkRiM0psSURVdU5DNHdJajRLSUNBZ1BISmsgWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKayBaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQWdJQ0FnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5IElpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaWGhwWmowaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOWwgZUdsbUx6RXVNQzhpUGdvZ0lDQWdJQ0FnSUNBOFpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ1VFkzSmxaVzV6YUc5MCBQQzlsZUdsbU9sVnpaWEpEYjIxdFpXNTBQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnIFBDOXlaR1k2VWtSR1BnbzhMM2c2ZUcxd2JXVjBZVDRLYnN6ZUxnQUFBYkpKUkVGVWFBWHRtbXR1d3lBUWhLMmUgM0Rmd0VUaXF1eVJGY1RHR2ZjeTRKQ3BTWkJ0Mlo3NkIrRWVrTFB1K3IvSXBZMXZlWkFod0t0QnlYWmZEUTdsTiBzMmNSMEZSZ3k3VVZKSzlOR3lhelpjQjY1Q0NwbnZ4NW5pNU1oL1g1U25RS3BnbWpabFFYL3NFTFpHWXpOOXdRIHlzM2tiaVNFQ3JPRUJRQ2hZQXd3SVVjb3VEZGNVQkdLNWtrVGJvU2llOUVOSk5RZEhvKzlZeG94dFJzSHo5bTEgMjBPVVpFaGpwRmJoTTEwUkFBZ05FL1JWY1FRazBudkZFNXIzQUhsNlFwRGFaZ3VZcFZickQ2M1RBR3Bxb0ZCZSBzUjVvYjgzclIrM3JBTXZTYVV6ejY3TzVLWUtiVHNqbmlibERsR1NETUpRUVg4WDgvMXJ0d09BMHlwZU1jaW9WIGl2OVJHV0x1TUowUXFiZm0zelpDcHdaVVUwTkEwMHRhQUMyMWVnSkFwUWZNMHdOQXZaYUlBRVY2cjRrY0t3Z1EgaElZRC9kV0NCRUJxdlFnVmR3eGpobVkzQ3RPUXFmMHIxQjFHZEErNndXSExhRjQwNFFOOGZRdjNoQXZXeEoxbiBtRGRNcUFNN1dnb3poQVZHaElaMU40dTcwUUJuTFRVem1SdXNSSUY2Tlp1Nk1BQVRiUjB5U3NFbW45YVk3bmUxIFFLWVdxTXh0SC9Xbm1qcmtkQ2RSZnkwRk9OWFErVVRXdytRNy9mSHMrRXFzMzl4Wnd0NGpBQXlvQUFBQUFFbEYgVGtTdVFtQ0MiLz48L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+CjwhLS0gI21lZ2EtZHJvcGRvd24tbWVudS1jb250YWluZXIgZW5kIC0tPgoKICAgICAgICAgICAgPC9saT4KICAgICAgICAgCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcC1kb3duLW5hdiI+CiAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJkcm9wZG93bi1saW5rIiBzdHlsZT0ibWluLXdpZHRoOiA4NHB4OyI+CiAgICAgICAgICAgICAgIAkJUHJvZ3JhbXMgJmFtcDsgU2VydmljZXMgCiAgICAgICAgICAgICAgIDwvYT4JCQkKICAgICAgICAgICAgICAgCgo8ZGl2IGNsYXNzPSJtZWdhLWRyb3Bkb3duLW1lbnUiPgogICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jay1pbmZvIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2ltYWdlcy9uYXYtcHJvZHVjdC1zZXJ2aWNlcy1uZXctYnJhbmQuanBnIi8+IAogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQiPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJydGUiPgoKCgogICAgPHNwYW4gY2xhc3M9InBhcmFncmFwaC1zbWFsbCI+T3VyIHByb2dyYW1zIGFuZCBzZXJ2aWNlcyBjb3ZlciB0aGUgY29tcGxldGUgc3RhbmRhcmRzIGRldmVsb3BtZW50IGxpZmVjeWNsZS4uLmFuZCBiZXlvbmQuPC9zcGFuPjxiciAvPgoKPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMiBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL2Ftcy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEFsbGlhbmNlIE1hbmFnZW1lbnQgU2VydmljZXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9pY2FwL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgQ29uZm9ybWl0eSBBc3Nlc3NtZW50IGFuZCBDZXJ0aWZpY2F0aW9uCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaW5pdGlhdGl2ZXMvb3BlbnNvdXJjZS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIElFRUUgU0EgT3BlbiBTb3VyY2UKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9pbmR1c3RyeS1hZmZpbGlhdGUtbmV0d29yay9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEluZHVzdHJ5IEFmZmlsaWF0ZSBOZXR3b3JrCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIAogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPgogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvaW5kdXN0cnktY29ubmVjdGlvbnMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBJbmR1c3RyeSBDb25uZWN0aW9ucwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL05FU0MvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBOYXRpb25hbCBFbGVjdHJpY2FsIFNhZmV0eSBDb2RlCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvcmVnYXV0aC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIFJlZ2lzdHJhdGlvbiBBdXRob3JpdHkKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgPC91bD4KCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+CgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iY2xvc2UtaWNvbiBoaWRkZW4teHMgaGlkZGVuLXNtIj48aW1nIHNyYz0iZGF0YTppbWFnZS9wbmcreG1sO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRElBQUFBeUNBWUFBQUFlUDRpeEFBQUFBWE5TUjBJQXJzNGM2UUFBIEFXSnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGkgWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJbGhOVUNCRGIzSmxJRFV1TkM0d0lqNEtJQ0FnUEhKayBaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprIFppMXplVzUwWVhndGJuTWpJajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTkgSWlJS0lDQWdJQ0FnSUNBZ0lDQWdlRzFzYm5NNlpYaHBaajBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5bCBlR2xtTHpFdU1DOGlQZ29nSUNBZ0lDQWdJQ0E4WlhocFpqcFZjMlZ5UTI5dGJXVnVkRDVUWTNKbFpXNXphRzkwIFBDOWxlR2xtT2xWelpYSkRiMjF0Wlc1MFBnb2dJQ0FnSUNBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0S0lDQWcgUEM5eVpHWTZVa1JHUGdvOEwzZzZlRzF3YldWMFlUNEtic3plTGdBQUFiSkpSRUZVYUFYdG1tdHV3eUFRaEsyZSAzRGZ3RVRpcXV5UkZjVEdHZmN5NEpDcFNaQnQyWjc2QitFZWtMUHUrci9JcFkxdmVaQWh3S3RCeVhaZkRRN2xOIHMyY1IwRlJneTdVVkpLOU5HeWF6WmNCNjVDQ3Budng1bmk1TWgvWDVTblFLcGdtalpsUVgvc0VMWkdZek45d1EgeXMza2JpU0VDck9FQlFDaFlBd3dJVWNvdURkY1VCR0s1a2tUYm9TaWU5RU5KTlFkSG8rOVl4b3h0UnNIejltMSAyME9VWkVoanBGYmhNMTBSQUFnTkUvUlZjUVFrMG52RkU1cjNBSGw2UXBEYVpndVlwVmJyRDYzVEFHcHFvRkJlIHNSNW9iODNyUiszckFNdlNhVXp6NjdPNUtZS2JUc2puaWJsRGxHU0RNSlFRWDhYOC8xcnR3T0EweXBlTWNpb1YgaXY5UkdXTHVNSjBRcWJmbTN6WkNwd1pVVTBOQTAwdGFBQzIxZWdKQXBRZk0wd05BdlphSUFFVjZyNGtjS3dnUSBoSVlEL2RXQ0JFQnF2UWdWZHd4amhtWTNDdE9RcWYwcjFCMUdkQSs2d1dITGFGNDA0UU44ZlF2M2hBdld4SjFuIG1EZE1xQU03V2dvemhBVkdoSVoxTjR1NzBRQm5MVFV6bVJ1c1JJRjZOWnU2TUFBVGJSMHlTc0VtbjlhWTduZTEgUUtZV3FNeHRIL1dubWpya2RDZFJmeTBGT05YUStVVFd3K1E3L2ZIcytFcXMzOXhad3Q0akFBeW9BQUFBQUVsRiBUa1N1UW1DQyIvPjwvYT4KICAgICAgPC9kaXY+CiAgIDwvZGl2Pgo8L2Rpdj4KPCEtLSAjbWVnYS1kcm9wZG93bi1tZW51LWNvbnRhaW5lciBlbmQgLS0+CgogICAgICAgICAgICA8L2xpPgogICAgICAgICAKICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wLWRvd24tbmF2Ij4KICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImRyb3Bkb3duLWxpbmsiIHN0eWxlPSJtaW4td2lkdGg6IDg0cHg7Ij4KICAgICAgICAgICAgICAgCQlQcmFjdGljZSBBcmVhcyAmYW1wOyBGb2N1c2VzIAogICAgICAgICAgICAgICA8L2E+CQkJCiAgICAgICAgICAgICAgIAoKPGRpdiBjbGFzcz0ibWVnYS1kcm9wZG93bi1tZW51Ij4KICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2staW5mbyI+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jayI+CiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9pbWFnZXMvbmF2LXRlY2hub2xvZ3ktaW5pdGlhdGl2ZXMtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPkV4cGxvcmUgaGlnaC1sZXZlbCBpbml0aWF0aXZlcyBhbmQgbmV3IHRlY2hub2xvZ2llcyBpbiBvdXIga2V5IGFyZWFzIG9mIGZvY3VzLjwvc3Bhbj4KPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMiBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luaXRpYXRpdmVzL2FydGlmaWNpYWwtaW50ZWxsaWdlbmNlLXN5c3RlbXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBBcnRpZmljaWFsIEludGVsbGlnZW5jZSBTeXN0ZW1zCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2Nvbm5lY3Rpdml0eS10ZWxlY29tL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgQ29ubmVjdGl2aXR5ICZhbXA7IFRlbGVjb20KICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvZW5lcmd5L2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgRW5lcmd5CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2ZvdW5kYXRpb25hbC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEZvdW5kYXRpb25hbCBUZWNobm9sb2dpZXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvaGVhbHRoY2FyZS1saWZlLXNjaWVuY2VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgSGVhbHRoY2FyZSBhbmQgTGlmZSBTY2llbmNlcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2ludGwvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBQdWJsaWMgUG9saWN5CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJjbG9zZS1pY29uIGhpZGRlbi14cyBoaWRkZW4tc20iPjxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZyt4bWw7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFESUFBQUF5Q0FZQUFBQWVQNGl4QUFBQUFYTlNSMElBcnM0YzZRQUEgQVdKcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaSBZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlsaE5VQ0JEYjNKbElEVXVOQzR3SWo0S0lDQWdQSEprIFpqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmsgWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROSBJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02WlhocFpqMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzlsIGVHbG1MekV1TUM4aVBnb2dJQ0FnSUNBZ0lDQThaWGhwWmpwVmMyVnlRMjl0YldWdWRENVRZM0psWlc1emFHOTAgUEM5bGVHbG1PbFZ6WlhKRGIyMXRaVzUwUGdvZ0lDQWdJQ0E4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRLSUNBZyBQQzl5WkdZNlVrUkdQZ284TDNnNmVHMXdiV1YwWVQ0S2JzemVMZ0FBQWJKSlJFRlVhQVh0bW10dXd5QVFoSzJlIDNEZndFVGlxdXlSRmNUR0dmY3k0SkNwU1pCdDJaNzZCK0Vla0xQdStyL0lwWTF2ZVpBaHdLdEJ5WFpmRFE3bE4gczJjUjBGUmd5N1VWSks5Tkd5YXpaY0I2NUNDcG52eDVuaTVNaC9YNVNuUUtwZ21qWmxRWC9zRUxaR1l6Tjl3USB5czNrYmlTRUNyT0VCUUNoWUF3d0lVY291RGRjVUJHSzVra1Rib1NpZTlFTkpOUWRIbys5WXhveHRSc0h6OW0xIDIwT1VaRWhqcEZiaE0xMFJBQWdORS9SVmNRUWswbnZGRTVyM0FIbDZRcERhWmd1WXBWYnJENjNUQUdwcW9GQmUgc1I1b2I4M3JSKzNyQU12U2FVeno2N081S1lLYlRzam5pYmxEbEdTRE1KUVFYOFg4LzFydHdPQTB5cGVNY2lvViBpdjlSR1dMdU1KMFFxYmZtM3paQ3B3WlVVME5BMDB0YUFDMjFlZ0pBcFFmTTB3TkF2WmFJQUVWNnI0a2NLd2dRIGhJWUQvZFdDQkVCcXZRZ1Zkd3hqaG1ZM0N0T1FxZjByMUIxR2RBKzZ3V0hMYUY0MDRRTjhmUXYzaEF2V3hKMW4gbURkTXFBTTdXZ296aEFWR2hJWjFONHU3MFFCbkxUVXptUnVzUklGNk5adTZNQUFUYlIweVNzRW1uOWFZN25lMSBRS1lXcU14dEgvV25tanJrZENkUmZ5MEZPTlhRK1VUV3crUTcvZkhzK0VxczM5eFp3dDRqQUF5b0FBQUFBRWxGIFRrU3VRbUNDIi8+PC9hPgogICAgICA8L2Rpdj4KICAgPC9kaXY+CjwvZGl2Pgo8IS0tICNtZWdhLWRyb3Bkb3duLW1lbnUtY29udGFpbmVyIGVuZCAtLT4KCiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgIAogICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3AtZG93bi1uYXYiPgogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tbGluayIgc3R5bGU9Im1pbi13aWR0aDogODRweDsiPgogICAgICAgICAgICAgICAJCUdldCBJbnZvbHZlZCAKICAgICAgICAgICAgICAgPC9hPgkJCQogICAgICAgICAgICAgICAKCjxkaXYgY2xhc3M9Im1lZ2EtZHJvcGRvd24tbWVudSI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrLWluZm8iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2siPgogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvaW1hZ2VzL25hdi1wYXJ0aWNpcGF0ZS1uZXctYnJhbmQuanBnIi8+IAogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQiPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJydGUiPgoKCgogICAgPHNwYW4gY2xhc3M9InBhcmFncmFwaC1zbWFsbCI+Sm9pbiBhIGdsb2JhbCBuZXR3b3JrIG9mIGluZHVzdHJ5ICZhbXA7IHRlY2hub2xvZ3kgZXhwZXJ0cyB0aGF0IGNoYW5nZSB0aGUgd2F5IHBlb3BsZSBsaXZlLCB3b3JrLCBhbmQgY29tbXVuaWNhdGUuPC9zcGFuPgo8L2Rpdj4KICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0yIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIAogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPgogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZXZlbnRzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgRXZlbnRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvbWVtYmVyc2hpcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIElFRUUgU0EgTWVtYmVyc2hpcAogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luZHVzdHJ5LWNvbm5lY3Rpb25zL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgSW5kdXN0cnkgQ29ubmVjdGlvbnMgUHJvZ3JhbXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wYXJ0aWNpcGF0ZS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIE9wcG9ydHVuaXRpZXMgdG8gUGFydGljaXBhdGUKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC90cmFpbmluZy5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIFRyYWluaW5nICsgRGV2ZWxvcG1lbnQKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgPC91bD4KCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+CgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImNsb3NlLWljb24gaGlkZGVuLXhzIGhpZGRlbi1zbSI+PGltZyBzcmM9ImRhdGE6aW1hZ2UvcG5nK3htbDtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURJQUFBQXlDQVlBQUFBZVA0aXhBQUFBQVhOU1IwSUFyczRjNlFBQSBBV0pwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpIFlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWxoTlVDQkRiM0psSURVdU5DNHdJajRLSUNBZ1BISmsgWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKayBaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQWdJQ0FnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5IElpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaWGhwWmowaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOWwgZUdsbUx6RXVNQzhpUGdvZ0lDQWdJQ0FnSUNBOFpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ1VFkzSmxaVzV6YUc5MCBQQzlsZUdsbU9sVnpaWEpEYjIxdFpXNTBQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnIFBDOXlaR1k2VWtSR1BnbzhMM2c2ZUcxd2JXVjBZVDRLYnN6ZUxnQUFBYkpKUkVGVWFBWHRtbXR1d3lBUWhLMmUgM0Rmd0VUaXF1eVJGY1RHR2ZjeTRKQ3BTWkJ0Mlo3NkIrRWVrTFB1K3IvSXBZMXZlWkFod0t0QnlYWmZEUTdsTiBzMmNSMEZSZ3k3VVZKSzlOR3lhelpjQjY1Q0NwbnZ4NW5pNU1oL1g1U25RS3BnbWpabFFYL3NFTFpHWXpOOXdRIHlzM2tiaVNFQ3JPRUJRQ2hZQXd3SVVjb3VEZGNVQkdLNWtrVGJvU2llOUVOSk5RZEhvKzlZeG94dFJzSHo5bTEgMjBPVVpFaGpwRmJoTTEwUkFBZ05FL1JWY1FRazBudkZFNXIzQUhsNlFwRGFaZ3VZcFZickQ2M1RBR3Bxb0ZCZSBzUjVvYjgzclIrM3JBTXZTYVV6ejY3TzVLWUtiVHNqbmlibERsR1NETUpRUVg4WDgvMXJ0d09BMHlwZU1jaW9WIGl2OVJHV0x1TUowUXFiZm0zelpDcHdaVVUwTkEwMHRhQUMyMWVnSkFwUWZNMHdOQXZaYUlBRVY2cjRrY0t3Z1EgaElZRC9kV0NCRUJxdlFnVmR3eGpobVkzQ3RPUXFmMHIxQjFHZEErNndXSExhRjQwNFFOOGZRdjNoQXZXeEoxbiBtRGRNcUFNN1dnb3poQVZHaElaMU40dTcwUUJuTFRVem1SdXNSSUY2Tlp1Nk1BQVRiUjB5U3NFbW45YVk3bmUxIFFLWVdxTXh0SC9Xbm1qcmtkQ2RSZnkwRk9OWFErVVRXdytRNy9mSHMrRXFzMzl4Wnd0NGpBQXlvQUFBQUFFbEYgVGtTdVFtQ0MiLz48L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+CjwhLS0gI21lZ2EtZHJvcGRvd24tbWVudS1jb250YWluZXIgZW5kIC0tPgoKICAgICAgICAgICAgPC9saT4KICAgICAgICAgCiAgICAgIDwvdWw+CiAgIDwvZGl2Pgo8L25hdj4KPCEtLSAjc2l0ZS1uYXZpZ2F0aW9uLWNvbnRlbnQgZW5kIC0tPgo8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPgoJLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIHsKICAgIAliYWNrZ3JvdW5kLWNvbG9yOiAjMjYyNjI2ICFpbXBvcnRhbnQ7Cgl9CgkuaGVhZGVyLnN0aWNreSAuc2l0ZS1uYXZpZ2F0aW9uIHsKICAgIAliYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7Cgl9CQoJLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIC5tZW51LXRvZ2dsZSB7CgkJYmFja2dyb3VuZC1jb2xvcjogIzI2MjYyNiAhaW1wb3J0YW50OwoJfQoJLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIGEuZHJvcGRvd24tbGluayB7CiAgICAJY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDsgCiAgICAJZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CQoJfQoJLm1lZ2EtZHJvcGRvd24tbWVudSB7IAogICAgCWJhY2tncm91bmQtY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsKICAgIAljb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50OyAKICAgIH0KICAgIC5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiAubmF2aWdhdGlvbi1iYXIgLm1lZ2EtZHJvcGRvd24tbWVudSB1bCBsaSBhIHsKICAgIAlmb250LXNpemU6IDE0cHggIWltcG9ydGFudDsKICAgIAljb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50OwoJfQogICAgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWJhciAubWVnYS1kcm9wZG93bi1tZW51IHVsIGxpIGEucGxhaW4tbGluayB7CiAgICAJZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CiAgICB9CiAgICAucGFnZS1oZWFkZXItY29udGFpbmVyIC5zaXRlLW5hdmlnYXRpb24gLm5hdmlnYXRpb24tYmFyIC5tZWdhLWRyb3Bkb3duLW1lbnUgdWwgbGkgYS5saW5rLXRpdGxlIHsgCiAgICAJZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CiAgICB9CiAgICAucGFnZS1oZWFkZXItY29udGFpbmVyIC5zaXRlLW5hdmlnYXRpb24gLm5hdmlnYXRpb24tYmFyIC5tZWdhLWRyb3Bkb3duLW1lbnUgdWwgbGkgYS5saW5rIHsgCiAgICAJZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CiAgICAJY29sb3I6ICMwMEI1RTIgIWltcG9ydGFudDsKICAgIH0KICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKCSAgICAuaGVhZGVyLnN0aWNreSAuc2l0ZS1uYXZpZ2F0aW9uIG5hdiB7CgkJCW1hcmdpbi1sZWZ0OiBweCAhaW1wb3J0YW50OwoJCX0KICAgIH0KICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewoJICAgIC5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiAubmF2aWdhdGlvbi1iYXIgLm1lZ2EtZHJvcGRvd24tbWVudSB7CgkJCWJvcmRlci10b3AtY29sb3I6ICAhaW1wb3J0YW50OwoJCX0KCX0KCUBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewoJCS5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiAubmF2aWdhdGlvbi1iYXI+bGkuYWN0aXZlIGEuZHJvcGRvd24tbGluazo6YWZ0ZXIgewoJCQliYWNrZ3JvdW5kLWNvbG9yOiAgIWltcG9ydGFudDsKCQl9CiAgICB9Cjwvc3R5bGU+CgogICAgICA8ZGl2IGNsYXNzPSJyaWdodC1idG5zIj4KICAgICAgICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL3JlZ2F1dGgvaW5kZXguaHRtbCIgY2xhc3M9ImJ0bi1zdHlsZSBncmF5LWJnIj5NQUMgQUREUkVTUzwvYT4KICAgICAgICAgPGEgaHJlZj0iaHR0cDovL3d3dy50ZWNoc3RyZWV0LmNvbS9pZWVlIiBjbGFzcz0iYnRuLXN0eWxlIG9yYW5nZSI+QlVZIFNUQU5EQVJEUzwvYT4KICAgICAgPC9kaXY+CiAgIDwvZGl2Pgo8L2Rpdj4KCjxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4KPCEtLSBFbmQgUGFnZSBoZWFkZXIgQmxvY2sgY29tcG9uZW50IC0tPgoKCjxzdHlsZSB0eXBlPSd0ZXh0L2Nzcyc+CgoKCQoJQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7CgkJLm5vLXNob3ctcmVndWxhciB7CgkJCWRpc3BsYXk6IG5vbmU7CgkJfQoJCS5wYWdlLWhlYWRlci1jb250YWluZXIgLmhlYWRlci1ibG9jayAubG9nbyB7CiAgICAJCXdpZHRoOiAxNTBweCAhaW1wb3J0YW50OwogICAgCQloZWlnaHQ6IDE1cHggIWltcG9ydGFudDsKICAgIAkJbWFyZ2luLXRvcDogLTAuOTYlICFpbXBvcnRhbnQ7CgkJfQoJCS5uby1zaG93LXNjcm9sbC1kb3duIC5wbGF0Zm9ybS1ncmFwaGljLWltYWdlIHsKCSAgIAkJd2lkdGg6IDgwLjM5OTk5OTk5OTk5OTk5cHggIWltcG9ydGFudDsKCSAgIAkJaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7CgkJfQkJCgl9CglAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKCQkubm8tc2hvdy1yZWd1bGFyIHsKCQkJZGlzcGxheTogbm9uZTsKCQl9CgkJLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuaGVhZGVyLWJsb2NrIC5sb2dvIHsKICAgIAkJd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7CiAgICAJCWhlaWdodDogMTVweCAhaW1wb3J0YW50OwogICAgCQltYXJnaW4tdG9wOiAtMC45NiUgIWltcG9ydGFudDsKCQl9CgkJLm5vLXNob3ctc2Nyb2xsLWRvd24gLnBsYXRmb3JtLWdyYXBoaWMtaW1hZ2UgewoJICAgCQl3aWR0aDogODAuMzk5OTk5OTk5OTk5OTlweCAhaW1wb3J0YW50OwoJICAgCQloZWlnaHQ6IDE1cHggIWltcG9ydGFudDsKCQl9Cgl9CgkKCQoJQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7CgkJLm5vLXNob3ctcmVndWxhciB7CgkJCWRpc3BsYXk6IG5vbmU7CgkJfQoJCS5wYWdlLWhlYWRlci1jb250YWluZXIgLmhlYWRlci1ibG9jayAubG9nbyB7CiAgICAJCXdpZHRoOiAyMDBweCAhaW1wb3J0YW50OwogICAgCQloZWlnaHQ6IDIwcHggIWltcG9ydGFudDsKICAgIAkJbWFyZ2luLXRvcDogLTEuMjgwMDAwMDAwMDAwMDAwMiUgIWltcG9ydGFudDsKCQl9CgkJLm5vLXNob3ctc2Nyb2xsLWRvd24gLnBsYXRmb3JtLWdyYXBoaWMtaW1hZ2UgewoJICAgCQl3aWR0aDogMTA3LjJweCAhaW1wb3J0YW50OwoJICAgCQloZWlnaHQ6IDIwcHggIWltcG9ydGFudDsKCQl9Cgl9CgkKICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKCQkubm8tc2hvdy1yZWd1bGFyIHsKCQkJZGlzcGxheTogbm9uZTsKCQl9CgkJLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuaGVhZGVyLWJsb2NrIC5sb2dvIHsKICAgIAkJd2lkdGg6IDI1MHB4ICFpbXBvcnRhbnQ7CiAgICAJCWhlaWdodDogMjVweCAhaW1wb3J0YW50OwogICAgCQltYXJnaW4tdG9wOiAtMS42JSAhaW1wb3J0YW50OwoJCX0KCSAgICAuaGVhZGVyLnN0aWNreSAubm8tc2hvdy1zY3JvbGwtZG93biB7CgkJCWRpc3BsYXk6IG5vbmU7CgkJfQoJICAgIC5oZWFkZXIuc3RpY2t5IC5uby1zaG93LXJlZ3VsYXIgewoJCQlkaXNwbGF5OiBibG9jazsKCQl9CgkJLmhlYWRlci5zdGlja3kgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuaGVhZGVyLWJsb2NrIC5sb2dvIHsKCSAgIAkJd2lkdGg6IDEyMHB4ICFpbXBvcnRhbnQ7CgkgICAJCWhlaWdodDogMjNweCAhaW1wb3J0YW50OwoJICAgCQl0b3A6IDBweDsKCSAgIAkJbWFyZ2luLXRvcDogLjg1JSAhaW1wb3J0YW50OwoJICAgCX0KCQkubm8tc2hvdy1zY3JvbGwtZG93biAucGxhdGZvcm0tZ3JhcGhpYy1pbWFnZSB7CgkgICAJCXdpZHRoOiAxMzRweCAhaW1wb3J0YW50OwoJICAgCQloZWlnaHQ6IDI1cHggIWltcG9ydGFudDsKCQl9Cgl9CgkKPC9zdHlsZT48L2Rpdj4KCiAgICAKCjwvZGl2PgoKICAgIAoKCjwvaGVhZGVyPgo8IS0tICNoZWFkZXIgZW5kcyAtLT4KCgkgICAgCgoKCjwhLS0gTDIgU3RhbmRhcmQvUHJvamVjdCBQYWdlIENvbnRhaW5lciAtLT4KPGRpdiBjbGFzcz0icHJvamVjdHMtZGV0YWlsLXBhZ2UiPgoJPGRpdiBjbGFzcz0icHJvamVjdHMtZGV0YWlsLXBhZ2UtaGVhZGVyIj4KICAgIAk8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgIAk8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAJPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0xMiI+CiAgICAgICAgICAgIAkJCgoKCgoKCgo8IS0tIER5bmFtaWMgUGFnZSBUaXRsZSBEZXRhaWxzIENvbnRlbnQgLS0+CgoJPGRpdiBjbGFzcz0iYnV0dG9uLXJvdyB0ZXh0LWxlZnQgc21hbGwtYnRuIj4KCSAgICA8ZGl2IGNsYXNzPSJidXR0b25jZWxsIj4KCSAgICAgICAgPGEgY2xhc3M9ImJ0bi1zdHlsZSBncmV5Ij5TdGFuZGFyZDwvYT4KCSAgICA8L2Rpdj4KCSAgICA8ZGl2IGNsYXNzPSJidXR0b25jZWxsIj4KCSAgICAgICAgPGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiIHRhcmdldD0iX2JsYW5rIj5BY3RpdmU8L2E+CgkgICAgPC9kaXY+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InJ0ZS13aXRoLWN0YSI+CgkgICAgPGRpdiBjbGFzcz0iY3RhLXJ0ZSB0ZXh0LWxlZnQiPgoJICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0IHJ0ZSIgc3R5bGU9ImNvbG9yOndoaXRlIj4KCSAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzdWItaGVhZGluZyI+SUVFRSA1MjgtMjAxOSAtIElFRUUgU3RhbmRhcmQgZm9yIEluZXJ0aWFsIFNlbnNvciBUZXJtaW5vbG9neTwvc3Bhbj4KCSAgICAgICAgICAgIDxici8+CgkgICAgICAgIDwvZGl2PgoJICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tcm93IHRleHQtbGVmdCI+CgkgICAgICAgICAgICAKCQkJCSAgICA8ZGl2IGNsYXNzPSJidXR0b25jZWxsIj4KCQkJCSAgICAgICAgPGEgY2xhc3M9ImJ0bi1zdHlsZSBvcmFuZ2UiIGhyZWY9Imh0dHA6Ly93d3cudGVjaHN0cmVldC5jb20vaWVlZS9wcm9kdWN0cy92ZW5kb3JfaWQvNzI5MiIgdGFyZ2V0PSJfYmxhbmsiPgoJCQkJICAgICAgICAJQnV5IFRoaXMgU3RhbmRhcmQKCQkJCSAgICAgICAgPC9hPgoJCQkJICAgIDwvZGl2PgoJCQkJICAgIAoJCQkJCgkJCQkKCQkJICAgIDxkaXYgY2xhc3M9ImJ1dHRvbmNlbGwiPgoJCQkgICAgICAgIDxhIGNsYXNzPSJidG4tc3R5bGUgd2hpdGUtb3V0bGluZSIgaHJlZj0iaHR0cDovL2llZWV4cGxvcmUuaWVlZS5vcmcvc2VydmxldC9vcGFjP3B1bnVtYmVyPTg4NjM3OTciIHRhcmdldD0iX2JsYW5rIj4KCQkJICAgICAgICAJQWNjZXNzIFZpYSBTdWJzY3JpcHRpb24KCQkJICAgICAgICA8L2E+CgkJCSAgICA8L2Rpdj4KCSAgICAgICAgPC9kaXY+CgkgICAgPC9kaXY+Cgk8L2Rpdj4KCjwhLS0gI2R5bmFtaWMtcGFnZS10aXRsZS1kZXRhaWxzLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAJCTwvZGl2PgoJPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwcm9qZWN0cy1kZXRhaWwtcGFnZS1jb250ZW50IGNvbnRlbnQtd2lkdGgtdHdvLWNvbHVtbnMgbGVmdC1jb2x1bW4tYmciPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNCI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGVmdC1ibG9jayByb3ciPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWZ0LWNvbnRlbnQtYmxvY2siPgogICAgICAgICAgICAgICAgICAgICAgICAJPGRpdiBjbGFzcz0ibGVmdC1maWx0ZXItbmF2IGNvbC1zbS0xMSBjb2wtbWQtMTEgIj4KCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCgoKPCEtLSBEeW5hbWljIFBhZ2UgTGVmdE5hdiBEZXRhaWxzIENvbnRlbnQgLS0+CgoJPGRpdiBjbGFzcz0iZmlsdGVyLXRpdGxlIGhpZGRlbi14cyI+RXhwbG9yZSBUaGlzIFN0YW5kYXJkPC9kaXY+Cgk8ZGl2IGNsYXNzPSJuYXYgcHJvamVjdC1kZXRhaWxzLWl0ZW1zIj4KCSAgICA8ZGl2IGNsYXNzPSJwcm9qZWN0LWRyb3Bkb3duLXNlbGVjdG9yIj4KCSAgICAgICAgPHNwYW4gY2xhc3M9InJlcGxhY2UtdGV4dCI+PC9zcGFuPgoJICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20iPjwvc3Bhbj4KCSAgICA8L2Rpdj4KCSAgICA8dWwgY2xhc3M9InByb2plY3QtbGlzdC1pdGVtcyBwcm9qZWN0LWRyb3Bkb3duLWxpc3QtaGlkZSI+CgkgICAgICAgIDxsaSBjbGFzcz0ic2VsZWN0ZWQgYWN0aXZlIj48YSBocmVmPSIjU3RhbmRhcmQiPlN0YW5kYXJkIERldGFpbHM8L2E+PC9saT4KCSAgICAgICAgPGxpPjxhIGhyZWY9IiNBZGRpdGlvbmFsIj5BZGRpdGlvbmFsIFJlc291cmNlczwvYT48L2xpPgoJICAgICAgICA8bGk+PGEgaHJlZj0iI1dvcmtpbmciPldvcmtpbmcgR3JvdXA8L2E+PC9saT4KCSAgICA8L3VsPgoJPC9kaXY+Cgo8IS0tICNkeW5hbWljLXBhZ2UtdGl0bGUtZGV0YWlscy1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgoKCgoKCSAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoJCQkJCQk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTgiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0LWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAJCgoKCgoKCgo8IS0tIER5bmFtaWMgUGFnZSBEZXRhaWxzIENvbnRlbnQgLS0+CgogICAgPGRpdiBjbGFzcz0iZGV0YWlscy1ibG9jayBib3R0b20tYm9yZGVyIiBpZD0iU3RhbmRhcmQiPgogICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5TdGFuZGFyZCBEZXRhaWxzPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5zb3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic3RhbmRhcmQtaW5mbyI+CiAgICAgICAgICAgIDx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCIgd2lkdGg9IjEwMCUiPgogICAgICAgICAgICAgICAgPHRib2R5PgogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5TdGFuZGFyZHMgQ29tbWl0dGVlPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSJodHRwOi8vaWVlZS1hZXNzLm9yZy90ZWNoLW9wcy9neXJvLWFuZC1hY2NlbGVyb21ldGVyIiBjbGFzcz0ibGluayI+QUVTL0dBIC0gR3lybyBBY2NlbGVyb21ldGVyIFBhbmVsPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8IS0tIFN0YW5kYXJkcyBEYXRhIHN0YXJ0IC0tPgogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5TdGF0dXM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkFjdGl2ZTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPkJvYXJkIEFwcHJvdmFsPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4yMDE5LTA2LTEzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+SGlzdG9yeTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHVibGlzaGVkIERhdGU6MjAxOS0xMC0wOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCgkJCQkJCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPCEtLSBTdGFuZGFyZHMgRGF0YSBlbmQgLS0+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPCEtLSBQcm9qZWN0cyBEYXRhIHN0YXJ0IC0tPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwhLS0gUHJvamVjdHMgRGF0YSBlbmQgLS0+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cgo8IS0tICNkeW5hbWljLXBhZ2UtZGV0YWlscy1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgICAgICAgICAgICAgCQoKCgoKCgoKPCEtLSBEeW5hbWljIFBhZ2UgQWRkaXRpb25hbCBSZXNvdXJjZXMgRGV0YWlscyBDb250ZW50IC0tPgoKICAgIDxkaXYgY2xhc3M9ImRldGFpbHMtYmxvY2sgYm90dG9tLWJvcmRlciIgaWQ9IkFkZGl0aW9uYWwiPgogICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5BZGRpdGlvbmFsIFJlc291cmNlcyBEZXRhaWxzPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic3RhbmRhcmQtaW5mbyI+CiAgICAgICAgICAgIDx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCIgd2lkdGg9IjEwMCUiPgogICAgICAgICAgICAgICAgPHRib2R5PgogICAgICAgICAgICAgICAgICAgIDwhLS0gU3RhbmRhcmRzIERhdGEgc3RhcnQgLS0+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPlBBUjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iaHR0cHM6Ly9kZXZlbG9wbWVudC5zdGFuZGFyZHMuaWVlZS5vcmcvbXlwcm9qZWN0LXdlYi9wdWJsaWMvdmlldy5odG1sI3BhcmRldGFpbC82NDYzIiBjbGFzcz0ibGluayI+QXBwcm92ZWQgUEFSPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8IS0tIFN0YW5kYXJkcyBEYXRhIGVuZCAtLT4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8IS0tIENvbW1vbiBEYXRhIHN0YXJ0IC0tPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwhLS0gQ29tbW9uIERhdGEgZW5kIC0tPgogICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKPCEtLSAjZHluYW1pYy1wYWdlLWFkZGl0aW9uYWwtcmVzb3VyY2VzLWRldGFpbHMtY29udGVudCBlbmQgLS0+CgogICAgICAgICAgICAgICAgICAgIAkKCgoKCgoKCjwhLS0gRHluYW1pYyBXb3JraW5nIEdyb3VwIERldGFpbHMgQ29udGVudCAtLT4KCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxzLWJsb2NrIiBpZD0iV29ya2luZyI+CiAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPldvcmtpbmcgR3JvdXAgRGV0YWlsczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN0YW5kYXJkLWluZm8iPgogICAgICAgICAgICA8dGFibGUgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiIHdpZHRoPSIxMDAlIj4KICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+V29ya2luZyBHcm91cDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+U0VOU1JfV0cgLSBTZW5zb3JzIFdvcmtpbmcgR3JvdXA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5Xb3JraW5nIEdyb3VwIENoYWlyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5IYXJyeSBEYXZpczwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPlN0YW5kYXJkcyBDb21taXR0ZWU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Imh0dHA6Ly9pZWVlLWFlc3Mub3JnL3RlY2gtb3BzL2d5cm8tYW5kLWFjY2VsZXJvbWV0ZXIiIGNsYXNzPSJsaW5rIj5BRVMvR0EgLSBHeXJvIEFjY2VsZXJvbWV0ZXIgUGFuZWw8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5Tb2NpZXR5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSJodHRwOi8vd3d3LmllZWUtYWVzcy5vcmcvIiBjbGFzcz0ibGluayI+SUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5PC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+SUVFRSBQcm9ncmFtIE1hbmFnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgZGF0YS11c2VyPSJtYWlsVE86YS5mLm1vcmFuQGllZWUub3JnIiBjbGFzcz0ibGluayB1c2VyX2VtYWlsX19saW5rIj5Bc2hsZXkgTW9yYW48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPkFjdGl2ZSBQcm9qZWN0czwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9wcm9qZWN0LzE0MzEuaHRtbCIgY2xhc3M9ImxpbmsiPlAxNDMxIC0gU3RhbmRhcmQgZm9yIFNwZWNpZnlpbmcgYW5kIFRlc3RpbmcgQ29yaW9saXMgVmlicmF0b3J5IEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRoaXMgc3RhbmRhcmQgZGVmaW5lcyByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBmb3IgYSBzaW5nbGUtYXhpcyBDb3Jpb2xpcyB2aWJyYXRvcnkgZ3lybyAoQ1ZHKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMuICBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIENWRyBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+RXhpc3RpbmcgU3RhbmRhcmRzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzI5Mi0xOTY5Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDI5Mi0xOTY5IC0gSUVFRSBTcGVjaWZpY2F0aW9uIEZvcm1hdCBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFNwcmluZy1SZXN0cmFpbmVkIFJhdGUgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+VGhpcyBzcGVjaWZpY2F0aW9uIGRlZmluZXMgdGhlIHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtZGVncmVlLW9mLWZyZWVkb20gc3ByaW5nLXJlc3RyYWluZWQgcmF0ZSBneXJvIGZvciBbYWlyY3JhZnQsIG1pc3NpbGUsIHNwYWNlY3JhZnQsX19fX19fXSBhcHBsaWNhdGlvbnMuIFRoZSByYXRlIGd5cm8gc2hhbGwgYmUgY2FwYWJsZSBvZiBwcm92aWRpbmcgWyhkYywgYWMpIHZvbHRhZ2Ugb3V0cHV0cyBwcm9wb3J0aW9uYWwgdG8gYW5ndWxhciByYXRlIGlucHV0cyB1cCB0b19fX19fXyBkZWdyZWVzIHBlciBzZWNvbmQsIGEgc3dpdGNoIGNsb3N1cmUocykgYXQgYW5ndWxhciByYXRlcyAoZXhjZWVkaW5nLGxlc3MgdGhhbilfX19fX18gKCssLSw/KV9fX19fXyBkZWdyZWVzIHBlciBzZWNvbmRdLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzI5My0xOTY5Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDI5My0xOTY5IC0gSUVFRSBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFNwcmluZy1SZXN0cmFpbmVkIFJhdGUgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+UmVjb21tZW5kZWQgcmF0ZSBneXJvIHRlc3QgcHJvY2VkdXJlcyBkZXJpdmVkIGZyb20gdGhvc2UgY3VycmVudGx5IGluIHVzZSwgaW5jbHVkaW5nIHRlc3QgY29uZGl0aW9ucyB0byBiZSBjb25zaWRlcmVkLCBhcmUgY29tcGlsZWQuIEluIHNvbWUgY2FzZXMgYWx0ZXJuYXRlIG1ldGhvZHMgZm9yIG1lYXN1cmluZyBhIHBlcmZvcm1hbmNlIGNoYXJhY3RlcmlzdGljIGhhdmUgYmVlbiBpbmNsdWRlZC4gVGhpcyBzdGFuZGFyZCBpcyBpbnRlbmRlZCB0byBiZSBhIGd1aWRlIGluIHRoZSBwcmVwYXJhdGlvbiBvZiBTZWN0aW9uIDQgb2YgYSBzcGVjaWZpY2F0aW9uIHRoYXQgZm9sbG93cyB0aGUgZm9ybWF0IG9mIElFRUUgU3RkIDI5MiwgU3BlY2lmaWNhdGlvbiBGb3JtYXQgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zLg0KPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNTE3LTE5NzQuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgNTE3LTE5NzQgLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFJhdGUtSW50ZWdyYXRpbmcgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+QSBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvIHNwZWNpZmljYXRpb24gdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBtZWV0aW5nIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzIGlzIHByZXNlbnRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvIGlzIGdpdmVuLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBTdXBlcnNlZGVkIj5TdXBlcnNlZGVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNTI4LTIwMDEuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgNTI4LTIwMDEgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3k8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+VGVybXMgYW5kIGRlZmluaXRpb25zIHJlbGF0aW5nIHRvIGluZXJ0aWFsIHNlbm9ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzUyOS0xOTgwLmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDUyOS0xOTgwIC0gU3VwcGxlbWVudCBmb3IgU3RyYXBkb3duIEFwcGxpY2F0aW9ucyB0byBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFJhdGUtSW50ZWdyYXRpbmcgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+QSBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvc2NvcGUgc3BlY2lmaWNhdGlvbiBpcyBwcmVzZW50ZWQuIFJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSByYXRlLWludGVncmF0aW5nIGd5cm9zY29wZSBhcmUgY29tcGlsZWQuIFRoaXMgc3RhbmRhcmQsIHdoZW4gY29tYmluZWQgd2l0aCBJRUVFIFN0ZCA1MTctMTk3NCAoUjE5ODApLCBkZWZpbmVzIHRoZSByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBpbiB0ZXJtcyBvZiBjaGFyYWN0ZXJpc3RpY3MgdW5pcXVlIHRvIHRoZSBneXJvc2NvcGUgb3IgdGhvc2UgYXBwbGljYXRpb25zIGluIHdoaWNoIHRoZSBkeW5hbWljIGFuZ3VsYXIgaW5wdXRzIGFyZSBzaWduaWZpY2FudGx5IGdyZWF0ZXIgdGhhbiB0aGUgbGltaXRhdGlvbnMgaWRlbnRpZmllZCBpbiBJRUVFIFN0ZCA1MTcuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEluYWN0aXZlLVJlc2VydmVkIj5JbmFjdGl2ZS1SZXNlcnZlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzY3MS0xOTg1Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDY3MS0xOTg1IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIE5vbmd5cm9zY29waWMgSW5lcnRpYWwgQW5ndWxhciBTZW5zb3JzOiBKZXJrLCBBY2NlbGVyYXRpb24sIFZlbG9jaXR5LCBhbmQgRGlzcGxhY2VtZW50PC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkEgZ3VpZGUgaXMgcHJlc2VudGVkIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSBzcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZSBmb3IgYW4gaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBtZWV0aW5nIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzIG9mIGFuIGFycmF5IG9mIHNlbnNvcnMgdGhhdCBoYXZlIGJlZW4gZGV2ZWxvcGVkIHRvIG1lZXQgbmVlZHMgbm90IGVhc2lseSBtZXQgYnkgdHJhZGl0aW9uYWwgc3Bpbm5pbmctcm90b3IgZ3lyb3Njb3Blcy4gQSB0ZXN0IHByb2NlZHVyZSBmb3IgdmVyaWZ5aW5nIHRoYXQgdGhlIHNwZWNpZmljYXRpb25zIGhhdmUgYmVlbiBtZXQgaXMgZ2l2ZW4uIFRoZSBzdGFuZGFyZCBpcyBub3QgaW50ZW5kZWQgdG8gY29tcGV0ZSB3aXRoIGV4aXN0aW5nIHN0YW5kYXJkcyBmb3Igc3BlY2lmaWMgZGV2aWNlcyB3aXRoIGhpZ2hseSBzcGVjaWZpYyBtb2RlbHMgYW5kIGVycm9yIHNvdXJjZXMsIHN1Y2ggYXMgc3ByaW5nLXJlc3RyYWluZWQgcmF0ZSBneXJvcywgYnV0IHRvIHByb3ZpZGUgYSB1bmlmb3JtIGd1aWRlIGZvciB0aG9zZSBpbmVydGlhbCBhbmd1bGFyIHNlbnNvcnMgdGhhdCBoYXZlIG5vdCBiZWVuIGNvdmVyZWQgZWxzZXdoZXJlLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzgxMy0xOTg4Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDgxMy0xOTg4IC0gSUVFRSBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFR3by1EZWdyZWUtb2YtRnJlZWRvbSBEeW5hbWljYWxseSBUdW5lZCBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5BIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgdHdvLWRlZ3JlZS1vZi1mcmVlZG9tIGR5bmFtaWNhbGx5IHR1bmVkIGd5cm8gKERURykgc3BlY2lmaWNhdGlvbiBpcyBnaXZlbiB0aGF0IHByb3ZpZGVzIGEgY29tbW9uIGdyb3VuZCBvZiB0ZXJtaW5vbG9neSBhbmQgcHJhY3RpY2UgZm9yIG1hbnVmYWN0dXJlcnMgYW5kIHVzZXJzLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSBEVEcgaXMgYWxzbyBnaXZlbi4gVGhlIHJlcXVpcmVtZW50cyBhbmQgdGVzdCBwcm9jZWR1cmVzIGFyZSBkZWZpbmVkIGluIHRlcm1zIHVuaXF1ZSB0byB0aGUgRFRHLiBUaGV5IGNvdmVyIGFwcGxpY2F0aW9ucyBvZiB0aGUgZ3lybyBhcyBhbiBhbmd1bGFyIG1vdGlvbiBzZW5zb3IgaW4gbmF2aWdhdGlvbiBhbmQgY29udHJvbCBzeXN0ZW1zLiBUaGV5IGFwcGx5IHRvIHR3byBtb2RlcyBvZiB1c2U6ICgxKSBhcyBhIHN0cmFwLWRvd24gc2Vuc29yIGluIG9wZXJhdGluZyBlbnZpcm9ubWVudHMgdHlwaWNhbCBvZiBhaXJjcmFmdCBhbmQgbWlzc2lsZSBhcHBsaWNhdGlvbnMsIGFuZCAoMikgYXMgYSBzZW5zb3IgaW4gZ2ltYmFsbGVkIHBsYXRmb3JtIGFwcGxpY2F0aW9ucyBpbiB3aGljaCB0aGUgZHluYW1pYyBhbmd1bGFyIGlucHV0cyB0byB3aGljaCB0aGUgZ3lybyBpcyBzdWJqZWN0ZWQgYXJlIGJlbmlnbiByZWxhdGl2ZSB0byB0aGUgYWNjdXJhY3kgcmVxdWlyZWQuIEluIHRoZSBjYXNlIG9mIHRoZSBzdHJhcC1kb3duIERURywgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0aGUgZXh0ZXJuYWwgY2FwdHVyZSBsb29wcyBhcmUgY29uc2lkZXJlZCB0byB0aGUgZXh0ZW50IG5lY2Vzc2FyeSB0byBkZWZpbmUgdGhlIGd5cm8gcGVyZm9ybWFuY2UuDQo8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgU3VwZXJzZWRlZCI+U3VwZXJzZWRlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzk1Mi0xOTk3Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDk1Mi0xOTk3IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1BeGlzIEludGVyZmVyb21ldHJpYyBGaWJlciBPcHRpYyBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtYXhpcyBpbnRlcmZlcm9tZXRyaWMgZmliZXIgb3B0aWMgZ3lybyAoSUZPRykgZm9yIHVzZSBhcyBhIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGFuZ3VsYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgYW5ndWxhciByYXRlIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSBzaW5nbGUtYXhpcyBJRk9HIGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYSBmaWJlciBvcHRpYyBneXJvLCBkZXJpdmVkIGZyb20gdGhvc2UgcHJlc2VudGx5IHVzZWQgaW4gdGhlIGluZHVzdHJ5LCBpcyBhbHNvIHByb3ZpZGVkLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzE1NTQtMjAwNS5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAxNTU0LTIwMDUgLSBJRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBJbmVydGlhbCBTZW5zb3IgVGVzdCBFcXVpcG1lbnQsIEluc3RydW1lbnRhdGlvbiwgRGF0YSBBY3F1aXNpdGlvbiwgYW5kIEFuYWx5c2lzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRlc3QgZXF1aXBtZW50LCBkYXRhIGFjcXVpc2l0aW9uIGVxdWlwbWVudCwgaW5zdHJ1bWVudGF0aW9uLCB0ZXN0IGZhY2lsaXRpZXMsIGFuZCBkYXRhIGFuYWx5c2lzIHRlY2huaXF1ZXMgdXNlZCBpbiBpbmVydGlhbCBzZW5zb3IgdGVzdGluZyBhcmUgZGVzY3JpYmVkIGluIHRoaXMgcmVjb21tZW5kZWQgcHJhY3RpY2UuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNjQ3LTIwMDYuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgNjQ3LTIwMDYgLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLUF4aXMgTGFzZXIgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWF4aXMgcmluZyBsYXNlciBneXJvIChSTEcpIGZvciB1c2UgYXMgYQ0gc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUNIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYQ0gc2luZ2xlLWF4aXMgUkxHIGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHByb2NlZHVyZXMgZm9yIHRlc3RpbmcgYW4gUkxHLA0gZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgSW5hY3RpdmUtUmVzZXJ2ZWQiPkluYWN0aXZlLVJlc2VydmVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvODM2LTIwMDkuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgODM2LTIwMDkgLSBJRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBQcmVjaXNpb24gQ2VudHJpZnVnZSBUZXN0aW5nIG9mIExpbmVhciBBY2NlbGVyb21ldGVyczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5UaGlzIHJlY29tbWVuZGVkIHByYWN0aWNlIGRlc2NyaWJlcyB0aGUgY29uZHVjdCBhbmQgYW5hbHlzaXMgb2YgcHJlY2lzaW9uIHRlc3RzIHRoYXQgYXJlIHRvIGJlIHBlcmZvcm1lZCBvbiBsaW5lYXIgYWNjZWxlcm9tZXRlcnMgdXNpbmcgY2VudHJpZnVnZSB0ZWNobmlxdWVzLiBUaGUgdGVybSA/cHJlY2lzaW9uLD8gaW4gdGhpcyBjb250ZXh0LCByZWZlcnMgdG8gdGVzdHMgdGhhdCBhcmUgY29uZHVjdGVkIHRvIGV2YWx1YXRlIGFjY2VsZXJvbWV0ZXIgcGFyYW1ldGVycywgYXMgb3Bwb3NlZCB0byB0aG9zZSBjb25kdWN0ZWQgdG8gZXN0YWJsaXNoIGVudmlyb25tZW50YWwgc3Vydml2YWJpbGl0eSBvbmx5LiBFdmFsdWF0aW9uIG1heSB0YWtlIHRoZSBmb3JtIG9mIGRldGVybWluaW5nIHRoZSBjb2VmZmljaWVudHMgb2YgdGhlIGFjY2VsZXJvbWV0ZXI/cyBtb2RlbCBlcXVhdGlvbiwgZXhjZXB0IGZvciBiaWFzIGFuZCBzY2FsZSBmYWN0b3IsIHdoaWNoIGFyZSBtb3N0IGFjY3VyYXRlbHkgZGV0ZXJtaW5lZCBieSBzdGF0aWMgbXVsdGktcG9zaXRpb24gdGVzdHMuIEFsdGVybmF0aXZlbHksIGV2YWx1YXRpb24gbWF5IG9ubHkgZXN0YWJsaXNoIHRoYXQgdGhlIGFjY2VsZXJvbWV0ZXIgb3V0cHV0IGNvbXBsaWVzIHdpdGggc3BlY2lmaWMgZXJyb3IgbGltaXQgY3JpdGVyaWEuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMTQzMS0yMDA0Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDE0MzEtMjAwNCAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBDb3Jpb2xpcyBWaWJyYXRvcnkgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWF4aXMgQ29yaW9saXMgdmlicmF0b3J5IGd5cm8gKENWRykgZm9yIHVzZSBhcyBhIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGFuZ3VsYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgYW5ndWxhciByYXRlIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYSBzaW5nbGUtYXhpcyBDVkcgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIENWRywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBjb3ZlciBDVkcgZGVzaWduIGZlYXR1cmVzIGFuZCB0aGVvcmV0aWNhbCBwcmluY2lwbGVzIG9mIG9wZXJhdGlvbi48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgU3VwZXJzZWRlZCI+U3VwZXJzZWRlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzEyOTMtMTk5OC1Db3IxLTIwMDguaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgMTI5My0xOTk4L0NvciAxLTIwMDggLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTGluZWFyLFNpbmdsZS1BeGlzLCBOb25neXJvc2NvcGljIEFjY2VsZXJvbWV0ZXJzIENvcnJpZ2VuZHVtIDE6IENoYW5nZXMgdG8gQW5uZXggSyBhbmQgQW5uZXggTDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5Db3JyaWdlbmR1bSB0byBJRUVFIFN0ZCAxMjkzLTE5OTguIFNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBsaW5lYXIsIHNpbmdsZS1heGlzLCBub25neXJvc2NvcGljIGFjY2VsZXJvbWV0ZXJzIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBsaW5lYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgbGluZWFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIFRoZSBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBhbmQgdGVzdCBwcm9jZWR1cmUgc3RhbmRhcmQgYXBwbGllcyB0byBmb3JjZS1yZWJhbGFuY2UgYWNjZWxlcm9tZXRlcnMgKHBlbmR1bG91cyBvciB0cmFuc2xhdGlvbmFsIHByb29mDQptYXNzKSwgdmlicmF0aW5nIGJlYW0gYWNjZWxlcm9tZXRlcnMgKFZCQXMpLCBhbmQgbWljcm9tZWNoYW5pY2FsIGFjY2VsZXJvbWV0ZXJzIHRoYXQgcmFuZ2UNCmZyb20gbGVzc2VyIGFjY3VyYWN5IHRvIGhpZ2ggYWNjdXJhY3kgZGV2aWNlcy48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8xNDMxLTIwMDQtQ29yMS0yMDA4Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDE0MzEtMjAwNC9Db3IgMS0yMDA4IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIENvcmlvbGlzIFZpYnJhdG9yeSBHeXJvcyAtIENvcnJpZ2VuZHVtIDE8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+Q29ycmlnZW5kdW0gdG8gSUVFRSBTdGQgMTQzMS0yMDA0LiANCjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBJbmFjdGl2ZS1SZXNlcnZlZCI+SW5hY3RpdmUtUmVzZXJ2ZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC82NzEtMTk4NS1Db3IxLTIwMTAuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgNjcxLTE5ODUvQ29yIDEtMjAxMCAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBOb25neXJvc2NvcGljIEluZXJ0aWFsIEFuZ3VsYXIgU2Vuc29yczogSmVyaywgQWNjZWxlcmF0aW9uLCBWZWxvY2l0eSwgYW5kIERpc3BsYWNlbWVudCBDb3JyaWdlbmR1bSAxOiA0LjcuMi42IFNob3J0LVRlcm0gU3RhYmlsaXR5IGFuZCBBbm5leCBBIFNlbnNvciBEeW5hbWljIEJsb2NrIERpYWdyYW1zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PklFRUUgU3RkIDY3MS0xOTg1IHByb3ZpZGVzIHNwZWNpZmljYXRpb25zIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBub24tZ3lyb3Njb3BpYyBpbmVydGlhbCBhbmd1bGFyIHNlbnNvciB0aGF0IG1heSBtZWFzdXJlIGFuZ3VsYXIgamVyaywgYWNjZWxlcmF0aW9uLCByYXRlLCBvciBkaXNwbGFjZW1lbnQgd2l0aCBvciB3aXRob3V0IHJlc3BvbnNlIGRvd24gdG8gemVybyBmcmVxdWVuY3kuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgdGVzdCBwcm9jZWR1cmVzLCBkZXJpdmVkIGZyb20gdGhvc2UgcHJlc2VudGx5IHVzZWQgaW4gdGhlIGluZHVzdHJ5LCBpcyBhbHNvIHByb3ZpZGVkLiBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIGRlc2lnbiBmZWF0dXJlcyBhbmQgdGhlb3JldGljYWwgcHJpbmNpcGxlcyBvZiBvcGVyYXRpb24uDQpUaGlzIGNvcnJpZ2VuZHVtIG1ha2VzIGNoYW5nZXMgdG8gNC43LjIuNiB0byBkZWxldGUgYSBzZW50ZW5jZSB0aGF0IGRvZXMgbm90IGJlbG9uZyB0aGVyZSwgdG8gYWRkIGEgc3ViY2xhdXNlIHRoYXQgd2FzIGluYWR2ZXJ0ZW50bHkgbGVmdCBvdXQsIGFuZCB0byByZW51bWJlciB0aGUgZXhpc3Rpbmcgc3ViY2xhdXNlcy4gQ2hhbmdlcyBhcmUgYWxzbyBiZWluZyBtYWRlIHRvIGZpeCB0aGUgYmxvY2sgZGlhZ3JhbXMgaW4gQW5uZXggQSwgdG8gY29ycmVjdCBhIG1pc3NwZWxsaW5nIG9mIGluZXJ0aWEsIGFuZCB0byBhZGQgYSBtaXNzaW5nIHN5bWJvbC4NCjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzEyOTMtMjAxOC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAxMjkzLTIwMTggLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTGluZWFyIFNpbmdsZS1BeGlzLCBOb25neXJvc2NvcGljIEFjY2VsZXJvbWV0ZXJzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRoZSBzcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBsaW5lYXIsIHNpbmdsZS1heGlzLCBub25neXJvc2NvcGljIGFjY2VsZXJvbWV0ZXIgZm9yIHVzZSBpbiBpbmVydGlhbCBuYXZpZ2F0aW9uLCBndWlkYW5jZSwgYW5kIGxldmVsaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBndWlkZSBhbmQgYSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCB0ZXN0IHByb2NlZHVyZXMgZm9yIHN1Y2ggYWNjZWxlcm9tZXRlcnMgYXJlIHByb3ZpZGVkLiBJbmZvcm1hdGl2ZSBhbm5leGVzIGFyZSBnaXZlbiBvbiB0aGUgdmFyaW91cyB0eXBlcyBvZiBzdWNoIGFjY2VsZXJvbWV0ZXJzIChmb3JjZSBvciBwZW5kdWxvdXMgdG9ycXVlIHJlYmFsYW5jZSB3aXRoIGFuYWxvZyBvciBkaWdpdGFsIG91dHB1dCwgdmlicmF0aW5nIGJlYW0sIGFuZCBtaWNyb21lY2hhbmljYWwpIGFuZCBlcnJvciBlZmZlY3RzLCBvbiBmaWx0ZXJpbmcsIG5vaXNlLCBhbmQgdHJhbnNpZW50IGFuYWx5c2lzIHRlY2huaXF1ZXMsIGFuZCBvbiBjYWxpYnJhdGlvbiBhbmQgbW9kZWxpbmcgdGVjaG5pcXVlcyAobXVsdGlwb2ludCB0dW1ibGUgYW5hbHlzaXMsIHZpYnJhdGlvbiBhbmQNCnNob2NrIHRlc3QgYW5hbHlzZXMsIGFuZCBnZW9waHlzaWNhbCBlZmZlY3RzIGluIGluZXJ0aWFsIGluc3RydW1lbnQgdGVzdGluZykuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMjkzLTE5NjktQ29yMS0yMDE0Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDI5My0xOTY5L0NvciAxLTIwMTQgLSBJRUVFIFN0YW5kYXJkIGZvciBJRUVFIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvcyAtLSBDb3JyaWdlbmR1bSAxOiBUYWJsZSAxIEhlYWRpbmc8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+Q29ycmVjdGlvbiB0byBUYWJsZSAxIG9uIHBhZ2UgMTQgb2YgSUVFRSBTdGQgMjkzLTE5Njk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC81MjktMTk4MC1Db3IxLTIwMTcuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgNTI5LTE5ODAvQ29yIDEtMjAxNyAtIElFRUUgU3RhbmRhcmQgU3VwcGxlbWVudCBmb3IgU3RyYXBkb3duIEFwcGxpY2F0aW9ucyB0byBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFJhdGUtSW50ZWdyYXRpbmcgR3lyb3MgLSBDb3JyaWdlbmR1bSAxOiAzLjMuOS4yLjIsIDMuNi40LjEuMSwgMy42LjQuMS4yLCA2LjMsIGFuZCAxMC4xMC40LjE8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+Q29ycmVjdGlvbnMgYXJlIG1hZGUgYnkgdGhpcyBjb3JyaWdlbmR1bSB0byBtYXRlcmlhbCBhbHJlYWR5IHB1Ymxpc2hlZCBpbiBJRUVFIFN0ZCA1MjktMTk4MC48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgU3VwZXJzZWRlZCI+U3VwZXJzZWRlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzk1Mi0xOTk3LUNvcjEtMjAxNi5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA5NTItMTk5Ny9Db3IgMS0yMDE2IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1BeGlzIEludGVyZmVyb21ldHJpYyBGaWJlciBPcHRpYyBHeXJvcyAtLSBDb3JyaWdlbmR1bSAxOiBGaWd1cmUgMSBhbmQgU3ViY2xhdXNlcyA1LjMuNCwgOC4zLCAxMi4xMS40LjMuMiwgMTIuMTEuNC4zLjMsIDEyLjExLjQuMy40LCAxMi4xMi4zLjEsIGFuZCAxMi4xMi40LjE8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+RXJyb3JzIGlkZW50aWZpZWQgaW4gSUVFRSBTdGQgOTUyLTE5OTcgYXJlIGNvcnJlY3RlZCBpbiB0aGlzIGNvcnJpZ2VuZHVtLiBDb3JyZWN0aW9ucyBhcmUgbWFkZSB0byBGaWd1cmUgMSBhbmQgaW4gc3ViY2xhdXNlcyA1LjMuNCwgOC4zLCAxMi4xMS40LjMuMiwgMTIuMTEuNC4zLjMsIDEyLjExLjQuMy40LCAxMi4xMi4zLjEsIGFuZCAxMi4xMi40LjEuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvOTUyLTIwMjAuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgOTUyLTIwMjAgLSBJRUVFIFN0YW5kYXJkIGZvciBTcGVjaWZ5aW5nIGFuZCBUZXN0aW5nIFNpbmdsZS1BeGlzIEludGVyZmVyb21ldHJpYyBGaWJlciBPcHRpYyBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZXMgZm9yIGEgc2luZ2xlLWF4aXMgaW50ZXJmZXJvbWV0cmljIGZpYmVyIG9wdGljIGd5cm8gKElGT0cpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gVGhlIHRlc3QgcHJvY2VkdXJlcyBhcmUgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgoKICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCjwhLS0gI2R5bmFtaWMtd29ya2luZy1ncm91cC1kZXRhaWxzLWNvbnRlbnQgZW5kIC0tPgoKCQkJCQk8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoJCgoKPGRpdiBjbGFzcz0iYWVtLUdyaWQgYWVtLUdyaWQtLTEyIGFlbS1HcmlkLS1kZWZhdWx0LS0xMiAiPgogICAgCiAgICAKICAgIAo8L2Rpdj4KCjwvZGl2Pgo8IS0tICNsMi1zdGFuZGFyZC1wcm9qZWN0LXBhZ2UtY29udGFpbmVyIGVuZHMgLS0+CgoJICAgIA0KDQo8IS0tIEZvb3Rlcg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGZvb3RlciBpZD0icGFnZS1mb290ZXIiPg0KICAgIAoKCgoKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Im5ld3BhciBuZXcgc2VjdGlvbiI+Cgo8L2Rpdj4KCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJwYXIgaXBhcnlzX2luaGVyaXRlZCI+CgogICAgCiAgICAKICAgIAogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWNvbnRhaW5lciI+CjwhLS0gRm9vdGVyIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPiAgCjxkaXYgY2xhc3M9ImZvb3RlciB0b3AtZm9vdGVyLXdyYXBwZXIiPgogICAKICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0icm93ICI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10b3Atc2VjdGlvbiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02IGNvbC1tZC02ICI+CiAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLSBSZXNwb25zaXZlIEltYWdlIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxkaXYgY2xhc3M9InJlc3BvbnNpdmUtaW1nIj4NCiAgICANCg0KICAgIA0KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0id2lkdGg6MTAwJSI+DQogICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLWxvZ28tZm9vdGVyLmdpZiIgY2xhc3M9ImltZy1yZXNwb25zaXZlIiBhbHQ9IklFRUUgTG9nbyIvPg0KICAgICAgICAgICAgPC9pbWc+DQogICAgICAgIDwvYT4NCiAgICANCiAgICANCjwvZGl2Pg0KPCEtLSBFbmQgUmVzcG9uc2UgSW1hZ2UgQ29udGVudCAtLT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02IGNvbC1tZC02IGhpZGRlbi14cyB0ZXh0LXJpZ2h0Ij4KICAgICAgICAgICAgICAgCgoKCgoKCgoKCjwhLS0gU29jaWFsIE1lZGlhIENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDxkaXYgY2xhc3M9InNvY2lhbG1lZGlhIj4KICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaWVlZXNhIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS10d2l0dGVyIj48L2k+CiAgICA8L2E+CgoKCgo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgCiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pZWVlc2EvIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1mYWNlYm9vay1mIj48L2k+CiAgICA8L2E+CgoKCgo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgCiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2llZWUtc2EtaWVlZS1zdGFuZGFyZHMtYXNzb2NpYXRpb24vIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1saW5rZWRpbiI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2llZWVzYS8iIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLWluc3RhZ3JhbSI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwOi8vd3d3LnlvdXR1YmUuY29tL2llZWVzYSIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEteW91dHViZSI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIDwvdWw+CiAgICA8L2Rpdj4KCjwhLS0jU29jaWFsLW1lZGlhLWNvbnRhaW5lciBjb250ZW50IGVuZC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1saW5rcy1pbmZvIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+QWJvdXQ8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkFib3V0IFVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2NvcnBjaGFuLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkNvcnBvcmF0ZSBQcm9ncmFtDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2Rpc3RyaWIuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+RGlzdHJpYnV0b3IgUHJvZ3JhbQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9pbnRsLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkdsb2JhbCBFbmdhZ2VtZW50DQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3BvbGljaWVzLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlBvbGljaWVzICZhbXA7IFByb2NlZHVyZXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvdHJhaW5pbmcuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+VHJhaW5pbmcgKyBEZXZlbG9wbWVudA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9mYXFzLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkZBUXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9jb250YWN0L2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkNvbnRhY3QgVXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBjb2wtbWQtMyBjb2wtbGctMiI+CiAgICAgICAgICAgICAgIAogCgoKPCEtLSBGb290ZXIgQ29sdW1uIFNlY3Rpb24gQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICA8ZGl2IGNsYXNzPSJmb290LXRpdGxlIj5Cb2FyZCBvZiBHb3Zlcm5vcnMgKEJvRyk8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCB0aGUgQk9HDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy9hcmNvbS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Bd2FyZHMgQ29tbWl0dGVlDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy9jYWcuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+Q29ycC4gQWR2aXNvcnkgR3JvdXANCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvYm9nL3JhYy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5SZWcuIEF1dGguIENvbW1pdHRlZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9ib2cvc3BjYy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5TUENDDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+U3RhbmRhcmRzIEJvYXJkIChTQVNCKTwvZGl2PgogICAKICAgCiAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIA0KICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4NCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCB0aGUgU0FTQg0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL3NiYS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Cb2FyZCBBcHByb3ZhbHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9hdWRjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+QXVkQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3Nhc2IvaWNjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUNDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9uZXNjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+TmVzQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3Nhc2IvcGF0Y29tLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlBhdENvbQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL3Byb2NvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Qcm9Db20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9yZXZjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+UmV2Q29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+TmV3cyAmYW1wOyBFdmVudHM8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2V2ZW50cy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5FdmVudHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvbmV3cy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5OZXdzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL25ld3Mvc3RhbmRhcmRzLWZvY3VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlN0YW5kYXJkcyBGb2N1cw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9uZXdzL3N3aXJlL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlN0YW5kYXJkcyBOZXdzd2lyZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9mZWF0dXJlZC84MDIuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+RmVhdHVyZWQNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIHRleHQtY2VudGVyIGhpZGRlbi1zbSBoaWRkZW4tbWQgaGlkZGVuLWxnIj4KICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tIFNvY2lhbCBNZWRpYSBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPGRpdiBjbGFzcz0ic29jaWFsbWVkaWEiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaWVlZXNhIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtdHdpdHRlciI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pZWVlc2EvIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtZmFjZWJvb2stZiI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2llZWUtc2EtaWVlZS1zdGFuZGFyZHMtYXNzb2NpYXRpb24vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtbGlua2VkaW4iPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIA0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2llZWVzYS8iIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1pbnN0YWdyYW0iPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIA0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8YSBocmVmPSJodHRwOi8vd3d3LnlvdXR1YmUuY29tL2llZWVzYSIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLXlvdXR1YmUiPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQoNCjwhLS0jU29jaWFsLW1lZGlhLWNvbnRhaW5lciBjb250ZW50IGVuZC0tPgogICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgIDwvZGl2Pgo8L2Rpdj4KPCEtLSAjZm9vdGVyLWNvbnRlbnQgZW5kIC0tPjwvZGl2PgoKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Imdsb2JhbC1mb290ZXItY29udGFpbmVyIj4NCg0KPCEtLSBHbG9iYWwgRm9vdGVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxkaXYgY2xhc3M9Imdsb2JhbC1mb290ZXIiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgZm9vdGVyLWxpbmtzIGZvbnQtZiI+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCiAgICAgICAgDQoNCg0KDQo8IS0tIFV0aWxpdHkgTGlua3MgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPHVsIGlkPSJZRUlKQUhSU1dPQ1BQTE1LUFkiIGNsYXNzPSIgdXRpbGl0eWxpbmtzIHNlcGFyYXRvci1waXBlIj4NCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSIvIj5Ib21lPC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9zaXRlbWFwLmh0bWwiPlNpdGVtYXA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iL2Fib3V0L2NvbnRhY3QvaW5kZXguaHRtbCI+IENvbnRhY3QgJmFtcDsgU3VwcG9ydCA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWNjZXNzaWJpbGl0eS1zdGF0ZW1lbnQuaHRtbCI+QWNjZXNzaWJpbGl0eTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9jb3Jwb3JhdGUvZ292ZXJuYW5jZS9wOS0yNi5odG1sIj5Ob25kaXNjcmltaW5hdGlvbiBQb2xpY3k8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2VjdXJpdHlfcHJpdmFjeS5odG1sIj5JRUVFIFByaXZhY3kgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9pcHIvaW5kZXguaHRtbCI+SUVFRSBTQSBDb3B5cmlnaHQgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIDwvdWw+DQoNCjwhLS0gI3V0aWxpdHktbGlua3MtY29udGVudCBlbmQgLS0+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBsZWdhbC1jb3B5IGZvbnQtZiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3EtZGQtcGFyYWdyYXBoIj48ZGl2IGNsYXNzPSJydGUgdGV4dCBwYXJiYXNlIj4KCgoKICAgIMKpIENvcHlyaWdodCAyMDIxIElFRUUg4oCTIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFVzZSBvZiB0aGlzIHdlYnNpdGUgc2lnbmlmaWVzIHlvdXIgYWdyZWVtZW50IHRvIHRoZcKgPGEgaHJlZj0iaHR0cDovL3d3dy5pZWVlLm9yZy9zaXRlX3Rlcm1zX2NvbmRpdGlvbnMuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnM8L2E+LjxiciAvPgpBIG5vdC1mb3ItcHJvZml0IG9yZ2FuaXphdGlvbiwgSUVFRSBpcyB0aGUgd29ybGQncyBsYXJnZXN0IHRlY2huaWNhbCBwcm9mZXNzaW9uYWwgb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBhZHZhbmNpbmcgdGVjaG5vbG9necKgPGJyIC8+CmZvciB0aGUgYmVuZWZpdCBvZiBodW1hbml0eS48YnIgLz4KCjwvZGl2Pgo8L2Rpdj4KDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L2Rpdj4NCjwhLS0gI2dsb2JhbC1mb290ZXItY29udGVudCBlbmQgLS0+PC9kaXY+CgogICAgCgo8L2Rpdj4KCiAgICAKCg0KPC9mb290ZXI+DQo8IS0tICNmb290ZXIgZW5kcyAtLT4NCgoJPC9kaXY+CgkKCTxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS9iYXNlLm1pbi4wZmZmMjhlNTE0YmVkNmRlZjNkMjVmZmY1OWQ1ZmQ0Ni5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYXBwc19jb21wb25lbnRzLm1pbi45MzJhODIxMWFjMDk1ZTI0NTIxNzE4ZmQwNWFhMDE3MC5qcyI+PC9zY3JpcHQ+CgoKCgk8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1jb3JlL2NsaWVudGxpYnMvYmFzZS5taW4uZjU0NmUxNTg5Mjc2MmEyMDBiY2UyYjIwM2Y3NWYzZjguanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCg0KDQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPgoKCgoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9iYXNlLm1pbi44MDQyYjBmY2JkNjIxMjY4MzQ5N2Q1NmVmYmRkNTc2My5qcyI+PC9zY3JpcHQ+CgoKCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCgoNCgoJCgk8ZGl2IGNsYXNzPSJjbG91ZHNlcnZpY2UgZ2VuZXJpY3RyYWNrZXIiPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpewp3aW5kb3cuY29va2llY29uc2VudC5pbml0aWFsaXNlKGpzb24pCn0pOwogICAgPC9zY3JpcHQ+CjwvZGl2PgoKCjwvYm9keT4KPC9ib2R5Pgo8L2h0bWw+Cg==
148
+ CjwhRE9DVFlQRSBIVE1MPgo8aHRtbD4KICAgIDxoZWFkPgoKPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iLz4KCjwhLS0gR2xvYmFsIHNpdGUgdGFnIChndGFnLmpzKSAtIEdvb2dsZSBBbmFseXRpY3MgLSBTdGFydCAtLT4KPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6DQpuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sDQpqPWQuY3JlYXRlRWxlbWVudChzKSxkbD1sIT0nZGF0YUxheWVyJz8nJmw9JytsOicnO2ouYXN5bmM9dHJ1ZTtqLnNyYz0NCidodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsNCn0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnZGF0YUxheWVyJywnR1RNLU1SOFQ4NDMnKTs8L3NjcmlwdD4NCjxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0iYnUxZ21XNE1LeThXYXctMHc4UFE3ZFNCRjNzQW5ZVGRobEtDR3dPQndCSSIgLz4NCgo8IS0tIEdsb2JhbCBzaXRlIHRhZyAoZ3RhZy5qcykgLSBHb29nbGUgQW5hbHl0aWNzIC0gRW5kIC0tPgoKCgoKCQoJCTxtZXRhIG5hbWU9ImRlcyIvPgoJCTxtZXRhIG5hbWU9IlN0ZFJlY05vIiBjb250ZW50PSI3MjkyIi8+CgkJPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5zb3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuIi8+CgkJPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3kiLz4KCQk8bWV0YSBuYW1lPSJzdGF0dXMiLz4KCQk8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iSUVFRSA1Mjg/LCBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neSwgaW5lcnRpYWwgc2Vuc29yIHRlcm1pbm9sb2d5Ii8+CgkJPG1ldGEgbmFtZT0iU29jaWV0eSIgY29udGVudD0iSUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5Ii8+CgkJPG1ldGEgbmFtZT0idHlwZSIgY29udGVudD0iU3RhbmRhcmQiLz4KCgkJPG1ldGEgbmFtZT0idG9waWMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgoKCQkKCQoKCgogICAgCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjLmNsaWVudGxpYnMvZm91bmRhdGlvbi9jbGllbnRsaWJzL21haW4ubWluLmI0OTk0Nzg4Y2YxZWFlZWQzMDBhMGFhN2FmNTNmM2M4LmNzcyIgdHlwZT0idGV4dC9jc3MiPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL2pxdWVyeS5taW4uMTQ5NGMwYWJiZTUwMTMwMWUyYWI5ZGFlY2M2MDgyYTguanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL3V0aWxzLm1pbi40YTE5MmI1OTBhMmMyOTI2ZmIwMDAyNjQzNzBjMDU4OC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9jbGllbnRsaWJzL2dyYW5pdGUvanF1ZXJ5L2dyYW5pdGUubWluLjU0M2QyMTRjODhkZmE2ZjRhMzIzM2I2MzBjODJkODc1LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9qcXVlcnkubWluLmRkOWIzOTVjNzQxY2UyNzg0MDk2ZTI2NjE5ZTE0OTEwLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9zaGFyZWQubWluLjlmMzcxNmIyYzQ3M2ZkNTNhYjMxYjFjYWE1MzEzMWE4LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9tYWluLm1pbi5hNmZhYWZiZWVkMjRmNWQ0MGFhZjM2N2M3Nzg3NTNhYi5qcyI+PC9zY3JpcHQ+CgoKCiAgICAKICAgIDxsaW5rIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCgoKCgoKCgoKCgoKCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQogICAgICANCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvYm9vdHN0cmFwLm1pbi40MTVlOTBjZGMyOTc5ZWZmZWNiMWE4NzgzZmQyOTM3NC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvZGF0YXRhYmxlLm1pbi4zMmRhN2E5ZDQ3NDQ3M2I4MDVjODdkYTJiNzQ0MGU3YS5jc3MiIHR5cGU9InRleHQvY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYmFzZS5taW4uYzAzYTQ4ZGJiMzBlYmM1YWI2NTlhNGZiMzlhMDEyZjYuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCg0KCiAgICAKCgoNCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvanF1ZXJ5Lm1pbi43NzEyZjAxOTlkYWUzZGY4YTU3MTBlYjY5OGYzM2E4Mi5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9qcXVlcnlfZm9ybS5taW4uYWFkY2VhMzZmYjYyN2Y0MWQ2MWJjNTFlZWFiYzJkMzAuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9qcXVlcnlfdmFsaWRhdG9yLm1pbi40NDljNzRmNjFjYTU1YmJlYzVlZDM5MzA1ZWRhMTY2MS5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9kYXRhdGFibGUubWluLmUwMTZkYmVlMzA4N2ZmMTE5MzM1NzczZGNiOGJiMGVmLmpzIj48L3NjcmlwdD4KCgoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS90aGlyZHBhcnR5L2Jvb3RzdHJhcC5taW4uZjJlOTE4YTJkNGViZmNlNDg1Zjg3MjE3Y2VkMzA0OWIuanMiPjwvc2NyaXB0PgoKCgo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLWNvcmUvY2xpZW50bGlicy9iYXNlLm1pbi5iOTMwZWFiYTg5NWFlMmFiZGFjOTE1ZDNjMzhmNDNlNS5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoNCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+CiAgICAgIAoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2Jhc2UubWluLjZkOTNlMmYwODg1ZDcxZTkxZmM5MjJiZjA1YTVjMTljLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCgoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2NsaWVudGxpYnMvdGhpcmRwYXJ0eS9mb250LWF3ZXNvbWUubWluLmQxZTY4OWM4YmJmZTMyZGZiY2I3NzIxMTAyYmJhMzc4LmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCgoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL3RoaXJkcGFydHkvb3Blbi1zYW5zLm1pbi5iNjM0NTUxODEwMDU1MTRiMTdlMWMzNjhkNDgxMDMwOC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoKCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2NsaWVudGxpYnMvZ3Jhbml0ZS9oYW5kbGViYXJzLm1pbi41NjYzM2JkYmVjMTlkYmRhYjNkZTNjOThiMTgyY2QwNS5qcyI+PC9zY3JpcHQ+CgoKCg0KCgoKICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vcGxhdGZvcm0tYXBpLnNoYXJldGhpcy5jb20vanMvc2hhcmV0aGlzLmpzI3Byb3BlcnR5PTVhNjlmYmU2MWM1ZDU5MDAxM2I0ZGUzYSZwcm9kdWN0PXNvcCIgYXN5bmM9ImFzeW5jIj48L3NjcmlwdD4KCgo8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3ZuZC5taWNyb3NvZnQuaWNvbiIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2Zhdmljb24uaWNvIi8+CjxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgdHlwZT0iaW1hZ2Uvdm5kLm1pY3Jvc29mdC5pY29uIiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvZmF2aWNvbi5pY28iLz4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNTd4NTciIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9hcHBsZV9mYXZpY29uLnBuZyIvPgoKPHRpdGxlPklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3k8L3RpdGxlPgoKPCEtLSBHRFBSIENvb2tpZSBCYW5uZXIgLSBTdGFydCAtLT4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vczMtdXMtd2VzdC0yLmFtYXpvbmF3cy5jb20vaWVlZXNodXRwYWdlcy9nZHByL3NldHRpbmdzLmpzIj48L3NjcmlwdD4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uY3NzIi8+CjxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9jb29raWVjb25zZW50Mi8zLjAuMy9jb29raWVjb25zZW50Lm1pbi5qcyI+PC9zY3JpcHQ+CjwhLS0gR0RQUiBDb29raWUgQmFubmVyIC0gRW5kIC0tPgo8L2hlYWQ+CiAgICA8Ym9keT4KCjxib2R5PgoJPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9InNoYXJldGhpcy1lbmFibGVkIiBuYW1lPSJzaGFyZXRoaXMtZW5hYmxlZCIgdmFsdWU9InRydWUiLz4KCQogICAgPCEtLSBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KICAgIDxub3NjcmlwdD48aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vbnMuaHRtbD9pZD1HVE0tTVI4VDg0MyINCmhlaWdodD0iMCIgd2lkdGg9IjAiIHN0eWxlPSJkaXNwbGF5Om5vbmU7dmlzaWJpbGl0eTpoaWRkZW4iPjwvaWZyYW1lPjwvbm9zY3JpcHQ+CiAgICA8IS0tIEVuZCBHb29nbGUgVGFnIE1hbmFnZXIgKG5vc2NyaXB0KSAtLT4KICAgIAogICAgPGRpdiBjbGFzcz0ic2hhcmV0aGlzLWlubGluZS1zaGFyZS1idXR0b25zIj48L2Rpdj4KCTxkaXYgaWQ9InBhZ2Utd3JhcHBlciIgY2xhc3M9ImNsZWFyZml4Ij4KCQkKCjwhLS0gSGVhZGVyCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KPGhlYWRlciBpZD0icGFnZS1oZWFkZXIiIGNsYXNzPSJoZWFkZXIiIHN0eWxlPSJwb3NpdGlvbjpmaXhlZCI+CiAgICAKCgoKCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJuZXdwYXIgbmV3IHNlY3Rpb24iPgoKPC9kaXY+CgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0icGFyIGlwYXJ5c19pbmhlcml0ZWQiPgoKICAgIAogICAgCiAgICAKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Imdsb2JhbC1tZXRhLW5hdi1oZWFkZXIiPgoKCjwhLS0gR2xvYmFsIE1ldGEtTmF2IEhlYWRlciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KPGRpdiBjbGFzcz0iZ2xvYmFsLW1ldGEgaGlkZGVuLXNtIGhpZGRlbi14cyI+Cgk8bmF2IGlkPSJsZWZ0LXNpZGUtbWV0YW5hdi1saW5rcyIgY2xhc3M9Im1ldGEtbmF2Ij4KCQkNCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvaW5kZXguaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUub3JnDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cDovL2llZWV4cGxvcmUuaWVlZS5vcmcvWHBsb3JlL2hvbWUuanNwIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUVFRSBYcGxvcmUgRGlnaXRhbCBMaWJyYXJ5DQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUVFRSBTdGFuZGFyZHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3NwZWN0cnVtLmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUgU3BlY3RydW0NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9zaXRlbWFwLmh0bWwiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Nb3JlIFNpdGVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoJPC9uYXY+Cgk8bmF2IGlkPSJyaWdodC1zaWRlLW1ldGFuYXYtbGlua3MiIGNsYXNzPSJtZXRhLW5hdiI+CgkJDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvZXRvb2xzLyIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+ZVRvb2xzwqAgwqDCoCDCoA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIDwvdWw+DQoNCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+DQoKCQkNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS0gUmVzcG9uc2l2ZSBJbWFnZSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8ZGl2IGNsYXNzPSJyZXNwb25zaXZlLWltZyI+DQogICAgDQoNCiAgICANCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvIiB0YXJnZXQ9Il9zZWxmIiBzdHlsZT0id2lkdGg6MTAwJSI+DQogICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLWxvZ28td2hpdGUuZ2lmIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUiIGFsdD0iSUVFRSBsb2dvIHNtYWxsIi8+DQogICAgICAgICAgICA8L2ltZz4NCiAgICAgICAgPC9hPg0KICAgIA0KICAgIA0KPC9kaXY+DQo8IS0tIEVuZCBSZXNwb25zZSBJbWFnZSBDb250ZW50IC0tPgoJPC9uYXY+CjwvZGl2Pgo8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPgoJLm1ldGEtbmF2IC5saW5rLWxpc3QgbGkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0KCS5tZXRhLW5hdj4ubGluay1saXN0IGxpIGEge2NvbG9yOiB9CgkuZ2xvYmFsLW1ldGEge2JhY2tncm91bmQ6IH0KPC9zdHlsZT4KPCEtLSBFbmQgR2xvYmFsIE1ldGEtTmF2IEhlYWRlciBDb250ZW50IC0tPgo8L2Rpdj4KCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlLWhlYWRlci1jb250YWluZXIiPgo8IS0tUGFnZSBIZWFkZXIgQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CiAgIAogICAKCgogCgoKPGRpdiBjbGFzcz0icGFnZS1oZWFkZXItY29udGFpbmVyIj4KICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyLWJsb2NrIj4KICAgICAgICAgPGRpdiBjbGFzcz0ibG9nbyI+CgkJCTwhLS0gTWFpbiBsb2dvIENvbnRlbnQgLS0+CgkJCQoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciIGNsYXNzPSJuby1zaG93LXNjcm9sbC1kb3duIj4KCQkJCSAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLXNhLWxvZ28tdGV4dC5wbmciIGFsdD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyIgdGl0bGU9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSBzY3JvbGwtdXAtbG9nby1pbWFnZSIvPgoJCQkJPC9hPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmciIGNsYXNzPSJuby1zaG93LXJlZ3VsYXIiPgoJCQkJICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2xvZ29zL2llZWUtc2EtbG9nby1zbWFsbC5wbmciIGFsdD0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyIgdGl0bGU9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSBzY3JvbGwtZG93bi1sb2dvLWltYWdlIi8+CgkJCQk8L2E+CgkJCQoJCQk8IS0tIE1haW4gbG9nbyBDb250ZW50IGVuZCAtLT4KCgkJCTwhLS0gUGxhdGZvcm0gZ3JhcGhpYyBDb250ZW50IC0tPgoJCQkKCQkJCTxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIiBjbGFzcz0ibm8tc2hvdy1zY3JvbGwtZG93biI+CgkJCQkgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvbG9nb3MvcGxhdGZvcm1fZ3JhcGhpY190b3Bfc3BhY2UucG5nIiBhbHQ9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIHRpdGxlPSJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUgcGxhdGZvcm0tZ3JhcGhpYy1pbWFnZSIvPgoJCQkJPC9hPgoJCQkKCQkJPCEtLSBQbGF0Zm9ybSBncmFwaGljIENvbnRlbnQgZW5kIC0tPgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoLWJhci1jb21wIj4KICAgICAgICAgICAgDQoNCjwhLS0gU2lnaHRseSBnbG9iYWwgb2JqZWN0cyBkZWNsYXJhdGlvbg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQo8IS0tICNzaWdodGx5LWdsb2JhbC1vYmplY3RzLWRlY2xhcmF0aW9uIGVuZCAtLT4NCg0KPCEtLSBQbGFjZWhvbGRlciBDb250ZW50IG9taXR0ZWQgc2luY2Ugc2VhcmNoIHdpbGwgYmUgb24gaGVhZGVyLg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPiAgICAgICAgIA0KPCEtLSAjcGxhY2Vob2xkZXItY29udGVudCBlbmQgLS0+DQoNCjwhLS0gU2VhcmNoIFVJIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGZvcm0gYWN0aW9uPSIvc2VhcmNoLXJlc3VsdHMuaHRtbCIgcm9sZT0ic2VhcmNoIiBpZD0ic2VhcmNoRm9ybSI+DQoJPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAgc2VhcmNoLWJhciI+DQoJCTxpbnB1dCB0eXBlPSJzZWFyY2giIG5hbWU9InEiIGlkPSJxIiB0aXRsZT0iU2VhcmNoIGFsbCBJRUVFIHdlYnNpdGVzIiBwbGFjZWhvbGRlcj0iU2VhcmNoIiBjbGFzcz0icmVxdWlyZWQgZm9ybS1jb250cm9sIi8+IA0KCQk8c3BhbiBjbGFzcz0iaW5wdXQtZ3JvdXAtYWRkb24iIGlkPSJzZWFyY2hTdWJtaXRCdXR0b24iPg0KCQkJPGkgY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tc2VhcmNoIj48L2k+DQoJCTwvc3Bhbj4NCgk8L2Rpdj4NCjwvZm9ybT4NCjwhLS0gI3NlYXJjaCBVSSBjb250ZW50IGVuZCAtLT4JICAgICAgICAgICAgCiAgICAgICAgIDwvZGl2PgoJCSA8IS0tIE1vYmlsZSBsb2dvIENvbnRlbnQgLS0+CiAgICAgICAgIDxkaXYgY2xhc3M9ImllZWUtbG9nbyBoaWRkZW4tbWQgaGlkZGVuLWxnIj4KICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KIA0KDQoNCjwhLS0gTG9nbyBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iPg0KICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2xvZ29zL2llZWUtbG9nby13aGl0ZS5wbmciIGFsdD0iSUVFRSBsb2dvIiB0aXRsZT0iSUVFRSBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUiLz4NCjwvYT4NCjwhLS0gI2xvZ28tY29udGVudCBlbmQgLS0+DQoKICAgICAgICAgPC9kaXY+CgkJPCEtLSBNb2JpbGUgbG9nbyBDb250ZW50IGVuZCAtLT4KICAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICA8ZGl2IGNsYXNzPSJzaXRlLW5hdmlnYXRpb24iPgogICAgICAKPCEtLSBTaWdodGx5IGdsb2JhbCBvYmplY3RzIGRlY2xhcmF0aW9uCiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCjwhLS0gI3NpZ2h0bHktZ2xvYmFsLW9iamVjdHMtZGVjbGFyYXRpb24gZW5kIC0tPiAKCgo8bmF2PgogICA8IS0tIEJyYW5kIGFuZCB0b2dnbGUgZ2V0IGdyb3VwZWQgZm9yIGJldHRlciBtb2JpbGUgZGlzcGxheSAtLT4KICAgPGRpdiBjbGFzcz0ibmF2YmFyLWhlYWRlciI+CiAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSBjb2xsYXBzZWQiPgogICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIgbmF2LWJhcjEiPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIG5hdi1iYXIyIj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciBuYXYtYmFyMyI+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iY2xvc2UtaWNvbiI+CiAgICAgIDxpbWcgc3JjPSdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQmxibU52WkdsdVp6MGlhWE52TFRnNE5Ua3RNU0kvUGdvOElTMHRJRWRsYm1WeVlYUnZjam9nUVdSdlltVWdTV3hzZFhOMGNtRjBiM0lnTVRrdU1DNHdMQ0JUVmtjZ1JYaHdiM0owSUZCc2RXY3RTVzRnTGlCVFZrY2dWbVZ5YzJsdmJqb2dOaTR3TUNCQ2RXbHNaQ0F3S1NBZ0xTMCtDanh6ZG1jZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUlnZG1WeWMybHZiajBpTVM0eElpQnBaRDBpVEdGNVpYSmZNU0lnZUQwaU1IQjRJaUI1UFNJd2NIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBMU1USWdOVEV5SWlCemRIbHNaVDBpWlc1aFlteGxMV0poWTJ0bmNtOTFibVE2Ym1WM0lEQWdNQ0ExTVRJZ05URXlPeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJZ2QybGtkR2c5SWpVeE1uQjRJaUJvWldsbmFIUTlJalV4TW5CNElqNEtQR2MrQ2drOFp6NEtDUWs4Y0dGMGFDQmtQU0pOTlRBMUxqazBNeXcyTGpBMU9HTXRPQzR3TnpjdE9DNHdOemN0TWpFdU1UY3lMVGd1TURjM0xUSTVMakkwT1N3d1REWXVNRFU0TERRM05pNDJPVE5qTFRndU1EYzNMRGd1TURjM0xUZ3VNRGMzTERJeExqRTNNaXd3TERJNUxqSTBPU0FnSUNCRE1UQXVNRGsyTERVd09TNDVPRElzTVRVdU16a3NOVEV5TERJd0xqWTRNeXcxTVRKak5TNHlPVE1zTUN3eE1DNDFPRFl0TWk0d01Ua3NNVFF1TmpJMUxUWXVNRFU1VERVd05TNDVORE1zTXpVdU16QTJJQ0FnSUVNMU1UUXVNREU1TERJM0xqSXpMRFV4TkM0d01Ua3NNVFF1TVRNMUxEVXdOUzQ1TkRNc05pNHdOVGg2SWlCbWFXeHNQU0lqTXpNek16TXpJaTgrQ2drOEwyYytDand2Wno0S1BHYytDZ2s4Wno0S0NRazhjR0YwYUNCa1BTSk5OVEExTGprME1pdzBOell1TmprMFRETTFMak13Tml3MkxqQTFPV010T0M0d056WXRPQzR3TnpjdE1qRXVNVGN5TFRndU1EYzNMVEk1TGpJME9Dd3dZeTA0TGpBM055dzRMakEzTmkwNExqQTNOeXd5TVM0eE56RXNNQ3d5T1M0eU5EaHNORGN3TGpZek5pdzBOekF1TmpNMklDQWdJR00wTGpBek9DdzBMakF6T1N3NUxqTXpNaXcyTGpBMU9Dd3hOQzQyTWpVc05pNHdOVGhqTlM0eU9UTXNNQ3d4TUM0MU9EY3RNaTR3TVRrc01UUXVOakkwTFRZdU1EVTNRelV4TkM0d01UZ3NORGszTGpnMk5pdzFNVFF1TURFNExEUTROQzQzTnpFc05UQTFMamswTWl3ME56WXVOamswZWlJZ1ptbHNiRDBpSXpNek16TXpNeUl2UGdvSlBDOW5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0NqeG5QZ284TDJjK0Nqd3ZjM1puUGdvPScvPgogICAgICA8L3NwYW4+CiAgICAgIDwvYnV0dG9uPgogICA8L2Rpdj4KICAgPGRpdiBjbGFzcz0iYm94LXNoYWRvdy1saW5lIj48L2Rpdj4KICAgPCEtLSBDb2xsZWN0IHRoZSBuYXYgbGlua3MgLS0+CiAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG1lbnUtdG9nZ2xlIj4KICAgICAgPHVsIGNsYXNzPSJuYXZpZ2F0aW9uLWJhciI+CiAgICAgICAgIAogICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3AtZG93bi1uYXYiPgogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tbGluayIgc3R5bGU9Im1pbi13aWR0aDogODRweDsiPgogICAgICAgICAgICAgICAJCVN0YW5kYXJkcyAKICAgICAgICAgICAgICAgPC9hPgkJCQogICAgICAgICAgICAgICAKCjxkaXYgY2xhc3M9Im1lZ2EtZHJvcGRvd24tbWVudSI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrLWluZm8iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2siPgogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvaW1hZ2VzL25hdi1zdGFuZGFyZHMtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy5jbGllbnRsaWJzL3djbS9mb3VuZGF0aW9uL2NsaWVudGxpYnMvYWNjZXNzaWJpbGl0eS5taW4uNmZlNWQ0NDI3MzYxYTRjMGNhNWE3NTQ1N2UzZTQyNTYuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPkZpbmQgc3RhbmRhcmRzLCBzdGFuZGFyZHMgaW4gZGV2ZWxvcG1lbnQsIGxlYXJuIGFib3V0IHRoZSBTdGFuZGFyZHMgRGV2ZWxvcG1lbnQgTGlmZWN5Y2xlLCBhbmQgbXVjaCBtb3JlITwvc3Bhbj4KPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMiBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9zdGFuZGFyZC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgRmluZCBTdGFuZGFyZHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcHJvamVjdC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgIEZpbmQgUHJvamVjdHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvZGV2ZWxvcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgRGV2ZWxvcCBTdGFuZGFyZHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3d3dy50ZWNoc3RyZWV0LmNvbS9pZWVlLyIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgICAgICAgQnV5IFN0YW5kYXJkcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICA8L3VsPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvZXRvb2xzLyIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBlVG9vbHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgPC91bD4KCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+CgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iY2xvc2UtaWNvbiBoaWRkZW4teHMgaGlkZGVuLXNtIj48aW1nIHNyYz0iZGF0YTppbWFnZS9wbmcreG1sO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBRElBQUFBeUNBWUFBQUFlUDRpeEFBQUFBWE5TUjBJQXJzNGM2UUFBIEFXSnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGkgWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJbGhOVUNCRGIzSmxJRFV1TkM0d0lqNEtJQ0FnUEhKayBaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprIFppMXplVzUwWVhndGJuTWpJajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTkgSWlJS0lDQWdJQ0FnSUNBZ0lDQWdlRzFzYm5NNlpYaHBaajBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5bCBlR2xtTHpFdU1DOGlQZ29nSUNBZ0lDQWdJQ0E4WlhocFpqcFZjMlZ5UTI5dGJXVnVkRDVUWTNKbFpXNXphRzkwIFBDOWxlR2xtT2xWelpYSkRiMjF0Wlc1MFBnb2dJQ0FnSUNBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0S0lDQWcgUEM5eVpHWTZVa1JHUGdvOEwzZzZlRzF3YldWMFlUNEtic3plTGdBQUFiSkpSRUZVYUFYdG1tdHV3eUFRaEsyZSAzRGZ3RVRpcXV5UkZjVEdHZmN5NEpDcFNaQnQyWjc2QitFZWtMUHUrci9JcFkxdmVaQWh3S3RCeVhaZkRRN2xOIHMyY1IwRlJneTdVVkpLOU5HeWF6WmNCNjVDQ3Budng1bmk1TWgvWDVTblFLcGdtalpsUVgvc0VMWkdZek45d1EgeXMza2JpU0VDck9FQlFDaFlBd3dJVWNvdURkY1VCR0s1a2tUYm9TaWU5RU5KTlFkSG8rOVl4b3h0UnNIejltMSAyME9VWkVoanBGYmhNMTBSQUFnTkUvUlZjUVFrMG52RkU1cjNBSGw2UXBEYVpndVlwVmJyRDYzVEFHcHFvRkJlIHNSNW9iODNyUiszckFNdlNhVXp6NjdPNUtZS2JUc2puaWJsRGxHU0RNSlFRWDhYOC8xcnR3T0EweXBlTWNpb1YgaXY5UkdXTHVNSjBRcWJmbTN6WkNwd1pVVTBOQTAwdGFBQzIxZWdKQXBRZk0wd05BdlphSUFFVjZyNGtjS3dnUSBoSVlEL2RXQ0JFQnF2UWdWZHd4amhtWTNDdE9RcWYwcjFCMUdkQSs2d1dITGFGNDA0UU44ZlF2M2hBdld4SjFuIG1EZE1xQU03V2dvemhBVkdoSVoxTjR1NzBRQm5MVFV6bVJ1c1JJRjZOWnU2TUFBVGJSMHlTc0VtbjlhWTduZTEgUUtZV3FNeHRIL1dubWpya2RDZFJmeTBGT05YUStVVFd3K1E3L2ZIcytFcXMzOXhad3Q0akFBeW9BQUFBQUVsRiBUa1N1UW1DQyIvPjwvYT4KICAgICAgPC9kaXY+CiAgIDwvZGl2Pgo8L2Rpdj4KPCEtLSAjbWVnYS1kcm9wZG93bi1tZW51LWNvbnRhaW5lciBlbmQgLS0+CgogICAgICAgICAgICA8L2xpPgogICAgICAgICAKICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wLWRvd24tbmF2Ij4KICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImRyb3Bkb3duLWxpbmsiIHN0eWxlPSJtaW4td2lkdGg6IDg0cHg7Ij4KICAgICAgICAgICAgICAgCQlQcm9kdWN0cyAmYW1wOyBTZXJ2aWNlcyAKICAgICAgICAgICAgICAgPC9hPgkJCQogICAgICAgICAgICAgICAKCjxkaXYgY2xhc3M9Im1lZ2EtZHJvcGRvd24tbWVudSI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrLWluZm8iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2siPgogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvaW1hZ2VzL25hdi1wcm9kdWN0LXNlcnZpY2VzLW5ldy1icmFuZC5qcGciLz4gCiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dCI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJ0ZSI+CgoKCiAgICA8c3BhbiBjbGFzcz0icGFyYWdyYXBoLXNtYWxsIj5PdXIgcHJvZHVjdHMgYW5kIHNlcnZpY2VzIGNvdmVyIHRoZSBjb21wbGV0ZSBzdGFuZGFyZHMgZGV2ZWxvcG1lbnQgbGlmZWN5Y2xlLi4uYW5kIGJleW9uZC48L3NwYW4+PGJyIC8+Cgo8L2Rpdj4KICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0yIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIAogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPgogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJsaW5rLXRpdGxlIj4KICAgICAgICAgICAgUHJvZHVjdHMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcHJvZHVjdHMtc2VydmljZXMvbmVzYy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZQogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9wcm9kdWN0cy1zZXJ2aWNlcy9yZWdhdXRoL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPgogICAgICAgICAgICBSZWdpc3RyYXRpb24gQXV0aG9yaXR5CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzLzMwMDAvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIENvbG9yIEJvb2tzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL3N0YW5kYXJkcy1yZWxhdGVkL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPgogICAgICAgICAgICBTdGFuZGFyZHMgUmVsYXRlZCBQcm9kdWN0cwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9wcm9kdWN0cy1zZXJ2aWNlcy9pZWVlLWdldC1wcm9ncmFtLmh0bWwiIHRhcmdldD0iX3NlbGYiPgogICAgICAgICAgICBJRUVFIEdFVCBQcm9ncmFtCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJsaW5rIj4KICAgICAgICAgICAgVmlldyBhbGwKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgPC91bD4KCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+CgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+CiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcHJvZHVjdHMtc2VydmljZXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9ImxpbmstdGl0bGUiPgogICAgICAgICAgICBTZXJ2aWNlcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9wcm9kdWN0cy1zZXJ2aWNlcy9hbXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIEFsbGlhbmNlIE1hbmFnZW1lbnQgU2VydmljZXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcHJvZHVjdHMtc2VydmljZXMvaWNhcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgQ29uZm9ybWl0eSBBc3Nlc3NtZW50CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL2luZHVzdHJ5LWFmZmlsaWF0ZS1uZXR3b3JrL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgSW5kdXN0cnkgQWZmaWxpYXRlIE5ldHdvcmsKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcHJvZHVjdHMtc2VydmljZXMvc3ZzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgU3RhbmRhcmRzIERldmVsb3BtZW50IFNlcnZpY2VzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJsaW5rIj4KICAgICAgICAgICAgVmlldyBtb3JlIFByb2R1Y3RzICZhbXA7IFNlcnZpY2VzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImNsb3NlLWljb24gaGlkZGVuLXhzIGhpZGRlbi1zbSI+PGltZyBzcmM9ImRhdGE6aW1hZ2UvcG5nK3htbDtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURJQUFBQXlDQVlBQUFBZVA0aXhBQUFBQVhOU1IwSUFyczRjNlFBQSBBV0pwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpIFlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWxoTlVDQkRiM0psSURVdU5DNHdJajRLSUNBZ1BISmsgWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKayBaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQWdJQ0FnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5IElpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaWGhwWmowaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOWwgZUdsbUx6RXVNQzhpUGdvZ0lDQWdJQ0FnSUNBOFpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ1VFkzSmxaVzV6YUc5MCBQQzlsZUdsbU9sVnpaWEpEYjIxdFpXNTBQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnIFBDOXlaR1k2VWtSR1BnbzhMM2c2ZUcxd2JXVjBZVDRLYnN6ZUxnQUFBYkpKUkVGVWFBWHRtbXR1d3lBUWhLMmUgM0Rmd0VUaXF1eVJGY1RHR2ZjeTRKQ3BTWkJ0Mlo3NkIrRWVrTFB1K3IvSXBZMXZlWkFod0t0QnlYWmZEUTdsTiBzMmNSMEZSZ3k3VVZKSzlOR3lhelpjQjY1Q0NwbnZ4NW5pNU1oL1g1U25RS3BnbWpabFFYL3NFTFpHWXpOOXdRIHlzM2tiaVNFQ3JPRUJRQ2hZQXd3SVVjb3VEZGNVQkdLNWtrVGJvU2llOUVOSk5RZEhvKzlZeG94dFJzSHo5bTEgMjBPVVpFaGpwRmJoTTEwUkFBZ05FL1JWY1FRazBudkZFNXIzQUhsNlFwRGFaZ3VZcFZickQ2M1RBR3Bxb0ZCZSBzUjVvYjgzclIrM3JBTXZTYVV6ejY3TzVLWUtiVHNqbmlibERsR1NETUpRUVg4WDgvMXJ0d09BMHlwZU1jaW9WIGl2OVJHV0x1TUowUXFiZm0zelpDcHdaVVUwTkEwMHRhQUMyMWVnSkFwUWZNMHdOQXZaYUlBRVY2cjRrY0t3Z1EgaElZRC9kV0NCRUJxdlFnVmR3eGpobVkzQ3RPUXFmMHIxQjFHZEErNndXSExhRjQwNFFOOGZRdjNoQXZXeEoxbiBtRGRNcUFNN1dnb3poQVZHaElaMU40dTcwUUJuTFRVem1SdXNSSUY2Tlp1Nk1BQVRiUjB5U3NFbW45YVk3bmUxIFFLWVdxTXh0SC9Xbm1qcmtkQ2RSZnkwRk9OWFErVVRXdytRNy9mSHMrRXFzMzl4Wnd0NGpBQXlvQUFBQUFFbEYgVGtTdVFtQ0MiLz48L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+CjwhLS0gI21lZ2EtZHJvcGRvd24tbWVudS1jb250YWluZXIgZW5kIC0tPgoKICAgICAgICAgICAgPC9saT4KICAgICAgICAgCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcC1kb3duLW5hdiI+CiAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJkcm9wZG93bi1saW5rIiBzdHlsZT0ibWluLXdpZHRoOiA4NHB4OyI+CiAgICAgICAgICAgICAgIAkJVGVjaG5vbG9naWVzICZhbXA7IEluaXRpYXRpdmVzIAogICAgICAgICAgICAgICA8L2E+CQkJCiAgICAgICAgICAgICAgIAoKPGRpdiBjbGFzcz0ibWVnYS1kcm9wZG93bi1tZW51Ij4KICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2staW5mbyI+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jayI+CiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9pbWFnZXMvbmF2LXRlY2hub2xvZ3ktaW5pdGlhdGl2ZXMtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPkV4cGxvcmUgb3VyIGhpZ2gtbGV2ZWwgaW5pdGlhdGl2ZXMsIG9yIGZvc3RlciBuZXcgdGVjaG5vbG9naWVzIHZpYSBvdXIgSW5kdXN0cnkgQ29ubmVjdGlvbnMgcHJvZ3JhbS48L3NwYW4+PGJyIC8+Cgo8L2Rpdj4KICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0yIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIAogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPgogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL2luaXRpYXRpdmVzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJsaW5rLXRpdGxlIj4KICAgICAgICAgICAgSW5pdGlhdGl2ZXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvaW5pdGlhdGl2ZXMvYXJ0aWZpY2lhbC1pbnRlbGxpZ2VuY2Utc3lzdGVtcy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEFydGlmaWNpYWwgSW50ZWxsaWdlbmNlIFN5c3RlbXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvaGVhbHRoY2FyZS1saWZlLXNjaWVuY2VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgSGVhbHRoY2FyZSBhbmQgTGlmZSBTY2llbmNlcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luaXRpYXRpdmVzL29wZW5zb3VyY2UvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBPcGVuIFNvdXJjZQogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9pbml0aWF0aXZlcy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0ibGluayI+CiAgICAgICAgICAgIEV4cGxvcmUgbW9yZSBpbml0aWF0aXZlcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICA8L3VsPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9pbmR1c3RyeS1jb25uZWN0aW9ucy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0ibGluay10aXRsZSI+CiAgICAgICAgICAgIFRlY2hub2xvZ2llcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9pbmR1c3RyeS1jb25uZWN0aW9ucy8zZC9ib2R5cHJvY2Vzc2luZy5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIDNEIEJvZHkgUHJvY2Vzc2luZwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9pbmR1c3RyeS1jb25uZWN0aW9ucy9lYy9hdXRvbm9tb3VzLXN5c3RlbXMuaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBBdXRvbm9tb3VzIFN5c3RlbXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvaW5kdXN0cnktY29ubmVjdGlvbnMvQkRHTU0taW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIEJpZyBEYXRhIEdvdmVybmFuY2UgYW5kIE1ldGFkYXRhIE1hbmFnZW1lbnQgCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL2luZHVzdHJ5LWNvbm5lY3Rpb25zL2luZHVzdHJ5LWNvbnNvcnRpdW0tbGVhcm5pbmctZW5naW5lZXJpbmcuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIEluZHVzdHJ5IENvbnNvcnRpdW0gb24gTGVhcm5pbmcgRW5naW5lZXJpbmcgCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL2luZHVzdHJ5LWNvbm5lY3Rpb25zL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJsaW5rIj4KICAgICAgICAgICAgRXhwbG9yZSBJbmR1c3RyeSBDb25uZWN0aW9ucyBwcm9ncmFtCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImNsb3NlLWljb24gaGlkZGVuLXhzIGhpZGRlbi1zbSI+PGltZyBzcmM9ImRhdGE6aW1hZ2UvcG5nK3htbDtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURJQUFBQXlDQVlBQUFBZVA0aXhBQUFBQVhOU1IwSUFyczRjNlFBQSBBV0pwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpIFlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWxoTlVDQkRiM0psSURVdU5DNHdJajRLSUNBZ1BISmsgWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKayBaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQWdJQ0FnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5IElpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaWGhwWmowaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOWwgZUdsbUx6RXVNQzhpUGdvZ0lDQWdJQ0FnSUNBOFpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ1VFkzSmxaVzV6YUc5MCBQQzlsZUdsbU9sVnpaWEpEYjIxdFpXNTBQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnIFBDOXlaR1k2VWtSR1BnbzhMM2c2ZUcxd2JXVjBZVDRLYnN6ZUxnQUFBYkpKUkVGVWFBWHRtbXR1d3lBUWhLMmUgM0Rmd0VUaXF1eVJGY1RHR2ZjeTRKQ3BTWkJ0Mlo3NkIrRWVrTFB1K3IvSXBZMXZlWkFod0t0QnlYWmZEUTdsTiBzMmNSMEZSZ3k3VVZKSzlOR3lhelpjQjY1Q0NwbnZ4NW5pNU1oL1g1U25RS3BnbWpabFFYL3NFTFpHWXpOOXdRIHlzM2tiaVNFQ3JPRUJRQ2hZQXd3SVVjb3VEZGNVQkdLNWtrVGJvU2llOUVOSk5RZEhvKzlZeG94dFJzSHo5bTEgMjBPVVpFaGpwRmJoTTEwUkFBZ05FL1JWY1FRazBudkZFNXIzQUhsNlFwRGFaZ3VZcFZickQ2M1RBR3Bxb0ZCZSBzUjVvYjgzclIrM3JBTXZTYVV6ejY3TzVLWUtiVHNqbmlibERsR1NETUpRUVg4WDgvMXJ0d09BMHlwZU1jaW9WIGl2OVJHV0x1TUowUXFiZm0zelpDcHdaVVUwTkEwMHRhQUMyMWVnSkFwUWZNMHdOQXZaYUlBRVY2cjRrY0t3Z1EgaElZRC9kV0NCRUJxdlFnVmR3eGpobVkzQ3RPUXFmMHIxQjFHZEErNndXSExhRjQwNFFOOGZRdjNoQXZXeEoxbiBtRGRNcUFNN1dnb3poQVZHaElaMU40dTcwUUJuTFRVem1SdXNSSUY2Tlp1Nk1BQVRiUjB5U3NFbW45YVk3bmUxIFFLWVdxTXh0SC9Xbm1qcmtkQ2RSZnkwRk9OWFErVVRXdytRNy9mSHMrRXFzMzl4Wnd0NGpBQXlvQUFBQUFFbEYgVGtTdVFtQ0MiLz48L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+CjwhLS0gI21lZ2EtZHJvcGRvd24tbWVudS1jb250YWluZXIgZW5kIC0tPgoKICAgICAgICAgICAgPC9saT4KICAgICAgICAgCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcC1kb3duLW5hdiI+CiAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJkcm9wZG93bi1saW5rIiBzdHlsZT0ibWluLXdpZHRoOiA4NHB4OyI+CiAgICAgICAgICAgICAgIAkJUGFydGljaXBhdGUgCiAgICAgICAgICAgICAgIDwvYT4JCQkKICAgICAgICAgICAgICAgCgo8ZGl2IGNsYXNzPSJtZWdhLWRyb3Bkb3duLW1lbnUiPgogICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jay1pbmZvIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2ltYWdlcy9uYXYtcGFydGljaXBhdGUtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPkpvaW4gYSBnbG9iYWwgbmV0d29yayBvZiBpbmR1c3RyeSAmYW1wOyB0ZWNobm9sb2d5IGV4cGVydHMgdGhhdCBjaGFuZ2UgdGhlIHdheSBwZW9wbGUgbGl2ZSwgd29yaywgYW5kIGNvbW11bmljYXRlLjwvc3Bhbj4KPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMiBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9hYm91dC9tZW1iZXJzaGlwL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPgogICAgICAgICAgICBJRUVFIFNBIE1lbWJlcnNoaXAKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvZGV2ZWxvcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgU3RhbmRhcmRzIERldmVsb3BtZW50CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL3Byb2R1Y3RzLXNlcnZpY2VzL2Ftcy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgQWxsaWFuY2UgTWFuYWdlbWVudCBTZXJ2aWNlcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9pbmR1c3RyeS1jb25uZWN0aW9ucy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgTmV3IFRlY2hub2xvZ2llcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9kZXZlbG9wL2V0b29scy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIGVUb29scwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICA8L3VsPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9hYm91dC9hd2FyZHMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIEF3YXJkcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Ii9wcm9kdWN0cy1zZXJ2aWNlcy9pY2FwL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPgogICAgICAgICAgICBJRUVFIENlcnRpZmljYXRpb24KICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvaW5pdGlhdGl2ZXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+CiAgICAgICAgICAgIEluaXRpYXRpdmVzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL2V2ZW50cy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4KICAgICAgICAgICAgRXZlbnRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iL2luaXRpYXRpdmVzL29wZW5zb3VyY2UvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBJRUVFIFNBIE9wZW4KICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSIvcGFydGljaXBhdGUvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9ImxpbmsiPgogICAgICAgICAgICBWaWV3IGFsbAogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICA8L3VsPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJjbG9zZS1pY29uIGhpZGRlbi14cyBoaWRkZW4tc20iPjxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZyt4bWw7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFESUFBQUF5Q0FZQUFBQWVQNGl4QUFBQUFYTlNSMElBcnM0YzZRQUEgQVdKcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaSBZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlsaE5VQ0JEYjNKbElEVXVOQzR3SWo0S0lDQWdQSEprIFpqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmsgWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROSBJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02WlhocFpqMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzlsIGVHbG1MekV1TUM4aVBnb2dJQ0FnSUNBZ0lDQThaWGhwWmpwVmMyVnlRMjl0YldWdWRENVRZM0psWlc1emFHOTAgUEM5bGVHbG1PbFZ6WlhKRGIyMXRaVzUwUGdvZ0lDQWdJQ0E4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRLSUNBZyBQQzl5WkdZNlVrUkdQZ284TDNnNmVHMXdiV1YwWVQ0S2JzemVMZ0FBQWJKSlJFRlVhQVh0bW10dXd5QVFoSzJlIDNEZndFVGlxdXlSRmNUR0dmY3k0SkNwU1pCdDJaNzZCK0Vla0xQdStyL0lwWTF2ZVpBaHdLdEJ5WFpmRFE3bE4gczJjUjBGUmd5N1VWSks5Tkd5YXpaY0I2NUNDcG52eDVuaTVNaC9YNVNuUUtwZ21qWmxRWC9zRUxaR1l6Tjl3USB5czNrYmlTRUNyT0VCUUNoWUF3d0lVY291RGRjVUJHSzVra1Rib1NpZTlFTkpOUWRIbys5WXhveHRSc0h6OW0xIDIwT1VaRWhqcEZiaE0xMFJBQWdORS9SVmNRUWswbnZGRTVyM0FIbDZRcERhWmd1WXBWYnJENjNUQUdwcW9GQmUgc1I1b2I4M3JSKzNyQU12U2FVeno2N081S1lLYlRzam5pYmxEbEdTRE1KUVFYOFg4LzFydHdPQTB5cGVNY2lvViBpdjlSR1dMdU1KMFFxYmZtM3paQ3B3WlVVME5BMDB0YUFDMjFlZ0pBcFFmTTB3TkF2WmFJQUVWNnI0a2NLd2dRIGhJWUQvZFdDQkVCcXZRZ1Zkd3hqaG1ZM0N0T1FxZjByMUIxR2RBKzZ3V0hMYUY0MDRRTjhmUXYzaEF2V3hKMW4gbURkTXFBTTdXZ296aEFWR2hJWjFONHU3MFFCbkxUVXptUnVzUklGNk5adTZNQUFUYlIweVNzRW1uOWFZN25lMSBRS1lXcU14dEgvV25tanJrZENkUmZ5MEZPTlhRK1VUV3crUTcvZkhzK0VxczM5eFp3dDRqQUF5b0FBQUFBRWxGIFRrU3VRbUNDIi8+PC9hPgogICAgICA8L2Rpdj4KICAgPC9kaXY+CjwvZGl2Pgo8IS0tICNtZWdhLWRyb3Bkb3duLW1lbnUtY29udGFpbmVyIGVuZCAtLT4KCiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgIAogICAgICA8L3VsPgogICA8L2Rpdj4KPC9uYXY+CjwhLS0gI3NpdGUtbmF2aWdhdGlvbi1jb250ZW50IGVuZCAtLT4KPHN0eWxlIHR5cGU9J3RleHQvY3NzJz4KCS5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiB7CiAgICAJYmFja2dyb3VuZC1jb2xvcjogIzI2MjYyNiAhaW1wb3J0YW50OwoJfQoJLmhlYWRlci5zdGlja3kgLnNpdGUtbmF2aWdhdGlvbiB7CiAgICAJYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50OwoJfQkKCS5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiAubWVudS10b2dnbGUgewoJCWJhY2tncm91bmQtY29sb3I6ICMyNjI2MjYgIWltcG9ydGFudDsKCX0KCS5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiBhLmRyb3Bkb3duLWxpbmsgewogICAgCWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7IAogICAgCWZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OwkKCX0KCS5tZWdhLWRyb3Bkb3duLW1lbnUgeyAKICAgIAliYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7CiAgICAJY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDsgCiAgICB9CiAgICAucGFnZS1oZWFkZXItY29udGFpbmVyIC5zaXRlLW5hdmlnYXRpb24gLm5hdmlnYXRpb24tYmFyIC5tZWdhLWRyb3Bkb3duLW1lbnUgdWwgbGkgYSB7CiAgICAJZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7CiAgICAJY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDsKCX0KICAgIC5wYWdlLWhlYWRlci1jb250YWluZXIgLnNpdGUtbmF2aWdhdGlvbiAubmF2aWdhdGlvbi1iYXIgLm1lZ2EtZHJvcGRvd24tbWVudSB1bCBsaSBhLnBsYWluLWxpbmsgewogICAgCWZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OwogICAgfQogICAgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWJhciAubWVnYS1kcm9wZG93bi1tZW51IHVsIGxpIGEubGluay10aXRsZSB7IAogICAgCWZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OwogICAgfQogICAgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciAuc2l0ZS1uYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWJhciAubWVnYS1kcm9wZG93bi1tZW51IHVsIGxpIGEubGluayB7IAogICAgCWZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OwogICAgCWNvbG9yOiAjMDBCNUUyICFpbXBvcnRhbnQ7CiAgICB9CiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7CgkgICAgLmhlYWRlci5zdGlja3kgLnNpdGUtbmF2aWdhdGlvbiBuYXYgewoJCQltYXJnaW4tbGVmdDogcHggIWltcG9ydGFudDsKCQl9CiAgICB9CiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKCSAgICAucGFnZS1oZWFkZXItY29udGFpbmVyIC5zaXRlLW5hdmlnYXRpb24gLm5hdmlnYXRpb24tYmFyIC5tZWdhLWRyb3Bkb3duLW1lbnUgewoJCQlib3JkZXItdG9wLWNvbG9yOiAgIWltcG9ydGFudDsKCQl9Cgl9CglAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKCQkucGFnZS1oZWFkZXItY29udGFpbmVyIC5zaXRlLW5hdmlnYXRpb24gLm5hdmlnYXRpb24tYmFyPmxpLmFjdGl2ZSBhLmRyb3Bkb3duLWxpbms6OmFmdGVyIHsKCQkJYmFja2dyb3VuZC1jb2xvcjogICFpbXBvcnRhbnQ7CgkJfQogICAgfQo8L3N0eWxlPgoKICAgICAgPGRpdiBjbGFzcz0icmlnaHQtYnRucyI+CiAgICAgICAgIDxhIGhyZWY9Ii9wcm9kdWN0cy1zZXJ2aWNlcy9yZWdhdXRoL2luZGV4Lmh0bWwiIGNsYXNzPSJidG4tc3R5bGUgZ3JheS1iZyI+TUFDIEFERFJFU1M8L2E+CiAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cudGVjaHN0cmVldC5jb20vaWVlZSIgY2xhc3M9ImJ0bi1zdHlsZSBvcmFuZ2UiPkJVWSBTVEFOREFSRFM8L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+CjwhLS0gRW5kIFBhZ2UgaGVhZGVyIEJsb2NrIGNvbXBvbmVudCAtLT4KCgo8c3R5bGUgdHlwZT0ndGV4dC9jc3MnPgoKCgkKCUBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgewoJCS5uby1zaG93LXJlZ3VsYXIgewoJCQlkaXNwbGF5OiBub25lOwoJCX0KCQkucGFnZS1oZWFkZXItY29udGFpbmVyIC5oZWFkZXItYmxvY2sgLmxvZ28gewogICAgCQl3aWR0aDogMTUwcHggIWltcG9ydGFudDsKICAgIAkJaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7CiAgICAJCW1hcmdpbi10b3A6IC0wLjk2JSAhaW1wb3J0YW50OwoJCX0KCQkubm8tc2hvdy1zY3JvbGwtZG93biAucGxhdGZvcm0tZ3JhcGhpYy1pbWFnZSB7CgkgICAJCXdpZHRoOiA4MC4zOTk5OTk5OTk5OTk5OXB4ICFpbXBvcnRhbnQ7CgkgICAJCWhlaWdodDogMTVweCAhaW1wb3J0YW50OwoJCX0JCQoJfQoJQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7CgkJLm5vLXNob3ctcmVndWxhciB7CgkJCWRpc3BsYXk6IG5vbmU7CgkJfQoJCS5wYWdlLWhlYWRlci1jb250YWluZXIgLmhlYWRlci1ibG9jayAubG9nbyB7CiAgICAJCXdpZHRoOiAxNTBweCAhaW1wb3J0YW50OwogICAgCQloZWlnaHQ6IDE1cHggIWltcG9ydGFudDsKICAgIAkJbWFyZ2luLXRvcDogLTAuOTYlICFpbXBvcnRhbnQ7CgkJfQoJCS5uby1zaG93LXNjcm9sbC1kb3duIC5wbGF0Zm9ybS1ncmFwaGljLWltYWdlIHsKCSAgIAkJd2lkdGg6IDgwLjM5OTk5OTk5OTk5OTk5cHggIWltcG9ydGFudDsKCSAgIAkJaGVpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7CgkJfQoJfQoJCgkKCUBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgewoJCS5uby1zaG93LXJlZ3VsYXIgewoJCQlkaXNwbGF5OiBub25lOwoJCX0KCQkucGFnZS1oZWFkZXItY29udGFpbmVyIC5oZWFkZXItYmxvY2sgLmxvZ28gewogICAgCQl3aWR0aDogMjAwcHggIWltcG9ydGFudDsKICAgIAkJaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7CiAgICAJCW1hcmdpbi10b3A6IC0xLjI4MDAwMDAwMDAwMDAwMDIlICFpbXBvcnRhbnQ7CgkJfQoJCS5uby1zaG93LXNjcm9sbC1kb3duIC5wbGF0Zm9ybS1ncmFwaGljLWltYWdlIHsKCSAgIAkJd2lkdGg6IDEwNy4ycHggIWltcG9ydGFudDsKCSAgIAkJaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7CgkJfQoJfQoJCiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7CgkJLm5vLXNob3ctcmVndWxhciB7CgkJCWRpc3BsYXk6IG5vbmU7CgkJfQoJCS5wYWdlLWhlYWRlci1jb250YWluZXIgLmhlYWRlci1ibG9jayAubG9nbyB7CiAgICAJCXdpZHRoOiAyNTBweCAhaW1wb3J0YW50OwogICAgCQloZWlnaHQ6IDI1cHggIWltcG9ydGFudDsKICAgIAkJbWFyZ2luLXRvcDogLTEuNiUgIWltcG9ydGFudDsKCQl9CgkgICAgLmhlYWRlci5zdGlja3kgLm5vLXNob3ctc2Nyb2xsLWRvd24gewoJCQlkaXNwbGF5OiBub25lOwoJCX0KCSAgICAuaGVhZGVyLnN0aWNreSAubm8tc2hvdy1yZWd1bGFyIHsKCQkJZGlzcGxheTogYmxvY2s7CgkJfQoJCS5oZWFkZXIuc3RpY2t5IC5wYWdlLWhlYWRlci1jb250YWluZXIgLmhlYWRlci1ibG9jayAubG9nbyB7CgkgICAJCXdpZHRoOiAxMjBweCAhaW1wb3J0YW50OwoJICAgCQloZWlnaHQ6IDIzcHggIWltcG9ydGFudDsKCSAgIAkJdG9wOiAwcHg7CgkgICAJCW1hcmdpbi10b3A6IC44NSUgIWltcG9ydGFudDsKCSAgIAl9CgkJLm5vLXNob3ctc2Nyb2xsLWRvd24gLnBsYXRmb3JtLWdyYXBoaWMtaW1hZ2UgewoJICAgCQl3aWR0aDogMTM0cHggIWltcG9ydGFudDsKCSAgIAkJaGVpZ2h0OiAyNXB4ICFpbXBvcnRhbnQ7CgkJfQoJfQoJCjwvc3R5bGU+PC9kaXY+CgogICAgCgo8L2Rpdj4KCiAgICAKCgo8L2hlYWRlcj4KPCEtLSAjaGVhZGVyIGVuZHMgLS0+CgoJICAgIAoKCgo8IS0tIEwyIFN0YW5kYXJkL1Byb2plY3QgUGFnZSBDb250YWluZXIgLS0+CjxkaXYgY2xhc3M9InByb2plY3RzLWRldGFpbC1wYWdlIj4KCTxkaXYgY2xhc3M9InByb2plY3RzLWRldGFpbC1wYWdlLWhlYWRlciI+CiAgICAJPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAJPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgCTxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMTIiPgogICAgICAgICAgICAJCQoKCgoKCgoKPCEtLSBEeW5hbWljIFBhZ2UgVGl0bGUgRGV0YWlscyBDb250ZW50IC0tPgoKCTxkaXYgY2xhc3M9ImJ1dHRvbi1yb3cgdGV4dC1sZWZ0IHNtYWxsLWJ0biI+CgkgICAgPGRpdiBjbGFzcz0iYnV0dG9uY2VsbCI+CgkgICAgICAgIDxhIGNsYXNzPSJidG4tc3R5bGUgZ3JleSI+U3RhbmRhcmQ8L2E+CgkgICAgPC9kaXY+CgkgICAgPGRpdiBjbGFzcz0iYnV0dG9uY2VsbCI+CgkgICAgICAgIDxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIiB0YXJnZXQ9Il9ibGFuayI+QWN0aXZlPC9hPgoJICAgIDwvZGl2PgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJydGUtd2l0aC1jdGEiPgoJICAgIDxkaXYgY2xhc3M9ImN0YS1ydGUgdGV4dC1sZWZ0Ij4KCSAgICAgICAgPGRpdiBjbGFzcz0idGV4dCBydGUiIHN0eWxlPSJjb2xvcjp3aGl0ZSI+CgkgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3ViLWhlYWRpbmciPklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3k8L3NwYW4+CgkgICAgICAgICAgICA8YnIvPgoJICAgICAgICA8L2Rpdj4KCSAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLXJvdyB0ZXh0LWxlZnQiPgoJICAgICAgICAgICAgCgkJCQkgICAgPGRpdiBjbGFzcz0iYnV0dG9uY2VsbCI+CgkJCQkgICAgICAgIDxhIGNsYXNzPSJidG4tc3R5bGUgb3JhbmdlIiBocmVmPSJodHRwOi8vd3d3LnRlY2hzdHJlZXQuY29tL2llZWUvcHJvZHVjdHMvdmVuZG9yX2lkLzcyOTIiIHRhcmdldD0iX2JsYW5rIj4KCQkJCSAgICAgICAgCUJ1eSBUaGlzIFN0YW5kYXJkCgkJCQkgICAgICAgIDwvYT4KCQkJCSAgICA8L2Rpdj4KCQkJCSAgICAKCQkJCQoJCQkJCgkJCSAgICA8ZGl2IGNsYXNzPSJidXR0b25jZWxsIj4KCQkJICAgICAgICA8YSBjbGFzcz0iYnRuLXN0eWxlIHdoaXRlLW91dGxpbmUiIGhyZWY9Imh0dHA6Ly9pZWVleHBsb3JlLmllZWUub3JnL3NlcnZsZXQvb3BhYz9wdW51bWJlcj04ODYzNzk3IiB0YXJnZXQ9Il9ibGFuayI+CgkJCSAgICAgICAgCUFjY2VzcyBWaWEgU3Vic2NyaXB0aW9uCgkJCSAgICAgICAgPC9hPgoJCQkgICAgPC9kaXY+CgkgICAgICAgIDwvZGl2PgoJICAgIDwvZGl2PgoJPC9kaXY+Cgo8IS0tICNkeW5hbWljLXBhZ2UtdGl0bGUtZGV0YWlscy1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgCQk8L2Rpdj4KCTwvZGl2PgogICAgPGRpdiBjbGFzcz0icHJvamVjdHMtZGV0YWlsLXBhZ2UtY29udGVudCBjb250ZW50LXdpZHRoLXR3by1jb2x1bW5zIGxlZnQtY29sdW1uLWJnIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTQiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxlZnQtYmxvY2sgcm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGVmdC1jb250ZW50LWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICAgICAgCTxkaXYgY2xhc3M9ImxlZnQtZmlsdGVyLW5hdiBjb2wtc20tMTEgY29sLW1kLTExICI+CgkgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgoKCjwhLS0gRHluYW1pYyBQYWdlIExlZnROYXYgRGV0YWlscyBDb250ZW50IC0tPgoKCTxkaXYgY2xhc3M9ImZpbHRlci10aXRsZSBoaWRkZW4teHMiPkV4cGxvcmUgVGhpcyBTdGFuZGFyZDwvZGl2PgoJPGRpdiBjbGFzcz0ibmF2IHByb2plY3QtZGV0YWlscy1pdGVtcyI+CgkgICAgPGRpdiBjbGFzcz0icHJvamVjdC1kcm9wZG93bi1zZWxlY3RvciI+CgkgICAgICAgIDxzcGFuIGNsYXNzPSJyZXBsYWNlLXRleHQiPjwvc3Bhbj4KCSAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tdHJpYW5nbGUtYm90dG9tIj48L3NwYW4+CgkgICAgPC9kaXY+CgkgICAgPHVsIGNsYXNzPSJwcm9qZWN0LWxpc3QtaXRlbXMgcHJvamVjdC1kcm9wZG93bi1saXN0LWhpZGUiPgoJICAgICAgICA8bGkgY2xhc3M9InNlbGVjdGVkIGFjdGl2ZSI+PGEgaHJlZj0iI1N0YW5kYXJkIj5TdGFuZGFyZCBEZXRhaWxzPC9hPjwvbGk+CgkgICAgICAgIDxsaT48YSBocmVmPSIjQWRkaXRpb25hbCI+QWRkaXRpb25hbCBSZXNvdXJjZXM8L2E+PC9saT4KCSAgICAgICAgPGxpPjxhIGhyZWY9IiNXb3JraW5nIj5Xb3JraW5nIEdyb3VwPC9hPjwvbGk+CgkgICAgPC91bD4KCTwvZGl2PgoKPCEtLSAjZHluYW1pYy1wYWdlLXRpdGxlLWRldGFpbHMtY29udGVudCBlbmQgLS0+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoKCgoKCgkgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCQkJCQkJPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodC1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgCQoKCgoKCgoKPCEtLSBEeW5hbWljIFBhZ2UgRGV0YWlscyBDb250ZW50IC0tPgoKICAgIDxkaXYgY2xhc3M9ImRldGFpbHMtYmxvY2sgYm90dG9tLWJvcmRlciIgaWQ9IlN0YW5kYXJkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+U3RhbmRhcmQgRGV0YWlsczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj5UZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vuc29ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN0YW5kYXJkLWluZm8iPgogICAgICAgICAgICA8dGFibGUgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiIHdpZHRoPSIxMDAlIj4KICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+U3RhbmRhcmRzIENvbW1pdHRlZTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iaHR0cDovL2llZWUtYWVzcy5vcmcvdGVjaC1vcHMvZ3lyby1hbmQtYWNjZWxlcm9tZXRlciIgY2xhc3M9ImxpbmsiPkFFUy9HQSAtIEd5cm8gQWNjZWxlcm9tZXRlciBQYW5lbDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPCEtLSBTdGFuZGFyZHMgRGF0YSBzdGFydCAtLT4KICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+U3RhdHVzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5BY3RpdmU8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5Cb2FyZCBBcHByb3ZhbDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+MjAxOS0wNi0xMzwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPkhpc3Rvcnk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hlZCBEYXRlOjIwMTktMTAtMDgKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIDwhLS0gU3RhbmRhcmRzIERhdGEgZW5kIC0tPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwhLS0gUHJvamVjdHMgRGF0YSBzdGFydCAtLT4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8IS0tIFByb2plY3RzIERhdGEgZW5kIC0tPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKPCEtLSAjZHluYW1pYy1wYWdlLWRldGFpbHMtY29udGVudCBlbmQgLS0+CgogICAgICAgICAgICAgICAgICAgIAkKCgoKCgoKCjwhLS0gRHluYW1pYyBQYWdlIEFkZGl0aW9uYWwgUmVzb3VyY2VzIERldGFpbHMgQ29udGVudCAtLT4KCiAgICA8ZGl2IGNsYXNzPSJkZXRhaWxzLWJsb2NrIGJvdHRvbS1ib3JkZXIiIGlkPSJBZGRpdGlvbmFsIj4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSI+QWRkaXRpb25hbCBSZXNvdXJjZXMgRGV0YWlsczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InN0YW5kYXJkLWluZm8iPgogICAgICAgICAgICA8dGFibGUgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiIHdpZHRoPSIxMDAlIj4KICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICA8IS0tIFN0YW5kYXJkcyBEYXRhIHN0YXJ0IC0tPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5QQVI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Imh0dHBzOi8vZGV2ZWxvcG1lbnQuc3RhbmRhcmRzLmllZWUub3JnL215cHJvamVjdC13ZWIvcHVibGljL3ZpZXcuaHRtbCNwYXJkZXRhaWwvNjQ2MyIgY2xhc3M9ImxpbmsiPkFwcHJvdmVkIFBBUjwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPCEtLSBTdGFuZGFyZHMgRGF0YSBlbmQgLS0+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPCEtLSBDb21tb24gRGF0YSBzdGFydCAtLT4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8IS0tIENvbW1vbiBEYXRhIGVuZCAtLT4KICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCjwhLS0gI2R5bmFtaWMtcGFnZS1hZGRpdGlvbmFsLXJlc291cmNlcy1kZXRhaWxzLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgICAgICAgICAgICAJCgoKCgoKCgo8IS0tIER5bmFtaWMgV29ya2luZyBHcm91cCBEZXRhaWxzIENvbnRlbnQgLS0+CgogICAgPGRpdiBjbGFzcz0iZGV0YWlscy1ibG9jayIgaWQ9IldvcmtpbmciPgogICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj5Xb3JraW5nIEdyb3VwIERldGFpbHM8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzdGFuZGFyZC1pbmZvIj4KICAgICAgICAgICAgPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIiB3aWR0aD0iMTAwJSI+CiAgICAgICAgICAgICAgICA8dGJvZHk+CiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPldvcmtpbmcgR3JvdXA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlNFTlNSX1dHIC0gU2Vuc29ycyBXb3JraW5nIEdyb3VwPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+V29ya2luZyBHcm91cCBDaGFpcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+SGFycnkgRGF2aXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5TdGFuZGFyZHMgQ29tbWl0dGVlPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSJodHRwOi8vaWVlZS1hZXNzLm9yZy90ZWNoLW9wcy9neXJvLWFuZC1hY2NlbGVyb21ldGVyIiBjbGFzcz0ibGluayI+QUVTL0dBIC0gR3lybyBBY2NlbGVyb21ldGVyIFBhbmVsPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+U29jaWV0eTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iaHR0cDovL3d3dy5pZWVlLWFlc3Mub3JnLyIgY2xhc3M9ImxpbmsiPklFRUUgQWVyb3NwYWNlIGFuZCBFbGVjdHJvbmljIFN5c3RlbXMgU29jaWV0eTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPklFRUUgUHJvZ3JhbSBNYW5hZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtNiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGRhdGEtdXNlcj0ibWFpbFRPOnAucm9kZXJAaWVlZS5vcmciIGNsYXNzPSJsaW5rIHVzZXJfZW1haWxfX2xpbmsiPlBhdHJpY2lhIFJvZGVyPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj5BY3RpdmUgUHJvamVjdHM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvcHJvamVjdC8xNDMxLmh0bWwiIGNsYXNzPSJsaW5rIj5QMTQzMSAtIFN0YW5kYXJkIGZvciBTcGVjaWZ5aW5nIGFuZCBUZXN0aW5nIENvcmlvbGlzIFZpYnJhdG9yeSBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5UaGlzIHN0YW5kYXJkIGRlZmluZXMgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IHByb2NlZHVyZXMgZm9yIGEgc2luZ2xlLWF4aXMgQ29yaW9saXMgdmlicmF0b3J5IGd5cm8gKENWRykgZm9yIHVzZSBhcyBhIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGFuZ3VsYXIgZGlzcGxhY2VtZW50IG1lYXN1cmluZyBzeXN0ZW1zLCBhbmQgYW5ndWxhciByYXRlIG1lYXN1cmluZyBzeXN0ZW1zLiAgSW5mb3JtYXRpdmUgYW5uZXhlcyBjb3ZlciBDVkcgZGVzaWduIGZlYXR1cmVzIGFuZCB0aGVvcmV0aWNhbCBwcmluY2lwbGVzIG9mIG9wZXJhdGlvbi48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPkV4aXN0aW5nIFN0YW5kYXJkczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8yOTItMTk2OS5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAyOTItMTk2OSAtIElFRUUgU3BlY2lmaWNhdGlvbiBGb3JtYXQgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRoaXMgc3BlY2lmaWNhdGlvbiBkZWZpbmVzIHRoZSByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWRlZ3JlZS1vZi1mcmVlZG9tIHNwcmluZy1yZXN0cmFpbmVkIHJhdGUgZ3lybyBmb3IgW2FpcmNyYWZ0LCBtaXNzaWxlLCBzcGFjZWNyYWZ0LF9fX19fX10gYXBwbGljYXRpb25zLiBUaGUgcmF0ZSBneXJvIHNoYWxsIGJlIGNhcGFibGUgb2YgcHJvdmlkaW5nIFsoZGMsIGFjKSB2b2x0YWdlIG91dHB1dHMgcHJvcG9ydGlvbmFsIHRvIGFuZ3VsYXIgcmF0ZSBpbnB1dHMgdXAgdG9fX19fX18gZGVncmVlcyBwZXIgc2Vjb25kLCBhIHN3aXRjaCBjbG9zdXJlKHMpIGF0IGFuZ3VsYXIgcmF0ZXMgKGV4Y2VlZGluZyxsZXNzIHRoYW4pX19fX19fICgrLC0sPylfX19fX18gZGVncmVlcyBwZXIgc2Vjb25kXS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8yOTMtMTk2OS5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAyOTMtMTk2OSAtIElFRUUgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBTcHJpbmctUmVzdHJhaW5lZCBSYXRlIEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlJlY29tbWVuZGVkIHJhdGUgZ3lybyB0ZXN0IHByb2NlZHVyZXMgZGVyaXZlZCBmcm9tIHRob3NlIGN1cnJlbnRseSBpbiB1c2UsIGluY2x1ZGluZyB0ZXN0IGNvbmRpdGlvbnMgdG8gYmUgY29uc2lkZXJlZCwgYXJlIGNvbXBpbGVkLiBJbiBzb21lIGNhc2VzIGFsdGVybmF0ZSBtZXRob2RzIGZvciBtZWFzdXJpbmcgYSBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpYyBoYXZlIGJlZW4gaW5jbHVkZWQuIFRoaXMgc3RhbmRhcmQgaXMgaW50ZW5kZWQgdG8gYmUgYSBndWlkZSBpbiB0aGUgcHJlcGFyYXRpb24gb2YgU2VjdGlvbiA0IG9mIGEgc3BlY2lmaWNhdGlvbiB0aGF0IGZvbGxvd3MgdGhlIGZvcm1hdCBvZiBJRUVFIFN0ZCAyOTIsIFNwZWNpZmljYXRpb24gRm9ybWF0IGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvcy4NCjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzUxNy0xOTc0Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDUxNy0xOTc0IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkEgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHJhdGUtaW50ZWdyYXRpbmcgZ3lybyBzcGVjaWZpY2F0aW9uIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gbWVldGluZyBncm91bmQgb2YgdGVybWlub2xvZ3kgYW5kIHByYWN0aWNlIGZvciBtYW51ZmFjdHVyZXJzIGFuZCB1c2VycyBpcyBwcmVzZW50ZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIHJhdGUtaW50ZWdyYXRpbmcgZ3lybyBpcyBnaXZlbi48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgU3VwZXJzZWRlZCI+U3VwZXJzZWRlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzUyOC0yMDAxLmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDUyOC0yMDAxIC0gSUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5PC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5vcnMgYXJlIHByZXNlbnRlZCBpbiB0aGlzIHN0YW5kYXJkLiBVc2FnZSBhcyB1bmRlcnN0b29kIGJ5IHRoZSBpbmVydGlhbCBzZW5zb3IgY29tbXVuaXR5IGlzIGdpdmVuIHByZWZlcmVuY2Ugb3ZlciBnZW5lcmFsIHRlY2huaWNhbCB1c2FnZSBvZiB0aGUgdGVybXMgaGVyZWluLiBUaGUgY3JpdGVyaW9uIGZvciBpbmNsdXNpb24gb2YgYSB0ZXJtIGFuZCBpdHMgZGVmaW5pdGlvbiBpbiB0aGlzIHN0YW5kYXJkIGlzIHVzZWZ1bG5lc3MgYXMgcmVsYXRlZCB0byBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC81MjktMTk4MC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA1MjktMTk4MCAtIFN1cHBsZW1lbnQgZm9yIFN0cmFwZG93biBBcHBsaWNhdGlvbnMgdG8gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkEgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHJhdGUtaW50ZWdyYXRpbmcgZ3lyb3Njb3BlIHNwZWNpZmljYXRpb24gaXMgcHJlc2VudGVkLiBSZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgcmF0ZS1pbnRlZ3JhdGluZyBneXJvc2NvcGUgYXJlIGNvbXBpbGVkLiBUaGlzIHN0YW5kYXJkLCB3aGVuIGNvbWJpbmVkIHdpdGggSUVFRSBTdGQgNTE3LTE5NzQgKFIxOTgwKSwgZGVmaW5lcyB0aGUgcmVxdWlyZW1lbnRzIGFuZCB0ZXN0IHByb2NlZHVyZXMgaW4gdGVybXMgb2YgY2hhcmFjdGVyaXN0aWNzIHVuaXF1ZSB0byB0aGUgZ3lyb3Njb3BlIG9yIHRob3NlIGFwcGxpY2F0aW9ucyBpbiB3aGljaCB0aGUgZHluYW1pYyBhbmd1bGFyIGlucHV0cyBhcmUgc2lnbmlmaWNhbnRseSBncmVhdGVyIHRoYW4gdGhlIGxpbWl0YXRpb25zIGlkZW50aWZpZWQgaW4gSUVFRSBTdGQgNTE3LjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBJbmFjdGl2ZS1SZXNlcnZlZCI+SW5hY3RpdmUtUmVzZXJ2ZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC82NzEtMTk4NS5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA2NzEtMTk4NSAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBOb25neXJvc2NvcGljIEluZXJ0aWFsIEFuZ3VsYXIgU2Vuc29yczogSmVyaywgQWNjZWxlcmF0aW9uLCBWZWxvY2l0eSwgYW5kIERpc3BsYWNlbWVudDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5BIGd1aWRlIGlzIHByZXNlbnRlZCBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc3BlY2lmaWNhdGlvbiBhbmQgdGVzdCBwcm9jZWR1cmUgZm9yIGFuIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgcHJvdmlkZXMgYSBjb21tb24gbWVldGluZyBncm91bmQgb2YgdGVybWlub2xvZ3kgYW5kIHByYWN0aWNlIGZvciBtYW51ZmFjdHVyZXJzIGFuZCB1c2VycyBvZiBhbiBhcnJheSBvZiBzZW5zb3JzIHRoYXQgaGF2ZSBiZWVuIGRldmVsb3BlZCB0byBtZWV0IG5lZWRzIG5vdCBlYXNpbHkgbWV0IGJ5IHRyYWRpdGlvbmFsIHNwaW5uaW5nLXJvdG9yIGd5cm9zY29wZXMuIEEgdGVzdCBwcm9jZWR1cmUgZm9yIHZlcmlmeWluZyB0aGF0IHRoZSBzcGVjaWZpY2F0aW9ucyBoYXZlIGJlZW4gbWV0IGlzIGdpdmVuLiBUaGUgc3RhbmRhcmQgaXMgbm90IGludGVuZGVkIHRvIGNvbXBldGUgd2l0aCBleGlzdGluZyBzdGFuZGFyZHMgZm9yIHNwZWNpZmljIGRldmljZXMgd2l0aCBoaWdobHkgc3BlY2lmaWMgbW9kZWxzIGFuZCBlcnJvciBzb3VyY2VzLCBzdWNoIGFzIHNwcmluZy1yZXN0cmFpbmVkIHJhdGUgZ3lyb3MsIGJ1dCB0byBwcm92aWRlIGEgdW5pZm9ybSBndWlkZSBmb3IgdGhvc2UgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3JzIHRoYXQgaGF2ZSBub3QgYmVlbiBjb3ZlcmVkIGVsc2V3aGVyZS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC84MTMtMTk4OC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA4MTMtMTk4OCAtIElFRUUgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBUd28tRGVncmVlLW9mLUZyZWVkb20gRHluYW1pY2FsbHkgVHVuZWQgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+QSBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHR3by1kZWdyZWUtb2YtZnJlZWRvbSBkeW5hbWljYWxseSB0dW5lZCBneXJvIChEVEcpIHNwZWNpZmljYXRpb24gaXMgZ2l2ZW4gdGhhdCBwcm92aWRlcyBhIGNvbW1vbiBncm91bmQgb2YgdGVybWlub2xvZ3kgYW5kIHByYWN0aWNlIGZvciBtYW51ZmFjdHVyZXJzIGFuZCB1c2Vycy4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgRFRHIGlzIGFsc28gZ2l2ZW4uIFRoZSByZXF1aXJlbWVudHMgYW5kIHRlc3QgcHJvY2VkdXJlcyBhcmUgZGVmaW5lZCBpbiB0ZXJtcyB1bmlxdWUgdG8gdGhlIERURy4gVGhleSBjb3ZlciBhcHBsaWNhdGlvbnMgb2YgdGhlIGd5cm8gYXMgYW4gYW5ndWxhciBtb3Rpb24gc2Vuc29yIGluIG5hdmlnYXRpb24gYW5kIGNvbnRyb2wgc3lzdGVtcy4gVGhleSBhcHBseSB0byB0d28gbW9kZXMgb2YgdXNlOiAoMSkgYXMgYSBzdHJhcC1kb3duIHNlbnNvciBpbiBvcGVyYXRpbmcgZW52aXJvbm1lbnRzIHR5cGljYWwgb2YgYWlyY3JhZnQgYW5kIG1pc3NpbGUgYXBwbGljYXRpb25zLCBhbmQgKDIpIGFzIGEgc2Vuc29yIGluIGdpbWJhbGxlZCBwbGF0Zm9ybSBhcHBsaWNhdGlvbnMgaW4gd2hpY2ggdGhlIGR5bmFtaWMgYW5ndWxhciBpbnB1dHMgdG8gd2hpY2ggdGhlIGd5cm8gaXMgc3ViamVjdGVkIGFyZSBiZW5pZ24gcmVsYXRpdmUgdG8gdGhlIGFjY3VyYWN5IHJlcXVpcmVkLiBJbiB0aGUgY2FzZSBvZiB0aGUgc3RyYXAtZG93biBEVEcsIHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIGV4dGVybmFsIGNhcHR1cmUgbG9vcHMgYXJlIGNvbnNpZGVyZWQgdG8gdGhlIGV4dGVudCBuZWNlc3NhcnkgdG8gZGVmaW5lIHRoZSBneXJvIHBlcmZvcm1hbmNlLg0KPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIFN1cGVyc2VkZWQiPlN1cGVyc2VkZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC85NTItMTk5Ny5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA5NTItMTk5NyAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgc2luZ2xlLWF4aXMgaW50ZXJmZXJvbWV0cmljIGZpYmVyIG9wdGljIGd5cm8gKElGT0cpDQpmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHNpbmdsZS1heGlzIElGT0cgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIGZpYmVyIG9wdGljIGd5cm8sIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMTU1NC0yMDA1Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDE1NTQtMjAwNSAtIElFRUUgUmVjb21tZW5kZWQgUHJhY3RpY2UgZm9yIEluZXJ0aWFsIFNlbnNvciBUZXN0IEVxdWlwbWVudCwgSW5zdHJ1bWVudGF0aW9uLCBEYXRhIEFjcXVpc2l0aW9uLCBhbmQgQW5hbHlzaXM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+VGVzdCBlcXVpcG1lbnQsIGRhdGEgYWNxdWlzaXRpb24gZXF1aXBtZW50LCBpbnN0cnVtZW50YXRpb24sIHRlc3QgZmFjaWxpdGllcywgYW5kIGRhdGEgYW5hbHlzaXMgdGVjaG5pcXVlcyB1c2VkIGluIGluZXJ0aWFsIHNlbnNvciB0ZXN0aW5nIGFyZSBkZXNjcmliZWQgaW4gdGhpcyByZWNvbW1lbmRlZCBwcmFjdGljZS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC82NDctMjAwNi5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA2NDctMjAwNiAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBMYXNlciBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtYXhpcyByaW5nIGxhc2VyIGd5cm8gKFJMRykgZm9yIHVzZSBhcyBhDSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZQ0gbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhDSBzaW5nbGUtYXhpcyBSTEcgaXMgcHJvdmlkZWQuIEEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhbiBSTEcsDSBkZXJpdmVkIGZyb20gdGhvc2UgcHJlc2VudGx5IHVzZWQgaW4gdGhlIGluZHVzdHJ5LCBpcyBhbHNvIHByb3ZpZGVkLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBJbmFjdGl2ZS1SZXNlcnZlZCI+SW5hY3RpdmUtUmVzZXJ2ZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC84MzYtMjAwOS5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA4MzYtMjAwOSAtIElFRUUgUmVjb21tZW5kZWQgUHJhY3RpY2UgZm9yIFByZWNpc2lvbiBDZW50cmlmdWdlIFRlc3Rpbmcgb2YgTGluZWFyIEFjY2VsZXJvbWV0ZXJzPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlRoaXMgcmVjb21tZW5kZWQgcHJhY3RpY2UgZGVzY3JpYmVzIHRoZSBjb25kdWN0IGFuZCBhbmFseXNpcyBvZiBwcmVjaXNpb24gdGVzdHMgdGhhdCBhcmUgdG8gYmUgcGVyZm9ybWVkIG9uIGxpbmVhciBhY2NlbGVyb21ldGVycyB1c2luZyBjZW50cmlmdWdlIHRlY2huaXF1ZXMuIFRoZSB0ZXJtID9wcmVjaXNpb24sPyBpbiB0aGlzIGNvbnRleHQsIHJlZmVycyB0byB0ZXN0cyB0aGF0IGFyZSBjb25kdWN0ZWQgdG8gZXZhbHVhdGUgYWNjZWxlcm9tZXRlciBwYXJhbWV0ZXJzLCBhcyBvcHBvc2VkIHRvIHRob3NlIGNvbmR1Y3RlZCB0byBlc3RhYmxpc2ggZW52aXJvbm1lbnRhbCBzdXJ2aXZhYmlsaXR5IG9ubHkuIEV2YWx1YXRpb24gbWF5IHRha2UgdGhlIGZvcm0gb2YgZGV0ZXJtaW5pbmcgdGhlIGNvZWZmaWNpZW50cyBvZiB0aGUgYWNjZWxlcm9tZXRlcj9zIG1vZGVsIGVxdWF0aW9uLCBleGNlcHQgZm9yIGJpYXMgYW5kIHNjYWxlIGZhY3Rvciwgd2hpY2ggYXJlIG1vc3QgYWNjdXJhdGVseSBkZXRlcm1pbmVkIGJ5IHN0YXRpYyBtdWx0aS1wb3NpdGlvbiB0ZXN0cy4gQWx0ZXJuYXRpdmVseSwgZXZhbHVhdGlvbiBtYXkgb25seSBlc3RhYmxpc2ggdGhhdCB0aGUgYWNjZWxlcm9tZXRlciBvdXRwdXQgY29tcGxpZXMgd2l0aCBzcGVjaWZpYyBlcnJvciBsaW1pdCBjcml0ZXJpYS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8xNDMxLTIwMDQuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgMTQzMS0yMDA0IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIENvcmlvbGlzIFZpYnJhdG9yeSBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgYSBzaW5nbGUtYXhpcyBDb3Jpb2xpcyB2aWJyYXRvcnkgZ3lybyAoQ1ZHKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIEEgc3RhbmRhcmQgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiBhIHNpbmdsZS1heGlzIENWRyBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCBwcm9jZWR1cmVzIGZvciB0ZXN0aW5nIGEgQ1ZHLCBkZXJpdmVkIGZyb20gdGhvc2UgcHJlc2VudGx5IHVzZWQgaW4gdGhlIGluZHVzdHJ5LCBpcyBhbHNvIHByb3ZpZGVkLiBJbmZvcm1hdGl2ZSBhbm5leGVzIGNvdmVyIENWRyBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBTdXBlcnNlZGVkIj5TdXBlcnNlZGVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMTI5My0xOTk4LUNvcjEtMjAwOC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAxMjkzLTE5OTgvQ29yIDEtMjAwOCAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBMaW5lYXIsU2luZ2xlLUF4aXMsIE5vbmd5cm9zY29waWMgQWNjZWxlcm9tZXRlcnMgQ29ycmlnZW5kdW0gMTogQ2hhbmdlcyB0byBBbm5leCBLIGFuZCBBbm5leCBMPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkNvcnJpZ2VuZHVtIHRvIElFRUUgU3RkIDEyOTMtMTk5OC4gU3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGxpbmVhciwgc2luZ2xlLWF4aXMsIG5vbmd5cm9zY29waWMgYWNjZWxlcm9tZXRlcnMgZm9yIHVzZSBhcyBhIHNlbnNvciBpbiBhdHRpdHVkZSBjb250cm9sIHN5c3RlbXMsIGxpbmVhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBsaW5lYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gVGhlIHNwZWNpZmljYXRpb24gZm9ybWF0IGd1aWRlIGFuZCB0ZXN0IHByb2NlZHVyZSBzdGFuZGFyZCBhcHBsaWVzIHRvIGZvcmNlLXJlYmFsYW5jZSBhY2NlbGVyb21ldGVycyAocGVuZHVsb3VzIG9yIHRyYW5zbGF0aW9uYWwgcHJvb2YNCm1hc3MpLCB2aWJyYXRpbmcgYmVhbSBhY2NlbGVyb21ldGVycyAoVkJBcyksIGFuZCBtaWNyb21lY2hhbmljYWwgYWNjZWxlcm9tZXRlcnMgdGhhdCByYW5nZQ0KZnJvbSBsZXNzZXIgYWNjdXJhY3kgdG8gaGlnaCBhY2N1cmFjeSBkZXZpY2VzLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzE0MzEtMjAwNC1Db3IxLTIwMDguaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgMTQzMS0yMDA0L0NvciAxLTIwMDggLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgQ29yaW9saXMgVmlicmF0b3J5IEd5cm9zIC0gQ29ycmlnZW5kdW0gMTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5Db3JyaWdlbmR1bSB0byBJRUVFIFN0ZCAxNDMxLTIwMDQuIA0KPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNjcxLTE5ODUtQ29yMS0yMDEwLmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDY3MS0xOTg1L0NvciAxLTIwMTAgLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgTm9uZ3lyb3Njb3BpYyBJbmVydGlhbCBBbmd1bGFyIFNlbnNvcnM6IEplcmssIEFjY2VsZXJhdGlvbiwgVmVsb2NpdHksIGFuZCBEaXNwbGFjZW1lbnQgQ29ycmlnZW5kdW0gMTogNC43LjIuNiBTaG9ydC1UZXJtIFN0YWJpbGl0eSBhbmQgQW5uZXggQSBTZW5zb3IgRHluYW1pYyBCbG9jayBEaWFncmFtczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5JRUVFIFN0ZCA2NzEtMTk4NSBwcm92aWRlcyBzcGVjaWZpY2F0aW9ucyBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgbm9uLWd5cm9zY29waWMgaW5lcnRpYWwgYW5ndWxhciBzZW5zb3IgdGhhdCBtYXkgbWVhc3VyZSBhbmd1bGFyIGplcmssIGFjY2VsZXJhdGlvbiwgcmF0ZSwgb3IgZGlzcGxhY2VtZW50IHdpdGggb3Igd2l0aG91dCByZXNwb25zZSBkb3duIHRvIHplcm8gZnJlcXVlbmN5LiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZm9ybWF0IGlzIHByb3ZpZGVkLiBBIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBjb3ZlciBkZXNpZ24gZmVhdHVyZXMgYW5kIHRoZW9yZXRpY2FsIHByaW5jaXBsZXMgb2Ygb3BlcmF0aW9uLg0KVGhpcyBjb3JyaWdlbmR1bSBtYWtlcyBjaGFuZ2VzIHRvIDQuNy4yLjYgdG8gZGVsZXRlIGEgc2VudGVuY2UgdGhhdCBkb2VzIG5vdCBiZWxvbmcgdGhlcmUsIHRvIGFkZCBhIHN1YmNsYXVzZSB0aGF0IHdhcyBpbmFkdmVydGVudGx5IGxlZnQgb3V0LCBhbmQgdG8gcmVudW1iZXIgdGhlIGV4aXN0aW5nIHN1YmNsYXVzZXMuIENoYW5nZXMgYXJlIGFsc28gYmVpbmcgbWFkZSB0byBmaXggdGhlIGJsb2NrIGRpYWdyYW1zIGluIEFubmV4IEEsIHRvIGNvcnJlY3QgYSBtaXNzcGVsbGluZyBvZiBpbmVydGlhLCBhbmQgdG8gYWRkIGEgbWlzc2luZyBzeW1ib2wuDQo8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgQWN0aXZlIj5BY3RpdmU8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8xMjkzLTIwMTguaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgMTI5My0yMDE4IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIExpbmVhciBTaW5nbGUtQXhpcywgTm9uZ3lyb3Njb3BpYyBBY2NlbGVyb21ldGVyczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5UaGUgc3BlY2lmaWNhdGlvbiBhbmQgdGVzdCByZXF1aXJlbWVudHMgZm9yIGEgbGluZWFyLCBzaW5nbGUtYXhpcywgbm9uZ3lyb3Njb3BpYyBhY2NlbGVyb21ldGVyIGZvciB1c2UgaW4gaW5lcnRpYWwgbmF2aWdhdGlvbiwgZ3VpZGFuY2UsIGFuZCBsZXZlbGluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBBIHN0YW5kYXJkIHNwZWNpZmljYXRpb24gZ3VpZGUgYW5kIGEgY29tcGlsYXRpb24gb2YgcmVjb21tZW5kZWQgdGVzdCBwcm9jZWR1cmVzIGZvciBzdWNoIGFjY2VsZXJvbWV0ZXJzIGFyZSBwcm92aWRlZC4gSW5mb3JtYXRpdmUgYW5uZXhlcyBhcmUgZ2l2ZW4gb24gdGhlIHZhcmlvdXMgdHlwZXMgb2Ygc3VjaCBhY2NlbGVyb21ldGVycyAoZm9yY2Ugb3IgcGVuZHVsb3VzIHRvcnF1ZSByZWJhbGFuY2Ugd2l0aCBhbmFsb2cgb3IgZGlnaXRhbCBvdXRwdXQsIHZpYnJhdGluZyBiZWFtLCBhbmQgbWljcm9tZWNoYW5pY2FsKSBhbmQgZXJyb3IgZWZmZWN0cywgb24gZmlsdGVyaW5nLCBub2lzZSwgYW5kIHRyYW5zaWVudCBhbmFseXNpcyB0ZWNobmlxdWVzLCBhbmQgb24gY2FsaWJyYXRpb24gYW5kIG1vZGVsaW5nIHRlY2huaXF1ZXMgKG11bHRpcG9pbnQgdHVtYmxlIGFuYWx5c2lzLCB2aWJyYXRpb24gYW5kDQpzaG9jayB0ZXN0IGFuYWx5c2VzLCBhbmQgZ2VvcGh5c2ljYWwgZWZmZWN0cyBpbiBpbmVydGlhbCBpbnN0cnVtZW50IHRlc3RpbmcpLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzI5My0xOTY5LUNvcjEtMjAxNC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAyOTMtMTk2OS9Db3IgMS0yMDE0IC0gSUVFRSBTdGFuZGFyZCBmb3IgSUVFRSBUZXN0IFByb2NlZHVyZSBmb3IgU2luZ2xlLURlZ3JlZS1vZi1GcmVlZG9tIFNwcmluZy1SZXN0cmFpbmVkIFJhdGUgR3lyb3MgLS0gQ29ycmlnZW5kdW0gMTogVGFibGUgMSBIZWFkaW5nPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkNvcnJlY3Rpb24gdG8gVGFibGUgMSBvbiBwYWdlIDE0IG9mIElFRUUgU3RkIDI5My0xOTY5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNTI5LTE5ODAtQ29yMS0yMDE3Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDUyOS0xOTgwL0NvciAxLTIwMTcgLSBJRUVFIFN0YW5kYXJkIFN1cHBsZW1lbnQgZm9yIFN0cmFwZG93biBBcHBsaWNhdGlvbnMgdG8gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zIC0gQ29ycmlnZW5kdW0gMTogMy4zLjkuMi4yLCAzLjYuNC4xLjEsIDMuNi40LjEuMiwgNi4zLCBhbmQgMTAuMTAuNC4xPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkNvcnJlY3Rpb25zIGFyZSBtYWRlIGJ5IHRoaXMgY29ycmlnZW5kdW0gdG8gbWF0ZXJpYWwgYWxyZWFkeSBwdWJsaXNoZWQgaW4gSUVFRSBTdGQgNTI5LTE5ODAuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIFN1cGVyc2VkZWQiPlN1cGVyc2VkZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC85NTItMTk5Ny1Db3IxLTIwMTYuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgOTUyLTE5OTcvQ29yIDEtMjAxNiAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3MgLS0gQ29ycmlnZW5kdW0gMTogRmlndXJlIDEgYW5kIFN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkVycm9ycyBpZGVudGlmaWVkIGluIElFRUUgU3RkIDk1Mi0xOTk3IGFyZSBjb3JyZWN0ZWQgaW4gdGhpcyBjb3JyaWdlbmR1bS4gQ29ycmVjdGlvbnMgYXJlIG1hZGUgdG8gRmlndXJlIDEgYW5kIGluIHN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzk1Mi0yMDIwLmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDk1Mi0yMDIwIC0gSUVFRSBBcHByb3ZlZCBEcmFmdCBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1BeGlzIEludGVyZmVyb21ldHJpYyBGaWJlciBPcHRpYyBHeXJvczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5TcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHByb2NlZHVyZXMgZm9yIGEgc2luZ2xlLWF4aXMgaW50ZXJmZXJvbWV0cmljIGZpYmVyIG9wdGljIGd5cm8gKElGT0cpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gVGhlIHRlc3QgcHJvY2VkdXJlcyBhcmUgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgoKICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCjwhLS0gI2R5bmFtaWMtd29ya2luZy1ncm91cC1kZXRhaWxzLWNvbnRlbnQgZW5kIC0tPgoKCQkJCQk8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoJCgoKPGRpdiBjbGFzcz0iYWVtLUdyaWQgYWVtLUdyaWQtLTEyIGFlbS1HcmlkLS1kZWZhdWx0LS0xMiAiPgogICAgCiAgICAKICAgIAo8L2Rpdj4KCjwvZGl2Pgo8IS0tICNsMi1zdGFuZGFyZC1wcm9qZWN0LXBhZ2UtY29udGFpbmVyIGVuZHMgLS0+CgoJICAgIA0KDQo8IS0tIEZvb3Rlcg0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGZvb3RlciBpZD0icGFnZS1mb290ZXIiPg0KICAgIAoKCgoKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Im5ld3BhciBuZXcgc2VjdGlvbiI+Cgo8L2Rpdj4KCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJwYXIgaXBhcnlzX2luaGVyaXRlZCI+CgogICAgCiAgICAKICAgIAogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWNvbnRhaW5lciI+CjwhLS0gRm9vdGVyIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPiAgCjxkaXYgY2xhc3M9ImZvb3RlciB0b3AtZm9vdGVyLXdyYXBwZXIiPgogICAKICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0icm93ICI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci10b3Atc2VjdGlvbiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02IGNvbC1tZC02ICI+CiAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLSBSZXNwb25zaXZlIEltYWdlIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxkaXYgY2xhc3M9InJlc3BvbnNpdmUtaW1nIj4NCiAgICANCg0KICAgIA0KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0id2lkdGg6MTAwJSI+DQogICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLWxvZ28tZm9vdGVyLmdpZiIgY2xhc3M9ImltZy1yZXNwb25zaXZlIiBhbHQ9IklFRUUgTG9nbyIvPg0KICAgICAgICAgICAgPC9pbWc+DQogICAgICAgIDwvYT4NCiAgICANCiAgICANCjwvZGl2Pg0KPCEtLSBFbmQgUmVzcG9uc2UgSW1hZ2UgQ29udGVudCAtLT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS02IGNvbC1tZC02IGhpZGRlbi14cyB0ZXh0LXJpZ2h0Ij4KICAgICAgICAgICAgICAgCgoKCgoKCgoKCjwhLS0gU29jaWFsIE1lZGlhIENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDxkaXYgY2xhc3M9InNvY2lhbG1lZGlhIj4KICAgICAgICA8dWw+CiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaWVlZXNhIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS10d2l0dGVyIj48L2k+CiAgICA8L2E+CgoKCgo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgCiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pZWVlc2EvIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1mYWNlYm9vay1mIj48L2k+CiAgICA8L2E+CgoKCgo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgCiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2llZWUtc2EtaWVlZS1zdGFuZGFyZHMtYXNzb2NpYXRpb24vIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1saW5rZWRpbiI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2llZWVzYS8iIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLWluc3RhZ3JhbSI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwOi8vd3d3LnlvdXR1YmUuY29tL2llZWVzYSIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEteW91dHViZSI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIDwvdWw+CiAgICA8L2Rpdj4KCjwhLS0jU29jaWFsLW1lZGlhLWNvbnRhaW5lciBjb250ZW50IGVuZC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1saW5rcy1pbmZvIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+QWJvdXQ8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkFib3V0IFVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2NvcnBjaGFuLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkNvcnBvcmF0ZSBQcm9ncmFtDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2Rpc3RyaWIuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+RGlzdHJpYnV0b3IgUHJvZ3JhbQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9pbnRsLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkdsb2JhbCBFbmdhZ2VtZW50DQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3BvbGljaWVzLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlBvbGljaWVzICZhbXA7IFByb2NlZHVyZXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvdHJhaW5pbmcuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+VHJhaW5pbmcgKyBEZXZlbG9wbWVudA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9mYXFzLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkZBUXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9jb250YWN0L2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkNvbnRhY3QgVXMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBjb2wtbWQtMyBjb2wtbGctMiI+CiAgICAgICAgICAgICAgIAogCgoKPCEtLSBGb290ZXIgQ29sdW1uIFNlY3Rpb24gQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICA8ZGl2IGNsYXNzPSJmb290LXRpdGxlIj5Cb2FyZCBvZiBHb3Zlcm5vcnMgKEJvRyk8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCB0aGUgQk9HDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy9hcmNvbS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Bd2FyZHMgQ29tbWl0dGVlDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L2JvZy9jYWcuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+Q29ycC4gQWR2aXNvcnkgR3JvdXANCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvYm9nL3JhYy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5SZWcuIEF1dGguIENvbW1pdHRlZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9ib2cvc3BjYy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5TUENDDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+U3RhbmRhcmRzIEJvYXJkIChTQVNCKTwvZGl2PgogICAKICAgCiAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIA0KICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4NCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCB0aGUgU0FTQg0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL3NiYS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Cb2FyZCBBcHByb3ZhbHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9hdWRjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+QXVkQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3Nhc2IvaWNjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUNDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9uZXNjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+TmVzQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3Nhc2IvcGF0Y29tLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlBhdENvbQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL3Byb2NvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Qcm9Db20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9yZXZjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+UmV2Q29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+TmV3cyAmYW1wOyBFdmVudHM8L2Rpdj4KICAgCiAgIAogICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+DQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2V2ZW50cy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5FdmVudHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvbmV3cy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5OZXdzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL25ld3Mvc3RhbmRhcmRzLWZvY3VzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlN0YW5kYXJkcyBGb2N1cw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9uZXdzL3N3aXJlL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlN0YW5kYXJkcyBOZXdzd2lyZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9mZWF0dXJlZC84MDIuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+RmVhdHVyZWQNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIHRleHQtY2VudGVyIGhpZGRlbi1zbSBoaWRkZW4tbWQgaGlkZGVuLWxnIj4KICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tIFNvY2lhbCBNZWRpYSBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPGRpdiBjbGFzcz0ic29jaWFsbWVkaWEiPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaWVlZXNhIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtdHdpdHRlciI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9pZWVlc2EvIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtZmFjZWJvb2stZiI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2llZWUtc2EtaWVlZS1zdGFuZGFyZHMtYXNzb2NpYXRpb24vIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtbGlua2VkaW4iPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIA0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2llZWVzYS8iIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1pbnN0YWdyYW0iPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIA0KICAgICAgICAgICAgPGxpPg0KICAgICAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8YSBocmVmPSJodHRwOi8vd3d3LnlvdXR1YmUuY29tL2llZWVzYSIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLXlvdXR1YmUiPjwvaT4NCiAgICA8L2E+DQoNCg0KDQoNCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4NCiAgICAgICAgICAgIDwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9kaXY+DQoNCjwhLS0jU29jaWFsLW1lZGlhLWNvbnRhaW5lciBjb250ZW50IGVuZC0tPgogICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgIDwvZGl2Pgo8L2Rpdj4KPCEtLSAjZm9vdGVyLWNvbnRlbnQgZW5kIC0tPjwvZGl2PgoKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Imdsb2JhbC1mb290ZXItY29udGFpbmVyIj4NCg0KPCEtLSBHbG9iYWwgRm9vdGVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxkaXYgY2xhc3M9Imdsb2JhbC1mb290ZXIiPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgZm9vdGVyLWxpbmtzIGZvbnQtZiI+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCiAgICAgICAgDQoNCg0KDQo8IS0tIFV0aWxpdHkgTGlua3MgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPHVsIGlkPSJZSkNBVFNPUUVCTkpDVFRJVVIiIGNsYXNzPSIgdXRpbGl0eWxpbmtzIHNlcGFyYXRvci1waXBlIj4NCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSIvIj5Ib21lPC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9zaXRlbWFwLmh0bWwiPlNpdGVtYXA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iL2Fib3V0L2NvbnRhY3QvaW5kZXguaHRtbCI+IENvbnRhY3QgJmFtcDsgU3VwcG9ydCA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWNjZXNzaWJpbGl0eS1zdGF0ZW1lbnQuaHRtbCI+QWNjZXNzaWJpbGl0eTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9jb3Jwb3JhdGUvZ292ZXJuYW5jZS9wOS0yNi5odG1sIj5Ob25kaXNjcmltaW5hdGlvbiBQb2xpY3k8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2VjdXJpdHlfcHJpdmFjeS5odG1sIj5JRUVFIFByaXZhY3kgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9pcHIvaW5kZXguaHRtbCI+SUVFRSBTQSBDb3B5cmlnaHQgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIDwvdWw+DQoNCjwhLS0gI3V0aWxpdHktbGlua3MtY29udGVudCBlbmQgLS0+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBsZWdhbC1jb3B5IGZvbnQtZiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3EtZGQtcGFyYWdyYXBoIj48ZGl2IGNsYXNzPSJydGUgdGV4dCBwYXJiYXNlIj4KCgoKICAgIMKpIENvcHlyaWdodCAyMDIwIElFRUUg4oCTIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFVzZSBvZiB0aGlzIHdlYnNpdGUgc2lnbmlmaWVzIHlvdXIgYWdyZWVtZW50IHRvIHRoZcKgPGEgaHJlZj0iaHR0cDovL3d3dy5pZWVlLm9yZy9zaXRlX3Rlcm1zX2NvbmRpdGlvbnMuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnM8L2E+LjxiciAvPgpBIG5vdC1mb3ItcHJvZml0IG9yZ2FuaXphdGlvbiwgSUVFRSBpcyB0aGUgd29ybGQncyBsYXJnZXN0IHRlY2huaWNhbCBwcm9mZXNzaW9uYWwgb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBhZHZhbmNpbmcgdGVjaG5vbG9necKgPGJyIC8+CmZvciB0aGUgYmVuZWZpdCBvZiBodW1hbml0eS48YnIgLz4KCjwvZGl2Pgo8L2Rpdj4KDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L2Rpdj4NCjwhLS0gI2dsb2JhbC1mb290ZXItY29udGVudCBlbmQgLS0+PC9kaXY+CgogICAgCgo8L2Rpdj4KCiAgICAKCg0KPC9mb290ZXI+DQo8IS0tICNmb290ZXIgZW5kcyAtLT4NCgoJPC9kaXY+CgkKCTxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS9iYXNlLm1pbi4wZmZmMjhlNTE0YmVkNmRlZjNkMjVmZmY1OWQ1ZmQ0Ni5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYXBwc19jb21wb25lbnRzLm1pbi45MzJhODIxMWFjMDk1ZTI0NTIxNzE4ZmQwNWFhMDE3MC5qcyI+PC9zY3JpcHQ+CgoKCgk8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1jb3JlL2NsaWVudGxpYnMvYmFzZS5taW4uZjU0NmUxNTg5Mjc2MmEyMDBiY2UyYjIwM2Y3NWYzZjguanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCg0KDQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPgoKCgoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9iYXNlLm1pbi44MDQyYjBmY2JkNjIxMjY4MzQ5N2Q1NmVmYmRkNTc2My5qcyI+PC9zY3JpcHQ+CgoKCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCgoNCgoJCgk8ZGl2IGNsYXNzPSJjbG91ZHNlcnZpY2UgZ2VuZXJpY3RyYWNrZXIiPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpewp3aW5kb3cuY29va2llY29uc2VudC5pbml0aWFsaXNlKGpzb24pCn0pOwogICAgPC9zY3JpcHQ+CjwvZGl2PgoKCjwvYm9keT4KPC9ib2R5Pgo8L2h0bWw+Cg==
149
149
  http_version:
150
- recorded_at: Thu, 25 Mar 2021 18:10:08 GMT
150
+ recorded_at: Wed, 25 Nov 2020 23:46:34 GMT
151
151
  recorded_with: VCR 5.1.0