archivist-client 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0c9008427cb70576895b3f2402cd2bd3697aaa10
4
- data.tar.gz: c860df9fb733f9ea724d7aad44481e843437f34c
2
+ SHA256:
3
+ metadata.gz: 469666bd7f5c6d17216eb606e9c385b92a6a467d3b5c5044e5d50d8da422e112
4
+ data.tar.gz: 2034fd0cbba39931370b5915ba98eb0446d8e12b91f2821d966582f1f0902165
5
5
  SHA512:
6
- metadata.gz: 440463fa1995e5f7a93b674fc38874c908c87cd7f665134d6890f2bbc29a577757a588b09d0f606bdd4b4f484ff5530881054fec8b89b9f2b42af3e31a2f668c
7
- data.tar.gz: b986d07583d448c6bedc641df5e6afeea121bc61e3cad047687e9321d3e1ef4a2d99fb8abb9cd075a0a56c3815bf85f6a6ef2ee2040a2b38050e59c9219c6e31
6
+ metadata.gz: db6242e596db26ff2d90c1c8858f09ba772a5fff213465a2d2832be1991dafe2fcffd3a435f70393cc6beb21091e8fe4cafe3c45324906effc6efbe2b9796b22
7
+ data.tar.gz: 037ef353e83049b6ebb9b0998e11ee20a5866d01a016e19f4c34588e7af87fce710291f299557fff086a83cc9a4ff786eb37775e4ef438fb0527210904e05936
@@ -37,5 +37,4 @@ Gem::Specification.new do |gem|
37
37
  gem.add_dependency "faraday_middleware", "~> 0.12"
38
38
  gem.add_dependency "multi_json", "~> 1.13"
39
39
  gem.add_dependency "nokogiri", "~> 1.8"
40
-
41
40
  end
@@ -1,5 +1,5 @@
1
1
  module Archivist
2
2
  module Client
3
- VERSION = '0.2.2'
3
+ VERSION = '0.2.3'
4
4
  end
5
5
  end
@@ -28,6 +28,7 @@ module Archivist
28
28
  response = @conn.get(index_xml_path)
29
29
  Model::FormatIndex.new.tap do |idx|
30
30
  rep = Representation::FormatIndex.new(idx)
31
+ # binding.pry
31
32
  rep.from_xml(response.body)
32
33
  end
33
34
  end
data/spec/client_spec.rb CHANGED
@@ -10,7 +10,7 @@ describe Archivist::Client::Base do
10
10
  it "returns a Response" do
11
11
  VCR.use_cassette('search') do
12
12
  response = client.search(start_year: 1500, end_year: 1550, page: 1)
13
- response.body.docs.size.should == 31
13
+ response.body.docs.size.should == 50
14
14
  end
15
15
  end
16
16
  end
@@ -8,122 +8,191 @@ http_interactions:
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v0.8.8
11
+ - Faraday v0.14.0
12
12
  Accept-Encoding:
13
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
14
  Accept:
15
- - ! '*/*'
15
+ - "*/*"
16
16
  response:
17
17
  status:
18
18
  code: 302
19
- message: Moved Temporarily
19
+ message: Found
20
20
  headers:
21
21
  Server:
22
- - nginx/1.1.19
22
+ - nginx/1.4.6 (Ubuntu)
23
23
  Date:
24
- - Thu, 07 Nov 2013 04:59:20 GMT
24
+ - Mon, 05 Mar 2018 04:58:41 GMT
25
25
  Content-Type:
26
26
  - text/html; charset=UTF-8
27
27
  Transfer-Encoding:
28
28
  - chunked
29
29
  Connection:
30
30
  - keep-alive
31
- X-Powered-By:
32
- - PHP/5.3.10-1ubuntu3.2
33
31
  Accept-Ranges:
34
32
  - bytes
35
33
  Location:
36
- - http://ia600307.us.archive.org/23/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_files.xml
34
+ - http://ia801406.us.archive.org/26/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_files.xml
37
35
  body:
38
- encoding: US-ASCII
36
+ encoding: UTF-8
39
37
  string: ''
40
38
  http_version:
41
- recorded_at: Thu, 07 Nov 2013 04:59:20 GMT
39
+ recorded_at: Mon, 05 Mar 2018 04:58:41 GMT
42
40
  - request:
43
41
  method: get
44
- uri: http://ia600307.us.archive.org/23/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_files.xml
42
+ uri: http://ia801406.us.archive.org/26/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_files.xml
45
43
  body:
46
44
  encoding: US-ASCII
47
45
  string: ''
48
46
  headers:
49
47
  User-Agent:
50
- - Faraday v0.8.8
48
+ - Faraday v0.14.0
51
49
  Accept-Encoding:
52
50
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
51
  Accept:
54
- - ! '*/*'
52
+ - "*/*"
55
53
  response:
56
54
  status:
57
55
  code: 200
58
- message: !binary |-
59
- T0s=
56
+ message: OK
60
57
  headers:
61
- !binary "U2VydmVy":
62
- - !binary |-
63
- bmdpbngvMS4xLjE5
64
- !binary "RGF0ZQ==":
65
- - !binary |-
66
- VGh1LCAwNyBOb3YgMjAxMyAwNDo1OToyMCBHTVQ=
67
- !binary "Q29udGVudC1UeXBl":
68
- - !binary |-
69
- dGV4dC94bWw=
70
- !binary "TGFzdC1Nb2RpZmllZA==":
71
- - !binary |-
72
- RnJpLCAxOSBOb3YgMjAxMCAwMzowNTozNyBHTVQ=
73
- !binary "VHJhbnNmZXItRW5jb2Rpbmc=":
74
- - !binary |-
75
- Y2h1bmtlZA==
76
- !binary "Q29ubmVjdGlvbg==":
77
- - !binary |-
78
- a2VlcC1hbGl2ZQ==
79
- !binary "RXhwaXJlcw==":
80
- - !binary |-
81
- VGh1LCAwNyBOb3YgMjAxMyAxMDo1OToyMCBHTVQ=
82
- !binary "Q2FjaGUtQ29udHJvbA==":
83
- - !binary |-
84
- bWF4LWFnZT0yMTYwMA==
85
- !binary "Q29udGVudC1FbmNvZGluZw==":
86
- - !binary |-
87
- Z3ppcA==
58
+ Server:
59
+ - nginx/1.4.6 (Ubuntu)
60
+ Date:
61
+ - Mon, 05 Mar 2018 04:58:43 GMT
62
+ Content-Type:
63
+ - text/xml
64
+ Last-Modified:
65
+ - Wed, 01 Jun 2016 08:16:59 GMT
66
+ Transfer-Encoding:
67
+ - chunked
68
+ Connection:
69
+ - keep-alive
70
+ Expires:
71
+ - Mon, 05 Mar 2018 10:58:43 GMT
72
+ Cache-Control:
73
+ - max-age=21600
88
74
  body:
89
75
  encoding: ASCII-8BIT
90
- string: !binary |-
91
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- ++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
- NB6MzRQzZ8LrJLhjjkrwxcZ1zJYpxKV3ggmEdiuFHDPGC1B/LYtagLQsWrid
103
- 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
- /6LMOIuB2aBtkLZYyyp3glNAWgmfwaKViKyjLLkHYlsoC+4l85up1aKcnZKW
105
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- xzuY0H+MHU5Hn77/ZUbNReb88/3HVYq0x6+ZIgmfZxw4vwb60hZ56bQX1TPt
115
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
124
- js9vbwHVMsvav3hz8R/MlD5c6RAAAA==
76
+ string: |
77
+ <?xml version="1.0" encoding="UTF-8"?>
78
+ <files>
79
+ <file name="firstbooknapole00gruagoog_desc.html" source="original">
80
+ <format>Metadata</format>
81
+ <original-name>books?id=6scCAAAAYAAJ&amp;oe=UTF-8</original-name>
82
+ <size>23775</size>
83
+ <atime>1185590020</atime>
84
+ <mtime>1185576678</mtime>
85
+ <ctime>1185590020</ctime>
86
+ <md5>e32b177b2c6e6be884ec16c8d8969ab2</md5>
87
+ <sha1>a2b13cd121dd30c1f7e564931e3b20e17aa969d3</sha1>
88
+ <crc32>df3dcf2a</crc32>
89
+ </file>
90
+ <file name="firstbooknapole00gruagoog_abbyy.gz" source="derivative">
91
+ <format>Abbyy GZ</format>
92
+ <original>firstbooknapole00gruagoog_tif.zip</original>
93
+ <md5>010cb07b57b37f770dcf2b84218429ea</md5>
94
+ <mtime>1213983199</mtime>
95
+ <size>2193095</size>
96
+ <crc32>e8437080</crc32>
97
+ <sha1>0c2503f2b44bb779228b2f8b204052d8b767eadc</sha1>
98
+ </file>
99
+ <file name="firstbooknapole00gruagoog_scandata.xml" source="derivative">
100
+ <format>Scandata</format>
101
+ <original>firstbooknapole00gruagoog_djvu.xml</original>
102
+ <md5>a3c97579f8029d85f97da45d16c6c336</md5>
103
+ <mtime>1243247240</mtime>
104
+ <size>48407</size>
105
+ <crc32>d13bc554</crc32>
106
+ <sha1>a72e3877956915f2f8ca17e18ddc625aa4b3d8a8</sha1>
107
+ </file>
108
+ <file name="firstbooknapole00gruagoog_tif.zip" source="derivative">
109
+ <format>Single Page Processed TIFF ZIP</format>
110
+ <original>firstbooknapole00gruagoog.pdf</original>
111
+ <md5>e81a2968d4e82a605acc1ed2fa1a82bc</md5>
112
+ <mtime>1213981431</mtime>
113
+ <size>6593452</size>
114
+ <crc32>a03ad159</crc32>
115
+ <sha1>81e3d45a4f64b2deda406d8df99c378330ca59d3</sha1>
116
+ </file>
117
+ <file name="firstbooknapole00gruagoog.gif" source="derivative">
118
+ <format>Animated GIF</format>
119
+ <original>firstbooknapole00gruagoog_tif.zip</original>
120
+ <md5>bd69541440b72a570ff1a24ae9243ddb</md5>
121
+ <mtime>1213981465</mtime>
122
+ <size>105290</size>
123
+ <crc32>dfd774e9</crc32>
124
+ <sha1>e55b43e3bb588a194863e0466f5978d58dfc4ff6</sha1>
125
+ </file>
126
+ <file name="firstbooknapole00gruagoog.pdf" source="original">
127
+ <format>Image Container PDF</format>
128
+ <original-name>The_First_Book_of_Napoleon__the_Tyrant_o.pdf?id=6scCAAAAYAAJ&amp;output=pdf&amp;sig=13CxNmetO67msnXkK6niFe11YyU</original-name>
129
+ <size>3768681</size>
130
+ <atime>1193859275</atime>
131
+ <mtime>1193844959</mtime>
132
+ <ctime>1193859275</ctime>
133
+ <md5>3b99679a0dc05bd5b9195101f71a42ee</md5>
134
+ <sha1>8f293916498a217e46154ce738a815e8faf560f0</sha1>
135
+ <crc32>c34519b2</crc32>
136
+ </file>
137
+ <file name="firstbooknapole00gruagoog_djvu.txt" source="derivative">
138
+ <format>DjVuTXT</format>
139
+ <original>firstbooknapole00gruagoog.djvu</original>
140
+ <md5>6c5b8b505a8786d2c16988234eb6bb42</md5>
141
+ <mtime>1213983393</mtime>
142
+ <size>134296</size>
143
+ <crc32>1dec7714</crc32>
144
+ <sha1>d587dd13b13f6a501206288ab244c79638f97023</sha1>
145
+ </file>
146
+ <file name="firstbooknapole00gruagoog_djvu.xml" source="derivative">
147
+ <format>Djvu XML</format>
148
+ <original>firstbooknapole00gruagoog_abbyy.gz</original>
149
+ <md5>6cf01b547002d8b946b50ac29a70f4e4</md5>
150
+ <mtime>1213983272</mtime>
151
+ <size>1394702</size>
152
+ <crc32>764e007e</crc32>
153
+ <sha1>d44678260b628d2fe29ede6b24a0447eecd32d28</sha1>
154
+ </file>
155
+ <file name="firstbooknapole00gruagoog.djvu" source="derivative">
156
+ <format>DjVu</format>
157
+ <original>firstbooknapole00gruagoog_djvu.xml</original>
158
+ <md5>45ce5a558003430831943f944da46056</md5>
159
+ <mtime>1213983375</mtime>
160
+ <size>3348964</size>
161
+ <crc32>52851d81</crc32>
162
+ <sha1>6f60f54b9fb6c11422ec37723d1dfdd770466b37</sha1>
163
+ </file>
164
+ <file name="firstbooknapole00gruagoog_reviews.xml" source="original">
165
+ <mtime>1431018857</mtime>
166
+ <size>868</size>
167
+ <md5>14c43e62cf8bc765f1712a75f34d6967</md5>
168
+ <crc32>194805ad</crc32>
169
+ <sha1>ed21832613899035086798d4ec6caeb6727193f2</sha1>
170
+ <format>Metadata</format>
171
+ </file>
172
+ <file name="firstbooknapole00gruagoog_meta.xml" source="metadata">
173
+ <format>Metadata</format>
174
+ <mtime>1464769018</mtime>
175
+ <size>1328</size>
176
+ <md5>92ed6c71700d4571d01f9ef7409776a9</md5>
177
+ <crc32>d6a54f68</crc32>
178
+ <sha1>f34676695e9cb120da35e78f9c31e42ceb0d011d</sha1>
179
+ </file>
180
+ <file name="firstbooknapole00gruagoog_archive.torrent" source="metadata">
181
+ <btih>65e166169794cdc7c950dc2a16b4aa5668ad3bd7</btih>
182
+ <mtime>1464769019</mtime>
183
+ <size>3761</size>
184
+ <md5>9476c4d7598a3cdfa655c439e78f7c1a</md5>
185
+ <crc32>753aec77</crc32>
186
+ <sha1>60fcc0d7074bd8c5d2cba01842e4adcfc7c584d1</sha1>
187
+ <format>Archive BitTorrent</format>
188
+ </file>
189
+ <file name="firstbooknapole00gruagoog_files.xml" source="metadata">
190
+ <format>Metadata</format>
191
+ <md5>f97ab18bb52c232b5544e2d13631ec3d</md5>
192
+ </file>
193
+ </files>
125
194
  http_version:
126
- recorded_at: Thu, 07 Nov 2013 04:59:20 GMT
195
+ recorded_at: Mon, 05 Mar 2018 04:58:43 GMT
127
196
  - request:
128
197
  method: get
129
198
  uri: http://archive.org/download/firstbooknapole00gruagoog/firstbooknapole00gruagoog_djvu.txt
@@ -132,1375 +201,73 @@ http_interactions:
132
201
  string: ''
133
202
  headers:
134
203
  User-Agent:
135
- - Faraday v0.8.8
204
+ - Faraday v0.14.0
136
205
  Accept-Encoding:
137
206
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
138
207
  Accept:
139
- - ! '*/*'
208
+ - "*/*"
140
209
  response:
141
210
  status:
142
211
  code: 302
143
- message: Moved Temporarily
212
+ message: Found
144
213
  headers:
145
214
  Server:
146
- - nginx/1.1.19
215
+ - nginx/1.4.6 (Ubuntu)
147
216
  Date:
148
- - Thu, 07 Nov 2013 04:59:20 GMT
217
+ - Mon, 05 Mar 2018 04:58:45 GMT
149
218
  Content-Type:
150
219
  - text/html; charset=UTF-8
151
220
  Transfer-Encoding:
152
221
  - chunked
153
222
  Connection:
154
223
  - keep-alive
155
- X-Powered-By:
156
- - PHP/5.3.10-1ubuntu3.2
157
224
  Accept-Ranges:
158
225
  - bytes
159
226
  Location:
160
- - http://ia600307.us.archive.org/23/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_djvu.txt
227
+ - http://ia601406.us.archive.org/26/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_djvu.txt
161
228
  body:
162
- encoding: US-ASCII
229
+ encoding: UTF-8
163
230
  string: ''
164
231
  http_version:
165
- recorded_at: Thu, 07 Nov 2013 04:59:20 GMT
232
+ recorded_at: Mon, 05 Mar 2018 04:58:45 GMT
166
233
  - request:
167
234
  method: get
168
- uri: http://ia600307.us.archive.org/23/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_djvu.txt
235
+ uri: http://ia601406.us.archive.org/26/items/firstbooknapole00gruagoog/firstbooknapole00gruagoog_djvu.txt
169
236
  body:
170
237
  encoding: US-ASCII
171
238
  string: ''
172
239
  headers:
173
240
  User-Agent:
174
- - Faraday v0.8.8
241
+ - Faraday v0.14.0
175
242
  Accept-Encoding:
176
243
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
177
244
  Accept:
178
- - ! '*/*'
245
+ - "*/*"
179
246
  response:
180
247
  status:
181
248
  code: 200
182
- message: !binary |-
183
- T0s=
249
+ message: OK
184
250
  headers:
185
- !binary "U2VydmVy":
186
- - !binary |-
187
- bmdpbngvMS4xLjE5
188
- !binary "RGF0ZQ==":
189
- - !binary |-
190
- VGh1LCAwNyBOb3YgMjAxMyAwNDo1OToyMCBHTVQ=
191
- !binary "Q29udGVudC1UeXBl":
192
- - !binary |-
193
- dGV4dC9wbGFpbg==
194
- !binary "TGFzdC1Nb2RpZmllZA==":
195
- - !binary |-
196
- RnJpLCAyMCBKdW4gMjAwOCAxNzozNjozMyBHTVQ=
197
- !binary "VHJhbnNmZXItRW5jb2Rpbmc=":
198
- - !binary |-
199
- Y2h1bmtlZA==
200
- !binary "Q29ubmVjdGlvbg==":
201
- - !binary |-
202
- a2VlcC1hbGl2ZQ==
203
- !binary "RXhwaXJlcw==":
204
- - !binary |-
205
- VGh1LCAwNyBOb3YgMjAxMyAxMDo1OToyMCBHTVQ=
206
- !binary "Q2FjaGUtQ29udHJvbA==":
207
- - !binary |-
208
- bWF4LWFnZT0yMTYwMA==
209
- !binary "Q29udGVudC1FbmNvZGluZw==":
210
- - !binary |-
211
- Z3ppcA==
251
+ Server:
252
+ - nginx/1.4.6 (Ubuntu)
253
+ Date:
254
+ - Mon, 05 Mar 2018 04:58:47 GMT
255
+ Content-Type:
256
+ - text/plain
257
+ Last-Modified:
258
+ - Fri, 20 Jun 2008 17:36:33 GMT
259
+ Transfer-Encoding:
260
+ - chunked
261
+ Connection:
262
+ - keep-alive
263
+ Expires:
264
+ - Mon, 05 Mar 2018 10:58:47 GMT
265
+ Cache-Control:
266
+ - max-age=21600
212
267
  body:
213
268
  encoding: ASCII-8BIT
214
269
  string: !binary |-
215
- H4sIAAAAAAAAA7S93XJc15mmeZ5XkWZVlyI4JG1Klu2ye6oCoiiRNkVqSFoq
216
- z3SoIwEkiBQBJJwJEKKnp6JjrmGijzsmYo48d9BnvhRfyTzP+621904AtF0V
217
- MbQlMTP3Xj/f/9/61pfr9ZuT5XzGn9fHq+2c/y/mh6s3q4vFyfxgff5+vj7i
218
- m/31+u385Jjvrn51sp2fb5bb5ebd8nB+tN7M3yzPlht+Wq3PtvP12fxktb9Z
219
- bN7Pt8fLk3fL7Xx/yVPL+YqXF9v5wWKzPLo8OeH3g8XZGWPsv59/Wcvg5/PF
220
- ZlVznm/W3y8PLljbxXp+uni7nF8cL+dX683J4UcMyoq2rHR7sH7H7PtsYn12
221
- sjpbPuCFpyfzY8baXm7erVzlyfrszXx5tr58c5wVO5Cb26zeHF/MGX75w/mK
222
- JS7ODjNJtuvXZxfLTb45v9w/WR3MD9eni9XZg/nefOeLgg+wW5+5ysUqOz1b
223
- sjIWsT9uIxCtWQHc1fF6u5yfLN80WLflLDenWX4t6vDB/NvjJSvedDyIprOb
224
- qwJG7+fvBPzB+vLsgv+yg/bXB/Ovpxto0JvNwMV8fQkKFxfLq8X7ra8InPPF
225
- 9uLefLMMos8uVoBvMb9aLk4ujkUOlHKx3ry/Nz+4PLm4bIB7e7a+OlkevgkE
226
- LkDR+uhieQaKToAcCAcLA75E0leLzdvtvfnZ+mJxEdIR+uts9HSxebM6W5ys
227
- FkVqZxd9x2tg5C/zd+uTy1PIgdHni/Pz5WJTjwCcoxXEcJ8Fb5anq7NDAMeS
228
- L6Ru8crCQg7fs++z5fv50WZ9mj3PZsEpVLtxqYuBjl0XlLWQZvnh/frS5f92
229
- u2Crby5Xh0vJbstXjYqZCNq9lOwk5wu4g3UCuWKMFc8GFG9WJ6sfA+sdzJyC
230
- ic1qAZM5bSf7UwZgnvfzxcHBcrtdQe63o3R/mc01NNaODjLUFeQNpk6XG8cB
231
- zKsN6AOPh6vF2fbB/LnUytcnjH+vwAWvvVUiQIjLsy2cdG++XQvm9Uaosom3
232
- y+W5m323OpRGAmRkA6A94GGmPF68gx5g3rP59mJ5HgKbQVXvYK35Yv8S+of9
233
- D9anrOuAbQOws9UBC1idHZxcZtDzk8WBgz89ODjmN55hhovN6qCoBoGzuLyA
234
- Ly9g9N9fLjfveRgEfct+T1juYvuWdS0uxNsvQdL/NP9KWcImzub3JxO7lNDJ
235
- MgS0nTPA4XK7eqOIapj9TDH4Clo7KDnSlg+RrYDAJfPd67DeLFnLFuGiNGDq
236
- uc8CXv4tfUKlCIDZ+XKzXUNZssHucs4vN+dIBxDjkl8ujzYIniLWm9udf76W
237
- j+bbJTSz+7PUpgg/Q96uNxcirTYDH2zfg5PTX86fHmWFksfB+uzwEsgCb2V8
238
- dsrKThcHxxD5fHaxgVhOwrD35uvzi+Dj4HixWRwoKjfLg/Wbs5WYgUgaNzMu
239
- wvgKvgIloV/FDPwFl/PNqdIqoF/+AJ9v59DgORri3vz8hBezpguGB4KIwiVC
240
- GaG2kfkA53zW8PYhLhLMBfYO0cZY79FLUCCigsU4ZUH6K8B8IagXF9DY/mW2
241
- 8pqJGgncuZJBEVBv7wRo26WKZ74EQPA3o8kvWxBxITU7++qMfyOI3szPl2u2
242
- xKTrSwmj5ESUg7zuGnyK1Z5CI3wzWxweBpaMNMqFi2OEC4rsJk0iEgpih0UO
243
- yD+U43x1UVv7jcy6ggSicL6FJ6KgIM6N1PlAebk83QeNnV8iMaCDczS7Mif7
244
- QRRcbmqhcNVVY608erj2e/aVKR50slxst8rqjPo9Imc+218eLEQcEgKJtWId
245
- 0EO0Li/fqtyEJG9shp9/C5nBma/QHssILBYjQXShFeb/60OVwpnNSlHCLbep
246
- 2y2Yxb45gz260YCilbWiPbq+hbfaXwcxgInz0QnEfQRU1RWLs4PQC9zAYlHp
247
- 8uX58mB1hHXRSHm282WHCupnfbXEGtjF8RS2BUIYuxRi5mLRNwkFLQAbSwus
248
- Tz5g5kP358ynWmXIJv5ePNuAGMvrwfzRAAIIWzqAaOBfdPU++uwCYV5D/v4S
249
- /CCR0CqxyfZC9bespetN1n26QrfBTRABTLnevEEZ/KH4vNt9xU0RQGFknouS
250
- ZC+XZ6iozTZ6etSTeYr9IVEe3AYK2W4L6S9QaSjxblF2WpoYm1fH8ndnU8Ts
251
- 8Zo3ZN3BcMhASIKz5RVy+HCFrJKifof8FyxNoHYOfgrUsP9iGy1/kEzmD/nf
252
- ZRkqipV64mq5DzpO5v/lP99/8MsH818+uP/g/i9/Of8x/5M6tvMH89+v179n
253
- cQ9UpT/+L+iM2Wwzv8Of+b/mw49/mv88zL/v8qJPgJe7+cvb/FtTG2M7//7f
254
- 8+8//XHzz3v525//6//9pz/emX//5Ntfn/x6tcp3r588zn+P8u8vnr589Xr+
255
- 2YsXv8nHF1/kP8/3vn7x7PGL5/fyqd54/buXe89fz3nCz4/3Xr5+omL+9uXT
256
- 168fP+dvT5/nl09/8fATrKbf8UR/+NsXL599fm++9/zz+ezhL37yj9d+fvTk
257
- 5dNXr5/uPZ8/frnnlJ/9jn89fvZ07zdPv8qYrx69fPrZY3/am3/++NWjx88/
258
- b2vZm3/14vPHL5/PP2N1j570GV/7/HzGYp89/t3T+a8w/V/uffbZ0/njz3/7
259
- aO/148/nbbXj3LNXj568ePHsVR/i1Yvnw9+/fvni6yePX79SIs9mf/rjs3WJ
260
- iv3l8frk8EdIwdNlYWC2wmJC276RF2czEID7pU+GJI3UWRwtNir2w/l7+Cw/
261
- nuMBrPeXq21YPxPMLxfqt9VpzXOkocwP+YL/+vpvD4J/heeh0vkyNrPq6Wi5
262
- xA3wmQt0gwqg/QY9zmZ35geb9dUZdt7xCppHi6/9WmOnlqOCrWck7dVmffbg
263
- bhEcj4EcaQXAjjTy6HiBc/Xkwfw1vLicP/xpgenZi+efv3gujbx68ezz+Wev
264
- 53zz5Vd7UNWT30J19+YvHz9+dW/+D/MXL78SudLHrx/4/1evX3z5m8/3nvHt
265
- 13vPnt3/in+BxK+Z5emzZ/fA4tPnn/325ZdP+BKa4L2vHsx/8/jxc174/Lef
266
- PXv63CVIarUUjIP6y2b+1er+k/W94rUney+/2Xv5+fzRi2fPHn/5eP7sKVT0
267
- UuL74uWLorz+VRjjCwiNyV64qCdy2OePHz3+6rPHL+ef3Js//MePf8FXLKfY
268
- 9Cf/XFP+3T99NP9m7qDA7uhofvTtd99+9938u+/ufOcfXJ77m8V3X32Hwekj
269
- jew/elVjff75y8evXs1fv2DnrwDYHsTeyPDTT+9/+j+XaAADG3x/US3av0S0
270
- 89eXkY7zHzX3UDsQYtmLBIzlJrHEONbtRgv4EtSwXeAjXhy/R3o1awqVCX2W
271
- lTN/sz48WWGLv1ttLjCWHel0uXyLM4UgdnoNS1SK2/96tUYu+uVLDIY3+TQs
272
- 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
- 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
- 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
- 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
- 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
- 7fjjxTm2M7BkUPyZU62Z2aywGLuuR5IgNH20q8XmzL1E3IXkFleocfzRBRvR
278
- 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
- d0rZd4iyS7MtHsP3ZtkXm0thT1xIsoo9HPv5zXqtvQ7Gr5YnCOaYPM8X5ywG
280
- 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
- 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
- 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
- 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
- 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
- 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
- RmJuKNg72U/Q60dh2mNiUAoUjd8ZgMxkhbouge4pz7T22fYAULzhI9Z6dCmL
287
- B53wN1G6xP7cfAUYGngOT1ebspyLEAgXluTtKjxk3liBd6T3hCiVrZ12yu7F
288
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- P+9k8PjN+3MwdAXc+Rl9VtvYrhN9dmK/N7ahZtKokFzRHo69h5HqZ1CBtOJB
298
- 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
- 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
- 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
- 4NcIcLzszkBh79r9/Z+zM/YfajwnPLA9jtUWT8VFnkUaVizWz1erg7fLw7I/
302
- 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
- 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
- NPwkyWNAzR/4567/uue/mnz4R2ipCYhvAKAuQUV3eb+z0Pzjn7Wn7s19CDk8
305
- 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
- 6YSJ9rWhXyOemlF9DHkidq7KXpkdgasNVFDBrkRgn0HeR4rQEFcZoIrbZly2
307
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- mxEzvbj4PkADUoFiIhX7683ZvGSkKEnkV+VFrMwVzg4XUH1yD213zjTgeY+n
343
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- mUaNdEotL1UosTDXeN3NUq8EEUMmSpSXA8wyBNxBpHNtn9LwU3kj1IHVV0Cl
367
- GofHmlBBL1Fv0BZ2ymGa1cVl1UvIwgsjE2DmiAgAvhEKoftOwhniP6OuiFMy
368
- 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
- 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
- 2u5YUTj4U0VOdsVuxWeasEulBO7IEAM9bXtnbRS5qA0zUJOkBWtlYx8TyEzr
371
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- udn+M6JnyxuL7FTp+Tr32hZYml339endqWbHEJcK2NZ0gTHMCZr3gEeYpjA4
383
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- IBFCQQLcR2VSoxQhnbq8bDyrOmBMI5SSVCfPOqNBZAndIhwAtj9XpmiIRVBq
416
- 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
- L3L8jeCkLVtqOVh1nT58Y1LZOISMPqDRtaMr6tLVT8XGY+ASMuhily5FqeHP
418
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- Zkiog5dlzl/c0PxHkW6DJGtGqXsdOLPYNe5i23JlvSA3UbYC3TuJxqcwOHxS
427
- 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
- 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
- 8fHToHBMI5iCGe02jh4PPK0p1SoIZdRWlj2wuBI91lW4cHLOBWrxJ9aepeuF
430
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 5BGQqn5Ldo+wP8qC4bX8MXFaMDo9U5kI13SLokBo+EjO8reprOsiuWFsAMUB
443
- yeQUUyu0aeeT77VItDugVd87wlmlYXmcPy6Kf99S3JbE0yzVgpWidT9DtVLp
444
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- UzTiZ8HWS0NlGdvml6GOqXGLbUGCodgcqlZUGZehBqFFsmKfN1PjduReC23V
481
- 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
- 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
- d+ITeEmD28sudbYpcWi+FHUzsW36CYSdUy9DQoLX0hMKgFMo0o2boQaen1uT
484
- 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
- 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
- 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
- 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
- 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
- bv6SxlIBmIqtJnNk/cyAv+FtBpW8nuyi5EwLHNfbs578Vz0NDqnlFXTt5Xkk
490
- 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
- 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
- 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
- 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
- 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
- 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
- LXIj7lOd4x4GV13CHwzRWn/McYuJiQOluB7kGrbG+0HEXj9LVolYhizu1RIL
497
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- pZf2XVwi3ZjpsGzPsswumv73KBQlU6nlLg8dJHGGdZMQCiEf7TmqCzdvUXmV
519
- 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
- 6Y3+PqrScmlpVkGlphsqCNfU7ZgmUUR26V6yiQbH3EjZj7dzgQeoQRbCGI1F
521
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- tquAKvET/rr8QgUAccVwmDdbDNAJPlbRbefBFnyGKdtunay8V8YqSw2qMo+c
536
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- HyyuPSEGWHl/nLVQ6HL7kStV5swUWpeTvMYZNoDWzgjLvOKQJBxfi1f+VHxk
554
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- qytr6SLMufCeuY9ZuTA6gJaMHrB0A2Wo0IO61tw3EvEfqNr3e68Dni5oAHxK
573
- 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
- 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
- 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
- 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
- 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
- /AViEVrLM7LBUk5lHArfuCkFGpxrD9f2BWGmt76dUbM3i1WiZjOG/RwzQeCO
579
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- QqKOcBUjauJIstt2TSwfZxmhkCUykGpjBJJeWhCOb1yhW9FaxBDMIGQMmxVb
590
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- /uvOqXN/RuT+P/w77zrHVf2Ll51X1p9Na0wgKv/m+841YAG01/KOnuHNKzrG
603
- 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
- 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
- DqZwA9OIfF0cg0SAtpiyckoJv7Utmexgs7U+ha11rd7fyhb4lL4H/Fe3KD0b
606
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- ZCjs2fPBw4KhHHYz6f3yFwXFsBuXUZc49RGD/OGqsoIDSojKjxRTSkjTS8B8
619
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 0sNBHAYJ7QjcbptHtceSaOrxmlWy3ve+j0TpMX7uQLSrczjBHVpA2RibKvf1
651
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- bqMzzIfYCMDuxyS+EW7pJ+xLNKiCQJ4Mf6CNhHr/dJImQwRwQfg3deddZGfq
664
- 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
- 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
- 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
- OZTJpKo+RfVj8jHGEyeMXrPr1wkx3pUgmWD+5eKq3xbXvnn9ntw0Gd6yiZs6
668
- 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
- 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
- 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
- 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
- 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
- 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
- 9Aa5uyP8JzSUEL1EVJJWBGwXVT3a8qM1M6TIwXtkBgia+FRjRWPDkiSLck6d
675
- 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
- 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
- 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
- sGgvRaIpWZDgKyVwtSYbm9jXiS/k47UTT8OBp09AP1VSBIaAbW1dKy0fVPnz
679
- 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
- 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
- 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
- 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
- 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
- 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
- EofNGTLbB4EzHUQsOB4tE0xTpDpCRY/bswbzYDSpBaynEAeEfL+O36HNrJGJ
686
- u6NQG6s7afKjsh2YJdVYiUxrkcDtTRX3fjqDBZhn6HcKOWQpSHg05cWl5wnW
687
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 7y1uORZ2CR5Ko9JgrgXNBhO733UqyFx9x0DAX1YU4tFKc829MCyC1ROlPj0W
698
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- Uvt1fa33C06fyRBjpaMdkriyj2pLIlVO4o2eNuvctnsMRvQBDcXefJBI1CWp
714
- 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
- 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
- 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
- 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
- FJ5inQy3PL+ejMdjB/QBd4pBAtfWBl84u66XuUTMl+l1tkT61ZReOTpAqC/T
719
- 0o1kWAsI9fan9XZBUchhceEBmMaqM9Ihs1K8w4YbE3Z58SgFA/YHX0gBe1DI
720
- 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
- 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
- 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
- 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
- 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
- w1ZS0Y5R1faE9pe4m6PCFJN8AZ/+QiawWk5zLK6LsWDDk42wOxmiZbojT4lj
726
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 38X+ZuPpXhbbi5PrmvSHrEBwUBBQPfBsTE8+qjtaOcvQOtp4eUu7qzYSqXg+
742
- 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
- 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
- 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
- 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
- WrkHp2qENPDxjp34EJWT+0NZoQ/3aYP9MYsQRLD0aMFe35RneMmcUb+Nc8gS
747
- O5hNGluAZEUT7ZZOGkiyKjU01JCEkYO8w1ld4pJ1kLsNCoYdLfICAw6AdMEW
748
- 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
- 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
- czvutDRX/zSIwdiC9QjitsABYoAnwqDJBOsAUCFWGoTSW2De6cvuV9cgQiPU
751
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- T4NllWq9WqUtOARpOyI3OTZJAsKSjakireqiTuwDhFvmwuUP6c9G26O3HZ+T
759
- 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
- JN1bqK2vreexQiNBGqXVA9twkctrFUiG+JLqsXgio00pvt8SQDWWCO/e81gZ
761
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- qLP9IgQtOZdebNI2KLiSNSstUbRX7lt6OHfZwbamiJCQ2GEuywMhLp6daFLW
772
- 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
- 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
- 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
- 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
- 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
- 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
- goeNEEo3kLKuTCip9aElQ0OW0qro3XzdytAuY8ipcMOXgkbpgBzG1AVD0XxV
779
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- XNGF8iTGPmQUS8r46G6qdxqEj7Ib6nGwGIDbUP3HGn/l3WLonUv+LlfHDEyD
804
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- INY8VMmfBx/95wcP5g82D+7eT4dBNOzNWp5KbtKVGkOmuitOhXBzaUyhd4nP
817
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- T7tp2yUK6bkDcsvbBx81dzGXBSTj3TXmTv7yxaswYN0pkOoBEuPpFvkI3YTt
825
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- h+Sk9aoS/RSTVVgmwuecuvJLLZYRKZ6q9zzWbZvtgYZkchisjHgul2v3qGZV
841
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- oKUYIPiLKClLMj40Wr/nHpQWzoRV9EZXRSmGyADC+4OSD5MnJZSm7JpymGa+
849
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- kjZtjB4OaHEI4+GTyGUTFtWgY2uWpEi8oXB9uh+4F3Bh8UzUxP3UWim20/CM
870
- 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
- JMSF/nQ1DwFszTK53a1+9YLK3JggjbYHob1AlqyJDwGxSfQZnG6whmqDgSTA
872
- AOR4iFNvoImlfw61fzffy38rGQehj97Sz5XizCBEhxyLuAQTsWHjH+DjWzeA
873
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- kn8gEpA2OYEtgeMR0u3iOlXwu1dNMbfyAe23LBcqh9m8cgp6/PP/+f/y/3lJ
883
- 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
- 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
- 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
- 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
- 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
- DP85SKEI0IonL8JaM1L396XRWp1E6icsEeaNhyuAsB/uzL8ws8eK40kb/6+A
889
- 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
- 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
- fAMq8EIxUCjMQLLxaFlowfsgD3e215qA8rwqwUafgA8NmMCuzgJWLxdw/X+N
892
- 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
- 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
- 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
- gn6ijQIqcNsIw+ZDeIRakhuOXW03eX6ao0Yoh4bXYp5cuhrAUa60rmSje76i
896
- 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
- 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
- 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
899
- veYOGE08m73dtrpZXFwbJFDBcKWyty6dc+u/BuaTRsFk4aolnRTM6BAwxu8u
900
- D0qx4jB9If+S3umFzh6qFzzRCzf/0YvzHmJ0ADAiUvCWs/TNeMWFbBtHFOqV
901
- LT8pWpbwRAmEBBAtWSHSK7piAigAVVsofeGGqBWaiid4OZca0zmsiMJe/QU5
902
- hYoKtpI1T+4U1nKdpC9NdZkLw96CS7TZOY6lGMd7ZR4cXj7sCDaSG9zcqT2n
903
- 3agkleSdV/yc4wiBoBvQHMmeZz7E8ZWZ30gH2FrMpaL5z3486O3WO8DfmznQ
904
- R3ngPlP/jo0ha5n496nJy8Hv56YiBgtUaV3o/rCNJH1l7yO5fr2fdNUt8v/H
905
- ZMao+xEaiOMC7U4H4jDOCFquCjZulFqI2gIzlWgNiAnfzaoYZ6CZRIH3swPy
906
- OpGnKE7z1m9SMecnEhFGDOsrp4UJjkPnBnueCEi2mZoJIcBhuGuqXIni645M
907
- JkcUQl4h+dWMZXJXZhLiDU4pEFBarwkbJlW6HOG3SRD4rTqdOWu8om2p+HiS
908
- VpmsEGlsc1l3OMjW2pb54PNo6idbdk+yaWfvc5H7rORwHDiwV1/PrhN4Le21
909
- Lnypof0z2Ct5QnjXVEEnX7OUjef0/CXahXS3RI2KNm9gdeR5gBXv69UUnSLp
910
- lB7sytFeXT0GfVexPTssNR1KfwIJSUb0xjnAxtg4XJjs9dtaGKwOBuG1KB2M
911
- yf88sOQsJ3vEramsfM5KIScwJhlHL55eNEOAe6nmuLjQAhIOOVZEszNuxBUd
912
- zIWDFRCwnaYy1UY5iZPfvCcXgWnfkg5QisKsyGE7RKO2aAOq+OVZhBEMTj1m
913
- IvSP81w6BbRwYUa5EpVg1q+fZmXSnTELcO+JyOCvXAf58lm16Enx8liWt/CR
914
- OrLH7vR0qKXiZ3IRzWDk0k+yAK9jv3w85def86ANJpwWzHYKSJ3kWP7m/6lb
915
- JxiumadnCJ9BrsLRaQT5Og2Uy4nj/thTRfjNpeICeKf+XwVJeuBFSQ3dfQDm
916
- p9VHJYr25u1LNqsz0e+HaBPoyKQwQrM/Ym5DhybIaChcroyJk3fo6wZtrbCT
917
- lnoVkP2ed9eO3SBy5SoEP3+niz1A5TSZ6JFeoLJMdvkQn5dEK4f7PtcwNyqQ
918
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- h93LktrjYLwNzC9R/bjc9LqL08gl1NRfvZJ9EN1V5g1xduWsjhyhk8x3HMJY
934
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- f5q5lgwuggs8OwsUg2uoQqjqrwm/dfkkVhyYBPcngdXptSxzJlgMm3SXsIwb
945
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 89d/+5b1beknIZjdsvs7HQGa3mBsjbpiZGKwoJJQYFZM4/iZOXrkcAO9rOAC
977
- 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
- +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
- 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
- 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
- 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
- Ent1dE5+vhrjCgl3jWudnp5uD+XhPpuJDiJihFOBFujig+DETsJemgrsPVSY
983
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- v7DUi+cwnNAVxLBMHdpl0F+9PeBZXuZHSv6T2R8ud09tqEiY8Omy4cL9bL0n
1011
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- oIPV52DcnIuT8a0bFg6XLpC5dakcAtx5giSlfhQl/IbYEnZIzZmXOFwvx87K
1021
- 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
- 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
- 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
- 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
- 4Hr9Fb7ZOP+h/mx+IRxDyC4rJd6NF8Dc6Jm9OdNAa7cY36S9ouUKMCwltFxo
1026
- RRzlb56f60LNpsb70fAga3nv860h8fOlWi9MNETXJEwavkavoz8fTK3oMVj7
1027
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- KXDVpxU+tm8RAfXdynf9iAob0ymKfoGuf9ZE5ttUZiK3LgvrBe10s5g97tEh
1035
- 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
- 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
- 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
- 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
- fLn45Dc2r5QXKeTaZdOfalpxZH33ow8YOlayBxep8ynyi3HIl0Kdom8HXFU4
1040
- d/TBYOlaU9cfsqJGBz/+4PQ+VgyPcp6uhelx48XyjCufCiHrDsiH4razl62U
1041
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- GvA5YvaCu6o6yA9/1omHn5LTTAqCJ4J58mXdoBopccA5BcaZLHNPn9Ulj9gz
1095
- 4eCC5kFxkjvk+Q8kPhP1SKg64hW1Sp1QJCAH7DEWhgSjWYaWJR2uS6wRx6sB
1096
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 9S/kLWb+JAdst4qXNOPy+qQnyLZyI+1iGkfgj9np1rRC3Q68HKs8E4ZcIQRO
1109
- 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
- C/wtEkzqLjgVjzxxJFtkND2gtRFYKC+xODdb9HvvSN9cd2P79ZBzxRwAjHn1
1111
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- GlZoeb0q8+DYh3F2UnDWa7fc1QUmJd/3g2rg2QMpbkTEq/IBhygnALUnBN6D
1120
- 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
- JsVKGECXump0AoNsUBaM2T4+qI4lghtVsryLMkIbomroDvD0xxdX2JbZPyOB
1122
- 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
- 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
- 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
- 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
- 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
- FmwvlqK/A+zRXHqIGwMmbowgsMeF8cHpZ1bY2mkNdZ0FmOyjftOj59xKuxvD
1128
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- RPZXeghHREbOeRTJg14sDOCEk3E4oLDL2trwFz6u5SfFHJLqxMSr8B5SlPYG
1151
- pAdsDJQN917SdlhIneHPoMILPuaScnTDNjZfwM4P7iCSPK85xb7Ka5ZeG/6k
1152
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 7OMgTcfgraY1yXlAVRZp6ls85C4GGagyIme11xjnPTFiFSV3w1uX0janGnof
1162
- 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
- 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
- 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
- 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
- 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
- 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
- c7Hj2Sv3QA/aPJyewawixoPNqtLGYDQl8AABkTQp8MUjILnkEbJhILZV83Mv
1169
- GTIb9s8BYFF52Lxg1hh88J27v6RHOb1rPIjhrtNpoHryt/A/WCIRh8s1AiM4
1170
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- FASrt6uGe73wzj/Kj6f2lsFEVCJK9CwWbnUoo6ndJvw+QPgZxUOVjJZ1RnMM
1183
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- nBQ0b3EUQNft09K5yy+yDDL62984gZ0mmz5JSBHxvPOtomV2oAqGMybaDWAx
1222
- ajAY0TD66GGL+HDZqnKO3hi+7W4UOdbxHhTNHSWUg89/WvQtHNr3c1BIykAP
1223
- S9+Q0iMMGGhxnO3xeSeonj+Sa6k2MveqN0NHRSZgD8k/DXsx88URh1VzBLlS
1224
- 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
- P/v6l2AyOLRo/gcuz07yI8PVeYSz0awrsICbbp63I5Q5VWBzczyDs1FIE/Py
1226
- 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
- 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
- pkYCXMs4w6ABCnKHU+XpPbupZt7KHgeFNtulTxpcRJHzpb0GZoRrLB+DH+AD
1229
- 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
- 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
- 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
- 1GdX9nXQ33o1bVb3jkyHdnqgWw+2kenMwSECHJ7QDz9EFsPbjAWmSGxxqWH3
1233
- 9P4bhxVh9cH8SZUu4dgKACjnDDchjBu0waPCQSuIykvpXzJ2hBokgDOh9GhI
1234
- 0o8/N6DEC6DiFQ5jxIRxD9iCuUcNBo/SyQntDExE7Lx27zal+FxwNQPIVGXV
1235
- 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
- U6LCLrKjKiN6qFXFrwYUo1mI2NszGxFREjDeMo+YCEmJwdGn9t+xQfvoUHot
1237
- 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
- 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
- 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
- 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
- 8jbkMvRyeaGc3fDdQU4XTBOy44hH5CS60rw4W3t5Eq12hEn9DmGqXVNIa3fZ
1242
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +OyZieGgaOfkPqKU4lPXyhc5ohKXrw4NoUaRiYEm1bB/nFt7bIxqCiSj9O5y
1254
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 0TKTIMJvyi50c3CK9HLqDkc3GTOnEcPR4Ue1PnuFLz77qt6gPmfwIdnGbndy
1262
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- bS6thK2qex6CFh7lIbHr1gUfukt+lWTC9uFyYdi5BLgB4lY2I02a6s1JM1Og
1308
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- dNVjfvQlfALxAwcrcINoRXFrQZrfeUIy811t/J6SI8YNbF3/8hSEQaykutkW
1318
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- E+TZ5EOzK6IkTANOGaAnaR0wHUFjOQ3I0PXi23QX4Yw2uuWocGzuT2hJTuOS
1331
- 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
- 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
- G4TJBGGzBFrplGbTpaUUyXaWCipID8ThygpFjjXq9YiHqUyEFfCCND9tOFWr
1334
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- al4wX/HMDTl6COo/ZKWSEk5Kn7VhJeqVzeLxfUqdchNoYfJ/GIJSRrKpCHwQ
1355
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- dTs/QtjhFOpxn8ZpHVI/qL4Ag9wX0uyiX9l7q3+ZvYL+1EFzKR0bg0c3mFBN
1376
- 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
- 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
- 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
- i6uhOeTIIu35xmfhjgesBQ1hV4DFZxOX0ktOsQUKstQJ0bdpP0g6m72wzx9E
1380
- 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
- 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
- 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
- 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
- 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
- kGsI+BGgYViDjIwAq+MlaA4Vl+0jQcQO5T27XcOV1BAZIaC9K8LfSIjLrX5x
1386
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- ep4Du/rLz9AMKRNdmiayYXsbUkpNA6i78oZ47QUlPeGq2THC0LACBhkAxTjP
1405
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- Vv0vZiUSUOXABdt0lYfvJB3MTRBDM/tnZbyIzqGk5hCR0Y8X0BjrHJeG/eZG
1419
- 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
- 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
- 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
- 6A2G1xBA5PIv1TF48A+wo1eMzvPg9pOzaxo3lK0+Vkdf+txuhW9rohezrzmp
1423
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- ya9ZFQWGoG1sSNATapTXu+A93yFbwx0+GhXbIZsSPhezabl3E6nc2b0j8Inu
1432
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- OfDV3ll5DNalqW9RYlEfV/ZSzqqYDWhTuhtBzKzJAYCmEsC74f4FMJeozEpy
1458
- 1eKREd4KTbFXDPWoATTw84NnNxAhJTRn025RLN/tbFXcg92fTurc213XPzZE
1459
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- xFgHJmaqY/wa/IXyXeKkCYA7Y6B0TzfaLfEcVD0R8HEU7RwohNhkYMaGEgp4
1473
- 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
- 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
- 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
- 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
- +EILmUucaIUg8pXV6+ws9kyacIIIPJmBXibxFIXthWq1A/xXcActgB0UrejF
1478
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- /bVJSgTZ612UYXhHhQufzDlWduiuC4edKihOlLAwMZUWigZ8sWdIt5RzMz/z
1496
- 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
- 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
1498
- LVz1TqYT4aSI9wDvVhuaM1pwi72MHNXVkXGJxJrxr2EH5iPcO/GQLoEc08Td
1499
- biSD9kAcFeG1TJ1W60s/8WWMORIdouxxiEklKjdsByHI/6e0p4q2KMO17A1V
1500
- xIuUvFoM5zRwaNOGAoGAjlhQHdlE4hs3i4LSaCpBcHdvMZccrdfn/o4XrTZG
1501
- cKsxgFMRTr/54t7d39370g2fnPzmq384/fqz00++/vp3p+OEo7od5I9r+B+v
1502
- nj5Hgnkf1x/S5YeC5+/wBl799d+gxd9ApHQ7fGyPFv65f/+v/8a96PxTLv9H
1503
- 9HD/+ej0w199/PHpr4g4/Yr8no/+rszemzva1u3/BxR37B2YDAIA
270
+ R29vZ2xlIAoKCgpUaGlzIGlzIGEgZGlnaXRhbCBjb3B5IG9mIGEgYm9vayBsaGFsIHc7bHMgcHJlc2VydmVkIGZvciBnZW5lcmFsIGlvbnMgb24gbGlicmFyeSBzaGVsdmVzIGJlZm9yZSBpbCB3YXMgY2FyZWZ1bGx5IHNjYW5uZWQgYnkgR29vZ2xlIGFzIHBhcmkgb2YgYSBwcm9qZWN0IAoKdG8gbWFrZSB0aGUgd29ybGQncyBib29rcyBkaXNjb3ZlcmFibGUgb25saW5lLiAKCklsIGhhcyBzdXJ2aXZlZCBsb25nIGVub3VnaCBmb3IgdGhlIGNvcHlyaWdodCB0byBleHBpcmUgYW5kIHRoZSBib29rIHRvIGVudGVyIHRoZSBwdWJsaWMgZG9tYWluLiBBIHB1YmxpYyBkb21haW4gYm9vayBpcyBvbmUgdGhhaSB3YXMgbmV2ZXIgc3ViamVjdCAKCnRvIGNvcHkgcmlnaHQgb3Igd2hvc2UgbGVnYWwgY29weXJpZ2h0IHRlcm0gaGFzIGV4cGlyZWQuIFdoZXRoZXIgYSBib29rIGlzIGluIHRoZSBwdWJsaWMgZG9tYWluIG1heSB2YXJ5IGNvdW50cnkgdG8gY291bnRyeS4gUHVibGljIGRvbWFpbiBib29rcyAKCmFyZSBvdXIgZ2F0ZXdheXMgdG8gdGhlIHBhc3QsIHJlcHJlc2VudGluZyBhIHdlYWx0aCBvZiBoaXN0b3J5LCBjdWx0dXJlIGFuZCBrbm93bGVkZ2UgdGhhdCdzIG9mdGVuIGRpbGxpY3VsbCBsbyBkaXNjb3Zlci4gCgpNYXJrcywgbm90YXRpb25zIGFuZCBvdGhlciBtYXJnaW5hbGlhIHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsIHZvbHVtZSB3aWxsIGFwcGVhciBpbiB0aGlzIGZpbGUgLSBhIHJlbWluZGVyIG9mIHRoaXMgYm9vaydzIGxvbmcgam91cm5leSBmcm9tIHRoZSAKCnB1Ymxpc2hlciBsbyBhIGxpYnJhcnkgYW5kIGxpbmFsbHkgbG8geW91LiAKClVzYWdlIGd1aWRlbGluZXMgCgpHb29nbGUgaXMgcHJvdWQgbG8gcGFydG5lciB3aXRoIGxpYnJhcmllcyBsbyBkaWdpbGkvZSBwdWJsaWMgZG9tYWluIG1hdGVyaWFscyBhbmQgbWFrZSB0aGVtIHdpZGVseSBhY2Nlc3NpYmxlLiBQdWJsaWMgZG9tYWluIGJvb2tzIGJlbG9uZyB0byB0aGUgCnB1YmxpYyBhbmQgd2UgYXJlIG1lcmVseSB0aGVpciBjdXN0b2RpYW5zLiBOZXZlcnRoZWxlc3MsIHRoaXMgd29yayBpcyBleHBlbnNpdmUsIHNvIGluIG9yZGVyIGxvIGtlZXAgcHJvdmlkaW5nIHRoaXMgcmVzb3VyY2UsIHdlIGhhdmUgdGFrZW4gc3RlcHMgdG8gCnByZXZlbnQgYWJ1c2UgYnkgY29tbWVyY2lhbCBwYW5pY3MsIGluY2x1ZGluZyBwbGFjaW5nIEljY2huaWNhbCByZXN0cmljdGlvbnMgb24gYXV0b21hdGVkIHF1ZXJ5aW5nLiAKV2UgYWxzbyBhc2sgdGhhdCB5b3U6IAoKKyBNYWtlIG4gb24gLWNvbW1lcmNpYWwgdXNlIG9mIHRoZSBmaWxlcyBXZSBkZXNpZ25lZCBHb29nbGUgQm9vayBTZWFyY2ggZm9yIHVzZSBieSBpbmRpdmlkdWFscywgYW5kIHdlIHJlcXVlc3QgdGhhaSB5b3UgdXNlIHRoZXNlIGZpbGVzIGZvciAKcGVyc29uYWwsIG5vbiAtY29tbWVyY2lhbCBwdXJwb3Nlcy4gCgorIFJlZnJhaW4gZnJvbSBhdXRvbWF0ZWQgcXVlcnlpbmcgRG8gbm90IHNlbmQgYXV0b21hdGVkIHF1ZXJpZXMgb2YgYW55IHNvcnQgbG8gR29vZ2xlJ3Mgc3lzdGVtOiBJZiB5b3UgYXJlIGNvbmR1Y3RpbmcgcmVzZWFyY2ggb24gbWFjaGluZSAKdHJhbnNsYXRpb24sIG9wdGljYWwgY2hhcmFjdGVyIHJlY29nbml0aW9uIG9yIG90aGVyIGFyZWFzIHdoZXJlIGFjY2VzcyB0byBhIGxhcmdlIGFtb3VudCBvZiB0ZXh0IGlzIGhlbHBmdWwsIHBsZWFzZSBjb250YWN0IHVzLiBXZSBlbmNvdXJhZ2UgdGhlIAp1c2Ugb2YgcHVibGljIGRvbWFpbiBtYXRlcmlhbHMgZm9yIHRoZXNlIHB1cnBvc2VzIGFuZCBtYXkgYmUgYWJsZSB0byBoZWxwLiAKCisgTWFpbnRhaW4gYXR0cmlidXRpb24gVGhlIEdvb2dsZSAid2F0ZXJtYXJrIiB5b3Ugc2VlIG9uIGVhY2ggbGlsZSBpcyBlc3NlbnRpYWwgZm9yIGluZm9ybWluZyBwZW9wbGUgYWJvdXQgdGhpcyBwcm9qZWN0IGFuZCBoZWxwaW5nIHRoZW0gZmluZCAKYWRkaXRpb25hbCBtYXRlcmlhbHMgdGhyb3VnaCBHb29nbGUgQm9vayBTZWFyY2guIFBsZWFzZSBkbyBub3QgcmVtb3ZlIGl0LiAKCisgS2VlcCBpdCBsZWdhbCBXaGF0ZXZlciB5b3VyIHVzZS4gcmVtZW1iZXIgdGhhdCB5b3UgYXJlIHJlc3BvbnNpYmxlIGZvciBlbnN1cmluZyB0aGF0IHdoYXQgeW91IGFyZSBkb2luZyBpcyBsZWdhbC4gRG8gbm90IGFzc3VtZSB0aGF0IGp1c3QgCmJlY2F1c2Ugd2UgYmVsaWV2ZSBhIGJvb2sgaXMgaW4gdGhlIHB1YmxpYyBkb21haW4gZm9yIHVzZXJzIGluIHRoZSBVbml0ZWQgU3RhdGVzLCB0aGF0IHRoZSB3b3JrIGlzIGFsc28gaW4gdGhlIHB1YmxpYyBkb21haW4gZm9yIHVzZXJzIGluIG90aGVyIAoKY291bnRyaWVzLiBXaGV0aGVyIGEgYm9vayBpcyBzbGlsbCBpbiBjb3B5cmlnaHQgdmFyaWVzIGZyb20gY291bnRyeSBsbyBjb3VudHJ5LCBhbmQgd2UgY2FuJ2wgb2ZmZXIgZ3VpZGFuY2Ugb24gd2hldGhlciBhbnkgc3BlY2lmaWMgdXNlIG9mIAphbnkgc3BlY2lmaWMgYm9vayBpcyBhbGxvd2VkLiBQbGVhc2UgZG8gbm90IGFzc3VtZSB0aGF0IGEgYm9vaydzIGFwcGVhcmFuY2UgaW4gR29vZ2xlIEJvb2sgU2VhcmNoIG1lYW5zIGl0IGNhbiBiZSB1c2VkIGluIGFueSBtYW5uZXIgCmFueXdoZXJlIGluIHRoZSB3b3JsZC4gQ29weXJpZ2h0IGluZnJpbmdlbWVudCBsaWFiaWxpdHkgY2FuIGJlIHF1aXRlIHNldmVyZS4gCgpBYm91dCBHb29nbGUgQm9vayBTZWFyY2ggCgpHb29nbGUncyBtaXNzaW9uIGlzIHRvIG9yZ2FuaXplIHRoZSB3b3JsZCdzIGluZm9ybWF0aW9uIGFuZCB0byBtYWtlIGl0IHVuaXZlcnNhbGx5IGFjY2Vzc2libGUgYW5kIHVzZWZ1bC4gR29vZ2xlIEJvb2sgU2VhcmNoIGhlbHBzIHJlYWRlcnMgCmRpc2NvdmVyIHRoZSB3b3JsZCdzIGJvb2tzIHdoaWxlIGhlbHBpbmcgYXV0aG9ycyBhbmQgcHVibGlzaGVycyByZWFjaCBuZXcgYXVkaWVuY2VzLiBZb3UgY2FuIHNlYXJjaCB0aHJvdWdoIEkgbGllIGx1bGwgbGV4bCBvZiAxIDEgdXMgYm9vayBvbiBJIGxpZSB3ZWIgCmFsIHxfLS46LiA6Li0uLTo6IC8gLyBib29rcyAuIHFvb3FsZSAuIGNvbS98IAoKCgpyICIiIiIgfiAKCgoKLzQgCgoKCjEgCgoKCiogLyAKCgoKZS4gKiAKCgoKayAKCgoKdCAKCgoKdCAKCgoKeyAKCgoKwqtyP0EgCgoKCuKAosKrIiBqSFdKbEppaSAKCgoKVEhFIAoKCgpmIAoKCgpGSVJTVCBCT09LIAoKCgpPRiAKCgoKTkFQT0xFT04sIAoKCgpUSEUgCgpUWVJBTlQgT0YgVEhFIEVBUlRIOiAKCldSSVRURU4gCgpJTiBUSEUgNTgxM3RoIFlFQVIgT0YgVEhFIFdPUkxELCBBTkQgCjE4MDl0aCBZRUFSIE9GIFRIRSBDSFJJU1RJQU4gRVJBLCAKCkJZIAoKRUxJQUtJTSBUSEUgU0NSSUJFLCAKCkEgREVTQ0VOREFOVCBPRiBBIE1PREVSTiBCUkFOQ0ggT0YgVEhFIFRSSUJFIApPRiBMRVlJIDsgQSBSQUJCSSBFRFVDQVRFRCBJTiBUSEUgQ0hSSVNUSUFOIApTQ0hPT0xTIE9GIFRIRSBTT05TIE9GIFRIRSBQUk9QSEVUUy4gCgoKCsKrTG8sIGFuZCBiZWhvbGQhIGEgbWV0IAoKCgoKaSBzdHJhbmdlciAKCgrigKJoYWxsIGNvbWUgZnJvbSBhZmFyZiBhbmQgeWUgc2hhbGwgcGF5IG9iZWlzYW5jZSAKCgrCqyB1YXRvIGhpbSwgYW5kIGZlYXIgCgoKaGltLCAKCgphbmQgVWNrIAoKCnRoZSBkdXN0IHVuZGVyIGhpcyBmZWV0LCBhbmQgdHJlbWJsZSB1bmRlciBoYiAKCgoiIGNyb3duLCB3aGljaCB1bnRvIAoKCnlvdSBzaGFsbCBiZSBhIGNyb3duIG9mIGlyb24uKiogCgoKCgoKCgoKQk9PSyBPRiBOQVBPTEVPTiwgQ2hhbi4gSC4gVGVyc2UgMTQuIAoKCgpMT05ET046IAoKU09MRCBCVCBMT05HTUFOLCBIVVJTVCwgUkVFUywgJiBPUk1FLCAKQU5EIEouIEouIFNUT0dLREFMRSwgUEFMTC1NQUxMIDsgUC4gSElMTCwgRURJTkJVUkdIIDsgCgpBTkQgTS4gS0VFTkUsIERVQkxJTi4gCgoxODA5LiAKCgoKaW50LiAKCgoKciBNaS1Ibyx8IAoKCgpIQVJWQVJEIENPTExFR0UgTElCUkFSWSAKCkZST00gVEhFIExJQlJBUlkgT0YgCgpGRVJOQU5ETyBQQUxIQSAKCkRFQ0VNQkVSIDMsIDE5MjggCgoKCkEvIAoKCgowPy4gCgoKCiM+JyBWIFkgCgoKCkJmZiBmV15XXl4gXl4iXl5eXl4gLSAtcmFeTV5haSAKCgoKRUxJQUtJTSdTIAoKCgpBRERSRVNTIFRPIEhJUyBSRUFERVJTLiAKCgoKNTUtNT0xIAoKCgpDaGFyaXRhYmxlIGFuZCBHZW50bGUgUmVhZGVyICEgdG8gdGhlZSAKdGhlIEF1dGhvciBvZiB0aGlzIEJvb2sgaGFzIGxpdHRsZSB0byBzYXksIHRoeSAKYXR0cmlidXRlcyBiZWluZyB0aGUgZ29kbGlrZSB2aXJ0dWVzIG9mIG1lZWtuZXNzIAphbmQgY2hhcml0eS4gCgpQaW91cyBhbmQgUmVsaWdpb3VzIFJlYWRlciAhIGxldCBub3QgdGh5IApmZWVsaW5ncyBiZSBvZmZlbmRlZCwgYW5kIHdpdGhob2xkIHRoeSBjZW5zdXJlLCAKdW50aWwgdGhvdSBzaGFsdCBmaW5kIGluIHRoZXNlIHBhZ2VzIGEgc2luZ2xlIHNlbi0gCnRpbWVudCBpbmNvbnNpc3RlbnQgd2l0aCB0aGUgc3Bpcml0IGFuZCBwcmluLSAKY2lwbGVzIG9mIHRoYXQgaG9seSByZWxpZ2lvbiB3aGljaCB0aG91IHByb2Zlc3MtIAplc3QgOyBhbmQgY29uZGVtbiBub3QgdGhlIGZlZWJseSBpbWl0YXRpdmUgbWFuLSAKbmVyIG9mIHdyaXRpbmcgdGhlcmVpbiBvY2Nhc2lvbmFsbHkgZW1wbG95ZWQsIAp1bnRpbCB0aG91IGNhbnN0IHBvaW50IG91dCBhIGxhbmd1YWdlIG1vcmUgCmltcHJlc3NpdmUsIG9yIG1vcmUgYXBwcm9wcmlhdGUsIHRoYW4gdGhhdCBpbiAKaW1pdGF0aW9uIHdoZXJlb2YgdGhlc2UgY2hhcHRlcnMgYXJlIGZyYW1lZC4gCgpSZWFkZXJzIGluIGdlbmVyYWwgISB0YWtlIHdhcm5pbmcgZnJvbSAKdGhlIGF3ZnVsIGV4YW1wbGVzLCBhbmQgcHJvZml0IGJ5IHRoZSB3aG9sZS0gCgphMiAKCgoK4oCiICogCgp1IAoKCgpzb21lIGFkbW9uaXRpb25zIHRoZXJlaW4gY29udGFpbmVkLCBhbmQgYmUtIApsaWV2ZSB0aGF0IHRoZXkgYXJlIHRydWx5IGludGVuZGVkIGZvciB5b3VyIGdvb2QgCmFuZCB3ZWxmYXJlLiAKCk5hcG9sZW9uICEgaWYsIHBlcmFkdmVudHVyZSwgdGhpcyBsaXR0bGUgdm8tIApsdW1lIHNob3VsZCBldmVyIHJlYWNoIHRoZWUsIG1heSBpdHMgdHJ1dGhzIHNpbmsgCmRlZXAgaW50byB0aGluZSBoZWFydCwgYW5kIHJlbWVtYmVyIGluIHRoZSBtaWRzdCAKb2YgdGhlIHRvcnJlbnRzIG9mIGJsb29kIHRoeSBndWlsdHkgYW1iaXRpb24gaXMgc2hlZC0gCmRpbmcsIGFuZCB0aGUgcnVpbiBhbmQgZGVzb2xhdGlvbiBpdCBpcyBzcHJlYWRpbmcgCmZhciBhbmQgd2lkZSwgdGhhdCB0aG91IGFydCBhIG1vcnRhbCBtYW4gOyBhbmQgCm9uZSBkYXksIHBlcmhhcHMgZXJlIGxvbmcsIHRoeSBzb3VsIHNoYWxsIGJlIApyZXF1aXJlZCBvZiB0aGVlLCBhbmQgYW4gYWNjb3VudCBvZiBhbGwgdGh5IGRlZWRzLCAKYnkgdGhhdCBvbW5pcG90ZW50LCB1bmVycmluZywgYW5kIHVwcmlnaHQgQmUtIAppbmcsIHdobywgYXMgaGUgbWFkZSBhbmQgZ292ZXJuZXRoLCBzbyBpbiAKbGlrZSBtYW5uZXIgc2hhbGwgaGUganVkZ2UgdGhlIHdvcmxkLiAKCktpbmcgb2YgdGhlIEFsYmlvbnMgISBvZiB3aG9tIG1lbnRpb24gCmlzIG1hZGUgaW4gdGhlc2UgcGFnZXMsIGJlIGFzc3VyZWQsIHRoYXQgdGhlIGVmLSAKZnVzaW9ucyBvZiBsb3lhbHR5IHRvIHRoeSBwZXJzb24sIGFuZCBhZG1pcmF0aW9uIApvZiB0aHkgdmlydHVlcywgd2hpY2ggdGhleSBjb250YWluLCBhcmUgdGhvc2Ugbm90IApvZiB0aGUgYXV0aG9yIG9ubHksIGJ1dCBvZiBhIGJyYXZlLCBhZmZlY3Rpb25hdGUsIAphbmQgZHV0aWZ1bCBwZW9wbGUuIAoKRUxJQUtJTS4gCgoKCkNPTlRFTlRTIAoKCgpPRiAKCgoKVEhFIEZJUlNUIEJPT0sgT0YgTkFQT0xFT04uIAoKCgpDSEFQLiBJLiAKCjEuIEFwcGVhcmFuY2Ugb2YgYW4gRXZpbCBTcGlyaXQgb24gdGhlIGZhY2Ugb2YgdGhlIGVhcnRoeSAKYmVpbmcgdGhlIGZvcmVydW5uZXIgb2YgdGhlIFR5cmFudC4g4oCUIDIuIEl0IHNlaXpldGggdXAtIApvbiB0aGUgaW5oYWJpdGFudHMgb2YgdGhlIGxhbmQgb2YgR2F1bC4g4oCUIDMuIEl0cyBwcm8tIApncmVzcyog4oCUIDQuIFRoZSBJZG9sYXRyeSBvZiB0aGUgR2F1bHMuIOKAlCA1LiBEZXNjcmlwdGlvbiAKYW5kIHNpZ25zIG9mIHRoZSBCZWFzdCwgb3IgSWRvbCwgd2hpY2ggdGhpcyBwZW9wbGUgd29yLSAKc2hpcHBlZC4gUGFnZSAxIAoKQ0hBUC4gSUkuIAoKMS4gVGhlIEV2aWwgU3Bpcml0IGluY3JlYXNldGguIOKAlCAyLiBUaGUgY29ycnVwdCB0cmVlLCBhbmQgCgppdHMgZnJ1aXRzLiDigJQgMy4gSXQgaXMgYSBjdW1iZXJlciBvZiB0aGUgZ3JvdW5kLCBhbmQgZG90aCAKCsKrIApub3QgcHJvc3BlciB0aGVyZWluIDsgYnV0IGlzIGNhc3QgZG93biwgYW5kIGRlc3Ryb3llZC4gMTQgCgpDSEFQLCBJSUkuIAoKMS4gVGhlIGJpcnRoLXBsYWNlIG9mIHRoZSBUeXJhbnQgTmFwb2xlb24uIOKAlCAyLiBIZSBwcm8tIAoK4pagIGZlc3NldGggaGltc2VsZiB0byBiZSBhIHdvcnNoaXBwZXIgb2YgdGhlIGkgZG9sLuKAlCAzLiBIZSAKCmdvZXRoIGludG8gdGhlIGxhbmQgb2YgRWd5cHQsIHdhZ2V0aCB3YXIsIGFuZCBzb2pvdXJuLSAKCmV0aCBmb3Igc29tZXRpbWUgdGhlcmUu4oCUIEEuIEhlIHRocmVhdGVuZXRoLiBQYWxlc3RpbmUgCgoKCkl0IENPTlRFTlRTLiAKCmFuZCBKZXJ1c2FsZW0uIOKAlCA1KiBIZSByZXR1cm5ldGggc3VkZGVubHkgZnJvbSB0aGVuY2UgLC4gCmRlc3Ryb3lldGggdGhlIGZpcnN0IElkb2wsIGFuZCBwdXR0ZXRoIGhpbXNlbGYgYXQgdGhlIApoZWFkIG9mIHRoZSBhcm1pZXMgb2YgdGhlIEdhdWxzLiDigJQgNi4gSGUgYmVjb21ldGggYSAKbWlnaHR5IENvbnF1ZXJvciwgcG93ZXJmdWwgaW4gd2FyLCBhbmQgb3ZlcndoZWxtLSAKZXRoIG1hbnkgb2YgdGhlIEtpbmdzIGFuZCBQcmluY2VzIG9mIHRoZSBlYXJ0aC4g4oCUIC03LiAKSGUgaXMgYSBwdW5pc2htZW50IHVudG8gdGhlIG5hdGlvbnMgZm9yIHRoZSB3aWNrZWRuZXNzIApvZiB0aGVpciB3YXlzLiDigJQgOC4gVGhlIG9wcHJlc3NlZCBjcnkgYWxvdWQgdW50byB0aGUgCkxvcmQgZm9yIHJlbGllZiBmcm9tIHRoZSBvcHByZXNzb3IgOyBidXQgZm9yIGEgc2Vhc29uIApoZSBsaXN0ZW5ldGggbm90IHVudG8gdGhlbSwgYW5kIGhhcmRlbmV0aCB0aGUgVHlyYW50IDkgcyAKaGVhcnQsIGJlY2F1c2Ugb2YgdGhlIHBlcnZlcnNlIHdpY2tlZG5lc3Mgb2YgdGhlIHBlby0gCnBsZSAuLi4uLiouLi4uLC4uLi4gUGFnZSAxOSAKCkNIQVAuIElWLiAKQ2hhcmFjdGVyIG9mIE5hcG9sZW9uIDI2IAoKQ0hBUCwgVi4gCjEuIERlc2NyaXB0aW9uIG9mIHRoZSBsYW5kIG9mIEFsYmlvbiwgYW5kIG9mIHRoZSBnb29kIApraW5nIHRoYXQgcmVpZ25ldGggb3ZlciB0aGUgc2FtZS4g4oCUIDIuIEhpcyBUaHJvbmUuIOKAlCAKMy4gRGVzY3JpcHRpb24gYWxzbyBvZiB0aGUgVHJlZSB3aGljaCBoYWQgZ3Jvd24gYW5kIApmbG91cmlzaGVkIGluIHRoaXMgTGFuZGYgb3IgbWFueSBnZW5lcmF0aW9ucywgYW5kIG9mIHRoZSAKZ29vZGx5IGZydWl0cyB0aGVyZW9mIDMyIAoKQ0hBUC4gVkkuIAoKMS4gSG93IHRoZSBwZW9wbGUgb2YgQWxiaW9uIHJlc2lzdGVkIHRoZSB0ZW1wdGF0aW9ucyBvZiAKdGhlIHRjZm8vLuKAlCAyLiBBcmUgaGF0ZWQgYnkgdGhlIEdhdWxzLCBhbmQgdGhlIHR5cmFudCAKTmFwb2xlb24sIHdob3Bsb3R0ZXRoIHRoZWlyIGRlc3RydWN0aW9uLCBhbmRzd2VhcmV0aCAKdmVuZ2VhbmNlIGFnYWluc3QgdGhlbSwgYW5kIHRoZWlyIGdvb2Qga2luZyBBTCAKYmFudXMgMzkgCgoKCnp2bXJtdG1tbW0gCgoKCkNPTlRFTlRTLiB0IAoKQ0hBUC4gVklJLiAKMS4gVGhlIHRocmVhdCogb2YgdGtlIEdhdWxzLCBhbmQgb2YgdGhlIFR5cmFudCwgY29tZSB0byAKdGhlIGVhcnMgb2YgdGhlIEFsYmlvbnMsIHdobyBhY2NvcmRpbmdseSBtYWtlIG1pZ2h0eSAKcHJlcGFyYXRpb24qIHRvIHJlc2lzdCB0aGVpciBmb2VzLiDigJQgZmMuIFRoZSBwZW9wbGUgb2YgCk1oaW9uIGNsZWF2ZSB0byB0aGVpciBLaW5nIGFuZCBuYXRpdmUgbGFuZCwgYW5kIHJpc2UgCmFzIG9uZSBtYW4gdG8gb3Bwb3NlIHRoZSBUeXJhbnQgYW5kIGhpcyBob3N0cywgd2hvIApkcmVhZCB0aGUgc2VhLCBhbmQgdGhlIHZhbG91ciBvZiB0aGUgQWxiaW9ucywgYnkgc2VhIAphbmQgbGFuZC4gUGFnZSA0NiAKCkNIQVAuIFZJSUkuIAoxLiBUaGUgc2hpcHMgb2Ygd2FyIHdoaWNoIGNhcnJpZWQgdGhlIGFybXkgb2YgdGhlIEdhdWxzIAppbnRvIEVneXB0LCBhcmUgZGVzdHJveWVkIGluIGEgZHJlYWRmdWwgYmF0dGxlLCBieSBhIApjYXB0YWluIG9mIHRoZSBuYXZ5IG9mIEtpbmcgQWxiYW51cy4g4oCUIDIuIFRoZSBhcm1pZXMgCm9mIHRoZSBBbGJpb25zIHRoZXJlYWZ0ZXIgZGVmZWF0IHRob3NlIG9mIHRoZSBHYXVscyAKd2hlcmVzb2V2ZXIgdGhleSBtZWV0LiDigJQgMy4gVGhlIEFsYmlvbnMgcmVzY3VlIHRoZSAKbGFuZCBvZiBFZ3lwdCBmcm9tIHRoZSBHYXVscy7igJQgNC4gVGhlIGNoaWVmIG9mIHRoZSAKYXJteSBvZiB0aGUgQWxiaW9ucyBmYWxscyBpbiBiYXR0bGUuIOKAlCA1LiBUaGUgR2F1bHMgCmFyZSBhZnRlcndhcmRzIGRlZmVhdGVkIGJ5IHRoZSBBbGJpb25zIGluIHRoZSBsYW5kIG9mIApDYWxhYnJpYSA1MiAKCkNIQVAuIElYLiAKCjEuIFRoZSBkb21pbmlvbiBvZiB0aGUgVHlyYW50IGV4dGVuZGV0aCBpdHNlbGYgdXBvbiB0aGUgCmZhY2Ugb2YgdGhlIGVhcnRoLiDigJQgMi4gSGUgY29udGludWV0aCB0byBkZWNlaXZlIHRoZSAKS2luZ3MgYW5kIFByaW5jZXMgdGhlcmVvZiwgYW5kIHRoZSBwZW9wbGUgb3ZlciB3aG9tIAp0aGV5IHJlaWduZWQuIOKAlCAzLiBTb21lIGFyZSBvdmVydGhyb3duIGJ5IG9wZW4gZm9yY2UsIAoKLiBvdGhlcnMgc29vdGhlZCBhbmQgYmVndWlsZWQsIHVudGlsIGEgY29udmVuaWVudCBzZWFzb24gCmFycml2ZXRoZm9yIHRoZWlyIGNvbXBsZXRlIGFuZCBmaW5hbCBkZXN0cnVjdGlvbi4gLiAuIDU2IAoKCgp2aSBDT05URU5UUy4gCgpDSEFQLiBYLiAKCjEuIFdpc2UgQ291bnNlbGxvcnMsIGFuZCBtaWdodHkgQ2FwdGFpbnMgb2YgaG9zdHMgYW5kIG9mIAoK4pagIHNoaXBzLCB3aXRoIHdob20gaXQgcGxlYXNlZCB0aGUgTG9yZCB0byBibGVzcyBLaW5nIEFsLSAKYmFyaXVzLiDigJQgMi4gSGUgaXMgZGVwcml2ZWQgb2Ygc29tZSBvZiB0aGVtIGJ5IGRlYXRoLuKAlCAKMy4gTGFtZW50YXRpb25zIGZvciB0aGVpciBsb3NzLiAuIFBhZ2UgJj4gCgpDSEFQLiBYSS4gCgoxLiBUaGUgb2FrIG9mIEFsYmlvbi4g4oCUIDIuIEhlIGNsYWltZXRoIHRoZSBzb3ZlcmVpZ250eSAKb2YgdGhlIFdvb2QgYW5kIG9mIHRoZSBGbG9vZCA3MiAKCkNIQVAuIFhJSS4gCgoxLiBUaGUgS2luZ3MgYW5kIFByaW5jZXMgb2YgdGhlIGVhcnRoIGFyZSB3YXJuZWQgb2YgdGhlIAonIGNyYWZ0IGFuZCBzdWJ0bGV0aWVzIG9mIHRoZSBUeXJhbnQuIOKAlCAyLiBWaXJ0dWUgaXMgcmUtIApjb21tZW5kZWQgYXMgdGhlIG9ubHkgc2VjdXJlIGZvdW5kYXRpb259IG9mIHRoZSBraW5nLSAKZG9tcyBvZiB0aGlzIGVhcnRoLiDigJQgMy4gVGhlIHNvbGlkaXR5IG9mIHRoZSBFbXBpcmUgb2YgCgrilqAgQWxtaWdodHkgR29kIGFzY3JpYmVkLCBhbW9uZ3N0IG90aGVyIHRoaW5ncywgdG8gdGhlIApzZW5zZSBmZWx0IGJ5IGNyZWF0ZWQgZXhpc3RlbmNlIG9mIHRoZSBwdXJpdHkgYW5kIGhvbGluZXNzIApvZiB0aGUgR3JlYXQgR292ZXJub3Igb2YgYWxsIHRoaW5ncyA3NSAKCkNIQVAuIFhJSUkuIAoKMS4gVGhlIFBlb3BsZSBvZiBBbGJpb24gYXJlIHRvbGQgb2YgdGhlaXIgaW5jcmVhc2luZyB3aWNrLSAKZWRuZXNzIGFuZCBsaWNlbnRpb3VzbmVzcywgYW5kIGFyZSBhZG1vbmlzaGVkIGFjY29yZHMgCmluZ3R5KiDigJQgMi4gVGhlaXIgbWFubmVycyBhcmUgaW52ZWlnaGVkIGFnYWluc3QsIGFuZCAKdGhleSBhcmUgc3VtbW9uZWQgdG8gcmVwZW50YW5jZSBhbmQgYW1lbmRtZW50IG9mIApsaWZlIDgyIAoKQ0hBUC4gWElWLiAKCjEuIEEgbWlnaHR5IHN0b3JtIGFyaXNldGgu4oCUWi4gVGhlIHZlc3NlbCBvZiB0aGUgU3RhdGUgCmlzIGluIGRhbmdlciBvZiBwZXJpc2hpbmcuIOKAlCAzLiBBIHdpc2UgYW5kIGdvb2QgQ291bi0gCgoKCgoKCkNPTlRFTlRTLiB2aWkgCgoKCnNlbGxvciBwaWxvdHMgdGhlIHZlc3NlbCBhbmQgd2VhdGhlcnMgdGhlICMqb3JtLuKAlCA0LiBUaGUgCnZlc3NlbCBpcyBicm91Z2h0IGludG8gYSBzYWZlIGhhcmJvdXIgOyBidXQgdGhlIHBpbG90IAp0aGVyZW9mIGRpZXRoLCB0aHJvdWdoIGhpcyBlbmRlYXZvdXJzIHRvIHNhdmUgdGhlIAp2ZXNzZWwgUGFnZSAwMCAKCkNIQVAuIFhWLiAKCjEuIE1vZGUgb2YgcmVmb3JtaW5nIHRoZSBDb21tb253ZWFsdGggcmVjb21tZW5kZWQs4oCUIAoyLiBXYXJuaW5ncyBhZ2FpbnN0IHZpb2xlbnQgYW5kIGRhbmdlcm91cyBjaGFuZ2VzLiAK4oCUIDMuIEFkbW9uaXRpb25zIHRvIHRoZSBwZW9wbGUgb2YgQWxiaW9uIGluIHJlZ2FyZCAKdGhlcmV0byA5NSAKCkNIQVAuIFhWSS4gCgoxLiBUaGUgcGFyYWJsZSBvZiB0aGUgQmVhciBhbmQgdGhlIE1vbmtleS4g4oCUIDIuIFRoZSAKTW9ua2V5IGlzIHN1ZGRlbmx5IGNoYW5nZWQgaW50byBhIFR5Z2VyLCB3aGljaCBkZS0gCnZvdXJldGggdGhlIEJlYXIsIGFuZCBzY2F0dGVyZXRoIGhpcyBmbGVzaCBhbmQgaGlzIGJvbmVzIAp0byB0aGUgd2luZHMgb2YgaGVhdmVuIDEwMCAKCkNIQVAuIFhWSUkuIApUaGUgVmlzaW9uIG9mIEVsaWFraW0gMTA0IAoKQ0hBUC4gWFZJSUkuIApUaGUgVmlzaW9uIENvbnRpbnVlZCAxMDggCgpDSEFQLiBYSVguIApUaGUgRW5kIG9mIHRoZSBWaXNpb24gMTE1IAoKcXBBUC4geHguIAoKVGhlIHdhcm5pbmdzIGFuZCBhZG1vbml0aW9ucyB3aGljaCB0aGUgQW5nZWwgZ2F2ZSAKaW4gY29tbWlzc2lvbiwgdG8gYmUgZGVsaXZlcmVkIHVudG8gdGhlIEtpbmcgb2YgQVUgCgoKCsKlaWlpIENPTlRFTlRTLiAKCmJpb3R0aiBhbmQgdG8gaGlzIGZpcnN0IGJvcm4geSBhbmQgdG8gYWxsIHRoZSBzb25zIGFuZCAKZGF1Z2h0ZXJzIG9mIHRoZSBLaW5nLiDigJQgMi4gQXMgYWxzbyB1bnRvIHRoZSBSdWxlcnMgCmFuZCBDb3Vuc2VsbG9ycyBvZiB0aGUgbGFuZCwgYW5kIHRoZSBKdWRnZXMgdGhlcmVvZiA5IAphbmQgdW50byBhbGwgdGhlIHBlb3BsZSB3aG8gZHdlbGwgdGhlcmVpbi4gLiAuUGFnZSAxMjAgCgpDSEFQLiBYWEkuIApBZG1vbml0aW9ucyBhbmQgV2FybmluZ3MgdG8gdGhlIFByaWVzdHMgYW5kIE5vYmxlcyBvZiAKdGhlIGxhbmQuIOKAlCAyLiBUbyB0aGUgUmVwcmVzZW50YXRpdmVzIGFuZCBDb3Vuc2VsbG9ycyBvZiAKdGhlIHBlb3BsZS4g4oCUIDMuIFRvIEp1ZGdlcyBhbmQgTWFnaXN0cmF0ZXMgMTI3IAoKQ0hBUC4gWFhJSS4gCkFkbW9uaXRpb25zIHRvIHRoZSBNYXRyb25zIGFuZCBEYXVnaHRlcnMgb2ZBbGJpb25BMzQgCgpDSEFQLiBYWElJSS4gCgpHZW5lcmFsIGFkbW9uaXRpb25zIHRvIHRoZSBwZW9wbGUgb2YgQWxiaW9uIDE0MCAKCkNvbmNsdXNpb24gLCAxNDUgCgoKCjQgCgoKCkVSUkFUQS4gCgoKCkNoYXAuIEpMIHZvdGUgOCwgZmlyIGJ1dCByZWFkIGV4Y2VwdC4gCgoxNywg4oCUIGJhY2tzIOKAlCBudW0uIAoKMTgsIOKAlCB3dHlzIOKAlCBkZXNpZ25zLiAKODMsIOKAlCBvdmVydGhyb3cgbm9uZSDigJQg4pagIG92ZXJ0aHJvd24gb25lLiAKCjQsIOKAlCB0cmFpdGVyb29zIOKAlCB0cmFpdG9yb28qIAozNywg4oCUIGluZmtsbGl0Ymx5IOKAlCBpbmZhbGxpYmx5LiAKCgoKCk5BUE9MRU9OIAoKCgpUSEUgVFlSQU5ULiAKCgoKQk9PSyBJLiAKCgoKQ0hBUC4gSS4gCgoxLiBBcHBlYXJhbmNlIG9mIGFuIEV2aWwgU3Bpcml0IG9uIHRoZSBmYWNlIG9mIHRoZSBlYXJ0aHkgCmJlaW5nIHRoZSBmb3JlcnVubmVyIG9mIHRoZSBUeXJhbnQg4oCUIDIuIEl0IHNlaXpldGggCnVwb24gdGhlIGluaGFiaXRhbnRzIG9mIHRoZSBsYW5kIG9mIEdhdWwuIOKAlCAzLiBJdHMgcHJvKiAKZ3Jlc3MuIOKAlCA0LiBUaGUgaWRvbGF0cnkgb2YgdGhlIEdhdWxzLiDigJQgNS4gRGVzY3JpcC0gCnRpb24gYW5kIHNpZ25zIG9mIHRoZSBCZWFzdCwgb3IgSWRvbCwgd2hpY2ggdGhpcyBwZW8tIApwbGUgd29yc2hpcHBlZC4gCgpKLUpsbmQgYmVob2xkIGl0IGNhbWUgdG8gcGFzcywgaW4gdGhlc2UgbGF0dGVyIApkYXlzLCB0aGF0IGFuIGV2aWwgc3Bpcml0IGFyb3NlIG9uIHRoZSBmYWNlIG9mIHRoZSAKZWFydGgsIGFuZCBncmVhdGx5IHRyb3VibGVkIHRoZSBzb25zIG9mIG1lbiwgCgoyIApBbmQgdGhpcyBzcGlyaXQgc2VpemVkIHVwb24sIGFuZCBzcHJlYWQgYS0gCm1vbmdzdCB0aGUgcGVvcGxlIHdobyBkd2VsbCBpbiB0aGUgbGFuZCBvZiAKR2F1bCAKCgoKMTAgTkFQT0xFT04uIENoYXAuIEkuIAoKMyAKTm93LCBpbiB0aGlzIHBlb3BsZSB0aGUgZmVhciBvZiB0aGUgTG9yZCBoYWQgCm5vdCBiZWVuIGZvciBtYW55IGdlbmVyYXRpb25zLCBhbmQgdGhleSBoYWQgCmJlY29tZSBhIGNvcnJ1cHQgYW5kIHBlcnZlcnNlIHBlb3BsZTsgYW5kIAp0aGVpciBjaGllZiBwcmllc3RzLCBhbmQgdGhlIG5vYmxlcyBvZiB0aGUgbGFuZCwgCmFuZCB0aGUgbGVhcm5lZCBtZW4gdGhlcmVvZiwgaGFkIGJlY29tZSB3aWNrLSAKZWQgaW4gdGhlIGltYWdpbmF0aW9ucyBvZiB0aGVpciBoZWFydHMsIGFuZCBpbiAKdGhlIHByYWN0aWNlcyBvZiB0aGVpciBsaXZlcy4gCgo0IApBbmQgdGhlIGV2aWwgc3Bpcml0IHdlbnQgYWJyb2FkIGFtb25nc3QgdGhlIApwZW9wbGUsIGFuZCB0aGV5IHJhZ2ZlZCBsaWtlIHVudG8gdGhlIGhlYXRoZW4sIAphbmQgdGhleSByb3NlIHVwIGFnYWluc3QgdGhlaXIgbGF3ZnVsIGtpbmcsIGFuZCAKc2xldyBoaW0sIGFuZCBoaXMgcXVlZW4gYWxzbywgYW5kIHRoZSBwcmluY2UgCnRoZWlyIHNvbiA1IHllYSwgdmVyaWx5LCB3aXRoIGEgY3J1ZWwgYW5kIGJsb29keSAKZGVhdGguIAoKNSAKQW5kIHRoZXkgbW9yZW92ZXIgc21vdGUsIHdpdGggbWlnaHR5IHdyYXRoLCAKdGhlIGtpbmcncyBndWFyZHMsIGFuZCBiYW5pc2hlZCB0aGUgcHJpZXN0cywgYW5kIApub2JsZXMgb2YgdGhlIGxhbmQsIGFuZCBzZWl6ZWQgdXBvbiwgYW5kIHRvb2sgCnVudG8gdGhlbXNlbHZlcywgdGhlaXIgaW5oZXJpdGFuY2VzLCB0aGVpciBnb2xkIAphbmQgc2lsdmVyLCBjb3JuIGFuZCBvaWwsIGFuZCB3aGF0c29ldmVyIGJlLSAKbG9uZ2VkIHVudG8gdGhlbS4gCgo2IApOb3cgaXQgY2FtZSB0byBwYXNzLCB0aGF0IHRoZSBuYXRpb24gb2YgdGhlIApHYXVscyBjb250aW51ZWQgdG8gYmUgc29yZWx5IHRyb3VibGVkIGFuZCB2ZXgtIAoKCgpDaGlwLiBJLiBOQVBPTEVPTi4gMTEgCgplZCwgYW5kIHRoZSBldmlsIHNwaXJpdCB3aGlzcGVyZWQgdW50byB0aGUgcGVvLSAKcGxlLCBldmVuIHVudG8gdGhlIG1lYW5lc3QgYW5kIHZpbGVzdCB0aGVyZW9mLCAKdGhhdCBhbGwgbWVuIGJlaW5nIGJvcm4gZXF1YWwsIHdlcmUgZnJlZSB0byBhY3QsIAplYWNoIG9uZSBhY2NvcmRpbmcgdG8gdGhlIGltYWdpbmF0aW9ucyBhbmQgCmRldmljZXMgb2YgaGlzIG93biBoZWFydCwgd2l0aG91dCB0aGUgZmVhciBvZiAKR29kLCBvciB0aGUgY29udHJvdWwgb2YgdGhlIGxhd2Z1bCBydWxlcnMgb2YgCnRoZSBsYW5kLiAKCjcgCgpBbmQgbG8gISB0aGlzIGZvb2xpc2ggYW5kIHdpY2tlZCBjb3Vuc2VsIG9mIApldmlsIGRlc2lnbmluZyBtZW4sIGJlaW5nIHNlZW1seSwgYW5kIHdlbGwtIApwbGVhc2luZyBpbiB0aGUgc2lnaHQgb2YgdGhlIG11bHRpdHVkZSwgdGhleSByYWctIAplZCBmdXJpb3VzbHkgYWdhaW5zdCBhbGwgcHJpbmNpcGFsaXRpZXMgYW5kIHBvdy0gCmVycyA7IGFuZCBoYXZpbmcgc2xhaW4gdGhlIGdvb2Qga2luZyB3aG9tIHRoZSAKTG9yZCBoYWQgYXBwb2ludGVkIHRvIHJ1bGUgb3ZlciB0aGVtLCBhbmQgCnRvIGFkbWluaXN0ZXIganVzdGljZSB1bnRvIHRoZW0gOyB0aGV5IG1vcmUtIApvdmVyIHNvdWdodCB0byBvdmVydGhyb3cgYW5kIGRlc3Ryb3kgdGhlIGtpbmdzIAphbmQgcnVsZXJzIG92ZXIgdGhlIG90aGVyIG5hdGlvbnMgb2YgdGhlIGVhcnRoLCAKYW5kIG1hZGUgd2FyIHVwb24gdGhlbSA7IGFuZCBzdGlycmVkIHVwIHRoZSAKcGVvcGxlIG9mIHRob3NlIG5hdGlvbnMgaW4gbGlrZSBtYW5uZXIgdG8gd2FnZSAKd2FyIGFnYWluc3QgdGhlIGxhd2Z1bCBydWxlcnMgb2YgdGhlIGxhbmRzLCB3aGVyZS0gCmluIHRoZXkgaGFkIGJlZW4gYXBwb2ludGVkIHRvIGR3ZWxsLiAKCjggCgpWIAoKTm93LCBpdCBzbyBoYXBwZW5lZCwgdGhhdCB0aGUgZXZpbCBzcGlyaXQgc3Rpci0gCnJlZCB1cCBldmVyeSBvbmUgdG8gc2VlayBoaXMgb3duIGV4YWx0YXRpb24sIHR5ciAKCmEgMiAKCgoKSXQgTkFQT0xFT04uIENoYXAuIEkuIAoKaHVtYmxpbmcgYW5kIGRlYmFzaW5nIHRob3NlIHdob20gR29kIGhhZCAKbWFkZSBzdXBlcmlvciB0byBoaW0sIGluIG1pbmQsIGJvZHksIGFuZCBlc3RhdGUuIAoKOSAKCkFuZCB3aGlsZSB0aGlzIHNwaXJpdCByYWdlZCBpbiBHYXVsLCB0aGUgY3Vyc2UgCm9mIEdvZCB3YXMgdXBvbiB0aGUgbGFuZCwgYW5kIGJsb29kc2hlZCwgCm11cmRlciwgYW5kIHJhcGluZSwgYW5kIGFsbCBtYW5uZXIgb2YgYmxhcy0gCnBoZW15LCB3aWNrZWRuZXNzLCBhbmQgdW5jbGVhbm5lc3MsIHByZXZhaWwtIAplZCBhbW9uZ3N0IHRoZSBwZW9wbGUgdGhlcmVvZi4gCgoxMCAKCkFuZCB0aGV5IG5vdCBvbmx5IGRlc3Bpc2VkIHRoZSBjb21tYW5kLSAKbWVudHMgb2YgdGhlIExvcmQsIGJ1dCBhbHNvIGJsYXNwaGVtZWQgdGhlIApuYW1lIG9mIHRoZSBvbmx5IHRydWUgYW5kIGxpdmluZyBHb2QsIGFuZCAKdGhleSBtYWRlIGlkb2xzIGFuZCBmYWxzZSBnb2RzIHRvIHRoZW1zZWx2ZXMsIAphbmQgZmVsbCBkb3duIGFuZCB3b3JzaGlwcGVkIHRoZW0uIAoKMTEgCgpBbmQgbG8sIGFuZCBiZWhvbGQsIHRoZSBjaGllZiBpZG9sLCB3aGljaCB0aGlzIAp3aWNrZWQgYW5kIHBlcnZlcnNlIHBlb3BsZSBzZXQgdXAgYW5kIHdvcnNoaXAtIApwZWQsIHdhcyBsaWtlIHVudG8gYSBiZWFzdCwgYWx0aG91Z2ggbWFkZSAKc29tZXdoYXQgYWZ0ZXIgdGhlIGltYWdlIG9mIGEgbWFuLiAKCjEyIAoKQW5kIG91dCBvZiB0aGUgaGVhZCBvZiB0aGUgYmVhc3QgdGhlcmUgYXJvc2UgCnRocmVlIGhvcm5zLCBhbmQgdXBvbiBlYWNoIG9mIHRoZSBob3JucyB0aGVyZSAKd2VyZSB3cml0dGVuIHRoZXNlIHdvcmRzLCBTZWRpdGlvbiwgUHJpdnkgCkNvbnNwaXJhY3ksIGFuZCBSZWJlbGxpb24gOyBhbmQgb24gdGhlIApmb3JlaGVhZCBvZiB0aGUgYmVhc3QsIGFuZCB1bmRlciB0aGUgaG9ybnMsIAoKCgpDaGFwLiBJKiBOQVBPTEVPTi4gMTMgCgp0aGVyZSB3ZXJlIHdyaXR0ZW4sIGluIGxldHRlcnMgb2YgYmxvb2QsIHRoZSAKd29yZHMgVHJlYXNvbnMgYW5kIENyaW1lcy4gCgoxMyAKQW5kIGZyb20gdGhlIGV5ZXMgb2YgdGhlIGJlYXN0IHRoZXJlIHByby0gCmNlZWRlZCBmbGFzaGVzIG9mIGRldm91cmluZyBmaXJlLCBhbmQgaXRzIGphd3MgCmFuZCB0aHJvYXQgd2VyZSBsaWtlIHVudG8gdGhlIG1vdXRoIG9mIGhlbGwsIAphbmQgZnJvbSBpdHMgdG9uZ3VlIHRoZXJlIGlzc3VlZCBjdXJzaW5ncyBhbmQgCmJsYXNwaGVtaW5ncy4gCgoxNCAK4oCiIEFuZCB1cG9uIHRoZSBicmVhc3Qgb2YgdGhlIGJlYXN0LCB0aGVyZSB3ZXJlIAp3cml0dGVuIHRoZXNlIHdvcmRzLCBJcnJlbGlnaW9uLCBJbmZpZGVsaS0gCnR5LCBhbmQgVHVtdWx0LiAKCjE1IApBbmQgaW4gaXRzIHJpZ2h0IGhhbmQsIGl0IGhlbGQgYW4gZW1ibGVtIG9mIApmaXJlIGFuZCBzd29yZCwgYW5kIGluIGl0cyBsZWZ0LCBhbiBlbWJsZW0gb2YgcmEtIApwaW5lIGFuZCBtdXJkZXIuIAoKMTYgCkFuZCB1cG9uIHRoZSBmZWV0IG9mIHRoZSBiZWFzdCwgdGhlcmUgd2VyZSAKYnJhemVuIHNhbmRhbHMsIGxpa2UgdW50byB0aG9zZSB3b3JuIGJ5IG1lbiwgCmFuZCB1cG9uIHRoZSBzYW5kYWwgb2YgdGhlIHJpZ2h0IGZvb3QsIHRoZXJlIHdhcyAKZW5ncmF2ZW4sIGluIGxldHRlcnMgb2YgYnJhc3MsIFRlcnJvciBhbmQgCkRpc21heSA7IGFuZCB1cG9uIHRoZSBzYW5kYWwgb2YgdGhlIGxlZnQgZm9vdCwgCkJsb29kIGFuZCBGYW1pbmUsIHNpZ25pZnlpbmcsIHRoYXQgd2hlcmUtIApzb2V2ZXIgdGhlIGJlYXN0IGVzdGFibGlzaGVkIGl0c2VsZiwgb3IgdHJvZGUsIHRob3NlIApkaXJlZnVsIGV2aWxzIHdvdWxkIGFmZmxpY3QgdGhlIGxhbmQuIAoKQTMgCgoKCiogCgoKCjE0IE5BUE9MRU9OLiBDaGEqLiBJSS4gCgoxNyAKCkFuZCBiZWhvbGQsIHRoZSBuYW1lIG9mIHRoZSBpZG9sIHdhcyBjYWxsZWQgCkxpY2VudGlvdXNuZXNzLiAKCjE4IAoKQW5kIElvICEgYSBsb3VkIGFuZCB3YXJuaW5nIHZvaWNlLCBwcm9jZWVkLSAKaW5nIGFzIGl0IHdlcmUgZnJvbSB0aGUgaGVhdmVucyBvbiBoaWdoLCB3YXMgCmhlYXJkIHVwb24gdGhlIGVhcnRoIGJlbmVhdGgsIHNheWluZywgIiBCZS0gCndhcmUsIE8gbWFuLCBvZiB0aGUgZXhjZWVkaW5nIGdyZWF0IHZpbGVuZXNzIAphbmQgYWJvbWluYXRpb25zIG9mIHRoZSBiZWFzdCBvciBpZG9sIGhlcmVpbiAKZGVzY3JpYmVkLCBmb3IgdXBvbiB0aGUgZm9sbG93ZXJzIGFuZCB3b3JzaGlwLSAKcGVycyB0aGVyZW9mLCB0aGVyZSBzaGFsbCBkZXNjZW5kIGp1c3RpY2UsIGFuZCAKZGl2ZXJzIGFuZCBkaXJlZnVsIGp1ZGdtZW50cy4iIAoKCgpDSEFQLiBJSS4gCgoxLiBUaGUgZXZpbCBzcGlyaXQgaW5jcmVhc2V0aC4g4oCUIDIuIFRoZSBjb3JydXB0IHRyZWUgLCBhbmQgCml0cyBmcnVpdHMu4oCUICQuIEl0IGlzIGEgY3VtYmVyIGVyIG9mIHRoZSBncm91bmQsIGFuZCBkb3RoIApub3QgcHJvc3BlciB0aGVyZWluIDogYnV0IGlzIGNhc3QgZG93biwgYW5kIGRlc3Ryb3llZC4gCgpBbmQgdGhlIGV2aWwgc3Bpcml0IGNvbnRpbnVlZCB0byBzcHJlYWQgaXRzZWxmIAphbW9uZ3N0IHRoZSBuYXRpb25zIG9mIHRoZSBlYXJ0aCwgYW5kIHRoZXkgd2VyZSAKc29yZWx5IGFmZmxpY3RlZCwgYW5kIHRyb3VibGVkIHRoZXJld2l0aC4gCgoyIAoKQW5kIHRoZSBpZG9sYXRyeSBvZiB0aGUgYmVhc3QgaW4gbGlrZSBtYW5uZXIgCnByZXZhaWxlZCBhbW9uZyB0aGUgc29ucyBvZiBtZW4sIGFuZCBpdCBwbGVhcy0gCgoKCkNoYXAuIElJLiBOQVBPTEVPTi4gMTUgCgplZCB0aGUgTG9yZCB0byBkZWxpdmVyIHRoZSB3b3JzaGlwcGVycyB0aGVyZW9mIAppbnRvIHRoZSBoYW5kcyBvZiB0aGUgR2F1bHMuIAoKMyAKCk5vdyB0aGUgR2F1bHMgY29udGludWVkIHRvIHJhZ2UgYXMgaGVyZXRvLSAKZm9yZSwgd2l0aCBtaWdodHkgaXJlLCBhbmQgd2FnZWQgd2FyIGFnYWluc3QgCmFsbCBuYXRpb25zLCBwZW9wbGUsIGFuZCBsYW5ndWFnZXMuIAoKNCAKCkFuZCB0aGUga2luZ3MgYW5kIHJ1bGVycyBvZiB0aGUgZWFydGgsIGJlaGVsZCAKdGhlIHJhZ2luZyBvZiB0aGUgc3Rvcm0sIGFuZCBjb21iaW5lZCB0b2dlLSAKdGhlciB0byBxdWVsbCB0aGUgZnVyeSB0aGVyZW9mLiAKCjUgCgpCdXQgdGhlIHBvd2VyIG9mIHRoZSBldmlsIHNwaXJpdCwgYW5kIG9mIHRoZSAKbXVsdGl0dWRlIHdoaWNoIGl0IG1vdmVkLCB3YXMgbWlnaHR5IGdyZWF0LCAKYW5kIGZyb20gYW1vbmdzdCB0aGVtIHRoZXJlIGFyb3NlIHZhbGlhbnQgCmNhcHRhaW5zLCBhbmQgbWVuIG9mIHdhciwgYW5kIHRoZXkgb3ZlcnRocmV3IAp0aG9zZSB0aGF0IHdhZ2VkIHdhciBhZ2FpbnN0IHRoZW0uIAoKNiAKCkFuZCBsbyAhIHRoZSB0aWxsZXJzIG9mIHRoZSBncm91bmQsIGFuZCB0aGUgCmxhYm91cmVycyB0aGVyZW9mLCB0b2dldGhlciB3aXRoIG1lY2hhbmljcywgYXItIAp0aWZpY2VycywgYW5kIGFsbCBtYW5uZXIgb2YgaGFuZGljcmFmdG1lbiwgbGVmdCAKdGhlaXIgc3VuZHJ5IGFuZCBwZWFjZWZ1bCBvY2N1cGF0aW9ucywgYW5kIGJlLSAKY2FtZSBsYXdtYWtlcnMgYW5kIGxhd2dpdmVycywgYW5kIHNvdWdodCB0byAKcnVsZSBvdmVyIHRoZWlyIHN1cGVyaW9ycy4gCgo3IApOb3csIGl0IGhhZCBwbGVhc2VkIHRoZSBMb3JkIHRvIGRhcmtlbiB0aGUgCgphIDQgCgoKCjE2IE5BUE9MRU9OLiBDaGFwLiBJSS4gCgp1bmRlcnN0YW5kaW5ncyBvZiB0aG9zZSBmb29saXNoIG1lbiA7IGZvciB0aGV5IAp2YWlubHkgaW1hZ2luZWQsIHRoYXQgbGF3cyBhbmQgaW5zdGl0dXRpb25zIG1heSAKYmUgZm9ydGh3aXRoIG1hZGUsIGxpa2UgdW50byB0aGluZ3Mgb2YgY3VubmluZyAKZGV2aWNlLCBvciBidWlsdCBpbiBhIHNlYXNvbiwgb3IgYnkgbW9kZWxzLCBsaWtlIAp1bnRvIGVhcnRobHkgaGFiaXRhdGlvbnMgOyB3aGVyZWFzLCB0aGV5IGdyb3cgCm5hdHVyYWxseSBhbmQgZ3JhZHVhbGx5IGFmdGVyIHRoZSBtYW5uZXIgb2YgCnRyZWVzLCBhbmQsIGxpa2UgdGhlbSwgcmVxdWlyZSB0byBiZSB0cmFpbmVkIGFuZCAKcHJ1bmVkIGJ5IHRoZSB3YXJ5IGhhbmQgb2YgYWdlIGFuZCB0aW1lLiAKCjggCk5vdywgYXMgZ29vZCBhbmQgd2hvbGVzb21lIGxhd3MgYW5kIGluLSAKc3RpdHV0aW9ucywgb3IsIGFzIHRoZXkgYXJlIGNhbGxlZCBpbiB0aGVzZSBsYXR0ZXIgCmRheXMsIGdvb2QgY29uc3RpdHV0aW9ucywgYWZ0ZXIgdGhlIG1hbm5lciBvZiAKdHJlZXMsIGRvIG5vdCB0YWtlIHJvb3QgYW5kIGdyb3cgYnV0IGluIGdvb2QgCnNvaWxzLCBhbmQgd2hlcmUgdGhleSBhcmUgd2VsbCB3YXRlcmVkIGFuZCBzaGVsLSAKdGVyZWQgaSBzbywgaW4gbGlrZSBtYW5uZXIsIGFzIGlzIGtub3duIHVudG8gYWxsIApodXNiYW5kbWVuLCB0aGUgdHJlZSB0aGF0IHNwcmluZ2V0aCBhbmQgZmxvdS0gCnJpc2hldGggaW4gb25lLCBhbmQgYSBnb29kIHNvaWwsIGRlY2F5ZXRoIGFuZCAKZGlldGggaW4gYW5vdGhlciwgb3IgYmFkIHNvaWwuIAoKOSAKQXMgdGhlIGRldyBvZiBoZWF2ZW4sIGFuZCB0aGUgc3VuLWJlYW1zIAp0aGVyZW9mLCB3YXRlciBhbmQgY2hlcmlzaCB0aGUgZWFydGhseSB0cmVlLCBzbyAKYWxzbywgZG8gdGhlIHNwaXJpdHMgb2YgdGhlIGRlcGFydGVkIHBhdHJpb3RzIG9mIGEgCmxhbmQsIGFuZCB0aGUgYmxvb2Qgb2YgdGhlIHdhcnJpb3JzIHRoZXJlb2YsIGZvcy0gCnRlciBhbmQgc3VwcG9ydCB0aGUgcG9saXRpY2FsIHRyZWUsIG9yIGNvbnN0aXR1LSAKdGlvbiBvZiB0aGUgc3RhdGUuIAoKCgpDaGFwLiBJSS4gTkFQT0xFT04uIDE3IAoKCgoxMCAKQnV0IHRoZSBHYXVscyB3ZXJlIGFsdG9nZXRoZXIgYSB3aWNrZWQgYW5kIApwZXJ2ZXJzZSBwZW9wbGUsIGFuZCB0aGUgdHJlZSB3aGljaCB0aGV5IGhhZCAKcGxhbnRlZCBpbiB0aGUgbWlkc3Qgb2YgdGhlbSB3YXMgYSBibGFzdGVkIHRyZWUsIAphbmQgbG8gYW5kIGJlaG9sZCwgaXQgYnJvdWdodCBmb3J0aCBub3RoaW5nIGJ1dCAKYmFkIGFuZCBmb3JiaWRkZW4gZnJ1aXQsIGFuZCBhbGwgbWFubmVyIG9mIHVuLSAKcmlnaHRlb3VzbmVzcywgc3VjaCBhcyBwZXJ0YWluZXRoIHVudG8gdGhlIGlkb2wgCm9mIHdob20gaXQgaXMgYmVmb3JlLSB3cml0dGVuLCBhbmQgd2hvbSB0aGV5LCAKaW4gdGhlIGZvb2xpc2ggaW1hZ2luYXRpb25zIG9mIHRoZWlyIGhlYXJ0cywgaGFkIAp2YWlubHkgd29yc2hpcHBlZC4gCgoxMSAKQW5kIHRoaXMgZXZpbCB0cmVlIHdhcyBwbGFudGVkIGluIG1hbnkgYW5kIAoKZGl2ZXJzIHBsYWNlcyAkIGJ1dCB0aGUgbGVhdmVzIGFuZCBicmFuY2hlcyAKdGhlcmVvZiBkZWNheWVkLCBhbmQgd2VyZSBibGFzdGVkLCBhbmQgaXRzIHJvb3RzIApyb3R0ZWQgOyBiZWNhdXNlIHRoZSBzYXAgd2hpY2ggd2FzIGluIHRoZSB0cmVlLCAKd2FzIHBvaXNvbiwgYW5kIGFsbCB0aG9zZSB3aG8gdGFzdGVkIG9mIGl0cyBmcnVpdCAKcGVyaXNoZWQgdGhlcmVieSA7IHllYSwgZXZlbiB3aXRoIGEgY3J1ZWwgYW5kIApibG9vZHkgZGVhdGguIAoKMTIgCkFuZCBiZWhvbGQgdGhlIHRyZWUgcGFydG9vayBvZiB0aGUgbmF0dXJlIApvZiB0aGUgYmVhc3QsIG9mIHdoaWNoIGl0IGlzIGJlZm9yZS0gd3JpdHRlbiA7IGZvciAKaXQgaGFkIHNwcnVuZyBmcm9tIHRoZSByb3R0ZW5uZXNzIGFuZCBjb3JydXAtIAp0aW9uIHRoZXJlb2YuIAoKMTMgCkFuZCB3aGVuIHRoZSBMb3JkIGxvb2tlZCBkb3duIGZyb20gaGVhLSAKCgoKMTggTkFQT0xFT04uIENoYXAuIGZsLiAKCnZlbiwgYW5kIGJlaGVsZCB0aGUgcGVydmVyc2Ugd2lja2VkbmVzcyBvZiB0aGUgCkdhdWxzLCBoZSBzYWlkLCB5ZWEsIHZlcmlseSwgSSB3aWxsIHB1bmlzaCB0aGlzIApwZW9wbGUgZm9yIHRoZSB3aWNrZWRuZXNzIG9mIHRoZWlyIHdheXMuIAoKMTQgCgpTbyB0aGUgTG9yZCBzcGFrZSBieSBoaXMgcHJvcGhldHMsIGFuZCBzYWlkIAp1bnRvIHRoZSBwZW9wbGUgb2YgR2F1bCwgTyBmb29saXNoIHBlb3BsZSwgeWUgCmhhdmUgY2FzdCBkb3duIGFuZCBzbGFpbiwgd2l0aCBhIGNydWVsIGFuZCBpZ25vLSAKbWluaW91cyBkZWF0aCwgdGhlIGtpbmcgd2hvbSBJIGhhZCBhcHBvaW50ZWQgCnRvIHJ1bGUgb3ZlciB5b3UsIGFuZCB3aG9zZSBmYXRoZXJzIGhhZCByZWlnbmVkIAppbiB0aGUgbGFuZCBmb3IgbWFueSBnZW5lcmF0aW9ucyA7IGFuZCB5ZSBoYXZlIApkZXN0cm95ZWQgYWxsIHByaW5jaXBhbGl0aWVzIGFuZCBwb3dlcnMsIGFuZCAKaGF2ZSBkZXNwaXNlZCBhbGwgaG9seSB0aGluZ3MsIGFuZCBoYXZlIGltYWdpLSAKbmVkIHZhaW4gYW5kIHdpY2tlZCBjb25jZWl0cywgYW5kIGhhdmUgbW9yZS0gCm92ZXIgdHJvdWJsZWQgdGhlIHBlYWNlIG9mIHRoZSB3b3JsZCwgYW5kIHN3b3JuIAplbm1pdHkgdG8gdGhlIGtpbmdzIGFuZCBydWxlcnMgb2YgdGhlIGVhcnRoIDsgCmJ1dCBJIHdpbGwgcHVuaXNoIHlvdSwgTyBwZW9wbGUsIGZvciB0aGVzZSBldmlsIApkb2luZ3MgOyBhbmQgbG8gYW5kIGJlaG9sZCwgYSBtZWFuIGJvcm4gc3RyYW4tIApnZXIgc2hhbGwgY29tZSBmcm9tIGFmYXIsIGFuZCB5ZSBzaGFsbCBwYXkgb2JlaS0gCnNhbmNlIHRvIGhpbSwgYW5kIGZlYXIgaGltLCBhbmQgbGljayB0aGUgZHVzdCAKdW5kZXIgaGlzIGZlZXQsIGFuZCB0cmVtYmxlIHVuZGVyIGhpcyBjcm93biwgCndoaWNoLCB1bnRvIHlvdSwgc2hhbGwgYmUgYSBjcm93biBvZiBpcm9uLiAKCjE1IAoKQW5kIGxvICEgdGhlIHByb3BoZWN5IG9mIHRoZSBMb3JkIHdhcyBmdWwtIApmaWxsZWQsIGFzIHdpbGwgYmUgbWFkZSBtYW5pZmVzdCBmcm9tIHdoYXQgaXMgCmhlcmVhZnRlciB3cml0dGVuIGluIHRoaXMgYm9vay4gCgoKCkNoYXAuIElJSS4gTkFQT0xFT04uIDE5IAoKCgpDSEFQLiBJSUkuIAoKMS4gVGhlIEJpcnRoLXBsYWNlIG9mIHRoZSBUeXJhbnQgTmFwb2xlb24uIOKAlCAyLiBIZSBwcm8uIApmZXNzZXRoIGhpbXNlbGYgdG8gYmUgYSB3b3JzaGlwcGVyIG9mIHRoZSBpZG9sLiDigJQgMy4gSGUgCmdvZXRoIGludG8gdGhlIGxhbmQgb2YgRWd5cHQsIHdhZ2V0aCB3YXIsIGFuZCBzb2pvdXItIApuZXRoZm9yIHNvbWUgdGltZSB0aGVyZS4g4oCUIDQuIEhlIHRocmVhdGVuZXRoIFBhbGVzLSAKdGluZSBhbmQgSmVydXNhbGVtLiDigJQgNS4gSGUgcmV0dXJuZXRoIHN1ZGRlbmx5IGZyb20gCnRoZW5jZSwgYW5kIGRlc3Ryb3kgZXRoIHRoZSBmaXJzdCBJZG9sLCBhbmQgcHV0dGV0aCBoaW0tIApzZWxmIGF0IHRoZSBoZWFkIG9mIHRoZSBhcm1pZXMgb2YgdGhlIEdhdWxzLiDigJQgNi4gSGUgYmUtIAplb21ldGggYSBtaWdodHkgQ29ucXVlcm9yLCBwb3dlcmZ1bCBpbiB3YXIsIGFuZCBvdmVyLSAKd2hlbG1lZCBtYW55IG9mIHRoZSBraW5ncyBhbmQgcHJpbmNlcyBvZiB0aGUgZWFydGguIArigJQgNy4gSGUgaXMgYSBwdW5pc2htZW50IHVudG8gdGhlIG5hdGlvbnMgZm9yIHRoZSAKd2lja2VkbmVzcyBvZiB0aGVpciB3YXlzLuKAlCA4LiBUaGUgb3BwcmVzc2VkIGNyeSBhbG91ZCAKdW50byB0aGUgTG9yZCBmb3IgcmVsaWVmIGZyb20gdGhlIG9wcHJlc3NvciA7IGJ1dCBmb3IgCmEgc2Vhc29uIGhlIGxpcyB0ZW5ldCBoIG5vdCB1bnRvIHRoZW0sIGFuZCBoYXJkZW5ldGggCnRoZSBUeXJhblZzIGhlYXJ0LCBiZWNhdXNlIG9mIHRoZSBwZXJ2ZXJzZSB3aWNrZWRuZXNzIApvZiB0aGUgcGVvcGxlLiAKCmkgCgpOb3csIGluIHRoZSBsYW5kIGNhbGxlZCBDb3JzaWNhLCB3aGljaCBpcyBhbiAKaXNsYW5kIGluIHRoZSBzZWEsIHRoZXJlIHdhcyBhIG1hbiBib3JuLCBhbmQgaGlzIApuYW1lIHdhcyBOYXBvbGVvbi4gCgoyIAoKQW5kIHRoaXMgbWFuLCB0aG91Z2ggc21hbGwgaW4gc3RhdHVyZSwgd2FzIApuZXZlcnRoZWxlc3MgdmFzdCBpbiBzcGlyaXQsIGFuZCBoZSBub3Qgb25seSBjb24tIApjZWl2ZWQgdW50byBoaW1zZWxmLCBncmVhdCBhbmQgbWFydmVsbG91cyBkZS0gCgoKCjIgCgoKCjIwIE5BUE9MRU9OLiBDaGFwLiBJbGwsIAoKc2lnbnMsIGJ1dCB3YXMgbW9yZW92ZXIgd2lja2VkLCBhbmQgY3VubmluZyAKaW4gY291bmNpbCwgbWlnaHR5IGluIGRlZWRzLCBhbmQgcG93ZXJmdWwgaW4gCndhci4gCgozIApBbmQgaGUgcHJvZmVzc2VkIGhpbXNlbGYgdG8gYmUgYSB0cnVlIHdvci0gCnNoaXBwZXIgb2YgdGhlIGlkb2wsIGFuZCB5ZXQgaGUgaGF0ZWQgdGhlIGlkb2wgCmluIGhpcyBoZWFydCwgYW5kIGhhZCBtYWRlIHVudG8gaGltc2VsZiBhbm8tIAp0aGVyIGlkb2wsIG9mIHRoZSBuYXR1cmUsIHdoZXJlb2YgaXQgaXMgaGVyZWFmdGVyIAp3cml0dGVuLiAKCjQgCkFuZCBoZSBkZWNsYXJlZCBoaW1zZWxmIHRvIGJlIGFuIGVuZW15IHVuLSAKdG8gYWxsIHByaW5jaXBhbGl0aWVzIGFuZCBwb3dlcnMsIGFuZCB0aGUgZnJpZW5kIApvZiBmcmVlZG9tIGFuZCBlcXVhbGl0eSBhbW9uZ3N0IHRoZSBzb25zIG9mIAptZW4sIGFuZCBoZSB3YXMgYXBwb2ludGVkIENhcHRhaW4gb3ZlciB0aGUgCmFybWllcyBvZiB0aGUgd29yc2hpcHBlcnMgb2YgdGhlIGlkb2wuIAoKNSAKQW5kIGhlIGNvbW1hbmRlZCB0aGUgaG9zdHMgdGhlcmVvZiwgYW5kIAp3ZW50IGZvcnRoIGFnYWluc3QgdGhlIGxhd2Z1bCBydWxlcnMgb2YgdGhlIGVhcnRoLCAKYW5kIG92ZXJ0aHJldyB0aGVtLCB0b2dldGhlciB3aXRoIHRoZSBtaWdodHkgCmhpZ2ggcHJpZXN0LCB3aG8gZm9yIG1hbnkgZ2VuZXJhdGlvbnMgaGFkIGNvbS0gCm1hbmRlZCB0aGUgZmVhciBhbmQgdmVuZXJhdGlvbiBvZiBtZW4uIAoKNiAKQW5kIGxvIHRoaXMgbWFuIHdlbnQgaW50byB0aGUgbGFuZCBvZiBFZ3lwdCwgCndpdGggbWFueSBzaGlwcyBhbmQgYSBtaWdodHkgYXJteSA7IGFuZCBoYXYtIAppbmcgY29ucXVlcmVkIHRoZSBpbmhhYml0YW50cyB0aGVyZW9mLCBoZSBwcm8tIAoKCgpDaGFwLiBJSUkuIOKAoiBOQVBPTEVPTi4gU0kgCgpjZWVkZWQgYWdhaW5zdCBQYWxlc3RpbmUsIGFuZCB0aHJlYXRlbmVkIHRoZSAKY2l0eSBvZiBKZXJ1c2FsZW0uIAoKNyAKCk8gSmVydXNhbGVtLCBKZXJ1c2FsZW0sIGhvdyBhcmUgdGhlIG1pZ2gtIAp0eSBmYWxsZW4sIGFuZCBob3cgbmVhcmx5IGhhZHN0IHRob3UgYmVlbiBjb24tIApxdWVyZWQsIHlldCAiYSBzZWNvbmQgdGltZSwgYnkgdGhlIGFybSBvZiBhbiAKaW5maWRlbC4gCgo4IAoKQnV0IGJlaG9sZCB0aGUgcHJvZ3Jlc3Mgb2YgdGhpcyBtYW4sIGluIHRoZSAKbGFuZCBvZiBFZ3lwdCwgd2FzIHN0b3BwZWQgYnkgYSBjYXB0YWluIG9mIHRoZSAKbmF2eSBvZiBnb29kIEtpbmcgQWxiYW51cywgdGhlIEtpbmcgb2YgdGhlIApBbGJpb25zLCB0aGUgaGlzdG9yeSBvZiB3aG9tIGlzIGhlcmVpbiBhZnRlciAKd3JpdHRlbi4gCgo5LiAKCk5vdywgdGhpcyBtYW4gTmFwb2xlb24sIGFmdGVyIHNvam91cm5pbmcgCmZvciBtYW55IGRheXMgaW4gdGhlIGxhbmQgb2YgRWd5cHQsIHN1ZGRlbmx5IAp0b29rIGhpcyBkZXBhcnR1cmUgZnJvbSB0aGVuY2UsIGFuZCByZXR1cm5lZCAKdW50byB0aGUgY291bnRyeSBvZiB0aGUgR2F1bHMsIGFuZCBvdmVydGhyZXcgCmxpa2UgYSB3aGlybHdpbmQgdGhlIHJ1bGVycyB0aGVyZW9mLCBhbmQgcHV0IGhpbS0gCnNlbGYgYXQgdGhlIGhlYWQgb2YgdGhlIGFybWllcyBvZiB0aGUgbXVsdGl0dWRlLCAKYW5kIGRlY2xhcmVkIGhpbXNlbGYgdG8gYmUgdGhlIGdvdmVybm9yIG9mIHRoZSAKbmF0aW9uLCB3aGljaCBoZSBiZWdhbiB0byBydWxlIHdpdGggYSByb2Qgb2YgCmlyb24uIAoKMTAuIAoKQW5kIHRoaXMgbWFuIGJlaW5nIGEgbWlnaHR5IG1hbiBvZiB3YXIsIAoKCgouICpKIFQqIGkgJyA+IGoiIOKWoCByICcgViFqICogCgoKCjIyIE5BUE9MRU9OLiBDaGFwLiBJSUkuIAoKYW5kIGEgZ3JlYXQgY2FwdGFpbiwgcHV0IGhpbXNlbGYgYXQgdGhlIGhlYWQgb2YgCnRoZSBob3N0cyBvZiB0aGUgR2F1bHMsIGFuZCB0aGlyc3RlZCBmb3IgZ2xvcnksIApkb21pbmlvbiwgYW5kIHBvd2VyLiAKCjExLiAKCkFuZCBoZSB3YWdlZCB3YXIgYWdhaW5zdCB0aGUgc3Vycm91bmQtIAppbmcgbmF0aW9ucywgYW5kIG92ZXJ0aHJldyBvbmUgcGVvcGxlIGFmdGVyIAphbm90aGVyLiAKCjEyLiAKCkFuZCBoaXMgaG9zdHMgd2VyZSBpbiBudW1iZXIgbGlrZSB1bnRvIHRoZSAKc2FuZHMgb2YgdGhlIHNlYSwgYW5kIGluIHBvd2VyIHRvIHRoZSB0aHVuZGVycyAKb2YgdGhlIHNraWVzIDsgZm9yIGhpcyBkZWVkcyByZXNlbWJsZWQgaW4gcXVpY2stIApuZXNzIHRoZSBsaWdodG5pbmcgb2YgaGVhdmVuLCBhbmQgaW4gbWlnaHQgdGhleSAKd2VyZSBsaWtlbmVkIHVudG8gdGhlIHRodW5kZXJib2x0cyB0aGVyZW9mLiAKCjEzLiAKCkFuZCBsbywgdGhlIHBlb3BsZSBvZiBHYXVsIGZvcmdvdCB0aGVpciBmb3ItIAptZXIgaWRvbCwgd2hpY2ggaXMgZGVzY3JpYmVkIGluIHRoZSBiZWdpbm5pbmcgCm9mIHRoaXMgYm9vaywgYW5kIGZlbGwgZG93biBhbmQgd29yc2hpcHBlZCB0aGlzIApzdHJhbmdlIGFuZCBuZXcgaWRvbCwgdGhlIG5hdHVyZSB3aGVyZW9mIGRpZi0gCmZlcmVkIGZyb20gdGhlIGZvcm1lciBpbiBtYW5uZXIgYW5kIGluIGtpbmQuIAoKMTQuIAoKRm9yIHVwb24gdGhlIGNyb3duIG9mIHRoaXMgaWRvbCwgd2hpY2ggYmUtIAppbmcgYSBtYW4sIHdhcyBhbHRvZ2V0aGVyIGFmdGVyIHRoZSBsaWtlbmVzcyAKdGhlcmVvZiwgdGhlcmUgd2VyZSB3cml0dGVuIERvbWluaW9uLCBQcmluLSAKY2lwYWxpdGllcywgYW5kIFBvd2VyOyBhbmQgdW5kZXIgdGhlIApjcm93biwgd2hpY2ggd2FzIGFuIGlyb24gY3Jvd24sIGFuZCBvbiB0aGUgCgoKCkNoYXAuIElJSS4gTkFQT0xFT04uIDIzIAoKZm9yZWhlYWQgb2YgdGhlIG1hbiB0aGVyZSB3YXMgd3JpdHRlbiBBbWJpLSAKdGlvbiA7IGFuZCBvbiBoaXMgYnJlYXN0cGxhdGUgdGhlcmUgd2VyZSBhbHNvIAp3cml0dGVuLCBDb3Vuc2VsLCBQcm9tcHRpdHVkZSwgYW5kIERlLSAKY2VpdC4gCgoxNS4gCgpBbmQgdGhlIG1hbiBOYXBvbGVvbiBoZWxkIGluIGhpcyByaWdodCAKaGFuZCBhIHN3b3JkIG9mIHN0ZWVsLCB3aGVyZW9uIHdlcmUgZW5ncmF2ZW4gCkRlYXRoLCBWaWN0b3J5LCBhbmQgQ29ucXVlc3QsIGFuZCBpbiBoaXMgCmxlZnQgYSByb2xsIG9mIHBhcmNobWVudCwgYW5kIGluIHRoZSByb2xsIHdhcyAKd3JpdHRlbiB0aGUgRG9taW5pb24gb2YgdGhlIFdvcmxkLCBhbmQgdW4tIApkZXIgdGhlIHNhbWUgdGhlIG5hbWVzIG9mIHRoZSBuYXRpb25zIHdoaWNoIApoZSBoYWQgY29ucXVlcmVkLCB5ZWEgYWxsIHBlb3BsZSB3aXRoaW4gdGgkIApyZWFjaCBvZiBoaXMgcG93ZXIuIAoKMTYuIAoKQW5kIG9uIHRoZSBzYW5kYWwgb2YgaGlzIHJpZ2h0IGZvb3QgdGhlcmUgd2FzIAplbmdyYXZlbiwgaW4gbGV0dGVycyBvZiBicmFzcywgT3BwcmVzc2lvbiwgYW5kIApvbiB0aGF0IG9mIGhpcyBsZWZ0LCBTbGF2ZXJ5LiAKCjE3LiAKQW5kIGhpcyB0aHJvbmUsIHdoaWNoIHJlYWNoZWQgdW50byB0aGUgCgpjbG91ZHMsIHdhcyByYWlzZWQgb24gdGhlIGJhY2tzIG9mIGZhbGxlbiBuYXRpb25zLCAKb25jZSBncmVhdCBhbmQgZ2xvcmlvdXMsIGJ1dCBub3cgcHJvc3RyYXRlIGFuZCAKaHVtYmxlZCBpbiB0aGUgZHVzdC4gCgoxOC4gCkZvciBoZSBoYWQgb3ZlcnRocm93biwgbGlrZSBhIHdoaXJsd2luZCwgCmFuZCBpbiB0aGUgdHdpbmtsaW5nIG9mIGFuIGV5ZSwgdGhlIGFybWllcyBvZiAKCgoKMjQgTkFQT0xFT04uIENoYXAuIElJSS4gCgptYW55IG9mIHRoZSBraW5ncyBhbmQgcnVsZXJzIG9mIHRoZSBuYXRpb25zIG9mIAp0aGUgZWFydGggOyBiZWNhdXNlIHRoZXkgaGFkIGJlY29tZSB2aWxlIGFuZCAKcG9sbHV0ZWQgaW4gYWxsIG1hbm5lciBvZiBzaW5mdWwgY29ycnVwdGlvbiwgYW5kIAp3b3VsZCBub3QgYmUgd2FybmVkIGJ5IHRoZSB2b2ljZSBvZiB3aXNkb20sIAphbmQgY29tYmluZSBmaXJtbHkgdG9nZXRoZXIsIG5vciBiZSB0cnVlIGFuZCAKZmFpdGhmdWwgb25lIHRvIGFub3RoZXIgOyBidXQgbGlzdGVuZWQgdG8gdGhlIHN1Zy0gCmdlc3Rpb25zIG9mIHRoZSBldmlsIHNwaXJpdCBhbmQgb2YgdGhlIGlkb2wsIHdoaWNoIApoYWQgZGFya2VuZWQgdGhlaXIgdW5kZXJzdGFuZGluZ3MsIGFuZCBwcmUtIApwYXJlZCB0aGVtIGZvciBkb3duZmFsIGFuZCBydWluLiAKCjE5LiAKCk5vdywgdGhlIHN3YXkgb2YgdGhpcyBtYW4gcGVydmFkZWQgbWFueSAKbGFuZHMsIGFuZCBtYW55IG9mIHRoZSBraW5ncyBhbmQgcHJpbmNlcyBvZiB0aGUgCmVhcnRoIHdlcmUgbWFkZSB0cmlidXRhcnkgdG8gaGltLCBhbmQgdGhlIG5hLSAKdGlvbnMgdGhlcmVvZiBncm9hbmVkIHVuZGVyIGhpcyBmZWV0LiAKCjIwLiAKCkFuZCBoZSBub3cgY29tcGVsbGVkIHRoZSB0aWxsZXJzIG9mIHRoZSAKZ3JvdW5kLCBhbmQgdGhlIGxhYm91cmVycyB0aGVyZW9mLCBhbmQgdGhlIGh1cy0gCmJhbmRtZW4sIGFuZCBoYW5kaWNyYWZ0bWVuLCB3aG8sIHVuZGVyIHRoZSAKZmlyc3QgaWRvbCwgaGFkIG1ldCB0b2dldGhlciB0byBjb21tdW5lIGNvbi0gCmNlcm5pbmcgc3VwZXJpb3JpdGllcyBhbmQgcG93ZXJzLCBhbmQgdG8gbWFrZSAKbGF3cyB1bnRvIHRoZW1zZWx2ZXMsIHRvIGxlYXZlIHRoZWlyIHBlYWNlZnVsIApob21lcywgdGhlaXIgd2l2ZXMsIGNoaWxkcmVuLCBhbmQga2luZHJlZCwgYW5kIAp0aGVpciBsYXdmdWwgb2NjdXBhdGlvbnMsIGFuZCB0byBnbyBpbnRvIGRpc3RhbnQgCmxhbmRzLCBhbmQgdGhlcmUgZW5kdXJlIGNvbGQgYW5kIGh1bmdlciwgYW5kIApzdWZmZXIgbG9uZyBtYXJjaGVzLCBhbmQgbWl4IGluIGRpcmVmdWwgYW5kIAoKCgpDaGFwLiBJSUkuIE5BUE9JL0VPTi4gMjUgCgpibG9vZHkgYmF0dGxlcywgYWxsIHRvIGZpbGwgdXAgdGhlIG1lYXN1cmUgb2YgdGhpcyAKbWFuJ3MgYm91bmRsZXNzIGFtYml0aW9uLiAKCjIxIAoKQW5kIGl0IHBsZWFzZWQgdGhlIExvcmQsIGFzIGEgcHVuaXNoLSAKbWVudCBmb3IgdGhlIHdpY2tlZG5lc3MgYW5kIHBlcnZlcnNlbmVzcyBvZiAKdGhlIHBlb3BsZSwgdG8gZGVsaXZlciBpbnRvIHRoZSBoYW5kcyBvZiB0aGlzIG1hbiAKdGhlIGRvbWluaW9uIG92ZXIgbWFueSBsYW5kcywgdGhhdCB0aGV5IG1pZ2h0IApiZSBydWxlZCBhcyB3aXRoIGEgcm9kIG9mIGlyb24sIGFuZCBjaGFzdGVuZWQgZm9yIAp0aGUgaW5pcXVpdHkgYW5kIHdpY2tlZG5lc3Mgb2YgdGhlaXIgd2F5cywgYW5kIApicm91Z2h0IGJhY2sgZnJvbSB0aGUgcGF0aHMgb2Ygc2luIGFuZCBsaWNlbi0gCnRpb3VzbmVzcywgYW5kIHRoZSBpZG9sYXRyeSBvZiB0aGUgYmVhc3QsIHRvIHRob3NlIApvZiBqdXN0aWNlLCBtb2RlcmF0aW9uLCBhbmQgdHJ1dGgsIGFuZCB0aGUgZmVhciAKb2YgdGhlIG9ubHkgdHJ1ZSBhbmQgbGl2aW5nIEdvZC4gCgoyMiAKCkFuZCB0aGUgcGVvcGxlIG9mIHRoZSBsYW5kIG9mIEdhdWwsIGFuZCBhbGwgCnRoZSBuYXRpb25zIHdob20gaXQgaGFkIHBsZWFzZWQgdGhlIExvcmQgdG8gCmRlbGl2ZXIgaW50byB0aGUgaGFuZHMgb2YgdGhpcyBzdHJhbmdlIG1hbiwgCmdyb2FuZWQgaGVhdmlseSwgYW5kIGNyaWVkIHVudG8gdGhlIExvcmQgaW4gCnRoZWlyIGhlYXJ0cyBmb3IgZnJlZWRvbSwgZm9yZ2l2ZW5lc3MsIGFuZCBtZXItIApjeS4gCgoyMyAKCkJ1dCBoYXZpbmcgZm9yZ290IGFuZCBkZXNwaXNlZCB0aGUgTG9yZCAKdGhlaXIgR29kLCBpbiB0aGUgcHJpZGUgYW5kIHdpY2tlZG5lc3Mgb2YgdGhlaXIgCgpzIAoKCgoyNiBOQVBPTEVPTi4gQ2hhcC4gSVYuIAoKaGVhcnRzLCBoZSBsZWZ0IHRoZW0gdG8gcmVhcCB0aGUgZnJ1aXRzIG9mIHRoZWlyIApldmlsIHdheXMsIGFuZCBmb3IgYSBzZWFzb24gbGlzdGVuZWQgbm90IHVudG8gCnRoZW0gaW4gdGhlaXIgc3VmZmVyaW5ncyBhbmQgZGlzdHJlc3MuIAoKMjQgCk5vdywgYmVob2xkLCBhbGwgdGhlIG5hdGlvbnMgd2l0aGluIHRoZSAKcmVhY2ggb2YgdGhpcyBtYW4gTmFwb2xlb24sIGdyb2FuZWQgdW5kZXIgdGhlIApkb21pbmlvbiBvZiBoaXMgcG93ZXIsIGFuZCB3ZXJlIHNvcmUgYWZmbGljdGVkIAppbiBtaW5kLCBib2R5LCBhbmQgZXN0YXRlLCBmb3IgaGUgcnVsZWQgb3ZlciAKdGhlbSB3aXRoIGEgc2NlcHRyZSBvZiBpcm9uLiAKCgoKQ0hBUC4gSVYuIAoKQ2hhcmFjdGVyIG9mIE5hcG9sZW9uLiAKClRoZSB3aXNlIG1hbiBpbiBzY3JpcHR1cmUgaGF0aCBzYWlkLCB0aGF0IAoiIHRoZSBmZWFyIG9mIHRoZSBMb3JkIGlzIHRoZSBiZWdpbm5pbmcgb2Yga25vdy0gCmxlZGdlIDsiIGJ1dCBpdCBpcyBtb3Jlb3ZlaiB0aGUgdmVyeSBwZXJmZWN0aW9uIAphbmQgY29uc3VtbWF0aW9uIG9mIHdpc2RvbS4gCgoyIAoKVHJ1ZSwgTyBOYXBvbGVvbiwgdGh5IHBlcmNlcHRpb25zIGFyZSAKcXVpY2ssIHRoeSBwcm9tcHRpdHVkZSBhbmQgZXhlY3V0aW9uIGdyZWF0LCAKdGh5IGRlY2VpdCBhbmQgZWZmcm9udGVyeSB1bmV4YW1wbGVkLCBhbmQgdGh5IAoKCgpDaGFwLiBJVi4gTkFQT0xFT04uIDI3IAoKc2tpbGwgYW5kIGNvdXJhZ2UgaW4gd2FyIHVuZGVuaWFibGUgOyBidXQgdGhvdSAKaGFzdCBmYWlsZWQgaW4gZ2l2aW5nIHByb29mcyBvZiB0aGF0IHNvdW5kbmVzcyAKYW5kIHNvbGlkaXR5IG9mIGp1ZGdtZW50LCB0aGF0IGdyZWF0bmVzcywgZ29vZC0gCm5lc3MsIGFuZCBub2JsZW5lc3Mgb2YgbWluZCwgd2hpY2ggYXJlIHRoZSBwZS0gCmN1bGlhciBhdHRyaWJ1dGVzIG9mIHRydWUgd2lzZG9tIGFuZCBnZW51aW5lIApkaWduaXR5LiAKCjMgCgpIZW5jZSwgdGhvdSBoYXN0IGRhenpsZWQgbWFua2luZCBieSB0aGUgCmJyaWxsaWFuY3kgb2YgdGh5IGRlZWRzLCBhbmQgYnkgcmVhcmluZyBvbiBhIApzdWRkZW4sIGEgdmFzdCBhbmQgc3BsZW5kaWQgZmFicmljIDsgYnV0IGl0cyAKZm91bmRhdGlvbiBpcyBvbiB0aGUgc2FuZHkgYmFzaXMgb2YgZm9yY2UgYW5kIAp0ZXJyb3IsIGFuZCB3aGVuIHRoZSByZWFzb24sIGNvdXJhZ2UsIGFuZCByZS0gCmZsZWN0aW9uIG9mIHRoZSBuYXRpb25zIHRob3UgaGFzdCBjb25xdWVyZWQsIHNoYWxsIAplbWVyZ2UgZnJvbSB0aGUgdmVpbCB0aG91IGhhc3QgY2FzdCBvdmVyIHRoZW0sIAp0aGUgZm91bmRhdGlvbiBvZiB0aGUgZmFicmljIHRob3UgaGFzdCByYWlzZWQgc2hhbGwgCmJlIHVuZGVybWluZWQsIGFuZCBzd2VwdCBhd2F5IGJ5IHRoZSByZXR1cm4tIAppbmcgY3VycmVudCBvZiByYXRpb25hbCBhbmQgcmVnZW5lcmF0ZWQgbGliZXJ0eS4gCgo0IAoKV2hlcmVhcywgaGFkc3QgdGhvdSBiZWVuIGEgbWFuIG9mIGdyZWF0IHdpcy0gCmRvbSBhbmQgb2Ygc291bmQgdW5kZXJzdGFuZGluZywgdGhvdSBtaWdodGVzdCAKaGF2ZSBlcmVjdGVkIHVwb24gdGhlIHJvY2sgb2YgZ2VudWluZSBmcmVlZG9tLCAKYSBncmVhdCBlZGlmaWNlIG9mIHNvbGlkIGRpbWVuc2lvbnMsIHdoaWNoIHdhcyBub3QgCmxpa2VseSB0byBoYXZlIGJlZW4gbW92ZWQgZnJvbSBpdHMgZm91bmRhdGlvbiwgYW5kIAp3aGljaCB0aG91IGFuZCB0aHkgZGVzY2VuZGFudHMgbWlnaHQgaGF2ZSBpbi0uIAoKYiAyIAoKCgoyOCBOQVBPTEVPTi4gQ2hhcC4gSVYuIAoKaGFiaXRlZCBpbiBwZWFjZSBhbmQgZ2xhZG5lc3MgZm9yIG1hbnkgZ2VuZS0gCnJhdGlvbnMuIAoKNSAKCkJ1dCB0aG91IGFydCB0aGUgY2hpbGQgb2YgYSBib3VuZGxlc3MgYW1iaS0gCnRpb24sIGFuZCB0aGUgc3BvcnQgb2YgYW4gdW5nb3Zlcm5hYmxlIHBhc3Npb24sIAp3aGljaCBodXJyaWV0aCB0aGUgaW5oZXJpdG9yIHRoZXJlb2YgdG8gcnVpbiBhbmQgCmRlc3RydWN0aW9uLiAKCjYgCgpBcyB0aG91IGhhc3Qgbm90IGdpdmVuIHByb29mcyBvZiBzb3VuZCBhbmQgCnNvbGlkIGp1ZGdtZW50IGFuZCB1bmRlcnN0YW5kaW5nIGluIHRoZSB0aGluZ3MgCnRob3UgaGFzdCBkb25lLCBuZWl0aGVyIGhhc3QgdGhvdSBkaXNwbGF5ZWQgYW55IApvZiB0aG9zZSBub2JsZSBxdWFsaXRpZXMgb2YgdGhlIGhlYXJ0LCB3aGljaCBkaXMtIAp0aW5ndWlzaGVkIHRoZSBicmF2ZSB3YXJyaW9ycyBhbmQgZ3JlYXQgY29uLSAKcXVlcm9ycyBvZiBhbmNpZW50IHRpbWVzLiAKCjcgClRob3UgYXJ0IG9mIGhhc3R5IGFuZCBmaWVyeSB0ZW1wZXIsIGNydWVsIAphbmQgdmluZGljdGl2ZSwgaW5zb2xlbnQsIG5vdCBjb21wYXNzaW9uYXRlLCB0by0gCndhcmRzIGEgY29ucXVlcmVkIGZvZS4gCgo4IApUaHkgaGlzdG9yeSBkb3RoIG5vdCBzYXksIHRoYXQgdGhvdSBoYXN0IGV2ZXIgCmNvbnNvbGVkIHRoZSB1bmZvcnR1bmF0ZSwgZHJpZWQgdXAgdGhlIHRlYXIgb2YgCnNvcnJvdywgb3IgbWFkZSB0aGUgbW91cm5mdWwgZXllIHRvIHNwYXJrbGUgCndpdGggZ2xhZG5lc3MuIAoKOSAKTW9yZW92ZXIsIHdlbGwgaGFzIGl0IGJlZW4gZm9yIHRoZWUsIHRoYXQsIGluIAoKCgpDaGFwLiBJVi4gTkFQT0xFT04uIDI5IAoKdGhlIHRpbWVzIGluIHdoaWNoIHRob3UgaGFzdCBsaXZlZCwgZmV3IG9mIHRoZSAKa2luZ3Mgb24gdGhlIHRocm9uZXMgb2YgdGhlIHN1cnJvdW5kaW5nIG5hdGlvbnMgCmhhdmUgcG9zc2Vzc2VkIHRoZSB0YWxlbnRzLCBvciBpbmhlcml0ZWQgdGhlIG1hci0gCnRpYWwgZmlyZSBhbmQgZGFyaW5nIHNwaXJpdHMgb2YgdGhlaXIgYW5jZXN0b3JzLiAKCjEwIAoKTm9yIGhhc3QgdGhvdSBiZWVuIGxlc3MgcmVtYXJrYWJsZSBmb3IgdGhlIApudW1lcm91cyB2aWN0b3JpZXMgdGhvdSBoYXN0IGdhaW5lZCwgdGgmbiBmb3IgCnRoZSBjb25zZXF1ZW5jZXMgdGh5IGFydCBhbmQgY3VubmluZyBoYXZlIGVuLSAKYWJsZWQgdGhlZSB0byBkZXJpdmUgZnJvbSB0aGVtLiAKCjExIAoKTmVpdGhlciwgTyBOYXBvbGVvbiwgdGhvdSAnc3RyYW5nZSBhbmQgCndpY2tlZCBtYW4sIGFydCB0aG91IG9mIGFueSBtYW5uZXIgb2YgcmVsaWdpb24gOiAKYnV0IGNvbnRyYXJpd2lzZSwgYW4gaW5maWRlbCwgc2NvZmZlciwgYW5kIGJsYXMtIApwaGVtZXIuIAoKMTIgCgpEaWRzdCBub3QgdGhvdSBjb21tZW5jZSB0aGUgY2FyZWVyIG9mIHRoeSAKZGVwcmF2aXR5LCBieSBibGFzcGhlbW91c2x5IGRlY2xhcmluZyB0aHlzZWxmLCAKaW4gY29tbW9uIHdpdGggdGhlIEdhdWxzLCBhbiB1bmJlbGlldmVyIGluIHRoZSAKb25seSB0cnVlIGFuZCBsaXZpbmcgR29kLCBhbmQgaW4gdGhlIGltbW9ydGFsaS0gCnR5IG9mIHRoZSBzb3VsID8gCgoxMyAKClRoZXJlYWZ0ZXIsIGF0IFJvbWUsIGRpZHN0IHBvdCB0amlvdSBpbXBpb3VzLSAKbHkgc3dlYXIgb24gdGhlIEhvbHkgRXZhbmdlbGlzdHMsIGFuZCBib3cgdGhlIAprbmVlIHRvIEplc3VzIG9mIE5hemFyZXRoLCB0aGUgU2F2aW91ciBvZiB0aGUgCgpiIDMgCgoKCjMwIE5BUE9MRU9OLiBDaGFwLiBJVi4gCgpXb3JsZCwgaW4gd2hvbSB0aG91IGh5cG9jcml0aWNhbGx5IHByb2Zlc3NlZHN0IAp0aHlzZWxmIHRvIGJlIGEgc2luY2VyZSBCZWxpZXZlciA/IAoKMTQgCkluIHRoZSBIb2x5IExhbmQsIGFnYWluLCBuYXkgYWxtb3N0IGluIHRoZSAKdmVyeSBwcmVjaW5jdHMgb2YgSmVydXNhbGVtLCBhbmQgaW4gdGhlIHBsYWNlcyAKd2hlcmUgdGhlIFNhdmlvdXIgdGF1Z2h0IGFuZCBzdWZmZXJlZCwgZGlkc3QgCm5vdCB0aG91IGtpc3MgdGhlIEtvcmFuLCBhbmQgZGVjbGFyZSBNYWhvbWV0IAp0byBiZSB0aGUgb25seSB0cmlmZSBQcm9waGV0IG9mIEdvZCA/IAoKMTUgCldoaWxzdCB0aGVzZSB0aGluZ3Mgd2VyZSBkb2luZywgTyBIZWF2ZW5zLCAKd2hlcmUgd2VyZSB0aHkgdGh1bmRlcnMgPyAKCjE2IApFYXJ0aCwgaG93IGNhbWUgaXQgdGhhdCB0aG91IGRpZHN0IG5vdCBvcGVuIAp0aHkgamF3cywgYW5kIHN3YWxsb3cgaGltIHVwID8gCgoxNyAKClllIHJvY2tzIGFuZCB5ZSBtb3VudGFpbnMsIHdoeSBkaWQgbm90IAp5ZSBmYWxsIHVwb24gYW5kIG92ZXJ3aGVsbSBoaW0gPyAKCjE4IAoKV2FzIGl0IGJlY2F1c2UgdGhlIHdheXMgb2YgUHJvdmlkZW5jZSB3ZXJlIApub3QgZnVsZmlsbGVkIHdpdGggdGhpcyBtYW4gb24gRWFydGgsIGFuZCB0aGF0IApoZSBtaWdodCBiZSByZXNlcnZlZCBhcyBhbiBpbnN0cnVtZW50IG9mIHB1LSAKbmlzaG1lbnQgZm9yIHRoZSB3aWNrZWRuZXNzIG9mIHRob3NlIG5hdGlvbnMgCndobyBzaG91bGQgaGF2ZSB0aGUgaW1waWV0eSB0byBlbmxpc3QgYW5kIAptYXJzaGFsIHRoZW1zZWx2ZXMgdW5kZXIgdGhlIGJhbm5lcnMgb2YgYW4gCkluZmlkZWwsIFNjb2ZmZXIsIGFuZCBCbGFzcGhlbWVyID8gCgoKCkNoYXAuIElWLiBOQVBPTEVPTi4gMzEgCgoxOSAKVGhhdCBoZSBtaWdodCBjYXJyeSBpbnRvIHRoZSBzZXZlcmFsIGxhbmRzIApvZiB0aG9zZSB3aG8gd2VyZSBzZWR1Y2VkIGJ5IGhpcyBjdW5uaW5nIGRlLSAKY2VpdHMsIGFuZCB3aG8gd2VyZSBsaWtlIHVudG8gaGltc2VsZiBpbXBpb3VzIAphbmQgcHJvZmFuZSwgZmlyZSBhbmQgc3dvcmQsIG11cmRlciwgZmFtaW5lLCAKcGVzdGlsZW5jZSBhbmQgZGl2ZXJzIGV2aWxzIGFuZCBkaXNlYXNlcyA/IAoKMjAgCiwgQXMgdGh5IGRheXMsIE8gTmFwb2xlb24sIGFyZSBmdWxsIG9mIGV2aWwgCmRvaW5ncywgc28gaW4gbGlrZSBtYW5uZXIuIGFyZSB0aGV5IGZ1bGwgb2Ygd29uLSAKZGVycyA7IGJ1dCB0aHkgZGF5cyBhcmUgcXVpY2tseSBwYXNzaW5nIGF3YXksIAphbmQgdGhlIGhhbmQgb2YgZGVhdGggaXMgc3RyZXRjaGluZyBpdHNlbGYgZm9ydGggCmFwYWNlIHRvd2FyZHMgdGhlZSwgYW5kIGF0IGl0cyBzYWJsZSB0b3VjaCwgdGh5IAp0dXJidWxlbnQgYW5kIGZpZXJ5IGNsYXkgc2hhbGwgbW91bGRlciBpbnRvIApjb2xkIGFuZCBzaWxlbnQgZHVzdC4gCgoyMSAKQXMgZm9yIHRoeSBzb3VsLCBpdCBpcyBpbiB0aGUgaGFuZCBvZiBhIEdyZWF0IAphbmQgSnVzdCBHb2QsIHRoZSBnaXZlciB0aGVyZW9mLCBub3IgZGFyZSBtb3ItIAp0YWwgc2NhbiBpdHMgZmluYWwgZG9vbS4gCgoyMiAKTmV2ZXJ0aGVsZXNzLCBoaXN0b3J5IHdpbGwgYmUgZnVsbCBvZiB0aHkgd29uLSAKZGVyLXdvcmtpbmcgZGF5cyA7IGFuZCBmdXR1cmUgZ2VuZXJhdGlvbnMgc2hhbGwgCm1hcnZlbCBhbmQgc2h1ZGRlciBhdCB0aGUgcmVjaXRhbCBvZiB0aHkgZGFyaW5nLCAKaW1waW91cywgYW5kIGhvcnJpYmxlIGRlZWRzLiAKCgoKTSBOQVBPTEVPTi4gQ2hhcC4gVi4gCgoKCkNIQVAuIFYuIAoKMS4gRGVzY3JpcHRpb24gb2YgdGhlIExhbmQgb2YgQWxiaW9uLCBhbmQgb2YgdGhlIGdvYWQgCgpLaW5nIHRoYXQgcmVpZ25ldGggb3ZlciB0aGUgc2FtZSog4oCUIDIuIEhpcyBUaHJvbmUq4oCUIAoKMy4gRGVzY3JpcHRpb24gYWxzbyBvZiB0aGUgVHJlZSB3aGljaCBoYWQgZ3Jvd24gYW5kIAoKZmxvdXJpc2hlZCBpbiB0aGlzIExhbmQsIGZvciBtYW55IGdlbmVyYXRpb25zLCBhbmQgb2YgCgp0aGUgZ29vZGx5IGZydWl0cyB0aGVyZW9mLiAKCkFuZCBpdCBjYW1lIHRvIHBhc3MgaW4gdGhvc2UgZGF5cywgdGhhdCAKdGhlcmUgd2VyZSBhIHBlb3BsZSB3aG8gZHdlbHQgaW4gYSBsYW5kIGNhbGxlZCAKQWxiaW9uLCB3aGljaCBpcyBhbiBpc2xhbmQgaW4gdGhlIHNlYSwgYW5kIG92ZXItIAphZ2FpbnN0IHRoZSBjb2FzdCBvZiB0aGUgbGFuZCBvZiBHYXVsLiAKCjIgCgpBbmQgbG8sIGFuZCBiZWhvbGQsIGRlZXAgYW5kIG1pZ2h0eSB3YXRlcnMgCmVuY29tcGFzcyB0aGUgbGFuZCBvZiBBbGJpb24gYXMgd2l0aCBhIHNoaWVsZCwgCmFuZCB0aGUgcGVvcGxlIHdobyBkd2VsbCB0aGVyZWluLiAKCjMgCgpOb3cgaXQgaGFkIHBsZWFzZWQgdGhlIExvcmQsIG5vdCB0byBkZWxpdmVyIAoKdGhpcyBwZW9wbGUgaW50byB0aGUgaGFuZHMgb2YgdGhlIEdhdWxzLCBub3IgdG8gCgpwdXQgdGhlbSB1bmRlciB0aGUgeW9rZSBvZiB0aGUgdHlyYW50IG9mIHRoZSAKCmVhcnRoLiAKCjQgCkFuZCBvdmVyIHRoaXMgcGVvcGxlIHRoZXJlIGhhZCByZWlnbmVkIGZvciAKCm1hbnkgZGF5cyBhbmQgeWVhcnMgYSBnb29kIGtpbmcsIHdobyBmZWFyZWQgCgoKCkNoYXAuIFYuIE5BUE9MRU9OLiAzMyAKCnRoZSBMb3JkIGFuZCBrZXB0IGhpcyBjb21tYW5kbWVudHMsIGFuZCAKd2hvIHdhbGtlZCB1cHJpZ2h0bHkgYmVmb3JlIHRoZSBMb3JkIGhpcyBHb2QuIAoKNSAKQW5kIGl0IGhhZCBwbGVhc2VkIHRoZSBMb3JkIHRvIGJsZXNzIHRoaXMgCmdvb2Qga2luZywgYW5kIHRoZSBwZW9wbGUgb3ZlciB3aG9tIGhlIGhhZCAKYmVlbiBhcHBvaW50ZWQgdG8gcmVpZ24sIGluIGdlbnRsZW5lc3MgYW5kIAptZXJjeS4gCgo2IApBbmQgdGhlIExvcmQgaGFkIGdpdmVuIHVudG8gaGltIG1hbnkgc29ucyAKYW5kIGRhdWdodGVycywgYW5kIGEgdmFsaWFudCwgbG92aW5nLCBhbmQgZmFpdGgtIApmdWwgcGVvcGxlLiAKCjcgCgoqIAoKQW5kIHRoZSBwZW9wbGUgbmV2ZXIgY2Vhc2VkIHNob3V0aW5nIGFsb3VkIAphbGwgZGF5IGxvbmcsICIgTyBraW5nLCBsaXZlIGZvciBldmVyICEiIAoKOCAKQW5kIHRoaXMgZ29vZCBraW5nIHdhcyBjYWxsZWQgQWxiYW51cywgCndoaWNoIHdhcyBhbHNvIHRoZSBuYW1lIG9mIGhpcyBmb3JlZmF0aGVycywgd2hvIApoYWQgcmVpZ25lZCBpbiB0aGUgb2xkIHRpbWVzIGJlZm9yZSBoaW0uIAoKOSAKQW5kIGJlaG9sZCBvbiB0aGUgY3Jvd24gb2YgdGhlIGtpbmcsIHdoaWNoIAp3YXMgYSBnb2xkZW4gY3Jvd24sIGFuZCBzZXQgcm91bmQgd2l0aCBwcmUtIApjaW91cyBzdG9uZXMsIHRoZXJlIHdlcmUgd3JpdHRlbiwgTW9kZXJhdGlvbiAKYW5kIE1lcmN5LiAKCjEwIApKdXN0aWNlIGFuZCBUcnV0aCBzaG9uZSBpbiBoaXMgY291bnRlLSAKCgoKMzQgTkFQT0xFT04uIENoYXAuIFYuIAoKbmFuY2UgOyBhbmQgZnJvbSBoaXMgaGVhcnQgcHJvY2VlZGVkIFJlbGlnaW9uLCAKUGlldHksIGFuZCBEZXZvdGlvbi4gCgoxMSAKCkluIGhpcyByaWdodCBoYW5kIGhlIGhlbGQgYSBzd29yZCwgd2hlcmVvbiAKd2FzIHdyaXR0ZW4gRGVmZW5jZSwgYW5kIGluIGhpcyBsZWZ0IGhhbmQgCmhlIGhlbGQgYSB0cmlkZW50LCB3aGVyZW9uIHdlcmUgZW5ncmF2ZW4gaW4gbGV0LSAKdGVycyBvZiBHb2xkLCB0aGVzZSB3b3JkcywgIiBUaGUgRG9taW5pb24gCmNjIG9mIHRoZSBTZWEgOyIgZm9yIGl0IGhhZCBwbGVhc2VkIHRoZSBMb3JkIAp0byBjb21taXQgdW50byBoaW0gdGhlIFNvdmVyZWlnbnR5IG9mIHRoZSAKb2NlYW4uIAoKMTIgCgpBbmQgdW5kZXIgaGlzIHRocm9uZSB0aGVyZSB3ZXJlIHR3byBmb290LSAKc3Rvb2xzIGN0ZiBHb2xkLCBhbmQgb24gdGhlIG9uZSBmb290LXN0b29sLCAKdGhlcmUgd2VyZSBlbmdyYXZlbiBGcmVlZG9tIGFuZCBTZWN1LSAKcml0eSwgYW5kIG9uIHRoZSBvdGhlciBXZWFsdGggYW5kIEhhcC0gCnBpbmVzcywgc2lnbmlmeWluZywgdGhhdCB3aGVyZXNvZXZlciB0aGUgcG93ZXIgCmFuZCBEb21pbmlvbiBvZiB0aGlzIGdvb2Qga2luZyBwcmV2YWlsZWQsIHRoZXNlIApibGVzc2luZ3Mgd291bGQgZmFsbCB0byB0aGUgbG90IG9mIHRoZSBoYXBweSAKbGFuZC4gCgoxMy4gCgpBbmQgaW4gdGhlIGxhbmQgb2YgQWxiaW9uLCB0aGVyZSBncmV3IGFuZCAKClYgCgpmbG91cmlzaGVkLCBpbiBwZWFjZSBhbmQgaGFwcGluZXNzLCB0aGF0IFRyZWUsIAp3aGljaCB0aGUgb3RoZXIgbmF0aW9ucyBvZiB0aGUgd29ybGQgaGFkIGJlZW4gCmZvb2xpc2hseSBlbmRlYXZvdXJpbmcgdG8gcGxhbnQgYW5kIHJlYXIsIGFtaWRzdCAKcnVpbiBhbmQgZGVzb2xhdGlvbiwgYW5kIGluIHNlYXMgb2YgYmxvb2QuIAoKCgpDaGFwLiBWLiBOQVBPTEVPTi4gMzUgCgoxNCAKCkFuZCB0aGlzIHRyZWUsIHdoaWNoIHdhcyBvZiB0aGUgbmF0dXJlIG9mIGFuIApvYWssIGhhZCBiZWVuIHBsYW50ZWQgZm9yIG1hbnkgYWdlcywgYW5kIGhhZCAKZml4ZWQgaXRzIHJvb3QgaW4gdGhlIHZlcnkgY2VudHJlIG9mIHRoZSBsYW5kLiAKCjE1IAoKTm93LCBpdCBoYWQgYmVjb21lIGEgZmFpciwgYmVhdXRpZnVsLCBhbmQgCm1pZ2h0eSB0cmVlLCBhbmQgaXRzIHRydW5rIHdhcyBsaWtlIHVudG8gYSByb2NrLCAKaW4gdGhpY2tuZXNzIGFuZCBzb2xpZGl0eSwgYW5kIGl0cyBicmFuY2hlcywgCndoaWNoIHJlYWNoZWQgZXZlbiB1bnRvIHRoZSBjbG91ZHMsIGV4dGVuZGVkIAp0byB0aGUgcmVtb3Rlc3QgY29ybmVycyBvZiB0aGUgbGFuZC4gCgoxNiAKCkFuZCB0aGUgYmxlc3Npbmcgb2YgR29kIHdhcyB1cG9uIHRoZSB0cmVlLCAKYW5kIHdob3NvZXZlciB0b29rIHNoZWx0ZXIgdW5kZXIgaXRzIGJyYW5jaGVzLCAKYW5kIGl0cyBsZWF2ZXMsIGZvdW5kIHRoZSBzaGFkZSB0aGVyZW9mLCBzYWZlLCAKY29vbCwgYW5kIHBlYWNlZnVsLiAKCjE3IAoKQW5kIHRoZSBzYXAgYW5kIGZydWl0IG9mIHRoZSB0cmVlIHdlcmUgZ29vZCAKYW5kIG5vdXJpc2hpbmcsIGFuZCBub3QgcG9pc29ub3VzIGxpa2UgdW50byB0aGUgCnNhcCBvZiB0aGF0IGV2aWwgdHJlZSwgd2hpY2ggaGFkIGJlZW4gcGxhbnRlZCAKYnkgdGhlIGhhbmRzIG9mIHRoZSB1bmdvZGx5IGluIG90aGVyIGxhbmRzIDsgCmJ1dCB3aGljaCBoYWQgcGVyaXNoZWQgd2l0aCB0aGVpciB3YXlzLiAKCjE4IAoKTm93IHRoZSByb290IG9mIHRoaXMgZmFpciB0cmVlLCB3aGljaCBzdHJ1Y2sgCmRlZXAgaW50byB0aGUgbGFuZCwgd2FzIGNoZXJpc2hlZCBhbmQgZW5yaWNoZWQgCndpdGggdGhlIGJsb29kLCBhbmQgd2FybWVkIHdpdGggdGhlIGFzaGVzIG9mIAoKCgozNiBOQVBPTEVPTi4gQ2hhcC4gVi4gCgp0aGUgYnJhdmUgYW5kIGdvb2QgbWVuLCB0aGUgZm9yZWZhdGhlcnMgb2YgdGhlIApBbGJpb25zLCB3aG8gaGFkIGVpdGhlciBsaXZlZCBpbiBpdHMgc3VwcG9ydCwgb3IgCmRpZWQgaW4gaXRzIGRlZmVuY2UuIAoKMTkgCkFuZCB0aGUgdHJ1bmsgb2YgdGhlIHRyZWUsIHdoaWNoIG1lYW5ldGggCnRoZSBjb25zdGl0dXRpb24gb2YgdGhlIHN0YXRlLCByZXByZXNlbnRldGggdGhlIAp3aG9sZSBuYXRpb24sIG9yIHBlb3BsZSBvZiB0aGUgbGFuZC4gCgoyMCAKQW5kIGZyb20gdGhlIHRydW5rIG9mIHRoZSB0cmVlLCB0aGVyZSBzcHJpbmctIApldGggYW5kIGRpdmVyZ2V0aCBmb3VyIG1pZ2h0eSBicmFuY2hlcy4gCgoyMSAKQW5kIHRoZSBmaXJzdCBicmFuY2ggaXMgY2FsbGVkIHJveWFsLCBiZWNhdXNlIAppdCByZXByZXNlbnRldGggdGhlIGRlc2NlbnQgYW5kIHJhY2Ugb2YgdGhlIGtpbmdzIApvZiB0aGUgbGFuZC4gCgoyMiAKQW5kIHRoZSBzZWNvbmQgaXMgY2FsbGVkIGhvbHksIGJlY2F1c2UgaXQgcmUtIApwcmVzZW50ZXRoIHRoZSBjaHVyY2ggYW5kIHByaWVzdGhvb2Qgb2YgdGhlIApsYW5kLiAKCjIzIArigKIgQW5kIHRoZSB0aGlyZCBpcyBjYWxsZWQgbm9ibGUsIGJlY2F1c2UgaXQgZGUtIApub3RldGggdGhlIGRlc2NlbnQgYW5kIHJhY2Ugb2YgdGhlIG5vYmxlcyBvZiB0aGUgCmxhbmQuIAoKMjQgCkFuZCB0aGUgZm91cnRoIGFuZCBsYXN0IGJyYW5jaCwgZGVub3RldGggdGhlIApyZXByZXNlbnRhdGl2ZXMsIG9yIGNvdW5zZWxsb3JzIG9mIHRoZSBwZW9wbGUuIAoKCgpDaGFwLiBWLiBOQVBPTEVPTi4gMzcgCgoyNSAKCkFuZCBmcm9tIGVhY2ggb2YgdGhlc2UgZm91ciBncmVhdCBicmFuLSAKY2hlcywgdGhlcmUgaXNzdWUgb3RoZXJzLCBhbmQgdGhlIGZydWl0IHdoaWNoIAppcyBwcm9kdWNlZCBieSB0aGUgdHJlZSBpcyBlbWJsZW1hdGljYWwgb2YgcmUtIApsaWdpb24gYW5kIHBpZXR5LCBraW5nbHkgZ3JlYXRuZXNzIGFuZCBnb29kLSAKbmVzcywgbm9ibGVuZXNzIG9mIGJpcnRoIGFuZCBkZWVkLCBmcmVlZG9tLCBvLSAKYmVkaWVuY2UgdG8gdGhlIGxhd3MsIHNlY3VyaXR5LCB3ZWFsdGgsIGFuZCBoYXAtIApwaW5lc3MuIAoKMjYgCgpOb3csIGJlaG9sZCB0aGVzZSBmb3VyIGdyZWF0IGJyYW5jaGVzLCB3aGljaCAKc3ByaW5nIGluIG1hbm5lciBmb3Jlc2FpZCBmcm9tIHRoZSBtYWluIAp0cnVuayBvZiB0aGUgdHJlZSwgYWZ0ZXIgZGl2ZXJnaW5nIGFuZCBzZXBhcmF0aW5nIApmcm9tIGVhY2ggb3RoZXIsIHRvd2FyZHMgdGhlIGVhc3QgYW5kIHdlc3QsIApub3J0aCwgYW5kIHNvdXRoLCBjb21lIGFnYWluIHRvZ2V0aGVyLCBhbmQgYXJlIApyZS11bml0ZWQgd2l0aCBhIGNyb3duLCBtYWRlIG9mIG9haywgb2xpdmUsIApteXJ0bGUsIGFuZCBsYXVyZWwuIAoKMjcgCkFuZCB0aGUgc3VuLWJlYW1zIG9mIGhlYXZlbiwgYW5kIHRoZSBkZXdzIAp0aGVyZW9mLCBhbmQgdGhlIHNwaXJpdHMgb2YgZGVwYXJ0ZWQgcGF0cmlvdHMsIGNoZS0gCnJpc2ggYW5kIG5vdXJpc2ggdGhpcyB0cmVlLCB3aGljaCBpcyBzZWVtbHkgdG8gCmJlaG9sZCwgYW5kIGZhaXIgdG8gbG9vayB1cG9uLiAKCjI4IApOb3csIGFsbCB0aGUgcGVvcGxlIG9mIEFsYmlvbiByZWpvaWNlZCwgYW5kIAp3ZXJlIGV4Y2VlZGluZyBnbGFkIHVuZGVyIHRoZSB0cmVlLCBhcyB0aGVpciAKCgoKMzggTkFQT0xFT04uIENoYXAuIFYuIAoKZm9yZWZhdGhlcnMgaGFkIGJlZW4gaW4gdGhlIG9sZCB0aW1lcyBiZWZvcmUgCnRoZW0gOyBhbmQgbWFueSBwZXJzb25zIGluIGxpa2UgbWFubmVyIGNhbWUgCmZyb20gYWZhciwgYW5kIGZyb20gZGlzdGFudCBsYW5kcywgdG8gdGFrZSBzaGVsLSAKdGVyLCBhbmQgYmUgaGFwcHkgdW5kZXIgdGhpcyBibGVzc2VkIHRyZWUsIGFuZCAKdG8gcGFydGFrZSBvZiB0aGUgZ29vZGx5IGZydWl0cyB0aGVyZW9mLiAKCjI5IApBbmQgYSBsb3VkIGFuZCB3YXJuaW5nIHZvaWNlIHNwYWtlLCBhbmQgc2FpZCwgCiIgTyBwZW9wbGUgb2YgQWxiaW9uLCBiZXdhcmUsIGZvciB3aG9zb2V2ZXIgCnNoYWxsIGFwcGx5IHRoZSBoYXRjaGV0IHRvIHRoZSB0cnVuaywgb3IgbWlnaHR5IApicmFuY2hlcyBvZiB0aGlzIGZhaXIgYW5kIGJlYXV0aWZ1bCB0cmVlLCBzaGFsbCBiZSAKZGVlbWVkIGd1aWx0eSBvZiBwYXJyaWNpZGUuIiAKCjMwIAoiIEZvciB0aGUgc2FwIG9mIHRoZSB0cmVlIGlzIG9mIHRoZSBibG9vZCAKb2YgeW91ciBmYXRoZXJzLCB3aGljaCB3YXMgc2hlZCBpbiB0cmFpbmluZyAKYW5kIGRlZmVuZGluZyBpdCwgYW5kIHdoaWNoIGl0IGltYmliZWQgaW4gaXRzIApncm93dGguJyAnIAoKMzEgCmNjIEFuZCBmcm9tIHRoZSBibGVlZGluZyB3b3VuZHMgd2hpY2ggdGhlIAp1bmhhbGxvd2VkIGhhbmQgbWF5IGluZmxpY3QgdXBvbiB0aGUgdHJlZSwgCnRoZXJlIHNoYWxsIGlzc3VlIGEgcGVzdGlsZW50aWFsIGFuZCBkZXZvdXJpbmcgCmZsYW1lLCB3aGljaCBzaGFsbCBkZXNvbGF0ZSB0aGUgbGFuZCwgYW5kIGNvbi0gCnN1bWUgdGhlIHBlb3BsZSB3aG8gZHdlbGwgdGhlcmVpbi4iIAoKCgpDaGFwLiBWSS4gTkFQT0xFT04uICo5IAoKCgpDSEFQLiBWSS4gCgoxIC4gSG93IHRoZSBwZW9wbGUgb2YgQWxiaW9uIHJlc2lzdGVkIHRoZSB0ZW1wdGF0aW9ucyBvZiAKdGhlIGlkb0zigJQlLiBBcmUgaGF0ZWQgYnkgdGhlIEdhdWxzLCBhbmQgdGhlIHR5cmFudCAKTmFwb2xlb24sIHdobyBwbG90dGV0aCB0aGVpciBkZXN0cnVjdGlvbiwgYW5kIHN3ZWFyLSAKZXRoIHZlbmdlYW5jZSBhZ2FpbnN0IHRoZW0sIGFuZCB0aGVpciBnb29kIGtpbmcgCkFsYiBhbnVzLiAKCk5vdywgaXQgc28gaGFwcGVuZWQsIHRoYXQgYW1vbmdzdCB0aGlzIGhhcC0gCnB5IGFuZCBibGVzc2VkIHBlb3BsZSwgdGhlcmUgaGFkIGJlZW4gZmV3IAp3b3JzaGlwcGVycyBvZiB0aGUgZmlyc3QgaWRvbCBvZiB0aGUgR2F1bHMsIHRoYXQgCndhcyBjYWxsZWQgTGljZW50aW91c25lc3MsIGFuZCB3aGljaCB3YXMgb3Zlci0gCnRocm93biwgYXMgYmVmb3JlIHdyaXR0ZW4sIGJ5IHRoZSBwb3dlciBvZiBOYS0gCnBvbGVvbiwgdGhlIHNlY29uZCBpZG9sIDsgYW5kIGl0IGhhZCBwbGVhc2VkIHRoZSAKTG9yZCB0byBjb252ZXJ0IHRoZSBoZWFydHMgb2YgdGhvc2UgZmV3LCBhbmQgCnRoZXkgcmVwZW50ZWQgdGhlbSBvZiB0aGVpciB3aWNrZWRuZXNzLCBhbmQgCmVzcGllZCB0aGUgZGFuZ2VyIGFuZCBlcnJvciBvZiB0aGVpciBldmlsIHdheXMsIAphbmQgcmVqb2ljZWQgaW4gdGhlaXIgaGVhcnRzLCB0aGF0IHRoZSBjb21pbmcgdG8gCnBhc3Mgb2YgdGhlaXIgZm9vbGlzaCBkcmVhbXMsIGFuZCB2YWluIGltYWdpbmEtIAp0aW9ucywgaGFkIGJlZW4gYXZlcnRlZCBieSB0aGUgaGFuZCBvZiBHb2QgOyAKdGhlcmVmb3JlLCBpdCBzZWVtZWQgZ29vZCB1bnRvIHRoZSBMb3JkLCBub3QgCnRvIGRlbGl2ZXIgdGhpcyBwZW9wbGUgaW50byB0aGUgaGFuZHMgb2YgdGhlaXIgCmVuZW1pZXMuIAoKCgo0MCBOQVBPTEVPTi4gLCBDaGFwLiBWSS4gCgoyIApGb3IgdGhlIGtpbmcgb2YgdGhlIEFsYmlvbnMsIGFuZCBoaXMgY291bi0gCnNlbGxvcnMsIHBlcmNlaXZlZCBmcm9tIHRoZSBiZWdpbm5pbmcgdGhlIGluaXF1aS0gCnR5IGFuZCBkZWZvcm1pdHkgb2YgdGhlIGZpcnN0IGlkb2wsIGFuZCB0aGV5IAp3YXJuZWQgdGhlIEFsYmlvbnMsIGFuZCBhbGwgbmF0aW9ucyB0byBiZXdhcmUgCnRoZXJlb2Y7IGJ1dCB0aGUgZXZpbCBzcGlyaXQsIGhhZCwgYXMgYmVmb3JlIHdyaXQtIAp0ZW4sIGhhcmRlbmVkIHRoZSBoZWFydHMsIGFuZCBkYXJrZW5lZCB0aGUgdW4tIApkZXJzdGFuZGluZ3MsIG9mIG90aGVyIG5hdGlvbnMsIHNvIHRoZXkgbGlzdGVuZWQgCm5vdCB1bnRvIHRoZSB2b2ljZSBvZiB3aXNkb20gYW5kIG9mIGNvdW5zZWwuIAoKMyAKQnV0IGl0IGhhZCBwbGVhc2VkIHRoZSBMb3JkIHRvIG9wZW4gdGhlIApoZWFydHMsIGFuZCBlbmxpZ2h0ZW4gdGhlIHVuZGVyc3RhbmRpbmcgb2YgdGhlIApwZW9wbGUgb2YgQWxiaW9uLCBhbmQgdGhleSByZXNpc3RlZCB0aGUgdGVtcHRhLSAKdGlvbnMgb2YgdGhlIGlkb2wsIGZlYXJlZCB0aGUgTG9yZCwgYW5kIGhvbm91ci0gCmVkIHRoZSBraW5nLiAKCjQgClRoZXJlZm9yZSB0aGUgTG9yZCBibGVzc2VkIHRoZW0gaW4gdGhlaXIgCnN0b3JlLCBhbmQgaW4gdGhlaXIgb3V0Z29pbmdzIGFuZCBpbmNvbWluZ3MgOyAKYW5kIGJlaG9sZCBldmVyeSBtYW4gd29yc2hpcHBlZCB1bmRlciBoaXMgCm93biB2aW5lLCBhbmQgdW5kZXIgaGlzIG93biBmaWctdHJlZSwgYW5kIHRoZXJlIAp3YXMgbm8gb25lIHRvIG1ha2UgaGltIGFmcmFpZC4gCgo1IApBbmQgaXQgY2FtZSB0byBwYXNzLCB0aGF0IHRoZSBHYXVscyB0b29rIG9mLSAKZmVuY2UgYXQgdGhpcyBnb29kIGtpbmcsIGFuZCBoaXMgY2hvc2VuIHBlb3BsZSwgCgoKCkNoYXAuIFZJLiBOQVBPTEVPTi4gNDEgCgpiZWNhdXNlIHRoZXkgbW9ja2VkIGFuZCBkZXNwaXNlZCB0aGUgaWRvbCwgYW5kIApjbGVhdmVkIHVudG8gdGhlIG9ubHkgdHJ1ZSBHb2QuIAoKNiAKU28gdGhleSBzd29yZSBlbm1pdHkgYWdhaW5zdCBnb29kIGtpbmcgQWwtIApiYW51cywgdGhlIGtpbmcgb2YgdGhlIEFsYmlvbnMsIGFuZCBoaXMgcGVvcGxlLCAKYW5kIHJhZ2VkIGFnYWluc3QgdGhlbSBmdXJpb3VzbHksIGFuZCB0aHJlYXRlbi0gCmVkIHRvIG92ZXJ0aHJvdyB0aGVtLCBhbmQgc21pdGUgdGhlbSBmcm9tIG9mZiAKdGhlIGZhY2Ugb2YgdGhlIGVhcnRoLiAKCjcgCkFuZCBpdCBtb3Jlb3ZlciBjYW1lIHRvIHBhc3MsIHRoYXQgYWZ0ZXIgdGhlIApvdmVydGhyb3cgb2YgdGhlIGZpcnN0IGlkb2wsIHRoZSBzZWNvbmQgaWRvbCwgCndoaWNoIHdhcyB0aGUgbWFuIE5hcG9sZW9uLCB0aHJlYXRlbmVkIHRvIGRvIApzbyBpbiBsaWtlIG1hbm5lciwgZm9yIGhlIGhhdGVkIGdvb2Qga2luZyBBbC0gCmJhbnVzLCBhbmQgaGlzIHBlb3BsZSwgd2l0aCBleGNlZWRpbmcgZ3JlYXQgCmhhdHJlZDsgYmVjYXVzZSB0aGV5IGhhZCBzdG9vZCBmYXN0IGFnYWluc3QgCmhpbSwgYW5kIGhhZCBmb3JldG9sZCBoaXMgY3VubmluZyBhbmQgZGVjZWl0LCAKYW5kIGV2aWwgZGVzaWducywgdW50byB0aGUgc3Vycm91bmRpbmcgbmF0aW9ucywgCndobyBoYWQgZmFsbGVuIHZpY3RpbXMgdG8gdGhlIGRvbWluaW9uIG9mIHRoZSAKaWRvbCwgYnkgcmVhc29uIG9mIHRoZSBkZWFmbmVzcyBvZiB0aGVpciBlYXJzLCAKYW5kIHRoZSBpbmlxdWl0eSBhbmQgc3R1YmJvcm5lc3Mgb2YgdGhlaXIgCmhlYXJ0cy4gCgo4IApOb3csIE5hcG9sZW9uIGdyaWV2ZWQgc29yZSBhdCB0aGUgcHJvc3BlLSAKcml0eSBhbmQgaGFwcGluZXNzIG9mIGdvb2Qga2luZyBBbGJhbnVzLCBhbmQgCmhpcyBwZW9wbGU7IGFuZCBhbWlkc3QgYWxsIGhpcyB2aWN0b3JpZXMsIGFuZCBhbC0gCgpjIAoKCgp2IAoKCgrCqyBOQVBXLUVPTi4gQz9haXUgVkwgCgp0aG91Z2ggc3Vycm91bmRlZCB3aXRoIHBvbXAsIG1hamVzdHksIGFuZCAKcG93ZXIsIG5ldmVydGhlbGVzcyBlbnZ5LCB3cmF0aCwgYW5kIHJldmVuZ2UsIApsdXJrZWQgYW5kIGJ1cm5lZCB3aXRoaW4gaGltLCBldmVuIHVudG8gdGhlIApleGNlZWRpbmcgZ3JlYXQgYml0dGVybmVzcyBvZiBoaXMgc291bC4gCgo5IApBbmQgaXQgY2FtZSB0byBwYXNzIHRoYXQgaGlzIHdyYXRoIGFuZCBpbi0gCmRpZ25hdGlvbiBjb3VsZCBubyBsb25nZXIgYmUgY29uY2VhbGVkLCB0aGVyZS0gCmZvcmUgaXQgYnVyc3QgZm9ydGggbGlrZSB1bnRvIGEgc21vdGhlcmVkIAoKwqsgCgpmbGFtZSA7IGFuZCBoZSBzdW1tb25lZCBoaXMgY3VubmluZyBhbmQgd2lzZSAKd2VuLCBhbmQgdGhlIGNhcHRhaW5zIG9mIGhpcyBob3N0cyB0b2dldGhlciwgYW5kIApjb3Vuc2VsbGVkIHdpdGggdGhlbSwgYW5kIHBsb3R0ZWQgdGJlIG92ZXJ0aHJvdyAKYW5kIGRlc3RydWN0aW9uIG9mIGdvb2Qga2luZyBBbGJhbnVzLCBhbmQgCmhpcyBoYXBweSwgZnJlZSwgYW5kIGZhaXRoZnVsIHBlb3BsZS4gCgoxMCAKQW5kIHdoZW4gdGhlIHdpc2UgbWVuLCBhbmQgdGhlIGNhcHRhaW5zIG9mIAp0aGUgaG9zdHMgb2YgdGhlIEdhdWxzLCB3ZXJlIGFzc2VtYmxlZCB0b2dldGhlciwgCnRoZXkgcHJvc3RyYXRlZCB0aGVtc2VsdmVzIGJlZm9yZSB0aGUgdGhyb25lIG9mIAp0aGUgaWRvbCBOYXBvbGVvbiwgd2hvIHNwYWtlIHVudG8gdGhlbSB0aGVzZSAKd29yZHM6IAoKSCAKCiJXaXNlIG1lbiBhbmQgY291bnNlbGxvcnMgISBieSBtZWFucyBvZiB5b3VyIAoKd2lzZG9tIGFuZCBjb3Vuc2VsLCB3aGljaCByZWFjaGV0aCBmcm9tIHRoZSAKZWFydGggYmVuZWF0aCB1bnRvIHRoZSBoZWF2ZW4gYWJvdmUsIGFpZGVkIApieSBteSBvd24gaW1tZWFzdXJhYmxlIGdlbml1cyBhbmQgZm9ydHVuZSwgCmhhanRodGJmdHMgbWlnaHR5IHRocm9ubyBiZWVuLCAqYWlzZWTCuyBxbiB3aGljaCAKCgoKQ2hhcC4gVkkuIE5BUE9MRU9OLiA0MyAKCnlvdSBub3cgYmVob2xkIG1lLCBzZWF0ZWQgaW4gYXdmdWwgbWFqZXN0eSAKYW5kIHBvd2VyLCBlbmNpcmNsZWQgYW5kIHN1cnJvdW5kZWQgYnkgbWFueSAKbGVzc2VyIHRocm9uZXMsIHByaW5jaXBhbGl0aWVzLCBhbmQgcG93ZXJzLCBvZiAKbXkgb3duIGNyZWF0aW9uLCBhbmQgYWxsIGFja25vd2xlZGdpbmcgYW5kIApwYXlpbmcgaG9tYWdlIGFuZCBvYmVpc2FuY2UgdW50byBtZS8gOSAKCjE5IAoKIiBCcmF2ZSBjYXB0YWlucyBvZiBteSBudW1lcm91cyBhbmQgaW52aW5jaS0gClVlIGhvc3RzLCBjb21wYW5pb25zIG9mIG15IG1hbnkgYW5kIGRpaXRmdWkgCmJhdHRsZXMsIHNoYXJlcnMgb2YgbXkgdmljdG9yaWVzLCBhbmQgbXkgZ2xvcnkgNSAKYnkgbWVhbnMgb2YgeW91ciBza2lsbCBhbmQgY291cmFnZSBpbiB3YXIsIHVufiAKZGVyIG15IGF1c3BpY2VzLCBuYXRpb24gYWZ0ZXIgbmF0aW9uLCBhbmQgCnBlb3BsZSBhZnRlciBwZW9wbGUsIGhhdmUgYmVlbiBjb25xdWVyZWQgYW5kIApvdmVydGhyb3duIDsgYW5kIG1hbnkga2luZ3MsIHByaW5jZXMsIGFuZCBwby0gCnRlbnRhdGVzLCBvbmNlIGdyZWF0IGFuZCBnbG9yaW91cywgYnV0IG5vdyBodW0tIApibGVkIGFuZCBmYWxsZW4sIGhhdmUgYmVjb21lIHRyaWJ1dGFyeSB1bnRvIAptZSwgYW5kIGhhdmUgYmVlbiBkZWxpdmVyZWQgaW50byBteSBoYW5kLiIgCgoxMyAKCiJUaGUgbWVhc3VyZSBvZiBteSBoYXBwaW5lc3MgYW5kIGFtYml0aW9uIAp3b3VsZCB0aHVzIGFwcGVhbCogdW50byB5b3UgdG8gYmUgZnVsbCwgYnV0IAp0aGVyZSBpcyB5ZXQgb25lIGtpbmcsIGFuZCBvbmUgcGVvcGxlLCB0aGF0IAp3aGlsZSBoZSByZWlnbnMsIGFuZCB0aGV5IGxpdmUsIG15IHJpc2luZyAKdXAsIGFuZCBteSBkb3duIGxheWluZywgbXkgb3V0Z29pbmcsIGFuZCAKaW5jb21pbmcsIHNoYWxsIGJlIHVudG8gbWUgZ2FsbCBhbmQgYml0dGVybmVzcy4gOSAqIAoKMTQgCgpTbyB0aGUgd2lzZSBtZW4gYW5kIGNvdW5zZWxsb3JzLCBhbmQgdGhlIAoKQzIgCgoKCjQ0IE5BUE9MRU9OLiBDaGFwLiBWSS4gCgpjYXB0YWlucyBvZiB0aGUgaG9zdHMsIGxpZnRlZCB1cCB0aGVpciB2b2ljZXMgYS0gCmxvdWQgYW5kIGV4Y2xhaW1lZCwgIiBTcGVhayB0aHkgcGxlYXN1cmUsIE8gCm1pZ2h0eSBDb25xdWVyb3IuIiAKCjE1IAoKU28gTmFwb2xlb24geWV0IGFnYWluIG9wZW5lZCBoaXMgbW91dGggYW5kIApzcGFrZSwgYW5kIHNhaWQgdW50byB0aGVtLCAiIFllYSB2ZXJpbHksIHdoaWxlIApraW5nIEFsYmFudXMgcmVpZ25zLCBhbmQgaGlzIHBlb3BsZSBsaXZlLCB0aGUgCm1lYXN1cmUgb2YgbXkgYW1iaXRpb24gc2hhbGwgbm90IGJlIGZpbGxlZCwgCm5vciB0aGUgZ3JlYXRuZXNzIGFuZCBoYXBwaW5lc3Mgb2YgeW91ciBraW5nIApjb21wbGV0ZWQsIGZvciB1bnRvIHRoZSBkb21pbmlvbiBvdmVyIHRoZSBsYW5kLCAKd2hpY2ggaGFzIGJlZW4gZ2l2ZW4gdW50byBtZSwgbXVzdCBiZSBhZGRlZCAKdGhlIGRvbWluaW9uIG92ZXIgdGhlIHNlYSBhbHNvLiIgCgoxNiAKCiIgR28gdGhlcmVmb3JlLCB5ZSB3aXNlIGFuZCBjdW5uaW5nIG1lbiwgCmFuZCBjb3Vuc2VsIHRvZ2V0aGVyLCBhbmQgb2J0YWluIGZvciBtZSAiIHNoaXBzLCAKY29tbWVyY2UsIGFuZCBjb2xvbmllcyIgYW5kIGNhdXNlIGZvcmVzdHMgdG8gYmUgCmhld24gZG93biwgYW5kIGxldCBhcnRpZmljZXJzIGJ1aWxkIHNoaXBzIGFuZCAKdmVzc2VscyBpbiBteSBtYW55IGhhcmJvdXJzIDsgYW5kIGdvIGFsc28gaW4gCmxpa2UgbWFubmVyLCB5ZSBjYXB0YWlucyBvZiBteSBtaWdodHkgYW5kIApudW1lcm91cyBob3N0cywgYW5kIGxlYWQgcG93ZXJmdWwgYXJtaWVzIHRvIAp0aGUgc2VhLWNvYXN0LCB3aGljaCBpcyBvdmVyIGFnYWluc3QgdGhlIGxhbmQgb2YgCnRoZSBBbGJpb25zLCBhbmQgcGFzcyBvdmVyIHRvIHRoZSBsYW5kIHRoZXJlLSAKb2YsIGluIHRoZSBzaGlwcyBhbmQgdmVzc2VscyB3aGljaCBzaGFsbCBiZSBzbyAKYnVpbHQuIiAKCgoKLi4qIy0iLSAKCgoKQ2hhcC4gVkkuIE5BUE9MRU9OLiA0NSAKCjE3IApjYyBBbmQgaGF2aW5nIHBhc3NlZCBvdmVyIHRoZSBzZWEgd2hpY2ggZGl2aWQtIApldGggdGhlIGxhbmQgb2YgR2F1bCBmcm9tIHRoZSBsYW5kIG9mIEFsYmlvbiwgCnNsYXkgdGhlIHBlb3BsZSB0aGVyZW9mLCB3aXRoIGlnbm9taW5pb3VzIGFuZCAKYmxvb2R5IGRlYXRocywgc2FjayBhbmQgYnVybiB0aGVpciBjaXRpZXMsIHRvd25zLCAKYW5kIHZpbGxhZ2VzLCBhbmQgcGlsbGFnZSB0aGVpciBob3VzZXMsIGZvciBteSAKd3JhdGggYWdhaW5zdCB0aGlzIHBlb3BsZSBpcyBleGNlZWRpbmcgZ3JlYXQuIiAKCjE4IAoiIEFuZCB5ZSBzaGFsbCBtYWtlIHRoZSBsYW5kIGRlc29sYXRlIGFuZCAKYmFycmVuIGxpa2UgdW50byBhIHdpbGRlcm5lc3MsIGFuZCBJIHdpbGwgcmV3YXJkIAp5b3Ugd2l0aCB0aGUgc3BvaWxzIGFuZCBncmVhdCByaWNoZXMgdGhlcmVvZi4iIAoKMTkgCgoiIEFuZCB5ZSBzaGFsbCBsZWFkIHRoZSBzb25zIGFuZCBkYXVnaHRlcnMgCm9mIHRoZSBBbGJpb25zIGludG8gY2FwdGl2aXR5LCBhbmQgbm90IGEgdmVzdGlnZSAKc2hhbGwgYmUgbGVmdCBvZiB0aGlzIG9uY2UgZ3JlYXQsIHJpY2gsIGFuZCBwb3ctIAplcmZ1bCBwZW9wbGUsIHNhdmUgaW4gdGhlIHJlY29yZCBvZiBteSBtaWdodHkgCmRlZWRzLyogCgoyMCAKCkFuZCB3aGVuIHRoZSB3aXNlIG1lbiwgYW5kIGNvdW5zZWxsb3JzLCAKYW5kIHRoZSBjYXB0YWlucyBvZiB0aGUgaG9zdHMgb2YgTmFwb2xlb24sIGhlYXJkIAp0aGVzZSB0aGluZ3MsIHRoZXkgd2VyZSBzb3JlbHkgdHJvdWJsZWQgYW5kIGFmLSAKZmxpY3RlZCBhdCBoZWFydCA7IGZvciB0aGV5IGRpZCBub3Qga25vdyBpbiB3aGF0IAptYW5uZXIgdGhleSBzaG91bGQgcGFzcyBvdmVyIHRoZSBzZWEsIHdoaWNoIApkaXZpZGV0aCB0aGUgbGFuZCBvZiBHYXVsIGZyb20gdGhlIGxhbmQgb2YgQWwtIApiaW9uLCBiZWNhdXNlIHRoZXkgaGFkIG5laXRoZXIgc2hpcHMgbm9yIHZlcy0gCgpjMyAKCgoKNDUgTkFQT0xFT04uIENoYWYuIFZJSS4gCgpzZWxzIHdoZXJlaW4gdG8gcGFzcyBvdmVyIHRoZSBzZWEsIHdoaWNoIHdhcyAKZGVlcCBhbmQgbWlnaHR5LCBhbmQgb3ZlciB3aGljaCBraW5nIEFsYmEtIAptaXMgYWxyZWFkeSBoYWQgdGhlIGRvbWluaW9uLiAKCjIxIApCdXQgdGhleSBkdXJzdCBub3QgZ2FpbnNheSBOYXBvbGVvbiwgbmV2ZXItIAp0aGVsZXNzIHRoZXkgcm9zZSBhbmQgd2VudCBhd2F5LCBncmllcmVkIGFuZCAKdHJvdWJsZWQgaW4gc3Bpcml0LCBzaG91dGluZyB3aXRoIHRoZWlyIGxpcHMsIHdoaWxlIAp0aGVpciBoZWFydHMgd2VyZSBmYXIgZnJvbSBoaW0sICIgTyBFbXBlcm9yLCAKbGl2ZSBmb3IgZXZlciEiIAoKCgpDSEFQLiBWSUkuIAoKMS4gVGhlIFRocmVhdCogb2YgdGhlIEdhd2xzLCBhbmQgb2YgdGhlIFR5cmFudCwgY29tZSB0byAKdGhlIGVhcnMgb2YgdGhlIEFsYmlvbnMsIHdobyBhY2NvcmRpbmdseSBtYWtlIG1pZ2h0eSAKcHJlcGFyYXRpb25zIHRhIHJlc2lzdCB0aGVpciBmb2VzLiDigJQgMi4gVGhlIHBlb3BsZSBvZiBBaCAKYmlvbiBjbGVhdmUgdG8gdGhlaXIga2luZyBhbmQgbmF0aXZlIGxhbmQsIGFuZCByaXNlIGFzIApvbmUgbWFuIHRvIG9wcG9zZSB0aGUgVHlyYW50IGFuZCBoaXMgaG9zdHMsIHdobyBkcmVhZCAKdGhlIHNlYSBhbmQgdGhlIHZhbG91ciBvZiB0aGUgQWxiaW9ucywgYnkgc2VhIGFuZCBsYW5kLiAKCkFuZCB3aGVuIHRoZSB0aWRpbmdzIG9mIHRoZXNlIHRoaW5ncywgYW5kIAp0aGUgdGhyZWF0ZW5pbmdzIG9mIHRoZSBtaWdodHkgY29ucXVlcm9yLCBjYW1lIAp0byB0aGUgZWFycyBvZiBnb29kIGtpbmcgQWxiYW51cywgaGUgY2FsbGVkIHRvLSAKZ2V0aGVyIGhpcyBjb3Vuc2VsbG9ycyBhbmQgaGlzIG5vYmxlcywgYW5kIHRoZSAKZ3JlYXQgYXNzZW1ibHkgb2YgdGhlIG5hdGlvbiwgYW5kIHRoZSBjYXB0YWlucyAKb2YgaGlzIGZsZWV0cyBhbmQgb2YgaGlzIGFybWllcywgdG8gdGFrZSBjb3Vuc2VsIApjb25jZXJuaW5nIHRoZSBzYWZldHkgYW5kIGRlZmVuY2Ugb2YgdGhlIGZlbmQuIAoKCgpHKmFwLiBWSUkuIE5BUE9MRU9OLiAuIDQ3IAoKUyAKCkJ1dCBpbyBhbmQgYmVob2xkKiB3aGVuIHRoZSBwZW9wbGUgb2YgQWwtIApiaW9uIGhlYXJkIGFuZCBzYXcgdGhlIGRhbmdlciBvZiB0aGVpciBiZWxvdmVkIApraW5nLCBhbmQgb2YgdGhlIGxhbmQgb2YgdGhlaXIgZmF0aGVycywgYW5kIG9mIAp0aGUgbnVtYmVybGVzcyBhbmQgaW52YWx1YWJsZSBibGVzc2luZ3Mgd2hpY2ggCml0IGhhZCBwbGVhc2VkIEdvZCB0byBiZXN0b3cgdXBvbiB0aGV0biwgdGhleSAKcm9zZSBvZiB0aGVpciBvd24gYWNjb3JkLCBhcyBvbmUgbWFuLCBhbmQgCnRlbmRlcmVkIHVudG8gdGhlIGtpbmcgdGhlaXIgYm9kaWVzIGFuZCBsaXZlcywgCndpdGhvdXQgbW9uZXkgYW5kIHdpdGhvdXQgcHJpY2UsIHRvIHNlcnZlIGFzIGEgCmJ1bHdhcmssIGFuZCBhcyBhIHdhbGwgb2YgZGVmZW5jZSBhcm90aW5kIGhpcyAKdGhyb25lLCBhbmQgdGhlIGxhbmQgb3ZlciB3aGljaCBoZSBoYWQgcnVsZWQgCmZvciBtYW55IHllYXJzIGluIGdlbnRsZW5lc3MgYW5kIG1lcmN5LiAKCjMgCgpOb3cgbm9ibGUsIGFuZCBpZ25vYmxlLCByaWNoIF5hbmQgcG9vciwgCnlvdW5nIGFuZCBvbGQsIHllYSBhbG1vc3QgYWxsIHRoZSBtYWxlcyBvZiB0aGUgCmxhbmQgb2YgQWxiaW9uLCB0b29rIHVwIGFybXMgdG9nZXRoZXIgYW5kIAptaW5nbGVkIGluIHRoZSByYW5rcywgYW5kIGZpbGxlZCB0aGUgaG9zdHMgb2YgCmtpbmcgQWxiYW51cyAkIHVudGlsIHRoZXkgYmVjYW1lIGxpa2UgdW50byB0aGUgCm1pZ2h0eSBhbmQgcmVzaXN0bGVzcyByaXZlciBvZiB0aGUgdmFsbGV5LCB3aGljaCAKZmVkIGJ5IG1hbnkgdG9ycmVudHMgZnJvbSB0aGUgbW91bnRhaW5zLCBhZnRlciAKaXQgaGF0aCByYWluZWQsIGFuZCB0aGUgd2luZG93cyBvZiBoZWF2ZW4gaGF2ZSAKYmVlbiBvcGVuZWQgZm9yIG1hbnkgZGF5cywgb3ZlcmZsb3dldGggaXRzIApiYW5rcyogYW5kIGNvdmVyZXRoIHRoZSB3aWRlIHBsYWluLiAKCjQgCgpOb3cgd2hlbiBnb29kIGtpbmcgQWxiYW51cyBzYXcgaGlzIGJyYXZlIAoKYzQgCgoKCjQ4IE5BUE9MRU9OLiBDaGFwLiBWSUkuIAoKYW5kIGxvdmluZyBzdWJqZWN0cyBvZiBhbGwgcmFua3MgYW5kIGNvbmRpdGlvbnMsIApyYWxseSBhcm91bmQgaGltIGluIHRoaXMgbWFubmVyLCBhcyBuZXZlciBtZW4gCmhhZCBkb25lIGJlZm9yZSwgaGlzIGhlYXJ0IHdhcyBtb3ZlZCB3aXRoIGdsYWQtIApuZXNzLCBhbmQgaGUgd2VwdCBmcm9tIHRoZSBqb3kgdGhlcmVvZiogCgo1IApCdXQgYmVob2xkIHRoZSB0ZWFycyB3aGljaCBoZSBzaGVkIHdlcmUgbm90IAp0ZWFycyBvZiBzb3Jyb3csIGZvciB0aGV5IHdlcmUgbWl4ZWQgd2l0aCAKZ3JhdGl0dWRlIHRvIEdvZCwgZm9yIGhpcyBleGNlZWRpbmcgZ29vZG5lc3MsIAphbmQgbG92ZSB0byBoaXMgcGVvcGxlLCBmb3IgdGhlaXIgZXhjZWVkaW5nIGFmKiAKZmVjdGlvbi4gCgo2IApJbiBsaWtlIG1hbm5lciB0aGUgc2hpcHMgYW5kIGZsZWV0cyBvZiBnb29kIApraW5nIEFsYmFudXMsIG11bHRpcGxpZWQgZXhjZWVkaW5nbHkgaW4gbnVtLSAKYmVyLCBhbmQgdGhlIGNhcHRhaW5zLCBzYWlsb3JzLCBhbmQgbWFyaW5lcnMgCnRoZXJlb2YsIHdlcmUgYnJhdmUsIGFuZCBib2xkIGFzIGxpb25zLiAKCjcgCk5vdywgaXQgY2FtZSB0byBwYXNzLCB0aGF0IG51bWVyb3VzIGZsZWV0cyAKYW5kIHNoaXBzIHdlbnQgZm9ydGgsIGFuZCBncmVhdCBiYXR0bGVzIHdlcmUgCmZvdWdodCBvbiB0aGUgZmFjZSBvZiB0aGUgbWlnaHR5IHdhdGVycywgd2hpY2ggCndhc2ggdGhlIGZvdW5kYXRpb25zIG9mIHRoZSByb3VuZCB3b3JsZDsgYnV0LCAKYXMgYmVmb3JlIHdyaXR0ZW4sIGl0IGhhZCBwbGVhc2VkIHRoZSBMb3JkIAp0byBnaXZlIHVudG8gZ29vZCBraW5nIEFsYmFudXMsIHRoZSBkb21pLSAKbmlvbiBvdmVyIHRoZSBzZWEsIGFuZCB0aGUgYnJhdmUgY2FwdGFpbnMgb2YgCmhpcyBzaGlwcywgYW5kIGhpcyBmbGVldHMsIGFuZCB0aGUgaW52aW5jaWJsZSAKc2FpbG9ycyBhbmQgbWFyaW5lcnMgdGhlcmVvZiwgY2FyZWxlc3Mgb2YgdGhlIAoKCgpDaGFwLiBWSUkuIE5BUE9MRU9OLiA0OSAKCmRhbmdlcnMgb2YgdGhlIGRlZXAsIGFuZCBvZiB0aGUgdGVycmlibGUgc3Rvcm1zIApvZiBoZWF2ZW4sIG1peGVkIGluIGRpcmVmdWwgY29uZmxpY3Qgd2l0aCAKdGhlIHNoaXBzIGFuZCBmbGVldHMgb2YgdGhlIEdhdWxzLCBhbmQgb3RoZXIgbmEtIAp0aW9ucywgYW5kIGVpdGhlciBzdW5rIHRoZW0gaW4gdGhlIG1pZ2h0eSB3YS0gCnRlcnMsIGJ1cm5lZCBhbmQgZGVzdHJveWVkIHRoZW0gb24gdGhlIGZhY2UgCnRoZXJlb2YsIG9yIGNhcnJpZWQgdGhlbSBpbiB0cml1bXBoIGludG8gdGhlIGhhci0gCmJvdXJzIG9mIHRoZSBsYW5kIG9mIEFsYmlvbi4gCgo4IApBbmQgdGhlIHBvd2VyIG9mIGdvb2Qga2luZyBBbGJhbnVzIGNvbi0gCnRpbnVlZCB0byBlbmNyZWFzZSBvbiB0aGUgbWlnaHR5IGRlZXAsIGFuZCBubyAKc2hpcCBkYXJlZCB0byBhcHBlYXIsIG9yIGJlIHNlZW4sIG9uIHRoZSBmYWNlIAp0aGVyZW9mLCBzYXZlIGJ5IGhpcyBwZXJtaXNzaW9uIDsgYW5kIHdoZW4gdGhlIApHYXVscywgYW5kIHRoZSBvdGhlciBuYXRpb25zIHVwb24gZWFydGgsIHNhdyAKYW5kIGJlaGVsZCB0aGUgZ3JlYXRuZXNzIG9mIHRoZSBkZWVkcyBvZiB0aGUgCmNhcHRhaW5zIGFuZCBzYWlsb3JzIG9mIGdvb2Qga2luZyBBbGJhbnVzLCB0aGV5IAptYXJ2ZWxsZWQgb25lIHdpdGggYW5vdGhlciwgYW5kIHdlcmUgc29yZSAKYWZyYWlkLCAKCmkgCgo5IApBbmQgd2hlbiB0aGUgY2FwdGFpbnMgYW5kIG9mZmljZXJzIG9mIHRoZSAKZmxlZXRzIGFuZCBhcm1pZXMgb2YgdGhlIEFsYmlvbnMgZmVsbCBpbiB0aGUgbWlkc3QgCm9mIHRoZSBiYXR0bGVzIGFuZCB2aWN0b3JpZXMgb2YgdGhlaXIgY291bnRyeSwgdGhlIApraW5nIHJld2FyZGVkIHRoZWlyIHdpdmVzLCBjaGlsZHJlbiwgYW5kIGtpbnMtIAptZW4sIHdpdGggaG9ub3VyLCB3ZWFsdGgqIGFuZCBwb3dlciwgYW5kIG1vLSAKbnVtZW50cyB3ZXJlIHJhaXNlZCBpbiByZW1lbWJyYW5jZSBvZiB0aGVpciAKZ2xvcmlvdXMgZGVlZHMuIAoKCgoqMCBOQVBPTEVPTi4gQ3VhcC4gVklMIAoKMTAgCgpBbmQsIGluIGxpa2UgbWFubmVyLCB3aGVuIHRoZSBzYWlsb3JzLCBzb2wtIApkaWVycywgYW5kIG1hcmluZXJzLCBmZWxsIGluIHRoZSBzYW1lIGdvb2QgY2F1c2UsIAp0aGVpciB3aXZlcywgY2hpbGRyZW4sIGFuZCBraW5zbWVuKiB3ZXJlIGFsc28gCnRha2VuIGNhcmUgb2YsIGFuZCBjaGVyaXNoZWQgYnkgdGhlaXIgY291bnRyeSwgCndpdGggZXhjZWVkaW5nIGdyZWF0IGxvdmUgYW5kIGFmZmVjdGlvbiA7IHNvIHRoYXQgCmV2ZXJ5IG1hbiByZWpvaWNlZCwgYW5kIGdsb3JpZWQgdG8gZGllIGluIGRlLSAKZmVuY2Ugb2YgaGlzIG5hdGl2ZSBsYW5kLiAKCjExIAoKTm93LCB3aGVuIE5hcG9sZW9uIGJlaGVsZCBoaXMgc2hpcHMgYW5kIApmbGVldHMgdGFrZW4gYW5kIGRlc3Ryb3llZCwgYXMgYWJvdmUgd3JpdHRlbiwgCmFuZCB0aGF0IHRoZS4gYXJtaWVzIG9mIGtpbmcgQWxiYW51cyBoYWQgCm11bHRpcGxpZWQgbGlrZSB1bnRvIHRoZSBzYW5kcyBvZiB0aGUgc2VhKiAKYW5kIGNvdmVyZWQgdGhlIHdob2xlIGNvYXN0IG9wcG9zaXRlIHRvIHRoZSAKbGFuZCBvZiBHYXVsLCBoZSB3YXMgZXhjZWVkaW5nIHdyb3RoLCBhbmQgCnN3b3JlIGFuZCBibGFzcGhlbWVkLCBiZWNhdXNlIGhlIGZvcmVzYXcgdGhhdCAKdGhlIExvcmQgd291bGQgbm90IGRlbGl2ZXIgdGhpcyBraW5nIGFuZCBoaXMgCnBlb3BsZSBpbnRvIGhpcyBoYW5kcywgYWZ0ZXIgdGhlIG1hbm5lciBvZiBvdGhlciAKbmF0aW9ucywgd2hvIGhhZCBiZWVuIHNlZHVjZWQgYnkgaGlzIGNyYWZ0cyAKYW5kIHN1YnRsZXRpZXMsIGFuZCBoYWQgYmVlbiBhY2NvcmRpbmdseSBwdS0gCm5pc2hlZCBmb3IgdGhlaXIgZ3JlYXQgdW5yaWdodGVvdXNuZXNzKiAKCjEyIAoKQW5kLCBpbiBsaWtlIG1hbm5lciwgd2hlbiB0aGUgY2FwdGFpbnMgYW5kIApzb2xkaWVycywgb2YgdGhlIGhvc3RzIG9mIHRoZSBHYXVscywgc2F3IHRoYXQgCnRoZSBzZWEgd2hpY2ggZGl2aWRldGggdGhlIGxhbmQgb2YgR2F1bCBmcjx3biAKCgoKQ2hhcC4gVklMIE5BUE9MRU9OLiA1MSAKCnRoZSBsYW5kIG9mIEFsYmlvbiwgd2FzIGV4Y2VlZGluZyBtaWdodHkgCmFuZCBkZWVwLCBhbmQgdGhhdCB0aGVyZSB3ZXJlIG5vIHNoaXBzIHdoZXJlLSAKaW4gdG8gcGFzcyBvdmVyIHRoZSBzYW1lLCBhbmQgdGhhdCB0aGUgZG9taW5pLSAKb24gb3ZlciB0aGUgc2VhIHdhcyBhbHRvZ2V0aGVyIGluIHRoZSBoYW5kcyBvZiAKa2luZyBBbGJhbnVzLCB0aGVpciBoZWFydHMgZmFpbGVkIHRoZW0uIAoKMTMgCkFuZCBtb3Jlb3Zlciwgd2hlbiB0aGUgR2F1bHMgc2F3IHRoYXQgZ3JlYXQgCmFuZCBwb3dlcmZ1bCBhcm1pZXMgd2VyZSBkcmF3biB1cCBvbiB0aGUgY29hc3QgCm9mIEFsYmlvbiwgcmVhZHkgdG8gZHJpdmUgdGhlbSBhbmQgdGhlaXIgdHlyYW50IApiYWNrIGFnYWluIGludG8gdGhlIHNlYSwgYW5kIG92ZXJ3aGVsbSB0aGVtIAp0aGVyZWluLCB0aGV5IGFiYXRlZCBhbmQgYXNzdWFnZWQgaW4gdGhlaXIgCnByaWRlIGFuZCB2YWluIGJvYXN0aW5nLCBhbmQgc291Z2h0IHRvIHRhcnJ5IG9uIAp0aGUgZHJ5IGxhbmQsIHdoZXJlb24gdGhleSB3ZXJlIGVuY2FtcGVkLCBhbmQgCmhhZCBwaXRjaGVkIHRoZWlyIHRlbnRzLiAKCgoKQ0hBUC4gVklJSS4gCgoKCsK7MiBOQVBPTEVPTi4gQ2hhcC4gVklJSS4gCgoKCkNIQVAuIFZJSUkuIAoKMS4gVGhlIHNoaXBzIG9mIHdhciB3aGljaCBjYXJyaWVkIHRoZSBhcm15IG9mIHRoZSBHYXVscyAKaW50byBFZ3lwdCBhcmUgZGVzdHJveWVkIGluIGEgZHJlYWRmdWwgYmF0dGxlLCBieSBhIApDYXB0YWluIG9mIHRoZSBuYXZ5IG9mIEtpbmcgQWxiYW51cy4g4oCUIDIuIFRoZSBhcm1pZXMgCm9mIHRoZSBBbGJpb25zIHRoZXJlYWZ0ZXIgZGVmZWF0IHRob3NlIG9mIHRoZSBHYXVscyAKd2hlcmVzb2V2ZXIgdGhleSBtZWV0LiDigJQgMy4gVGhlIEFsYmlvbnMgcmVzY3VlIHRoZSAKbGFuZCBvZiBFZ3lwdCBmcm9tIHRoZSBHYXVscy4g4oCUIDQuIFRoZSBjaGllZiBvZiB0aGUgCmFybXkgb2YgdGhlIEFsYmlvbnMgZmFsbHMgaW4gYmF0dGxlLiDigJQgNS4gVGhlIEdhdWxzIGFyZSAKYWZ0ZXJ3YXJkcyBkZWZlYXRlZCBieSB0aGUgQWxiaW9ucyBpbiB0aGUgbGFuZCBvZiBDYS0gCmxhYnJpYS4gCgpBbmQgaXQgY2FtZSB0byBwYXNzLCB0aGF0IHRoZSBmbGVldCBvZiBraW5nIApBbGJhbnVzIGZvbGxvd2VkIHRvIHRoZSBjb2FzdCBvZiBFZ3lwdCwgdGhlIApzaGlwcyBvZiB3YXIgd2hpY2ggaGFkIGNhcnJpZWQgdGhlIGFybXkgb2YgdGhlIApHYXVscywgdW5kZXIgTmFwb2xlb24sIHRvIHRoZSBsYW5kIHRoZXJlb2YuIAoKMiAKCk5vdywgdGhlIEdhdWxzIGhhZCBkcmF3biB1cCB0aGVpciBzaGlwcyBpbiAKYmF0dGxlIGFycmF5LCBuZWFyIHVudG8gdGhlIHNob3JlLCB0aGVyZWZvcmUgCnRoZXkgYmFkZSBkZWZpYW5jZSB0byB0aGUgZmxlZXQgb2YgdGhlIEFsYmlvbnMuIAoKMyAKCkJ1dCB0aGUgbGVhZGVyIHRoZXJlb2Ygd2FzIGEgYnJhdmUgYW5kIGRhdW50LSAKbGVzcyBtYW4sIGFuZCBoZSBmZWxsIHVwb24gdGhlIHNoaXBzIG9mIHRoZSAKR2F1bHMsIGFuZCB0b29rIGFuZCBkZXN0cm95ZWQgYWxtb3N0IHRoZSAKCgoKwqsqLuKWoCAKCgoKfiBpIAoKCgpDaGFwLiBWSUlJIE5BUE9MRU9OLiA1MyAKCndob2xlIHRoZXJlb2YsIGFuZCBraWxsZWQgdGhlIGNoaWVmIGNhcHRhaW4gb2YgCnRoZWlyIGZsZWV0LiAKCjQgCgpBbmQgd2hlbiBOYXBvbGVvbiwgYW5kIGhpcyBhcm15LCBzYXcgCnRoZXNlIHRoaW5ncywgdGhleSB3ZXJlIHNvcmVseSB0cm91YmxlZCBhbmQgZGlzLSAKbWF5ZWQsIGFuZCBiYWRlIGEgbG9uZyBmYXJld2VsbCB0byB0aGUgbGFuZCBvZiAKdGhlaXIgZmF0aGVycy4gCgo1IAoKTmV2ZXJ0aGVsZXNzIHRoZXkgd2VudCBvbiBhcyBiZWZvcmUgd3JpdHRlbiwgCmFuZCBjb25xdWVyZWQgdGhlIGxhbmQgb2YgRWd5cHQsIGFuZCB0aHJlYXQtIAplbmVkIHRoZSBob2x5IGNpdHkuIAoKNiAKClNvb24gdGhlcmVhZnRlciwgTmFwb2xlb24gaGF2aW5nIGZvcnNha2VuIApoaXMgYXJteSBpbiB0aGlzIGRpc3RhbnQgbGFuZCwgc3VkZGVubHkgcmV0dXJuLSAKZWQgdG8gR2F1bCwgaGF2aW5nIGVzY2FwZWQgdGhlIHNoaXBzIG9mIHRoZSBBbC0gCmJpb25zLCB3aGljaCB3ZXJlIGxheWluZyBpbiB3YWl0IHRvIHRha2UgaGltIApwcmlzb25lciA7IGJ1dCBpdCBkaWQgbm90IGF0IHRoaXMgdGltZSBwbGVhc2UgdGhlIApMb3JkIHRvIGRlbGl2ZXIgaGltIGludG8gdGhlIGhhbmRzIG9mIHRoZSBBbC0gCmJ1bXMuIAoKNyAKQW5kIGl0IGNhbWUgdG8gcGFzcywgaW4gbGlrZSBtYW5uZXIsIHRoYXQgYW4gCgphcm15IG9mIHRoZSBBbGJpb25zIGZvbGxvd2VkIHRoZSBhcm15IG9mIHRoZSAKR2F1bHMgaW50byB0aGUgbGFuZCBvZiBFZ3lwdC4gCgo4IApBbmQgdGhlIEdhdWxzIGNhbWUgZG93biB0byB0aGUgc2VhIGNvYXN0IAoKCgo+4oCiIF4tfi0g4pag4pagKiAtwrvigJQgwqvigKLigKIq4oCiKiAuIC0gViAKCgoKJDQgTkFQT0xFT04uIENoYXAuIFZJSUkuIAoKdG8gb3Bwb3NlIHRoZSBBbGJpb25zIDsgYnV0IGJlaW5nIHVuYWJsZSB0byAKcmVzaXN0IHRoZSB2YWxvdXIgb2YgdGhlIGhvc3RzIHRoZXJlb2YgdGhlIEFsLSAKYmlvbnMgZ2FpbmVkIHRoZSBkcnkgbGFuZCwgYW5kIGVuY2FtcGVkIAp0aGVyZW9uLiAKCjkgClNvb24gdGhlcmVhZnRlciBhIHBpdGNoZWQgYmF0dGxlIHdhcyBmb3VnaHQgCmJldHdpeHQgdGhlIHR3byBhcm1pZXMsIGluIGEgcGxhaW4gbmVhciB1bnRvIHRoZSAKY2l0eSBvZiBBbGV4YW5kcmlhLiAKCjEwIApBbmQgaXQgcGxlYXNlZCB0aGUgTG9yZCB0byBnaXZlIHVudG8gdGhlIEFsLSAKYmlvbnMgdGhlIHZpY3Rvcnkgb3ZlciB0aGVpciBlbmVtaWVzLCB3aG9tIHRoZXkgCm92ZXJ0aHJldyB3aXRoIHRlcnJpYmxlIHNsYXVnaHRlci4gCgoxMSAKQnV0IHRoZSBBbGJpb25zIGxvc3QgbWFueSBtZW4gb2YgdmFsb3VyLCAKY2FwdGFpbnMgYXMgd2VsbCBhcyBzb2xkaWVycywgYW5kIHRoZSBsYW5kIG9mIApQaGFyYW9oLCBhbmQgdGhlIGluaGFiaXRhbnRzIHRoZXJlb2YsIGV2ZW4gdW50byAKdGhpcyBkYXksIGJlYXIgdGVzdGltb255IHRvIHRoZWlyIGdsb3J5LiAKCjEyIApBbGFzICEgdGhlcmUgZmVsbCBvbiB0aGF0IGRheSwgdGhlIGNoaWVmIGxlYWRlciAKb2YgdGhlIGFybXkgb2YgdGhlIEFsYmlvbnMsIGFuIGFnZWQgd2FycmlvciBvZiAKZ3JlYXQgcmVub3duLiAKCjEzIApIaXMgaG9hcnkgaGVhZCB3YXMgbGFpZCBsb3cgb24gdGhlIHBsYWluLCAKYW5kIGhpcyBncmV5IGhhaXJzIG1pbmdsZWQgd2l0aCB0aGUgc2FuZHMgb2YgCgpFZ3lwdC4gCgoKCuKWoCDilqAgwrsgJyAKCgoKQ20qLiBWSEwgTkFQT0xFT04uIDU1IAoKMTQgCk5ldmVydGhlbGVzcywgaGlzIHNwaXJpdCBhc2NlbmRlZCBvbiBoaWdoIG9uIAp0aGUgd2luZ3Mgb2YgdmljdG9yeSwgYW5kIGhpcyBmYW1lIGZsZXcgYWJyb2FkIAphbW9uZ3N0IHRoZSBzb25zIG9mIG1lbi4gCgoxNSAKSGlzIHByZWNpb3VzIHJlbWFpbnMgd2VyZSBub3QgYnVyaWVkIGluIGEgCnN0cmFuZ2UgbGFuZCA7IGJ1dCB3ZXJlIHJlc3RvcmVkIGJ5IGEgbG92aW5nIGFyLSAKbXksIHRvIGFuIGFkbWlyaW5nIGtpbmcgYW5kIHBlb3BsZS4gCgoxNiAKV2hpbGUgdGhlIE5pbGUsIHRoZSBmYXRoZXIgb2Ygd2F0ZXJzLCBjb250aS0gCm51ZXRoIHRvIGZsb3csIHNvIGxvbmcgc2hhbGwgdGhlIGZhbWUgb2YgdGhpcyAKYWdlZCB3YXJyaW9yIGZsb3VyaXNoIGluIGhpcyBuYXRpdmUgbGFuZCwgYW5kIGluIAp0aGUgbGFuZCBvZiBFZ3lwdCwgd2hpY2ggaGUgZGVsaXZlcmVkIGZyb20gaXRzIAplbmVtaWVzLiAKCjE3IAoKQWdhaW4gaXQgY2FtZSB0byBwYXNzLCB0aGF0IGFub3RoZXIgcGl0Y2hlZCAKYmF0dGxlIHdhcyBmb3VnaHQgaW4gdGhlIGxhbmQgb2YgQ2FsYWJyaWEsIGJlLSAKdHdpeHQgdGhlIEFsYmlvbnMgYW5kIEdhdWxzLCBhbmQgYWdhaW4gaXQgcGxlYS0gCnNlZCB0aGUgR29kIG9mIGJhdHRsZXMgdG8gZ2l2ZSB0aGUgdmljdG9yeSB1bnRvIAp0aGUgQWxiaW9ucy4gCgoxOCAKCkZvciBhcyB0aGUgQWxiaW9ucyB3ZXJlIGludmluY2libGUsIHNvIGluIGxpa2UgCm1hbm5lciB3ZXJlIHRoZXkgaW5jb3JydXB0aWJsZSwgYW5kIHRoZSBnb2xkIAphbmQgc2lsdmVyLCBhbmQgcHJlY2lvdXMgdGhpbmdzIHdoZXJld2l0aCB0aGUgCnR5cmFudCBoYWQgY29ycnVwdGVkIHRoZSBjaGllZnMgYW5kIHNvbGRpZXJzIG9mIAoKCgpeIC4g4oCUIC4gaSBJIDExMSoiIAoKCgo1NiBOQVBPTEVPTi4gQ2hhcC4gSVguIAoKb3RoZXIgbmF0aW9ucywgaGUgZGFyZWQgbm90IHRlbmRlciB1bnRvIHRob3NlIApvZiBBbGJpb24sIGtub3dpbmcgd2VsbCwgdGhhdCB0aGV5IHdvdWxkIApzcHVybiB0aGVtIHdpdGggZGlzZGFpbiBhbmQgaW5kaWduYXRpb24uIAoKMTkgCk5vdyB0aGUgcmVub3duIG9mIHRoZSBhcm1pZXMgb2YgdGhlIEFsYmlvbnMsIAphbmQgb2YgdGhlaXIgY2hpZWZzLCBzcHJlYWQgYWJyb2FkIHRocm91Z2hvdXQgCnRoZSBlYXJ0aCwgYW5kIHdhcyBhIHRlcnJvciB1bnRvIHRoZWlyIGVuZW1pZXMuIAoKCgpDSEFQLiBJWCwgCgoxLiBUaGUgZG9taW5pb24gb2YgdGhlIFR5cmFudCBleHRlbmRldGggaXRzZWxmIHVwb24gdGhlIApmYWNlIG9mIHRoZSBlYXJ0aC4g4oCUIDIuIEhlIGNvbnRpbnVldGggdG8gZGVjZWl2ZSB0aGUgCktpbmdzIGFuZCBQcmluY2VzIHRoZXJlb2YgXCBhbmQgdGhlIHBlb3BsZSBvdmVyIHdob20gCnRoZXkgcmVpZ25lZC4g4oCUIDMuIFNvbWUgYXJlIG92ZXJ0aHJvd24gYnkgb3BlbmZvcmNlIHIgCm90aGVycyBzb290aGVkIGFuZCBiZWd1aWxlZCwgdW50aWwgYSBjb252ZW5pZW50IHNlYXNvbiAKYXJyaXZldGhmb3IgdGhlaXIgY29tcGxldGUgYW5kIGZpbmFsIGRlc3RydWN0aW9uKiAKCk5vdywgdGhlIHR5cmFudCBOYXBvbGVvbiBjb250aW51ZWQgdG8gZXgtIAp0ZW5kIGhpcyBkb21pbmlvbiwgYW5kLCBhcyBiZWZvcmUgd3JpdHRlbiwgbmEtIAp0aW9uIGFmdGVyIG5hdGlvbiwgYW5kIHBlb3BsZSBhZnRlciBwZW9wbGUsIGNhbWUgCm9uZSBieSBvbmUgdW5kZXIgdGhlIHlva2Ugb2YgaGlzIHBvd2VyLiAKCjIgCgpBbmQgaGUgdXNlZCBzb290aGluZ3MgYW5kIGJsYW5kaXNobWVudHMgCgoKCkNoYXAuIElYLiBOQVBPTEVPTi4gNTcgCgp3aXRoIG9uZSBraW5nIG9yIHByaW5jZSwgdW50aWwgaGUgZGlyZWN0ZWQgdGhlIAp3aG9sZSBvZiBoaXMgbWlnaHR5IGZwcmNlIGFnYWluc3QgYW5vdGhlciwgYW5kIAp0aGVyZWJ5IG92ZXJ0aHJldyBoaW0sIGFuZCBibG90dGVkIGhpbSwgYW5kIApoaXMgcGVvcGxlLCBmcm9tIGFtb25nc3QgdGhlIG51bWJlciBvZiB0aGUgbmEtIAp0aW9ucywgYW5kIGtpbmdzIG9mIHRoZSBlYXJ0aC4gCgozIAoKQnV0IHdoZW4gYSBzdWl0YWJsZSBzZWFzb24gYXJyaXZlZCwgaGUgYnJva2UgCmZhaXRoIHdpdGggdGhlIGtpbmcsIG9yIHByaW5jZSwgdG8gd2hvbSBoZSBoYWQgCnByZXRlbmRlZCBmcmllbmRzaGlwLCBhbmQgd2hvbSB1bmRlciBmYWxzZSAKLiBwcm9taXNlcyBhbmQgYXNzdXJhbmNlcyBoZSBoYWQgc29vdGhlZCBhbmQgZGUtIApjZWl2ZWQuIAoKNCAKCkFuZCBiZWhvbGQgdGhlcmUgd2FzIGEgcXVlZW4sIHdoUSBoYWQgb2YtIAp0ZW4gcGFpZCB1bnRvIHRoZSB0eXJhbnQgYSByYW5zb20gZm9yIHRoZSBzYWZlLSAKdHkgYW5kIHByZXNlcnZhdGlvbiBvZiBoZXJzZWxmIGFuZCBoZXIga2luZ2RvbSA6IApCdXQgdGhpcyB0eXJhbnQsIG5vdCBzYXRpc2ZpZWQgd2l0aCByYW5zb20gYWZ0ZXIgCnJhbnNvbSwgYWltZWQgYXQgdGhlIHN1Ymp1Z2F0aW9uIG9mIHRoaXMgcXVlZW4sIAphbmQgaGVyIGtpbmdkb20uIAoKNSAKCkFuZCBpdCBzbyBoYXBwZW5lZCwgdGhhdCB0aGlzIHF1ZWVuIHBvc3Nlcy0gCnNlZCBkb21pbmlvbnMgaW4gYSBmYXIgZGlzdGFudCBjb3VudHJ5LCB3aGljaCBpcyAKc2VwYXJhdGVkIGZyb20gdGhlIGxhbmQgaW4gd2hpY2ggc2hlIGR3ZWx0IGJ5IApncmVhdCBhbmQgbWlnaHR5IHNlYXMuIAoKNiAiICcgLiAKCkZvcmVzZWVpbmcgdGhlcmVmb3JlLCBhbmQgYmVpbmcgZm9yZXRvbGQsIHRoZSAKCnAgCgoKCn4gwqsqwrsgKiAKCgoKNVMgTkFQT0xFT04uIENoYXAuIElYLiAKCmRlc3RydWN0aW9uIHdoaWNoIGF3YWl0ZWQgaGVyLCBhbmQgdGhlIGxhbmQgCndoZXJlaW4gc2hlIGxpdmVkLCBzaGUsIGFuZCB0aGUgcHJpbmNlIGhlciBzb24sIApnYXRoZXJlZCB0b2dldGhlciBtYW55IHNoaXBzLCBhbmQgbXVjaCB0cmVhLSAKc3VyZSwgYW5kIGFsbCB0aGUgbm9ibGVzIGFuZCBwZW9wbGUgdGhhdCB3ZXJlIAp3aWxsaW5nIHRvIHNlZWsgc2hlbHRlciBpbiB0aGlzIGZhciBkaXN0YW50IGNvdW4tIAp0cnksIGFuZCBmbGVlIGZyb20gdGhlIHlva2Ugb2YgdGhlIHR5cmFudCwgYW5kIAp0aGUgZXZpbCB3aGljaCB3YXMgdG8gY29tZS4gCgo3IApJbiBsaWtlIG1hbm5lciwgZ29vZCBraW5nIEFsYmFudXMsIGFuZCBoaXMgCnBlb3BsZSwgc2VudCBzaGlwcyB0byBhc3Npc3QgdGhpcyBxdWVlbiwgYW5kIGhlciAKcHJpbmNlLCBub2JsZXMsIGFuZCBwZW9wbGUsIGluIGVzY2hld2luZyB0aGUgCmV2aWwgd2hlcmV3aXRoIHRoZXkgd2VyZSB0aHJlYXRlbmVkLiAKCjggClNvIHRoZXkgd2VudCBpbnRvIHRoZSBzaGlwcyB0aGF0IHdlcmUgdGh1cyAKcHJlcGFyZWQgZm9yIHRoZW0sIGFuZCB3ZXJlIHdhZnRlZCBvdmVyIHRoZSAKZ3JlYXQgb2NlYW4gdW50byB0aGlzIGZhciBkaXN0YW50IGxhbmQsIGFib3VuZC0gCmluZyBpbiBnb2xkLCBhbmQgc2lsdmVyLCBhbmQgcHJlY2lvdXMgc3RvbmVzLCAKd2hlcmVpbiBhIG5ldyBhbmQgbWlnaHR5IGVtcGlyZSwgYmV5b25kIHRoZSAKcmVhY2ggb2YgdGhlIHR5cmFudCwgaXMgbm93IGZvdW5kZWQsIHVuZGVyIHRoZSAKZG9taW5pb24gb2YgdGhpcyBxdWVlbiwgYW5kIHRoZSBwcmluY2UgaGVyIApzb24uIAoKOSAKQW5kIGJlaG9sZCB0aGUgc2FpbHMgb2YgdGhlaXIgdmVzc2VscyB3ZXJlIApzY2FyY2VseSBzcHJlYWQgdG8gdGhlIHdpbmRzIG9mIGhlYXZlbiwgd2hlbiAKdGhlIGhvc3RzIG9mIHRoZSB0eXJhbnQgd2VyZSBzZWVuIGluIG1hbnkgdGhvdS0gCgoKCkNoYXAuIElYLiBOQVBPTEVPTi4gNjkgCgpzYW5kcywgY292ZXJpbmcgYXMgYSBkZXZvdXJpbmcgZmxhbWUgdGhlIG5hdGl2ZSAKbGFuZCB3aGljaCB0aGUgaW5oYWJpdGFudHMgdGhlcmVvZiBoYWQgYmVlbiAKb2JsaWdlZCB0byBmb3JzYWtlIGZvciBzdWNjb3VyIGFuZCBmb3Igc2FmZXR5LiAKCjEwIAoKTmV2ZXJ0aGVsZXNzLCB0aGV5IHdlcmUgYmV5b25kIHRoZSByZWFjaCBvZiAKdGhlaXIgZW5lbWllcywgYmVpbmcgdXBvbiB0aGUgc2VhLCBhbmQgdW5kZXIgCnRoZSBwcm90ZWN0aW9uIG9mIHRoZSBpbnZpbmNpYmxlIG5hdnkgb2Yga2luZyAKQWxiYW51cy4gCgoxMSAKCkFuZCB0aGUgdHlyYW50IHNlaXplZCB1cG9uIGFub3RoZXIsIGFuZCAKc3RpbGwgbW9yZSBwb3dlcmZ1bCBraW5nZG9tLCB3aGljaCBoYWQgZm9yIAptYW55IHllYXJzIGFpZGVkIGhpbSBhbmQgaGlzIGRlc2lnbnMsIHdpdGggaXRzIApiaXBvZCBhbmQgaXRzIHRyZWFzdXJlLCBhbmQgaGUgbGFpZCBob2xkIG9mIGl0cyAKdG93bnMsIGFuZCBjaXRpZXMsIGFuZCBjb3ZlcmVkIHRoZSBsYW5kIHdpdGggCmhpcyBob3N0cy4gCgoxMiAKCkFuZCBoZSBzdG9sZSB0aGUga2luZyB0aGVyZW9mLCBoaXMgcXVlZW4gYW5kIAp0aGUgcHJpbmNlIHRoZWlyIHNvbiwgYW5kIGxlZCB0aGVtIGludG8gY2FwdGktIAp2aXR5LiAKCjEzIAoKQW5kIGhlIHBsYWNlZCBvbiB0aGUgdGhyb25lLCBvbiB3aGljaCB0aGlzIApraW5nIGFuZCBoaXMgZm9yZWZhdGhlcnMgaGFkIHNhdCBmb3IgbWFueSBnZW5lIC0gCnJhdGlvbnMsIGEgbmVhciBraW5zbWFuLCB5ZWEgYSBicm90aGVyIG9mIGhpcyAKb3duLCB3aG8gaGFkIG5vIHJpZ2h0IG9yIHRpdGxlIHRoZXJldG8uIAoKZCAyIAoKCgoKCgo2MCBOQVBPTEVPTi4gQ2hhcC4gSVguIAoKMTQgCgpBbmQgdGhlIHBlb3BsZSBvZiB0aGlzIG9wcHJlc3NlZCBraW5nZG9tLCAKcm9zZSB1cCBhZ2FpbnN0IHRoZSBkZWNlaXRmdWwgdHlyYW50LCBhbmQgZGUtIAptYW5kZWQgdGhhdCB0aGVpciBraW5nLCBxdWVlbiwgYW5kIHByaW5jZSwgYW5kIAp0aGUgZnJlZWRvbSBvZiB0aGUgbGFuZCBzaG91bGQgYmUgcmVzdG9yZWQgdW4tIAp0byB0aGVtLiAKCjE1IAoKQnV0IHRoZSB0eXJhbnQgd2FzIGluZXhvcmFibGUsIGFuZCBoZSBzZW50IApzdGlsbCBncmVhdGVyIGFuZCBtb3JlIHBvd2VyZnVsIGhvc3RzIGFnYWluc3QgCnRoZSBwZW9wbGUsIGFuZCBzbGV3IGFsbCB0aG9zZSB0aGF0IHdlcmUgZm91bmQgCmluIGFybXMuIAoKLicgMTYgCgpBbmQgaGUgY3Jvd25lZCBoaXMgYnJvdGhlciwgYW5kIG1hZGUgaGltIApydWxlciBvdmVyIHRoaXMgcGVvcGxlLCB3aGlsZSB0aGUgc3RyZWV0cyBvZiB0aGVpciAKY2l0aWVzIHdlcmUgeWV0IHJlZWtpbmcgd2l0aCB0aGUgYmxvb2Qgb2YgdGhlIApicmF2ZSBkZWZlbmRlcnMgb2YgdGhlaXIgbGF3ZnVsIGtpbmcgYW5kIG5hdGl2ZSAKbGFuZC4gCgoxNyAKTm93IGdvb2Qga2luZyBBbGJhbnVzLCBhbmQgaGlzIHBlb3BsZSwgCmhhZCBzZW50IGZpZ2h0aW5nIG1lbiBhbmQgdHJlYXN1cmUsIGFuZCBhbGwgCm1hbm5lciBvZiB3YXJsaWtlIGluc3RydW1lbnRzIHRvLiB0aGUgYXNzaXN0YW5jZSAKb2YgdGhpcyBvcHByZXNzZWQgY291bnRyeSA7IGJ1dCB0aGUgcG93ZXIgYW5kIApxdWlja25lc3Mgb2YgdGhlIHR5cmFudCwgYW5kIGhpcyBza2lsbCBpbiB3YXIgCndlcmUgZXhjZWVkaW5nIGdyZWF0LCBhbmQgaGUgb3ZlcnRocmV3IHRoZSAKCgoKXiAuKioqKiogCgoKCkNoYXAuIElYLiBOQVBPTEVPTi4gPG4gCgphcm1pZXMgb2YgdGhlIGNhcHRpdmUga2luZywgYmVmb3JlIHRob3NlIG9mIHRoZSAKQWxiaW9ucyBjb3VsZCBjb21lIHVwIHRvIHRoZWlyIGFpZC4gCgoxOCAKQW5kLCBsbyEgd2hlbiB0aGUgdHlyYW50IGJlaGVsZCBhbiBhci0gCm15IG9mIGdvb2Qga2luZyBBbGJhbnVzIG9uIGhpcyBvd24gc2lkZSBvZiAKdGhlIHNlYSwgaGUgcmVqb2ljZWQgaW4gaGlzIGhlYXJ0LCBhbmQgcHJvZmFuZS0gCmx5IHNhaWQ7IHRmayBOb3cgaXQgaGF0aCBwbGVhc2VkIHRoZSBMb3JkIHRvIGdpdmUgCm1lIHZlbmdlYW5jZSBhZ2FpbnN0IHRoaXMga2luZywgYW5kIGhpcyBwZW8tIApwbGUsIGZvciBJIHNoYWxsIHB1dCB0aGVpciBob3N0cyB0byB0aGUgc3dvcmQsIGFuZCAKbm90IGEgbWFuIGFtb25nc3QgdGhlbSBzaGFsbCByZXR1cm4gdG8gaGlzIG5hLSAKdGl2ZSBsYW5kLCB0byB0ZWxsIHRoZSBkaXJlZnVsIHRpZGluZ3MuIiAKCjE5IAoiIEluIHRoZSBsYW5kIG9mIEFsYmlvbiBJIHNoYWxsIGNhdXNlIHN0cmVhbXMgCm9mIHRlYXJzIHRvIGZsb3cuIiAKCjIwIAoiIEhlciBtb3RoZXJzIHNoYWxsIGJld2FpbCB0aGVpciB5b3V0aGZ1bCAKYW5kIHdhcmxpa2Ugc29ucyBzbGFpbiBieSBHYWxsaWMgc3dvcmRzLiIgCgoyMSAKIiBIZXIgaGVscGxlc3Mgb3JwaGFucyBzaGFsbCBsaXNwIGFuZCB3ZWVwIAp0aGUgZmFsbCBvZiBtYW55IGEgZm9uZCBmYXRoZXIuIiAKCsK7MiAuICfigKIgCgpTbyBoZSBoYXN0ZW5lZCB0b2dldGhlciwg4oCiIGJ5IGxvbmcgYW5kIHRpcmUtIApzb21lIG1hcmNoZXMsIGhpcyBkZXNwZXJhdGUgYW5kIGJsb29kLXRoaXJzdHkgCmxlZ2lvbnMsIGFuZCBmbGV3IGZyb20gdGhlIGNhcGl0YWwgb2YgaGlzIG1pZ2h0eSAKClAzIAoKCgo2KiBOQVBPTEVPTi4gQ2hhcC4gSVguIAoKZW1waXJlLCBhbmQgcHV0IGhpbXNlbGYgYXQgdGhlIGhlYWQgb2YgaGlzIGFyLSAKbWllcy4gCgoyMyAKCkJ1dCBiZWhvbGQgdGhlIGhvc3RzIG9mIHRoZSBBbGJpb25zIGhhZCwgZXJlIAp0aGlzLCBsYW5kZWQgb24gdGhlIHR5cmFudCdzIHNpZGUgb2YgdGhlIHNlYSwgYW5kIGhhZCAKb3ZlcnRocm93IG5vbmUgb2YgaGlzIGFybWllcyB3aXRoIGdyZWF0IHNsYXVnaHQtIAplciwgYW5kIGhhZCBjYXVzZWQgdGhlbSB0byBxdWl0IHRoZSBjb3VudHJ5IApvZiB0aGUgZXhpbGVkIHF1ZWVuLCB3aGVyZWluIHRoZXkgdGhlbiB3ZXJlLCAKYW5kIHdoZXJldXBvbiB0aGV5IGhhZCB1bmxhd2Z1bGx5IHNlaXplZCBpbiAKbWFubmVyIGFib3ZlIHdyaXR0ZW4uIAoKMjQgCgpBbmQgaW4gdGhpcyBiYXR0bGUgdGhlIHNraWxsIG9mIHRoZSBjaGllZnMgYW5kIApjYXB0YWlucywgYW5kIHRoZSB2YWxvdXIgb2YgdGhlIHNvbGRpZXJzIG9mIGtpbmcgCkFsYmFudXMgc2hvbmUgZXhjZWVkaW5nbHkgOyB5ZWEgdHJ1bHkgdG8gdGhlaXIgCm93biBpbW1vcnRhbCBnbG9yeSwgYW5kIHRoZSB0ZXJyb3IgYW5kIGRpc21heSAKb2YgdGhlaXIgZW5lbWllcy4gCgoyNSAKCk5vdyBpdCBzbyBoYXBwZW5lZCwgdGhhdCB0aGUgdHlyYW50IGNvbnRpbnUtIAplZCB0byB3YXggZXhjZWVkaW5nIHdyb3RoLCBhbmQgYWdhaW4gc3dvcmUsIAp0aGF0IG5vdCBhIG1hbiBvZiB0aGlzIGFybXkgb2YgdGhlIEFsYmlvbnMgCnNob3VsZCBldmVyIHJldHVybiB0byBoaXMgbmF0aXZlIGxhbmQuIAoKMjYgCgpOZXZlcnRoZWxlc3MsIGhlIGFkdmFuY2VkIG5vdCBhZ2FpbnN0IHRoZW0gCmhpbXNlbGY7IGJ1dCBzZW50IG9uZSBvZiB0aGUgY2FwdGFpbnMgb2YgaGlzIGhvc3RzLCAKCgoKQ2hhcC4gSVguIE5BUE9MRU9OLiA2MyAKCndpdGggYSBudW1lcm91cyBhcm15LCB0byBkcml2ZSB0aGUgQWxiaW9ucyAKaW50byB0aGUgc2VhLCB3aGlsZSBoZSBsb29rZWQgb24gYWZhciBvZmYuIAoKMjcgCgpCdXQgdGhlIGJyYXZlIGNhcHRhaW4gd2hvIGxlZCB0aGUgYXJteSBvZiAKZ29vZCBraW5nIEFsYmFudXMgZmlyc3QgaW50byB0aGUgY291bnRyeSwgdG8gCnN1Y2NvdXIgdGhlIGluaGFiaXRhbnRzIHRoZXJlb2YsIGFuZCB0aGVyZWFmdGVyIApiYWNrIHVudG8gdGhlIGNvYXN0LCB0aHJvdWdoIGRhbmdlcnMgYW5kIGRpZmZpLSAKY3VsdGllcywgZ3JlYXRlciB0aGFuIGV2ZXIgYXJteSBoYWQgbWV0IGJlLSAKZm9yZSwgYmFkZSBkZWZpYW5jZSB0byB0aGUgaG9zdHMgb2YgdGhlIEdhdWxzLCAKYW5kIHdoZW4gaGUgY2FtZSB0byB0aGUgc2VhLXNpZGUsIGhlIGdhdmUgCnRoZW0gYmF0dGxlLCBhbmQgY292ZXJlZCB0aGUgcGxhaW4gd2l0aCB0aGVpciAKZGVhZC4gCgoyOCAKClRoZXkgcmV0cmVhdGVkLCB0ZXJyaWZpZWQgYW5kIGFwcGFsbGVkLCBub3IgCmRpZCB0aGV5IHNlZWsgZnVydGhlciB0byBbbW9sZXN0IHRoZSBBbGJpb25zLCAKd2hvbSB0aGV5IHBlcm1pdHRlZCB0byBnbyBpbnRvIHRoZSBzaGlwcyB3aGljaCAKd2VyZSBwcmVwYXJlZCB0byByZWNlaXZlIHRoZW0uIAoKMjkgCkJ1dCwgYWxhcyAxIGluIHRoaXMgZ2xvcmlvdXMsIGJ1dCBkaXJlZnVsIGJhdHRsZSwgCnRoZXJlIGZlbGwgbWFueSB2YWxpYW50IG1lbiwgYW5kIGluIHRoZSBtaWRzdCAKb2YgdGhlbSwgY292ZXJlZCB3aXRoIGdsb3J5LCBhbmQgY3Jvd25lZCB3aXRoIAp2aWN0b3J5LCB0aGVpciBicmF2ZSBhbmQgc2tpbGZ1bCBjaGllZiwgd2hvc2UgCm5hbWUgbm93IHN0YW5kcyBoaWdoIGluIHRoZSB0ZW1wbGUgb2YgRmFtZS4gCgozMCAKQW5kIHRoZSBraW5nIG9mIHRoZSBBbGJpb25zLCBhbmQgYWxsIGhpcyBwZW8tIAoKCgouJ18uLiAuci4qLcKrIAoKCgo2NCBOQVBPTEVPTi4gQ2hhcC4gSVguIAoKcGllIG1vdXJuZWQgZXhjZWVkaW5nbHkgb3ZlciB0aGUgZmFsbCBvZiB0aGlzIApncmVhdCBtYW4uIAoKMzEgCgpOYXksIHRoZSB2ZXJ5IGVuZW15IHdoaWNoIGhlIGhhZCBjb25xdWVyLSAKZWQsIGdhdmUgdGVzdGltb255IG9mIHRoZSBhZG1pcmF0aW9uIGFuZCByZS0gCnZlcmVuY2UgaW4gd2hpY2ggdGhleSBoZWxkIHRoZSB3YXJsaWtlIHZpcnR1ZXMgCm9mIHRoaXMgZGVwYXJ0ZWQgaGVyby4gCgozMiAKCk5ldmVydGhlbGVzcywgaXQgcGxlYXNlZCB0aGUgTG9yZCB0byBkZWxpdmVyIApmb3IgYSB0aW1lLCB0aGlzIGRldm90ZWQgbGFuZCwgYW5kIHRoZSBkd2VsbGVycyAKdGhlcmVpbiwgaW50byB0aGUgaGFuZHMgb2YgdGhlIHR5cmFudCwgd2hvIGNvbi0gCnF1ZXJlZCB0aGUgc2FtZSwgYW5kIGtlcHQgdGhlIGtpbmcsIHF1ZWVuLCBhbmQgCnByaW5jZSB0aGVyZW9mLCBpbiBkcmVhcnkgYW5kIHNvcnJvd2Z1bCBjYXB0aS0gCnZpdHkuIAoKMzMgCgpCdXQgYSB2b2ljZSBjb21pbmcgYXMgaXQgd2VyZSBmcm9tIGhlYXZlbiwgCnNwYWtlIGFuZCBzYWlkLCAiIE8gcGVvcGxlIG9mIEliZXJpYSwgYmUgb2YgZ29vZCAKY291cmFnZSwgYW5kIHBlcnNldmVyZSBpbiB5b3VyIG5vYmxlIGFuZCBwYS0gCnRyaW90aWMgZXhlcnRpb25zIGluIGJlaGFsZiBvZiB5b3VyIGtpbmcgYW5kIG5hLSAKdGl2ZSBsYW5kLCB1bmRlciB0aGUgaGFwcHkgYXNzdXJhbmNlLCB0aGF0IGJ5IAp0aGUgYmxlc3Npbmcgb2YgUHJvdmlkZW5jZSwgdGhleSBzaGFsbCBiZSBjcm93bmVkIAp3aXRoIHVsdGltYXRlIGFuZCBnbG9yaW91cyBzdWNjZXNzLicqIAoKCgpDSEFQLiBYLCAKCgoKQ2hhcC4gWC4gTkFQT0xFT04uIE9TIAoKCgpDSEFQLiBYLiAKCjEuIFdpc2UgQ291bnNlbGxvcnMgLCBhbmQgbWlnaHR5IENhcHRhaW5zIG9mIGhvc3RzIGFuZCAKb2Ygc2hpcHMgLCB3aXRoIHdob20gaXQgcGxlYXNlZCB0aGUgTG9yZCB0byBibGVzcyBLaW5nIApBbGJhbnVzLiDigJQgMi4gSGUgaXMgZGVwcml2ZWQgb2Ygc29tZSBvZiB0aGVtIGJ5IGRlYXRoKiAK4oCUIDMuIExhbWVudGF0aW9ucyBmb3IgdGhlIGxvc3MgdGhlcmVvZiAKCk5vdywgYXMgYmVmb3JlIHdyaXR0ZW4sIGl0IGhhZCBwbGVhc2VkIHRoZSAKTG9yZCBpbiB0aGVzZSBsYXR0ZXIgYW5kIHRyb3VibGVzb21lIHRpbWVzLCB0byAKYmxlc3MgZ29vZCBraW5nIEFsYmFudXMsIHdpdGggZ3JlYXQgc3RhdGVzbWVuLCAKYW5kIGNvdW5zZWxsb3JzLCBleGNlbGxpbmcgaW4gd2lzZG9tLCBhbmQgaW4gCnNwZWVjaC4gCgoyIAoKQW5kIGJlaG9sZCwgdGhlIGtpbmcgYW5kIGhpcyBwZW9wbGUgbG9va2VkIAp1cCB0byB0aG9zZSBtZW4gZm9yIHN1Y2NvdXIgYW5kIGZvciBzYWZldHksIHVuLSAKZGVyIHRoZSBibGVzc2luZyBvZiBQcm92aWRlbmNlLCBhZ2FpbnN0IHRoZSBtaXMtIApjaGlldm91cyBtYWNoaW5hdGlvbnMgb2YgdGhlIGN1bm5pbmcgdHlyYW50LCAKYW5kIHRoZSBkYW5nZXJzIHdoZXJld2l0aCB0aGUgbmF0aW9uIHdhcyBlbi0gCnZpcm9uZWQuIAoKMyAKCkJ1dCBiZWhvbGQgaXQgcGxlYXNlZCB0aGUgTG9yZCB0byByZW1vdmUgCmZyb20gdGhpcyBsb3dlciB3b3JsZCwgc2V2ZXJhbCBvZiB0aG9zZSBncmVhdCBhbmQgCmV4Y2VsbGVudCBzdGF0ZXNtZW4uIAoKNCAKClRoZWlyIGVhcnRobHkgcmVtYWlucyB3ZXJlLCBhbWlkc3QgdGhlIGxhLSAKCgoKNjYgTkFQT0xFT04uIENoYXAuIFguIAoKbWVudGF0aW9ucyBvZiBzb3Jyb3dpbmcsIGFuZCBhZG1pcmluZyBmcmllbmRzLCAKZGVwb3NpdGVkIGluIHRoZSBzaWxlbnQsIGFuZCBhbG1vc3QgbXV0dWFsIGdyYXZlLiAKCjUgClRoZSBtZW1vcnkgb2YgdGhlaXIgZXhjZWxsZW5jZXMgc2hhbGwgbmV2ZXItIAp0aGVsZXNzIGxpdmUgZm9yIGV2ZXIgaW4gdGhlIGJvc29tIG9mIHBvc3Rlcml0eSAhIAoKNiAKVGhlaXIgZ2xvcmlvdXMgc3Bpcml0cyBzaGFsbCBzaGluZSBhcyBicmlnaHQgCnN0YXJzIGluIHRoZSBmaXJtYW1lbnQgb2YgZmFtZSAhIAoKNyAKCkFuZCBiZWhvbGQgaXQgaXMgdGhlIHByYXllciBvZiB0aGUga2luZyBhbmQgCmhpcyBwZW9wbGUsIHRoYXQgc3VjY2VlZGluZyBjb3Vuc2VsbG9ycyBtYXkgCmJlIGluc3BpcmVkIHdpdGggdGhlIHNhbWUgcGF0cmlvdGlzbSBhbmQgd2lzLSAKZG9tLCB3aGljaCBkaXN0aW5ndWlzaGVkIHRob3NlIHNhZ2UgbWVuIG5vdyAKbm8gbW9yZS4gCgo4IAoKVGhhdCB0aGUgcmFkaWFudCBhbmQgcmVzcGxlbmRlbnQgYnJpbGxpYW5jeSAKb2YgdGhlaXIgZ3JlYXQgc291bHMsIG1heSBzZXJ2ZSBhcyBhIGxpZ2h0IG9yIGJlYS0gCmNvbiwgdG8gZGlyZWN0IHRoZSBjb3Vuc2VscyBhbmQgYWN0aW9ucyBvZiB0aG9zZSwgCndobyBub3csIG9yIGluIHRpbWUgY29taW5nLCBtYXkgYmUgcGxhY2VkIAphdCB0aGUgaGVsbSBvZiB0aGUgc3RhdGUuIAoKOSAKQW5kIHRoZSBraW5nIGFuZCBhbGwgdGhlIHBlb3BsZSBwcmF5ZWQsIHRoYXQgCnRoZSBndWFyZGlhbiBhbmQgYW5nZWwgc3Bpcml0IG9mIHB1cmUgYW5kIHVuLSAKcG9sbHV0ZWQgcGF0cmlvdGlzbSwgbWlnaHQgZGlyZWN0IHRoZSBjb3Vuc2VscyAKb2YgdGhlIGxhbmQgb2YgQWxiaW9uLCBkdXJpbmcgdGhlIHBlcmlscyBhbmQgCnRyb3VibGVzIHdoZXJld2l0aCBpdCB3YXMgYmVzZXQgb24gZXZlcnkgc2lkZS4gCgoKCkNoYXAuIFgsIE5BUE9MRU9OLiA2NyAKCjEwIApBcyBiZWZvcmUgd3JpdHRlbiwgaXQgaGFkIGluIGxpa2UgbWFubmVyIHBsZWFzLSAKZWQgdGhlIExvcmQsIHRvIGRlcHJpdmUgdGhpcyBraW5nIGFuZCBoaXMgcGVvLSAKcGxlLCBvZiBtaWdodHkgYW5kIHJlbm93bmVkIGNoaWVmcyBhbmQgY2FwLSAKdGFpbnMgb2YgaG9zdHMgYW5kIGZsZWV0cywgd2hvIGZlbGwgaW4gdGhlIG1pZHN0IApvZiBnbG9yeSBhbmQgb2YgdmljdG9yeSwgCgoxMSAKQW5kIGFtb25nc3QgdGhlIGNhcHRhaW5zIG9mIHRoZSBmbGVldHMgb2YgdGhlIApBbGJpb25zLCB0aGVyZSB3YXMgYSBtYW4sIHdob3NlIG5hbWUgd2FzIAprbm93biBpbiB0aGUgcmVtb3Rlc3QgY29ybmVyIG9mIHRoZSBlYXJ0aCwgYW5kIAp3aG8gd2FzIGFuIGV4Y2VlZGluZyB0ZXJyb3IgdW50byBhbGwgdGhlIGVuZS0gCm1pZXMgb2YgaGlzIGNvdW50cnkuIAoKMTIgCk5vdyB0aGlzIG1hbiBwdXJzdWVkIGV2ZW4gdW50byB1dHRlciBkZS0gCnN0cnVjdGlvbiBhbGwgdGhlIHNoaXBzIG9uIHRoZSBmYWNlIG9mIHRoZSBvY2VhbiwgCnRoYXQgYmFkZSBkZWZpYW5jZSB1bnRvIHRob3NlIG9mIGtpbmcgQWxiYW51cy4gCgoxMyAKSGlzIGZhbWUgd2F4ZWQgZXhjZWVkaW5nIGdyZWF0LCBhbmQgYWxsIHRoZSAKZW5kcyBvZiB0aGUgZWFydGggYm9yZSB3aXRuZXNzIHVudG8gaXQuIAoKMTQgCkJ5IHRoZSBibGVzc2luZyBvZiBHb2QgaGUgYnJva2UgaW4gdHdhaW4sIAp3aXRoIHRlcnJpYmxlIG92ZXJ0aHJvdywgdGhlIGxlYWd1ZXMgYW5kIGNvbS0gCmJpbmF0aW9ucyB0aGF0IHdlcmUgcGxvdHRpbmcgYnkgdGhlIHR5cmFudCwgYW5kIApoaXMgc2F0ZWxsaXRlcywgYWdhaW5zdCBraW5nIEFsYmFudXMgYW5kIGhpcyAKCgoKRzggTkFQT0xFT04uIENoYXAuIFguIAoKcGVvcGxlLCBhbmQgZHJvdmUgdGhlbSBsaWtlIGNoYWZmIGJlZm9yZSB0aGUgCndpbmQuIAoKVGhleSB2YW5pc2hlZCBhdCBoaXMgcHJlc2VuY2UsIGFzIGRvZXMgdGhlIAptb3JuaW5nIHZhcG91ciBiZWZvcmUgdGhlIGJyaWdodCBiZWFtcyBvZiB0aGUgCnN1biA7IG9yIGxpa2UgdGhlIGRhcmsgY2xvdWQsIHdoZW4gaXQgaXMgYnVyc3QgCmFzdW5kZXIsIGFuZCBzY2F0dGVyZWQgYnkgdGhlIGxpZ2h0bmluZyBhbmQgCnRoZSB0ZW1wZXN0LiAKCjE2IAoKTm93IGl0IGNhbWUgdG8gcGFzcywsIHRoYXQgdGhlIHNoaXBzIG9mIHRoZSAKR2F1bHMsIGFuZCBvZiB0aGVpciBhbGxpZXMsIGdhdGhlcmVkIHRvZ2V0aGVyLCAKeWV0IG9uY2UgbW9yZSwgYW5kIHRlbXB0ZWQgdG8gYmF0dGxlIHRoZSBmbGVldHMgCm9mIGdvb2Qga2luZyBBbGJhbnVzLCB3aGljaCB3ZXJlIGNvbW1hbmRlZCAKYnkgdGhpcyBtaWdodHkgbWFuIG9mIHdhci4gCgoxNyAKQW5kIHdoZW4gdGhleSB3ZXJlIHRodXMgZ2F0aGVyZWQgdG9nZXRoZXIsIApoZSBmZWxsIHVwb24gdGhlbSwgYW5kIG92ZXJ0aHJldyB0aGVtLCB3aXRoIAp0ZXJyaWJsZSBkZXN0cnVjdGlvbiA7IGFuZCBsbyAhIGhhcmRseSBhIHNpbmdsZSAKc2hpcCBlc2NhcGVkIGZyb20gaGlzIGZpaXJ5LiAKCjE4IApBbmQgaGUgZ2F2ZSB0aGUgY2FyY2FzZXMgb2YgdGhlIGVuZW1pZXMgb2YgCmhpcyBjb3VudHJ5IHVudG8gdGhlIGZvd2xzIG9mIGhlYXZlbiwgYW5kIHRoZSAKZmlzaGVzIG9mIHRoZSBzZWEuIAoKMTkgCkZvciBsbyBhbmQgYmVob2xkLCB0aGUgZmFjZSBvZiB0aGUgbWlnaHR5IAoKCgpDaGFwLiBYLiBOQVBPTEVPTi4gNjkgCgpkZWVwIHdhcyBjb3ZlcmVkIHdpdGggdGhvdXNhbmRzIG9mIHRoZWlyIApzbGFpbi4gCgoyMCAKCkJ1dCwgYWxhcyAhIGluIHRoZSBtaWRzdCBvZiB0aGlzIGRpcmVmdWwgY29uLSAKZmxpY3QsIHRoZSBncmVhdCBjYXB0YWluIG9mIHRoZSBmbGVldCBvZiB0aGUgQWwtIApiaW9ucyBmZWxsICEgCgoyMSAKCkhpcyBkZXBhcnRpbmcgc3Bpcml0IGZsZXcgb24gaGlnaCwgb24gdGhlIGdvbC0gCmRlbiB3aW5ncyBvZiB2aWN0b3J5LCBhbmQgdG9vayB1cCBpdHMgYWJvZGUgaW4gCnRoZSBtYW5zaW9ucyBvZiBpbW1vcnRhbCBnbG9yeSAhIAoKMjIgCgpBbmQgbG8gISBhcyB0aGUgaGVybyBmZWxsLCB0aGUgb2NlYW4gaGVhdmVkIGEgCnNpZ2ggb2YgbGFtZW50YXRpb24sIGZvciBzaGUgaGFkIHJlam9pY2VkIHRvIGJlYXIgCm9uIGhlciBtaWdodHkgYmlsbG93cyBhIHdhcnJpb3Igb2Ygc3VjaCBncmVhdCByZS0gCm5vd24sIGFuZCB3aG8gaGFkIGZvciBtYW55IHllYXJzIGJlZW4gdGhlIApjb21wYW5pb24gb2YgaGVyIHdvbmRyb3VzIHdheXMuIAoKMjMgCgpTaGUgaGFkIHdpdG5lc3NlZCB0aGUgY2FsbW5lc3Mgb2YgaGlzIHNvdWwsIAphbWlkc3QgdGhlIHJhZ2luZ3Mgb2YgdGhlIGhpZGVvdXMgc3Rvcm1zIGFuZCAKdGVtcGVzdHMgd2hpY2ggdHJvdWJsZSBoZXIgZ3JlYXQgd2F0ZXJzLiAKCjI0IAoKU2hlIGhhZCBtb3Jlb3ZlciBhZG1pcmVkIGhpcyBleGNlZWRpbmcgCnNraWxsIGFuZCB2YWxvdXIsIGluIHRoZSB0ZXJyaWJsZSBiYXR0bGVzIHdoaWNoIGhlIApoYWQgZm91Z2h0IGFuZCBjb25xdWVyZWQsIGluIHRoZSB2YXJpb3VzIGNsaW1lcyAKdG8gd2hpY2ggc2hlIGhhZCBib3JuZSBoaW0gaW4gcHJvdWQgdHJpdW1waCwgCgoKCjcwIE5BUE9MRU9OLiBDaGFwLiBYLiAKCnRvIHRoZSBjb25mdXNpb24gYW5kIGRpc21heSBvZiB0aGUgZW5lbWllcyBvZiAKaGlzIGNvdW50cnkuIAoKMjUgClNvIGFsc28gdGhlIGhlYXJ0cyBvZiB0aG9zZSB2YWxpYW50IHNhaWxvcnMgYW5kIAptYXJpbmVycywgd2hpY2ggbm8gdGVtcGVzdCBoYWQgZXZlciBhcHBhbGxlZCwgCmFuZCB3aGljaCBubyBmb2UgaGFkIGV2ZXIgZGF1bnRlZCwgbWVsdGVkIGluLSAKdG8gc29ycm93LiAKCjI2IApGb3IgbG8gISB0aGUgc2FpbG9ycyBhbmQgbWFyaW5lcnMgb2YgQWxiaW9uLCAKd2VwdCBvdmVyIHRoZSBmYWxsIG9mIHRoZWlyIGFkb3JlZCBjaGllZiwgbm93IG5vIAptb3JlICEgCgoyNyAKQmVob2xkIHRoZSBiYW5uZXJzIG9mIG1hbnkgbmF0aW9ucywgY29uLSAKcXVlcmVkIG9uIHRoZSBkZWVwLCBzaHJvdWQgdGhlIHByb3VkIHRvbWIgb2YgCnRoZSBoZXJvICEgCgoyOCAKQW5kIGtpbmcgQWxiYW51cywgYW5kIGFsbCBoaXMgcGVvcGxlLCBpbiAKbGlrZSBtYW5uZXIsIGxhbWVudGVkIHRoZSBmYWxsIG9mIHRoaXMgbWF0Y2hsZXNzIAptYW4uIAoKMjkgCkhpcyByZXNwbGVuZGVudCBzcGlyaXQgc2hpbmVzIGFzIGEgcG9sYXIgc3RhciAKaW4gdGhlIGJyaWdodCBmaXJtYW1lbnQgb2YgZmFtZSAhIAoKU08gCkl0IGlzIGluIHRoZSBtaWRzdCBvZiBhIGdyb3VwIG9mIGRlcGFydGVkIGhlLSAKcm9lcywgYW5kIG1hbnkgdGhlcmUgYmUgYW1vbmdzdCB0aGUgd2Fycmlvcj8gCgoKCl4gQSAKCgoKQ2hhcC4gWC4gTkFQT0xFT04uIDcxIAoKb2YgdGhlIEFsYmlvbnMsIG5vdyBvbiBlYXJ0aCwgd2hvIHByZXNzIGVhZ2VyLSAKbHkgdG8gam9pbiB0aGlzIGdsb3Jpb3VzIGNvbnN0ZWxsYXRpb24gYnkgYWltaW5nIAphdCB0aGUgcGFsbSBvZiB2aWN0b3J5IGFuZCByZW5vd24uIAoKMzEgCkFuZCBiZWhvbGQsIHdoZW4gdGhlIHRpZGluZ3Mgb2YgdGhlIGRlYXRoIG9mIAp0aGVzZSBncmVhdCBjb3Vuc2VsbG9ycyBhbmQgd2FycmlvcnMgb2YgdGhlIEFsLSAKYmlvbnMsIHJlYWNoZWQgdGhlIGVhcnMgb2YgTmFwb2xlb24sIHdobyBoYXRlZCAKYW5kIGZlYXJlZCB0aGVtIGluIGhpcyBoZWFydCwgaGUgZ3Jpbm5lZCBhIApzbWlsZSBvZiBkZXZpbGlzaCBnbGFkbmVzcy4gCgozMiAKU3VjaCBhcyBpcyB0byBiZSBzZWVuIG9uIHRoZSBtZWFncmUgdmlzYWdlIG9mIAp0aGUgc3BlY3RyZSBvZiBkZWF0aCwgd2hlbiBoaXMgaHVuZ3J5IGV5ZSBzdXItIAp2ZXlzIGEgZmllbGQgb2YgYmF0dGxlLCBoZWFwZWQgd2l0aCBpbm51bWVyYWJsZSAKc2xhaW4uIAoKMzMgCk9yIHN1Y2ggYSBzbWlsZSwgYXMgU2F0YW4sIHRoZSBlbmVteSBvZiAKbWFua2luZCwgaXMgc3VwcG9zZWQgdG8gZ3Jpbiwgd2hlbiBnb29kIGFuZCAKaG9seSBtZW4gYXJlIHJlbW92ZWQgZnJvbSB0aGlzIGxvd2VyIHdvcmxkIDsgCndob3NlIHBpb3VzIGV4YW1wbGUsIGFuZCB2aXJ0dW91cyBzdHJ1Z2dsZXMsIApoYWQgc2F2ZWQgdGhvdXNhbmRzIG9mIHRoZWlyIGZlbGxvdy1jcmVhdHVyZXMsIApmcm9tIGhpcyBoZWxsaXNoIGdyYXNwLiAKCgoKbiBOQVBPTEVPTi4gQ2hhcC4gWEkuIAoKCgpDSEFQLiBYTCAKCjEuIFRoZSBPYWsgb2YgQWxiaW9uLiDigJQgJSBIZSBjbGFpbWV0aCB0aGUgc292ZXJlaWdudHkgCm9mIHRoZSBXb29kIGFuZCBvZiB0aGUgRmxvb2QuIAoKTm93IHRoZSBvYWssIHdoZW4gaGUuIHJlYXJlZCBoaXMgcHJvdWQgaGVhZCAKaW4gdGhlIGZvcmVzdHMgb2YgQWxiaW9uLCB0aHVzIHNwYWtlIHVudG8gdGhlIApvdGhlciB0cmVlcyB0aGVyZW9mIDogCgoyIArigqzigqwgQmVob2xkLCBhcmlzaW5nIGluIHRoZSBtaWRzdCBvZiB5b3UsIHRoZSAKbW9uYXJjaCBvZiB0aGUgd29vZCwgYW5kIG9mIHRoZSBmbG9vZCBhbHNvICEiIAoKMyAKIiBXaGVuIHRoaXMgYWRhbWFudGluZSB0cnVuaywgYW5kIHRoZXNlIApicmF3bnkgYXJtcyBvZiBtaW5lOyBzaGFsbCBoYXZlIG91dGxpdmVkIGFuIApodW5kcmVkIHllYXJzLCBhbmQgdGVuIHRob3VzYW5kIHN0b3JtcywgSSBzaGFsbCAKb25seSBmYWxsIHRvIHJpc2UgbW9yZSBnbG9yaW91cyBcIiAKCjQgCiIgVGhlbiBzaGFsbCBJIGJlY29tZSBhcyBhIG1pZ2h0eSBjYXN0bGUgb24gCnRoZSBkZWVwLCByaWRpbmcgdHJpdW1waGFudCBvbiB0aGUgYmlsbG93IGFuZCAKaW4gdGhlIHN0b3JtICEiIAoKNSAKIiBJbiBteSBzdHVwZW5kb3VzIGJvc29tIHNoYWxsIGJlIGNvbnRhaW4tIAplZCBhbiBob3N0IG9mIGhlcm9lcywgaGFyZHkgYW5kIGludmluY2libGUgYXMgCgoKCkNoYXAuIFhMIE5BUE9MRU9OLiA3MyAKCm15c2VsZiwgcHJvb2YgYWdhaW5zdCB0aGUgc3Rvcm0gYW5kIHRoZSB0ZW0tIApwZXN0LiIgCgo2IAoiIEZyb20gbXkgZGFyayBpcm9ueSBzaWRlcyB0aGUgZGF1bnRsZXNzIHNvbnMgCm9mIEFsYmlvbiBzaGFsbCBkYXJ0IHRoZSBsaWdodG5pbmcsIGFuZCBodXJsIHRoZSAKdGh1bmRlci1ib2x0LiIgCgo3IAoKIiBUaGUgb2FrIG9mIG90aGVyIGxhbmRzLCB3aGVuIGl0IHNoYWxsIGNvbWUgCmludG8gY29udGFjdCB3aXRoIG1lLCBhbmQgdGhlIHdhcnJpb3JzIHdpdGhpbiAKbWUsIHNoYWxsIGJlIGFzIHRoZSBDeXBydXMgOyBhIGNvZmZpbiwgaW4gd2hpY2ggCnRoZSBlbmVteSBvZiBBbGJpb24gc2hhbGwgZWl0aGVyIGZpbmQgYSBidXJuLSAKaW5nLCBvciBhIHdhdGVyeSBncmF2ZS4iIAoKOCAKCiIgQXJvdW5kIHRoZSBpc2xlIG9mIEFsYmlvbiBJIHNoYWxsIHJpZGUgYXMgYSAKZ3VhcmRpYW4gYW5kIHByb3RlY3RpbmcgYW5nZWwgOyBidXQgdW50byBkaXMtIAp0YW50IGFuZCBob3N0aWxlIGxhbmRzIEkgc2hhbGwgY2FycnkgdGVycm9yIGFuZCAKZGlzbWF5LiIgCgo5IAoKKiAKCiIgV2hlbiBJIHNoYWxsIGdsaWRlIGluIHByb3VkIG1hamVzdHkgYWxvbmcgCnRoZSBzZWEtZ2lydCBzaWRlIG9mIG15IG5hdGl2ZSBtb3VudGFpbiBvciB2YWwtIApsZXksIGxldCB0aGUgb2FrIG9mIEFsYmlvbiBiZWhvbGQgZnJvbSBhZmFyIGhlciAKa2luZHJlZCBraW5nLCBhbmQgaGFzdGVuIHRvIGJlIGxpa2UgdW50byBoaW0gaW4gCm1hamVzdHkgYW5kIHBvd2VyLCBhbmQgbGV0IGFsbCB0aGUgdHJlZXMgb2YgdGhlIApmb3Jlc3QgaW4gc3VibWlzc2lvbiB3YXZlIHRoZWlyIGh1bWJsZXIgaGVhZHMuIiAKCsKjIAoKCgo3NCBOQVBPTEVPTi4gQ2hhcC4gWEkuIAoKMTAgCgpOb3cgd2hlbiB0aGUgb2FrIG9mIEFsYmlvbiBoYWQgY2Vhc2VkIApzcGVha2luZywgYWxsIHRoZSB0cmVlcyBvZiB0aGUgZm9yZXN0IGdhdmUgYSBub2QgCm9mIG9iZWlzYW5jZSB1bnRvIGhpbSA7IG5heSwgdGhlIG9ha3Mgb2Ygb3RoZXIgCmxhbmRzIGRpZCBzbyBpbiBsaWtlIG1hbm5lci4gCgoxMSAKClllYSBhbGwgdGhlIHBlb3BsZSBvZiB0aGUgZWFydGggd2VyZSBjb21wZWwtIApsZWQgdG8gcHJvY2xhaW0gdGhlIG9hayBvZiBBbGJpb24gdGhlIGNoaWVmZXN0IAphbW9uZyB0cmVlcywgdGhlIG1vbmFyY2ggb2YgdGhlIHdvb2QsIGFuZCAKb2YgdGhlIHRpZGUgYWxzby4gCgoxMiAKCkFuZCB0aG9zZSB3aG8gZm91Z2h0IHdpdGhpbiBoaXMgd29vZGVuIAp3YWxscywgYW5kIGluIGhpcyBmbG9hdGluZyBjaXRhZGVsLCB3ZXJlIHByby0gCmNsYWltZWQgaW4gbGlrZSBtYW5uZXIgYnkgYWxsIHRoZSBlYXJ0aCwgd2l0aCAKb25lIGFzc2VudCwgdG8gYmUgdGhlIGJvbGRlc3QgYW5kIGJyYXZlc3QsIG5heSwgCnRoZSB2ZXJ5IGNoaWVmZXN0IG9mIGhlcm9lcyogCgoKCkNIQVAuIFhJSS4gCgoKCkNoYXAuIFhJSS4gTkFQT0xFT04uIDc1IAoKCgpDSEFQLiBYSUkuIAoKSS4gVGhlIEtpbmdzIGFuZCBQcmluY2VzIG9mIHRoZSBlYXJ0aCBhcmUgd2FybmVkIG9mIHRoZSAKY3JhZnRzIGFuZCBzdWJ0bGV0aWVzIG9mIHRoZSBUeXJhbnQuIOKAlCAyLiBWaXJ0dWUgaXMgcmVtIApjb21tZW5kZWQgYXMgdGhlIG9ubHkgc2VjdXJlIGZvdW5kYXRpb24gb2YgdGhlIGtpbmctIApkb21zIG9mIHRoaXMgZWFydGgsIOKAlCAzLCBUaGUgc29saWRpdHkgb2YgdGhlIEVtcGlyZSBvZiAKQWxtaWdodHkgR29kIGFzY3JpYmVkIGFtb25nc3Qgb3RoZXIgdGhpbmdzIHRvIHRoZSAKc2Vuc2UgZmVsdCBieSBjcmVhdGVkIGV4aXN0ZW5jZSBvZiB0aGUgcHVyaXR5IGFuZCBob2x1IApuZXNzIG9mIHRoZSBHcmVhdCBHb3Zlcm5vciBvZiBhbGwgdGhpbmdzKiAKCkVtcGVyb3JzLCBraW5ncywgYW5kIHByaW5jZXMsIGFuZCBhbGwgeWUgCmR3ZWxsZXJzIHVwb24gZWFydGgsIGJld2FyZSBvZiB0aGUgY3JhZnRzIGFuZCAKc3VidGxldGllcyBvZiB0aGlzIGhlbGxpc2ggdHlyYW50LiAKCgoKRm9yIGhlIGludHdpbmV0aCBoaW1zZWxmIGxpa2UgYSBzZXJwZW50IAphcm91bmQgdGhvc2UgaGUgbWVhbmV0aCB0byBkZXN0cm95LCBhbmQgd2hpcy0gCnBlcmV0aCBzb2Z0LCBibGFuZGlzaGluZywgYW5kIGRlY2VpdGZ1bCB0aGluZ3MgaW4gCnRoZWlyIGVhcnMsIHVudGlsIGEgY29udmVuaWVudCBzZWFzb24gYXJyaXZldGggCmZvciBzdGluZ2luZyB0aGVtIHRvIGRlYXRoLiAKCjMgCgpIZSBob2xkcyBvdXQgYSBwaGlhbCBvZiBvaWwgYW5kIGhvbmV5LCB3aXRoIAp3aGljaCBoZSBzbW9vdGhlcyBoaXMgd2F5IDsgYnV0IHdoZW4gdGhlIAoKRSoyIAoKCgo3NiBOQVBPTEVPTi4gQ2hhcC4gWElJLiAKCmhvdXIgb2YgaGlzIGFjdGlvbiBjb21ldGgsIHRoZSBjbG92ZW4gZm9vdCBzaGV3LSAKZXRoIGl0c2VsZiwgYW5kIGZvcnRod2l0aCBhcmUgcG91cmVkIGdhbGwgYW5kIAp3b3Jtd29vZCwgaW50byB0aG9zZSB3aG8gaGFkIGRydW5rIG9mIGhpcyAKc3dlZXQsIGJ1dCBkZWNlaXRmdWwgY3VwLiAKCjQgJyAuIAoKSGlzIG9wZW4gZm9yY2UgYW5kIHdhcmZhcmUgYXJlIG5vdCBzbyBtdWNoIAp0byBiZSBkcmVhZGVkLCBhcyBoaXMgc2VjcmV0IG1hY2hpbmF0aW9ucywgYW5kIApwcmV0ZW5kZWQgZnJpZW5kc2hpcHMgOyBub3IgaXMgdGhlIGFybW91ciBvZiB0aGUgCnR5cmFudCBtb3JlIHRlcnJpYmxlIHRoYW4gaGlzIHRyYWl0ZXJvdXMgc2hpZWxkLCAKYW5kIHB1cnBsZSBtYW50bGUuIAoKNSAKCkVtcGVyb3JzLCBraW5ncywgcHJpbmNlcywgYW5kIHBlb3BsZSwgZmVhciAKdGhlIG9ubHkgdHJ1ZSBhbmQgbGl2aW5nIEdvZCwgYW5kIGtlZXAgaGlzIApjb21tYW5kbWVudHMgYW5kIHByZWNlcHRzLCBhcyByZXZlYWxlZCB1bnRvIAp5b3UgaW4gaG9seSB3cml0LiAKCjYgCgpCZSBhc3N1cmVkLCB0aGF0IG5vIGVhcnRobHkgdGhyb25lIGNhbiBiZSAKc2VjdXJlLCBhbmQgdGhhdCBubyBwZW9wbGUgY2FuIGJlIHNhZmUgb3IgaGFwLSAKcHksIHVubGVzcyByZWxpZ2lvbiBhbmQgbW9yYWxpdHkgYmUgdGhlIGZvdW5kYS0gCnRpb24gYW5kIGdyb3VuZCB3b3JrIHRoZXJlb2YqIAoKNyAKQmVob2xkLCBhcyB0aGUgbWFuIHdobyBnaXZldGggaGltc2VsZiB1cCB0byAKdW5yaWdodGVvdXNuZXNzIGlzIGRlc3Bpc2VkIG9mIG1lbiwgYW5kIGNvbWV0aCAKdG8gdXR0ZXIgcnVpbiBhbmQgZGVzdHJ1Y3Rpb24sIHNvIGluIGxpa2UgbWFubmVyIApkb3RoIHRoZSBwcmluY2UgYW5kIGhpcyBwZW9wbGUuIAoKCgpDaGFwLiBYSUkuIAoKCgpOQVBPTEVPTi4gCgoKCjc3IAoKCgo4IApJZiwgdGhlcmVmb3JlLCB0aGUgcHJpbmNlIG9mIGEgbGFuZCBiZSBub3QgcmUtIApsaWdpb3VzIGFuZCB2aXJ0dW91cywgaW4gdGhlIHByYWN0aWNlIG9mIGhpcyBsaWZlLCAKYW5kIGlmIGhpcyBwZW9wbGUgYmUgbm90IHNvIGluIGxpa2UgbWFubmVyLCBidXQgCm9uIHRoZSBjb250cmFyeSA7IHRoZW4gYmUgYXNzdXJlZCwgdGhlIGhvdXIgb2YgCnRoZWlyIGNvbW1vbiBkZXN0cnVjdGlvbiBpcyBtb3N0IGNlcnRhaW5seSBhdCAKaGFuZCwgYW5kIHRoZSBMb3JkIHdpbGwgZWl0aGVyIGRlbGl2ZXIgdGhlbSAKaW50byB0aGUgaGFuZHMgb2YgdGhlaXIgZW5lbWllcywgb3IgYWZmbGljdCB0aGVtIAp3aXRoIGRpcmVmdWwgZXZpbHMsIHN1Y2ggYXMgY2l2aWwgd2FyLCBwZXN0aWxlbmNlLCAKYW5kIGZhbWluZS4gCgo5IAoKVGFrZSBleGFtcGxlIG9mIHRoZXNlIHRydXRocywgTyBraW5ncywgCnByaW5jZXMsIGFuZCBwZW9wbGUsIGZyb20gdGhlIGV2ZW50cyB3aGljaCBoYXZlIApwYXNzZWQgYmVmb3JlIHlvdSBpbiB5b3VyIG93biBkYXlzKiAKCjEwIAoKRm9yIHllYXIgYWZ0ZXIgeWVhciwgbmF5LCBkYXkgYWZ0ZXIgZGF5LCBraW5ncyAKaGF2ZSBiZWVuIG92ZXJ0aHJvd24sIGFuZCBuYXRpb25zIGRlc3Ryb3llZCwgCmJlY2F1c2UgdGhleSB3ZXJlIGZ1bGwgb2Ygcm90dGVubmVzcyBhbmQgY29ycnVwLSAKdGlvbiwgYW5kIGhhZCBzdW5rIGludG8gYWxsIG1hbm5lciBvZiBkZXByYXZpLSAKdHkgYW5kIHdpY2tlZG5lc3MuIAoKMTEgCgpJdCBiZWhvdmV0aCB0aG9zZSwgdGhlcmVmb3JlLCB3aG8gZXhwZWN0IHRvIAplc2NhcGUgdGhlIGdlbmVyYWwgZGVzdHJ1Y3Rpb24gdGhhdCBwcmV2YWlsZXRoLCAKYW5kIHRoZSB2ZW5nZWFuY2Ugb2YgYSBqdXN0IGFuZCBhbmdyeSBHb2QsIHRvIApjb25zaWRlciB3aGF0IG1hbm5lciBvZiBtZW4gdGhleSBhcmUsIGFuZCB0byAKCgoKaV8ganIuIAoKCgrCq+KAosK7LS4nIOKWoCogCgoKCjc4IE5BUE9MRU9OLiBDaGFwLiBYSUkuIAoKYW1lbmQgdGhlaXIgd2F5cywgc28gdGhhdCB0aGV5IG1heSBpbiB0aW1lIApjb21pbmcsIGxpdmUgYSBnb2RseSwgcmVsaWdpb3VzLCBhbmQgc29iZXIgbGlmZS4gCgoxMiAKCkFpbCBtZW4gbXVzdCBjb25mZXNzLCBiZWNhdXNlIHRoZXkgaGF2ZSAKc2VlbiBpdCB3aXRoIHRoZWlyIGV5ZXMsIGFuZCBoZWFyZCBpdCB3aXRoIHRoZWlyIAplYXJzLCBhbmQgaW4gdGhlaXIgb3duIHRpbWVzLCB0aGF0IG5vIHJhbmssIApwb3dlciwgb3Igd2VhbHRoLCBob3dldmVyIGdyZWF0IGFuZCBleGFsdGVkLCAKY2FuIHN1cHBseSB0aGUgd2FudCBvZiBnZW51aW5lIHZpcnR1ZSBhbmQgbW8tIApyYWxpdHksIG9yIHNhdmUgZnJvbSB0aGF0IHJ1aW4gYW5kIGNvbnRlbXB0IAp3aGljaCBmYWxsIG9uIHRoZSBoZWFkcyBvZiB3b3J0aGxlc3MgYW5kIHdpY2stIAplZCBtZW4uIAoKMTMgCgpWaWNlIGFuZCBsaWNlbnRpb3VzbmVzcyBvdmVydGhyb3cgdGhlIHByaW5jZSAKYXMgd2VsbCBhcyB0aGUgcGVhc2FudCwgZm9yIHRoZSBsYXdzIG9mIGEgcHVyZSAKYW5kIGp1c3QgR29kIGtub3cgbm8gZGlzdGluY3Rpb24gb2YgcGVyc29ucy4gCgoxNCAKCk5vdywgaW4gcHJvb2Ygb2YgdGhlc2UgZG9jdHJpbmU/LCBoYXRoIGl0IG5vdCAKc28gaGFwcGVuZWQgYW1vbmdzdCB0aGUgcmVjZW50IGRlc3RydWN0aW9uIG9mIApudW1lcm91cyBraW5ncyBhbmQgcHJpbmNlcywgdGhlIGRlc29sYXRpb24gb2YgCnRoZWlyIGVtcGlyZXMsIGFuZCBwdW5pc2htZW50IG9mIHRoZWlyIHBlb3BsZSwgCnRoYXQgdGhlIGtpbmcgd2hvIHJ1bGV0aCBvdmVyIHRoZSBBbGJpb25zIGlzIGFsLSAKbW9zdCB0aGUgb25seSBvbmUsIGFtb25nIHRoZSBvdGhlciBydWxlcnMgb2YgCnRoZSBlYXJ0aCwgd2hvIGhhcyBwcmVzZXJ2ZWQgaGlzIHRocm9uZSwgYW5kIAp0aGUgbG92ZSwgYWZmZWN0aW9uLCBhbmQgYWRtaXJhdGlvbiBvZiBoaXMgcGVvcGxlID8gCgoKCkNoYXAuIFhJSS4gTkFQT0xFT04uIDc5IAoKMTUgClNheSwgdGhlcmVmb3JlLCB3aGV0aGVyIHRoZSBwcmVzZXJ2YXRpb24gb2YgCnRoaXMga2luZydzIHRocm9uZSwgdGhlIGxvdmUsIGFmZmVjdGlvbiwgYW5kIGFkLSAKbWlyYXRpb24gb2YgaGlzIHBlb3BsZSwgaGF2ZSBub3QgYmVlbiB0aGUganVzdCAKcmV3YXJkIG9mIGhpcyBwaWV0eSBhbmQgZGV2b3Rpb24sIGFuZCBvZiB0aGUgCm1hbnkgeWlydHVlcyB3aGljaCBhZG9ybiBoaXMgY2hhcmFjdGVyLCBhbGwgClx2aGljaCBhcmUgaGlnaGx5IHBsZWFzaW5nIGluIHRoZSBzaWdodCBvZiBHb2QgPyAKCjE2IApOb3csIGlmIHRoZSBjb25jZXB0aW9uIGJlIG5vdCB0b28gZ3JlYXQgYW5kIApkYXJpbmcgZm9yIG1hbiwgbWF5IG5vdCBhbiBleGFtcGxlIG9mIHRoaXMgCnRydXRoIGJlIGRyYXduIGZyb20gdGhlIGdyZWF0IENyZWF0b3IgYW5kIEdvLSAKdmVybm9yIG9mIGFsbCB0aGluZ3MsIHRoZSBLaW5nIG9mIGtpbmdzLCBhbmQgCkxvcmQgb2YgbG9yZHMgPyAKCjE3IAoK4pagIAoKTWF5IG5vdCB0aGUgZXRlcm5hbCBzb2xpZGl0eSBvZiB0aGUgaW5jb25jZWl2LSAKYWJsZSBlbXBpcmUgb2YgQWxtaWdodHkgR29kLCBhbmQgdGhlIHVuLcK7IApjaGFuZ2VhYmxlIGhhcm1vbnkgYW5kIG9iZWRpZW5jZSB3aGljaCBwZXI/IAp2YWRlIGFsbCBoaXMgd29uZHJvdXMgd29ya3MsIGRlcml2ZSBhcyBtdWNoIApzdHJlbmd0aCBmcm9tIHRoZSB1bml2ZXJzYWwgYWRvcmF0aW9uIGluIHdoaWNoIApoaXMgdW5lcnJpbmcgdHJ1dGgsIGhpcyBpbW1hY3VsYXRlIHB1cml0eSBhbmQgCmhvbGluZXNzLCBhbmQgaGlzIGluZmxleGlibGUganVzdGljZSBhcmUgaGVsZCwgYnkgCmNyZWF0ZWQgZXhpc3RlbmNlLCBhcyBmcm9tIHRoZSBpbW1lbnNpdHkgYW5kIApncmFuZGV1ciBvZiBoaXMgdW5tZWFzdXJhYmxlIHBvd2VyID8gCgoxOCAKCkJlaG9sZCBhbGwgdGhlIHJpdmVycyBvZiB0aGUgZWFydGggZ2xpZGUgd2l0aCAKCgoKciBeIAoKCgokMCBOQVBPTEVPTi4gQ2hhcC4gWElJLiAKCm9uZSBhc3NlbnQgdW50byB0aGUgc2VhLCBhbmQgdGhlIHNlYSBoZXJzZWxmIGViLSAKYmV0aCBhbmQgZmxvd2V0aCBhdCBoZXIgc3RhdGVkIHBlcmlvZHMgYW5kIGFwLSAKcG9pbnRlZCBzZWFzb25zICEgCgpUaGUgdGh1bmRlcnMgcm9sbCwgYW5kIHRoZSBoaWxscyByZS1lY2hvIHRoZSAKdGVycmlibGUgdm9pY2UgdGhlcmVvZiEgCgoyMCAKVGhlIHN0b3JtIHJhZ2V0aCBvbiB0aGUgZmFjZSBvZiB0aGUgZ3JlYXQgCndhdGVycywgYW5kIGluIHRoZSBkYXJrbmVzcyBvZiB0aGUgbmlnaHQgISAKCjIxIApUaGUgbW91bnRhaW5zIGFyZSBzaGFrZW4gZnJvbSB0aGVpciBmb3VuLSAKZGF0aW9ucywgYW5kIGxhaWQgbG93IDsgYW5kIHRoZSByYWxsaWVzIGFyZSByYWlzZWQgCnVwIGluIHRoZWlyIHN0ZWFkICEgCgoyMiAKVGhlIHN1biwgbW9vbiwgYW5kIHN0YXJzLCBwZXJmb3JtIHRoZWlyIGdsby0gCnJpb3VzIGFuZCBhcHBvaW50ZWQgcmV2b2x1dGlvbnMsIGFuZCBhbGwgdGhlIAp3b3JrcyBvZiBjcmVhdGlvbiBwcm9jZWVkIGluIGJlYXV0ZW91cyBhbmQgcmUtIApndWxhciBvcmRlciAhIAoKMjMgClllIHJpdmVycywgd2h5IGRvIHllIGdsaWRlIGludG8gdGhlIG9jZWFuLCAKc2VhLCB3aHkgZG9zdCB0aG91IGViYiwgYW5kIGZsb3csIGFuZCByYWlzZSB0aHkgCm1pZ2h0eSBiaWxsb3dzIHRvIHRoZSBza2llcyA/IAoKMjQgClllIG1vdW50YWlucywgd2h5IGRvIHllIHRyZW1ibGUgYW5kIHNpbmsgCmxvdywgeWUgdmFsbGllcyB3aHkgYXJlIHllIGV4YWx0ZWQgPyAKCgoKQ2hhcC4gWElJLiBOQVBPTEVPTjogODEgCgoyNSAKWWUgdGh1bmRlcnMsIHdoeSBkbyB5ZSByb2xsIDsgaG93IGNvbWV0aCAKaXQsIHllIHN0b3JtcywgdGhhdCB5ZSByYWdlIG9uIHRoZSBtaWdodHkgZGVlcCwgCmFuZCBpbiB0aGUgZGFya25lc3Mgb2YgdGhlIG5pZ2h0ID8gCgoyNiAKV2hlbmNlIGFyZSB0aHkgZ2xvcmllcywgTyBzdW4sIG1vb24sIGFuZCAKc3RhcnMsIGFuZCB3aGVuY2UgdGh5IHdvbmRyb3VzIHJldm9sdXRpb25zID8gCgoyNyAKQW5kIGJlaG9sZCB0aGUgc2VhIGFuZCBhbGwgdGhlIGdyZWF0IHdvcmtzIAoKb2YgbmF0dXJlIHJlam9pbmVkLCDigqzigqwgSW4gdGhlc2UgdGhpbmdzIHdlIGZlZWwgCgphbmQgb2JleSB0aGUgY29uc2Npb3VzIHZvaWNlIG9mIGEgZ3JlYXQgYW5kIAoKaG9seSBDcmVhdG9yLCBhdCB3aG9zZSB3b3JkIHdlIHRyZW1ibGUgISIgCgoyOCAKCiIgSXQgaXMgR29kLCB5ZWEgZXZlbiBvdXIgb3duIEdvZCwgdGhhdCAKCndvcmtldGggYWxsIHRoZXNlIG1hcnZlbGxvdXMgZGVlZHMgISIgCgoyOSAKTGVhcm4gdGhlbiwgTyBtYW4sIHRoYXQgdmlydHVlIGFuZCByZWxpZ2lvbiAKYXJlIHRoZSBvbmx5IHRydWUgYW5kIHNvbGlkIHBpbGxhcnMgb2YgdGhlIGZlZWJsZSAKZmFicmljcyBlcmVjdGVkIGJ5IHRoZWUgaW4gdGhpcyBsb3dlciB3b3JsZC4gCgozMCAKVGhhdCB0cnV0aCwgaG9saW5lc3MsIGFuZCBqdXN0aWNlLCBhcmUgdGhlIHBlLSAKY3VsaWFyIGF0dHJpYnV0ZXMgb2YgdGh5IEdvZCwgYW5kIGdpdmUgaW1tdXQtIMK7IAphYmxlIGFuZCBldGVybmFsIGR1cmF0aW9uIHRvIGFsbCBoaXMgZ3JlYXQgYW5kIAp3b25kcm91cyB3b3Jrcywgd2hpY2ggbG91ZGx5IHByb2NsYWltIGEgY29uLSAKc2Npb3VzbmVzcyB0aGVyZW9mLiAKCgoKLWsgCgoKCjgyIE5BUE9MRU9OLiBDaGFwLiBYSUlJLiAKCgoKQ0hBUC4gWElJSS4gCgoxwqsgVGhlIFBlb3BsZSBvZiBBbGJpb24gYXJlIHRvbGQgb2YgdGhlaXIgaW5jcmVhc2luZyAKd2lja2VkbmVzcyBhbmQgbGljZW50aW91c25lc3MsIGFuZCBhcmUgYWRtb25pc2hlZCBhYy0gCmNvcmRpbmdseS4g4oCUIDIuIFRoZWlyIG1hbm5lcnMgYXJlIGludmVpZ2hlZCBhZ2FpbnN0LCAKYW5kIHRoZXkgYXJlIHN1bW1vbmVkIHRvIHJlcGVudGFuY2UgYW5kIGFtZW5kbWVudCAKb2YgbGlmZSA5IAoKTm93IGl0IGNhbWUgdG8gcGFzcywgdGhhdCB0aGUgZmlyc3QgaWRvbCwgCm5hbWVseSBMaWNlbnRpb3VzbmVzcywgd2hlcmVvZiBtZW50aW9uIGlzIG1hZGUgCmluIHRoZSBiZWdpbm5pbmcgb2YgdGhpcyBCb29rLCBiZWdhbiBpbiB0aGVzZSAKbGF0dGVyIHRpbWVzIHRvIGdhaW4gbWFueSB3b3JzaGlwcGVycyBhbmQgZm9sLSAKbG93ZXJzIGluIHRoZSBsYW5kIG9mIEFsYmlvbi4gCgoyIAoKVmFyaW91cyBraW5kcyBvZiB3aWNrZWRuZXNzLCBzdWNoIGFzIGFkdWwtIAp0ZXJ5LCB1bmNsZWFubmVzcywgZHJ1bmtlbm5lc3MsIGFuZCB0aGUgbGlrZSwgCm1hZGUgcHJvZ3Jlc3MgaW4gdGhlIGxhbmQsIGFuZCBwZXJ2YWRlZCBhbGwgCnJhbmtzIGFuZCBjb25kaXRpb25zIG9mIHBlb3BsZS4gCgozIAoKTWFueSBvZiB0aGUgZ3JlYXQgYW5kIHRoZSByaWNoLCBzcGVudCB0aGVpciAKdGltZSBpbiBuaWdodGx5IHJldmVscywgYW5kIGxpdmVkIGluIHRoZSBvcGVhIApjb250ZW1wdCBhbmQgbmVnbGVjdCBvZiB0aGUgaG9seSBvcmRpbmFuY2VzIG9mIApyZWxpZ2lvbi4gCgoKCsK7aiAKCgoKQ2hhcC4gWElJSS4gTkFQT0xFT04uIDgzIAoKNCAKClRoZXJlZm9yZSB0aGV5IHdlcmUgaGF0ZWQgYW5kIGRlc3Bpc2VkLCBieSAKdGhvc2Ugb2YgaW5mZXJpb3Igc3RhdGlvbiwgd2hvIGxvb2tlZCBmb3J3YXJkIAp3aXRoIGVhZ2VybmVzcyB0byB0aGUgdGltZSBvZiB0aGVpciBmaW5hbCBvdmVyLSAKdGhyb3cgYW5kIGRlc3RydWN0aW9uLiAKCjUgCgpUaG9zZSBvZiBtZWFuIHN0YXRpb24sIG9uIHRoZSBvdGhlciBoYW5kLCAKZ2F2ZSB0aGVtc2VsdmVzIHVwIHRvIGRydW5rZW5uZXNzLCBhbmQgbHlpbmcsIAp0aGUgZnJ1aXRzIHdoZXJlb2YsIGFyZSBwb3ZlcnR5IGFuZCB3cmV0Y2hlZCAKbmVzcywgZGlzZWFzZSwgdGhlZnQsIG11cmRlciwgYW5kIGRpdmVycyBvdGhlciAKY3JpbWVzIGFuZCBldmlscy4gCgo2IAoKQnkgdGhlIGdyZWF0IGFuZCB0aGUgcmljaCwgZGF5IHdhcyB0dXJuZWQgCmludG8gbmlnaHQsIGFuZCBuaWdodCBpbnRvIGRheSwgYW5kIGluIHRoaXMgbWFuLSAKbmVyIHNvYmVyLW1pbmRlZG5lc3Mgd2FzIHBlcnZlcnRlZCBhbmQgZG9uZSAKYXdheSwgYW5kIHRoZSByZWd1bGFyIG9yZGluYXRpb25zIG9mIHRoZSBHb3Zlci0gCm5vciBvZiB0aGUgdW5pdmVyc2Ugb3V0cmFnZWQuIAoKNyAKVGhlIHN1biwgd2hvIGNhbWUgZm9ydGggaW4gdGhlIG1vcm5pbmcgCmxpa2UgYSBicmlkZWdyb29tIGZyb20gaGlzIGVhc3Rlcm4gY2hhbWJlciwgCmFycmF5ZWQgaW4gYWxsIGhpcyBkYXp6bGluZyBnbG9yaWVzLCB0byBjaGVlciBhbmQgCmVubGlnaHRlbiBhIGJlbmlnaHRlZCB3b3JsZCwgdG8gZGlzc2lwYXRlIHRoZSAKZHJlYXJ5IGRhcmtuZXNzIG9mIHRoZSBuaWdodCwgYW5kIGF3YWtlbiBkcm93LSAKc3kgbmF0dXJlIHRvIGpveSBhbmQgZ2xhZG5lc3MnOyBmb3VuZCB0aGlzIGdlbmUtIApyYXRpb24gb2YgYmF0cyBhbmQgb2Ygb3dscywgbWFsZSBhbmQgZmVtYWxlLCAKCgoKODQgTkFQT0xFT04uIENoYXAuIFhJSUkuIAoKcmV2ZWxsaW5nIGluIGFsbCBtYW5uZXIgb2YgcmlvdCBhbmQgbGljZW50aW91cy0gCm5lc3MuIAoKOCAKVGhlIHJldHVybmluZyBkYXkgY2hhc2VkIHRoZW0gYXdheSwgYW5kIApjb21wZWxsZWQgdGhlbSB0byBzZWVrIHRoZWlyIGx1cmtpbmcgcGxhY2VzLCAKd2VhcnkgYW5kIHdvcm4gb3V0IHdpdGggdGhlaXIgbmlnaHRseV5hbmQgZGlzLSAKb3JkZXJseSB2aWdpbHMuIAoKOSAKClRoZXJlIGFnYWluIHRoZXkgd2FsbG93IGluIGxpc3RsZXNzLCBhbmQgZGUtIApwcmF2ZWQgZWZmZW1pbmFjeSBhbmQgbHV4dXJ5LCB1bnRpbCB0aGUgZ2xvcmktIApvdXMgbHVtaW5hcnkgb2YgZGF5IGhhcyBuZWFybHkgZ29uZSBkb3duIHRvIApoaXMgd2VzdGVybiBjaGFtYmVyIGogbGVhdmluZyB0aGUgcGFsZSBtb29uLCAKdGhlIGNvbXBhbmlvbiBvZiB0aGUgc2lsZW5jZSBvZiB0aGUgbmlnaHQsIHRvIAp3aXRuZXNzIHRob3NlIHRoaW5ncywgd2hpY2ggaGFkIHNodW5uZWQgdGhlIAp0ZXN0IG9mIHRoZSBicm9hZCBhbmQgYnJpbGxpYW50IGRheS4gCgoxMCAKCkhvdyBjb21lcyBpdCB0aGVuLCBPIG1hbiwgdGhhdCB0aG91IHByZS0gCmZlcnJlc3QgdGhlIG5pZ2h0IHRvIHRoZSBkYXkgPyBJcyBpdCBiZWNhdXNlIHRoeSAKZGVlZHMgYXJlIGV2aWwgXCAKCjExIAoKQnV0IGRvdGggaXQgbm90IG9jY3VyIHRvIHRoeSBtaW5kLCB0aGF0IGJlLSAKc2lkZXMgZGVwcmF2aW5nIHRoeSBzb3VsIGJ5IGRvaW5nIHNvLCB0aG91IG1vcmUtIApvdmVyIG91dHJhZ2VzdCBhbmQgcHJvZmFuZXN0IHRoZSBiZWF1dGVvdXMgYW5kIApyZWd1bGFyIG9yZGluYXRpb25zIG9mIHRoeSBDcmVhdG9yLCB3aG8gaGFzIG9yciAKZGFpbmVkIHRoZSBzdW4gdG8gcnVsZSBieSBkYXksIGFuZCB0aGUgbW9vbiAKCgoKQ2hhcC4gWElJSS4gTkFQT0xFT04uIDg1IAoKdG8gcnVsZSBieSBuaWdodCwgYW5kIGhhcyBnaXZlbiB1bnRvIGFsbCB0aGluZ3MgCnRoZWlyIGFwcG9pbnRlZCBzZWFzb25zID8gCgoxMiAKClNheSBhcmUgdGh5IGRheXMgdG9vIGxvbmcgdXBvbiB0aGUgbGFuZCwgCnRoYXQgdGhlIHN1biBpcyB0aHVzIGlya3NvbWUgdW50byB0aGVlLCBhbmQgdGhhdCAKdGhvdSBhcnQgZGVzaXJvdXMgdG8gZm9yZXRhc3RlIHRoZSBkcmVhcnkgbmlnaHQgCm9mIGRlYXRoID8gCgoxMyAKCldoYXQsIE8gbWFuLCBPIGd1aWx0eSBtYW4sIHdobyB0aHVzIGluLSAKc3VsdGVzdCB0aGUgb3JkZXJseSBhcHBvaW50bWVudHMgb2YgaGVhdmVuLCAKd2hhdCB3b3VsZCBub3QgdGh5IGNvbnN0ZXJuYXRpb24gYmUsIHdlcmUgdGhlIApzdW4gdG8gbG9pdGVyIG9uIGhpcyBlYXN0ZXJuIGNvdWNoLCBhbmQgdGhlIHJlLSAKdHVybiBvZiBtb3JuaW5nIHRvIGJlIHdpdGhoZWxkIGJ1dCBmb3IgYSBsaXR0bGUgCndoaWxlIGJleW9uZCBpdHMgYXBwb2ludGVkIHRpbWUsIGFuZCB0aHVzIHRvIApsZWF2ZSB0aGUgd29ybGQgdG8gdXR0ZXIgZGFya25lc3MgYW5kIGRpc21heSA/IAoKMTQgCgpOb3csIG91dCBvZiB0aGVzZSBuaWdodGx5IHJldmVscyBzcHJpbmcgYWR1bC0gCnRlcnksIGFuZCBtYW55IG90aGVyIGRlYWRseSBzaW5zLiAKCjE1IAoKQW5kIHRoZSBnb29kIGFuZCB3aXNlIG1lbiBvZiBBbGJpb24gYmUtIApoZWxkIHRoZXNlIGV2aWxzIHNwcmVhZGluZyB3aXRoIGZlYXIgYW5kIHRyZW1iLSAKbGluZywgYmVjYXVzZSB0aGV5IGhhZCBiZWVuIHRoZSBmb3JlcnVubmVycyBvZiAKdGhlIGRlc3RydWN0aW9uIG9mIHRoZSBuYXRpb25zIHdoaWNoIGhhZCBmYWxsZW4gCmFyb3VuZCB0aGVtIGluIHRoZWlyIG93biBkYXlzLiAKCgoKODYgTkFQT0xFT04uIENoYXAuIFhJSUkuIAoKMTYgCk8gYWR1bHRlcnksIHRoeSB3YWdlcyBvbiBlYXJ0aCBvdWdodCB0byBiZSAKYW4gaWdub21pbmlvdXMgZGVhdGggISAKCjE3IApUaG91IGFydCBpbmRlZWQgYSBkZWFkbHkgcG9pc29uLCBhIGdlbnVpbmUgCm11cmRlcmVyICEgCgoxOCAKRmF0aGVyLCBtb3RoZXIsIGNoaWxkcmVuLCBmcmllbmQgOyBuYXksIG9mdGVuIAp3aG9sZSBuYXRpb25zIGNydWVsbHkgcGVyaXNoIHRocm91Z2ggdGh5IGhlbGxpc2ggCmluZmx1ZW5jZSAhIAoKMTkgClN0b3AgdGhlbiwgTyBwZW9wbGUgb2YgQWxiaW9uLCBlcmUgaXQgYmUgdG9vIApsYXRlLCB0aGUgdGlkZSBvZiB5b3VyIGluY3JlYXNpbmcgd2lja2VkbmVzcywgCnNvIGFzIHRvIGF2ZXJ0IHRoZSBldmlscyB3aGljaCBoYXZlIGJlZmFsbGVuIG90aGVyIApuYXRpb25zLCBhbmQgdGhlIHZlbmdlYW5jZSB0aGF0IG11c3QgaW5mYWxsaWJseSAKb3ZlcnRha2UgeW91IGluIGxpa2UgbWFubmVyLCB1bmxlc3MgeW91IGFjY2VwdCAKb2Ygd2FybmluZyBpbiBkdWUgdGltZS4gCgoyMCAKTGVhcm4gdG8gYXBwcmVjaWF0ZSBhbmQgcHJlc2VydmUgdGhlIGJsZXNzaW5ncyAKd2hpY2ggaXQgaGF0aCBwbGVhc2VkIEdvZCBpbiBoaXMgaW5maW5pdGUgZ29vZC0gCm5lc3MgdG8gYmVzdG93IHVwb24geW91LiAKCjIxIApVbnRvIHlvdSBoYXZlIGJlZW4gZ2l2ZW4gYSBwdXJlIHJlbGlnaW9uLCAKd2hvbGVzb21lIGxhd3MsIGEgZ29vZCBhbmQgcGlvdXMga2luZy4gCgoKCkNoYXAuIFhJSUkuIE5BUE9MRU9OLiA5NyAKCjIyIApUaGUgbGFuZCBpbiB3aGljaCB5b3UgaGF2ZSBiZWVuIGFwcG9pbnRlZCAKdG8gZHdlbGwsIGlzIGdpcmRlZCByb3VuZCB3aXRoIGEgZ3VhcmRpYW4gb2NlYW4sIApvdmVyIHdoaWNoIHlvdSBoYXZlIG9idGFpbmVkIHRoZSBkb21pbmlvbi4gCgoyMyAKQnkgbWVhbnMgdGhlcmVvZiwgdGhlcmUgaXMgd2FmdGVkIHRvIHlvdXIgCnNob3JlcywgaW4gaW5udW1lcmFibGUgc2hpcHMsIHRoZSBwcm9kdWNlIG9mIGFsbCAKdGhlIG5hdGlvbnMgb2YgdGhlIGVhcnRoLiAKCjI0IApUaGUgc2VhIHdoaWNoIHdhc2hldGggeW91ciB3aW5kaW5nIHNob3JlcyAKdGVlbXMgd2l0aCBmaXNoLCBmaXQgZm9yIHRoZSBmb29kIGFuZCBub3VyaXNobWVudCAKb2YgbWFuLiAKCjI1IApZb3VyIG1vdW50YWlucyBhcmUgY292ZXJlZCB3aXRoIHNoZWVwIGFuZCAKY2F0dGxlLCBhbmQgeW91ciB2YWxsaWVzIHdpdGggcmljaCBjcm9wcyBvZiBjb3JuLiAKCjI2IApQZWFjZSBhbmQgcGxlbnR5IHJlaWduIGluIHRoZSBsYW5kLCBhbmQgdGhlIApwZW9wbGUgdGhlcmVvZiBvdWdodCB0byBiZSBleGNlZWRpbmcgZ2xhZCwgCgoyNyAKRm9yIGJlaG9sZCwgdGhlIEdvZCBvZiBhcm1pZXMgaGFzIHR1cm5lZCB0aGUgCmJhdHRsZSBmYXIgZnJvbSB5b3VyIGdhdGVzIDsgYW5kIGFsdGhvdWdoIHRoZSBkaXJlLSAKZnVsIGNvbnRlc3QgbWF5IHByZXZhaWwgaW4gZGlzdGFudCBsYW5kcywgeWV0IHRoZSAKZmllbGRzIG9mIEFsYmlvbiBhcmUgZnJlZSBmcm9tIHRoZSBzdGFpbiBlaXRoZXIgb2YgCmtpbmRyZWQgb3IgZm9yZWlnbiBibG9vZCwgbm9yIGRvZXMgdGhlIHN0b3JtIG9mIAp3YXIgcmFnZSB0aHJvdWdob3V0IHRoZSBsYW5kLiAKCgoKODggTkFQT0xFT04qIENoYXAuIFhJSUwgCgoyOCAKUGVhY2VmdWwgYXJlIGhlciBjaXRpZXMsIHRvd25zLCBhbmQgdmlsbGFnZXMsIApoZXIgY290dGFnZXMsIGFuZCBoZXIgc2hhZG93eSBhbmQgcnVyYWwgcGxhY2VzLiAKCjI5IApOb3IgaXMgdGhlIHNvdW5kIG9mIHRoZSBtdXJkZXJvdXMgY2Fubm9uIHRvIApiZSBoZWFyZCwgbm9yIHRoZSBnbGl0dGVyaW5nIG9mIGFybXMgdG8gYmUgc2VlbiAKaW4gYW55IHBhcnQgb2YgdGhlIGxhbmQ7IHNhdmUgd2hlbiB0aGUgZ29vZCB0aWQtIAppbmdzIG9mIHZpY3RvcmllcyBnYWluZWQnIGlpaSBmYXIgY291bnRyaWVzLCBvciAKb24gdGhlIG1pZ2h0eSBkZWVwLCBhcmUgcHJvY2xhaW1lZCwgdGhlIG5hdGFsIApkYXkgb2YgZ29vZCBraW5nIEFsYmFudXMgY29tbWVtb3JhdGVkLCBvciAKdGhlIGxpa2UuIAoKMzAgCkZvciB0aGUgYmF0dGxlcyBvZiBBbGJpb24gYXJlIGZvdWdodCBvbiB0aGUgCmZhY2Ugb2YgdGhlIG1pZ2h0eSBkZWVwLCBhbmQgdGhlIGRpbiB0aGVyZW9mIGlzIAplaXRoZXIgZHJvd25lZCBpbiB0aGUgcm9hcmluZyBiaWxsb3cgYW5kIGluIHRoZSAKc3Rvcm0sIG9yIGRpZXMgYXdheSBvbiB0aGUgc21vb3RoIGZhY2Ugb2YgdGhlIHdhLSAKdGVyeSB3YXN0ZSwgZm9yIGZyb20gdGhlIGVhciBvZiB0aGUgaHVzYmFuZG1hbi4gCgozMSAKVGhlIHN0cmVldHMgb2YgaGVyIGNpdGllcyBkbyBub3QgcmVlayB3aXRoIApibG9vZCwgbm9yIGFyZSBoZXInIGdyZWVuIHBhc3R1cmVzIHN0YWluZWQgd2l0aCAKZ29yZS4gLCAKCjMyIApUaGUgYmxvb2Qgb2YgaGVyIGVuZW1pZXMgZmxvd2V0aCBhbmQgaXMgZGlzLSAKc29sdmVkIGluIHRoZSBicmlueSBkZWVwLCB3aGljaCBvcGVuZXRoIGl0c2VsZiB0byAKCgoKQ2hhcC4gWElJSS4gTkFQT0xFT04uIDg5IAoKcmVjZWl2ZSB0aGVpciBjYXJjYXNlcywgYW5kIGRlbGl2ZXIgdGhlbSBmb3IgcGFzKiAKdGltZSB0byB0aGUgcmF2ZW5vdXMgZmlzaGVzIG9mIHRoZSBzZWEuIAoKMzMgCgpUaGV5IGFyZSBidXJpZWQgd2l0aG91dCB0aGUgaGVscCBvZiBzcHFkZSBvciAKb2Ygc2hvdmVsLCBhbmQgbm8gcGVzdGlsZW50aWFsIGJyZWF0aCBjYW4gaXNzdWUgCmZyb20gdGhlaXIgZ3JhdmVzLiAKCjM0IAoKRmFyIGRpZmZlcmVudCB0aGUgcGVvcGxlIG9mIG90aGVyIGxhbmRzLCB3aG9zZSAKY2l0aWVzLCB0b3ducywgYW5kIHZpbGxhZ2VzLCBhcmUgYnVybnQgYW5kIGRlc3Ryb3ktIAplZCwgYW5kIHdob3NlIGNvdHRhZ2VzIGFuZCBmZXJ0aWxlIGZpZWxkcyBhcmUgbGFpZCAKd2FzdGUgYW1pZHN0IHRoZSByYXZhZ2VzIG9mIGRldm91cmluZyBhcm1pZXMuIAoKMzUgCgpXaG9zZSByaXZlcnMgYXJlIGNob2tlZCwgYW5kIHdob3NlIHBsYWlucyAKYXJlIGhlYXBlZCB3aXRoIHRoZSB1bmJ1cmllZCBzbGFpbiwgZnJvbSB3aG9zZSAKcHV0cmlmeWluZyBjb3Jwc2VzIGlzc3VlIHRlbiB0aG91c2FuZCBkaXNlYXNlcywgCmFuZCBhcyBtYW55IGRlYXRocy4gCgozNiAKCklmLCBPIHBlb3BsZSBvZiBBbGJpb24sIHllIGFyZSB0cnVseSBkZXNpcm91cyAKb2YgcHJlc2VydmluZyBhbmQgZW5qb3lpbmcgdGhlIG1hbnkgYW5kIGludmEtIApsdWFibGUgYmxlc3NpbmdzIHdoaWNoIHRoZSBnb29kbmVzcyBvZiBQcm92aS0gCmRlbmNlIGhhcyB2b3VjaHNhZmVkIHRvIHlvdSwgYmUgdGhhbmtmdWwgdW50byAKR29kIHRoZSBnaXZlci4gCgozNyAKQmUgeWUgcmlnaHRlb3VzIGFuZCBob2xkIGZhc3QgeW91ciBpbnRlZ3JpdHksIApvdGhlcndpc2UsIGFzIGJlZm9yZSB3cml0dGVuLCBydWluIGFuZCBkZXNvbGF0aW9uIAoKRiAKCgoKJDAgTkFQT0xFT04uIENiYXAuWElWLiAKCm11c3QgaW5mYWZmaWFibHkgY29tZSB1cG9uIHRoZSBsYW5kLCBhbmQgdGhlIAppbmhhYml0YW50cyB0aGVyZW9mLiAKCgoKQ0hBUC4gWElWLiAKCjEsIEEgbWlnaHR5IHN0b3JtIGFyaXNldGgqIOKAlCAyLiBUaGUuIHZlc3NlbCBvZiB0aGUgU3RhdGUgaXMgCmluIGRhbmdlciBvZiBwZXJpc2hpbmcqIOKAlCAzLiBBIHdpc2UgYW5kIGdvb2QgQ291bnNlbGxvciAKcGlsb3RzIHRoZSB2ZXNzZWwsIGFuZCB3ZWF0aGVycyB0aGUgc3Rvcm0uIOKAlCA0LiBUa2UgdmVzLSAKc2VsIGlzIGJyb3VnaHQgaW50byBhIHNhZmUgaGFyYm91cjsgYnV0IHRoZSBwaWxvdCB0aGVyZSogCm9mIGRpZSB0aHkgdGhyb3VnaCBoaXMgZW5kZWF2b3VycyB0byBzYXZlIHRoZSB2ZXNzZWwqIAoKTm93LCB0aGUgcGFzc2lvbnMgb2YgbWVuLCB3aGVuIHRoZXkgYnVyc3QgCnRoZSBib25kcyBvZiB0cnVlIHJlbGlnaW9uLCBhbmQgb2YgdGhlIGFuY2llbnQgCmFuZCB2ZW5lcmFibGUgbGF3cyBvZiB0aGVpciBmYXRoZXJzLCBtYXkgYmUgCmxpa2VuZWQgdW50byB0aGUgdGVtcGVzdCwgYW5kIHdoaXJsd2luZCwgdGhlIApoYWlsIGFuZCB0aGUgc3Rvcm0sIHdoZW4gaXQgcGxlYXNldGggdGhlIFJ1bGVyIAp0aGVyZW9mIHRvIGxldCB0aGVtIGxvb3NlIGZyb20gdGhlaXIgYWJvZGVzLiAKCjIgCgpTbyBpbiB0aGVzZSBsYXR0ZXIgZGF5cywgcmVsaWdpb24gYmVpbmcgZGVzcGlzZWQgCm9mIG1lbiwgYW5kIHRoZSBsYXdzIG9mIHRoZWlyIGZhdGhlcnMgYmVpbmcgaW4gCmxpa2UgbWFubmVyIGNvbnRlbW5lZCwgdHVtdWx0IHByZXZhaWxlZCAKdGhyb3VnaG91dCB0aGUgZWFydGgsIGFuZCBncmVhdCB3YXMgdGhlIGRldmFzLSAKdGF0aW9uIHRoZXJlb2YuIAoKMyAKCkJlaG9sZCB0aGUgY2xvdWRzIGdhdGhlciB0b2dldGhlciwgYW5kIGJlLSAKCgoKQ2hhcC4gWElWLiBOQVBPTEVPTi4gOTEgCgpjb21lIGFzIHV0dGVyIGRhcmtuZXNzLCB0aGUgd2luZHMgYmxvdywgYW5kIHRoZSAKc2VhIGlzIG1vdmVkIGZyb20gaGVyIGJlZCAhIAoKNCAKVGhlIHZlc3NlbHMgb2YgbWFueSBzdGF0ZXMgYXJlIHNldCBhZHJpZnQsIGFuZCAKbG9zZSB0aGVtc2VsdmVzIGluIHRoaXMgdGVtcGVzdHVvdXMgb2NlYW4uIAoKQW5kIGxvICEgZm9yIGEgc2Vhc29uIHRoZSB2ZXNzZWwgb2YgdGhlIHN0YXRlIG9mIApBbGJpb24sIHRoZSBmYXZvdXJlZCBvZiBIZWF2ZW4sIGlzIGRyaXZlbiBmcm9tIApoZXIgYW5jaG9yIGludG8gdGhpcyBzZWEgb2YgdHJvdWJsZXMgMSAKCjYgCgpOb3cgdGhlIHNhZmUgaGF2ZW4gaXMgc2VlbiBubyBtb3JlLCBhbmQgdGhlIApmaXJtIGxhbmQgZGlzYXBwZWFycyAhIAoKNyAKVGhlIHN0b3JtIG9mIGFuYXJjaHkgcmFnZXMgdGhyb3VnaG91dCB0aGUgCmVhcnRoLCBhbmQgYmxvd3Mgd2l0aCBtaWdodHkgZnVyeS4gCgo4IApEcmVhZGZ1bCBpcyB0aGUgY29uZmxpY3QsIGFuZCB0ZXJyaWJsZSB0aGUgdXAtIApyb2FyIG9mIGh1bWFuIHBhc3Npb25zIHJ1biBtYWQgISAKCjkgCk5vdyB0aGUgYW5ncnkgYW5kIGltcGV0dW91cyBiaWxsb3cgcmFpc2VzIAp0aGUgdmVzc2VsIHRvIHRoZSBza2llcywgbm93IGl0IHByZWNpcGl0YXRlcyBoZXIgCmludG8gdGhlIHdhdGVyeSB2YWxsZXkuIAoKMTEgCk5vdyBzaGUgaXMgaGlkIGluIGNsb3VkcyBhbmQgZGFya25lc3MsIAoKZjIgCgoKCjkyIE5BUE9MRU9OLiBDaGFwLiBYSVYuIAoKaGVyIHRpbWJlcnMgY3JhY2ssIGFuZCBoZXIgc2FpbHMgc2hpdmVyIGluIHRoZSAKCnN0b3JtICEgCgoxMiAKQW5kIHRoZSBraW5nIGFuZCBwZW9wbGUsIGFuZCBhbGwgdGhhdCBhcmUgaW4gCnRoZSB2ZXNzZWwsIGNyeSBhbG91ZCwgIiB3ZSBzaGFsbCBzdXJlbHkgcGVyaXNoLiIgCgoxMyAKTG8gISB0aGUgdmVzc2VsIGlzIG5vIGxvbmdlciB0byBiZSBzZWVuLCBzYXZlIAp3aGVuIHRoZSBsaWdodG5pbmcncyBnbGVhbSBzaGV3cyBoZXIgaW4gcGUtIApyaWwsIGFuZCBkZXBpY3RzIHRoZSBkcmVhcnkgYWJ5c3MsIHdoZXJlaW4gc2hlIGlzIAp0b3NzZWQgdG8gYW5kIGZyby4gCgoxNCAKQmVob2xkICEgdGhhdCBzaG9ydC1saXZlZCB2aXZpZCB0b3JjaCBvZiBoZWF2ZW47IAppdCBzaG93cyBhIHBpbG90IGF0IHRoZSBoZWxtICEgCgoxNSAKTG8gISBoaXMgZWFnbGUgZXllIGlzIGZpeGVkIG9uIHRoZSBwb2xhciBzdGFyIG9mIAphbmNpZW50IGFuZCB2ZW5lcmFibGUgdHJ1dGgsIGZvciB3aGljaCBoZSBmaXJtLSAKbHkgc3RlZXJzICEgLiAKCk5vdywgaGUgY2FzdHMgYSBzbWlsZSBvZiBjb250dW1lbHkgb24gdGhlIApzY29ybiBvZiBtZW4sIGFuZCBiaWRzIHRoZSB0ZW1wZXN0IG9mIHRoZWlyIApwYXNzaW9ucyBodXNoICEgCgoxNyAKVGhlIHNwaXJpdHMgb2YgdGhlIGFuY2llbnRzIG9mIHRoZSBsYW5kIGJlaG9sZCwgCmZyb20gYWJvdmUsIHdpdGggYW54aW91cyBleWUsIHRoZSBkYW5nZXIgb2YgCgoKCkNoYXAuIFhJVi4gTkFQT0xFT04uIDkzIAoKdGhlIHZlc3NlbCB3aGVyZWluIHRoZXkgaGFkIGJlZW4gaGFwcGlseSB3YWYtIAp0ZWQgdGhyb3VnaCB0aGVpciBtb3J0YWwgc3RhdGUuIAoKMTggClNvIHRoZXkgd2hpc3BlcmVkIHRvIHRoZSBwaWxvdCwgYW1pZHN0IHRoZSAKamFycmluZyBvZiB0aGUgZWxlbWVudHMsIGFuZCB0aGUgY3Jhc2hpbmcgb2YgCmVtcGlyZXM7ICIgQ291cmFnZSwgYW5kIGJlIG9mIGdvb2QgY2hlZXIsIE8gCnBpbG90LCBmb3IgdGhvdSBzaGFsdCB3ZWF0aGVyIHRoZSBzdG9ybSwgYW5kIGJyaW5nIAp0aGUgdmVzc2VsIGNvbW1pdHRlZCB0byB0aHkgY2hhcmdlIGludG8gYSBzYWZlIApoYXZlbiBJIiAKCjE5IApOb3cgdGhlIHN0b3JtIGxhc3RlZCBmb3IgbWFueSBkYXlzLCBhbmQgCm1hbnkgc2hpcHMgd2l0aCB0aGUgcGVvcGxlIHRoZXJlaW4gcGVyaXNoZWQgOyAKYnV0IHVuZGVyIHRoZSBibGVzc2luZyBvZiBHb2QsIHRoZSB2ZXNzZWwgb2YgdGhlIApzdGF0ZSBvZiBBbGJpb24gd2FzIGJ5IGhlciBzYWdlIHBpbG90LCBicm91Z2h0IAp0byBhbmNob3IgaW4gYSBzZWN1cmUgaGFyYm91ci4gCgoyMCAKQnV0LCBhbGFzIDEgdGhlIG1hbnkgd2F0Y2hmdWwgYW5kIGFueGlvdXMgCm5pZ2h0cyB3aGljaCB0aGlzIHBpbG90IGhhZCBzcGVudCwgcHJvdmVkIGZhdGFsIAp1bnRvIGhpbTsgYW5kIHRoZSBzdG9ybSBoYWQgaGFyZGx5IGNlYXNlZCwgCmFuZCB0aGUgY2FsbSByZXR1cm5lZCwgd2hlbiBpbiB0aGUgbWlkc3Qgb2YgCnBpb3VzIGVqYWN1bGF0aW9ucyBmb3IgaGlzIGNvdW50cnkncyBnb29kLCBoZSByZS0gCnNpZ25lZCBoaXMgc291bCB0byBoaW0gd2hvIGdhdmUgaXQuIAoKMjEgCk5vdywgaWYgaGlzIGRlcGFydHVyZSBmcm9tIHRoaXMgd29ybGQgd2FzIAptb3VybmVkIGJ5IHRoZSBraW5nIGFuZCBwZW9wbGUsIHdob20sIGJ5IAoKZSAzLiAKCgoKMDQgTkFQT0xFT04tIENoYXAuIFhJVi4gCgp0aGUgZ3JhY2Ugb2YgR29kLCBoZSBoYWQgc2F2ZWQgZnJvbSBwZXJpbCBhbmQgCnJ1aW4sIGhpcyBhcnJpdmFsIGluIHRoZSBtYW5zaW9ucyBvZiBwZWFjZSB3YXMgCmdyZWV0ZWQgYnkgdGhlIHBhdHJpb3QgYW5kIGtpbmRyZWQgc3Bpcml0cyBvZiB0aGUgCmFuY2llbnRzIG9mIEFsYmlvbi4gCgoyMiAKCkFuZCB3aGVuIHRoZSBraW5nIGFuZCBwZW9wbGUsIGFuZCBhbGwgdGhhdCAKd2VyZSBpbiB0aGUgdmVzc2VsLCBsb29rZWQgYmFjaywgYW5kIHRob3VnaHQgCnVwb24gdGhlIHN0b3JtIHdoaWNoIHRoZXkgaGFkIGVzY2FwZWQsIHRoZXkgCndlcmUgc29yZSBhZnJhaWQsIGFuZCB0aGFua2VkIEdvZCB0aGF0IGhlIGhhZCAKZGVsaXZlcmVkIHRoZW0gaW4gc2FmZXR5LiAKCjIzIAoKQW5kIGEgd2FybmluZyB2b2ljZSB3YXMgaGVhcmQgYW1vbmdzdCB0aGUgCnBlb3BsZSBvZiBBbGJpb24sIHNheWluZywgIiBPIHBlb3BsZSwgbm93IHRoYXQgCnlvdXIgZW52aWFibGUgdmVzc2VsIGlzIHNhZmVseSBtb29yZWQgaW4gaGFyLSAKYm91ciwgYmV3YXJlIG9mIGFnYWluIGRyaXZpbmcgaGVyIGludG8gb3BlbiBzZWEsIApieSBraW5kbGluZyB0aGUgZnVyeSBvZiB5b3VyIGxhd2xlc3MgcGFzc2lvbnMsIApvciB0aGUgdGVtcGVzdHVvdXMgcmFnaW5ncyB0aGVyZW9mOyBsZXN0IHllIApoYXZlIG5vdCBhbm90aGVyIHBpbG90IHRvIHdlYXRoZXIgdGhlIHN0b3JtLCAKYW5kIGxlc3QgeWUgYmUgZG9vbWVkIGZpbmFsbHkgdG8gcGVyaXNoIAp0aGVyZWluLiIgCgoKCkNIQVAuIFhWLiAKCgoKQ3V0LiBYVi4gTkFQT0xFT04uIDkqIAoKCgpDSEFQLiBYVi4gCgoxLiBNb2RlIG9mIFJlZm9ybWluZyB0aGUgQ29tbW9ud2VhbHRoIHJlY29tbWVuZGVkLiAK4oCUIDIuIFdhcm5pbmcqIGFnYWluc3QgdmlvbGVudCBhbmQgZGFuZ2Vyb3VzIGNoYW5nZXMuIArigJQgMy4gQWRtb25pdGlvbnMgdG8gdGhlIHBlb3BsZSBvZiBBbGJpb24gaW4gcmVnYXJkIAp0aGVyZXRvLiAKCkxldCBlYWNoIG1hbiBhbW9uZ3N0IHlvdSB0cnksIGFuZCBleGEtIAptaW5lIGRpbGlnZW50bHkgaGlzIG93biBoZWFydCwgYW5kIHRoZXJldXBvbiAKcmVwZW50LCBhbmQgYW1lbmQgaGlzIGxpZmUsIGZvciBieSBzbyBkb2luZywgdGhlIApnZW5lcmFsIGNvcnJ1cHRpb24gb2YgdGhlIGxhbmQgd2lsbCBiZSByZW1vdmVkIAppbiB0aGUgYmVzdCwgYW5kIG1vc3QgZWZmZWN0dWFsIG1hbm5lci4gCgoyIAoKRm9yIGl0IGlzIHRoZSB3aWNrZWRuZXNzIGFuZCBjb3JydXB0aW9uIG9mIAplYWNoIG1hbiwgd2hpY2ggY29tcG9zZSB0aGUgYWdncmVnYXRlIAp3aWNrZWRuZXNzIGFuZCBjb3JydXB0aW9uIG9mIHRoZSBjb21tb24tIAp3ZWFsdGgqIAoKMyAKCkFzIGl0IGlzIG5vdCBldmVyeSBvbmUsIHNheSB0aGUgaG9seSBzY3JpcC0gCnR1cmVzLCB3aG8gY3JpZXRoIExvcmQsIExvcmQgISB0aGF0IHNoYWxsIGVudGVyIAppbnRvIHRoZSBraW5nZG9tIG9mIGhlYXZlbiA7IG5laXRoZXIgaXMgaXQgZXZlcnkgCm9uZSB3aG8gY3JpZXRoIHRoaWVmLCB0aGllZiEgb2YgaGlzIG5laWdoYm91ciwgCnRoYXQgb3VnaHQgdG8gZW50ZXIgaW50byB0aGUga2luZ2RvbSBvZiB0aGlzIAp3b3JsZCwgb3IgdGhlIG1hbmFnZW1lbnQgb2YgdGhlIGFmZmFpcnMgdGhlcmVvZiAKCgoKMDYgTkFQT0xFT04uIENoYXAuIFhWLiAKCjQgCgpGb3Igd2hvIGFtb25nc3QgeW91IHRoYXQgcmV2aWxldGggYW5kIHVwLSAKYnJhaWRldGggaGlzIG5laWdoYm91ciwgY2FuIHNheSA7ICIgdGhhbmsgR29kLCAKSSBhbSBub3QgbGlrZSB1bnRvIHRoaXMgbWFuLCBhIHNpbm5lciA7IG5laXRoZXIgCmRvXkkgZXJyIGluIHRob3VnaHQsIHdvcmQsIG9yIGRlZWQvJyAKCjUgCgpZZSB3aG8gZGVzY3J5IHRoZSBtb3RlIGluIHlvdXIgYnJvdGhlcidzIApleWUsIHNlZSwgdGhhdCB0aGVyZSBiZSBub3QgYSBiZWFtIGluIHlvdXIgb3duLiAKCjYgCgpMYXkgeW91ciBoYW5kcyB1cG9uIHlvdXIgaGVhcnRzLCBhbmQgZW4tIApxdWlyZSwgb24gc291bCBhbmQgY29uc2NpZW5jZSwgd2hldGhlciB5ZSBoYXZlIAprZXB0IGFsbCB0aGUgY29tbWFuZG1lbnRzIG9mLiB0aGUgTG9yZCBtb3JlIApzY3J1cHVsb3VzbHkgdGhhbiB5b3VyIG5laWdoYm91ciwgYW5kIHdoZXRoZXIgCnllIGJlIGluIHJlYWxpdHkgbW9yZSBwdXJlIGFuZCBob2x5IHRoYW4gdGhvc2UgCndob20geW91IGFjY3VzZSA/IAoKNyAKRm9yIGl0IGlzIHRvIGJlIGFwcHJlaGVuZGVkLCB0aGF0IHRoZXJlIGFyZSBhdCAKYWxsIHRpbWVzIGFtb25nc3QgdGhlIHJhaXNlcnMgdXAgb2Ygc3RyaWZlIGFuZCAKY29udGVudGlvbiwgbWVuIG9mIHJ1aW5lZCBhbmQgZGVzcGVyYXRlIG1lYW5zLiAKCjggCk1lbiwgd2hvIHRocm91Z2ggdGhlaXIgb3duIGxpY2VudGlvdXNuZXNzLCAKcHJvZGlnYWxpdHksIGFuZCBleHRyYXZhZ2FudCBsaXZpbmcsIGhhdmUgbm90IApsZWZ0IHdoZXJld2l0aGFsIHRvIGVhdCwgYW5kIGRyaW5rLCBhbmQgYmUgCmNsb3RoZWQuIAoKCgpDaGFwLiBYVi4gTkFQT0xFT04uIMKpNyAKCjkgCgpCdXQgd2hvIGhvcGUgdG8gZ2F0aGVyIGEgcGxlbnRpZnVsIGhhcnZlc3QsIAphbWlkc3QgdGhlIHJ1aW4gYW5kIGRlc29sYXRpb24gb2YgdGhlaXIgY291bi0gCnRyeSwgYW5kIHRoZSB3cmVjayBvZiB0aGVpciBuZWlnaGJvdXIncyBlc3RhdGUuIAoKMTAgClRha2UgaGVlZCwgdGhlcmVmb3JlLCBPIHBlb3BsZSwgdGhhdCB0aGVyZSBiZSAKbm90IGFtb25nc3QgeW91ciBjbGFtb3JvdXMgYW5kIHByb2Zlc3NlZCAKZnJpZW5kcywgdSB3b2x2ZXMgaW4gc2hlZXAncyBjbG90aGluZyAhIiAKCjExIApOYXBvbGVvbiwgdGhlIHR5cmFudCwgZGVjZWl0ZnVsIGluIGhlYXJ0LCBzb2Z0LCAKeWV0IGluZmxhbW1hdG9yeSBpbiBzcGVlY2gsIHByb2Zlc3NldGggaGltc2VsZiwgCmluIGxpa2UgbWFubmVyLCB0byBiZSBhIGZyaWVuZCB0byB0aGUgcGVvcGxlLCAKd2hvbSBoZSBzdGlycmV0aCB1cCBhZ2FpbnN0IHRoZWlyIGxhd2Z1bCBnb3Zlci0gCm5vcnMsIGFuZCBkZWNlaXZldGggd2l0aCB2YWluIHByb21pc2VzIGFuZCAKaG9wZXMgOyBzYXlpbmcsIHRoYXQgaGUgd2lsbCByZW1vdmUgdGhlaXIgYnVyLSAKZGVucywgYW5kIGFtZWxpb3JhdGUgdGhlaXIgY29uZGl0aW9uLiAKCjEyIApZZXQgZG90aCBub3QgdGhpcyB2ZXJ5IG1hbiwgaW4gd2hvbSB0aGUgCnRydXRoIGlzIG5vdCwgY2hlYXQsIHJvYiwgYW5kIG11cmRlciB0aGUgcGVvcGxlIApldmVyeSB3aGVyZSwgYW5kIGludm9sdmUgdGhlbSBpbiB1bml2ZXJzYWwgCnRocmFsZG9tLCBtaXNlcnksIGFuZCBydWluIDsgYW5kIGFyZSBub3QgdGhlc2UgCnRoaW5ncyBtYWRlIG1hbmlmZXN0IGJlZm9yZSB5b3VyIGV5ZXMgPyAKCjEzIApJZiBpdCBoYXRoIHBsZWFzZWQgR29kLCBPIHBlb3BsZSBvZiBBbGJpb24sIAp0byBhZmZsaWN0IHlvdSB3aXRoIG1lbiByZXNlbWJsaW5nIE5hcG9sZW9uIAoKCgowKiBOQVBPTEVPTi4gQ2hhcC4gWFYuIAoKaW4gYW1iaXRpb24sIHJlc3RsZXNzbmVzcywgZGVjZWl0LCBhbmQgdGhlIGhvbGQtIAppbmcgb3V0IG9mIHByb21pc2VzIHdoaWNoIHRoZXkga25vdyBpbiB0aGVpciAKaGVhcnRzIHRvIGJlIGZhbHNlIGFuZCB2YWluIDsgR29kIGJlIHByYWlzZWQgdGhhaSAKaGUgaGF0aCBub3QgZ2l2ZW4gdW50byB0aGVtIHRoZSBwb3dlciwgbm9yIApnaXJkZWQgdGhlbSB3aXRoIHRoZSBjb25xdWVyaW5nIHN3b3JkIG9mIHRoZSAKY3J1ZWwgYW5kIGJsb29kLXRoaXJzdHkgdHlyYW50ICEgCgpCZSBub3QgbWlzbGVkLCBPIHBlb3BsZSBvZiBBbGJpb24sIGJ5IHRoZSAKaGVhdGVkIGFuZCBkZXNpZ25pbmcgc3BlZWNoZXMgb2YgbWVuLCB3aG8gYXMtIApzb2NpYXRlIHdpdGggcHVibGljYW5zIGFuZCBzaW5uZXJzLCBhbmQgbWVldCAKZm9yIGx1eHVyaW91cyBmZWFzdGluZ3MsIGFuZCBpbW1vZGVyYXRlIHJldmVsLSAKbGluZ3MuIAoKMTUgCgpUaGV5IHNlZWsgdG8gcHJleSB1cG9uIHRoZSB2aXRhbHMgb2YgdGhlIApwZW9wbGUsIGFuZCBuZXZlcnRoZWxlc3MgIiBtb2NrIHRoZSBtZWF0IHRoZXkgCmZlZWQgb24uIiAKCjE2IAoKQmV3YXJlLCBpbiBsaWtlIG1hbm5lciwgb2YgdGhlIGdsb3dpbmcgd29yZHMsIAphbmQgY3VubmluZyBjb25jZWl0cywgb2YgbW9kZXJuIGFuZCBzdHJpcGxpbmcgCnBoaWxvc29waGVycywgd2hvIGhhdmUgYWNxdWlyZWQgYSBsaXR0bGUgYm9vay0gCmlzaCBsb3JlLCBhbmQgZGFuZ2Vyb3VzIGxlYXJuaW5nLiAKCjE3IAoKUmF0aGVyIGluY2xpbmUgeW91ciBlYXJzIGFuZCB5b3VyIGhlYXJ0cyB0byAKYW5jaWVudCB0cnV0aCwgYW5kIHBheSByZXNwZWN0IHRvIHRoZSBob2FyeSAKaGVhZCwgYW5kIHdhcnkgaGFuZCBvZiBhZ2UuIAoKCgpDaGFwLiBYVi4gTkFQT0xFT04uIDkwIAoKMTggCgpNb3Jlb3ZlciwgaXQgaXMgdG8gYmUgYXBwcmVoZW5kZWQsIHRoYXQgdGhlcmUgCmFyZSBhbW9uZ3N0IHRoZSBwcm9mZXNzZWQgZnJpZW5kcyBvZiBsaWJlcnR5IGFuZCAKZXF1YWxpdHksIG1lbiBvZiB0eXJhbm5pY2FsIGFuZCBvdmVyYmVhcmluZyAKZGlzcG9zaXRpb25zLCBkZXZvdGVkIHRvIGNoYW5nZSwgcmVzdGxlc3NuZXNzLCAKYW5kIGFtYml0aW9uLCBpcnJlbGlnaW91cyBpbiB0aGVpciBkb2N0cmluZXMsIGFuZCAKbGljZW50aW91cyBpbiB0aGVpciBsaXZlcy4gCgoxOSAKCk1lbiwgYXkgY2h1cmNobWVuIHRvbywgY3J1ZWwgYW5kIHR5cmFubmktIApjYWwgaW4gdGhlaXIgZmFtaWxpZXMsIG92ZXJiZWFyaW5nIGFuZCBzdXBlcmNpLSAKbGlvdXMgdG93YXJkcyB0aGVpciBicmV0aHJlbiBvZiBtYW5raW5kIDsgcGFyKiAKdGljaXBhdG9ycyBpbiBwb2xpdGljYWwgaW50cmlndWVzLCBhbmltb3NpdGllcywgYW5kIApjYWJhbHMgOyBhbmQgYXNzb2NpYXRvcnMgd2l0aCBwZXJzb25zIG9mIGxpYmVydGluZSAKYW5kIGxpY2VudGlvdXMgcHJpbmNpcGxlcyBhbmQgcHJhY3RpY2UuIAoKMjAgCgpCZWhvbGQgISBob3cgdW5saWtlIHN1Y2ggbWVuIGFyZSB0byB0aGUgCm1lZWsgYW5kIGxvd2x5IG1hc3Rlciwgd2hvc2Ugc2VydmFudHMgYW5kIGZvbC0gCmxvd2VycyB0aGV5IGltcGlvdXNseSBhbmQgaHlwb2NyaXRpY2FsbHkgcHJvLSAKZmVzcyB0aGVtc2VsdmVzIHRvIGJlLiAKCjIxIAoKUGxhY2UgdGhlcmVmb3JlLCBPIHBlb3BsZSBvZiBBbGJpb24sIHlvdXIgCnRydXN0IGluIEdvZCwgYW5kIGluIHlvdXIgZ29vZCBvbGQga2luZyBhbmQgCmhpcyBjb3Vuc2VsbG9ycywgZm9yIHRoZSB0aW1lIGJlaW5nLiAKCjIyIAoKRm9yIGJ5IHNvIGRvaW5nLCB5ZSBzaGFsbCBiZSByZXNjdWVkIGZyb20gCgoKCjEwMCBOQVBPTEVPTi4gQ2hhcC4gWFZJLiAKCnRoZSBkYW5nZXJzIHdoZXJld2l0aCB5ZSBhcmUgdGhyZWF0ZW5lZCBieSAKZXZpbCBhbmQgZGVzaWduaW5nIG1lbiA7IHdobywgTmFwb2xlb24gbGlrZSwgCnNlZWsgdG8gbWFrZSB5b3UgdGhlIHRvb2xzIG9mIHRoZWlyIG93biBhbWJpLSAKdGlvbiBhbmQgYWdncmFuZGlzZW1lbnQsIGFuZCB3aWxsPiBsaWtlIGhpbSwgCmRlcmlkZSBhbmQgbGF1Z2ggeW91IHRvIHNjb3JuLCBhbmQgdHJhbXBsZSB5b3UgCnVuZGVyIHRoZWlyIGZlZXQsIHdoZW5zb2V2ZXIgdGhlaXIgb3duIHB1ci0gCnBvc2VzIGFyZSBhY2NvbXBsaXNoZWQuIAoKMjMgCi4gRmluYWxseSwgc3RhbmQgZmFzdCwgTyBBbGJpb25zLCBpbiB0aGUgbGliZXJ0eSAKd2hlcmV3aXRoIEdvZCBoYXRoIG1hZGUgeW91IGZyZWUsIGFuZCBiZSBub3QgCmFnYWluIGVudGFuZ2xlZCBpbiB0aGUgc25hcmVzIG9mIHdpY2tlZCBhbmQgZGUtIApzaWduaW5nIG1lbiwgd2hvIGZyb20gYW1iaXRpb24sIG9yIGZvciB0aGUgCnNha2Ugb2YgZ2FpbiwsIHNlZWsgdmlvbGVudCBhbmQgZGFuZ2Vyb3VzIGNoYW4tIApnZXMuIAoKCgpDSEFQLiBYVkwgCgoxLiBUaGUgcGFyYWJsZSBvZiB0aGUgQmVhciBhbmQgdGhlIE1vbmtleS4g4oCUIDIuIFRoZSAKTW9ua2V5IGlzIHN1ZGRlbmx5IGNoYW5nZWQgaW50byBhIFR5Z2VyLCB3aGljaCBkZX4gCnZvdXJldGggdGhlIEJlYXIsIGFuZCBzY2F0dGVyIGV0aCBoaXMgZmxlc2ggYW5kIGhpcyBib25lcyAKdG8gdGhlIHdpbmRzIG9mIGhlYXZlbi4gCgpOb3cgYSByaWRkbGUgaXMgcHV0IGZvcnRoLCBhbmQgYSBwYXJhYmxlIGlzIApzcG9rZW4sIHVudG8gdGhlIHBlb3BsZSBvZiB0aGUgZWFydGguIAoKMiAKQSBncmVhdCBiZWFyIHdpdGggYnJhd255IHBhd3MsIGFuZCBjb3Zlci0gCgoKCkNoYXAuIFhWSS4gTkFQT0xFT04uIDEwMSAKCmVkIHdpdGggbG9uZyBicmlzdGxlcywgaXMgYnJvdWdodCBmb3J0aCBpbiB0aGUgCm5vcnRoLiAKCjMgCkhlIHN0cmV0Y2hldGggaGltc2VsZiBvdmVyIG1hbnkgbGFuZHMsIGFuZCAKYXdldGggbXVjaCBwZW9wbGUsIG92ZXIgd2hvbSB0aGUgaGFpbCBhbmQgCnRoZSBzbm93IGNvbnRpbnVhbGx5IGpsbyBwYXNzLiAKCjQgCkZyb3plbiBzZWFzIGFuZCByaXZlcnMsIGFuZCBwbGFpbnMgY292ZXJlZCAKd2l0aCBldGVybmFsIGZyb3N0LCBhcmUgdW50byBoaW0gYXMgZHdlbGxpbmcgCnBsYWNlczsgYW5kIHRoZSBzdG9ybSB3aGljaCBjaGlsbGV0aCBvdGhlciAKYmVhc3RzLCBldmVuIHVudG8gZGVhdGgsIGJlYXRldGggdXBvbiBoaW0gYXMgCnVwb24gYSByb2NrLCB3aGljaCBpcyBjb3ZlcmVkIHdpdGggZnVycyBhbmQgCndpdGggc2tpbnMuIAoKNSAKSGlzIG5pZ2h0bHkgcGF0aCBpcyBsaWdodGVkIGJ5IGZpZXJ5IHNwZWN0cmVzLCAKdGhhdCBzcG9ydCBhbmQgZGFuY2UgYWxvbmcgdGhlIHBvbGFyIHNreSwgYW5kIApwbGF5IGFtaWRzdCB0aGUgd2ludHJ5IHN0YXJzLiAKCjYgCkZpZXJjZSBpcyB0aGUgYmVhciwgYW5kIG5vdCB0byBiZSBjb25xdWVyZWQgCmJ5IGZlYXIgb3IgZm9yY2UuIAoKNyAKTm93IGluIHRoZSB3ZXN0ZXJuIHJlZ2lvbnMgdGhlcmUgbGl2ZXRoIGFuIAphbmltYWwgd2hpY2ggaXMgZmFzaGlvbmVkIHNvbWV3aGF0IGFmdGVyIHRoZSAKaW1hZ2Ugb2YgbWFuLCBhbmQgaXMgZW5kb3dlZCB3aXRoIGN1bm5pbmcsIApmYXduaW5nLCBhbmQgZGVjZWl0LCBhbmQgbG8gISB0aGlzIGFuaW1hbCBpcyBjYWxsZWQgCmEgbW9ua2V5LiAKCgoKaWkgCgoKCjEwMiBOQVBPTEVPTi4gQ2hhcC4gWFZJLiAKCjggCk5vdyB0aGUgYmVhciBhbmQgdGhlIG1vbmtleSBoYXZpbmcgbWV0IAplYWNoIG90aGVyLCB0aGUgYmVhciB3YXMgcGxlYXNlZCB3aXRoIHRoZSBtb24tIAprZXksIHdobyBjYXJlc3NlZCBhbmQgc29vdGhlZCBoaW0sIGFuZCB0b2xkIApoaW0sIHdoYXQgYSBtaWdodHkgYmVhc3QgaGUgd2FzLiAKCmZ0IApTbyB0aGUgYmVhciBhbGxvd2VkIHRoZSBtb25rZXkgZnJvbSB0aW1lIHRvIAoKdGltZSB0byBwbGF5IGFuZCBmcmlzayBhcm91bmQgaGltIDsgYnV0IGl0IGNhbWUgCnRvIHBhc3MsIHRoYXQgdGhlIG1vbmtleSBoYXZpbmcgc2NyYXRjaGVkIHRoZSAKYmVhciwgaGUgdGhlcmV1cG9uIHJhaXNlZCBoaXMgYnJpc3RsZXMsIGFuZCB0aHJlYXQtIAplbmVkIHRvIGh1ZyB0aGUgbW9ua2V5IHRvIGRlYXRoLiAKCjEwIApOZXZlcnRoZWxlc3MgdGhlIG1vbmtleSBjb250cml2ZWQgeWV0IGFnYWluIAp0byBzb290aGUgdGhlIGJlYXIsIGFuZCBoZSBmYXduZWQgdXBvbiBoaW0gCmFuZCBjYXJlc3NlZCBoaW0sIGFuZCB3aGlzcGVyZWQgc29mdCBhbmQgcGxlYXMtIAppbmcgdGhpbmdzIGluIGhpcyBlYXIuIAoKMTEgCkFuZCB0aGUgYmVhciBhbmQgdGhlIG1vbmtleSBiZWNhbWUgZXgtIApjZWVkaW5nIGdyZWF0IGZyaWVuZHMsIGFuZCBtZXQgYW5kIGNvbW11bmVkIAp0b2dldGhlciwgYW5kIGZpbmFsbHkgYWdyZWVkIHRvIGRpdmlkZSB0aGUgbm9ydGggCmFuZCB0aGUgd2VzdCBiZXR3aXh0IHRoZW0uIAoKMTIgClNvIHRoZXkgd2VudCBvbiBwYXcgaW4gcGF3LCBhbmQgdGhlIGJlYXIgCmdyaW5uZWQgc21pbGVzIHRvIHRoZSBtb25rZXksIHdoaWxlIHRoZSBtb24tIAprZXkgcGxheWVkIGluIHNwb3J0aXZlIG1pcnRoIGFyb3VuZCB0aGUgYmVhci4gCgoKCkNoYXAuIFhWSS4gTkFQT0xFT04uIDEwMyAKCjEzIApOb3cgaXQgc28gaGFwcGVuZWQsIHRoYXQgdGhlIGJlYXIgd2FzIGx1bGxlZCAKYXNsZWVwIGJ5IHRoZSBzb2Z0IGZhd25pbmdzIG9mIHRoZSBtb25rZXkuIAoKMTQgCkFuZCBpbiBoaXMgc2xlZXAgaGUgZHJlYW1lZCBhIGRyZWFtLCBhbmQgCmJlaG9sZCB0aGUgZHJlYW0gd2FzLCB0aGF0IHRoZSBtb25rZXkgaGFkIApwdXQgb3V0IG9uZSBvZiBoaXMgZXllcywgYW5kIGJpdCBpbiB0d2FpbiB0aGUgCnN0cm9uZ2VzdCBzaW5ldyBpbiBoaXMgbW9zdCBwb3dlcmZ1bCBwYXcuIAoKU28gaGUgYXdva2Ugd2l0aCBhIG1pZ2h0eSBncm93bCwgYW5kIHJvc2UgCmluIGhpcyB3cmF0aCB0byBkZXN0cm95IHRoZSBtb25rZXkuIAoKMTYgCgpCdXQgSW8gISB3aGVuIGhlIGF3b2tlIGZyb20gaGlzIGRyZWFtLCBoYWxmIApibGluZCwgYW5kIGhhbGYgbGFtZSwgaGUgYmVoZWxkIGJlZm9yZSBoaW0gbm8gCmxvbmdlciB0aGUgZmVlYmxlIGZhd25pbmcgbW9ua2V5LCBoaXMgZm9ybWVyIApmcmllbmQgYW5kIGZhdm91cml0ZSA7IGJ1dCBhIGZpZXJjZSBhbmQgZnVyaW91cyAKdHlnZXIsIHdobyBhdCBvbmUgZGFydCBkZXZvdXJlZCBoaW0+IGFuZCBzZWl6LSAKZWQgYXMgaGlzIHByZXkgdGhlIGxhbmRzIG92ZXIgd2hpY2ggaGUgaGFkIGJlZW4gCmluIHVzZSB0byBydWxlLiAKCjE3IApBbmQgdGhlIHR5Z2VyIHRvcmUgdGhlIGJlYXIgaW50byBwaWVjZXMsIGFuZCAKc2NhdHRlcmVkIGhpcyBmbGVzaCBhbmQgaGlzIGJvbmVzIHRvIHRoZSB3aW5kcyBvZiAKaGVhdmVuLiAKCjE4IApGb3IgdW50byB0aGlzIG1vbmtleSwgaW4gd2hpY2ggdGhlcmUgd2FzIAoKCgonICpfISAKCgoKMTA0IE5BUE9MRU9OLiBDaGFwLiBYVklJLiAKCmhlcmV0b2ZvcmUgdGhlIGhlYXJ0LCB0aGVyZSBoYXMgbW9yZW92ZXIgYmVlbiAKc3VwZXJhZGRlZCB0aGUgcG93ZXIgYW5kIHN0cmVuZ3RoIG9mIHRoZSAKdHlnZXIuIAoKCgpDSEFQLiBYVklJLiAKCgoKVGhlIFZpcmlvbiBvZiBFIEhha2ltLiAKCgoKTm93IGl0IGNhbWUgdG8gcGFzcyBpbiB0aGUgZHJlYWQgaG91ciBvZiAKbmlnaHQsIHdoZW4gbW9ydGFsIG1hbiwgYW5kIGFsbCBsaXZpbmcgY3JlYS0gCnR1cmVzLCBsYXkgb3ZlcndoZWxtZWQgaW4gc2xlZXAsIHRoYXQgYSB2aXNpb24gCmFwcGVhcmVkIHVudG8gbWUuIAoKCgpUaGVuIEkgYmVoZWxkLCBhbmQgbG8gISB0aGUgbGlrZW5lc3Mgb2YgYW4gCmFuZ2VsIG9mIGhlYXZlbiwgY2xvdGhlZCBpbiBhIGZpbmUgbGluZW4gcm9iZSwgCndoaXRlIGFzIHNub3csIGNhbWUgdW50byBtZSwgYW5kIHB1dCBmb3J0aCAKdGhlIGZvcm0gb2YgYW4gaGFuZCAhIAoKMyAKCkFuZCB0aGUgYW5nZWwgbGlmdGVkIG1lIHVwIGJldHdlZW4gdGhlIGVhcnRoIAphbmQgdGhlIGhlYXZlbnMsIGFuZCBjYXJyaWVkIG1lIHRvIHRoZSByZWdpb24gCnBmIHZpc2lvbnMsIGFuZCBwdXQgbWUgb24gYW4gaGlnaCBwbGFjZSwgdGhhdCAKbG9va2V0aCB0b3dhcmRzIHRoZSBmb3VyIGNvcm5lcnMgb2YgdGhlIGVhcnRoICEgCgoKCkNoYXAuIFhWSUkuIE5BUE9MRU9OKiAxMDMgCgo0IAoKVGhlbiBoZSB0b3VjaGVkIG15IHNpZ2h0LCBhbmQgc2FpZCB1bnRvIAptZSwgb3BlbiB0aGluZSBleWVzIDsgc28gSSBvcGVuZWQgbWluZSBleWVzLCAKYW5kIGJlaGVsZCBzcHJlYWQgYmVmb3JlIG1lIHN1bmRyeSBsYW5kcywgcGVvLSAKcGxlLCBhbmQgbGFuZ3VhZ2VzLiAKCjUgCgpBbmQgdXBvbiBhIHRocm9uZSwgbWFkZSBvZiBnb2xkLCBhbmQgY28tIAp2ZXJlZCB3aXRoIGNyaW1zb24sIHJhaXNlZCBhcyBpdCB3ZXJlIGluIHRoZSAKbWlkc3Qgb2YgdGhlIG5hdGlvbnMsIEkgc2F3IGEgbWFuIHNlYXRlZCBpbiAKZ3JlYXQgbWFqZXN0eSBhbmQgcG93ZXIuIAoKNiAKCkFuZCBhcm91bmQgdGhlIHRocm9uZSB0aGVyZSBzdG9vZCBtdWx0aS0gCnR1ZGVzIG9mIGFybWVkIG1lbiwgYW5kIGNhcHRhaW5zIG9mIGhvc3RzLCBhZC0gCm1pbmlzdGVyaW5nIHVudG8gdGhlIHdpbGwgYW5kIHBsZWFzdXJlIG9mIHRoZSAKbWFuIHdobyB3YXMgc2VhdGVkIG9uIHRoZSB0aHJvbmUuIAoKNyAKTm93LCB3aGlsZSBJIHdhcyB5ZXQgbG9va2luZywgaGUgZGVzY2VuZGVkIAoKdGhlcmVmcm9tLCBhbmQgbW91bnRlZCBhIGJlYXN0LCBsaWtlIHVudG8gYSBkcmEtIApnb24gaW4gc2hhcGUgYW5kIGluIGtpbmQsIGFuZCB0aGUgbWFuIGFuZCB0aGUgCmRyYWdvbiBiZWNhbWUgYXMgb25lIDsgYW5kIGZyb20gdGhlIGV5ZXMgdGhlcmUtIApvZiB0aGVyZSBwcm9jZWVkZWQgZmxhc2hlcyBvZiBkZXZvdXJpbmcgZmlyZS4gCgo4IApUaGVuIHRoZSBhbmdlbCBzYWlkIHVudG8gbWUsIHR1cm4gdGhpbmUgZXllcyAKdGhlIHdheSB0b3dhcmQgdGhlIG5vcnRoIDsgc28gSSB0dXJuZWQgbWluZSAKZXllcyB0aGUgd2F5IHRvd2FyZCB0aGUgbm9ydGguIAoKCgoxMDYgTkFQT0xFT04uIENoYXAuIFhWSUkuIAoKOSAKQnV0IG15IHZpc2lvbiBiZWluZyBpbXBlcmZlY3QsIEkgbG9va2VkIHVwIAp0byB0aGUgZmlybWFtZW50IG9mIGhlYXZlbiwgdG8gZGlzY292ZXIgd2hlbmNlIAp0aGlzIGdsb29teSBsaWdodCBwcm9jZWVkZWQsIGFuZCB3aGF0IG1pZ2h0IApiZSB0aGUgY2F1c2UgdGhlcmVvZi4gCgoxMCAKQW5kIGJlaG9sZCB0aGUgc3VuIHdoaWNoIHdhcyBpbiB0aGUgZmlybWEtIAptZW50IHNob25lIGFzIGl0IHdlcmUgdGhyb3VnaCBibG9vZCwgYW5kIGFsbCAKdGhpbmdzIG9uIGVhcnRoIHJlZGRlbmVkIHVudG8gdGhlIGV5ZS4gCgoxMSAKTmV2ZXJ0aGVsZXNzLCBJIGNvdWxkIHNlZSB0aGUgZmllcnkgZHJhZ29uIAptb3ZlIHdpdGggZXhjZWVkaW5nIGdyZWF0IHF1aWNrbmVzcyB0byBhbmQgCmZybzsgYW5kIHdoZXJlc29ldmVyIGhlIHdlbnQsIGhlIHdhcyBmb2wtIApsb3dlZCBieSB0aGUgbnVtZXJvdXMgY2FwdGFpbnMgb2YgaG9zdHMsIGFuZCAKdGhlIG11bHRpdHVkZXMgb2YgYXJtaWVzLCB3aGljaCBJIGhhZCBvYnNlcnYtIAplZCBzdGFuZGluZyBhbmQgYWRtaW5pc3RlcmluZyBhcm91bmQgdGhlIAp0aHJvbmUuIAoKMTIgCk5vdyBJIHNhdyB0aGVzZSBhcm1pZXMgZGVhbCBkZWF0aCwgYW5kIApzcHJlYWQgZGVzb2xhdGlvbiBvdmVyIHRoZSBmYWNlIG9mIHRoZSBlYXJ0aC4gCgoxMyAKQW5kIHdoZW4gdGhlIGFybWllcyBvZiBvdGhlciBuYXRpb25zIGVuLSAKY291bnRlcmVkIHRob3NlIG9mIHRoZSBkcmFnb24sIEkgYmVoZWxkIHRoZSAKcGxhaW5zIG9mIHRoZSBlYXJ0aCBiZW5lYXRoIG1lIGhlYXBlZCB3aXRoIApzbGFpbiwgYW5kIHRoZSBncmVhdCByaXZlcnMgdGhlcmVvZiwgcm9sbGluZyBwdXItIAoKCgpDaGFwLiBYVklJLiBOQVBPTEVPTi4gMTA3IAoKcGllIHN0cmVhbXMgYW5kIG1hbmdsZWQgY29ycHNlcyBpbnRvIHRoZSAKb2NlYW4uIAoKMTQgCkZsYW1lcyBpc3N1ZWQgZnJvbSB0aGUgdG93bnMgYW5kIGNpdGllcyBvZiAKdGhlIGxhbmQsIGFuZCB0aGUgbGFtZW50YXRpb25zIG9mIHdpZG93cyBhbmQgCm9ycGhhbnMgcmVudCB0aGUgc2tpZXMgISAKCjE1IApEZWVwIGdyb2FucyB3ZXJlIGhlYXZlZCBieSB0aGUgd291bmRlZCAKYW5kIHRoZSBkeWluZyA7IGFuZCBJIHNhdyBhcyBpdCB3ZXJlIGluIHRoZSBzaS0gCmxlbnQgaG91ciBvZiBuaWdodCwgZ2hvc3RzIHN0YWxraW5nIG92ZXIgdGhlIGZpZWxkIApvZiBkZWF0aCAxIAoKMTYgClNlZSAhIHRoZSB0aGluIGFuZCBtZWFncmUgc3BlY3RyZSBvZiBmYW1pbmUgCmNyYXdsZiBhbG9uZyB0aGUgZGVzb2xhdGVkIHBsYWluICEgCgoxNyAKQmVob2xkICEgdGhlIHNhYmxlIGltYWdlIG9mIHBlc3RpbGVuY2UgY29tZXMgCnRvIGNvbXBsZXRlIHRoZSB1bmZpbmlzaGVkIHdvcmsgb2YgdGhlIHNsYXVnaHQtIAplcmluZyBzd29yZCwgYW5kIGNob2tlcyB1cCB0aGUgaGFsZiBmaWxsZWQgc2UtIApwdWxjaHJlICEgCgoxOCAKTm93IGV4Y2VlZGluZyBncmVhdCBmZWFyIGFuZCB0cmVtYmxpbmcgCnNlaXplZCBteSBmcmFtZSwgYW5kIHdpdGhkcmF3aW5nIG1pbmUgZXllcyAKZnJvbSB0aGlzIHRlcnJpYmxlIHNpZ2h0LCBJIHR1cm5lZCB0aGVtIHRvd2FyZHMgCnRoZSBhbmdlbCBmb3Igc2FmZXR5IGFuZCBjb25zb2xhdGlvbi4gCgpnIDIgCgoKCjEwOCBOQVBPTEVPTiwgQ2hhcC4gWFZJSUkuIAoKMTkgCk5heSwgaW4gdGhlIGhlaWdodCBvZiBteSB0ZXJyb3IsIEkgZW5kZWEtIAp2b3VyZWQgdG8gc2VpemUgaGlzIGhhbmQgOyBidXQgdGhlIGZvcm0gdGhlcmVvZiAKZWx1ZGVkIHRoZSB0b3VjaCBvZiBtb3J0YWwgbWFuIFwgCgoyMCAKTmV2ZXJ0aGVsZXNzLCBJIHNhdyB0aGUgYW5nZWwgdHVybiBhc2lkZSBhbmQgCndlZXAsIGFuZCBiZWhvbGQgYSBjcnlzdGFsIGRyb3AgZmVsbCB1cG9uIHRoZSAKc2tpcnRzIG9mIGhpcyBzbm93IHdoaXRlIHJhaW1lbnQgXCAKCgoKQ0hBUC4gWFZJSUkuIAoKVGhlIFZpc2lvbiBDb250aW51ZWQuIAoKQW5kIHRoZSBhbmdlbCBzYWlkIGZ1cnRoZXJtb3JlIHVudG8gbWUsIAp0dXJuIHRoZWUgeWV0IGFnYWluLCBhbmQgdGhvdSBzaGFsdCBzZWUgc3RyYW5nZSAKdGhpbmdzLiAKCjIgCgpTbyBteSBzcGlyaXQgcmV2aXZlZCB3aXRoaW4gbWUsIGFuZCBJIHR1cm5lZCAKeWV0IGFnYWluLCBhbmQgYmVob2xkIEkgc2F3IG1pZ2h0eSBmb3JnZXMsIGFuZCAKZnJvbSB0aGUgZm9yZ2VzIHRoZXJlIGlzc3VlZCB0aGUgc291bmQgb2YgbWFueSAKaGFtbWVycyA7IGFuZCBJIG1vcmVvdmVyIGhlYXJkIHRoZSBjbGFua2luZyAKb2YgY2hhaW5zLCBhbmQgc2F3IG1hbnkgdGhvdXNhbmRzIG9mIGNhcC0gCnRpdmVzIGxvYWRlZCB0aGVyZXdpdGgsIGNvbWluZyBhbmQgZ29pbmcgZGlmZmVyXiAKZW50IHdheXMuIAoKCgpDaGFwLiBYVklJSS4gTkFQT0xFT04uIDEwOSAKCjMgCgpBbmQgdGhlIGFuZ2VsIG9ic2VydmluZyB0aGF0IEkgbWFydmVsbGVkIAp3aXRoaW4gbXlzZWxmLCBzYWlkIHVudG8gbWUsIGJlaG9sZCB0aGUgZHJhZ29uIAp3aG8gaXMgYXQgdGhlIGhlYWQgb2YgdGhlIGRldm91cmluZyBhcm1pZXMgdGhvdSAKc2Vlc3QsIGNhdXNldGggdGhlIG5hdGlvbnMgb3ZlciB3aGljaCBoZSBydWxldGggCnRvIGZvcmdlIGZldHRlcnMgZm9yIHRoZW1zZWx2ZXMuIAoKNCAKCkFuZCB0aGUgdGhvdXNhbmRzIHRob3Ugb2JzZXJ2ZXN0IHByby0gCmNlZWRpbmcgZnJvbSB0aGUgdGhyb25lLCBnb2FkZWQgd2l0aCBjaGFpbnMsIAphbmQgZ3VhcmRlZCBieSBzb2xkaWVycywgYXJlIHRoZSB5b3VuZyBtZW4gb2YgCnRoZSBsYW5kLCB3aG8sIHRvcm4gZnJvbSB0aGVpciBob21lcywgdGhlaXIgZmEtIAptaWxpZXMsIGFuZCBmcmllbmRzLCBhcmUgZm9yY2VkIHRvIGZpbGwgdXAgdGhlIAp3YXN0ZSBvY2Nhc2lvbmVkIGluIHRoZSBhcm1pZXMgb2YgdGhlIGRyYWdvbiAKYnkgdGhlIHN3b3JkIHdoaWNoIGlzIHdpdGhvdXQsIGFuZCB0aGUgcGVzdGktIApsZW5jZSBhbmQgZmFtaW5lIHdoaWNoIHJhZ2Ugd2l0aGluLiAKCjUgCgpUaGUgdGhvdXNhbmRzLCBhZ2Fpbiwgd2hvbSB0aG91IHNlZXN0IHJlLSAKdHVybmluZyBmcm9tIHRoZSBhcm1pZXMgd2l0aG91dCwgYW5kIHByb2NlZWQtIAppbmcgYXMgaXQgd2VyZSB0b3dhcmRzIHRoZSB0aHJvbmUsIGNvdmVyZWQgCndpdGggd291bmRzLCBhbmQgbG9hZGVkIHdpdGggY2hhaW5zLCBodW4tIApncnksIG5ha2VkLCBhbmQgZW1hY2lhdGVkLCBhcmUgdGhlIGNhcHRpdmVzIAp3aGljaCB0aGUgZHJhZ29uIGFuZCBoaXMgYXJtaWVzIGhhdmUgdGFrZW4gaW4gCndhciA7IGFuZCB0aG9zZSBtZW4gaW4gYXJtb3VyIHRob3Ugc2Vlc3QgY29uLSAKZHVjdGluZyB0aGVtIGFyZSB0aGUgdmVyeSBzYW1lIHdobywgYSBzaG9ydCAKCmczIAoKCgppIOKAoioqIAoKCgoxMTAgTkFQT0xFT04uIENoYXAuIFhWSUlJLiAKCndoaWxlIGJlZm9yZSwgd2VyZSB0aGVtc2VsdmVzIGRyYWdnZWQgdG8gdGhlIApmaWVsZCBvZiBiYXR0bGUuIAoKNiAKTW9yZW92ZXIsIHNheWV0aCB0aGUgYW5nZWwsIG5vdCBvbmx5IGRvIHRoZSAKbmF0aW9ucyB0aG91IGJlaG9sZGVzdCB3b3JrIG91dCB0aGUgY2hhaW5zIAp3aGVyZXdpdGggdGhleSBhcmUgdGhlbXNlbHZlcyBmZXR0ZXJlZDsgYnV0IAp0aGV5IG1vcmVvdmVyIHNoZWQgdGhlaXIgYmxvb2QgaW4gb3JkZXIgdG8gcHVyLSAKY2hhc2UgdGhlbSwgYXMgaWYgYm9uZGFnZSB3ZXJlIGFzIHN3ZWV0LCBhbmQgCmFzIG11Y2ggdG8gYmUgcHJpemVkIGFzIHRob3UsICIgTyB0aHJpY2UgcHJlLSAKY2lvdXMgbGliZXJ0eSAhIiAKCjcgClRoZW4gaGUgc2FpZCB1bnRvIG1lLCBub3cgYmVob2xkIHRoZSBsZXNzZXIgCnRocm9uZXMgd2hpY2ggc3Vycm91bmQgdGhlIGdyZWF0ZXIgb25lLCBmcm9tIApOIHdoaWNoIHRob3Ugc2F3ZXN0IHRoZSBkcmFnb24gZGVzY2VuZCwgdG8gCnNwcmVhZCBvbiBldmVyeSBzaWRlIHJ1aW4gYW5kIGRlc29sYXRpb24sIHJhLSAKcGluZSwgbXVyZGVyLCBhbmQgc2xhdmVyeS4gCgo4IApTbyBJIHR1cm5lZCBtaW5lIGV5ZXMgdG93YXJkcyB0aGUgdGhyb25lcywgCmFuZCBiZWhvbGQgSSBzYXcgdGhlbSwgaW4gbGlrZSBtYW5uZXIgYXMgCnRoYXQgb2YgdGhlIGRyYWdvbiwgYnkgd2hvbSB0aGV5IGhhZCBiZWVuIApyZWFyZWQsIGVuY2lyY2xlZCBhbmQgc3VwcG9ydGVkIGJ5IGJsb29kLXRoaXJzdHkgCmxlZ2lvbnMuIAoKOSAKQW5kIHRoZSBhbmdlbCB5ZXQgYWdhaW4gZGVzaXJlZCBtZSB0byB0dXJuIAptaW5lIGV5ZXMgdGhlIHdheSB0b3dhcmQgdGhlIG5vcnRoLCBhbmQgYmUtIAoKCgpDaGFwLiBYVklJSS4gTkFQT0xFT04uIElsbCAKCmhvbGQgSSB0aGVyZSBzYXcgYSB0aHJvbmUsIG9uIHdoaWNoIHdhcyBzZWF0ZWQgCmEgcG93ZXJmdWwgcnVsZXIuIAoKMTAgCgpBbmQgYXJvdW5kIHRoaXMgdGhyb25lIHRoZXJlIHNhdCBmYXduaW5nIAphbmQgZGVjZWl0ZnVsIG1lbiwgd2hvIG5ldmVyIGNlYXNlZCB3aGlzcGVyLSAKaW5nIGluIHRoZSBlYXIgb2YgdGhlIG1hbiBvbiB0aGUgdGhyb25lLCBzKmZ0IAphbmQgYmxhbmRpc2hpbmcgdGhpbmdzLiAKCjExIAoKQW5kIHRoaXMgbWFuIGhhdmluZyBkZXNjZW5kZWQgZnJvbSB0aGUgCnRocm9uZSwgaW4gdGhlIG1pZHN0IG9mIGhpcyBjb3VydGllcnMgYW5kIGZsYXR0ZXItIAplcnMsIHdlbnQgaW50byBoaXMgcGFsYWNlLiAKCjEyIAoKQW5kIHRoZSBhbmdlbCBicm91Z2h0IG1lLCBhcyBpdCB3ZXJlLCB0byB0aGUgCmdhdGUgb2YgdGhlIHBhbGFjZSAkIGFuZCB3aGVuIEkgbG9va2VkLCBiZWhvbGQsIApJIHNhdyB3b21lbiBpbiBsb29zZSBhbmQgZ2F5IGF0dGlyZSwgYW5kIG9mIAp3YW50b24gbG9va3MgYW5kIGdlc3R1cmVzLCB3YWl0aW5nIHRoZSBhcnJpdmFsIApvZiB0aGUga2luZy4gCgoxMyAKCkFuZCB0aGV5IGFsc28gd2hpc3BlcmVkIHNvZnQgYW5kIGJsYW5kaXNoLSAKaW5nIHRoaW5ncyBpbiBoaXMgZWFyLCBhbmQgZ2F2ZSBzdHJlbmd0aCB0byB0aGUgCmd1aWxlIGFuZCBkZWNlaXQgd2hpY2ggdGhlIGNvdXJ0aWVycyBhbmQgZmxhdHRlci0gCmVycyBoYWQgYmVlbiBwcmFjdGlzaW5nIGFyb3VuZCB0aGUgdGhyb25lLiAKCjE0IAoKTm93LCB0aGUgYW5nZWwgaGF2aW5nIGFnYWluIG9ic2VydmVkIG1lIHRvIAptYXJ2ZWwgYXQgdGhlc2UgdGhpbmdzLCBzYWlkLCBiZWhvbGQgdGhlIGZsYXR0ZXItIAoKCgppbiBOQVBPTEVPTi4gQ2hhcC4gWFZJSUkuIAoKZXJzIGFuZCBjb3VydGllcnMgd2hvbSB0aG91IHNhd2VzdCBhcm91bmQgdGhlIAp0aHJvbmUsIGFuZCB0aGUgY3VubmluZyBhbmQgZGVjZWl0ZnVsIHdvbWVuIAp3aG9tIHRob3Ugbm93IHNlZXN0IGluIHRoZSBwYWxhY2UsIGFyZSBoaXJlZCAKYnkgdGhlIGRyYWdvbiB0byBkaXZlcnQgdGhlIGF0dGVudGlvbiBvZiB0aGUgCnBvd2VyZnVsIG1vbmFyY2ggdGhvdSBiZWhvbGRlc3QsIGZyb20gdGhlIGRlLSAKc2lnbnMgb2YgdGhlIGRyYWdvbiwgdGhhdCBoZSBtYXkgbm90IGJlIG1vbGVzdC0sIAplZCBpbiB0aGUgZXhlY3V0aW9uIHRoZXJlb2YsIHVudGlsIGEgY29udmVuaWVudCAKc2Vhc29uIHNoYWxsIGFycml2ZSBmb3Igb3ZlcnRocm93aW5nIHRoZSBydWxlciBvZiAKdGhpcyBuYXRpb24gYWxzby4gCgoxNSAKCk5vdyB0aGUgYW5nZWwgYmFkZSBtZSB0dXJuIG1pbmUgZXllcyBvbmNlIAptb3JlIHRvd2FyZHMgdGhlIGZyaWdodGZ1bCBhbmQgaGlkZW91cyBwcm9zcGVjdCAKd2hpY2ggbGF5IHNwcmVhZCBiZWZvcmUgbWUsIAoKMTYgCgpMbyAhIHRoZSBoZWF2ZW5seSBhbmQgY2hlZXJpbmcgdm9pY2Ugb2YgZnJlZS0gCmRvbSB3YXMgc3RpbGxlZCwgYW5kIG5vdCB0byBiZSBoZWFyZCBhbW9uZ3N0IAp0aGUgbmF0aW9ucywgYW5kIGRyZWFyeSBhbmQgdW5pdmVyc2FsIHNsYXZlcnkgCnNlZW1lZCB0byBwcmV2YWlsIHRocm91Z2hvdXQgdGhlIGVhcnRoICEgCgoxNyAKVGhlIHRvbmd1ZSBvZiB0aGUgcGF0cmlvdCBvcmF0b3Igd2FzIGR1bWIsIAoKYW5kIHNlYWxlZCB1cCA7IHRoZSBwZW4gb2YgdGhlIHdyaXRlciB3YXMgdGFrZW4gCgpmcm9tIGhpbSAhIAoKMTggCgpUaGUgcHJpc29uIGRvb3JzIHdlcmUgZXZlciBncmF0aW5nIG9uIHRoZWlyIAoKCgpDaGFwLCBYVklJSS4gTkFQT0xFT04uIDExMyAKCm1hc3N5IGhpbmdlcywgYW5kIHRoZSBkcmVhcnkgZHVuZ2VvbiB3YXMgZXZlciAKb3BlbmluZyBpdHMgaGlkZW91cyBqYXdzICEgCgoxOSAKQW5kIHRoZSBhbmdlbCBvZiBoZWF2ZW4gYnJvdWdodCBtZSB0byB0aGUgCmRvb3Igb2Ygb25lIG9mIHRoZSBtYW55IHN0cm9uZyBwbGFjZXMgd2hpY2ggSSAKYmVoZWxkLiAKCjIwIApXaGVuIGxvICEgSSBzYXcgaW4gYSBob3JyaWQgY2VsbCwgYSBwYWxlIGFuZCAKZW1hY2lhdGVkIHByaXNvbmVyLCBnb2FkZWQgd2l0aCBpcm9uIGNoYWlucywgCnBpbmluZyBhd2F5IGluIGRyZWFyeSBhbmQgZm9ybG9ybiBjb25maW5lLSAKbWVudCEgCgoyMSAKSHVuZ2VyIGFuZCBkaXNlYXNlIHdlcmUgcG91cnRyYXllZCBvbiBoaXMgCndvZS13b3JuIGNvdW50ZW5hbmNlICEgCgoyMiAKQSB0eXJhbnQncyBmaWF0IGhhZCBleGNsdWRlZCBoaW0gZnJvbSB0aGUgCnN3ZWV0IHNvY2lldHkgb2YgbWVuLCBhbmQgZnJvbSB0aGUgY2hlZXJpbmcgCmxpZ2h0IG9mIHRoZSBzdW4sIGFuZCBoYWQgZG9vbWVkIGhpbSB0byBiZS0gCmNvbWUgYSBwcmV5IHRvIGNvcnJ1cHRpb24sIGFuZCB0aGUgcmVwdGlsZXMgCm9mIHRoZSBlYXJ0aCBJIAoKMjMgCk5vdyB3aGVuIEkgYmVoZWxkIHRoZXNlIHRoaW5ncywgbXkgc3Bpcml0IApmYWlsZWQgbWUsIGFuZCBJIHdvdWxkIGhhdmUgc3VuayBpbiBncmllZiBhbmQgCmRlc3BhaXIsIGhhZCBub3QgdGhlIGFuZ2VsIHN1cHBvcnRlZCBtZS4gCgoKCmkgCgoKCjExNCBOQVBPTEVPTi4gQ2hhcC4gWFZJSUkuIAoKMjQgCgpBbmQgdHVybmluZyB1bnRvIHRoZSBhbmdlbCwgSSBzYWlkLCBIb3cgCmNvbWV0aCBpdCB0aGF0IHRoZSBMb3JkIGRvdGggbm90IGRlbGl2ZXIgdGhlIApkcmFnb24gaW50byB0aGUgaGFuZHMgb2YgdGhlIHBlb3BsZSwgdGhhdCB0aGV5IAptYXkgc2xheSBoaW0sIGFuZCB0aGVyZWJ5IHJlbW92ZSB0aGUgZGlyZWZ1bCAKc3VmZmVyaW5ncyBvZiB0aGUgbmF0aW9ucyA/IAoKMjUgCgpCdXQgYmVob2xkIHRoZSBhbmdlbCBsb29rZWQgbWUgaW4gdGhlIGZhY2UgCmFuZCBjaGlkIG1lLCBzYXlpbmcgOyBLbm93ZXN0IG5vdCB0aG91LCBmcmFpbCAKbWFuLCB0aGF0IHRoZSBMb3JkIG9mIGhlYXZlbiBhbmQgZWFydGggZG9ldGggCnRoYXQgd2hpY2ggc2VlbWV0aCBnb29kIHVudG8gaGltID8gCgoyNiAKCiIgTG8gISBtYW55IG9mIHRoZSBuYXRpb25zIHRob3Ugbm93IHNlZXN0IApzdWZmZXJpbmcgdW5kZXIgdGhlIGRyYWdvbiwgd2VyZSB3b3JzaGlwcGVycyBvZiAKdGhlIGZpcnN0IGlkb2wsIHdoaWNoIGlzIGNhbGxlZCBMaWNlbnRpb3VzbmVzcyA7IAphbmQgdW50aWwgdGhleSBzaGFsbCBieSByZXBlbnRhbmNlIGFuZCBhbWVuZC0gCm1lbnQgb2YgbGlmZSwgaGF2ZSBleHBpYXRlZCB0aGUgY3JpbWVzIHdoaWNoIAp0aGV5IHRoZXJlYnkgY29tbWl0dGVkLCB0aGUgc3VuIG9mIGxpYmVydHkgCndoaWNoIHRob3Ugb2JzZXJ2ZWRzdCB0byBiZSBuZWFybHkgZGFya2VuZWQgaW4gCmJsb29kLCBzaGFsbCBub3QgcmlzZSB1cG9uIHRoZW0sIG5vciB1bnRpbCB0aGVuLCAKc2hhbGwgdGhlaXIgYm9uZHMgYmUgYnJva2VuIGFzdW5kZXIsIAoKMjcgCkJlaG9sZCAhIHRoZSBodW5kcmVkIGhlYWRlZCBtb25zdGVyIHdoZW4gCmxldCBsb29zZSBvbiB0aGUgZWFydGgsIHdhcyBndWlsdHkgb2YgYWxsIG1hbm5lciAKb2YgY3JpbWUsIGNydWVsdHksIGFuZCBvcHByZXNzaW9uIGogYW5kIHNoYWxsIG5vdCAKCgoKQ2hhcC4gWElYLiBOQVBPTEVPTi4gMTE1IAoKdGhlIGRyYWdvbiBpbiBsaWtlIG1hbm5lciBsZWFybiB0byBjYXRjaCAxaWlzIApwcmV5IGFuZCBmZWVkIGluIGhpcyB0dXJuLCBvbiB0aGUgYmxvb2QgYW5kIAp2aXRhbHMgb2YgdGhlIG1vbnN0ZXIgPyAKCgoKQ0hBUC4gWElYLiAKClRoZSBFbmQgb2YgdGhlIFZpc2lvbi4gCgpOb3cgdGhlIGFuZ2VsLCBwZXJjZWl2aW5nIHRoYXQgbXkgc3Bpcml0IHdhcyAKc29yZSB0cm91YmxlZCBhbmQgdmV4ZWQgd2l0aGluIG1lIGF0IHdoYXQgSSAKaGFkIGJlaGVsZCwgdG9vayBjb21wYXNzaW9uIHVwb24gbWUsIGFuZCBiYWRlIAptZSB0dXJuIG1pbmUgZXllcyB0b3dhcmQgdGhlIHdlc3QuIAoKU28gSSBkaWQgYXMgaGUgc3Bha2UsIGFuZCBiZWhvbGQgbXkgaGVhcnQgCndhcyBjaGVlcmVkIHdpdGggYSBzZWVtbHkgcHJvc3BlY3QuIAoKMyAKCkZvciBsbyAhIGluIHRoZSBtaWRzdCBvZiB0aGUgb2NlYW4sIEkgYmVoZWxkIGEgCmZhaXIgYW5kIGJlYXV0aWZ1bCBpc2xhbmQsIG9uIHdoaWNoIHRoZSBzdW4gb2YgCmZyZWVkb20gc2hvbmUgd2l0aCBleGNlZWRpbmcgYnJpZ2h0bmVzcy4gCgo0IAoKSGVyIGZsb3dlcnkgbWVhZG93cyB3ZXJlIGludml0aW5nIHRvIHRoZSAKZXllLCBhbmQgbnVtZXJvdXMgaGVyZHMgYW5kIGZsb2NrcyB3ZXJlIGZlZWQtIAppbmcgb24gaGVyIHZlcmRhbnQgcGFzdHVyZXMuIAoKCgonIGkgCgoKCjExNiBOQVBPTEVPTi4gQ2hhcC4gWElYLiAKCjUgCk1ldGhvdWdodCBJIGhlYXJkIHRoZSBtdXJtdXJpbmcgb2YgaGVyIAp3YXRlciBicm9va3MsIGFuZCB0aGUgc3dlZXQgbWVsb2R5IG9mIHRoZSBiaXJkcyAKb2YgaGVyIHdvb2RzLiAKCjYgClRoZSBzaGVwaGVyZCBsZWFuaW5nIG9uIGhpcyBjcm9vaywgc3Rvb2QgbXVzLSAKaW5nIG9uIHRoZSBmYWNlIG9mIHRoZSBoaWxsLCB0ZW5kaW5nIGhpcyBwZWFjZS0gCmZ1bCBmb2xkIDsgYW5kIHRoZSBodXNiYW5kbWFuIHdhcyByZWFwaW5nIGluIApnbGFkbmVzcyB0aGUgcmljaCBjcm9wIGhlIGhhZCBzb3duIGluIHRoZSBzcHJpbmcuIAoK4oCiIDcgCk5vdyBpbiB0aGUgbWlkc3Qgb2YgdGhlIG51bWVyb3VzIGhlcmRzIGluIAp0aGUgaXNsYW5kLCBJIHNhdyBhIHN0dXJkeSBidWxsIHdpdGggdGVycmlibGUgCmhvcm5zLCB0aGUgZ3VhcmRpYW4gb2YgdGhlIGZsb2NrLiAKCjggCkFuZCB0aGUgYnVsbCB3aG8gcm9hcmVkIGFuZCBiZWxsb3dlZCB3aXRoIAptaWdodHkgaXJlLCBzdG9vZCBvbiB0aGUgc2VhIHNob3JlLCB3aXRoIGhpcyBoZWFkIAp0dXJuZWQgdG93YXJkcyB0aGUgbGFuZCBvZiB0cm91Ymxlcywgd2hlcmVpbiAKdGhlIGRyYWdvbiBwcmV2YWlsZWQuIAoKOSAKQW5kIGxvICEgSSBhc2tlZCB0aGUgYW5nZWwgd2hlbmNlIGFyb3NlIHRoZSAKZ3JlYXQgZnVyeSBvZiB0aGUgYnVsbCA/IAoKMTAgCkFuZCBoZSBzcGFrZSwgYW5kIHNhaWQgdW50byBtZSwgdGhhdCB0aGUgCmRyYWdvbiB3aGljaCB3YXMgb24gdGhlIG9wcG9zaXRlIHNpZGUgb2YgdGhlIApzZWEsIGhhZCBvZnRlbiB0aHJlYXRlbmVkIHRoZSBzYWZldHkgb2YgdGhlIGZsb2NrIAoKCgo0IAoKCgpDaGFwLiBYSVguIE5BUE9MRU9OLiAxMTcgCgphbmQgb2YgdGhlIGxhbmQgOyBidXQgdGhhdCB0aGUgYnVsbCB0ZXJyaWZpZWQgaGltLCAKYW5kIHdhcyByZWFkeSB0byB0b3NzIGhpbSBhbmQgZ29yZSBoaW0gdG8gCmRlYXRoLCBpZiBwZXJhZHZlbnR1cmUgaGUgY2FtZSB3aXRoaW4gaGlzIAoKcmVhY2guIAoKMTEgCgpOb3cgdGhlIGFuZ2VsIHNhaWQsIHRvIHRoZSBpbnRlbnQgdGhhdCBJIG1pZ2h0IApzaGV3IHRoZWUgYWxsIHRoZXNlIHRoaW5ncyBhcnQgdGhvdSBicm91Z2h0IGhpLSAKdGhlciwgZ28sIHRoZXJlZm9yZSwgYW5kIGRlY2xhcmUgYWxsIHRoYXQgdGhvdSAKaGlzdCBzZWVuIHRvIHRoZSBwZW9wbGUgb2YgQWxiaW9uLCAKCjEyIAoKQW5kIHdhcm4gdGhlbSBhZ2FpbnN0IHRoZSBwZXJ2ZXJzZSB3aWNrZWQtIApuZXNzIHdoaWNoIGJyb3VnaHQgdXBvbiB0aGUgb3RoZXIgbmF0aW9ucyBvZiAKdGhlIGVhcnRoLCB0aGUgZ3JlYXQgYW5kIHRlcnJpYmxlIGNhbGFtaXRpZXMgd2hpY2ggCnRob3UgaGFzdCBub3cgYmVoZWxkIHdpdGggdGhpbmUgZXllcywgYW5kIGhlYXJkIAp3aXRoIHRoaW5lIGVhcnMuIAoKSVMgCgpBbmQgYmVob2xkICEgaG93IGdsYWQgd2FzIEkgd2hlbiBJIGF3b2tlIAphbmQgZm91bmQgbXlzZWxmIGluIHRoZSBwZWFjZWZ1bCBhbmQgcGxlbnRpZnVsIApsYW5kIG9mIG15IGZhdGhlcnMgISAKCjE0IAoKWWVhLCB0aGF0IHZlcnkgbGFuZCBvdmVyIHdoaWNoIGdvb2Qga2luZyAKQWxiYW51cyByZWlnbnMsIHdob3NlIHRocm9uZSBpcyByZWFyZWQgb24gbG92ZSwgCmFuZCBub3Qgb24gdGVycm9yIDsgYW5kIGFyb3VuZCB3aGljaCB0aGVyZSBhZC0gCm1pbmlzdGVyIG5vdCBibG9vZC10aGlyc3R5IGxlZ2lvbnMsIGJ1dCB0aGUgaG8tIApseSBrZWVwZXJzIG9mIHRoZSBzYWNyZWQgcmVjb3JkcyBvZiByZWxpZ2lvbiwgYW5kIAoKCgoxMTggTkFQT0xFT04uIENoYXAuIFhJWC4gCgp0aGUgZ3VhcmRpYW5zIG9mIHRoZSByaWdodHMgYW5kIHByaXZpbGVnZXMgb2YgdGhlIApwZW9wbGUgOyB0aGUgbGVhcm5lZCBpbiB3aXNkb20gYW5kIGluIGNvdW5zZWwsIAphbmQgaW4gdGhlIGxhd3Mgb2YgdGhlIGxhbmQuIAoKMTQgCgpUaGF0IGxhbmQgaW4gd2hpY2ggdGhlIGxhdyBrbm93ZXRoIG5vIGRpcy0gCnRpbmN0aW9uIG9mIHJhbmssIGh1dCBpcyBhZG1pbmlzdGVyZWQgd2l0aCBpbS0gCnBhcnRpYWwganVzdGljZSB0byB0aGUgaGlnaCBhbmQgdG8gdGhlIGxvdywgdGhlIApyaWNoIGFuZCB0aGUgcG9vciwgYW5kIGluIHdoaWNoIGV2ZXJ5IG1hbiBpcyAKdHJpZWQgYnkgaGlzIGVxdWFscy4gCgoxNSAKClRoYXQgbGFuZCBpbiB3aGljaCB0aGUgdm9pY2Ugb2YgZ2VudWluZSBmcmVlLSAKZG9tIGlzIHRyaXVtcGhhbnQuIAoKMTYgCgpJbiB3aGljaCB0aGUgdG9uZ3VlIG9mIHRoZSBzZW5hdG9yIGlzIGZyZWUgCmV2ZW4gdG8gYWJ1c2UsIGFuZCB0aGUgcGVuIG9mIHRoZSB3cml0ZXIgd2l0aCAKaW1wdW5pdHkgaW5kaXRldGggc2NhbmRhbG91cyB0aGluZ3MuIAoKMTcgClRoYXQgbGFuZCB0byB3aGljaCBpbXByaXNvbm1lbnQgYW5kIGRlYXRoIAphcmUgc3RyYW5nZXJzLCBzYXZlIHdoZXJlIGltcGFydGlhbCBqdXN0aWNlLCBhbmQgCnZlbmVyYWJsZSBsYXcgaW5mbGljdCB0aGVtIG9uIHRoZSBndWlsdHkgaGVhZC4gCgoxOCAKVGhhdCBmcmVlIGFuZCBoYXBweSBsYW5kLCBpbiB3aGljaCBhbiBoYWlyIApvZiB0aGUgaGVhZCwgb3IgYSBtb3JzZWwgb2YgYnJlYWQsIG9mIHRoZSBtZWFuLSAKZXN0IG9mIG9uZSBvZiB0aGUgcGVvcGxlLCBjYW5ub3QgYmUgaW5qdXJlZCAKZXZlbiBieSB0aGUga2luZyBvbiB0aGUgdGhyb25lICEgCgoKCkNoYXAuIFhJWC4gTkFQT0xFT04uIDExMCAKCjE5IAoKR2l2ZSBub3QsIHRoZW4sIGdydWRnaW5nbHksIE8gcGVvcGxlIG9mIEFsLSAKYmlvbiwgYnV0IHdpdGggYSB3aWxsaW5nIGhlYXJ0LCB0aGF0IHdoaWNoIGlzIApuZWNlc3NhcnkgdG8gbWFpbnRhaW4geW91ciBoYXBwaW5lc3MgYW5kIGdyZWF0LSAKbmVzcywgYW5kIHRvIHByb3RlY3QgeW91IGFnYWluc3QgdGhlIHNjb3VyZ2VzIApvZiB0aGUgdHlyYW50IE5hcG9sZW9uLiAKClNPIAoKRm9yIGluIHBsYWNlIG9mIGEgcGFydCwgaGUgd291bGQgdGFrZSBmcm9tIAp5b3UgYWxsIHRoYXQgYmVsb25nZXRoLCBhbmQgaXMgZGVhciB1bnRvIHlvdSA7IAphbmQgd291bGQgbW9yZW92ZXIgcHV0IHlvdXIgd2l2ZXMgYW5kIHlvdXIgCmNoaWxkcmVuIHRvIHRoZSBzd29yZCwgYW5kIGNvdmVyIHRoZSBsYW5kIHdoZXJlLSAKaW4geWUgZHdlbGwgd2l0aCBkZXNvbGF0aW9uIGFuZCBibG9vZHNoZWQuIAoKCgpDSEFQLiBYWC4gCgoKCjE5MCBOQVBPTEVPTi4gQ2hhcC4gWFguIAoKCgpDSEFQLiBYWC4gCgpUaGUgd2FybmluZ3MgYW5kIGFkbW9uaXRpb25zIHdoaWNoIHRoZSBBbmdlbCBnYXZlIAppbiBjb21taXNzaW9uLCB0byBiZSBkZWxpdmVyZWQgdW50byB0aGUgS2luZyBvZiBBbC0gCmJpb24sIGFuZCB0byBoaXNqaXJzdCBib3JuLCBhbmQgdG8gYWxsIHRoZSBzb25zIGFuZCAKZGF1Z2h0ZXJzIG9mIHRoZSBLaW5nLiDigJQgJSBBcyBhbHNvIHVudG8gdGhlIFJ1bGVycyAKYW5kIENvdW5zZWxsb3JzIG9mIHRoZSBsYW5kLCBhbmQgdGhlIEp1ZGdlcyB0aGVyZW9mIHkgCmFuZCB1bnRvIGFsbCB0aGUgcGVvcGxlIHdobyBkd2VsbCB0aGVyZWluLiAKCkxpc3RlbiB0aGVuLCBhbmQgZ2l2ZSBlYXIsIE8gcGVvcGxlIG9mIEFsLSAKYmlvbiwgdG8gdGhlIHdhcm5pbmdzIGFuZCBhZG1vbml0aW9ucyB3aGljaCAKdGhlIGFuZ2VsIG9mIGhlYXZlbiBnYXZlIGluIGNvbW1pc3Npb24gdG8gYmUgCmRlbGl2ZXJlZCB1bnRvIHlvdS4gCgoyIAoKQmV3YXJlLCBPIEFsYmlvbnMsIG9mIHRoZSB3b3JzaGlwIG9mIHRoZSBmaXJzdCAKaWRvbCwgd2hpY2ggaXMgY2FsbGVkIExpY2VudGlvdXNuZXNzIDsgYmVjYXVzZSwgCm9uIHRoZSBkYXkgeWUgd29yc2hpcCB0aGUgc2FtZSwgeWUgc2hhbGwgc3VyZWx5IApwZXJpc2guIAoKMyAKCmwgCgpBbmQgdGhlIHdyYXRoIG9mIHRoZSBMb3JkIHNoYWxsIGJlIGtpbmRsZWQgCmFnYWluc3QgeW91LCBldmVuIHVudG8geW91ciB1dHRlciBydWluIGFuZCBkZS0gCnN0cnVjdGlvbi4gCgo0IAoKRm9yIGlmIGl0IHNoYWxsIHNvIGhhcHBlbiwgdGhhdCB5ZSBsaXN0ZW4gdW50byAKCgoKQ2hhcC4gWFguIE5BUE9MRU9OLiBNbCAKCnRoZSBkZWNlaXRzIGFuZCBzZWR1Y3Rpb25zIG9mIHRoZSBpZG9sLCBhbmQgCmdpdmUgeW91cnNlbHZlcyB1cCBhZnRlciB0aGUgbWFubmVyIG9mIHRoZSAKR2F1bHMsIHVudG8gc2VkaXRpb24sIGNvbnNwaXJhY3ksIGFuZCByZWJlbGxpb24sIAp0cmVhc29uLCBpcnJlbGlnaW9uLCBhbmQgdHVtdWx0LCB3aGljaCBhcmUgdGhlIApmcnVpdHMgdGhlcmVvZjsgdGhlIHNhbWUganVkZ21lbnRzIHNoYWxsIHZpc2l0IAp5b3UsIHdoaWNoIHZpc2l0ZWQgdGhlIGxhbmQgb2YgR2F1bCwgYW5kIGZpcmUgCmFuZCBzd29yZCwgcmFwaW5lIGFuZCBtdXJkZXIsIGJsb29kIGFuZCBmYS0sIAptaW5lLCBzaGFsbCBsaWdodCB1cG9uIHRoZSBsYW5kLiAKCjUgCkFuZCBhZnRlciB0aGUgbWFubmVyIG9mIHRoZSBHYXVscywgYW5kIG9mIAp0aGUgb3RoZXIgbmF0aW9ucyBhYm92ZSB3cml0dGVuLCB5ZSBzaGFsbCBiZSBkZS0gCmxpdmVyZWQgaW50byB0aGUgaGFuZHMgb2YgdGhlIHNlY29uZCBpZG9sLCBOYXBvLSAKbGVvbiwgb3Igb2Ygc29tZSBzdWNoIHRlcnJpYmxlIHNjb3VyZ2UuIAoKNiAKQW5kIHllIHNoYWxsIGJlIGRlcHJpdmVkIG9mIHRoZSBncmVhdCBhbmQgaW4tIAp2YWx1YWJsZSBibGVzc2luZ3Mgd2hpY2ggeW91IGFuZCB5b3VyIGZvcmVmYS0gCnRoZXJzIGhhdmUgZW5qb3llZCBmb3IgbWFueSBnZW5lcmF0aW9ucywgYXMgdGhlIApyZXdhcmQgb2YgcmlnaHRlb3VzbmVzcyBhbmQgb2YgdHJ1dGguIAoKNyAKCkZ1cnRoZXJtb3JlLCB5b3VyIGxhbmRzIHNoYWxsIGJlIGRlc29sYXRlZCAKYW5kIGxhaWQgd2FzdGUsIGFuZCB5b3VyIHNpbHZlciBhbmQgZ29sZCwgYW5kIAp5b3VyIGNvcm4sIGFuZCB5b3VyIGNhdHRsZSwgYW5kIHlvdXIgc2hlZXAsIGFuZCAKd2hhdHNvZXZlciBpcyBwcmVjaW91cyB1bnRvIHlvdSwgc2hhbGwgYmUgdGFrZW4gCmF3YXkuIAoKSCAKCgoKSSBWIAoKCgoxMlMgTkFQT0xFT04uIENoYXAuIFhYLiAKCllvdXIgY2l0aWVzLCB0b3ducywgYW5kIHZpbGxhZ2VzLCBzaGFsbCBiZSBidXJudCAKYW5kIGRlc3Ryb3llZCwgYW5kIHlvdXIgc29ucyBhbmQgeW91ciBkYXVnaC0gCnRlcnMgOyB5ZWEsIGV2ZW4geW91ciBmaXJzdCBib3JuIHNoYWxsIGJlIGxlZCBpbnRvIApjYXB0aXZpdHkuIAoKOSAKClllIHNoYWxsIGJlIHNjb3VyZ2VkLCBhbmQgcnVsZWQgd2l0aCBhIHJvZCBvZiAKaXJvbiwgYW5kIGFsbCB0aGUgdGhyZWF0cyBhbmQgYm9hc3RpbmdzIG9mIE5hcG8tIApsZW9uLCB3aGljaCBpdCBoYXRoIHBsZWFzZWQgdGhlIExvcmQgZm9yIHRoZSAKcHJlc2VudCB0byB0dXJuIGZhciBmcm9tIHlvdSwgc2hhbGwgYmUgdmlzaXRlZCB1cC0gCm9uIHlvdSwgYW5kIHlvdXIgY2hpbGRyZW4ncyBjaGlsZHJlbiwgdG8gdGhlIAp0aGlyZCAtYW5kIGZvdXJ0aCBnZW5lcmF0aW9uLiAKCjEwIAoKRm9yIGxvICEgdGhlIHNhbWUgR29kIHRoYXQgaGF0aCBkZWxpdmVyZWQgCnRoZSBvdGhlciBuYXRpb25zIG9mIHRoZSBlYXJ0aCBpbnRvIHRoZSBoYW5kcyBvZiAKdGhlIFR5cmFudCwgYmVjYXVzZSBvZiB0aGVpciB1bnJpZ2h0ZW91c25lc3MsIApjYW4gZG8gc28gdW50byB5b3UgaW4gbGlrZSBtYW5uZXIuIAoKMTEgCgpBbmQgdGhlIHNhbWUgR29kIHRoYXQgaGF0aCBnaXZlbiB1bnRvIE5hLSAKcG9sZW9uIHRoZSBkb21pbmlvbiBvdmVyIHRoZSBsYW5kLCBjYW4sIGluIHRoZSAKZnVsbmVzcyBvZiBoaXMgcG93ZXIsIGFsc28gZ2l2ZSB1bnRvIGhpbSB0aGUgZG9taS0gCm5pb24gb3ZlciB0aGUgbWlnaHR5IGRlZXAuIAoKMTIgCgpTbyB0aGF0IGhlIG1heSBwYXNzIG92ZXIgdGhlIHNlYSB3aGljaCBkaS0gCnZpZGV0aCB0aGUgbGFuZCBvZiBHYXVsIGZyb20gdGhlIGxhbmQgb2YgQUktIAoKCgonSSAKCgoKQ2hhcC4gWFguIE5BUE9MRU9OLiBtIAoKYmlvbiwgd2l0aCBoaXMgd2FybGlrZSBhbmQgbnVtZXJvdXMgaG9zdHMsIGFuZCAKb3ZlcmNvbWUgdGhlIHBlb3BsZSB0aGVyZW9mLCBhbmQgc2xheSB0aGVtIHdpdGggCmdyZWF0IHNsYXVnaHRlciwgYW5kIHNtaXRlIHRoZW0gZnJvbSBvZmYgdGhlIGZhY2UgCm9mIHRoZSBlYXJ0aC4gCgoxMyAKCkJld2FyZSwgdGhlcmVmb3JlLCBPIHBlb3BsZSBvZiBBbGJpb24sIG9mIHRoZSAKY3JhZnRzIGFuZCBzdWJ0bGV0aWVzIG9mIHRoZSBkZXZpbCwgd2hvIHdhcyAKaGVyZXRvZm9yZSBpbiB0aGUgZm9ybSBvZiB0aGUgZmlyc3QgaWRvbCwgbmFtZWx5LCAKTGljZW50aW91c25lc3MsIGFuZCBub3cgYXBwZWFyZXRoIGluIHRoZSBzaGFwZSAKb2YgTmFwb2xlb24sIHRoZSBzZWNvbmQgaWRvbCBvZiB0aGUgR2F1bHMuIAoKMTQgCgpGb3IgdW50byB3aG9tIGNhbiB0aGlzIG1hbiBiZSBsaWtlbmVkLCBidXQgCnVudG8gU2F0YW4sIHRoZSBlbmVteSBvZiBtYW5raW5kICEgCgoxNSAKCkNvbnRpbnVlLCBPIGdvb2Qga2luZyBBbGJhbnVzICEgYXMgaGVyZS0gCnRvZm9yZSwgdG8gZmVhciBHb2QsIGFuZCBrZWVwIGhpcyBjb21tYW5kLSAKbWVudHMsIGFuZCB0byB3YWxrIGh1bWJseSBiZWZvcmUgdGhlIExvcmQgdGh5IApHb2QsIAoKMTYgCgpMZXQgZ2VudGxlbmVzcyBhbmQgbWVyY3ksIHBlYWNlIGFuZCB0cnV0aCwgCnBpZXR5IGFuZCBkZXZvdGlvbiwgY29udGludWUgdG8gbWFyayB0aHkgcGF0aHMsIAphbmQgbWFrZSB0aGVlIGEgYnJpZ2h0IGFuZCBzaGluaW5nIGV4YW1wbGUgCm9mIGFsbCBtYW5uZXIgb2YgdmlydHVlIHVudG8gdGhlIHBlb3BsZSwgb3ZlciAKd2hvbSB0aGUgTG9yZCBoYXRoIGFwcG9pbnRlZCB0aGVlIHRvIHJlaWduIAppbiBnbGFkbmVzcyBhbmQgcHJvc3Blcml0eS4gCgoyaCAKCgoKMTI0IE5BUE9MRU9OLiBDaGFwLiBYWC4gCgoxNyAKCkZvciBieSBzbyBkb2luZywgdGhlIHBlb3BsZSBzaGFsbCBwcm9zcGVyIGluIAphbGwgbWFubmVyIG9mIGhlYWx0aCBhbmQgd2VhbHRoIDsgYW5kIHdoZW4gaXQgCnNoYWxsIHBsZWFzZSBHb2QgdG8gY2FsbCB0aGVlLCBhZnRlciBoYXZpbmcgcmVpZ24tIAplZCBmb3IgbWFueSB5ZWFycyB5ZXQgdG8gY29tZSwgZnJvbSB0aGluZSAKZWFydGhseSBraW5nZG9tLCBoZSB3aWxsIGdpdmUgdW50byB0aGVlIGEgY3Jvd24gCm9mIGdsb3J5LCBoYXBwaW5lc3MsIGFuZCBpbW1vcnRhbGl0eSwgaW4gdGhlIGtpbmctIApkb20gb2YgaGVhdmVuLCB3aGljaCBrbm93ZXRoIG5vIGVuZCwgYW5kIGlzIAp2aXNpdGVkIHdpdGggbm8gdHJpYnVsYXRpb24uIAoKMTggCgpPIHByaW5jZSAhIHRob3UgZmlyc3QgYm9ybiBvZiBnb29kIGtpbmcgQWwtIApiYW51cywgc2V0IGJlZm9yZSB0aGVlIGFuZCBmb2xsb3cgdGhlIGV4YW1wbGUgCm9mIHRoeSByb3lhbCBwYXJlbnQsIGFuZCBsaWtlIGhpbSwgZmVhciBHb2QgYW5kIAprZWVwIGhpcyBjb21tYW5kbWVudHMuIAoKMTkgCgpTbyB0aGF0IHRoZSBwZW9wbGUgb3ZlciB3aG9tIHRob3Ugc2hhZnQgCgpwZXJhZHZlbnR1cmUgcnVsZSwgbWF5LCBmcm9tIGEgcmVnYXJkIHRvIHRoeSAKcGVyc29uLCBhbmQgcmV2ZXJlbmNlIGZvciB0aHkgdmlydHVlcywgYmUgaW4gdGhlIApob3VyIG9mIGRhbmdlciBhcyBhIHdhbGwgb2YgZGVmZW5jZSByb3VuZCBhYm91dCAKdGh5IHRocm9uZSwgYXMgaW4gdGhlIHRpbWUgb2YgdGhlIGtpbmcgdGh5IGZhLSAKdGhlci4gCgoyMCAKQmUgYXNzdXJlZCwgTyBwcmluY2UgISB0aGF0IHZpcnR1ZSBhbmQgcmlnaHRlLSAKb3VzbmVzcywgYXJlIHRoZSBmaXJtZXN0IHBpbGxhcnMgb2YgdGhlIHRocm9uZSwgCgoKCj4gaSAKCgoKQ2hhcC4gWFguIE5BUE9MRU9OLiAxMjUgCgphbmQgb2YgdGhlIHN0YXRlIDsgYW5kIHRoYXQgd2l0aG91dCB0aGVtIHRoZXJlIGlzIApuZWl0aGVyIGhhcHBpbmVzcyBub3Igc2FmZXR5IGluIGVhcnRobHkgdGhpbmdzLiAKCjIxIAoKRm9yIGxvICEgZXZlbiBzbyBpdCBpcywgYXMgd3JpdHRlbiBpbiB0aGlzIGJvb2ssIAp0aGF0IGFsbCB0aGUga2luZ3MgYW5kIG5hdGlvbnMgb2YgdGhlIGVhcnRoLCAKd2hvIGhhdmUgZmFsbGVuIGluIHRoZXNlIGxhdHRlciBkYXlzLCB3ZXJlIGVzLSAKdHJhbmdlZCBmcm9tIEdvZCwgYW5kIGhhZCBiZWNvbWUgd2lja2VkIAppbiB0aGUgaW1hZ2luYXRpb25zIG9mIHRoZWlyIGhlYXJ0cywgYW5kIHByYWN0aS0gCmNlcyBvZiB0aGVpciBsaXZlcyA7IHNvIHRoYXQgaXQgcGxlYXNlZCB0aGUgTG9uciAKdG8gZGVsaXZlciB0aGVtIGludG8gdGhlIGhhbmRzIG9mIHRoZWlyIGVuZW1pZXMsIAphbmQgdG8gZGVzdHJveSB0aGVtIGFsdG9nZXRoZXIuIAoKMjIgCgpCdXQgaXQgaGF0aCBoaXRoZXJ0byBzZWVtZWQgZ29vZCB1bnRvIHRoZSAKQWxtaWdodHksIHRvIHNwYXJlIHRoZSBuYXRpb24gb3ZlciB3aG9tIHRob3UgCmFydCBkZXN0aW5lZCBwZXJhZHZlbnR1cmUgdG8gcmVpZ247IGJlY2F1c2UgCm9mIHRoZSBnb29kbmVzcyBvZiB0aGUga2luZyB0aHkgZmF0aGVyLCBhbmQgb2YgCnRoZSBwZW9wbGUgb3ZlciB3aG9tIGhlIHJ1bGV0aC4gCgoyMyAKClRha2UgYXdmdWwgd2FybmluZywgdGhlcmVmb3JlLCBmcm9tIHRoZSBmYWxsIApvZiBvdGhlciBwcmluY2VzOyBob25vdXIgdGhlIGtpbmcsIGFuZCBmZWFyIAphbmQgb2JleSB0aGUgb25seSB0cnVlIGFuZCBsaXZpbmcgR29kLCBzbyB0aGF0IAp3aGVuIHRoeSByb3lhbCBmYXRoZXIgaXMgY2FsbGVkIHVudG8gaGlzIGhlYS0gCnZlbmx5IGtpbmdkb20sIHRob3UgbWF5ZXN0IHJlaWduIGluIGhpcyBzdGVhZCAKZm9yIG1hbnkgZGF5cyBhbmQgeWVhcnMsIG92ZXIgYSBmcmVlLCBsb3ZpbmcsIGFuZCAKaGFwcHkgcGVvcGxlLiAKCmggMyAKCgoKMTI2IE5BUE9MRU9OLiBDaGFwLiBYWC4gCgoyNCAKClRoZW4sIHdoZW4gdGhlIGV2aWwgZGF5IGNvbWV0aCwgdGhvdSBzaGFsdCAKbm90IGJlIGFmcmFpZCwgYW5kIGluIHRoZSB0aW1lIG9mIGFmZmxpY3Rpb24sIGFuZCAKYXQgdGhlIGhvdXIgb2YgZGVhdGgsIHRob3Ugc2hhbHQgYmUgY29tZm9ydGVkLCAKYW5kIHN1cHBvcnRlZCBieSB0aGUgc3Bpcml0IG9mIEdvZC4gCgoyNSAKCk5vdywgTyB5ZSBwcmluY2VzLCBhbmQgcHJpbmNlc3NlcyBvZiB0aGUgCmxhbmQgb2YgQWxiaW9uICEgYXMgaXQgaGF0aCBwbGVhc2VkIEdvZCB0byBleGFsdCAKeW91IGluIHJhbmssIHNvIG1heSB5ZSBiZSBlbWluZW50IGZvciB2aXJ0dWUgCmFuZCBwaWV0eS4gCgoyNiAKClRoZXJlYnkgYWZmb3JkaW5nIGNvbWZvcnQgYW5kIGhhcHBpbmVzcyB0byAKeW91ciByb3lhbCBwYXJlbnRzIGluIHRoZSBldmVuaW5nIG9mIHRoZWlyIGRheXMgOyAKYW5kIHRvIHlvdXIgaW5mZXJpb3JzIGEgc2FsdXRhcnkgZXhhbXBsZSBvZiBhbHQgCmdvb2RuZXNzIGFuZCBleGNlbGxlbmNlLiAKCjI3IApOb3IgbGV0IGl0IGJlIHNhaWQgaW4gaXJlLCBieSB0aGUgcGVvcGxlIHdobyAKdXBob2xkIHlvdSwgdGhhdCB0aGUgZ3JleSBoYWlycyBvZiB5b3VyIHJveWFsIAphbmQgYmVsb3ZlZCBwYXJlbnRzIGRlc2NlbmQgd2l0aCBzb3Jyb3cgdG8gCnRoZSBncmF2ZSwgYmVjYXVzZSBvZiB0aGUgc2lucyBhbmQgaW5pcXVpdGllcyBvZiAKdGhlaXIgY2hpbGRyZW4uIAoKCgpDaGFwLiBYWEkuIE5BUE9MRU9OLiAxMjcgCgoKCkNIQVAuIFhYTCAKCkFkbW9uaXRpb25zIGFuZCBXYXJuaW5ncyB0byB0aGUgUHJpZXN0cyBhbmQgTm9ibGVzIG9mIAp0aGUgbGFuZC4g4oCUIDIuIFRvIHRoZSBSZXByZXNlbnRhdGl2ZXMgYW5kIENvdW5zZWxsb3JzIG9mIAp0aGUgcGVvcGxlLiDigJQgMy4gVG8gSnVkZ2VzIGFuZCBNYWdpc3RyYXRlcy4gCgpPIHllIGNoaWVmIHByaWVzdHMgb2YgdGhlIGxhbmQgYW5kIHByZWFjaC0gCmVycyBvZiB0aGUgZ29zcGVsIG9mIHRydXRoICEgcmVtZW1iZXIgd2hvc2Ugc2VyLSAKdmFudHMgeWUgYXJlIDsgYW5kIHdoaWxlIHdpdGggeW91ciBsaXBzIHllIGFyZSAKcHJvY2xhaW1pbmcgZ29vZGx5IGluc3RydWN0aW9ucywgYW5kIGhvbHkgCnRoaW5ncywgbGV0IHlvdXIgbGl2ZXMgYmUgcGF0dGVybnMgb2YgYWxsIG1hbm5lciAKb2YgdmlydHVlLiAKCjIgCgpBbmQgdGh1cyBnaXZlIHRlc3RpbW9ueSB0byB0aGUgZXhjZWxsZW5jeSBvZiAKdGhlIGRvY3RyaW5lcyB3aGljaCB5ZSBwcmVhY2ggYW5kIHByb2Zlc3MsIGFzIAp0aGUgbWluaXN0ZXJzIG9mIGEgZ3JlYXQgYW5kIGp1c3QgR29kLiAKCjMgCgpCYW5pc2ggZmFyIGZyb20geW91IGh5cG9jcmlzeSwgd29ybGRseSBtaW5kLSAKZWRuZXNzLCBsaWNlbnRpb3VzbmVzcyBvZiBsaWZlIGFuZCBkb2N0cmluZSwgYW5kIAphbGwgb3RoZXIgdW5yaWdodGVvdXNuZXNzLiAKCjQgCgpXaGlsZSB5ZSBhcmUgYWRtaW5pc3RlcmluZyBzcGlyaXR1YWwgYW5kIGUtIAp2ZXJsYXN0aW5nIHRoaW5ncywgZG8gbm90IGJlIGNvbnN0YW50bHkgZ3Jhc3AtIAppbmcgYXQgdGhvc2Ugd2hpY2ggYXJlIHRlbXBvcmFsIGFuZCBwZXJpc2hpbmcsIAoKCgoxMjggTkFQT0xFT04uIENoYXAuIFhYSS4gCgphbmQgdGhlcmVieSBtYW5pZmVzdGluZyB0b28gZ3JlYXQgYSBkZXNpcmUgZm9yIAp0aGUgaG9ub3VycyBhbmQgZW5qb3ltZW50cyBvZiB0aGlzIG1vcnRhbCBsaWZlLiAKCjUgCkZvciB3aGVuc29ldmVyIHllIGFjdCBpbiB0aGlzIG1hbm5lciwgeWUgCmJlbGllIHRoZSBkb2N0cmluZXMgd2hpY2ggeWUgcHJlYWNoLCBhbmQgYXJlIGEgCnJlcHJvYWNoIHRvIHRoZSByZWxpZ2lvbiBvZiBDaHJpc3QuIAoKNiAKUmVtZW1iZXIsIHRoYXQgdW50byB5b3UgaXMgY29tbWl0dGVkIHRoZSAKY2FyZSBhbmQgZ3VpZGFuY2Ugb2YgdGhlIHNvdWxzIG9mIHRoZSBwZW9wbGUgb2YgCnRoaXMgd29ybGQsIGZvciB3aGljaCB5b3UgbXVzdCBiZSBvbmUgZGF5IGFjLSAKY291bnRhYmxlIDsgYW5kIHRoYXQgeW91ciBvd24gc291bHMgYXJlIGluIHRoZSAKcG93ZXIgb2YgdGhhdCBncmVhdCBhbmQgcHVyZSBKdWRnZSwgYXQgd2hvc2UgCnRyaWJ1bmFsIHlvdSBtdXN0IGFuc3dlciBmb3IgeW91ciBzYWNyZWQgY2hhcmdlIAp3aXRoIHNldmVyZSBzY3J1dGlueSwgYW5kIHN0YW5kIG9yIGZhbGwgYWNjb3JkLSAKaW5nbHkuIAoKNyAKClllIG5vYmxlcyBvZiB0aGUgbGFuZCAhIHVwb24gd2hvbSBpdCBoYXRoIAoKcGxlYXNlZCBHb2QgdG8gYmVzdG93IGhvbm91ciwgcCZ3ZXIsIGFuZCAKCndlYWx0aCwgbGV0IHlvdXIgcmFuayBiZSBubyBsZXNzIGRpc3Rpbmd1aXNoZWQgCgpmb3IgaXRzIGRpZ25pdHksIHRoYW4gZm9yIGl0cyBnb29kbmVzcyBhbmQgdmlydHVlLiAKCjggCkNvbW1hbmQgdGhlIHJlc3BlY3QgYW5kIGVzdGVlbSBvZiB5b3VyIGluLSAKZmVyaW9ycywgYnkgZW1pbmVudCBhbmQgY29uc3BpY3VvdXMgdmlydHVlcyBhbmQgCmV4Y2VsbGVuY2llcywgYW5kIGNvbmNpbGlhdGUgdGhlaXIgbG92ZSBhbmQgYXQgCgoKCkNoaXAuIFhYSi4gTkFQT0xFT04uIDEyOSAKCmZlY3Rpb24gYnkgbWVyY3ksIHRlbmRlcm5lc3MsIGFuZCBjb25kZXNjZW4tIApzaW9uLiAKCjkgCgpJbiBvcmRlciB0aGVyZXRvLCBiZSBub3Qgc3RyYW5nZXJzIHVudG8gdGhlIApwZW9wbGUgOyBidXQgZHdlbGwgaW4gdGhlIG1hbnNpb25zLCBhbmQgb24gdGhlIApsYW5kcyB3aGVyZXdpdGggR29kIGJsZXNzZWQgeW91ciBub2JsZSBmYXRoZXJzIApiZWZvcmUgeW91LCBhbmQgaGF0aCBub3cgYmxlc3NlZCB5b3UgOyBhbmQgYmUgCmluIHRoZSBtaWRzdCBvZiB5b3VyIGtpbnNtZW4gYW5kIGRlcGVuZGVudHMsIAp0byBjb21mb3J0LCBhbmQgZG8gdGhlbSBnb29kLiAKCjEwIAoKRm9yIG90aGVyd2lzZSwgaWYgeWUgcmVzaWRlIGluIGdyZWF0IGFuZCBjb3ItIApydXB0IGNpdGllcywgYWZhciBvZmYgZnJvbSB0aGUgcGVvcGxlLCBhbmQgdGh1cyAKYmVjb21lIGVzdHJhbmdlZCBmcm9tIHRoZW0sIGhvdyBjYW4gdGhleSAKc3RhbmQgeW91IGluIHN0ZWFkIGluIHRoZSBkYXkgb2YgdHJvdWJsZSBhbmQgCmRhbmdlciwgYXMgaW4gdGhlIHRpbWVzIG9mIHlvdXIgZmF0aGVycyA/IAoKMTEgCgpUaGVuIHNoYWxsIHRoZSBsYW5kIHJlam9pY2UsIGFuZCBiZSBnbGFkIG9mIGl0cyAKbm9ibGVzLCBhbmNmIHByb3NwZXJpdHkgYW5kIHNlY3VyaXR5IHNoYWxsIGF0dGVuZCAKdGhlbSA7IG5vciBzaGFsbCB0aGV5IGJlIG92ZXJ0aHJvd24gYW5kIGRlc3Ryb3ktIAplZCwgYWZ0ZXIgdGhlIG1hbm5lciBvZiB0aG9zZSBvZiB0aGUgbGFuZCBvZiBHYXVsLCAKYW5kIG9mIHRoZSBvdGhlciBuYXRpb25zIG9mIHRoZSBlYXJ0aCwgd2hvIHdlcmUgCnVubWluZGZ1bCBvZiB0aGVzZSB0aGluZ3MsIGFuZCBjb25zZXF1ZW50bHkgYmUtIApjYW1lIHRoZSBzcG9ydCBhbmQgZGVyaXNpb24gb2YgdGhlIG11bHRpdHVkZSwgCndobyBob3V0ZWQgYW5kIHRyYW1wbGVkIHRoZW0gdW5kZXIgZm9vdC4gCgoKCjEzMCBOQVBPTEVPTi4gUWhhcC4gWFhJLiAKCjEyIAoKWWUgcmVwcmVzZW50YXRpdmVzIGFuZCBjb3Vuc2VsbG9ycyBvZiB0aGUgCnBlb3BsZSwgYW5kIG1lbWJlcnMgb2YgdGhlIGdyZWF0IGFzc2VtYmx5IG9mIAp0aGUgbmF0aW9uICEgYmUgZXhlbXBsYXJ5LCBpbiBsaWtlIG1hbm5lciwgZm9yIAp0aGUgcHVyaXR5IGFuZCBpbnRlZ3JpdHkgb2YgeW91ciBjb25kdWN0IDsgZmVhciAKR29kIGFuZCBob25vdXIgdGhlIGtpbmchIAoKMTMgCgpUaGVuIHNoYWxsIHlvdXIgY291bnNldHMgcHJvc3BlciwgYW5kIGNvbi0gCmR1Y2UgdG8gdGhlIGdvb2Qgb2YgdGhlIHN0YXRlIDsgbm9yIGJlIGxpa2UgdW50byAKY2hhZmYsIG9yIHRoZSBjb3Vuc2VsIG9mIHRoZSB1bmdvZGx5LCB3aGljaCBpcyAKYnJvdWdodCB0byBub3VnaHQsIGFuZCBkcml2ZW4gdG8gYW5kIGZyby4gCgoxNCAKCkNlYXNlIGZyb20gYWxsIG1hbm5lciBvZiB3cmFuZ2xpbmcsIHJldmlsaW5nLCAKc3RyaWZlLCBhbmQgdmFpbiBjb250ZW50aW9uLCB3aGljaCBzZXJ2ZSBvbmx5IHRvIApkaXN0cmFjdCB0aGUgbWVhc3VyZXMgb2YgZ29vZCBraW5nIEFsYmFudXMsIGF0IAphIHRpbWUgd2hlbiBuZWFybHkgYWxsIHRoZSB3b3JsZCBoYXZlIGNvbWJpbi0gCmVkLCBhbmQgYXJlIHdhZ2luZyBjcnVlbCB3YXIgYWdhaW5zdCBoaW0sIGFuZCAKdGhyZWF0ZW4gdG8gZGVzdHJveSBoaW0gYW5kIGhpcyBwZW9wbGUuIAoKMTUgCgpVbml0ZSB3aXRoIHRoZSBraW5nLCB5b3VyIGdvb2QgYW5kIGxhd2Z1bCAKZ292ZXJub3IsIGluIGhlYXJ0IGFuZCBoYW5kLCBhbmQgYXMgb25lIG1hbiwgCnRoYXQgdGhlIHBlb3BsZSBtYXkgZG8gc28gaW4gbGlrZSBtYW5uZXIgOyBsZXN0IAp0aGUgZW5lbXksIHNlZWluZyBhIGhvdXNlIGRpdmlkZWQgYWdhaW5zdCBpdC0gCnNlbGYsIHJlam9pY2UsIGFuZCBzYXkgdW50byB0aGVtc2VsdmVzOyA8YyBMZXQgdXMgCgoKCkNoYXAuIFhYTCBOQVBPTEVPTi4gMTMxIAoKcGVyc2V2ZXJlLCBmb3Igd2Ugc2hhbGwgYXNzdXJlZGx5IHByZXZhaWwgaW4gdGhlIAplbmQuIiAKCjE2IAoiIEZvciB0aGlzIHBlb3BsZSBtdXN0IGZhbGwgaW50byBvdXIgaGFuZHMgYmUtIApjYXVzZSBvZiB0aGVpciBzdHJpZmUsIGFuZCB2YWluIGNvbnRlbnRpb25zIGluIHRoZSAKaG91ciBvZiBkYW5nZXIsIGFuZCB3aGVuIHRoZSBiYXR0bGUgaXMgYXQgdGhlaXIgCmdhdGVzLiIgCgoxNyAKClRha2Ugd2FybmluZywgdGhlbiwgTyBncmVhdCBhc3NlbWJseSBvZiB0aGUgCm5hdGlvbiAhIGFuZCBsZXQgbm90IGNvbnRlbnRpb24sIHNlbGZpc2ggY29uc2lkZS0gCnJhdGlvbnMsIGFuZCB2YWluIGdsb3J5LCBoYXJkZW4geW91ciBoZWFydHMsIGFuZCAKZGFya2VuIHlvdXIgdW5kZXJzdGFuZGluZ3MsIGluIHRoZSBtb21lbnQgb2YgCm1pZ2h0eSB0cm91YmxlIGFuZCBwZXJpbCwgd2hpbGUgdGhlIGxhbmQgaW4gCndoaWNoIHlvdSBkd2VsbCwgYW5kIHRoZSBraW5nIGFuZCBwZW9wbGUgd2hvIApwdXQgdGhlaXIgdHJ1c3QgaW4geW91LCBhcmUgYmVzZXQgb24gZXZlcnkgCnNpZGUsIGFuZCB0aHJlYXRlbmVkIHdpdGggdW5pdmVyc2FsIHJ1aW4gYW5kIGRlLSAKc3RydWN0aW9uLiAKCjE4IAoKTyB5ZSBqdWRnZXMsIGFuZCBtaW5pc3RlcnMgb2YgdGhlIGxhd3Mgb2YgdGhlIApsYW5kICEgYmUgeWUgYWxzbyBjb25zcGljdW91cyBmb3IgYWxsIG1hbm5lciBvZiAKcHVyaXR5LCBhbmQgcmVjdGl0dWRlIG9mIGNvbmR1Y3QgOyBhbmQgbGV0IGludGUtIApncml0eSBhbmQgdHJ1dGgsIGp1c3RpY2UgYW5kIG1lcmN5LCBtYXJrIGFsbCAKeW91ciB3YXlzIGFuZCBqdWRnbWVudHMuIAoKU28gdGhhdCB5ZSBtYXkgYmUgYXBwcm92ZWQgb2YgbWVuIGluIHRoaXMgCgoKCjEzMiBOQVBPTEVPTi4gQ2hhcC4gWFhJLiAKCndvcmxkLCBhbmQgb2YgR29kIGluIHRoZSB3b3JsZCB0byBjb21lLCB3aGVuIApjYWxsZWQgdXBvbiB0byBhbnN3ZXIgZm9yIHlvdXIganVkZ21lbnRzIG9uIAplYXJ0aCwgYXQgYSB0cmlidW5hbCBpbiBoZWF2ZW4gb2YgaW5mYWxsaWJsZSB3aXMtIApkb20gYW5kIGp1c3RpY2UsIAoKMjAgCk1hZ2lzdHJhdGVzIGFuZCBpbmZlcmlvciBqdWRnZXMgb2YgdGhlIGxhbmQgISAKaG9sZCBmYXN0IHlvdXIgaW50ZWdyaXR5IGFuZCBsb3lhbHR5LCBhbmQgd2hpbGUgCnlvdSBhcmUgYSBwYXR0ZXJuIHRvIHRoZSBwZW9wbGUgaW4gdGhlIHB1cml0eSAKb2YgeW91ciBsaXZlcywga2VlcCB0aGVtIGFsc28gaW4gcmVzcGVjdGZ1bCAKc3Vib3JkaW5hdGlvbiBhbmQgb2JlZGllbmNlIHRvIHRoZSBsYXdzIDsgdGhhdCAKdGhleSBtYXkgbm90IHZpb2xhdGUgdGhlIHNhbWUsIGFuZCBsaWtlIHRoZSAKR2F1bHMgcmV2ZWwgaW4gYWxsIG1hbm5lciBvZiBpbmlxdWl0eSBhbmQgbGktIApjZW50aW91c25lc3MsIHRvIHRoZWlyIG93biBiaXR0ZXIgbWlzZXJ5IGFuZCAKcnVpbi4gCgoyMSAKTyB5ZSBwZW9wbGUgb2YgQWxiaW9uICEgcmljaCBhbmQgcG9vciwgeW91bmcgCmFuZCBvbGQgISBoZWFyIHdoYXQgdGhlIHdhcm5pbmcgdm9pY2Ugb2YgaGVhLSAKdmVuIGhhdGggdG8gc2F5IHVudG8geW91LiAKCjIyIApXaG9zb2V2ZXIgaXQgaGF0aCBwbGVhc2VkIEdvZCB0byBibGVzcyBpbiAKaGlzIHN0b3JlLCBsZXQgaGltIGJld2FyZSBsZXN0IGhlIGZvcmdldCB3aG8gaXMgCnRoZSBMb3JkLCwgYW5kIGxldCBoaW0gcmVtZW1iZXIgdGhhdCBoaXMgd2VhbHRoIAphbmQgcmljaGVzIGFyZSBhIHNhY3JlZCB0cnVzdCwgcGxhY2VkIGluIGhpcyAKaGFuZHMgZm9yIHRoZSBnb29kIGFuZCBjb21mb3J0IG9mIGhpcyBsZXNzIGZhLSAKdm91cmVkLCBwb29yLCBhbmQgd3JldGNoZWQgZmVsbG93LWNyZWF0dXJlcy4gCgoKCkNoYXAuIFhYSS4gTkFQT0xFT04uIDEzMyAKCjIzIApBbmQgZm9yIHRoYXQgdHJ1c3QgaGUgbXVzdCByZW5kZXIgYW4gYWNjb3VudCAKdG8gaGltIHdobyBnYXZlIGl0LCBhdCB0aGUgZmluYWwgZGF5IG9mIHJldHJpYnUtIAp0aW9uLCBhbmQgYWNjb3JkaW5nIHRvIHRoZSBhY2NvdW50IHdoaWNoIGhlIApyZW5kZXJldGgsIHNoYWxsIGhpcyBkb29tIGJlIGRldGVybWluZWQuIAoKMjQgCldob3NvZXZlciBpdCBoYXRoIHBsZWFzZWQgR29kIHRvIGFmZmxpY3Qgd2l0aCAKcG92ZXJ0eSwgIiBMZXQgaGltIGJld2FyZSBsZXN0IGhlIHB1dCBmb3J0aCBoaXMgCmhhbmQgYW5kIHN0ZWFsLiIgCgoyNSAKTGV0IGhpbSByZW1lbWJlciBhbHNvIHRoYXQgaGlzIGFmZmxpY3Rpb25zIGFyZSwgCmFzIGl0IHdlcmUsIGJ1dCBmb3IgYSBtb21lbnQsIGFuZCB0aGF0IHRydWUgaGFwLSAKcGluZXNzIGlzIGFsb25lIHRvIGJlIGZvdW5kIGluIHRoZSBoZWF2ZW5seSBtYW4tIApzaW9ucy4gCgoyNiAKVGhhdCB0aGUgdHJlYXN1cmVzIG9mIHRoaXMgbGlmZSBhcmUgZmxlZXRpbmcgYW5kIAp1bmNlcnRhaW4sIGFuZCBtaXhlZCB3aXRoIG1hbnkgYWxsb3lzLiAKCgoKQ0hBUC4gWFhJSS0gCgoKCjEzNCBOQVBPTEVPTi4gQ2hhcC4gWFhJSS4gCgoKCkNIQVAuIFhYSUkuIAoKQWRtb25pdGlvbnMgdG8gdGhlIE1hdHJvbnMgYW5kIERhdWdodGVycyBvZiBBbGJpb24uIAoKTyB5ZSBtYXRyb25zIG9mIEFsYmlvbiEgc2hldyB1bnRvIHRoZSAKZGF1Z2h0ZXJzIHRoZXJlb2YgYW4gZXhhbXBsZSBvZiBwcnVkZW5jZSBhbmQgCnByb3ByaWV0eSBpbiBzcGVlY2gsIGFzIHdlbGwgYXMgaW4gYmVoYXZpb3VyIDsgCmFuZCBtYWtlIGhvbWUgY29tZm9ydGFibGUgYW5kIGludml0aW5nIHRvIAp5b3VyIGh1c2JhbmRzLiAKCjIgCgpCZSBjYXJlZnVsIG9mIHlvdXIgZG9tZXN0aWMgY29uY2VybnMsIGFuZCAKYXZvaWQgYWxsIHJldmVsbGluZ3MgYW5kIGdvc3NpcGluZ3MgYXQgaG9tZSBvciAKYWJyb2FkLCBieSBuaWdodCBvciBieSBkYXkuIAoKMyAKCkFib3ZlIGFsbCwgYmUgY2hhc3RlIGFuZCB2aXJ0dW91cywgYW5kIGZhaXRoLSAKZnVsIHRvIHRoZSBtYXJyaWFnZSBiZWQsIGVtcGxveWluZyB5b3Vyc2VsdmVzIApjaGllZmx5LCBub3QgaW4gbWlydGgsIGdhaWV0eSwgYW5kIGZlYXN0aW5nIDsgYnV0IAppbiB0aGUgY2FyZSBhbmQgZWR1Y2F0aW9uIG9mIHlvdXIgY2hpbGRyZW4sIGltLSAKcGxhbnRpbmcgaW4gdGhlaXIgdGVuZGVyIG1pbmRzIHRoZSBwcmluY2lwbGVzIApvZiB2aXJ0dWUgYW5kIHJlbGlnaW9uLiAKCjQgCgpGb3IgdHJ1ZSBpdCBpcywgdGhhdCB1cG9uIHRoZSBtb3RoZXIgb2Z0ZW4gZGUtIApwZW5kcyB0aGUgaW1wb3J0YW50IHRydXN0IG9mIGluc3RpbGxpbmcgaW50byB0aGUgCgoKCkNoYXAuIFhYSUkuIE5BUE9MRU9OLiAxMzUgCgoqIAoKbWluZHMgb2YgaGVyIGNoaWxkcmVuLCB0aG9zZSBsZWFkaW5nIHRydXRocyBvZiAKcmVsaWdpb24gYW5kIG1vcmFsaXR5LCB3aGljaCBhcmUgdG8gYmVjb21lIHRoZSAKZm91bmRhdGlvbiBvZiB0aGVpciBpbmRpdmlkdWFsIGV4Y2VsbGVuY2UgYW5kIApoYXBwaW5lc3MgaW4gbGlmZSwgYW5kIG9mIHRoZWlyIHVzZWZ1bG5lc3MgdG8gdGhlaXIgCmNvdW50cnkuIAoKNSAKCkFuZCBiZSBhc3N1cmVkLCBPIG1vdGhlcnMgb2YgZmFtaWxpZXMgISB0aGF0IAp5b3VyIGR1dHkgaW4gdGhpcyByZXNwZWN0IGlzIG5vdCBsZXNzIHNhY3JlZCB0aGFuIAp0aGF0IG9mIHRoZSBtaW5pc3RlcnMgb2Ygb3VyIGhvbHkgcmVsaWdpb24gISAKCjYgCgpGb3Igd2hpbGUgeW91ciBodXNiYW5kcyBhcmUgZW5nYWdlZCBpbiB0aGVpciAKd29ybGRseSBhdm9jYXRpb25zLCB0byB5b3UgaXMgYXNzaWduZWQgdGhlIGltLSAKcG9ydGFudCB0YXNrIG9mIGxheWluZyB0aGUgZ3JvdW5kLXdvcmssIG9uIAp3aGljaCB0aGUgZnV0dXJlIHN1cGVyc3RydWN0dXJlIG9mIHZpcnR1ZSBtdXN0IApiZSByYWlzZWQuIAoKNyAKRGF1Z2h0ZXJzIG9mIEFsYmlvbiAhIGFzIHllIGFyZSBmYWlyIHRvIGxvb2sgCnVwb24sIHNvIGFsc28gYmUgeWUgY2hhc3RlLCBtb2Rlc3QsIGFuZCB2aXJ0dS0gCm91cyAhIAoKOCAKTW9yZSBjYXJlZnVsIGFuZCBzb2xpY2l0b3VzIGFib3V0IHRoZSBncmFjZXMgCm9mIHRoZSBtaW5kLCB0aGFuIHRoZSBvcm5hbWVudHMgb2YgdGhlIHBlcnNvbi4gCgo5IApDdWx0aXZhdGUgYW5kIGVucmljaCB5b3VyIG1pbmRzIHdpdGggZXZlcnkgCnVzZWZ1bCwgYW1pYWJsZSwgYW5kIG9ybmFtZW50YWwgdmlydHVlLiAKCgoKSVM2IE5BUE9MRU9OLiBDaGFwLiBYWElJLiAKCjEwIApHdWFyZCBhZ2FpbnN0IHRoZSBmcml2b2xpdGllcyBhbmQgYWJzdXJkaXRpZXMgCm9mIHRoZSBmcmFudGljIG1hbm5lcnMgYW5kIGZhc2hpb25zIG9mIHRoZSBhZ2UgCmluIHdoaWNoIHllIGxpdmUuIAoKMTEgCkxldCB5b3VyIGF0dGlyZSBiZSBkZWNlbnQgYW5kIGJlY29taW5nLCAKbmVhdCBhbmQgZWxlZ2FudCA7IG5vdCB0b28gc2xlbmRlciwgZXhwZW5zaXZlLCAKb3IgZ2F1ZHkgOyBidXQgZml0dGVkIGZvciB0aGUgbGFuZCBpbiB3aGljaCB5ZSAKZml2ZSwgYW5kIHByb3BvcnRpb25lZCB0byB0aGUgbWVhbnMgd2hlcmV3aXRoIApHb2QgaGF0aCBibGVzc2VkIHlvdS4gCgoxMiAKTGV0IG5vdCB5b3VyIGV5ZXMgcm9hbSBib2xkbHkgb24gdGhlIGZhY2VzIApvZiBtZW4sIG5laXRoZXIgYWZmZWN0IHRoZSBjb3kgYWlyLCBub3IgYXNzdW1lIAp0aGUgd2FudG9uIGdhaXQuIAoKMTMgCkJ1dCBsZXQgeW91ciBiZWF1dHkgc2hpbmUsIGFuZCB5b3VyIGNoYXJtcyAKZGlzY2xvc2UgdGhlbXNlbHZlcywgaW4gZ2VudGxlIGFuZCBkaWZmaWRlbnQgZGUtIApwb3J0bWVudCwgYW5kIGluIHRoZSBkb3duY2FzdCBsb29rIG9mIHZpcnR1LSAKb3VzIG1vZGVzdHkuIAoKMTQgClRyYWluIHlvdXJzZWx2ZXMgdXAgdG8gdGhvc2UgdmlydHVlcyBhbmQgYWMtIApjb21wbGlzaG1lbnRzIGZpdHRlZCB0byBtYWtlIHlvdSBhbWlhYmxlIG1vLSAKdGhlcnMgb2YgY2hpbGRyZW4sIHNvIHRoYXQgdGhlIHBsYWNlcyBvZiB0aGUgZGUtIApwYXJ0ZWQgbWF0cm9ucyBvZiB0aGUgbGFuZCBtYXkgYmUgcHJvcGVybHkgCgoKCkNoYXAuIFhYSUkuIE5BUE9MRU9OLiAxMzcgCgpzdXBwbGllZCwgYW5kIHRoZSB5b3VuZyBtZW4gdGhlcmVvZiBibGVzc2VkIAp3aXRoIGdvb2Qgd2l2ZXMuIAoKMTUgCgpXZWxsIGtub3dlc3QgdGhvdSwgTyB3b21hbiAhIHRoZSBwb3dlciAKYW5kIGNvbnRyb3VsIHdoaWNoIHRob3UgcG9zc2Vzc2VzdCBvdmVyIHRoZSAKaGVhcnQgb2YgbWFuLiAKCjE2IAoKVGhvdSBjYW5zdCBlaXRoZXIgbGVhZCBoaW0gYnkgdGh5IHNvZnQgcGVyLSAKc3Vhc2lvbnMsIHRvIHRoZSBob2x5IGFsdGFycyBvZiByZWxpZ2lvbiA7IGNvcnJlY3QgCmhpcyB3YW5kZXJpbmcgYW5kIGxpY2VudGlvdXMgdGhvdWdodHMsIGFuZCAKYW5pbWF0ZSBoaW0gd2l0aCB0aGUgbG92ZSBvZiB2aXJ0dWUgYW5kIG9mIApnbG9yeSAhIAoKMTcgCk9yIHRob3UgY2Fuc3QgYnkgdGhlIHNhbWUgbWVhbnMgY2FsbCBpbnRvIAphY3Rpb24gdGhlIHZpbGVzdCBwcm9wZW5zaXRpZXMgb2YgaGlzIG5hdHVyZSwgCmJsb3cgaGlzIHBhc3Npb25zIGludG8gZmxhbWUsIGFuZCBzdGlyIGhpbSB1cCB0byAKdHJlYXNvbiBhbmQgdG8gY3JpbWVzICEgCgoxOCAKVXNlLCB0aGVyZWZvcmUsIHRoeSBpbmZsdWVuY2UgZGlzY3JlZXRseSwgYW5kIAp0byBnb29kIGFjY291bnQsIGluc3BpcmluZyB0aGUgeW91bmcgbWVuIG9mIAp0aGUgbGFuZCB3aXRoIHRoZSBsb3ZlIG9mIHRoZWlyIGtpbmcgYW5kIHRoZWlyIApjb3VudHJ5KiAKCjE5IApTdGltdWxhdGluZyB0aGVtLCBtb3Jlb3ZlciwgdG8gdGhlIGRlZmVuY2UgCnRoZXJlb2YsIHRoYXQgdGhleSBtYXkgcHJvdmUgYSBzYWZlZ3VhcmQgCgoKCi5fICogKuKWoCAqIAoKCgoxMzggTkFQT0xFT04uIENoYXAuIFhYSUkuIAoKYXJvdW5kIHRoZWUsIE8gZmFpciBvbmUgb2YgQWxiaW9uICEgYW5kIHByZS0gCnNlcnZlIHRoeSBwZXJzb24gZnJvbSB0aGUgaW5zdWx0IG9mIGEgYnJ1dGFsIApmb2UhIAoKMjAgCkhlYXZlbiBhbmQgdmljdG9yeSBmb3JiaWQgISB0aGF0IGV2ZXIgYSBob3MtIAp0aWxlIHNvbGRpZXIgc2hvdWxkIHRha2UgYSBkYXVnaHRlciBvZiBBbGJpb24gYnkgCnRoZSBoYW5kLCBvciBkaXN0dXJiIHRoZSByZXBvc2Ugb2YgaGVyIHBlYWNlZnVsIApmaXJlc2lkZS4gCgoyMSAKSGVhdmVuIGZvcmJpZCAhIHRoYXQgZXZlciBhIGhvc3RpbGUgc29sZGllciAKc2hvdWxkIHJlYXAgdGhlIHJpY2ggY3JvcHMsIG9yIGVhdCB0aGUgZmFpciBicmVhZCAKb2YgQWxiaW9uICEgCgoyMiAKSGVhdmVuIGFuZCB2aWN0b3J5IGZvcmJpZCAhIHRoYXQgZXZlciBhbiBpbi0gCnZhZGluZyBmb2Ugc2hvdWxkIHBvbGx1dGUgdGhlIGhvbHkgYW5kIHNhY3JlZCAKYWx0YXJzIG9mIHRoZSBsYW5kLCBvciB0cmVhZCB1cG9uIHRoZSByZXZlcmVkIAp0b21icyBvZiBoZXIgZGVwYXJ0ZWQgZmF0aGVycyBJIAoKMjMgCkl0IGlzIHRoZSByZWNvbGxlY3Rpb24gb2YgdGhlZSwgTyB3b21hbiAhIHRoZSAKZGVzaXJlIG9mIG9idGFpbmluZyB0aHkgYWRtaXJhdGlvbiwgYW5kIG9mIHNlLSAKY3VyaW5nIHRoeSBzYWZldHksIHRoYXQgb2Z0ZW4gYW5pbWF0ZXMgdGhlIHdhci0gCnJpb3IgaW4gdGhlIGRpcmVmdWwgY29uZmxpY3QsIGFuZCBjYXJlbGVzcyBvZiBkYW4tIApnZXIsIG1ha2VzIGhpbSBwYW50IGZvciBnbG9yeSBhbmQgZm9yIHZpY3RvcnkgISAKCjI0IApOb2JsZSBhbmQgZmFzY2luYXRpbmcgYXJlIHRoeSBhdHRyaWJ1dGVzLCAKCgoKQ2hhcC4gWFhJSS4gTkFQT0xFT04uIElTTyAKCndoZW4gZ292ZXJuZWQgYnkgcmVsaWdpb24sIHBhdHJpb3Rpc20sIGtub3ctIApsZWRnZSwgYW5kIHRoZSBnZW50bGVyIGdyYWNlcyA7IGJ1dCBhaCAhIGhvdyB0ZXItIApyaWJsZSB3aGVuIHBlcnZlcnRlZCBhbmQgY29ycnVwdGVkIGluIHRoZWlyIG5hLSAKdGl2ZSBhbmQgZ2VudWluZSBzb3VyY2VzOyBob3cgcnVpbm91cyB0byAKbWFua2luZCwgYW5kIHN1YnZlcnNpdmUgb2YgdGhlIHNvY2lhbCBjb20tIApwYWN0ISAKCjI1IAoKTmVpdGhlciBzYXksIE8gd29tYW4hIHRoYXQgdG9vIG11Y2ggaXMgCmhlcmVpbiBhc2NyaWJlZCB0byB0aHkgaW5mbHVlbmNlLiAKCjI2IAoKVGhlIHRlbXB0aW5nIHBlcnN1YXNpb25zIG9mIEV2ZSBlbmRlZCBpbiAKdGhlIGZhbGwgb2YgbWFuLCBhbmQgdGhlIGxvc3Mgb2YgcGFyYWRpc2UgISAKCjI3IApUaGUgaW5maWRlbGl0eSBvZiBIZWxlbiBwcm92ZWQgdGhlIGRvd25mYWxsIApvZiBUcm95LCBhbmQgYnJvdWdodCB1cG9uIEdyZWVjZSBhIHRyYWluIG9mIAppbm51bWVyYWJsZSBpbGxzICEgCgoyOCAKClRoZSBzb290aGluZyBibGFuZGlzaG1lbnRzIG9mIENsZW9wYXRyYSBsb3N0IAp0aGUgd29ybGQgdG8gTWFyayBBbnRob255ICEgCgoKCmkgMiAKCgoKMTQwIE5BUE9MRU9OLiBDaGFwLiBYWElJSS4gCgoKCkNIQVAuIFhYSUlJLiAKCgoKLiBHZW5lcmFsIEFkbW9uaXRpb25zIHRvIHRoZSBQZW9wbGUgb2YgQWxiaW9uKiAKCk8geWUgYW5jaWVudHMgb2YgdGhlIGxhbmQgISBsZXQgeW91ciBncmV5IApoXmlycyBiZSB1bnRvIHlvdSBhIGNyb3duIG9mIGdsb3J5IDsgYW5kIHdoZW4gCnlvdXIgaG9hcnkgaGVhZHMgZGVzY2VuZCBpbnRvIHRoZSBncmF2ZSwgeW91ciAKc291bHMgc2hhbGwgYXNjZW5kIHRvIGhlYXZlbiwgYW5kIG1pbmdsZSB3aXRoIAp0aGUgc3Bpcml0cyBvZiB0aGUganVzdCAhIAoKMiAKClllIHdobyByZWpvaWNlIGluIHlvdXIgeW91dGgsIGFuZCB0aGUgZnVsLSAKbmVzcyBvZiB5b3VyIHN0cmVuZ3RoICEgcmVtZW1iZXIgdGhhdCBkaXNlYXNlLCAKYWdlLCBhbmQgZGVhdGgsIGFyZSByYXBpZGx5IGFkdmFuY2luZy4gCgozIAoKRGV2b3RlLCB0aGVyZWZvcmUsIHRoZSBzdHJlbmd0aCBvZiB5b3VyIGRheXMgCnRvIHRoZSBwcmFjdGljZSBvZiB3aGF0ZXZlciBpcyBnb29kIGFuZCBhbWlhLSAKYmxlLCBzbyB0aGF0IHdoZW4gdGhlIGluZmlybWl0aWVzIG9mIG5hdHVyZSBzaGFsbCAKb3ZlcnRha2UgeW91LCB5b3UgbWF5IGJlIGZvdW5kIGluIHRoZSBmdWxsIHBvcy0gCnNlc3Npb24gb2YgYSB2aXJ0dW91cyBhbmQgdmlnb3JvdXMgc291bCwgYW5kIGRpZSAKdGhlIGRlYXRoIG9mIHRoZSByaWdodGVvdXMgISAKCgoKQ2hpcC4gWFhJSUkuIE5BUE9MRU9OLiAxNDEgCgo0IApQYXJlbnRzICEgYmUgY2FyZWZ1bCB0byBpbmN1bGNhdGUgb24gdGhlIG1pbmRzIApvZiB5b3VyIGNoaWxkcmVuIHRoZSBwcmVjZXB0cyBvZiByZWxpZ2lvbiBhbmQgCm1vcmFsaXR5LCBhbmQgZXhlbXBsaWZ5IHRoZSBzYW1lIGluIHRoZSBwYXJpdHkgCmFuZCBob2xpbmVzcyBvZiB5b3VyIG93biBsaXZlcy4gCjUgCkNoaWxkcmVuIGFuZCBsaXR0bGUgb25lcyAhIG9iZXkgdGhlIHByZWNlcHRzIAphbmQgYWRtb25pdGlvbnMgb2YgeW91ciBwYXJlbnRzLCBmZWFyIEdvZCBhbmQgCmhvbm91ciB0aGUga2luZyAhIAoKNiAKU28gdGhhdCBpZiBpdCBzaGFsbCBwbGVhc2UgdGhlIEFsbWlnaHR5IHRvIHN1bS0gCm1vbiB5b3UgaGVuY2UsIHlvdSBtYXkgYmUgcmV1bml0ZWQgdG8gdGhvc2UgCmNvbXBhbmlvbnMgb2YgeW91ciBpbm5vY2VudCB5ZWFycywgd2hvIG1heSAKaGF2ZSBnb25lIGJlZm9yZSB5b3UgdG8gdGhlIG1hbnNpb25zIG9mIHBlYWNlICEgCjcgCldoZW4sIHRoZXJlZm9yZSwgeW91ciBzcG90bGVzcyBzb3VscyBzaGFsbCBiZSAKcmVxdWlyZWQgb2YgeW91IDsgbWF5IHRoZSB3aGlzcGVyaW5nIGFuZ2VsIHNheSBqIAoiIFNpc3RlciBzcGlyaXQsIGNvbWUgYXdheSwiIOKAlCAiIEZvciBvZiBzdWNoIGlzIAp0aGUga2luZ2RvbSBvZiBHb2QgISIgCjggCk1hc3RlcnMgISBiZSBnZW50bGUgdG8sIGFuZCByZWFzb25hYmxlIHdpdGggCnlvdXIgc2VydmFudHMsIGFuZCBpbmZlcmlvcnMsIGV2ZW4gYXMgeW91IGV4cGVjdCAKdGhlIEdvZC4gb2YgaGVhdmVuIHRvIGJlIG1lcmNpZnVsIHVudG8geW91LiAKOSAKU2VydmFudHMgMSBzZWUgdGhhdCB5ZSBiZSBob25lc3QsIGZhaXRoZnVsLCBhbmQgCgoKCjE0MiBOQVBPTEVPTi4gQ2hhcC4gWFhJSUkuIAoKb2JlZGllbnQgdG8geW91ciBlYXJ0aGx5IG1hc3RlciBpbiBhbGwgdGhpbmdzLCBzbyAKdGhhdCB5ZSBtYXkgYmUgYXBwcm92ZW4gb2YgYnkgeW91ciBoZWF2ZW5seSAKbWFzdGVyLCBhbmQgdGhlcmVieSByZWNlaXZlIGF0IGhpcyBoYW5kcywgdGhvc2UgCndhZ2VzIHdoaWNoIGFyZSBrZXB0IGluIHN0b3JlIGZvciB0aGUgaHVtYmxlIApoZWlycyBvZiBpbW1vcnRhbGl0eS4gCgoxMCAKCkZvciB3aGVuIGNoYW5nZWQgYnkgZGVhdGgsIHllIHNoYWxsIGV4cGVyaS0gCmVuY2Ugbm9uZSBvZiB0aGUgZGlzdGluY3Rpb25zIHdoaWNoIEdvZCBpbiAKaGlzIGluZmluaXRlIHdpc2RvbSBoYXMgYXBwb2ludGVkIHRvIHByZXZhaWwgaW4gCnRoaXMgbG93ZXIgd29ybGQuIAoKMTEgCgpUaGVuIGxvICEgYSB2b2ljZSBmcm9tIGhlYXZlbiB3YXMgaGVhcmQsIHNheS0gCmluZyA7ICIgaWYgdGhlIHBlb3BsZSBvZiBBbGJpb24gc2hhbGwgbGlzdGVuIHVudG8gCnRoZXNlIHdhcm5pbmdzIGFuZCBhZG1vbml0aW9ucywgdGhlIGJsZXNzaW5ncyAKd2hpY2ggdGhlIG9ubHkgdHJ1ZSBhbmQgbGl2aW5nIEdvZCBoYXRoIHZvdWNoLSAKc2FmZWQsIHNoYWxsIGJlIGNvbnRpbnVlZCB1bnRvIHRoZW0sIGFuZCB0byB0aGVpciAKY2hpbGRyZW4ncyBjaGlsZHJlbiBmb3IgZ2VuZXJhdGlvbnMgeWV0IHVuYm9ybiAxIiAKCjEyIAoKIiBUaGUgbGFuZCB3aGVyZWluIHRoZXkgZHdlbGwgc2hhbGwgYnJpbmcgZm9ydGggCklpZXIgaW5jcmVhc2UsIGFuZCBHb2QsIGV2ZW4gdGhlaXIgb3duIEdvZCwgCnNoYWxsIGdpdmUgdGhlbSBoaXMgYmxlc3NpbmchIiAKCjEzIAoKIiBUaGUgZG9taW5pb24gb3ZlciB0aGUgc2VhLCBhbmQgaGVhbHRoIGFuZCAKd2VhbHRoLCBhbmQgYWxsIG1hbm5lciBvZiBzZWN1cml0eSBhbmQgaGFwcGluZXNzIAoKCgpDaGFwLiBYWElJSS4gTkFQT0xFT04uIDE0MyAKCnNoYWxsIG1vcmVvdmVyIGJlIGNvbnRpbnVlZCB1bnRvIHRoZSBwZW9wbGUgCnRoZXJlb2YgMSIgCgoxNCAKCiIgQnV0IGlmIHRoZXkgc2hhbGwsIG9uIHRoZSBjb250cmFyeSwgZGVzcGlzZSAKdGhlc2Ugd2FybmluZ3MgYW5kIGFkbW9uaXRpb25zLCB0aG91c2FuZHMgYW5kIAp0ZW4gdGhvdXNhbmRzIG9mIGV2aWxzIHNoYWxsIGFmZmxpY3QgdGhlIGxhbmQgOyBhbmQgCnRoZSBpbmhhYml0YW50cyB0aGVyZW9mIHNoYWxsIGJlIGRlbGl2ZXJlZCBpbnRvIAp0aGUgaGFuZHMgb2YgdGhlaXIgZW5lbWllcy4iIAoKMTUgCgoiIEFuZCBhbGwgdGhlIGp1ZGdtZW50cyBmb3JldG9sZCBhbmQgZGUtIApub3VuY2VkIGluIHRoaXMgYm9vayBzaGFsbCBjb21lIHVwb24gdGhlIHBlby0gCnBsZSwgYW5kIHNjb3VyZ2UgdGhlbSA7IHllYSwgZXZlbiB1bnRvIHRoZSBleC0gCmNlc3NpdmUgYml0dGVybmVzcyBvZiB0aGVpciBzb3Vscy4iIAoKMTYgCgpBbmQgd2hlbiB0aGUgdm9pY2UgaGFkIGNlYXNlZCBzcGVha2luZywgdGhlIApwZW9wbGUgbWFydmVsbGVkIHdpdGhpbiB0aGVtc2VsdmVzIGFuZCBzYWlkLCAKY2MgeWVhLCB2ZXJpbHksIHRoZXNlIHNheWluZ3MgYXJlIHdvcnRoeSBvZiBhbGwgCmFjY2VwdGF0aW9uISIgCgoxNyAKIiBOb3csIHRoZXJlZm9yZSwgbGV0IHVzIGZlYXIgYW5kIHdvcnNoaXAgdGhlIApHb2Qgb2Ygb3VyIGZhdGhlcnMsIGFuZCBrZWVwIGhpcyBjb21tYW5kLSAKbWVudHMgISIgCgoxOCAK4oKs4oKsIE1vcmVvdmVyLCBsZXQgdXMgc2VydmUsIGhvbm91ciwgYW5kIG9iZXkgdGhlIAoKCgoxNDQgTkFQT0xFT04uIENoYXAuIFhYSUlJLiAKCmtpbmcgd2hvbSB0aGUgTG9yZCBoYXRoIGFwcG9pbnRlZCB0byBydWxlIG92ZXIgCnVzIGluIGp1c3RpY2UgYW5kIG1lcmN5ICEiIAoKMTkgCkFuZCBsbyAhIGFuIGVjaG8gcHJvY2VlZGluZyBhcyBpdCB3ZXJlIGZyb20gCnRoZSBtb3VudGFpbnMgYW5kIHRoZSBUYWxsaWVzLCBjcmllZCB3aXRoIGEgCm1pZ2h0eSB2b2ljZSDigJQgQU1FTiogCgoKCkNPTkNMVVNJT04uIAoKCgoxNDUgCgoKCkNPTkNMVVNJT04sIAoKVGh1cyBlbmRldGggdGhlIEZpcnN0IEJvb2sgb2YgTmFwb2xlb24qIAp0aGUgVHlyYW50IG9mIHRoZSBFYXJ0aCA7IGFuZCBpZiBpdCBzaGFsbCBwbGVhc2UgCkdvZCB0byBwcm9sb25nIHVudG8gdGhlIEF1dGhvciB0aGVyZW9mLCB0aGUgCmJsZXNzaW5nIG9mIGxpZmUsIHVpaXRpbCB0aGUgVHlyYW50IGlzIGVpdGhlciBzbGFpbiAKYnkgdGhlIGdsaXR0ZXJpbmcgc3dvcmQgb2YgbWFuLCBvciBjdXQgZG93biBieSAKdGhlIHRhYmxlIEJleSB0aGUgb2YgZGVhdGgsIGEgU2Vjb25kIFZvbHVtZSAKc2hhbGwgdGhlbiBiZSB3cml0dGVuLiAKCkl0IGlzLCBob3dldmVyLCBkZXZvdXRseSB0byBiZSB3aXNoZWQsIHRoYXQgCnRoZSByZW1haW5kZXIgb2YgdGhlIFR5cmFudCdzIGRheXMgYW5kIGRlZWRzLCAKbWF5IGJlIGNvbXByaXNlZCBpbiBhIHNob3J0IGFuZCBlYXJseSBlcGl0YXBoLiAKCllldCB0aGlzIG1hbiwgYW1pZHN0IGFsbCBoaXMgZXZpbHMsIGhhcywgdGhyb3VnaCAKdGhlIHdpc2Ugb3JkaW5hdGlvbiBvZiBQcm92aWRlbmNlLCBiZWVuIG9mIHVzZSAKdG8gdGhlIHByZXNlbnQgZ2VuZXJhdGlvbiwgYnkgY291bnRlcmFjdGluZyB0aGUgCnNwaXJpdCBvZiByZXZvbHV0aW9uLCBpbXBhdGllbmNlIG9mIGxlZ2l0aW1hdGUgYXUtIAp0aG9yaXR5LCBhbmQgcHJvbmVuZXNzIHRvIHZpb2xlbnQgYW5kIGRhbmdlcm91cyAKY2hhbmdlcy4gCgpIZSBoYXMgbW9yZW92ZXIgZGl2ZXJ0ZWQgdG8gbWFubHkgYW5kIAp3YXJsaWtlIGVuZHMgdGhlIG92ZXJmbG93aW5nIHdlYWx0aCBvZiBBbC0gCmJpb24sIHdoZXJld2l0aCBzaGUgbWlnaHQgb3RoZXJ3aXNlIGhhdmUgcHVyLSAKY2hhc2VkIGhlciBvd24gcnVpbi4gQnkgaGlzIG1lbmFjZXMgaGVyIAoKCgoxNDUgQ09OQ0xVU0lPTi4gCgp5b3VuZyBtZW4gaGF2ZSBiZWVuIGF3YWtlbmVkIGZyb20gdGhlIHNsdW0tIApiZXJzIG9mIGx1eHVyaW91cyBzbG90aCwgYW5kIHJvdXNlZCBhbmQgaW51cmVkIAp0byB0aGUgYXJ0IGFuZCB0b2lscyBvZiB3YXIsIGFuZCB0aHVzIGhhcyBBbGJpb24gCmJlY29tZSBpbnZpbmNpYmxlLCBhIHRlcnJvciB0byBhbGwgaGVyIGVuZW1pZXMsIAphbmQgdG8gbm9uZSBtb3JlIHRoYW4gdG8gdGhlIFR5cmFudCBoaW1zZWxmLiAKCk5vdywgbWF5IGdvb2Qga2luZyBBbGJhbnVzIGNvbnRpbnVlIHRvIApyZWlnbiBmb3IgbWFueSBkYXlzIGFuZCB5ZWFycyBpbiBoZWFsdGggYW5kIAp3ZWFsdGgsIGFuZCBpbiB0aGUgaGVhcnRzIG9mIGEgYnJhdmUsIGxveWFsLCBmcmVlLCAKaGFwcHksIGFuZCBsb3ZpbmcgcGVvcGxlLCB3aG8gbmV2ZXIgY2Vhc2UgCnNob3V0aW5nIGFsbCBkYXkgbG9uZywgIiBPIEtpbmcsIGxpdmUgZm9yZXZlciEiIAoKRUxJQUtJTS4gCgoKCkVORCBPRiBCT09LIEkuIAoKCgpQcmlhdGVkIGJ5IEpvaG4gTW9pciwgUm95YWwgQmFuayBDbG/Cu2UsIEVkaW5idXJmaywgCgoKClRUwrteIAoKCgoqIAoKCgpWcyAKCgoKCjMgMjA0NCAwMTkgMDM1IDM4NSAKCgoK4oCiIEkgCgoKCg==
1504
271
  http_version:
1505
- recorded_at: Thu, 07 Nov 2013 04:59:21 GMT
1506
- recorded_with: VCR 2.2.5
272
+ recorded_at: Mon, 05 Mar 2018 04:58:49 GMT
273
+ recorded_with: VCR 4.0.0