relaton 1.8.pre4 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +1 -1
  3. data/.rubocop.yml +1 -1
  4. data/lib/relaton/config.rb +2 -3
  5. data/lib/relaton/db.rb +53 -110
  6. data/lib/relaton/db_cache.rb +99 -55
  7. data/lib/relaton/registry.rb +0 -1
  8. data/lib/relaton/version.rb +1 -1
  9. data/lib/relaton.rb +0 -1
  10. data/relaton.gemspec +3 -6
  11. data/spec/relaton/db_cache_spec.rb +2 -2
  12. data/spec/relaton/db_spec.rb +0 -17
  13. data/spec/relaton/regirtry_spec.rb +1 -9
  14. data/spec/relaton_spec.rb +4 -45
  15. data/spec/spec_helper.rb +0 -4
  16. data/spec/vcr_cassetes/19133_2005.yml +18 -18
  17. data/spec/vcr_cassetes/async_fetch.yml +1249 -1361
  18. data/spec/vcr_cassetes/bsi_bs_en_iso_8848.yml +17 -17
  19. data/spec/vcr_cassetes/cc_dir_10005_2019.yml +20 -20
  20. data/spec/vcr_cassetes/cie_001_1980.yml +7 -7
  21. data/spec/vcr_cassetes/ecma_6.yml +7 -7
  22. data/spec/vcr_cassetes/fisp_140.yml +10 -8
  23. data/spec/vcr_cassetes/gb_t_20223_2006.yml +8 -8
  24. data/spec/vcr_cassetes/iec_60050_102_2007.yml +27 -27
  25. data/spec/vcr_cassetes/iec_combined_included.yml +89 -89
  26. data/spec/vcr_cassetes/ieee_528_2019.yml +38 -38
  27. data/spec/vcr_cassetes/iho_b_11.yml +7 -7
  28. data/spec/vcr_cassetes/iso_111111119115_1.yml +4 -4
  29. data/spec/vcr_cassetes/iso_19115.yml +17 -17
  30. data/spec/vcr_cassetes/iso_19115_1.yml +18 -18
  31. data/spec/vcr_cassetes/iso_19115_1_2.yml +34 -34
  32. data/spec/vcr_cassetes/iso_awi_14093.yml +18 -18
  33. data/spec/vcr_cassetes/iso_combined_applied.yml +34 -34
  34. data/spec/vcr_cassetes/iso_combined_included.yml +33 -33
  35. data/spec/vcr_cassetes/itu_combined_included.yml +147 -147
  36. data/spec/vcr_cassetes/ogc_19_025r1.yml +1165 -1239
  37. data/spec/vcr_cassetes/omg_ami4ccm_1_0.yml +4 -4
  38. data/spec/vcr_cassetes/rfc_8341.yml +7 -7
  39. data/spec/vcr_cassetes/sp_800_38b.yml +10 -8
  40. data/spec/vcr_cassetes/un_rtade_cefact_2004_32.yml +31 -29
  41. data/spec/vcr_cassetes/w3c_json_ld11.yml +12 -12
  42. metadata +11 -56
  43. data/spec/vcr_cassetes/api_relaton_org.yml +0 -51
  44. data/spec/vcr_cassetes/api_relaton_org_unavailable.yml +0 -182
  45. data/spec/vcr_cassetes/cen_en_10160_1999.yml +0 -249
@@ -8,7 +8,7 @@ http_interactions:
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v1.4.3
11
+ - Faraday v1.4.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
- - Sun, 11 Jul 2021 11:16:00 GMT
22
+ - Fri, 14 May 2021 17:26:30 GMT
23
23
  Cache-Control:
24
24
  - no-cache="set-cookie"
25
25
  Content-Type:
@@ -29,19 +29,19 @@ http_interactions:
29
29
  X-Content-Type-Options:
30
30
  - nosniff
31
31
  X-Dispatcher:
32
- - dispatcher1useast1
32
+ - dispatcher2useast1
33
33
  X-Frame-Options:
34
34
  - SAMEORIGIN
35
35
  - SAMEORIGIN
36
36
  X-Vhost:
37
37
  - standards.ieee.org
38
38
  Content-Length:
39
- - '883'
39
+ - '960'
40
40
  Set-Cookie:
41
- - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88ADFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;
41
+ - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88AD28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;
42
42
  Secure
43
- - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88ADFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
44
- - TS01247332=01c1c020dd14d2dd3b3e071268f41872e0a4655c4bd0de3690a88f546ac359ede8c4d75a1b4c8e19336be42f82980db82aed917bec;
43
+ - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88AD28D0BDD8F37BC44BF6E11D27425ADCEBBBACE6A1B563AE88175AB23C96A9E2BA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
44
+ - TS01247332=01c1c020dd08d8d813b69f233ca169aa0dd3315b02c2446d428f6b33ca7c4d9ea9742b89dca71d330af8d5957253e178dcf44eb470;
45
45
  Path=/
46
46
  Connection:
47
47
  - close
@@ -52,13 +52,12 @@ http_interactions:
52
52
  body:
53
53
  encoding: ASCII-8BIT
54
54
  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
55
- Electronics\",\"facetValueId\":4294967248,\"selected\":false},{\"facetValueName\":\"Nuclear
56
- Power\",\"facetValueId\":4294967275,\"selected\":false},{\"facetValueName\":\"Power
57
- and Energy\",\"facetValueId\":4294967279,\"selected\":false}],\"sortOrder\":71}],\"searchResults\":{\"resultsMapList\":[{\"record\":{\"recordTitle\":\"IEEE
58
- 528-2019 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"IEEE
59
- <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
55
+ Electronics\",\"facetValueId\":4294967248,\"selected\":false},{\"facetValueName\":\"Power
56
+ and Energy\",\"facetValueId\":4294967279,\"selected\":false}],\"sortOrder\":47}],\"searchResults\":{\"resultsMapList\":[{\"record\":{\"recordTitle\":\"IEEE
60
57
  528-2019 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"IEEE
61
58
  <endeca_term>528-2019<\/endeca_term> - IEEE Standard for Inertial Sensor Terminology\",\"recordURL\":\"https://standards.ieee.org/standard/528-2019.html\"}},{\"record\":{\"recordTitle\":\"IEEE
59
+ 528-2019 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"IEEE
60
+ <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
62
61
  1293-1998/Cor 1-2008 - IEEE Standard Specification Format Guide and Test Procedure
63
62
  for Linear,Single-Axis, Nongyroscopic Accelerometers Corrigendum 1: Changes
64
63
  to Annex K and Annex L\",\"recordText\":\"IEEE 1293-1998/Cor 1-2008 - IEEE
@@ -68,30 +67,31 @@ http_interactions:
68
67
  Linear Single-Axis, Nongyroscopic Accelerometers\",\"recordText\":\"IEEE 1293-2018
69
68
  - IEEE Standard Specification Format Guide and Test Procedure for Linear Single-Axis,
70
69
  Nongyroscopic ...\",\"recordURL\":\"https://standards.ieee.org/standard/1293-2018.html\"}},{\"record\":{\"recordTitle\":\"IEEE
71
- 1431-2004 - IEEE Standard Specification Format Guide and Test Procedure for
72
- Coriolis Vibratory Gyros\",\"recordText\":\"IEEE 1431-2004 - IEEE Standard
73
- Specification Format Guide and Test Procedure for Coriolis Vibratory Gyros ...\",\"recordURL\":\"https://standards.ieee.org/standard/1431-2004.html\"}},{\"record\":{\"recordTitle\":\"IEEE
74
- 1431-2004/Cor 1-2008 - IEEE Standard Specification Format Guide and Test Procedure
75
- for Coriolis Vibratory Gyros - Corrigendum 1\",\"recordText\":\"IEEE 1431-2004/Cor
76
- 1-2008 - IEEE Standard Specification Format Guide and Test Procedure for Coriolis
77
- Vibratory ...\",\"recordURL\":\"https://standards.ieee.org/standard/1431-2004-Cor1-2008.html\"}},{\"record\":{\"recordTitle\":\"IEEE
78
70
  1554-2005 - IEEE Recommended Practice for Inertial Sensor Test Equipment,
79
71
  Instrumentation, Data Acquisition, and Analysis\",\"recordText\":\"IEEE 1554-2005
80
72
  - IEEE Recommended Practice for Inertial Sensor Test Equipment, Instrumentation,
81
73
  Data Acquisition, and ...\",\"recordURL\":\"https://standards.ieee.org/standard/1554-2005.html\"}},{\"record\":{\"recordTitle\":\"IEEE
82
- 292-1969 - IEEE Specification Format for Single-Degree-of-Freedom Spring-Restrained
83
- Rate Gyros\",\"recordText\":\"IEEE 292-1969 - IEEE Specification Format for
84
- Single-Degree-of-Freedom Spring-Restrained Rate Gyros IEEE.org IEEE Xplore
85
- Digital ...\",\"recordURL\":\"https://standards.ieee.org/standard/292-1969.html\"}},{\"record\":{\"recordTitle\":\"IEEE
86
- 293-1969 - IEEE Test Procedure for Single-Degree-of-Freedom Spring-Restrained
87
- Rate Gyros\",\"recordText\":\"IEEE 293-1969 - IEEE Test Procedure for Single-Degree-of-Freedom
88
- Spring-Restrained Rate Gyros IEEE.org IEEE Xplore Digital ...\",\"recordURL\":\"https://standards.ieee.org/standard/293-1969.html\"}},{\"record\":{\"recordTitle\":\"IEEE
89
- 293-1969/Cor 1-2014 - IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
90
- Spring-Restrained Rate Gyros -- Corrigendum 1: Table 1 Heading\",\"recordText\":\"IEEE
91
- 293-1969/Cor 1-2014 - IEEE Standard for IEEE Test Procedure for Single-Degree-of-Freedom
92
- Spring-Restrained Rate Gyros ...\",\"recordURL\":\"https://standards.ieee.org/standard/293-1969-Cor1-2014.html\"}}],\"totalNumberOfResults\":24,\"start\":0,\"offset\":0,\"recordsPerPage\":10}}}"}'
74
+ 528-2001 - IEEE Standard for Inertial Sensor Terminology\",\"recordText\":\"...Accelerometer
75
+ Panel Status Superseded Superseded by <endeca_term>528-2019<\/endeca_term>
76
+ Board Approval 2001-08-07 History Published...\",\"recordURL\":\"https://standards.ieee.org/standard/528-2001.html\"}},{\"record\":{\"recordTitle\":\"IEEE
77
+ 647-2006 - IEEE Standard Specification Format Guide and Test Procedure for
78
+ Single-Axis Laser Gyros\",\"recordText\":\"IEEE 647-2006 - IEEE Standard Specification
79
+ Format Guide and Test Procedure for Single-Axis Laser Gyros ...\",\"recordURL\":\"https://standards.ieee.org/standard/647-2006.html\"}},{\"record\":{\"recordTitle\":\"IEEE
80
+ 671-1985 - IEEE Standard Specification Format Guide and Test Procedure for
81
+ Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity, and
82
+ Displacement\",\"recordText\":\"IEEE 671-1985 - IEEE Standard Specification
83
+ Format Guide and Test Procedure for Nongyroscopic Inertial Angular ...\",\"recordURL\":\"https://standards.ieee.org/standard/671-1985.html\"}},{\"record\":{\"recordTitle\":\"IEEE
84
+ 671-1985/Cor 1-2010 - IEEE Standard Specification Format Guide and Test Procedure
85
+ for Nongyroscopic Inertial Angular Sensors: Jerk, Acceleration, Velocity,
86
+ and Displacement Corrigendum 1: 4.7.2.6 Short-Term Stability and Annex A Sensor
87
+ Dynamic Block Diagrams\",\"recordText\":\"IEEE 671-1985/Cor 1-2010 - IEEE
88
+ Standard Specification Format Guide and Test Procedure for Nongyroscopic Inertial ...\",\"recordURL\":\"https://standards.ieee.org/standard/671-1985-Cor1-2010.html\"}},{\"record\":{\"recordTitle\":\"IEEE
89
+ 813-1988 - IEEE Specification Format Guide and Test Procedure for Two-Degree-of-Freedom
90
+ Dynamically Tuned Gyros\",\"recordText\":\"IEEE 813-1988 - IEEE Specification
91
+ Format Guide and Test Procedure for Two-Degree-of-Freedom Dynamically Tuned
92
+ Gyros ...\",\"recordURL\":\"https://standards.ieee.org/standard/813-1988.html\"}}],\"totalNumberOfResults\":16,\"start\":0,\"offset\":0,\"recordsPerPage\":10}}}"}'
93
93
  http_version:
94
- recorded_at: Sun, 11 Jul 2021 11:16:00 GMT
94
+ recorded_at: Fri, 14 May 2021 17:26:30 GMT
95
95
  - request:
96
96
  method: get
97
97
  uri: https://standards.ieee.org/standard/528-2019.html
@@ -100,7 +100,7 @@ http_interactions:
100
100
  string: ''
101
101
  headers:
102
102
  User-Agent:
103
- - Faraday v1.4.3
103
+ - Faraday v1.4.1
104
104
  Accept-Encoding:
105
105
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
106
106
  Accept:
@@ -111,7 +111,7 @@ http_interactions:
111
111
  message: OK
112
112
  headers:
113
113
  Date:
114
- - Sun, 11 Jul 2021 11:16:01 GMT
114
+ - Fri, 14 May 2021 17:26:31 GMT
115
115
  Accept-Ranges:
116
116
  - bytes
117
117
  Cache-Control:
@@ -119,7 +119,7 @@ http_interactions:
119
119
  Content-Type:
120
120
  - text/html;charset=utf-8
121
121
  Last-Modified:
122
- - Sun, 11 Jul 2021 06:07:08 GMT
122
+ - Fri, 14 May 2021 15:56:15 GMT
123
123
  Vary:
124
124
  - Host,Accept-Encoding,User-Agent
125
125
  X-Content-Type-Options:
@@ -131,12 +131,12 @@ http_interactions:
131
131
  X-Vhost:
132
132
  - standards.ieee.org
133
133
  Content-Length:
134
- - '13560'
134
+ - '15006'
135
135
  Set-Cookie:
136
136
  - AWSELB=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88ADFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;
137
137
  Secure
138
138
  - AWSELBCORS=55B9EFD71A621664217649CC5C38F09A66B8CD41098F3D56379851DC886A0366123E7C88ADFDA49E920AFE49EFC4DCFD91A39FD99AA4B1E09EC960E71995097EB293C2DDCA;PATH=/;MAX-AGE=900;SECURE;SAMESITE=None
139
- - TS01247332=01c1c020ddf6e35f9e6c56f0ace8c10995c5b85cc64f60b4b5440a2fda2cb4cbe996e8e78010e24775a070057944af2eba6186c7e9;
139
+ - TS01247332=01c1c020dd39217c4fac6ecd8863ca520d1f7fdc5638d35ac4ce4756b26faeba32a0be17909b1cc2a596fef3ec6f5685837215e098;
140
140
  Path=/
141
141
  Connection:
142
142
  - close
@@ -147,7 +147,7 @@ http_interactions:
147
147
  body:
148
148
  encoding: ASCII-8BIT
149
149
  string: !binary |-
150
- CjwhRE9DVFlQRSBIVE1MPgo8aHRtbCBsYW5nPSJlbiI+CiAgICA8aGVhZD4KCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+CjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCB1c2VyLXNjYWxhYmxlPW5vIi8+Cgo8IS0tIEdsb2JhbCBzaXRlIHRhZyAoZ3RhZy5qcykgLSBHb29nbGUgQW5hbHl0aWNzIC0gU3RhcnQgLS0+CjxzY3JpcHQ+KGZ1bmN0aW9uKHcsZCxzLGwsaSl7d1tsXT13W2xdfHxbXTt3W2xdLnB1c2goeydndG0uc3RhcnQnOg0KbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5qcyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLA0Kaj1kLmNyZWF0ZUVsZW1lbnQocyksZGw9bCE9J2RhdGFMYXllcic/JyZsPScrbDonJztqLmFzeW5jPXRydWU7ai5zcmM9DQonaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RtLmpzP2lkPScraStkbDtmLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGosZik7DQp9KSh3aW5kb3csZG9jdW1lbnQsJ3NjcmlwdCcsJ2RhdGFMYXllcicsJ0dUTS1NUjhUODQzJyk7PC9zY3JpcHQ+DQo8bWV0YSBuYW1lPSJnb29nbGUtc2l0ZS12ZXJpZmljYXRpb24iIGNvbnRlbnQ9ImJ1MWdtVzRNS3k4V2F3LTB3OFBRN2RTQkYzc0FuWVRkaGxLQ0d3T0J3QkkiIC8+DQoKPCEtLSBHbG9iYWwgc2l0ZSB0YWcgKGd0YWcuanMpIC0gR29vZ2xlIEFuYWx5dGljcyAtIEVuZCAtLT4KCgoKCgkKCQk8bWV0YSBuYW1lPSJkZXMiLz4KCQk8bWV0YSBuYW1lPSJTdGRSZWNObyIgY29udGVudD0iNzI5MiIvPgoJCTxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUZXJtcyBhbmQgZGVmaW5pdGlvbnMgcmVsYXRpbmcgdG8gaW5lcnRpYWwgc2Vuc29ycyBhcmUgcHJlc2VudGVkIGluIHRoaXMgc3RhbmRhcmQuIFVzYWdlIGFzIHVuZGVyc3Rvb2QgYnkgdGhlIGluZXJ0aWFsIHNlbnNvciBjb21tdW5pdHkgaXMgZ2l2ZW4gcHJlZmVyZW5jZSBvdmVyIGdlbmVyYWwgdGVjaG5pY2FsIHVzYWdlIG9mIHRoZSB0ZXJtcyBoZXJlaW4uIFRoZSBjcml0ZXJpb24gZm9yIGluY2x1c2lvbiBvZiBhIHRlcm0gYW5kIGl0cyBkZWZpbml0aW9uIGluIHRoaXMgc3RhbmRhcmQgaXMgdXNlZnVsbmVzcyBhcyByZWxhdGVkIHRvIGluZXJ0aWFsIHNlbnNvciB0ZWNobm9sb2d5LiIvPgoJCTxtZXRhIG5hbWU9InRpdGxlIiBjb250ZW50PSJJRUVFIDUyOC0yMDE5IC0gSUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5Ii8+CgkJPG1ldGEgbmFtZT0ic3RhdHVzIi8+CgkJPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IklFRUUgNTI4PywgaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3ksIGluZXJ0aWFsIHNlbnNvciB0ZXJtaW5vbG9neSIvPgoJCTxtZXRhIG5hbWU9IlNvY2lldHkiIGNvbnRlbnQ9IklFRUUgQWVyb3NwYWNlIGFuZCBFbGVjdHJvbmljIFN5c3RlbXMgU29jaWV0eSIvPgoJCTxtZXRhIG5hbWU9InR5cGUiIGNvbnRlbnQ9IlN0YW5kYXJkIi8+CgoJCTxtZXRhIG5hbWU9InRvcGljIiBjb250ZW50PSJBZXJvc3BhY2UgRWxlY3Ryb25pY3MiLz4KCgkJCgkKCgoKICAgIAogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9tYWluLm1pbi5iNDk5NDc4OGNmMWVhZWVkMzAwYTBhYTdhZjUzZjNjOC5jc3MiIHR5cGU9InRleHQvY3NzIj4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2NsaWVudGxpYnMvZ3Jhbml0ZS9qcXVlcnkubWluLjE0OTRjMGFiYmU1MDEzMDFlMmFiOWRhZWNjNjA4MmE4LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2NsaWVudGxpYnMvZ3Jhbml0ZS91dGlscy5taW4uNGExOTJiNTkwYTJjMjkyNmZiMDAwMjY0MzcwYzA1ODguanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL2pxdWVyeS9ncmFuaXRlLm1pbi41NDNkMjE0Yzg4ZGZhNmY0YTMyMzNiNjMwYzgyZDg3NS5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9mb3VuZGF0aW9uL2NsaWVudGxpYnMvanF1ZXJ5Lm1pbi5kZDliMzk1Yzc0MWNlMjc4NDA5NmUyNjYxOWUxNDkxMC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9mb3VuZGF0aW9uL2NsaWVudGxpYnMvc2hhcmVkLm1pbi45ZjM3MTZiMmM0NzNmZDUzYWIzMWIxY2FhNTMxMzFhOC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9mb3VuZGF0aW9uL2NsaWVudGxpYnMvbWFpbi5taW4uYTZmYWFmYmVlZDI0ZjVkNDBhYWYzNjdjNzc4NzUzYWIuanMiPjwvc2NyaXB0PgoKCgogICAgCiAgICA8bGluayBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CgoKCgoKCgoKCgoKCgo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KICAgICAgDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS90aGlyZHBhcnR5L2Jvb3RzdHJhcC5taW4uNDE1ZTkwY2RjMjk3OWVmZmVjYjFhODc4M2ZkMjkzNzQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS90aGlyZHBhcnR5L2RhdGF0YWJsZS5taW4uMzJkYTdhOWQ0NzQ0NzNiODA1Yzg3ZGEyYjc0NDBlN2EuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL2Jhc2UubWluLmRkNGZhNTRlNWUyM2YwMjAyMWE1ZTkwMGNhZGEzMWU0LmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCg0KCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYXBwc19jb21wb25lbnRzLm1pbi5kNDFkOGNkOThmMDBiMjA0ZTk4MDA5OThlY2Y4NDI3ZS5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCgoKDQoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS90aGlyZHBhcnR5L2pxdWVyeS5taW4uNzcxMmYwMTk5ZGFlM2RmOGE1NzEwZWI2OThmMzNhODIuanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvanF1ZXJ5X2Zvcm0ubWluLmFhZGNlYTM2ZmI2MjdmNDFkNjFiYzUxZWVhYmMyZDMwLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvanF1ZXJ5X3ZhbGlkYXRvci5taW4uNDQ5Yzc0ZjYxY2E1NWJiZWM1ZWQzOTMwNWVkYTE2NjEuanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvZGF0YXRhYmxlLm1pbi5lMDE2ZGJlZTMwODdmZjExOTMzNTc3M2RjYjhiYjBlZi5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvdGhpcmRwYXJ0eS9ib290c3RyYXAubWluLmYyZTkxOGEyZDRlYmZjZTQ4NWY4NzIxN2NlZDMwNDliLmpzIj48L3NjcmlwdD4KCgoKPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4NCg0KCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1jb3JlL2NsaWVudGxpYnMvYmFzZS5taW4uMjgzMzBkZTJhM2M5ZTI2YWIxMTY3NGJiMDU3ZDgwODYuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKDQoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLWNvcmUvY2xpZW50bGlicy9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCg0KDQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPgogICAgICAKCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9iYXNlLm1pbi42ZDkzZTJmMDg4NWQ3MWU5MWZjOTIyYmYwNWE1YzE5Yy5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoKCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCgoKICAgIAo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL3RoaXJkcGFydHkvZm9udC1hd2Vzb21lLm1pbi5kMWU2ODljOGJiZmUzMmRmYmNiNzcyMTEwMmJiYTM3OC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoKCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy90aGlyZHBhcnR5L29wZW4tc2Fucy5taW4uYjYzNDU1MTgxMDA1NTE0YjE3ZTFjMzY4ZDQ4MTAzMDguY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CgoKCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9jbGllbnRsaWJzL2dyYW5pdGUvaGFuZGxlYmFycy5taW4uNTY2MzNiZGJlYzE5ZGJkYWIzZGUzYzk4YjE4MmNkMDUuanMiPjwvc2NyaXB0PgoKCgoNCgoKCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3BsYXRmb3JtLWFwaS5zaGFyZXRoaXMuY29tL2pzL3NoYXJldGhpcy5qcyNwcm9wZXJ0eT01YTY5ZmJlNjFjNWQ1OTAwMTNiNGRlM2EmcHJvZHVjdD1zb3AiIGFzeW5jPSJhc3luYyI+PC9zY3JpcHQ+CgoKPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS92bmQubWljcm9zb2Z0Lmljb24iIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9mYXZpY29uLmljbyIvPgo8bGluayByZWw9InNob3J0Y3V0IGljb24iIHR5cGU9ImltYWdlL3ZuZC5taWNyb3NvZnQuaWNvbiIgaHJlZj0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2Zhdmljb24uaWNvIi8+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjU3eDU3IiBocmVmPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvYXBwbGVfZmF2aWNvbi5wbmciLz4KCjx0aXRsZT5JRUVFIDUyOC0yMDE5IC0gSUVFRSBTdGFuZGFyZCBmb3IgSW5lcnRpYWwgU2Vuc29yIFRlcm1pbm9sb2d5PC90aXRsZT4KCjwhLS0gR0RQUiBDb29raWUgQmFubmVyIC0gU3RhcnQgLS0+CjxzY3JpcHQgc3JjPSJodHRwczovL3MzLXVzLXdlc3QtMi5hbWF6b25hd3MuY29tL2llZWVzaHV0cGFnZXMvZ2Rwci9zZXR0aW5ncy5qcyI+PC9zY3JpcHQ+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2Nvb2tpZWNvbnNlbnQyLzMuMC4zL2Nvb2tpZWNvbnNlbnQubWluLmNzcyIvPgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvY29va2llY29uc2VudDIvMy4wLjMvY29va2llY29uc2VudC5taW4uanMiPjwvc2NyaXB0Pgo8IS0tIEdEUFIgQ29va2llIEJhbm5lciAtIEVuZCAtLT4KPC9oZWFkPgogICAgPGJvZHk+Cgo8Ym9keT4KCTxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJzaGFyZXRoaXMtZW5hYmxlZCIgbmFtZT0ic2hhcmV0aGlzLWVuYWJsZWQiIHZhbHVlPSJ0cnVlIi8+CgkKICAgIDwhLS0gR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+CiAgICA8bm9zY3JpcHQ+PGlmcmFtZSBzcmM9Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tL25zLmh0bWw/aWQ9R1RNLU1SOFQ4NDMiDQpoZWlnaHQ9IjAiIHdpZHRoPSIwIiBzdHlsZT0iZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVuIj48L2lmcmFtZT48L25vc2NyaXB0PgogICAgPCEtLSBFbmQgR29vZ2xlIFRhZyBNYW5hZ2VyIChub3NjcmlwdCkgLS0+CiAgICAKICAgIDxkaXYgY2xhc3M9InNoYXJldGhpcy1pbmxpbmUtc2hhcmUtYnV0dG9ucyI+PC9kaXY+Cgk8ZGl2IGlkPSJwYWdlLXdyYXBwZXIiIGNsYXNzPSJjbGVhcmZpeCI+CgkJCgo8IS0tIEhlYWRlcgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CjxoZWFkZXIgaWQ9InBhZ2UtaGVhZGVyIiBjbGFzcz0iaGVhZGVyIiBzdHlsZT0icG9zaXRpb246Zml4ZWQiPgogICAgCgoKCgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0ibmV3cGFyIG5ldyBzZWN0aW9uIj4KCjwvZGl2PgoKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9InBhciBpcGFyeXNfaW5oZXJpdGVkIj4KCiAgICAKICAgIAogICAgCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJnbG9iYWwtbWV0YS1uYXYtaGVhZGVyIj4KCgo8IS0tIEdsb2JhbCBNZXRhLU5hdiBIZWFkZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CjxkaXYgY2xhc3M9Imdsb2JhbC1tZXRhIGhpZGRlbi1zbSBoaWRkZW4teHMiPgoJPG5hdiBpZD0ibGVmdC1zaWRlLW1ldGFuYXYtbGlua3MiIGNsYXNzPSJtZXRhLW5hdiI+CgkJDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL2luZGV4Lmh0bWwiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5JRUVFLm9yZw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9pZWVleHBsb3JlLmllZWUub3JnL1hwbG9yZS9ob21lLmpzcCIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUgWHBsb3JlIERpZ2l0YWwgTGlicmFyeQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnLyIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklFRUUgU3RhbmRhcmRzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zcGVjdHJ1bS5pZWVlLm9yZy8iIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5JRUVFIFNwZWN0cnVtDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2l0ZW1hcC5odG1sIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+TW9yZSBTaXRlcw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIDwvdWw+DQoNCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+DQoKCTwvbmF2PgoJPG5hdiBpZD0icmlnaHQtc2lkZS1tZXRhbmF2LWxpbmtzIiBjbGFzcz0ibWV0YS1uYXYiPgoJCQ0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIA0KICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4NCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9kZXZlbG9wL2V0b29scy8iIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPmVUb29sc8KgIMKgwqAgwqANCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgkJDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tIFJlc3BvbnNpdmUgSW1hZ2UgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGRpdiBjbGFzcz0icmVzcG9uc2l2ZS1pbWciPg0KICAgIA0KDQogICAgDQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnLyIgdGFyZ2V0PSJfc2VsZiIgc3R5bGU9IndpZHRoOjEwMCUiPg0KICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvbG9nb3MvaWVlZS1sb2dvLXdoaXRlLmdpZiIgY2xhc3M9ImltZy1yZXNwb25zaXZlIiBhbHQ9IklFRUUgbG9nbyBzbWFsbCIvPg0KICAgICAgICAgICAgPC9pbWc+DQogICAgICAgIDwvYT4NCiAgICANCiAgICANCjwvZGl2Pg0KPCEtLSBFbmQgUmVzcG9uc2UgSW1hZ2UgQ29udGVudCAtLT4KCTwvbmF2Pgo8L2Rpdj4KPHN0eWxlIHR5cGU9J3RleHQvY3NzJz4KCS5tZXRhLW5hdiAubGluay1saXN0IGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9CgkubWV0YS1uYXY+LmxpbmstbGlzdCBsaSBhIHtjb2xvcjogfQoJLmdsb2JhbC1tZXRhIHtiYWNrZ3JvdW5kOiB9Cjwvc3R5bGU+CjwhLS0gRW5kIEdsb2JhbCBNZXRhLU5hdiBIZWFkZXIgQ29udGVudCAtLT4KPC9kaXY+CgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0icGFnZS1oZWFkZXItY29udGFpbmVyIj4KPCEtLVBhZ2UgSGVhZGVyIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgogICAKICAgCgoKIAoKCjxkaXYgY2xhc3M9InBhZ2UtaGVhZGVyLWNvbnRhaW5lciI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgIDxkaXYgY2xhc3M9ImhlYWRlci1ibG9jayI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImxvZ28iPgoJCQk8IS0tIE1haW4gbG9nbyBDb250ZW50IC0tPgoJCQkKCQkJCTxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIiBjbGFzcz0ibm8tc2hvdy1zY3JvbGwtZG93biI+CgkJCQkgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvbG9nb3MvaWVlZS1zYS1sb2dvLXRleHQucG5nIiBhbHQ9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIHRpdGxlPSJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUgc2Nyb2xsLXVwLWxvZ28taW1hZ2UiLz4KCQkJCTwvYT4KCQkJCTxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnIiBjbGFzcz0ibm8tc2hvdy1yZWd1bGFyIj4KCQkJCSAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLXNhLWxvZ28tc21hbGwucG5nIiBhbHQ9IklFRUUgU3RhbmRhcmRzIEFzc29jaWF0aW9uIGxvZ28iIHRpdGxlPSJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiBsb2dvIiBjbGFzcz0iaW1nLXJlc3BvbnNpdmUgc2Nyb2xsLWRvd24tbG9nby1pbWFnZSIvPgoJCQkJPC9hPgoJCQkKCQkJPCEtLSBNYWluIGxvZ28gQ29udGVudCBlbmQgLS0+CgoJCQk8IS0tIFBsYXRmb3JtIGdyYXBoaWMgQ29udGVudCAtLT4KCQkJCgkJCQk8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZyIgY2xhc3M9Im5vLXNob3ctc2Nyb2xsLWRvd24iPgoJCQkJICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2xvZ29zL3BsYXRmb3JtX2dyYXBoaWNfdG9wX3NwYWNlLnBuZyIgYWx0PSJJRUVFIFN0YW5kYXJkcyBBc3NvY2lhdGlvbiBsb2dvIiB0aXRsZT0iSUVFRSBTdGFuZGFyZHMgQXNzb2NpYXRpb24gbG9nbyIgY2xhc3M9ImltZy1yZXNwb25zaXZlIHBsYXRmb3JtLWdyYXBoaWMtaW1hZ2UiLz4KCQkJCTwvYT4KCQkJCgkJCTwhLS0gUGxhdGZvcm0gZ3JhcGhpYyBDb250ZW50IGVuZCAtLT4KICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaC1iYXItY29tcCI+CiAgICAgICAgICAgIA0KDQo8IS0tIFNpZ2h0bHkgZ2xvYmFsIG9iamVjdHMgZGVjbGFyYXRpb24NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KPCEtLSAjc2lnaHRseS1nbG9iYWwtb2JqZWN0cy1kZWNsYXJhdGlvbiBlbmQgLS0+DQoNCjwhLS0gUGxhY2Vob2xkZXIgQ29udGVudCBvbWl0dGVkIHNpbmNlIHNlYXJjaCB3aWxsIGJlIG9uIGhlYWRlci4NCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4gICAgICAgICANCjwhLS0gI3BsYWNlaG9sZGVyLWNvbnRlbnQgZW5kIC0tPg0KDQo8IS0tIFNlYXJjaCBVSSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxmb3JtIGFjdGlvbj0iL3NlYXJjaC1yZXN1bHRzLmh0bWwiIHJvbGU9InNlYXJjaCIgaWQ9InNlYXJjaEZvcm0iPg0KCTxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIHNlYXJjaC1iYXIiPg0KCQk8aW5wdXQgdHlwZT0ic2VhcmNoIiBuYW1lPSJxIiBpZD0icSIgdGl0bGU9IlNlYXJjaCBhbGwgSUVFRSB3ZWJzaXRlcyIgcGxhY2Vob2xkZXI9IlNlYXJjaCIgY2xhc3M9InJlcXVpcmVkIGZvcm0tY29udHJvbCIvPiANCgkJPHNwYW4gY2xhc3M9ImlucHV0LWdyb3VwLWFkZG9uIiBpZD0ic2VhcmNoU3VibWl0QnV0dG9uIj4NCgkJCTxpIGNsYXNzPSJnbHlwaGljb24gZ2x5cGhpY29uLXNlYXJjaCI+PC9pPg0KCQk8L3NwYW4+DQoJPC9kaXY+DQo8L2Zvcm0+DQo8IS0tICNzZWFyY2ggVUkgY29udGVudCBlbmQgLS0+CSAgICAgICAgICAgIAogICAgICAgICA8L2Rpdj4KCQkgPCEtLSBNb2JpbGUgbG9nbyBDb250ZW50IC0tPgogICAgICAgICA8ZGl2IGNsYXNzPSJpZWVlLWxvZ28gaGlkZGVuLW1kIGhpZGRlbi1sZyI+CiAgICAgICAgICAgIA0KDQoNCg0KDQoNCg0KDQoNCiANCg0KDQo8IS0tIExvZ28gQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvIj4NCiAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9sb2dvcy9pZWVlLWxvZ28td2hpdGUucG5nIiBhbHQ9IklFRUUgbG9nbyIgdGl0bGU9IklFRUUgbG9nbyIgY2xhc3M9ImltZy1yZXNwb25zaXZlIi8+DQo8L2E+DQo8IS0tICNsb2dvLWNvbnRlbnQgZW5kIC0tPg0KCiAgICAgICAgIDwvZGl2PgoJCTwhLS0gTW9iaWxlIGxvZ28gQ29udGVudCBlbmQgLS0+CiAgICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgPGRpdiBjbGFzcz0ic2l0ZS1uYXZpZ2F0aW9uIj4KICAgICAgCjwhLS0gU2lnaHRseSBnbG9iYWwgb2JqZWN0cyBkZWNsYXJhdGlvbgogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+Cgo8IS0tICNzaWdodGx5LWdsb2JhbC1vYmplY3RzLWRlY2xhcmF0aW9uIGVuZCAtLT4gCgoKPG5hdj4KICAgPCEtLSBCcmFuZCBhbmQgdG9nZ2xlIGdldCBncm91cGVkIGZvciBiZXR0ZXIgbW9iaWxlIGRpc3BsYXkgLS0+CiAgIDxkaXYgY2xhc3M9Im5hdmJhci1oZWFkZXIiPgogICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im5hdmJhci10b2dnbGUgY29sbGFwc2VkIj4KICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIG5hdi1iYXIxIj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciBuYXYtYmFyMiI+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIgbmF2LWJhcjMiPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImNsb3NlLWljb24iPgogICAgICA8aW1nIHNyYz0nZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpYVhOdkxUZzROVGt0TVNJL1BnbzhJUzB0SUVkbGJtVnlZWFJ2Y2pvZ1FXUnZZbVVnU1d4c2RYTjBjbUYwYjNJZ01Ua3VNQzR3TENCVFZrY2dSWGh3YjNKMElGQnNkV2N0U1c0Z0xpQlRWa2NnVm1WeWMybHZiam9nTmk0d01DQkNkV2xzWkNBd0tTQWdMUzArQ2p4emRtY2dlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJZ2RtVnljMmx2YmowaU1TNHhJaUJwWkQwaVRHRjVaWEpmTVNJZ2VEMGlNSEI0SWlCNVBTSXdjSGdpSUhacFpYZENiM2c5SWpBZ01DQTFNVElnTlRFeUlpQnpkSGxzWlQwaVpXNWhZbXhsTFdKaFkydG5jbTkxYm1RNmJtVjNJREFnTUNBMU1USWdOVEV5T3lJZ2VHMXNPbk53WVdObFBTSndjbVZ6WlhKMlpTSWdkMmxrZEdnOUlqVXhNbkI0SWlCb1pXbG5hSFE5SWpVeE1uQjRJajRLUEdjK0NnazhaejRLQ1FrOGNHRjBhQ0JrUFNKTk5UQTFMamswTXl3MkxqQTFPR010T0M0d056Y3RPQzR3TnpjdE1qRXVNVGN5TFRndU1EYzNMVEk1TGpJME9Td3dURFl1TURVNExEUTNOaTQyT1ROakxUZ3VNRGMzTERndU1EYzNMVGd1TURjM0xESXhMakUzTWl3d0xESTVMakkwT1NBZ0lDQkRNVEF1TURrMkxEVXdPUzQ1T0RJc01UVXVNemtzTlRFeUxESXdMalk0TXl3MU1USmpOUzR5T1RNc01Dd3hNQzQxT0RZdE1pNHdNVGtzTVRRdU5qSTFMVFl1TURVNVREVXdOUzQ1TkRNc016VXVNekEySUNBZ0lFTTFNVFF1TURFNUxESTNMakl6TERVeE5DNHdNVGtzTVRRdU1UTTFMRFV3TlM0NU5ETXNOaTR3TlRoNklpQm1hV3hzUFNJak16TXpNek16SWk4K0NnazhMMmMrQ2p3dlp6NEtQR2MrQ2drOFp6NEtDUWs4Y0dGMGFDQmtQU0pOTlRBMUxqazBNaXcwTnpZdU5qazBURE0xTGpNd05pdzJMakExT1dNdE9DNHdOell0T0M0d056Y3RNakV1TVRjeUxUZ3VNRGMzTFRJNUxqSTBPQ3d3WXkwNExqQTNOeXc0TGpBM05pMDRMakEzTnl3eU1TNHhOekVzTUN3eU9TNHlORGhzTkRjd0xqWXpOaXcwTnpBdU5qTTJJQ0FnSUdNMExqQXpPQ3cwTGpBek9TdzVMak16TWl3MkxqQTFPQ3d4TkM0Mk1qVXNOaTR3TlRoak5TNHlPVE1zTUN3eE1DNDFPRGN0TWk0d01Ua3NNVFF1TmpJMExUWXVNRFUzUXpVeE5DNHdNVGdzTkRrM0xqZzJOaXcxTVRRdU1ERTRMRFE0TkM0M056RXNOVEExTGprME1pdzBOell1TmprMGVpSWdabWxzYkQwaUl6TXpNek16TXlJdlBnb0pQQzluUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDanhuUGdvOEwyYytDand2YzNablBnbz0nLz4KICAgICAgPC9zcGFuPgogICAgICA8L2J1dHRvbj4KICAgPC9kaXY+CiAgIDxkaXYgY2xhc3M9ImJveC1zaGFkb3ctbGluZSI+PC9kaXY+CiAgIDwhLS0gQ29sbGVjdCB0aGUgbmF2IGxpbmtzIC0tPgogICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBtZW51LXRvZ2dsZSI+CiAgICAgIDx1bCBjbGFzcz0ibmF2aWdhdGlvbi1iYXIiPgogICAgICAgICAKICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wLWRvd24tbmF2Ij4KICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImRyb3Bkb3duLWxpbmsiIHN0eWxlPSJtaW4td2lkdGg6IDg0cHg7Ij4KICAgICAgICAgICAgICAgCQlTdGFuZGFyZHMgCiAgICAgICAgICAgICAgIDwvYT4JCQkKICAgICAgICAgICAgICAgCgo8ZGl2IGNsYXNzPSJtZWdhLWRyb3Bkb3duLW1lbnUiPgogICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jay1pbmZvIj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIvY29udGVudC9kYW0vaWVlZS1zdGFuZGFyZHMvc3RhbmRhcmRzL3dlYi92aXN1YWxzL2ltYWdlcy9uYXYtc3RhbmRhcmRzLW5ldy1icmFuZC5qcGciLz4gCiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dCI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJ0ZSI+Cgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9ldGMuY2xpZW50bGlicy93Y20vZm91bmRhdGlvbi9jbGllbnRsaWJzL2FjY2Vzc2liaWxpdHkubWluLjZmZTVkNDQyNzM2MWE0YzBjYTVhNzU0NTdlM2U0MjU2LmNzcyIgdHlwZT0idGV4dC9jc3MiPgoKCiAgICA8c3BhbiBjbGFzcz0icGFyYWdyYXBoLXNtYWxsIj5GaW5kIHN0YW5kYXJkcywgc3RhbmRhcmRzIGluIGRldmVsb3BtZW50LCBsZWFybiBhYm91dCB0aGUgU3RhbmRhcmRzIERldmVsb3BtZW50IExpZmVjeWNsZSwgYW5kIG11Y2ggbW9yZSE8L3NwYW4+CjwvZGl2PgogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTIgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpdmlkZXIiPjwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+CiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9zdGFuZGFyZC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEZpbmQgU3RhbmRhcmRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvamVjdC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgICBGaW5kIFByb2plY3RzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvZGV2ZWxvcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIERldmVsb3AgU3RhbmRhcmRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cudGVjaHN0cmVldC5jb20vaWVlZS8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgICBCdXkgU3RhbmRhcmRzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvaW50bC9hZG9wdGlvbi5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEFkb3B0IFN0YW5kYXJkcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2RldmVsb3AvZXRvb2xzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgU3RhbmRhcmRzIERldmVsb3BtZW50IGVUb29scwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL2llZWUtZ2V0LXByb2dyYW0uaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBJRUVFIEdFVCBQcm9ncmFtCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBzdWItbmF2LWluZm8iPgogICAgICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJjbG9zZS1pY29uIGhpZGRlbi14cyBoaWRkZW4tc20iPjxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZyt4bWw7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFESUFBQUF5Q0FZQUFBQWVQNGl4QUFBQUFYTlNSMElBcnM0YzZRQUEgQVdKcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaSBZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlsaE5VQ0JEYjNKbElEVXVOQzR3SWo0S0lDQWdQSEprIFpqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmsgWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROSBJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02WlhocFpqMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzlsIGVHbG1MekV1TUM4aVBnb2dJQ0FnSUNBZ0lDQThaWGhwWmpwVmMyVnlRMjl0YldWdWRENVRZM0psWlc1emFHOTAgUEM5bGVHbG1PbFZ6WlhKRGIyMXRaVzUwUGdvZ0lDQWdJQ0E4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRLSUNBZyBQQzl5WkdZNlVrUkdQZ284TDNnNmVHMXdiV1YwWVQ0S2JzemVMZ0FBQWJKSlJFRlVhQVh0bW10dXd5QVFoSzJlIDNEZndFVGlxdXlSRmNUR0dmY3k0SkNwU1pCdDJaNzZCK0Vla0xQdStyL0lwWTF2ZVpBaHdLdEJ5WFpmRFE3bE4gczJjUjBGUmd5N1VWSks5Tkd5YXpaY0I2NUNDcG52eDVuaTVNaC9YNVNuUUtwZ21qWmxRWC9zRUxaR1l6Tjl3USB5czNrYmlTRUNyT0VCUUNoWUF3d0lVY291RGRjVUJHSzVra1Rib1NpZTlFTkpOUWRIbys5WXhveHRSc0h6OW0xIDIwT1VaRWhqcEZiaE0xMFJBQWdORS9SVmNRUWswbnZGRTVyM0FIbDZRcERhWmd1WXBWYnJENjNUQUdwcW9GQmUgc1I1b2I4M3JSKzNyQU12U2FVeno2N081S1lLYlRzam5pYmxEbEdTRE1KUVFYOFg4LzFydHdPQTB5cGVNY2lvViBpdjlSR1dMdU1KMFFxYmZtM3paQ3B3WlVVME5BMDB0YUFDMjFlZ0pBcFFmTTB3TkF2WmFJQUVWNnI0a2NLd2dRIGhJWUQvZFdDQkVCcXZRZ1Zkd3hqaG1ZM0N0T1FxZjByMUIxR2RBKzZ3V0hMYUY0MDRRTjhmUXYzaEF2V3hKMW4gbURkTXFBTTdXZ296aEFWR2hJWjFONHU3MFFCbkxUVXptUnVzUklGNk5adTZNQUFUYlIweVNzRW1uOWFZN25lMSBRS1lXcU14dEgvV25tanJrZENkUmZ5MEZPTlhRK1VUV3crUTcvZkhzK0VxczM5eFp3dDRqQUF5b0FBQUFBRWxGIFRrU3VRbUNDIi8+PC9hPgogICAgICA8L2Rpdj4KICAgPC9kaXY+CjwvZGl2Pgo8IS0tICNtZWdhLWRyb3Bkb3duLW1lbnUtY29udGFpbmVyIGVuZCAtLT4KCiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgIAogICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3AtZG93bi1uYXYiPgogICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iZHJvcGRvd24tbGluayIgc3R5bGU9Im1pbi13aWR0aDogODRweDsiPgogICAgICAgICAgICAgICAJCVByb2dyYW1zICZhbXA7IFNlcnZpY2VzIAogICAgICAgICAgICAgICA8L2E+CQkJCiAgICAgICAgICAgICAgIAoKPGRpdiBjbGFzcz0ibWVnYS1kcm9wZG93bi1tZW51Ij4KICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIGhpZGRlbi14cyBoaWRkZW4tc20iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2staW5mbyI+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImltZy1ibG9jayI+CiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iL2NvbnRlbnQvZGFtL2llZWUtc3RhbmRhcmRzL3N0YW5kYXJkcy93ZWIvdmlzdWFscy9pbWFnZXMvbmF2LXByb2R1Y3Qtc2VydmljZXMtbmV3LWJyYW5kLmpwZyIvPiAKICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icnRlIj4KCgoKICAgIDxzcGFuIGNsYXNzPSJwYXJhZ3JhcGgtc21hbGwiPk91ciBwcm9ncmFtcyBhbmQgc2VydmljZXMgY292ZXIgdGhlIGNvbXBsZXRlIHN0YW5kYXJkcyBkZXZlbG9wbWVudCBsaWZlY3ljbGUuLi5hbmQgYmV5b25kLjwvc3Bhbj48YnIgLz4KCjwvZGl2PgogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTIgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpdmlkZXIiPjwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+CiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9hbXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBBbGxpYW5jZSBNYW5hZ2VtZW50IFNlcnZpY2VzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvaWNhcC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIENvbmZvcm1pdHkgQXNzZXNzbWVudCBhbmQgQ2VydGlmaWNhdGlvbgogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luaXRpYXRpdmVzL29wZW5zb3VyY2UvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBJRUVFIFNBIE9wZW4gU291cmNlCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJvZHVjdHMtc2VydmljZXMvaW5kdXN0cnktYWZmaWxpYXRlLW5ldHdvcmsvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBJbmR1c3RyeSBBZmZpbGlhdGUgTmV0d29yawogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICA8L3VsPgoKPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4KCiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTMgc3ViLW5hdi1pbmZvIj4KICAgICAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBMaXN0IENvbnRhaW5lciBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICAKICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4KICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2luZHVzdHJ5LWNvbm5lY3Rpb25zL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgSW5kdXN0cnkgQ29ubmVjdGlvbnMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcm9kdWN0cy1zZXJ2aWNlcy9uZXNjL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgTmF0aW9uYWwgRWxlY3RyaWNhbCBTYWZldHkgQ29kZQogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3Byb2R1Y3RzLXNlcnZpY2VzL3JlZ2F1dGgvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBSZWdpc3RyYXRpb24gQXV0aG9yaXR5CiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIDwvdWw+Cgo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPgoKICAgICAgICAgPC9kaXY+CiAgICAgICAgIDxhIGhyZWY9ImphdmFzY3JpcHQ6dm9pZCgwKSIgY2xhc3M9ImNsb3NlLWljb24gaGlkZGVuLXhzIGhpZGRlbi1zbSI+PGltZyBzcmM9ImRhdGE6aW1hZ2UvcG5nK3htbDtiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQURJQUFBQXlDQVlBQUFBZVA0aXhBQUFBQVhOU1IwSUFyczRjNlFBQSBBV0pwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpIFlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWxoTlVDQkRiM0psSURVdU5DNHdJajRLSUNBZ1BISmsgWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKayBaaTF6ZVc1MFlYZ3Ribk1qSWo0S0lDQWdJQ0FnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5IElpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaWGhwWmowaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOWwgZUdsbUx6RXVNQzhpUGdvZ0lDQWdJQ0FnSUNBOFpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ1VFkzSmxaVzV6YUc5MCBQQzlsZUdsbU9sVnpaWEpEYjIxdFpXNTBQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnIFBDOXlaR1k2VWtSR1BnbzhMM2c2ZUcxd2JXVjBZVDRLYnN6ZUxnQUFBYkpKUkVGVWFBWHRtbXR1d3lBUWhLMmUgM0Rmd0VUaXF1eVJGY1RHR2ZjeTRKQ3BTWkJ0Mlo3NkIrRWVrTFB1K3IvSXBZMXZlWkFod0t0QnlYWmZEUTdsTiBzMmNSMEZSZ3k3VVZKSzlOR3lhelpjQjY1Q0NwbnZ4NW5pNU1oL1g1U25RS3BnbWpabFFYL3NFTFpHWXpOOXdRIHlzM2tiaVNFQ3JPRUJRQ2hZQXd3SVVjb3VEZGNVQkdLNWtrVGJvU2llOUVOSk5RZEhvKzlZeG94dFJzSHo5bTEgMjBPVVpFaGpwRmJoTTEwUkFBZ05FL1JWY1FRazBudkZFNXIzQUhsNlFwRGFaZ3VZcFZickQ2M1RBR3Bxb0ZCZSBzUjVvYjgzclIrM3JBTXZTYVV6ejY3TzVLWUtiVHNqbmlibERsR1NETUpRUVg4WDgvMXJ0d09BMHlwZU1jaW9WIGl2OVJHV0x1TUowUXFiZm0zelpDcHdaVVUwTkEwMHRhQUMyMWVnSkFwUWZNMHdOQXZaYUlBRVY2cjRrY0t3Z1EgaElZRC9kV0NCRUJxdlFnVmR3eGpobVkzQ3RPUXFmMHIxQjFHZEErNndXSExhRjQwNFFOOGZRdjNoQXZXeEoxbiBtRGRNcUFNN1dnb3poQVZHaElaMU40dTcwUUJuTFRVem1SdXNSSUY2Tlp1Nk1BQVRiUjB5U3NFbW45YVk3bmUxIFFLWVdxTXh0SC9Xbm1qcmtkQ2RSZnkwRk9OWFErVVRXdytRNy9mSHMrRXFzMzl4Wnd0NGpBQXlvQUFBQUFFbEYgVGtTdVFtQ0MiLz48L2E+CiAgICAgIDwvZGl2PgogICA8L2Rpdj4KPC9kaXY+CjwhLS0gI21lZ2EtZHJvcGRvd24tbWVudS1jb250YWluZXIgZW5kIC0tPgoKICAgICAgICAgICAgPC9saT4KICAgICAgICAgCiAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcC1kb3duLW5hdiI+CiAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJkcm9wZG93bi1saW5rIiBzdHlsZT0ibWluLXdpZHRoOiA4NHB4OyI+CiAgICAgICAgICAgICAgIAkJUHJhY3RpY2UgQXJlYXMgJmFtcDsgRm9jdXNlcyAKICAgICAgICAgICAgICAgPC9hPgkJCQogICAgICAgICAgICAgICAKCjxkaXYgY2xhc3M9Im1lZ2EtZHJvcGRvd24tbWVudSI+CiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBjb2wtbWQtMyBoaWRkZW4teHMgaGlkZGVuLXNtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW1nLWJsb2NrLWluZm8iPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWctYmxvY2siPgogICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvaW1hZ2VzL25hdi10ZWNobm9sb2d5LWluaXRpYXRpdmVzLW5ldy1icmFuZC5qcGciLz4gCiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dCI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJ0ZSI+CgoKCiAgICA8c3BhbiBjbGFzcz0icGFyYWdyYXBoLXNtYWxsIj5FeHBsb3JlIGhpZ2gtbGV2ZWwgaW5pdGlhdGl2ZXMgYW5kIG5ldyB0ZWNobm9sb2dpZXMgaW4gb3VyIGtleSBhcmVhcyBvZiBmb2N1cy48L3NwYW4+CjwvZGl2PgogICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgY29sLW1kLTIgaGlkZGVuLXhzIGhpZGRlbi1zbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpdmlkZXIiPjwvZGl2PgogICAgICAgICA8L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTEyIGNvbC1tZC0zIHN1Yi1uYXYtaW5mbyI+CiAgICAgICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgCiAgICA8dWwgY2xhc3M9ImxpbmstbGlzdCI+CiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9pbml0aWF0aXZlcy9hcnRpZmljaWFsLWludGVsbGlnZW5jZS1zeXN0ZW1zL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiIGNsYXNzPSJwbGFpbi1saW5rIj4KICAgICAgICAgICAgQXJ0aWZpY2lhbCBJbnRlbGxpZ2VuY2UgU3lzdGVtcwogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9jb25uZWN0aXZpdHktdGVsZWNvbS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIENvbm5lY3Rpdml0eSAmYW1wOyBUZWxlY29tCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2VuZXJneS9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEVuZXJneQogICAgICA8L2E+CiAgICA8L2xpPgoKPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4KCiAgICAKICAgICAgICAKCgoKCgogICAgICAgICAKCgoKPCEtLSBMaW5rIENvbnRlbnQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgIDxsaT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL3ByYWN0aWNlcy9mb3VuZGF0aW9uYWwvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBGb3VuZGF0aW9uYWwgVGVjaG5vbG9naWVzCiAgICAgIDwvYT4KICAgIDwvbGk+Cgo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPgoKICAgIAogICAgICAgIAoKCgoKCiAgICAgICAgIAoKCgo8IS0tIExpbmsgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGxpPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvcHJhY3RpY2VzL2hlYWx0aGNhcmUtbGlmZS1zY2llbmNlcy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIiBjbGFzcz0icGxhaW4tbGluayI+CiAgICAgICAgICAgIEhlYWx0aGNhcmUgYW5kIExpZmUgU2NpZW5jZXMKICAgICAgPC9hPgogICAgPC9saT4KCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+CgogICAgCiAgICAgICAgCgoKCgoKICAgICAgICAgCgoKCjwhLS0gTGluayBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8bGk+CiAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9wcmFjdGljZXMvbW9iaWxpdHkvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiIgY2xhc3M9InBsYWluLWxpbmsiPgogICAgICAgICAgICBNb2JpbGl0eQogICAgICA8L2E+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+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPkV4aXN0aW5nIFN0YW5kYXJkczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgSW5hY3RpdmUtUmVzZXJ2ZWQiPkluYWN0aXZlLVJlc2VydmVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvODM2LTIwMDkuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgODM2LTIwMDkgLSBJRUVFIFJlY29tbWVuZGVkIFByYWN0aWNlIGZvciBQcmVjaXNpb24gQ2VudHJpZnVnZSBUZXN0aW5nIG9mIExpbmVhciBBY2NlbGVyb21ldGVyczwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5UaGlzIHJlY29tbWVuZGVkIHByYWN0aWNlIGRlc2NyaWJlcyB0aGUgY29uZHVjdCBhbmQgYW5hbHlzaXMgb2YgcHJlY2lzaW9uIHRlc3RzIHRoYXQgYXJlIHRvIGJlIHBlcmZvcm1lZCBvbiBsaW5lYXIgYWNjZWxlcm9tZXRlcnMgdXNpbmcgY2VudHJpZnVnZSB0ZWNobmlxdWVzLiBUaGUgdGVybSA/cHJlY2lzaW9uLD8gaW4gdGhpcyBjb250ZXh0LCByZWZlcnMgdG8gdGVzdHMgdGhhdCBhcmUgY29uZHVjdGVkIHRvIGV2YWx1YXRlIGFjY2VsZXJvbWV0ZXIgcGFyYW1ldGVycywgYXMgb3Bwb3NlZCB0byB0aG9zZSBjb25kdWN0ZWQgdG8gZXN0YWJsaXNoIGVudmlyb25tZW50YWwgc3Vydml2YWJpbGl0eSBvbmx5LiBFdmFsdWF0aW9uIG1heSB0YWtlIHRoZSBmb3JtIG9mIGRldGVybWluaW5nIHRoZSBjb2VmZmljaWVudHMgb2YgdGhlIGFjY2VsZXJvbWV0ZXI/cyBtb2RlbCBlcXVhdGlvbiwgZXhjZXB0IGZvciBiaWFzIGFuZCBzY2FsZSBmYWN0b3IsIHdoaWNoIGFyZSBtb3N0IGFjY3VyYXRlbHkgZGV0ZXJtaW5lZCBieSBzdGF0aWMgbXVsdGktcG9zaXRpb24gdGVzdHMuIEFsdGVybmF0aXZlbHksIGV2YWx1YXRpb24gbWF5IG9ubHkgZXN0YWJsaXNoIHRoYXQgdGhlIGFjY2VsZXJvbWV0ZXIgb3V0cHV0IGNvbXBsaWVzIHdpdGggc3BlY2lmaWMgZXJyb3IgbGltaXQgY3JpdGVyaWEuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEluYWN0aXZlLVJlc2VydmVkIj5JbmFjdGl2ZS1SZXNlcnZlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzE0MzEtMjAwNC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSAxNDMxLTIwMDQgLSBJRUVFIFN0YW5kYXJkIFNwZWNpZmljYXRpb24gRm9ybWF0IEd1aWRlIGFuZCBUZXN0IFByb2NlZHVyZSBmb3IgQ29yaW9saXMgVmlicmF0b3J5IEd5cm9zPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIHNpbmdsZS1heGlzIENvcmlvbGlzIHZpYnJhdG9yeSBneXJvIChDVkcpIGZvciB1c2UgYXMgYSBzZW5zb3IgaW4gYXR0aXR1ZGUgY29udHJvbCBzeXN0ZW1zLCBhbmd1bGFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGFuZ3VsYXIgcmF0ZSBtZWFzdXJpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gIEEgc3RhZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBndWlkZSBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGEgc2luZ2xlLWF4aXMgQ1ZHIGlzIHByb3ZpZGVkLiAgQSBjb21wbGlsYXRpb24gb2YgcmVjb21tZW5kZWQgcHJvY2VkdXJlcyBmb3IgdGVzdGluZyBhIENWRywgZGVyaXZlZCBmcm9tIHRob3NlIHByZXNlbnRseSB1c2VkIGluIHRoZSBpbmR1c3RyeSwgaXMgYWxzbyBwcm92aWRlZC4gIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgQ1ZHIGRlc2lnbiBmZWF0dXJlcyBhbmQgdGhlb3JldGljYWwgcHJpbmNpcGxlcyBvZiBvcGVyYXRpb24uPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIFN1cGVyc2VkZWQiPlN1cGVyc2VkZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC8xMjkzLTE5OTgtQ29yMS0yMDA4Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDEyOTMtMTk5OC9Db3IgMS0yMDA4IC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIExpbmVhcixTaW5nbGUtQXhpcywgTm9uZ3lyb3Njb3BpYyBBY2NlbGVyb21ldGVycyBDb3JyaWdlbmR1bSAxOiBDaGFuZ2VzIHRvIEFubmV4IEsgYW5kIEFubmV4IEw8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+Q29ycmlnZW5kdW0gdG8gSUVFRSBTdGQgMTI5My0xOTk4LiBTcGVjaWZpY2F0aW9uIGFuZCB0ZXN0IHJlcXVpcmVtZW50cyBmb3IgbGluZWFyLCBzaW5nbGUtYXhpcywgbm9uZ3lyb3Njb3BpYyBhY2NlbGVyb21ldGVycyBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgbGluZWFyIGRpc3BsYWNlbWVudCBtZWFzdXJpbmcgc3lzdGVtcywgYW5kIGxpbmVhciByYXRlIG1lYXN1cmluZyBzeXN0ZW1zIGFyZSBkZWZpbmVkLiBUaGUgc3BlY2lmaWNhdGlvbiBmb3JtYXQgZ3VpZGUgYW5kIHRlc3QgcHJvY2VkdXJlIHN0YW5kYXJkIGFwcGxpZXMgdG8gZm9yY2UtcmViYWxhbmNlIGFjY2VsZXJvbWV0ZXJzIChwZW5kdWxvdXMgb3IgdHJhbnNsYXRpb25hbCBwcm9vZg0KbWFzcyksIHZpYnJhdGluZyBiZWFtIGFjY2VsZXJvbWV0ZXJzIChWQkFzKSwgYW5kIG1pY3JvbWVjaGFuaWNhbCBhY2NlbGVyb21ldGVycyB0aGF0IHJhbmdlDQpmcm9tIGxlc3NlciBhY2N1cmFjeSB0byBoaWdoIGFjY3VyYWN5IGRldmljZXMuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEluYWN0aXZlLVJlc2VydmVkIj5JbmFjdGl2ZS1SZXNlcnZlZDwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzY3MS0xOTg1LUNvcjEtMjAxMC5odG1sIiBjbGFzcz0ibGluayI+SUVFRSA2NzEtMTk4NS9Db3IgMS0yMDEwIC0gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIE5vbmd5cm9zY29waWMgSW5lcnRpYWwgQW5ndWxhciBTZW5zb3JzOiBKZXJrLCBBY2NlbGVyYXRpb24sIFZlbG9jaXR5LCBhbmQgRGlzcGxhY2VtZW50IENvcnJpZ2VuZHVtIDE6IDQuNy4yLjYgU2hvcnQtVGVybSBTdGFiaWxpdHkgYW5kIEFubmV4IEEgU2Vuc29yIER5bmFtaWMgQmxvY2sgRGlhZ3JhbXM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+SUVFRSBTdGQgNjcxLTE5ODUgcHJvdmlkZXMgc3BlY2lmaWNhdGlvbnMgYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIG5vbi1neXJvc2NvcGljIGluZXJ0aWFsIGFuZ3VsYXIgc2Vuc29yIHRoYXQgbWF5IG1lYXN1cmUgYW5ndWxhciBqZXJrLCBhY2NlbGVyYXRpb24sIHJhdGUsIG9yIGRpc3BsYWNlbWVudCB3aXRoIG9yIHdpdGhvdXQgcmVzcG9uc2UgZG93biB0byB6ZXJvIGZyZXF1ZW5jeS4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGZvcm1hdCBpcyBwcm92aWRlZC4gQSBjb21waWxhdGlvbiBvZiByZWNvbW1lbmRlZCB0ZXN0IHByb2NlZHVyZXMsIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnksIGlzIGFsc28gcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgY292ZXIgZGVzaWduIGZlYXR1cmVzIGFuZCB0aGVvcmV0aWNhbCBwcmluY2lwbGVzIG9mIG9wZXJhdGlvbi4NClRoaXMgY29ycmlnZW5kdW0gbWFrZXMgY2hhbmdlcyB0byA0LjcuMi42IHRvIGRlbGV0ZSBhIHNlbnRlbmNlIHRoYXQgZG9lcyBub3QgYmVsb25nIHRoZXJlLCB0byBhZGQgYSBzdWJjbGF1c2UgdGhhdCB3YXMgaW5hZHZlcnRlbnRseSBsZWZ0IG91dCwgYW5kIHRvIHJlbnVtYmVyIHRoZSBleGlzdGluZyBzdWJjbGF1c2VzLiBDaGFuZ2VzIGFyZSBhbHNvIGJlaW5nIG1hZGUgdG8gZml4IHRoZSBibG9jayBkaWFncmFtcyBpbiBBbm5leCBBLCB0byBjb3JyZWN0IGEgbWlzc3BlbGxpbmcgb2YgaW5lcnRpYSwgYW5kIHRvIGFkZCBhIG1pc3Npbmcgc3ltYm9sLg0KPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIEFjdGl2ZSI+QWN0aXZlPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMTI5My0yMDE4Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDEyOTMtMjAxOCAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBMaW5lYXIgU2luZ2xlLUF4aXMsIE5vbmd5cm9zY29waWMgQWNjZWxlcm9tZXRlcnM8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+VGhlIHNwZWNpZmljYXRpb24gYW5kIHRlc3QgcmVxdWlyZW1lbnRzIGZvciBhIGxpbmVhciwgc2luZ2xlLWF4aXMsIG5vbmd5cm9zY29waWMgYWNjZWxlcm9tZXRlciBmb3IgdXNlIGluIGluZXJ0aWFsIG5hdmlnYXRpb24sIGd1aWRhbmNlLCBhbmQgbGV2ZWxpbmcgc3lzdGVtcyBhcmUgZGVmaW5lZC4gQSBzdGFuZGFyZCBzcGVjaWZpY2F0aW9uIGd1aWRlIGFuZCBhIGNvbXBpbGF0aW9uIG9mIHJlY29tbWVuZGVkIHRlc3QgcHJvY2VkdXJlcyBmb3Igc3VjaCBhY2NlbGVyb21ldGVycyBhcmUgcHJvdmlkZWQuIEluZm9ybWF0aXZlIGFubmV4ZXMgYXJlIGdpdmVuIG9uIHRoZSB2YXJpb3VzIHR5cGVzIG9mIHN1Y2ggYWNjZWxlcm9tZXRlcnMgKGZvcmNlIG9yIHBlbmR1bG91cyB0b3JxdWUgcmViYWxhbmNlIHdpdGggYW5hbG9nIG9yIGRpZ2l0YWwgb3V0cHV0LCB2aWJyYXRpbmcgYmVhbSwgYW5kIG1pY3JvbWVjaGFuaWNhbCkgYW5kIGVycm9yIGVmZmVjdHMsIG9uIGZpbHRlcmluZywgbm9pc2UsIGFuZCB0cmFuc2llbnQgYW5hbHlzaXMgdGVjaG5pcXVlcywgYW5kIG9uIGNhbGlicmF0aW9uIGFuZCBtb2RlbGluZyB0ZWNobmlxdWVzIChtdWx0aXBvaW50IHR1bWJsZSBhbmFseXNpcywgdmlicmF0aW9uIGFuZA0Kc2hvY2sgdGVzdCBhbmFseXNlcywgYW5kIGdlb3BoeXNpY2FsIGVmZmVjdHMgaW4gaW5lcnRpYWwgaW5zdHJ1bWVudCB0ZXN0aW5nKS48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgSW5hY3RpdmUtUmVzZXJ2ZWQiPkluYWN0aXZlLVJlc2VydmVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvMjkzLTE5NjktQ29yMS0yMDE0Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDI5My0xOTY5L0NvciAxLTIwMTQgLSBJRUVFIFN0YW5kYXJkIGZvciBJRUVFIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtRGVncmVlLW9mLUZyZWVkb20gU3ByaW5nLVJlc3RyYWluZWQgUmF0ZSBHeXJvcyAtLSBDb3JyaWdlbmR1bSAxOiBUYWJsZSAxIEhlYWRpbmc8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+Q29ycmVjdGlvbiB0byBUYWJsZSAxIG9uIHBhZ2UgMTQgb2YgSUVFRSBTdGQgMjkzLTE5Njk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgo8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS0zIGxlZnQtdGl0bGUiIHZlcnRpY2xlLWFsaWduPSJ0b3AiPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iY29sLXhzLTEyIGNvbC1zbS05IHJpZ2h0LXNlY3Rpb24taW5mbyIgdmVydGljbGUtYWxpZ249InRvcCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGNsYXNzPSJidG4tc3R5bGUgSW5hY3RpdmUtUmVzZXJ2ZWQiPkluYWN0aXZlLVJlc2VydmVkPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBocmVmPSIvc3RhbmRhcmQvNTI5LTE5ODAtQ29yMS0yMDE3Lmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDUyOS0xOTgwL0NvciAxLTIwMTcgLSBJRUVFIFN0YW5kYXJkIFN1cHBsZW1lbnQgZm9yIFN0cmFwZG93biBBcHBsaWNhdGlvbnMgdG8gSUVFRSBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uIEZvcm1hdCBHdWlkZSBhbmQgVGVzdCBQcm9jZWR1cmUgZm9yIFNpbmdsZS1EZWdyZWUtb2YtRnJlZWRvbSBSYXRlLUludGVncmF0aW5nIEd5cm9zIC0gQ29ycmlnZW5kdW0gMTogMy4zLjkuMi4yLCAzLjYuNC4xLjEsIDMuNi40LjEuMiwgNi4zLCBhbmQgMTAuMTAuNC4xPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkNvcnJlY3Rpb25zIGFyZSBtYWRlIGJ5IHRoaXMgY29ycmlnZW5kdW0gdG8gbWF0ZXJpYWwgYWxyZWFkeSBwdWJsaXNoZWQgaW4gSUVFRSBTdGQgNTI5LTE5ODAuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tMyBsZWZ0LXRpdGxlIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9ImNvbC14cy0xMiBjb2wtc20tOSByaWdodC1zZWN0aW9uLWluZm8iIHZlcnRpY2xlLWFsaWduPSJ0b3AiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48YSBjbGFzcz0iYnRuLXN0eWxlIFN1cGVyc2VkZWQiPlN1cGVyc2VkZWQ8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Ii9zdGFuZGFyZC85NTItMTk5Ny1Db3IxLTIwMTYuaHRtbCIgY2xhc3M9ImxpbmsiPklFRUUgOTUyLTE5OTcvQ29yIDEtMjAxNiAtIElFRUUgU3RhbmRhcmQgU3BlY2lmaWNhdGlvbiBGb3JtYXQgR3VpZGUgYW5kIFRlc3QgUHJvY2VkdXJlIGZvciBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3MgLS0gQ29ycmlnZW5kdW0gMTogRmlndXJlIDEgYW5kIFN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xPC9hPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PkVycm9ycyBpZGVudGlmaWVkIGluIElFRUUgU3RkIDk1Mi0xOTk3IGFyZSBjb3JyZWN0ZWQgaW4gdGhpcyBjb3JyaWdlbmR1bS4gQ29ycmVjdGlvbnMgYXJlIG1hZGUgdG8gRmlndXJlIDEgYW5kIGluIHN1YmNsYXVzZXMgNS4zLjQsIDguMywgMTIuMTEuNC4zLjIsIDEyLjExLjQuMy4zLCAxMi4xMS40LjMuNCwgMTIuMTIuMy4xLCBhbmQgMTIuMTIuNC4xLjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgIDwvdHI+Cjx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTMgbGVmdC10aXRsZSIgdmVydGljbGUtYWxpZ249InRvcCI+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJjb2wteHMtMTIgY29sLXNtLTkgcmlnaHQtc2VjdGlvbi1pbmZvIiB2ZXJ0aWNsZS1hbGlnbj0idG9wIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgY2xhc3M9ImJ0bi1zdHlsZSBBY3RpdmUiPkFjdGl2ZTwvYT48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PGEgaHJlZj0iL3N0YW5kYXJkLzk1Mi0yMDIwLmh0bWwiIGNsYXNzPSJsaW5rIj5JRUVFIDk1Mi0yMDIwIC0gSUVFRSBTdGFuZGFyZCBmb3IgU3BlY2lmeWluZyBhbmQgVGVzdGluZyBTaW5nbGUtQXhpcyBJbnRlcmZlcm9tZXRyaWMgRmliZXIgT3B0aWMgR3lyb3M8L2E+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+U3BlY2lmaWNhdGlvbiBhbmQgdGVzdCBwcm9jZWR1cmVzIGZvciBhIHNpbmdsZS1heGlzIGludGVyZmVyb21ldHJpYyBmaWJlciBvcHRpYyBneXJvIChJRk9HKSBmb3IgdXNlIGFzIGEgc2Vuc29yIGluIGF0dGl0dWRlIGNvbnRyb2wgc3lzdGVtcywgYW5ndWxhciBkaXNwbGFjZW1lbnQgbWVhc3VyaW5nIHN5c3RlbXMsIGFuZCBhbmd1bGFyIHJhdGUgbWVhc3VyaW5nIHN5c3RlbXMgYXJlIGRlZmluZWQuIFRoZSB0ZXN0IHByb2NlZHVyZXMgYXJlIGRlcml2ZWQgZnJvbSB0aG9zZSBwcmVzZW50bHkgdXNlZCBpbiB0aGUgaW5kdXN0cnkuPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgPC90cj4KCiAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+Cgo8IS0tICNkeW5hbWljLXdvcmtpbmctZ3JvdXAtZGV0YWlscy1jb250ZW50IGVuZCAtLT4KCgkJCQkJPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCQoKCjxkaXYgY2xhc3M9ImFlbS1HcmlkIGFlbS1HcmlkLS0xMiBhZW0tR3JpZC0tZGVmYXVsdC0tMTIgIj4KICAgIAogICAgCiAgICAKPC9kaXY+Cgo8L2Rpdj4KPCEtLSAjbDItc3RhbmRhcmQtcHJvamVjdC1wYWdlLWNvbnRhaW5lciBlbmRzIC0tPgoKCSAgICANCg0KPCEtLSBGb290ZXINCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxmb290ZXIgaWQ9InBhZ2UtZm9vdGVyIj4NCiAgICAKCgoKCiAgICAKICAgICAgICAKICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJuZXdwYXIgbmV3IHNlY3Rpb24iPgoKPC9kaXY+CgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0icGFyIGlwYXJ5c19pbmhlcml0ZWQiPgoKICAgIAogICAgCiAgICAKICAgIAogICAgICAgIAogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1jb250YWluZXIiPgo8IS0tIEZvb3RlciBDb250ZW50CiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4gIAo8ZGl2IGNsYXNzPSJmb290ZXIgdG9wLWZvb3Rlci13cmFwcGVyIj4KICAgCiAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InJvdyAiPgogICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXItdG9wLXNlY3Rpb24iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiBjb2wtbWQtNiAiPgogICAgICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS0gUmVzcG9uc2l2ZSBJbWFnZSBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8ZGl2IGNsYXNzPSJyZXNwb25zaXZlLWltZyI+DQogICAgDQoNCiAgICANCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvIiB0YXJnZXQ9Il9ibGFuayIgc3R5bGU9IndpZHRoOjEwMCUiPg0KICAgICAgICAgICAgPGltZyBzcmM9Ii9jb250ZW50L2RhbS9pZWVlLXN0YW5kYXJkcy9zdGFuZGFyZHMvd2ViL3Zpc3VhbHMvbG9nb3MvaWVlZS1sb2dvLWZvb3Rlci5naWYiIGNsYXNzPSJpbWctcmVzcG9uc2l2ZSIgYWx0PSJJRUVFIExvZ28iLz4NCiAgICAgICAgICAgIDwvaW1nPg0KICAgICAgICA8L2E+DQogICAgDQogICAgDQo8L2Rpdj4NCjwhLS0gRW5kIFJlc3BvbnNlIEltYWdlIENvbnRlbnQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNiBjb2wtbWQtNiBoaWRkZW4teHMgdGV4dC1yaWdodCI+CiAgICAgICAgICAgICAgIAoKCgoKCgoKCgo8IS0tIFNvY2lhbCBNZWRpYSBDb250YWluZXIgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgCiAgICA8ZGl2IGNsYXNzPSJzb2NpYWxtZWRpYSI+CiAgICAgICAgPHVsPgogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL2llZWVzYSIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtdHdpdHRlciI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vaWVlZXNhLyIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtZmFjZWJvb2stZiI+PC9pPgogICAgPC9hPgoKCgoKPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2xpPgogICAgICAgIAogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAKCgoKCgoKCgoKPCEtLVNvY2lhbCBNZWRpYSBDb250ZW50Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9pZWVlLXNhLWllZWUtc3RhbmRhcmRzLWFzc29jaWF0aW9uLyIgdGFyZ2V0PSJfYmxhbmsiPgogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEtbGlua2VkaW4iPjwvaT4KICAgIDwvYT4KCgoKCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4KICAgICAgICAgICAgPC9saT4KICAgICAgICAKICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgCgoKCgoKCgoKCjwhLS1Tb2NpYWwgTWVkaWEgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9pZWVlc2EvIiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1pbnN0YWdyYW0iPjwvaT4KICAgIDwvYT4KCgoKCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4KICAgICAgICAgICAgPC9saT4KICAgICAgICAKICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgCgoKCgoKCgoKCjwhLS1Tb2NpYWwgTWVkaWEgQ29udGVudAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICAgPGEgaHJlZj0iaHR0cDovL3d3dy55b3V0dWJlLmNvbS9pZWVlc2EiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLXlvdXR1YmUiPjwvaT4KICAgIDwvYT4KCgoKCjwhLS0gI3NvY2lhbC1tZWRpYS1jb250ZW50IGVuZCAtLT4KICAgICAgICAgICAgPC9saT4KICAgICAgICA8L3VsPgogICAgPC9kaXY+Cgo8IS0tI1NvY2lhbC1tZWRpYS1jb250YWluZXIgY29udGVudCBlbmQtLT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXItbGlua3MtaW5mbyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy02IGNvbC1zbS0zIGNvbC1tZC0zIGNvbC1sZy0yIj4KICAgICAgICAgICAgICAgCiAKCgo8IS0tIEZvb3RlciBDb2x1bW4gU2VjdGlvbiBDb250ZW50CiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4KCiAgIDxkaXYgY2xhc3M9ImZvb3QtdGl0bGUiPkFib3V0PC9kaXY+CiAgIAogICAKICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCBVcw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9jb3JwY2hhbi5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Db3Jwb3JhdGUgUHJvZ3JhbQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9kaXN0cmliLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkRpc3RyaWJ1dG9yIFByb2dyYW0NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvaW50bC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5HbG9iYWwgRW5nYWdlbWVudA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9wb2xpY2llcy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Qb2xpY2llcyAmYW1wOyBQcm9jZWR1cmVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3RyYWluaW5nLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlRyYWluaW5nICsgRGV2ZWxvcG1lbnQNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvZmFxcy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5GQVFzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvY29udGFjdC9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Db250YWN0IFVzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+Qm9hcmQgb2YgR292ZXJub3JzIChCb0cpPC9kaXY+CiAgIAogICAKICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9ib2cuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+QWJvdXQgdGhlIEJPRw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9ib2cvYXJjb20vaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+QXdhcmRzIENvbW1pdHRlZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9ib2cvY2FnL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkNvcnAuIEFkdmlzb3J5IEdyb3VwDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL2ljY29tL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPklDIENvbW1pdHRlZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9yYWMuaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+UmVnLiBBdXRoLiBDb21taXR0ZWUNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvc3BjYy9pbmRleC5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5TUENDDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgPC91bD4NCg0KPCEtLSAjbGluay1saXN0LWNvbnRhaW5lci1jb250ZW50IGVuZCAtLT4NCgoKPCEtLSAjZm9vdGVyLWNvbHVtbi1zZWN0aW9uLWNvbnRlbnQgZW5kIC0tPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTYgY29sLXNtLTMgY29sLW1kLTMgY29sLWxnLTIiPgogICAgICAgICAgICAgICAKIAoKCjwhLS0gRm9vdGVyIENvbHVtbiBTZWN0aW9uIENvbnRlbnQKICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPgoKICAgPGRpdiBjbGFzcz0iZm9vdC10aXRsZSI+U3RhbmRhcmRzIEJvYXJkIChTQVNCKTwvZGl2PgogICAKICAgCiAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIA0KICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4NCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BYm91dCB0aGUgU0FTQg0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL3NiYS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Cb2FyZCBBcHByb3ZhbHMNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvYWJvdXQvc2FzYi9hdWRjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+QXVkQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9uZXNjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+TmVzQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9wYXRjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+UGF0Q29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9wcm9jb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+UHJvQ29tDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvc2FzYi9yZXZjb20uaHRtbCIgdGFyZ2V0PSJfc2VsZiI+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+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCiAgICAgICAgDQoNCg0KDQo8IS0tIFV0aWxpdHkgTGlua3MgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPHVsIGlkPSJDRFZJQVlOSVlRVkdVQVJZWlkiIGNsYXNzPSIgdXRpbGl0eWxpbmtzIHNlcGFyYXRvci1waXBlIj4NCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSIvIj5Ib21lPC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9zaXRlbWFwLmh0bWwiPlNpdGVtYXA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iL2Fib3V0L2NvbnRhY3QvaW5kZXguaHRtbCI+IENvbnRhY3QgJmFtcDsgU3VwcG9ydCA8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvYWNjZXNzaWJpbGl0eS1zdGF0ZW1lbnQuaHRtbCI+QWNjZXNzaWJpbGl0eTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hYm91dC9jb3Jwb3JhdGUvZ292ZXJuYW5jZS9wOS0yNi5odG1sIj5Ob25kaXNjcmltaW5hdGlvbiBQb2xpY3k8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cDovL3d3dy5pZWVlLWV0aGljcy1yZXBvcnRpbmcub3JnLyI+SUVFRSBFdGhpY3MgUmVwb3J0aW5nPC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL3NlY3VyaXR5X3ByaXZhY3kuaHRtbCI+SUVFRSBQcml2YWN5IFBvbGljeTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSIvaXByL2luZGV4Lmh0bWwiPklFRUUgU0EgQ29weXJpZ2h0IFBvbGljeTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICA8L3VsPg0KDQo8IS0tICN1dGlsaXR5LWxpbmtzLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgbGVnYWwtY29weSBmb250LWYiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNxLWRkLXBhcmFncmFwaCI+PGRpdiBjbGFzcz0icnRlIHRleHQgcGFyYmFzZSI+CgoKCiAgICDCqSBDb3B5cmlnaHQgMjAyMSBJRUVFIOKAkyBBbGwgcmlnaHRzIHJlc2VydmVkLiBVc2Ugb2YgdGhpcyB3ZWJzaXRlIHNpZ25pZmllcyB5b3VyIGFncmVlbWVudCB0byB0aGXCoDxhIGhyZWY9Imh0dHA6Ly93d3cuaWVlZS5vcmcvc2l0ZV90ZXJtc19jb25kaXRpb25zLmh0bWwiIHRhcmdldD0iX2JsYW5rIj5JRUVFIFRlcm1zIGFuZCBDb25kaXRpb25zPC9hPi48YnIgLz4KQSBub3QtZm9yLXByb2ZpdCBvcmdhbml6YXRpb24sIElFRUUgaXMgdGhlIHdvcmxkJ3MgbGFyZ2VzdCB0ZWNobmljYWwgcHJvZmVzc2lvbmFsIG9yZ2FuaXphdGlvbiBkZWRpY2F0ZWQgdG8gYWR2YW5jaW5nIHRlY2hub2xvZ3nCoDxiciAvPgpmb3IgdGhlIGJlbmVmaXQgb2YgaHVtYW5pdHkuPGJyIC8+Cgo8L2Rpdj4KPC9kaXY+Cg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KPC9kaXY+DQo8IS0tICNnbG9iYWwtZm9vdGVyLWNvbnRlbnQgZW5kIC0tPjwvZGl2PgoKICAgIAoKPC9kaXY+CgogICAgCgoNCjwvZm9vdGVyPg0KPCEtLSAjZm9vdGVyIGVuZHMgLS0+DQoKCTwvZGl2PgoJCgk8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYmFzZS5taW4uMGZmZjI4ZTUxNGJlZDZkZWYzZDI1ZmZmNTlkNWZkNDYuanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL2FwcHNfY29tcG9uZW50cy5taW4uOTMyYTgyMTFhYzA5NWUyNDUyMTcxOGZkMDVhYTAxNzAuanMiPjwvc2NyaXB0PgoKCgoJPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4NCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2Jhc2UubWluLmY1NDZlMTU4OTI3NjJhMjAwYmNlMmIyMDNmNzVmM2Y4LmpzIj48L3NjcmlwdD4KCgoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvZGVzaWducy9pZWVlLWNvcmUvY2xpZW50bGlicy9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmpzIj48L3NjcmlwdD4KCgoNCg0KPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4KCgoKCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9kZXNpZ25zL2llZWUtc3RhbmRhcmRzL2NsaWVudGxpYnMvYmFzZS5taW4uODA0MmIwZmNiZDYyMTI2ODM0OTdkNTZlZmJkZDU3NjMuanMiPjwvc2NyaXB0PgoKCgoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9hcHBzX2NvbXBvbmVudHMubWluLmQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLmpzIj48L3NjcmlwdD4KCgoKDQoKCQoJPGRpdiBjbGFzcz0iY2xvdWRzZXJ2aWNlIGdlbmVyaWN0cmFja2VyIj4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKXsKd2luZG93LmNvb2tpZWNvbnNlbnQuaW5pdGlhbGlzZShqc29uKQp9KTsKICAgIDwvc2NyaXB0Pgo8L2Rpdj4KCgo8L2JvZHk+CjwvYm9keT4KPC9odG1sPgo=
150
+ CjwhRE9DVFlQRSBIVE1MPgo8aHRtbD4KICAgIDxoZWFkPgoKPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iLz4KCjwhLS0gR2xvYmFsIHNpdGUgdGFnIChndGFnLmpzKSAtIEdvb2dsZSBBbmFseXRpY3MgLSBTdGFydCAtLT4KPHNjcmlwdD4oZnVuY3Rpb24odyxkLHMsbCxpKXt3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFydCc6DQpuZXcgRGF0ZSgpLmdldFRpbWUoKSxldmVudDonZ3RtLmpzJ30pO3ZhciBmPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUocylbMF0sDQpqPWQuY3JlYXRlRWxlbWVudChzKSxkbD1sIT0nZGF0YUxheWVyJz8nJmw9JytsOicnO2ouYXN5bmM9dHJ1ZTtqLnNyYz0NCidodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoaixmKTsNCn0pKHdpbmRvdyxkb2N1bWVudCwnc2NyaXB0JywnZGF0YUxheWVyJywnR1RNLU1SOFQ4NDMnKTs8L3NjcmlwdD4NCjxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0iYnUxZ21XNE1LeThXYXctMHc4UFE3ZFNCRjNzQW5ZVGRobEtDR3dPQndCSSIgLz4NCgo8IS0tIEdsb2JhbCBzaXRlIHRhZyAoZ3RhZy5qcykgLSBHb29nbGUgQW5hbHl0aWNzIC0gRW5kIC0tPgoKCgoKCQoJCTxtZXRhIG5hbWU9ImRlcyIvPgoJCTxtZXRhIG5hbWU9IlN0ZFJlY05vIiBjb250ZW50PSI3MjkyIi8+CgkJPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRlcm1zIGFuZCBkZWZpbml0aW9ucyByZWxhdGluZyB0byBpbmVydGlhbCBzZW5zb3JzIGFyZSBwcmVzZW50ZWQgaW4gdGhpcyBzdGFuZGFyZC4gVXNhZ2UgYXMgdW5kZXJzdG9vZCBieSB0aGUgaW5lcnRpYWwgc2Vuc29yIGNvbW11bml0eSBpcyBnaXZlbiBwcmVmZXJlbmNlIG92ZXIgZ2VuZXJhbCB0ZWNobmljYWwgdXNhZ2Ugb2YgdGhlIHRlcm1zIGhlcmVpbi4gVGhlIGNyaXRlcmlvbiBmb3IgaW5jbHVzaW9uIG9mIGEgdGVybSBhbmQgaXRzIGRlZmluaXRpb24gaW4gdGhpcyBzdGFuZGFyZCBpcyB1c2VmdWxuZXNzIGFzIHJlbGF0ZWQgdG8gaW5lcnRpYWwgc2Vuc29yIHRlY2hub2xvZ3kuIi8+CgkJPG1ldGEgbmFtZT0idGl0bGUiIGNvbnRlbnQ9IklFRUUgNTI4LTIwMTkgLSBJRUVFIFN0YW5kYXJkIGZvciBJbmVydGlhbCBTZW5zb3IgVGVybWlub2xvZ3kiLz4KCQk8bWV0YSBuYW1lPSJzdGF0dXMiLz4KCQk8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iSUVFRSA1Mjg/LCBpbmVydGlhbCBzZW5zb3IgdGVjaG5vbG9neSwgaW5lcnRpYWwgc2Vuc29yIHRlcm1pbm9sb2d5Ii8+CgkJPG1ldGEgbmFtZT0iU29jaWV0eSIgY29udGVudD0iSUVFRSBBZXJvc3BhY2UgYW5kIEVsZWN0cm9uaWMgU3lzdGVtcyBTb2NpZXR5Ii8+CgkJPG1ldGEgbmFtZT0idHlwZSIgY29udGVudD0iU3RhbmRhcmQiLz4KCgkJPG1ldGEgbmFtZT0idG9waWMiIGNvbnRlbnQ9IkFlcm9zcGFjZSBFbGVjdHJvbmljcyIvPgoKCQkKCQoKCgogICAgCiAgICAKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjLmNsaWVudGxpYnMvZm91bmRhdGlvbi9jbGllbnRsaWJzL21haW4ubWluLmI0OTk0Nzg4Y2YxZWFlZWQzMDBhMGFhN2FmNTNmM2M4LmNzcyIgdHlwZT0idGV4dC9jc3MiPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL2pxdWVyeS5taW4uMTQ5NGMwYWJiZTUwMTMwMWUyYWI5ZGFlY2M2MDgyYTguanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjLmNsaWVudGxpYnMvY2xpZW50bGlicy9ncmFuaXRlL3V0aWxzLm1pbi40YTE5MmI1OTBhMmMyOTI2ZmIwMDAyNjQzNzBjMDU4OC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMuY2xpZW50bGlicy9jbGllbnRsaWJzL2dyYW5pdGUvanF1ZXJ5L2dyYW5pdGUubWluLjU0M2QyMTRjODhkZmE2ZjRhMzIzM2I2MzBjODJkODc1LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9qcXVlcnkubWluLmRkOWIzOTVjNzQxY2UyNzg0MDk2ZTI2NjE5ZTE0OTEwLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9zaGFyZWQubWluLjlmMzcxNmIyYzQ3M2ZkNTNhYjMxYjFjYWE1MzEzMWE4LmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy5jbGllbnRsaWJzL2ZvdW5kYXRpb24vY2xpZW50bGlicy9tYWluLm1pbi5hNmZhYWZiZWVkMjRmNWQ0MGFhZjM2N2M3Nzg3NTNhYi5qcyI+PC9zY3JpcHQ+CgoKCiAgICAKICAgIDxsaW5rIGhyZWY9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCgoKCgoKCgoKCgoKCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQogICAgICANCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvYm9vdHN0cmFwLm1pbi40MTVlOTBjZGMyOTc5ZWZmZWNiMWE4NzgzZmQyOTM3NC5jc3MiIHR5cGU9InRleHQvY3NzIj4KCgoNCgogICAgCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL2V0Yy9jbGllbnRsaWJzL2F4aXM0MS1jb3JlL3RoaXJkcGFydHkvZGF0YXRhYmxlLm1pbi4zMmRhN2E5ZDQ3NDQ3M2I4MDVjODdkYTJiNzQ0MGU3YS5jc3MiIHR5cGU9InRleHQvY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYmFzZS5taW4uZGQ0ZmE1NGU1ZTIzZjAyMDIxYTVlOTAwY2FkYTMxZTQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+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+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9ib2cvaWNjb20vaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+SUMgQ29tbWl0dGVlDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9zdGFuZGFyZHMuaWVlZS5vcmcvYWJvdXQvYm9nL3JhYy5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5SZWcuIEF1dGguIENvbW1pdHRlZQ0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vc3RhbmRhcmRzLmllZWUub3JnL2Fib3V0L2JvZy9zcGNjL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPlNQQ0MNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBjb2wtbWQtMyBjb2wtbGctMiI+CiAgICAgICAgICAgICAgIAogCgoKPCEtLSBGb290ZXIgQ29sdW1uIFNlY3Rpb24gQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICA8ZGl2IGNsYXNzPSJmb290LXRpdGxlIj5TdGFuZGFyZHMgQm9hcmQgKFNBU0IpPC9kaXY+CiAgIAogICAKICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgTGlzdCBDb250YWluZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgDQogICAgPHVsIGNsYXNzPSJsaW5rLWxpc3QiPg0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkFib3V0IHRoZSBTQVNCDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2Fib3V0L3Nhc2Ivc2JhLmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkJvYXJkIEFwcHJvdmFscw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9hYm91dC9zYXNiL2F1ZGNvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5BdWRDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL25lc2NvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5OZXNDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3BhdGNvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5QYXRDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3Byb2NvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5Qcm9Db20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3N0YW5kYXJkcy5pZWVlLm9yZy9hYm91dC9zYXNiL3JldmNvbS5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5SZXZDb20NCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICA8L3VsPg0KDQo8IS0tICNsaW5rLWxpc3QtY29udGFpbmVyLWNvbnRlbnQgZW5kIC0tPg0KCgo8IS0tICNmb290ZXItY29sdW1uLXNlY3Rpb24tY29udGVudCBlbmQgLS0+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtNiBjb2wtc20tMyBjb2wtbWQtMyBjb2wtbGctMiI+CiAgICAgICAgICAgICAgIAogCgoKPCEtLSBGb290ZXIgQ29sdW1uIFNlY3Rpb24gQ29udGVudAogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+CgogICA8ZGl2IGNsYXNzPSJmb290LXRpdGxlIj5OZXdzICZhbXA7IEV2ZW50czwvZGl2PgogICAKICAgCiAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIExpc3QgQ29udGFpbmVyIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIA0KICAgIDx1bCBjbGFzcz0ibGluay1saXN0Ij4NCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvZXZlbnRzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPkV2ZW50cw0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIA0KICAgICAgICANCg0KDQoNCg0KDQogICAgICAgICANCg0KDQoNCjwhLS0gTGluayBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8bGk+DQogICAgICAgIDxhIGhyZWY9Ii9uZXdzL2luZGV4Lmh0bWwiIHRhcmdldD0iX3NlbGYiPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFycm93LXJpZ2h0Ij48aSBjbGFzcz0iZmEgZmEtYW5nbGUtcmlnaHQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+PC9zcGFuPk5ld3MNCiAgICAgICAgPC9hPg0KICAgIDwvbGk+DQoNCjwhLS0gI2xpbmstY29udGVudCBlbmQgLS0+DQoNCiAgICANCiAgICAgICAgDQoNCg0KDQoNCg0KICAgICAgICAgDQoNCg0KDQo8IS0tIExpbmsgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGxpPg0KICAgICAgICA8YSBocmVmPSIvbmV3cy9zdGFuZGFyZHMtZm9jdXMvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+U3RhbmRhcmRzIEZvY3VzDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL25ld3Mvc3dpcmUvaW5kZXguaHRtbCIgdGFyZ2V0PSJfc2VsZiI+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYXJyb3ctcmlnaHQiPjxpIGNsYXNzPSJmYSBmYS1hbmdsZS1yaWdodCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT48L3NwYW4+U3RhbmRhcmRzIE5ld3N3aXJlDQogICAgICAgIDwvYT4NCiAgICA8L2xpPg0KDQo8IS0tICNsaW5rLWNvbnRlbnQgZW5kIC0tPg0KDQogICAgDQogICAgICAgIA0KDQoNCg0KDQoNCiAgICAgICAgIA0KDQoNCg0KPCEtLSBMaW5rIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxsaT4NCiAgICAgICAgPGEgaHJlZj0iL2ZlYXR1cmVkLzgwMi5odG1sIiB0YXJnZXQ9Il9zZWxmIj4NCiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJhcnJvdy1yaWdodCI+PGkgY2xhc3M9ImZhIGZhLWFuZ2xlLXJpZ2h0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9pPjwvc3Bhbj5GZWF0dXJlZA0KICAgICAgICA8L2E+DQogICAgPC9saT4NCg0KPCEtLSAjbGluay1jb250ZW50IGVuZCAtLT4NCg0KICAgIDwvdWw+DQoNCjwhLS0gI2xpbmstbGlzdC1jb250YWluZXItY29udGVudCBlbmQgLS0+DQoKCjwhLS0gI2Zvb3Rlci1jb2x1bW4tc2VjdGlvbi1jb250ZW50IGVuZCAtLT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgIDwvZGl2PgogICAgICAgICA8ZGl2IGNsYXNzPSJjb2wteHMtMTIgdGV4dC1jZW50ZXIgaGlkZGVuLXNtIGhpZGRlbi1tZCBoaWRkZW4tbGciPgogICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS0gU29jaWFsIE1lZGlhIENvbnRhaW5lciBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICANCiAgICA8ZGl2IGNsYXNzPSJzb2NpYWxtZWRpYSI+DQogICAgICAgIDx1bD4NCiAgICAgICAgICAgIDxsaT4NCiAgICAgICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS1Tb2NpYWwgTWVkaWEgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9pZWVlc2EiIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS10d2l0dGVyIj48L2k+DQogICAgPC9hPg0KDQoNCg0KDQo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICANCiAgICAgICAgICAgIDxsaT4NCiAgICAgICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS1Tb2NpYWwgTWVkaWEgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL2llZWVzYS8iIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1mYWNlYm9vay1mIj48L2k+DQogICAgPC9hPg0KDQoNCg0KDQo8IS0tICNzb2NpYWwtbWVkaWEtY29udGVudCBlbmQgLS0+DQogICAgICAgICAgICA8L2xpPg0KICAgICAgICANCiAgICAgICAgICAgIDxsaT4NCiAgICAgICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KDQoNCjwhLS1Tb2NpYWwgTWVkaWEgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvaWVlZS1zYS1pZWVlLXN0YW5kYXJkcy1hc3NvY2lhdGlvbi8iIHRhcmdldD0iX2JsYW5rIj4NCiAgICAgICAgPGkgY2xhc3M9ImZhYiBmYS1saW5rZWRpbiI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vaWVlZXNhLyIgdGFyZ2V0PSJfYmxhbmsiPg0KICAgICAgICA8aSBjbGFzcz0iZmFiIGZhLWluc3RhZ3JhbSI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgDQogICAgICAgICAgICA8bGk+DQogICAgICAgICAgICAgICAgDQoNCg0KDQoNCg0KDQoNCg0KDQo8IS0tU29jaWFsIE1lZGlhIENvbnRlbnQNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cueW91dHViZS5jb20vaWVlZXNhIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgIDxpIGNsYXNzPSJmYWIgZmEteW91dHViZSI+PC9pPg0KICAgIDwvYT4NCg0KDQoNCg0KPCEtLSAjc29jaWFsLW1lZGlhLWNvbnRlbnQgZW5kIC0tPg0KICAgICAgICAgICAgPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2Rpdj4NCg0KPCEtLSNTb2NpYWwtbWVkaWEtY29udGFpbmVyIGNvbnRlbnQgZW5kLS0+CiAgICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgPC9kaXY+CjwvZGl2Pgo8IS0tICNmb290ZXItY29udGVudCBlbmQgLS0+PC9kaXY+CgogICAgCiAgICAgICAgCiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZ2xvYmFsLWZvb3Rlci1jb250YWluZXIiPg0KDQo8IS0tIEdsb2JhbCBGb290ZXIgQ29udGVudA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KPGRpdiBjbGFzcz0iZ2xvYmFsLWZvb3RlciI+DQogICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBmb290ZXItbGlua3MgZm9udC1mIj4NCiAgICAgICAgICAgICAgICANCg0KDQoNCg0KDQoNCg0KICAgICAgICANCg0KDQoNCjwhLS0gVXRpbGl0eSBMaW5rcyBDb250ZW50DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8dWwgaWQ9IkFCTkRFUEtHTElRVlFLQlBJUiIgY2xhc3M9IiB1dGlsaXR5bGlua3Mgc2VwYXJhdG9yLXBpcGUiPg0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii8iPkhvbWU8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iL3NpdGVtYXAuaHRtbCI+U2l0ZW1hcDwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSIvYWJvdXQvY29udGFjdC9pbmRleC5odG1sIj4gQ29udGFjdCAmYW1wOyBTdXBwb3J0IDwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSJodHRwczovL3d3dy5pZWVlLm9yZy9hY2Nlc3NpYmlsaXR5LXN0YXRlbWVudC5odG1sIj5BY2Nlc3NpYmlsaXR5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmllZWUub3JnL2Fib3V0L2NvcnBvcmF0ZS9nb3Zlcm5hbmNlL3A5LTI2Lmh0bWwiPk5vbmRpc2NyaW1pbmF0aW9uIFBvbGljeTwvYT4KPC9kaXY+DQogICAgICAgICAgICANCiAgICAgICAgPC9saT4NCiAgICANCiAgICAgICAgPGxpIGNsYXNzPSJ1dGlsaXR5bGlua3MtZGVmYXVsdC1jb2xvciIgc3R5bGU9ImNvbG9yOiI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtaW4td2lkdGg6MzBweCI+CgoKCiAgICA8YSBocmVmPSJodHRwczovL2llZWUtZXRoaWNzLXJlcG9ydGluZy5vcmcvIj5JRUVFIEV0aGljcyBSZXBvcnRpbmc8L2E+CjwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgIDwvbGk+DQogICAgDQogICAgICAgIDxsaSBjbGFzcz0idXRpbGl0eWxpbmtzLWRlZmF1bHQtY29sb3IiIHN0eWxlPSJjb2xvcjoiPg0KICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0ibWluLXdpZHRoOjMwcHgiPgoKCgogICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cuaWVlZS5vcmcvc2VjdXJpdHlfcHJpdmFjeS5odG1sIj5JRUVFIFByaXZhY3kgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIA0KICAgICAgICA8bGkgY2xhc3M9InV0aWxpdHlsaW5rcy1kZWZhdWx0LWNvbG9yIiBzdHlsZT0iY29sb3I6Ij4NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9Im1pbi13aWR0aDozMHB4Ij4KCgoKICAgIDxhIGhyZWY9Ii9pcHIvaW5kZXguaHRtbCI+SUVFRSBTQSBDb3B5cmlnaHQgUG9saWN5PC9hPgo8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2xpPg0KICAgIDwvdWw+DQoNCjwhLS0gI3V0aWxpdHktbGlua3MtY29udGVudCBlbmQgLS0+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC14cy0xMiBsZWdhbC1jb3B5IGZvbnQtZiI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3EtZGQtcGFyYWdyYXBoIj48ZGl2IGNsYXNzPSJydGUgdGV4dCBwYXJiYXNlIj4KCgoKICAgIMKpIENvcHlyaWdodCAyMDIxIElFRUUg4oCTIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFVzZSBvZiB0aGlzIHdlYnNpdGUgc2lnbmlmaWVzIHlvdXIgYWdyZWVtZW50IHRvIHRoZcKgPGEgaHJlZj0iaHR0cDovL3d3dy5pZWVlLm9yZy9zaXRlX3Rlcm1zX2NvbmRpdGlvbnMuaHRtbCIgdGFyZ2V0PSJfYmxhbmsiPklFRUUgVGVybXMgYW5kIENvbmRpdGlvbnM8L2E+LjxiciAvPgpBIG5vdC1mb3ItcHJvZml0IG9yZ2FuaXphdGlvbiwgSUVFRSBpcyB0aGUgd29ybGQncyBsYXJnZXN0IHRlY2huaWNhbCBwcm9mZXNzaW9uYWwgb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBhZHZhbmNpbmcgdGVjaG5vbG9necKgPGJyIC8+CmZvciB0aGUgYmVuZWZpdCBvZiBodW1hbml0eS48YnIgLz4KCjwvZGl2Pgo8L2Rpdj4KDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQo8L2Rpdj4NCjwhLS0gI2dsb2JhbC1mb290ZXItY29udGVudCBlbmQgLS0+PC9kaXY+CgogICAgCgo8L2Rpdj4KCiAgICAKCg0KPC9mb290ZXI+DQo8IS0tICNmb290ZXIgZW5kcyAtLT4NCgoJPC9kaXY+CgkKCTxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ii8+DQoNCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvY2xpZW50bGlicy9heGlzNDEtY29yZS9iYXNlLm1pbi4wZmZmMjhlNTE0YmVkNmRlZjNkMjVmZmY1OWQ1ZmQ0Ni5qcyI+PC9zY3JpcHQ+CgoKDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2NsaWVudGxpYnMvYXhpczQxLWNvcmUvYXBwc19jb21wb25lbnRzLm1pbi45MzJhODIxMWFjMDk1ZTI0NTIxNzE4ZmQwNWFhMDE3MC5qcyI+PC9zY3JpcHQ+CgoKCgk8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPg0KDQoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1jb3JlL2NsaWVudGxpYnMvYmFzZS5taW4uZjU0NmUxNTg5Mjc2MmEyMDBiY2UyYjIwM2Y3NWYzZjguanMiPjwvc2NyaXB0PgoKCg0KCiAgICAKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2V0Yy9kZXNpZ25zL2llZWUtY29yZS9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCg0KDQo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPgoKCgoKICAgIAo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvZXRjL2Rlc2lnbnMvaWVlZS1zdGFuZGFyZHMvY2xpZW50bGlicy9iYXNlLm1pbi44MDQyYjBmY2JkNjIxMjY4MzQ5N2Q1NmVmYmRkNTc2My5qcyI+PC9zY3JpcHQ+CgoKCgogICAgCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii9ldGMvZGVzaWducy9pZWVlLXN0YW5kYXJkcy9jbGllbnRsaWJzL2FwcHNfY29tcG9uZW50cy5taW4uZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UuanMiPjwvc2NyaXB0PgoKCgoNCgoJCgk8ZGl2IGNsYXNzPSJjbG91ZHNlcnZpY2UgZ2VuZXJpY3RyYWNrZXIiPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpewp3aW5kb3cuY29va2llY29uc2VudC5pbml0aWFsaXNlKGpzb24pCn0pOwogICAgPC9zY3JpcHQ+CjwvZGl2PgoKCjwvYm9keT4KPC9ib2R5Pgo8L2h0bWw+Cg==
151
151
  http_version:
152
- recorded_at: Sun, 11 Jul 2021 11:16:01 GMT
152
+ recorded_at: Fri, 14 May 2021 17:26:31 GMT
153
153
  recorded_with: VCR 5.1.0