-
Notifications
You must be signed in to change notification settings - Fork 0
/
Spleeter_test
332 lines (332 loc) · 99.9 KB
/
Spleeter_test
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "Untitled3.ipynb",
"provenance": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/github/ShubhamNandi/Spleeter/blob/master/Spleeter_test\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "code",
"metadata": {
"id": "OP8itji0uc7N",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 108
},
"outputId": "06963c16-1759-4537-cd65-3a7a648afe78"
},
"source": [
"\n",
"\n",
"!apt install ffmpeg\n",
"\n"
],
"execution_count": 27,
"outputs": [
{
"output_type": "stream",
"text": [
"Reading package lists... Done\n",
"Building dependency tree \n",
"Reading state information... Done\n",
"ffmpeg is already the newest version (7:3.4.6-0ubuntu0.18.04.1).\n",
"0 upgraded, 0 newly installed, 0 to remove and 29 not upgraded.\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "JhGKA3T3vC7b",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 635
},
"outputId": "3348cfae-0daa-46b8-9bd9-4b9d1240cf81"
},
"source": [
"pip install spleeter"
],
"execution_count": 12,
"outputs": [
{
"output_type": "stream",
"text": [
"Requirement already satisfied: spleeter in /usr/local/lib/python3.6/dist-packages (1.4.3)\n",
"Requirement already satisfied: tensorflow==1.14.0 in /usr/local/lib/python3.6/dist-packages (from spleeter) (1.14.0)\n",
"Requirement already satisfied: importlib-resources; python_version < \"3.7\" in /usr/local/lib/python3.6/dist-packages (from spleeter) (1.0.2)\n",
"Requirement already satisfied: setuptools>=41.0.0 in /usr/local/lib/python3.6/dist-packages (from spleeter) (41.6.0)\n",
"Requirement already satisfied: ffmpeg-python in /usr/local/lib/python3.6/dist-packages (from spleeter) (0.2.0)\n",
"Requirement already satisfied: norbert==0.2.1 in /usr/local/lib/python3.6/dist-packages (from spleeter) (0.2.1)\n",
"Requirement already satisfied: pandas==0.25.1 in /usr/local/lib/python3.6/dist-packages (from spleeter) (0.25.1)\n",
"Requirement already satisfied: requests in /usr/local/lib/python3.6/dist-packages (from spleeter) (2.21.0)\n",
"Requirement already satisfied: absl-py>=0.7.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (0.8.1)\n",
"Requirement already satisfied: six>=1.10.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.12.0)\n",
"Requirement already satisfied: tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.14.0)\n",
"Requirement already satisfied: numpy<2.0,>=1.14.5 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.17.4)\n",
"Requirement already satisfied: tensorboard<1.15.0,>=1.14.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.14.0)\n",
"Requirement already satisfied: keras-applications>=1.0.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.0.8)\n",
"Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (0.33.6)\n",
"Requirement already satisfied: astor>=0.6.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (0.8.0)\n",
"Requirement already satisfied: wrapt>=1.11.1 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.11.2)\n",
"Requirement already satisfied: gast>=0.2.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (0.2.2)\n",
"Requirement already satisfied: protobuf>=3.6.1 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (3.10.0)\n",
"Requirement already satisfied: keras-preprocessing>=1.0.5 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.1.0)\n",
"Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.1.0)\n",
"Requirement already satisfied: google-pasta>=0.1.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (0.1.8)\n",
"Requirement already satisfied: grpcio>=1.8.6 in /usr/local/lib/python3.6/dist-packages (from tensorflow==1.14.0->spleeter) (1.15.0)\n",
"Requirement already satisfied: future in /usr/local/lib/python3.6/dist-packages (from ffmpeg-python->spleeter) (0.16.0)\n",
"Requirement already satisfied: scipy in /usr/local/lib/python3.6/dist-packages (from norbert==0.2.1->spleeter) (1.3.2)\n",
"Requirement already satisfied: python-dateutil>=2.6.1 in /usr/local/lib/python3.6/dist-packages (from pandas==0.25.1->spleeter) (2.6.1)\n",
"Requirement already satisfied: pytz>=2017.2 in /usr/local/lib/python3.6/dist-packages (from pandas==0.25.1->spleeter) (2018.9)\n",
"Requirement already satisfied: idna<2.9,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests->spleeter) (2.8)\n",
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/dist-packages (from requests->spleeter) (2019.9.11)\n",
"Requirement already satisfied: urllib3<1.25,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from requests->spleeter) (1.24.3)\n",
"Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests->spleeter) (3.0.4)\n",
"Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.6/dist-packages (from tensorboard<1.15.0,>=1.14.0->tensorflow==1.14.0->spleeter) (0.16.0)\n",
"Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.6/dist-packages (from tensorboard<1.15.0,>=1.14.0->tensorflow==1.14.0->spleeter) (3.1.1)\n",
"Requirement already satisfied: h5py in /usr/local/lib/python3.6/dist-packages (from keras-applications>=1.0.6->tensorflow==1.14.0->spleeter) (2.8.0)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "PT-QHUGRvELo",
"colab_type": "code",
"colab": {}
},
"source": [
"\n",
"\n",
"from IPython.display import Audio\n",
"\n"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "KpzMajA3v0fH",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 217
},
"outputId": "626dbca9-1045-460e-bdb4-458e22756832"
},
"source": [
"\n",
"\n",
"!wget https://raw.githubusercontent.com/ShubhamNandi/Spleeter/master/yuhichala.mp3"
],
"execution_count": 29,
"outputs": [
{
"output_type": "stream",
"text": [
"--2019-11-19 17:54:06-- https://raw.githubusercontent.com/ShubhamNandi/Spleeter/master/yuhichala.mp3\n",
"Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.0.133, 151.101.64.133, 151.101.128.133, ...\n",
"Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.0.133|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 10698221 (10M) [application/octet-stream]\n",
"Saving to: ‘yuhichala.mp3.3’\n",
"\n",
"\ryuhichala.mp3.3 0%[ ] 0 --.-KB/s \ryuhichala.mp3.3 100%[===================>] 10.20M --.-KB/s in 0.08s \n",
"\n",
"2019-11-19 17:54:06 (128 MB/s) - ‘yuhichala.mp3.3’ saved [10698221/10698221]\n",
"\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "gyS5e4NJwLsI",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 61
},
"outputId": "1da2583b-27e0-4a0f-c9b7-693c04f4c3d8"
},
"source": [
"\n",
"\n",
"Audio('yuhichala.mp3')\n",
"\n"
],
"execution_count": 30,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/html": [
"\n",
" <audio controls=\"controls\" >\n",
" <source src=\"data:audio/mpeg;base64,CgoKCgoKPCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICA8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9naXRodWIuZ2l0aHViYXNzZXRzLmNvbSI+CiAgPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Imh0dHBzOi8vYXZhdGFyczAuZ2l0aHVidXNlcmNvbnRlbnQuY29tIj4KICA8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hdmF0YXJzMS5naXRodWJ1c2VyY29udGVudC5jb20iPgogIDxsaW5rIHJlbD0iZG5zLXByZWZldGNoIiBocmVmPSJodHRwczovL2F2YXRhcnMyLmdpdGh1YnVzZXJjb250ZW50LmNvbSI+CiAgPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Imh0dHBzOi8vYXZhdGFyczMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIj4KICA8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9naXRodWItY2xvdWQuczMuYW1hem9uYXdzLmNvbSI+CiAgPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Imh0dHBzOi8vdXNlci1pbWFnZXMuZ2l0aHVidXNlcmNvbnRlbnQuY29tLyI+CgoKCiAgPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgbWVkaWE9ImFsbCIgaW50ZWdyaXR5PSJzaGE1MTItL1lFVldzN0J6eGZLeVVkNnpWeGpFUWNYUldzTGJjRWp2MDQ1UnE4RFNvaXB5U21RYmxoVkt4bFhMdmEyR3ROZDVEaHdDeEh3VzFSTTBOOUk3UzJWZXc9PSIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2dpdGh1Yi5naXRodWJhc3NldHMuY29tL2Fzc2V0cy9mcmFtZXdvcmtzLTQ4MWE0N2E5Njk2NWY2NzA2ZmI0MWJhZTBkMTRiMDlhLmNzcyIgLz4KICA8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBtZWRpYT0iYWxsIiBpbnRlZ3JpdHk9InNoYTUxMi1OVEFwS1pNdk90djR6akdoL0Z5UTN2bzVZTVZ6Q2t2aGVkTWczNXdrRVB1bW9PM2t1aXcxbmk5K2FLdnZnNEQxNjk1aWZiMDB5cTQ4bnBuc3hIWDg0UT09IiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmdpdGh1YmFzc2V0cy5jb20vYXNzZXRzL3NpdGUtMDE5ODg3MjY1OGE0Y2FjNjBlZjg2N2MwM2JmYTI0MDYuY3NzIiAvPgogICAgPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgbWVkaWE9ImFsbCIgaW50ZWdyaXR5PSJzaGE1MTItQnU5aGJveGtRcGxRam1jZ0NsR0lQYlBjNE10OUtwRUx5dlVSbEZCS1hmRXBqcG5rcWloeUo2R1A2dys1M0lYc0RJUXhlT21oaDAwZVcwMWNQQkRoMEE9PSIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2dpdGh1Yi5naXRodWJhc3NldHMuY29tL2Fzc2V0cy9naXRodWItMjkyZmYzOTI4NmYzN2ViZGQ2YzUxY2Y2MDQwZjQxOTEuY3NzIiAvPgogICAgCiAgICAKICAgIAogICAgCgogIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPgogIAogIDx0aXRsZT5TcGxlZXRlci95dWhpY2hhbGEubXAzIGF0IG1hc3RlciDCtyBTaHViaGFtTmFuZGkvU3BsZWV0ZXIgwrcgR2l0SHViPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJDb250cmlidXRlIHRvIFNodWJoYW1OYW5kaS9TcGxlZXRlciBkZXZlbG9wbWVudCBieSBjcmVhdGluZyBhbiBhY2NvdW50IG9uIEdpdEh1Yi4iPgogICAgPGxpbmsgcmVsPSJzZWFyY2giIHR5cGU9ImFwcGxpY2F0aW9uL29wZW5zZWFyY2hkZXNjcmlwdGlvbit4bWwiIGhyZWY9Ii9vcGVuc2VhcmNoLnhtbCIgdGl0bGU9IkdpdEh1YiI+CiAgPGxpbmsgcmVsPSJmbHVpZC1pY29uIiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vZmx1aWRpY29uLnBuZyIgdGl0bGU9IkdpdEh1YiI+CiAgPG1ldGEgcHJvcGVydHk9ImZiOmFwcF9pZCIgY29udGVudD0iMTQwMTQ4ODY5MzQzNjUyOCI+CgogICAgPG1ldGEgbmFtZT0idHdpdHRlcjppbWFnZTpzcmMiIGNvbnRlbnQ9Imh0dHBzOi8vYXZhdGFyczEuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMjg2MDc2ODk/cz00MDAmYW1wO3Y9NCIgLz48bWV0YSBuYW1lPSJ0d2l0dGVyOnNpdGUiIGNvbnRlbnQ9IkBnaXRodWIiIC8+PG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5IiAvPjxtZXRhIG5hbWU9InR3aXR0ZXI6dGl0bGUiIGNvbnRlbnQ9IlNodWJoYW1OYW5kaS9TcGxlZXRlciIgLz48bWV0YSBuYW1lPSJ0d2l0dGVyOmRlc2NyaXB0aW9uIiBjb250ZW50PSJDb250cmlidXRlIHRvIFNodWJoYW1OYW5kaS9TcGxlZXRlciBkZXZlbG9wbWVudCBieSBjcmVhdGluZyBhbiBhY2NvdW50IG9uIEdpdEh1Yi4iIC8+CiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6aW1hZ2UiIGNvbnRlbnQ9Imh0dHBzOi8vYXZhdGFyczEuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMjg2MDc2ODk/cz00MDAmYW1wO3Y9NCIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJHaXRIdWIiIC8+PG1ldGEgcHJvcGVydHk9Im9nOnR5cGUiIGNvbnRlbnQ9Im9iamVjdCIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IlNodWJoYW1OYW5kaS9TcGxlZXRlciIgLz48bWV0YSBwcm9wZXJ0eT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL2dpdGh1Yi5jb20vU2h1YmhhbU5hbmRpL1NwbGVldGVyIiAvPjxtZXRhIHByb3BlcnR5PSJvZzpkZXNjcmlwdGlvbiIgY29udGVudD0iQ29udHJpYnV0ZSB0byBTaHViaGFtTmFuZGkvU3BsZWV0ZXIgZGV2ZWxvcG1lbnQgYnkgY3JlYXRpbmcgYW4gYWNjb3VudCBvbiBHaXRIdWIuIiAvPgoKICA8bGluayByZWw9ImFzc2V0cyIgaHJlZj0iaHR0cHM6Ly9naXRodWIuZ2l0aHViYXNzZXRzLmNvbS8iPgogIAogIAoKICAgIDxtZXRhIG5hbWU9InJlcXVlc3QtaWQiIGNvbnRlbnQ9IjhEQkE6NDk0NTo3OTU2NUE6ODVBOUVGOjVERDQyOTI1IiBkYXRhLXBqYXgtdHJhbnNpZW50PgoKCiAgCgogIDxtZXRhIG5hbWU9InNlbGVjdGVkLWxpbmsiIHZhbHVlPSJyZXBvX3NvdXJjZSIgZGF0YS1wamF4LXRyYW5zaWVudD4KCiAgICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1zaXRlLXZlcmlmaWNhdGlvbiIgY29udGVudD0iS1Q1Z3M4aDB3dmFhZ0xLQVZXcThiYmVOd25aWksxcjFYUXlzWDN4dXJMVSI+CiAgICA8bWV0YSBuYW1lPSJnb29nbGUtc2l0ZS12ZXJpZmljYXRpb24iIGNvbnRlbnQ9Ilp6aFZ5RUZ3Yjd3M2UwLXVPVGx0bThKc2NrMkY1U3RWaWhEMGV4dzJmc0EiPgogICAgPG1ldGEgbmFtZT0iZ29vZ2xlLXNpdGUtdmVyaWZpY2F0aW9uIiBjb250ZW50PSJHWHM1S29VVWtOQ29hQVpuN3dQTi10MDFQeXdwOU0zc0VqbnRfM19aV1BjIj4KCiAgICA8bWV0YSBuYW1lPSJvY3RvbHl0aWNzLWhvc3QiIGNvbnRlbnQ9ImNvbGxlY3Rvci5naXRodWJhcHAuY29tIiAvPjxtZXRhIG5hbWU9Im9jdG9seXRpY3MtYXBwLWlkIiBjb250ZW50PSJnaXRodWIiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1ldmVudC11cmwiIGNvbnRlbnQ9Imh0dHBzOi8vY29sbGVjdG9yLmdpdGh1YmFwcC5jb20vZ2l0aHViLWV4dGVybmFsL2Jyb3dzZXJfZXZlbnQiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tcmVxdWVzdF9pZCIgY29udGVudD0iOERCQTo0OTQ1Ojc5NTY1QTo4NUE5RUY6NURENDI5MjUiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tcmVnaW9uX2VkZ2UiIGNvbnRlbnQ9InNlYSIgLz48bWV0YSBuYW1lPSJvY3RvbHl0aWNzLWRpbWVuc2lvbi1yZWdpb25fcmVuZGVyIiBjb250ZW50PSJpYWQiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tZ2FfaWQiIGNvbnRlbnQ9IiIgY2xhc3M9ImpzLW9jdG8tZ2EtaWQiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tdmlzaXRvcl9pZCIgY29udGVudD0iNzcwMjE2NDk4MjM0MDAwNDEzMyIgLz4KCjxtZXRhIG5hbWU9ImFuYWx5dGljcy1sb2NhdGlvbiIgY29udGVudD0iLyZsdDt1c2VyLW5hbWUmZ3Q7LyZsdDtyZXBvLW5hbWUmZ3Q7L2Jsb2Ivc2hvdyIgZGF0YS1wamF4LXRyYW5zaWVudD0idHJ1ZSIgLz4KCgoKICAgIDxtZXRhIG5hbWU9Imdvb2dsZS1hbmFseXRpY3MiIGNvbnRlbnQ9IlVBLTM3Njk2OTEtMiI+CgoKPG1ldGEgY2xhc3M9ImpzLWdhLXNldCIgbmFtZT0iZGltZW5zaW9uMSIgY29udGVudD0iTG9nZ2VkIE91dCI+CgoKCiAgCgogICAgICA8bWV0YSBuYW1lPSJob3N0bmFtZSIgY29udGVudD0iZ2l0aHViLmNvbSI+CiAgICA8bWV0YSBuYW1lPSJ1c2VyLWxvZ2luIiBjb250ZW50PSIiPgoKICAgICAgPG1ldGEgbmFtZT0iZXhwZWN0ZWQtaG9zdG5hbWUiIGNvbnRlbnQ9ImdpdGh1Yi5jb20iPgoKICAgICAgPG1ldGEgbmFtZT0ianMtcHJveHktc2l0ZS1kZXRlY3Rpb24tcGF5bG9hZCIgY29udGVudD0iTnpnM09XVTFOVFE1TkRJd1pqQmtZVFZpTkRreU9UVmlNamt3TXpCaE1qWTFZamRqT1dSaFlUWXhPV0kxTUdFME5EZ3daVFF6T1dKak5USXhOVEk1TjN4N0luSmxiVzkwWlY5aFpHUnlaWE56SWpvaU16VXVNakkzTGpFMU5pNDVOU0lzSW5KbGNYVmxjM1JmYVdRaU9pSTRSRUpCT2pRNU5EVTZOemsxTmpWQk9qZzFRVGxGUmpvMVJFUTBNamt5TlNJc0luUnBiV1Z6ZEdGdGNDSTZNVFUzTkRFNE5USTFNeXdpYUc5emRDSTZJbWRwZEdoMVlpNWpiMjBpZlE9PSI+CgogICAgPG1ldGEgbmFtZT0iZW5hYmxlZC1mZWF0dXJlcyIgY29udGVudD0iQUNUSU9OU19WMl9PTl9NQVJLRVRQTEFDRSxNQVJLRVRQTEFDRV9GRUFUVVJFRF9CTE9HX1BPU1RTLE1BUktFVFBMQUNFX0lOVk9JQ0VEX0JJTExJTkcsTUFSS0VUUExBQ0VfU09DSUFMX1BST09GX0NVU1RPTUVSUyxNQVJLRVRQTEFDRV9UUkVORElOR19TT0NJQUxfUFJPT0YsTUFSS0VUUExBQ0VfUkVDT01NRU5EQVRJT05TLE1BUktFVFBMQUNFX1BFTkRJTkdfSU5TVEFMTEFUSU9OUyI+CgogICAgPG1ldGEgbmFtZT0iaHRtbC1zYWZlLW5vbmNlIiBjb250ZW50PSI5YjRhMjg2NWNjOGQ5MjQwZjM2NjhjNDFjZDViYzIzYmE5NGUxMjlmIj4KCiAgPG1ldGEgaHR0cC1lcXVpdj0ieC1wamF4LXZlcnNpb24iIGNvbnRlbnQ9ImVjMTk4YTg0NjY1OTJjOGEyZTJmNGQyZjE2ZjgxM2UzIj4KICAKCiAgICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvY29tbWl0cy9tYXN0ZXIuYXRvbSIgcmVsPSJhbHRlcm5hdGUiIHRpdGxlPSJSZWNlbnQgQ29tbWl0cyB0byBTcGxlZXRlcjptYXN0ZXIiIHR5cGU9ImFwcGxpY2F0aW9uL2F0b20reG1sIj4KCiAgPG1ldGEgbmFtZT0iZ28taW1wb3J0IiBjb250ZW50PSJnaXRodWIuY29tL1NodWJoYW1OYW5kaS9TcGxlZXRlciBnaXQgaHR0cHM6Ly9naXRodWIuY29tL1NodWJoYW1OYW5kaS9TcGxlZXRlci5naXQiPgoKICA8bWV0YSBuYW1lPSJvY3RvbHl0aWNzLWRpbWVuc2lvbi11c2VyX2lkIiBjb250ZW50PSIyODYwNzY4OSIgLz48bWV0YSBuYW1lPSJvY3RvbHl0aWNzLWRpbWVuc2lvbi11c2VyX2xvZ2luIiBjb250ZW50PSJTaHViaGFtTmFuZGkiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tcmVwb3NpdG9yeV9pZCIgY29udGVudD0iMjIyNzUyMDYzIiAvPjxtZXRhIG5hbWU9Im9jdG9seXRpY3MtZGltZW5zaW9uLXJlcG9zaXRvcnlfbndvIiBjb250ZW50PSJTaHViaGFtTmFuZGkvU3BsZWV0ZXIiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tcmVwb3NpdG9yeV9wdWJsaWMiIGNvbnRlbnQ9InRydWUiIC8+PG1ldGEgbmFtZT0ib2N0b2x5dGljcy1kaW1lbnNpb24tcmVwb3NpdG9yeV9pc19mb3JrIiBjb250ZW50PSJmYWxzZSIgLz48bWV0YSBuYW1lPSJvY3RvbHl0aWNzLWRpbWVuc2lvbi1yZXBvc2l0b3J5X25ldHdvcmtfcm9vdF9pZCIgY29udGVudD0iMjIyNzUyMDYzIiAvPjxtZXRhIG5hbWU9Im9jdG9seXRpY3MtZGltZW5zaW9uLXJlcG9zaXRvcnlfbmV0d29ya19yb290X253byIgY29udGVudD0iU2h1YmhhbU5hbmRpL1NwbGVldGVyIiAvPjxtZXRhIG5hbWU9Im9jdG9seXRpY3MtZGltZW5zaW9uLXJlcG9zaXRvcnlfZXhwbG9yZV9naXRodWJfbWFya2V0cGxhY2VfY2lfY3RhX3Nob3duIiBjb250ZW50PSJmYWxzZSIgLz4KCgogICAgPGxpbmsgcmVsPSJjYW5vbmljYWwiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvYmxvYi9tYXN0ZXIveXVoaWNoYWxhLm1wMyIgZGF0YS1wamF4LXRyYW5zaWVudD4KCgogIDxtZXRhIG5hbWU9ImJyb3dzZXItc3RhdHMtdXJsIiBjb250ZW50PSJodHRwczovL2FwaS5naXRodWIuY29tL19wcml2YXRlL2Jyb3dzZXIvc3RhdHMiPgoKICA8bWV0YSBuYW1lPSJicm93c2VyLWVycm9ycy11cmwiIGNvbnRlbnQ9Imh0dHBzOi8vYXBpLmdpdGh1Yi5jb20vX3ByaXZhdGUvYnJvd3Nlci9lcnJvcnMiPgoKICA8bGluayByZWw9Im1hc2staWNvbiIgaHJlZj0iaHR0cHM6Ly9naXRodWIuZ2l0aHViYXNzZXRzLmNvbS9waW5uZWQtb2N0b2NhdC5zdmciIGNvbG9yPSIjMDAwMDAwIj4KICA8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3gtaWNvbiIgY2xhc3M9ImpzLXNpdGUtZmF2aWNvbiIgaHJlZj0iaHR0cHM6Ly9naXRodWIuZ2l0aHViYXNzZXRzLmNvbS9mYXZpY29uLmljbyI+Cgo8bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzFlMjMyNyI+CgoKCgoKICA8bGluayByZWw9Im1hbmlmZXN0IiBocmVmPSIvbWFuaWZlc3QuanNvbiIgY3Jvc3NPcmlnaW49InVzZS1jcmVkZW50aWFscyI+CgogIDwvaGVhZD4KCiAgPGJvZHkgY2xhc3M9ImxvZ2dlZC1vdXQgZW52LXByb2R1Y3Rpb24gcGFnZS1yZXNwb25zaXZlIHBhZ2UtYmxvYiI+CiAgICAKCiAgPGRpdiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUganMtaGVhZGVyLXdyYXBwZXIgIj4KICAgIDxhIGhyZWY9IiNzdGFydC1vZi1jb250ZW50IiB0YWJpbmRleD0iMSIgY2xhc3M9InB4LTIgcHktNCBiZy1ibHVlIHRleHQtd2hpdGUgc2hvdy1vbi1mb2N1cyBqcy1za2lwLXRvLWNvbnRlbnQiPlNraXAgdG8gY29udGVudDwvYT4KICAgIDxzcGFuIGNsYXNzPSJQcm9ncmVzcyBwcm9ncmVzcy1wamF4LWxvYWRlciBwb3NpdGlvbi1maXhlZCB3aWR0aC1mdWxsIGpzLXBqYXgtbG9hZGVyLWJhciI+CiAgICAgIDxzcGFuIGNsYXNzPSJwcm9ncmVzcy1wamF4LWxvYWRlci1iYXIgdG9wLTAgbGVmdC0wIiBzdHlsZT0id2lkdGg6IDAlOyI+PC9zcGFuPgogICAgPC9zcGFuPgoKICAgIAogICAgCiAgICAKCgogICAgICAgIDxoZWFkZXIgY2xhc3M9IkhlYWRlci1vbGQgaGVhZGVyLWxvZ2dlZC1vdXQganMtZGV0YWlscy1jb250YWluZXIgRGV0YWlscyBwb3NpdGlvbi1yZWxhdGl2ZSBmNCBweS0yIiByb2xlPSJiYW5uZXIiPgogIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1sZyBkLWxnLWZsZXggZmxleC1pdGVtcy1jZW50ZXIgcC1yZXNwb25zaXZlIj4KICAgIDxkaXYgY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktYmV0d2VlbiBmbGV4LWl0ZW1zLWNlbnRlciI+CiAgICAgICAgPGEgY2xhc3M9Im1yLTQiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS8iIGFyaWEtbGFiZWw9IkhvbWVwYWdlIiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBob21lcGFnZSwgaWNvbjpsb2dvLXdvcmRtYXJrIj4KICAgICAgICAgIDxzdmcgaGVpZ2h0PSIzMiIgY2xhc3M9Im9jdGljb24gb2N0aWNvbi1tYXJrLWdpdGh1YiB0ZXh0LXdoaXRlIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgd2lkdGg9IjMyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOCAwQzMuNTggMCAwIDMuNTggMCA4YzAgMy41NCAyLjI5IDYuNTMgNS40NyA3LjU5LjQuMDcuNTUtLjE3LjU1LS4zOCAwLS4xOS0uMDEtLjgyLS4wMS0xLjQ5LTIuMDEuMzctMi41My0uNDktMi42OS0uOTQtLjA5LS4yMy0uNDgtLjk0LS44Mi0xLjEzLS4yOC0uMTUtLjY4LS41Mi0uMDEtLjUzLjYzLS4wMSAxLjA4LjU4IDEuMjMuODIuNzIgMS4yMSAxLjg3Ljg3IDIuMzMuNjYuMDctLjUyLjI4LS44Ny41MS0xLjA3LTEuNzgtLjItMy42NC0uODktMy42NC0zLjk1IDAtLjg3LjMxLTEuNTkuODItMi4xNS0uMDgtLjItLjM2LTEuMDIuMDgtMi4xMiAwIDAgLjY3LS4yMSAyLjIuODIuNjQtLjE4IDEuMzItLjI3IDItLjI3LjY4IDAgMS4zNi4wOSAyIC4yNyAxLjUzLTEuMDQgMi4yLS44MiAyLjItLjgyLjQ0IDEuMS4xNiAxLjkyLjA4IDIuMTIuNTEuNTYuODIgMS4yNy44MiAyLjE1IDAgMy4wNy0xLjg3IDMuNzUtMy42NSAzLjk1LjI5LjI1LjU0LjczLjU0IDEuNDggMCAxLjA3LS4wMSAxLjkzLS4wMSAyLjIgMCAuMjEuMTUuNDYuNTUuMzhBOC4wMTMgOC4wMTMgMCAwMDE2IDhjMC00LjQyLTMuNTgtOC04LTh6Ii8+PC9zdmc+CiAgICAgICAgPC9hPgoKICAgICAgICAgIDxkaXYgY2xhc3M9ImQtbGctbm9uZSBjc3MtdHJ1bmNhdGUgY3NzLXRydW5jYXRlLXRhcmdldCB3aWR0aC1maXQgcC0yIj4KICAgICAgICAgICAgCiAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXJlcG8iIHZpZXdCb3g9IjAgMCAxMiAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTIiIGhlaWdodD0iMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDlIM1Y4aDF2MXptMC0zSDN2MWgxVjZ6bTAtMkgzdjFoMVY0em0wLTJIM3YxaDFWMnptOC0xdjEyYzAgLjU1LS40NSAxLTEgMUg2djJsLTEuNS0xLjVMMyAxNnYtMkgxYy0uNTUgMC0xLS40NS0xLTFWMWMwLS41NS40NS0xIDEtMWgxMGMuNTUgMCAxIC40NSAxIDF6bS0xIDEwSDF2Mmgydi0xaDN2MWg1di0yem0wLTEwSDJ2OWg5VjF6Ii8+PC9zdmc+CiAgICA8YSBjbGFzcz0iSGVhZGVyLWxpbmsiIGhyZWY9Ii9TaHViaGFtTmFuZGkiPlNodWJoYW1OYW5kaTwvYT4KICAgIC8KICAgIDxhIGNsYXNzPSJIZWFkZXItbGluayIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlciI+U3BsZWV0ZXI8L2E+CgoKICAgICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJkLWZsZXggZmxleC1pdGVtcy1jZW50ZXIiPgogICAgICAgICAgICA8YSBocmVmPSIvam9pbj9zb3VyY2U9aGVhZGVyLXJlcG8iCiAgICAgICAgICAgICAgY2xhc3M9ImQtaW5saW5lLWJsb2NrIGQtbGctbm9uZSBmNSB0ZXh0LXdoaXRlIG5vLXVuZGVybGluZSBib3JkZXIgYm9yZGVyLWdyYXktZGFyayByb3VuZGVkLTIgcHgtMiBweS0xIG1yLTMgbXItc20tNSIKICAgICAgICAgICAgICBkYXRhLWh5ZHJvLWNsaWNrPSJ7JnF1b3Q7ZXZlbnRfdHlwZSZxdW90OzomcXVvdDthdXRoZW50aWNhdGlvbi5jbGljayZxdW90OywmcXVvdDtwYXlsb2FkJnF1b3Q7OnsmcXVvdDtsb2NhdGlvbl9pbl9wYWdlJnF1b3Q7OiZxdW90O3NpdGUgaGVhZGVyJnF1b3Q7LCZxdW90O3JlcG9zaXRvcnlfaWQmcXVvdDs6bnVsbCwmcXVvdDthdXRoX3R5cGUmcXVvdDs6JnF1b3Q7U0lHTl9VUCZxdW90OywmcXVvdDtjbGllbnRfaWQmcXVvdDs6bnVsbCwmcXVvdDtvcmlnaW5hdGluZ19yZXF1ZXN0X2lkJnF1b3Q7OiZxdW90OzhEQkE6NDk0NTo3OTU2NUE6ODVBOUVGOjVERDQyOTI1JnF1b3Q7LCZxdW90O29yaWdpbmF0aW5nX3VybCZxdW90OzomcXVvdDtodHRwczovL2dpdGh1Yi5jb20vU2h1YmhhbU5hbmRpL1NwbGVldGVyL2Jsb2IvbWFzdGVyL3l1aGljaGFsYS5tcDMmcXVvdDssJnF1b3Q7cmVmZXJyZXImcXVvdDs6bnVsbCwmcXVvdDt1c2VyX2lkJnF1b3Q7Om51bGx9fSIgZGF0YS1oeWRyby1jbGljay1obWFjPSI2MjFiMDU4YjBjNWM0MGFlNDIzNDg3Y2UzNjVlMmUzN2YyMGNjNTlmODM0N2JmNzA4ZWQ2ZmFlOWRiOWI2MTc1IgogICAgICAgICAgICAgIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGNsaWNrZWQgU2lnbiB1cCwgdGV4dDpzaWduLXVwIj4KICAgICAgICAgICAgICBTaWduJm5ic3A7dXAKICAgICAgICAgICAgPC9hPgoKICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0bi1saW5rIGQtbGctbm9uZSBtdC0xIGpzLWRldGFpbHMtdGFyZ2V0IiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IlRvZ2dsZSBuYXZpZ2F0aW9uIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+CiAgICAgICAgICAgIDxzdmcgaGVpZ2h0PSIyNCIgY2xhc3M9Im9jdGljb24gb2N0aWNvbi10aHJlZS1iYXJzIHRleHQtd2hpdGUiIHZpZXdCb3g9IjAgMCAxMiAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTgiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMS40MSA5SC41OUMwIDkgMCA4LjU5IDAgOGMwLS41OSAwLTEgLjU5LTFIMTEuNGMuNTkgMCAuNTkuNDEuNTkgMSAwIC41OSAwIDEtLjU5IDFoLjAxem0wLTRILjU5QzAgNSAwIDQuNTkgMCA0YzAtLjU5IDAtMSAuNTktMUgxMS40Yy41OSAwIC41OS40MS41OSAxIDAgLjU5IDAgMS0uNTkgMWguMDF6TS41OSAxMUgxMS40Yy41OSAwIC41OS40MS41OSAxIDAgLjU5IDAgMS0uNTkgMUguNTlDMCAxMyAwIDEyLjU5IDAgMTJjMC0uNTkgMC0xIC41OS0xeiIvPjwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJIZWFkZXJNZW51IEhlYWRlck1lbnUtLWxvZ2dlZC1vdXQgcG9zaXRpb24tZml4ZWQgdG9wLTAgcmlnaHQtMCBib3R0b20tMCBoZWlnaHQtZml0IHBvc2l0aW9uLWxnLXJlbGF0aXZlIGQtbGctZmxleCBmbGV4LWp1c3RpZnktYmV0d2VlbiBmbGV4LWl0ZW1zLWNlbnRlciBmbGV4LWF1dG8iPgogICAgICA8ZGl2IGNsYXNzPSJkLWZsZXggZC1sZy1ub25lIGZsZXgtanVzdGlmeS1lbmQgYm9yZGVyLWJvdHRvbSBiZy1ncmF5LWxpZ2h0IHAtMyI+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuLWxpbmsganMtZGV0YWlscy10YXJnZXQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5hdmlnYXRpb24iIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4KICAgICAgICAgIDxzdmcgaGVpZ2h0PSIyNCIgY2xhc3M9Im9jdGljb24gb2N0aWNvbi14IHRleHQtZ3JheSIgdmlld0JveD0iMCAwIDEyIDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxOCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTcuNDggOGwzLjc1IDMuNzUtMS40OCAxLjQ4TDYgOS40OGwtMy43NSAzLjc1LTEuNDgtMS40OEw0LjUyIDggLjc3IDQuMjVsMS40OC0xLjQ4TDYgNi41MmwzLjc1LTMuNzUgMS40OCAxLjQ4TDcuNDggOHoiLz48L3N2Zz4KICAgICAgICA8L2J1dHRvbj4KICAgICAgPC9kaXY+CgogICAgICAgIDxuYXYgY2xhc3M9Im10LTAgcHgtMyBweC1sZy0wIG1iLTUgbWItbGctMCIgYXJpYS1sYWJlbD0iR2xvYmFsIj4KICAgICAgICAgIDx1bCBjbGFzcz0iZC1sZy1mbGV4IGxpc3Qtc3R5bGUtbm9uZSI+CiAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWJsb2NrIGQtbGctZmxleCBmbGV4LWxnLW5vd3JhcCBmbGV4LWxnLWl0ZW1zLWNlbnRlciBib3JkZXItYm90dG9tIGJvcmRlci1sZy1ib3R0b20tMCBtci0wIG1yLWxnLTMgZWRnZS1pdGVtLWZpeCBwb3NpdGlvbi1yZWxhdGl2ZSBmbGV4LXdyYXAgZmxleC1qdXN0aWZ5LWJldHdlZW4gZC1mbGV4IGZsZXgtaXRlbXMtY2VudGVyICI+CiAgICAgICAgICAgICAgICA8ZGV0YWlscyBjbGFzcz0iSGVhZGVyTWVudS1kZXRhaWxzIGRldGFpbHMtb3ZlcmxheSBkZXRhaWxzLXJlc2V0IHdpZHRoLWZ1bGwiPgogICAgICAgICAgICAgICAgICA8c3VtbWFyeSBjbGFzcz0iSGVhZGVyTWVudS1zdW1tYXJ5IEhlYWRlck1lbnUtbGluayBweC0wIHB5LTMgYm9yZGVyLTAgbm8td3JhcCBkLWJsb2NrIGQtbGctaW5saW5lLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICBXaHkgR2l0SHViPwogICAgICAgICAgICAgICAgICAgIDxzdmcgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAxNCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIiBmaWxsPSJub25lIiBjbGFzcz0iaWNvbi1jaGV2b24tZG93bi1ta3RnIHBvc2l0aW9uLWFic29sdXRlIHBvc2l0aW9uLWxnLXJlbGF0aXZlIj4KICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xLDFsNi4yLDZMMTMsMSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgICAgICA8L3N1bW1hcnk+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgZmxleC1hdXRvIHJvdW5kZWQtMSBiZy13aGl0ZSBweC0wIG10LTAgcGItNCBwLWxnLTQgcG9zaXRpb24tcmVsYXRpdmUgcG9zaXRpb24tbGctYWJzb2x1dGUgbGVmdC0wIGxlZnQtbGctbjQiPgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9mZWF0dXJlcyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5LWRhcmsgbm8tdW5kZXJsaW5lIGg1IEJ1bXAtbGluay0taG92ZXIiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIEZlYXR1cmVzIj5GZWF0dXJlcyA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+CiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0LXN0eWxlLW5vbmUgZjUgcGItMyI+CiAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Ii9mZWF0dXJlcy9jb2RlLXJldmlldy8iIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheSBuby11bmRlcmxpbmUgZjUiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIENvZGUgcmV2aWV3Ij5Db2RlIHJldmlldzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMvcHJvamVjdC1tYW5hZ2VtZW50LyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gUHJvamVjdCBtYW5hZ2VtZW50Ij5Qcm9qZWN0IG1hbmFnZW1lbnQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iL2ZlYXR1cmVzL2ludGVncmF0aW9ucyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gSW50ZWdyYXRpb25zIj5JbnRlZ3JhdGlvbnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iL2ZlYXR1cmVzL2FjdGlvbnMiIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheSBuby11bmRlcmxpbmUgZjUiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIEFjdGlvbnMiPkFjdGlvbnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Ii9mZWF0dXJlcy9wYWNrYWdlcyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gR2l0SHViIFBhY2thZ2VzIj5QYWNrYWdlczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMvc2VjdXJpdHkiIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheSBuby11bmRlcmxpbmUgZjUiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIFNlY3VyaXR5Ij5TZWN1cml0eTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMjdGVhbS1tYW5hZ2VtZW50IiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBUZWFtIG1hbmFnZW1lbnQiPlRlYW0gbWFuYWdlbWVudDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMjc29jaWFsLWNvZGluZyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gU29jaWFsIGNvZGluZyI+U29jaWFsIGNvZGluZzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMjZG9jdW1lbnRhdGlvbiIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gRG9jdW1lbnRhdGlvbiI+RG9jdW1lbnRhdGlvbjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvZmVhdHVyZXMjY29kZS1ob3N0aW5nIiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBDb2RlIGhvc3RpbmciPkNvZGUgaG9zdGluZzwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgIDwvdWw+CgogICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdC1zdHlsZS1ub25lIG1iLTAgYm9yZGVyLWxnLXRvcCBwdC1sZy0zIj4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iL2N1c3RvbWVyLXN0b3JpZXMiIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIG5vLXVuZGVybGluZSBsaW5rLWdyYXktZGFyayBuby11bmRlcmxpbmUgaDUgQnVtcC1saW5rLS1ob3ZlciIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gQ3VzdG9tZXIgc3RvcmllcyI+Q3VzdG9tZXIgc3RvcmllcyA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iL3NlY3VyaXR5IiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBuby11bmRlcmxpbmUgbGluay1ncmF5LWRhcmsgbm8tdW5kZXJsaW5lIGg1IEJ1bXAtbGluay0taG92ZXIiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIFNlY3VyaXR5Ij5TZWN1cml0eSA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGV0YWlscz4KICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgIDxsaSBjbGFzcz0iYm9yZGVyLWJvdHRvbSBib3JkZXItbGctYm90dG9tLTAgbXItMCBtci1sZy0zIj4KICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii9lbnRlcnByaXNlIiBjbGFzcz0iSGVhZGVyTWVudS1saW5rIG5vLXVuZGVybGluZSBweS0zIGQtYmxvY2sgZC1sZy1pbmxpbmUtYmxvY2siIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIEVudGVycHJpc2UiPkVudGVycHJpc2U8L2E+CiAgICAgICAgICAgICAgPC9saT4KCiAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkLWJsb2NrIGQtbGctZmxleCBmbGV4LWxnLW5vd3JhcCBmbGV4LWxnLWl0ZW1zLWNlbnRlciBib3JkZXItYm90dG9tIGJvcmRlci1sZy1ib3R0b20tMCBtci0wIG1yLWxnLTMgZWRnZS1pdGVtLWZpeCBwb3NpdGlvbi1yZWxhdGl2ZSBmbGV4LXdyYXAgZmxleC1qdXN0aWZ5LWJldHdlZW4gZC1mbGV4IGZsZXgtaXRlbXMtY2VudGVyICI+CiAgICAgICAgICAgICAgICA8ZGV0YWlscyBjbGFzcz0iSGVhZGVyTWVudS1kZXRhaWxzIGRldGFpbHMtb3ZlcmxheSBkZXRhaWxzLXJlc2V0IHdpZHRoLWZ1bGwiPgogICAgICAgICAgICAgICAgICA8c3VtbWFyeSBjbGFzcz0iSGVhZGVyTWVudS1zdW1tYXJ5IEhlYWRlck1lbnUtbGluayBweC0wIHB5LTMgYm9yZGVyLTAgbm8td3JhcCBkLWJsb2NrIGQtbGctaW5saW5lLWJsb2NrIj4KICAgICAgICAgICAgICAgICAgICBFeHBsb3JlCiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDE0IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiIGZpbGw9Im5vbmUiIGNsYXNzPSJpY29uLWNoZXZvbi1kb3duLW1rdGcgcG9zaXRpb24tYWJzb2x1dGUgcG9zaXRpb24tbGctcmVsYXRpdmUiPgogICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEsMWw2LjIsNkwxMywxIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICAgICAgICAgIDwvc3VtbWFyeT4KCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3Bkb3duLW1lbnUgZmxleC1hdXRvIHJvdW5kZWQtMSBiZy13aGl0ZSBweC0wIHB0LTIgcGItMCBtdC0wIHBiLTQgcC1sZy00IHBvc2l0aW9uLXJlbGF0aXZlIHBvc2l0aW9uLWxnLWFic29sdXRlIGxlZnQtMCBsZWZ0LWxnLW40Ij4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Imxpc3Qtc3R5bGUtbm9uZSBtYi0zIj4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iL2V4cGxvcmUiIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheS1kYXJrIG5vLXVuZGVybGluZSBoNSBCdW1wLWxpbmstLWhvdmVyIiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBFeHBsb3JlIj5FeHBsb3JlIEdpdEh1YiA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgoKICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9InRleHQtZ3JheS1saWdodCB0ZXh0LW5vcm1hbCB0ZXh0LW1vbm8gZjUgbWItMiBib3JkZXItbGctdG9wIHB0LWxnLTMiPkxlYXJuICZhbXA7IGNvbnRyaWJ1dGU8L2g0PgogICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdC1zdHlsZS1ub25lIG1iLTMiPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvdG9waWNzIiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBUb3BpY3MiPlRvcGljczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Ii9jb2xsZWN0aW9ucyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gQ29sbGVjdGlvbnMiPkNvbGxlY3Rpb25zPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Ii90cmVuZGluZyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gVHJlbmRpbmciPlRyZW5kaW5nPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Imh0dHBzOi8vbGFiLmdpdGh1Yi5jb20vIiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBMZWFybmluZyBsYWIiPkxlYXJuaW5nIExhYjwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSJodHRwczovL29wZW5zb3VyY2UuZ3VpZGUiIGNsYXNzPSJweS0yIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheSBuby11bmRlcmxpbmUgZjUiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIE9wZW4gc291cmNlIGd1aWRlcyI+T3BlbiBzb3VyY2UgZ3VpZGVzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPC91bD4KCiAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPSJ0ZXh0LWdyYXktbGlnaHQgdGV4dC1ub3JtYWwgdGV4dC1tb25vIGY1IG1iLTIgYm9yZGVyLWxnLXRvcCBwdC1sZy0zIj5Db25uZWN0IHdpdGggb3RoZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Imxpc3Qtc3R5bGUtbm9uZSBtYi0wIj4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2V2ZW50cyIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gRXZlbnRzIj5FdmVudHM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tbXVuaXR5IiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBDb21tdW5pdHkgZm9ydW0iPkNvbW11bml0eSBmb3J1bTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSJodHRwczovL2VkdWNhdGlvbi5naXRodWIuY29tIiBjbGFzcz0icHktMiBwYi0wIGxoLWNvbmRlbnNlZC11bHRyYSBkLWJsb2NrIGxpbmstZ3JheSBuby11bmRlcmxpbmUgZjUiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIEdpdEh1YiBFZHVjYXRpb24iPkdpdEh1YiBFZHVjYXRpb248L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGV0YWlscz4KICAgICAgICAgICAgICA8L2xpPgoKICAgICAgICAgICAgICA8bGkgY2xhc3M9ImJvcmRlci1ib3R0b20gYm9yZGVyLWxnLWJvdHRvbS0wIG1yLTAgbXItbGctMyI+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIvbWFya2V0cGxhY2UiIGNsYXNzPSJIZWFkZXJNZW51LWxpbmsgbm8tdW5kZXJsaW5lIHB5LTMgZC1ibG9jayBkLWxnLWlubGluZS1ibG9jayIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gTWFya2V0cGxhY2UiPk1hcmtldHBsYWNlPC9hPgogICAgICAgICAgICAgIDwvbGk+CgogICAgICAgICAgICAgIDxsaSBjbGFzcz0iZC1ibG9jayBkLWxnLWZsZXggZmxleC1sZy1ub3dyYXAgZmxleC1sZy1pdGVtcy1jZW50ZXIgYm9yZGVyLWJvdHRvbSBib3JkZXItbGctYm90dG9tLTAgbXItMCBtci1sZy0zIGVkZ2UtaXRlbS1maXggcG9zaXRpb24tcmVsYXRpdmUgZmxleC13cmFwIGZsZXgtanVzdGlmeS1iZXR3ZWVuIGQtZmxleCBmbGV4LWl0ZW1zLWNlbnRlciAiPgogICAgICAgICAgICAgICAgPGRldGFpbHMgY2xhc3M9IkhlYWRlck1lbnUtZGV0YWlscyBkZXRhaWxzLW92ZXJsYXkgZGV0YWlscy1yZXNldCB3aWR0aC1mdWxsIj4KICAgICAgICAgICAgICAgICAgPHN1bW1hcnkgY2xhc3M9IkhlYWRlck1lbnUtc3VtbWFyeSBIZWFkZXJNZW51LWxpbmsgcHgtMCBweS0zIGJvcmRlci0wIG5vLXdyYXAgZC1ibG9jayBkLWxnLWlubGluZS1ibG9jayI+CiAgICAgICAgICAgICAgICAgICAgUHJpY2luZwogICAgICAgICAgICAgICAgICAgIDxzdmcgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAxNCA4IiB4bWw6c3BhY2U9InByZXNlcnZlIiBmaWxsPSJub25lIiBjbGFzcz0iaWNvbi1jaGV2b24tZG93bi1ta3RnIHBvc2l0aW9uLWFic29sdXRlIHBvc2l0aW9uLWxnLXJlbGF0aXZlIj4KICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMSwxbDYuMiw2TDEzLDEiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PgoKICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBmbGV4LWF1dG8gcm91bmRlZC0xIGJnLXdoaXRlIHB4LTAgcHQtMiBwYi00IG10LTAgcC1sZy00IHBvc2l0aW9uLXJlbGF0aXZlIHBvc2l0aW9uLWxnLWFic29sdXRlIGxlZnQtMCBsZWZ0LWxnLW40Ij4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIvcHJpY2luZyIgY2xhc3M9InBiLTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5LWRhcmsgbm8tdW5kZXJsaW5lIGg1IEJ1bXAtbGluay0taG92ZXIiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIFByaWNpbmciPlBsYW5zIDxzcGFuIGNsYXNzPSJCdW1wLWxpbmstc3ltYm9sIGZsb2F0LXJpZ2h0IHRleHQtbm9ybWFsIHRleHQtZ3JheS1saWdodCI+JnJhcnI7PC9zcGFuPjwvYT4KCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0LXN0eWxlLW5vbmUgbWItMyI+CiAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImVkZ2UtaXRlbS1maXgiPjxhIGhyZWY9Ii9wcmljaW5nI2ZlYXR1cmUtY29tcGFyaXNvbiIgY2xhc3M9InB5LTIgbGgtY29uZGVuc2VkLXVsdHJhIGQtYmxvY2sgbGluay1ncmF5IG5vLXVuZGVybGluZSBmNSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgZ28gdG8gQ29tcGFyZSBwbGFucyI+Q29tcGFyZSBwbGFuczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSJodHRwczovL2VudGVycHJpc2UuZ2l0aHViLmNvbS9jb250YWN0IiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBsaW5rLWdyYXkgbm8tdW5kZXJsaW5lIGY1IiBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBDb250YWN0IFNhbGVzIj5Db250YWN0IFNhbGVzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgPC91bD4KCiAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJsaXN0LXN0eWxlLW5vbmUgbWItMCBib3JkZXItbGctdG9wIHB0LWxnLTMiPgogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJlZGdlLWl0ZW0tZml4Ij48YSBocmVmPSIvbm9ucHJvZml0IiBjbGFzcz0icHktMiBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBuby11bmRlcmxpbmUgbGluay1ncmF5LWRhcmsgbm8tdW5kZXJsaW5lIGg1IEJ1bXAtbGluay0taG92ZXIiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGdvIHRvIE5vbnByb2ZpdHMiPk5vbnByb2ZpdCA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZWRnZS1pdGVtLWZpeCI+PGEgaHJlZj0iaHR0cHM6Ly9lZHVjYXRpb24uZ2l0aHViLmNvbSIgY2xhc3M9InB5LTIgcGItMCBsaC1jb25kZW5zZWQtdWx0cmEgZC1ibG9jayBuby11bmRlcmxpbmUgbGluay1ncmF5LWRhcmsgbm8tdW5kZXJsaW5lIGg1IEJ1bXAtbGluay0taG92ZXIiICBkYXRhLWdhLWNsaWNrPSIoTG9nZ2VkIG91dCkgSGVhZGVyLCBnbyB0byBFZHVjYXRpb24iPkVkdWNhdGlvbiA8c3BhbiBjbGFzcz0iQnVtcC1saW5rLXN5bWJvbCBmbG9hdC1yaWdodCB0ZXh0LW5vcm1hbCB0ZXh0LWdyYXktbGlnaHQiPiZyYXJyOzwvc3Bhbj48L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGV0YWlscz4KICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgPC91bD4KICAgICAgICA8L25hdj4KCiAgICAgIDxkaXYgY2xhc3M9ImQtbGctZmxleCBmbGV4LWl0ZW1zLWNlbnRlciBweC0zIHB4LWxnLTAgdGV4dC1jZW50ZXIgdGV4dC1sZy1sZWZ0Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImQtbGctZmxleCBtYi0zIG1iLWxnLTAiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItc2VhcmNoIGZsZXgtc2VsZi1zdHJldGNoIGZsZXgtbGctc2VsZi1hdXRvIG1yLTAgbXItbGctMyBtYi0zIG1iLWxnLTAgc2NvcGVkLXNlYXJjaCBzaXRlLXNjb3BlZC1zZWFyY2gganMtc2l0ZS1zZWFyY2ggcG9zaXRpb24tcmVsYXRpdmUganMtanVtcC10byIKICByb2xlPSJjb21ib2JveCIKICBhcmlhLW93bnM9Imp1bXAtdG8tcmVzdWx0cyIKICBhcmlhLWxhYmVsPSJTZWFyY2ggb3IganVtcCB0byIKICBhcmlhLWhhc3BvcHVwPSJsaXN0Ym94IgogIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIgo+CiAgPGRpdiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPgogICAgPCEtLSAnImAgLS0+PCEtLSA8L3RleHRhcmVhPjwveG1wPiAtLT48L29wdGlvbj48L2Zvcm0+PGZvcm0gY2xhc3M9ImpzLXNpdGUtc2VhcmNoLWZvcm0iIHJvbGU9InNlYXJjaCIgYXJpYS1sYWJlbD0iU2l0ZSIgZGF0YS1zY29wZS10eXBlPSJSZXBvc2l0b3J5IiBkYXRhLXNjb3BlLWlkPSIyMjI3NTIwNjMiIGRhdGEtc2NvcGVkLXNlYXJjaC11cmw9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvc2VhcmNoIiBkYXRhLXVuc2NvcGVkLXNlYXJjaC11cmw9Ii9zZWFyY2giIGFjdGlvbj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9zZWFyY2giIGFjY2VwdC1jaGFyc2V0PSJVVEYtOCIgbWV0aG9kPSJnZXQiPjxpbnB1dCBuYW1lPSJ1dGY4IiB0eXBlPSJoaWRkZW4iIHZhbHVlPSImI3gyNzEzOyIgLz4KICAgICAgPGxhYmVsIGNsYXNzPSJmb3JtLWNvbnRyb2wgaW5wdXQtc20gaGVhZGVyLXNlYXJjaC13cmFwcGVyIHAtMCBoZWFkZXItc2VhcmNoLXdyYXBwZXItanVtcC10byBwb3NpdGlvbi1yZWxhdGl2ZSBkLWZsZXggZmxleC1qdXN0aWZ5LWJldHdlZW4gZmxleC1pdGVtcy1jZW50ZXIganMtY2hyb21lbGVzcy1pbnB1dC1jb250YWluZXIiPgogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IgogICAgICAgICAgY2xhc3M9ImZvcm0tY29udHJvbCBpbnB1dC1zbSBoZWFkZXItc2VhcmNoLWlucHV0IGp1bXAtdG8tZmllbGQganMtanVtcC10by1maWVsZCBqcy1zaXRlLXNlYXJjaC1mb2N1cyBqcy1zaXRlLXNlYXJjaC1maWVsZCBpcy1jbGVhcmFibGUiCiAgICAgICAgICBkYXRhLWhvdGtleT0icywvIgogICAgICAgICAgbmFtZT0icSIKICAgICAgICAgIHZhbHVlPSIiCiAgICAgICAgICBwbGFjZWhvbGRlcj0iU2VhcmNoIgogICAgICAgICAgZGF0YS11bnNjb3BlZC1wbGFjZWhvbGRlcj0iU2VhcmNoIEdpdEh1YiIKICAgICAgICAgIGRhdGEtc2NvcGVkLXBsYWNlaG9sZGVyPSJTZWFyY2giCiAgICAgICAgICBhdXRvY2FwaXRhbGl6ZT0ib2ZmIgogICAgICAgICAgYXJpYS1hdXRvY29tcGxldGU9Imxpc3QiCiAgICAgICAgICBhcmlhLWNvbnRyb2xzPSJqdW1wLXRvLXJlc3VsdHMiCiAgICAgICAgICBhcmlhLWxhYmVsPSJTZWFyY2giCiAgICAgICAgICBkYXRhLWp1bXAtdG8tc3VnZ2VzdGlvbnMtcGF0aD0iL19ncmFwaHFsL0dldFN1Z2dlc3RlZE5hdmlnYXRpb25EZXN0aW5hdGlvbnMjY3NyZi10b2tlbj1DNC93NjdTam9YNkxLZTBXU2lWbzFFRVpZb3Y5NlNoYXRWRHpmcVNabWtSVmtVcWJMSlV1djhxUHJhZTlYRHlrK0swUUMyelI3YTdvcGI2OEtheUpXUT09IgogICAgICAgICAgc3BlbGxjaGVjaz0iZmFsc2UiCiAgICAgICAgICBhdXRvY29tcGxldGU9Im9mZiIKICAgICAgICAgID4KICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIGNsYXNzPSJqcy1zaXRlLXNlYXJjaC10eXBlLWZpZWxkIiBuYW1lPSJ0eXBlIiA+CiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2dpdGh1Yi5naXRodWJhc3NldHMuY29tL2ltYWdlcy9zZWFyY2gta2V5LXNsYXNoLnN2ZyIgYWx0PSIiIGNsYXNzPSJtci0yIGhlYWRlci1zZWFyY2gta2V5LXNsYXNoIj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9IkJveCBwb3NpdGlvbi1hYnNvbHV0ZSBvdmVyZmxvdy1oaWRkZW4gZC1ub25lIGp1bXAtdG8tc3VnZ2VzdGlvbnMganMtanVtcC10by1zdWdnZXN0aW9ucy1jb250YWluZXIiPgogICAgICAgICAgICAgIAo8dWwgY2xhc3M9ImQtbm9uZSBqcy1qdW1wLXRvLXN1Z2dlc3Rpb25zLXRlbXBsYXRlLWNvbnRhaW5lciI+CiAgCgo8bGkgY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktc3RhcnQgZmxleC1pdGVtcy1jZW50ZXIgcC0wIGY1IG5hdmlnYXRpb24taXRlbSBqcy1uYXZpZ2F0aW9uLWl0ZW0ganMtanVtcC10by1zdWdnZXN0aW9uIiByb2xlPSJvcHRpb24iPgogIDxhIHRhYmluZGV4PSItMSIgY2xhc3M9Im5vLXVuZGVybGluZSBkLWZsZXggZmxleC1hdXRvIGZsZXgtaXRlbXMtY2VudGVyIGp1bXAtdG8tc3VnZ2VzdGlvbnMtcGF0aCBqcy1qdW1wLXRvLXN1Z2dlc3Rpb24tcGF0aCBqcy1uYXZpZ2F0aW9uLW9wZW4gcC0yIiBocmVmPSIiPgogICAgPGRpdiBjbGFzcz0ianVtcC10by1vY3RpY29uIGpzLWp1bXAtdG8tb2N0aWNvbiBmbGV4LXNocmluay0wIG1yLTIgdGV4dC1jZW50ZXIgZC1ub25lIj4KICAgICAgPHN2ZyBoZWlnaHQ9IjE2IiB3aWR0aD0iMTYiIGNsYXNzPSJvY3RpY29uIG9jdGljb24tcmVwbyBmbGV4LXNocmluay0wIGpzLWp1bXAtdG8tb2N0aWNvbi1yZXBvIGQtbm9uZSIgdGl0bGU9IlJlcG9zaXRvcnkiIGFyaWEtbGFiZWw9IlJlcG9zaXRvcnkiIHZpZXdCb3g9IjAgMCAxMiAxNiIgdmVyc2lvbj0iMS4xIiByb2xlPSJpbWciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTQgOUgzVjhoMXYxem0wLTNIM3YxaDFWNnptMC0ySDN2MWgxVjR6bTAtMkgzdjFoMVYyem04LTF2MTJjMCAuNTUtLjQ1IDEtMSAxSDZ2MmwtMS41LTEuNUwzIDE2di0ySDFjLS41NSAwLTEtLjQ1LTEtMVYxYzAtLjU1LjQ1LTEgMS0xaDEwYy41NSAwIDEgLjQ1IDEgMXptLTEgMTBIMXYyaDJ2LTFoM3YxaDV2LTJ6bTAtMTBIMnY5aDlWMXoiLz48L3N2Zz4KICAgICAgPHN2ZyBoZWlnaHQ9IjE2IiB3aWR0aD0iMTYiIGNsYXNzPSJvY3RpY29uIG9jdGljb24tcHJvamVjdCBmbGV4LXNocmluay0wIGpzLWp1bXAtdG8tb2N0aWNvbi1wcm9qZWN0IGQtbm9uZSIgdGl0bGU9IlByb2plY3QiIGFyaWEtbGFiZWw9IlByb2plY3QiIHZpZXdCb3g9IjAgMCAxNSAxNiIgdmVyc2lvbj0iMS4xIiByb2xlPSJpbWciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTEwIDEyaDNWMmgtM3YxMHptLTQtMmgzVjJINnY4em0tNCA0aDNWMkgydjEyem0tMSAxaDEzVjFIMXYxNHpNMTQgMEgxYTEgMSAwIDAwLTEgMXYxNGExIDEgMCAwMDEgMWgxM2ExIDEgMCAwMDEtMVYxYTEgMSAwIDAwLTEtMXoiLz48L3N2Zz4KICAgICAgPHN2ZyBoZWlnaHQ9IjE2IiB3aWR0aD0iMTYiIGNsYXNzPSJvY3RpY29uIG9jdGljb24tc2VhcmNoIGZsZXgtc2hyaW5rLTAganMtanVtcC10by1vY3RpY29uLXNlYXJjaCBkLW5vbmUiIHRpdGxlPSJTZWFyY2giIGFyaWEtbGFiZWw9IlNlYXJjaCIgdmlld0JveD0iMCAwIDE2IDE2IiB2ZXJzaW9uPSIxLjEiIHJvbGU9ImltZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTUuNyAxMy4zbC0zLjgxLTMuODNBNS45MyA1LjkzIDAgMDAxMyA2YzAtMy4zMS0yLjY5LTYtNi02UzEgMi42OSAxIDZzMi42OSA2IDYgNmMxLjMgMCAyLjQ4LS40MSAzLjQ3LTEuMTFsMy44MyAzLjgxYy4xOS4yLjQ1LjMuNy4zLjI1IDAgLjUyLS4wOS43LS4zYS45OTYuOTk2IDAgMDAwLTEuNDF2LjAxek03IDEwLjdjLTIuNTkgMC00LjctMi4xMS00LjctNC43IDAtMi41OSAyLjExLTQuNyA0LjctNC43IDIuNTkgMCA0LjcgMi4xMSA0LjcgNC43IDAgMi41OS0yLjExIDQuNy00LjcgNC43eiIvPjwvc3ZnPgogICAgPC9kaXY+CgogICAgPGltZyBjbGFzcz0iYXZhdGFyIG1yLTIgZmxleC1zaHJpbmstMCBqcy1qdW1wLXRvLXN1Z2dlc3Rpb24tYXZhdGFyIGQtbm9uZSIgYWx0PSIiIGFyaWEtbGFiZWw9IlRlYW0iIHNyYz0iIiB3aWR0aD0iMjgiIGhlaWdodD0iMjgiPgoKICAgIDxkaXYgY2xhc3M9Imp1bXAtdG8tc3VnZ2VzdGlvbi1uYW1lIGpzLWp1bXAtdG8tc3VnZ2VzdGlvbi1uYW1lIGZsZXgtYXV0byBvdmVyZmxvdy1oaWRkZW4gdGV4dC1sZWZ0IG5vLXdyYXAgY3NzLXRydW5jYXRlIGNzcy10cnVuY2F0ZS10YXJnZXQiPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iYm9yZGVyIHJvdW5kZWQtMSBmbGV4LXNocmluay0wIGJnLWdyYXkgcHgtMSB0ZXh0LWdyYXktbGlnaHQgbWwtMSBmNiBkLW5vbmUganMtanVtcC10by1iYWRnZS1zZWFyY2giPgogICAgICA8c3BhbiBjbGFzcz0ianMtanVtcC10by1iYWRnZS1zZWFyY2gtdGV4dC1kZWZhdWx0IGQtbm9uZSIgYXJpYS1sYWJlbD0iaW4gdGhpcyByZXBvc2l0b3J5Ij4KICAgICAgICBJbiB0aGlzIHJlcG9zaXRvcnkKICAgICAgPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0ianMtanVtcC10by1iYWRnZS1zZWFyY2gtdGV4dC1nbG9iYWwgZC1ub25lIiBhcmlhLWxhYmVsPSJpbiBhbGwgb2YgR2l0SHViIj4KICAgICAgICBBbGwgR2l0SHViCiAgICAgIDwvc3Bhbj4KICAgICAgPHNwYW4gYXJpYS1oaWRkZW49InRydWUiIGNsYXNzPSJkLWlubGluZS1ibG9jayBtbC0xIHYtYWxpZ24tbWlkZGxlIj7ihrU8L3NwYW4+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0iYm9yZGVyIHJvdW5kZWQtMSBmbGV4LXNocmluay0wIGJnLWdyYXkgcHgtMSB0ZXh0LWdyYXktbGlnaHQgbWwtMSBmNiBkLW5vbmUgZC1vbi1uYXYtZm9jdXMganMtanVtcC10by1iYWRnZS1qdW1wIj4KICAgICAgSnVtcCB0bwogICAgICA8c3BhbiBjbGFzcz0iZC1pbmxpbmUtYmxvY2sgbWwtMSB2LWFsaWduLW1pZGRsZSI+4oa1PC9zcGFuPgogICAgPC9kaXY+CiAgPC9hPgo8L2xpPgoKPC91bD4KCjx1bCBjbGFzcz0iZC1ub25lIGpzLWp1bXAtdG8tbm8tcmVzdWx0cy10ZW1wbGF0ZS1jb250YWluZXIiPgogIDxsaSBjbGFzcz0iZC1mbGV4IGZsZXgtanVzdGlmeS1jZW50ZXIgZmxleC1pdGVtcy1jZW50ZXIgZjUgZC1ub25lIGpzLWp1bXAtdG8tc3VnZ2VzdGlvbiBwLTIiPgogICAgPHNwYW4gY2xhc3M9InRleHQtZ3JheSI+Tm8gc3VnZ2VzdGVkIGp1bXAgdG8gcmVzdWx0czwvc3Bhbj4KICA8L2xpPgo8L3VsPgoKPHVsIGlkPSJqdW1wLXRvLXJlc3VsdHMiIHJvbGU9Imxpc3Rib3giIGNsYXNzPSJwLTAgbS0wIGpzLW5hdmlnYXRpb24tY29udGFpbmVyIGp1bXAtdG8tc3VnZ2VzdGlvbnMtcmVzdWx0cy1jb250YWluZXIganMtanVtcC10by1zdWdnZXN0aW9ucy1yZXN1bHRzLWNvbnRhaW5lciI+CiAgCgo8bGkgY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktc3RhcnQgZmxleC1pdGVtcy1jZW50ZXIgcC0wIGY1IG5hdmlnYXRpb24taXRlbSBqcy1uYXZpZ2F0aW9uLWl0ZW0ganMtanVtcC10by1zY29wZWQtc2VhcmNoIGQtbm9uZSIgcm9sZT0ib3B0aW9uIj4KICA8YSB0YWJpbmRleD0iLTEiIGNsYXNzPSJuby11bmRlcmxpbmUgZC1mbGV4IGZsZXgtYXV0byBmbGV4LWl0ZW1zLWNlbnRlciBqdW1wLXRvLXN1Z2dlc3Rpb25zLXBhdGgganMtanVtcC10by1zdWdnZXN0aW9uLXBhdGgganMtbmF2aWdhdGlvbi1vcGVuIHAtMiIgaHJlZj0iIj4KICAgIDxkaXYgY2xhc3M9Imp1bXAtdG8tb2N0aWNvbiBqcy1qdW1wLXRvLW9jdGljb24gZmxleC1zaHJpbmstMCBtci0yIHRleHQtY2VudGVyIGQtbm9uZSI+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXJlcG8gZmxleC1zaHJpbmstMCBqcy1qdW1wLXRvLW9jdGljb24tcmVwbyBkLW5vbmUiIHRpdGxlPSJSZXBvc2l0b3J5IiBhcmlhLWxhYmVsPSJSZXBvc2l0b3J5IiB2aWV3Qm94PSIwIDAgMTIgMTYiIHZlcnNpb249IjEuMSIgcm9sZT0iaW1nIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDlIM1Y4aDF2MXptMC0zSDN2MWgxVjZ6bTAtMkgzdjFoMVY0em0wLTJIM3YxaDFWMnptOC0xdjEyYzAgLjU1LS40NSAxLTEgMUg2djJsLTEuNS0xLjVMMyAxNnYtMkgxYy0uNTUgMC0xLS40NS0xLTFWMWMwLS41NS40NS0xIDEtMWgxMGMuNTUgMCAxIC40NSAxIDF6bS0xIDEwSDF2Mmgydi0xaDN2MWg1di0yem0wLTEwSDJ2OWg5VjF6Ii8+PC9zdmc+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXByb2plY3QgZmxleC1zaHJpbmstMCBqcy1qdW1wLXRvLW9jdGljb24tcHJvamVjdCBkLW5vbmUiIHRpdGxlPSJQcm9qZWN0IiBhcmlhLWxhYmVsPSJQcm9qZWN0IiB2aWV3Qm94PSIwIDAgMTUgMTYiIHZlcnNpb249IjEuMSIgcm9sZT0iaW1nIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMCAxMmgzVjJoLTN2MTB6bS00LTJoM1YySDZ2OHptLTQgNGgzVjJIMnYxMnptLTEgMWgxM1YxSDF2MTR6TTE0IDBIMWExIDEgMCAwMC0xIDF2MTRhMSAxIDAgMDAxIDFoMTNhMSAxIDAgMDAxLTFWMWExIDEgMCAwMC0xLTF6Ii8+PC9zdmc+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXNlYXJjaCBmbGV4LXNocmluay0wIGpzLWp1bXAtdG8tb2N0aWNvbi1zZWFyY2ggZC1ub25lIiB0aXRsZT0iU2VhcmNoIiBhcmlhLWxhYmVsPSJTZWFyY2giIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiByb2xlPSJpbWciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTE1LjcgMTMuM2wtMy44MS0zLjgzQTUuOTMgNS45MyAwIDAwMTMgNmMwLTMuMzEtMi42OS02LTYtNlMxIDIuNjkgMSA2czIuNjkgNiA2IDZjMS4zIDAgMi40OC0uNDEgMy40Ny0xLjExbDMuODMgMy44MWMuMTkuMi40NS4zLjcuMy4yNSAwIC41Mi0uMDkuNy0uM2EuOTk2Ljk5NiAwIDAwMC0xLjQxdi4wMXpNNyAxMC43Yy0yLjU5IDAtNC43LTIuMTEtNC43LTQuNyAwLTIuNTkgMi4xMS00LjcgNC43LTQuNyAyLjU5IDAgNC43IDIuMTEgNC43IDQuNyAwIDIuNTktMi4xMSA0LjctNC43IDQuN3oiLz48L3N2Zz4KICAgIDwvZGl2PgoKICAgIDxpbWcgY2xhc3M9ImF2YXRhciBtci0yIGZsZXgtc2hyaW5rLTAganMtanVtcC10by1zdWdnZXN0aW9uLWF2YXRhciBkLW5vbmUiIGFsdD0iIiBhcmlhLWxhYmVsPSJUZWFtIiBzcmM9IiIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4Ij4KCiAgICA8ZGl2IGNsYXNzPSJqdW1wLXRvLXN1Z2dlc3Rpb24tbmFtZSBqcy1qdW1wLXRvLXN1Z2dlc3Rpb24tbmFtZSBmbGV4LWF1dG8gb3ZlcmZsb3ctaGlkZGVuIHRleHQtbGVmdCBuby13cmFwIGNzcy10cnVuY2F0ZSBjc3MtdHJ1bmNhdGUtdGFyZ2V0Ij4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImJvcmRlciByb3VuZGVkLTEgZmxleC1zaHJpbmstMCBiZy1ncmF5IHB4LTEgdGV4dC1ncmF5LWxpZ2h0IG1sLTEgZjYgZC1ub25lIGpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoIj4KICAgICAgPHNwYW4gY2xhc3M9ImpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoLXRleHQtZGVmYXVsdCBkLW5vbmUiIGFyaWEtbGFiZWw9ImluIHRoaXMgcmVwb3NpdG9yeSI+CiAgICAgICAgSW4gdGhpcyByZXBvc2l0b3J5CiAgICAgIDwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoLXRleHQtZ2xvYmFsIGQtbm9uZSIgYXJpYS1sYWJlbD0iaW4gYWxsIG9mIEdpdEh1YiI+CiAgICAgICAgQWxsIEdpdEh1YgogICAgICA8L3NwYW4+CiAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0iZC1pbmxpbmUtYmxvY2sgbWwtMSB2LWFsaWduLW1pZGRsZSI+4oa1PC9zcGFuPgogICAgPC9kaXY+CgogICAgPGRpdiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9ImJvcmRlciByb3VuZGVkLTEgZmxleC1zaHJpbmstMCBiZy1ncmF5IHB4LTEgdGV4dC1ncmF5LWxpZ2h0IG1sLTEgZjYgZC1ub25lIGQtb24tbmF2LWZvY3VzIGpzLWp1bXAtdG8tYmFkZ2UtanVtcCI+CiAgICAgIEp1bXAgdG8KICAgICAgPHNwYW4gY2xhc3M9ImQtaW5saW5lLWJsb2NrIG1sLTEgdi1hbGlnbi1taWRkbGUiPuKGtTwvc3Bhbj4KICAgIDwvZGl2PgogIDwvYT4KPC9saT4KCiAgCgo8bGkgY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktc3RhcnQgZmxleC1pdGVtcy1jZW50ZXIgcC0wIGY1IG5hdmlnYXRpb24taXRlbSBqcy1uYXZpZ2F0aW9uLWl0ZW0ganMtanVtcC10by1nbG9iYWwtc2VhcmNoIGQtbm9uZSIgcm9sZT0ib3B0aW9uIj4KICA8YSB0YWJpbmRleD0iLTEiIGNsYXNzPSJuby11bmRlcmxpbmUgZC1mbGV4IGZsZXgtYXV0byBmbGV4LWl0ZW1zLWNlbnRlciBqdW1wLXRvLXN1Z2dlc3Rpb25zLXBhdGgganMtanVtcC10by1zdWdnZXN0aW9uLXBhdGgganMtbmF2aWdhdGlvbi1vcGVuIHAtMiIgaHJlZj0iIj4KICAgIDxkaXYgY2xhc3M9Imp1bXAtdG8tb2N0aWNvbiBqcy1qdW1wLXRvLW9jdGljb24gZmxleC1zaHJpbmstMCBtci0yIHRleHQtY2VudGVyIGQtbm9uZSI+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXJlcG8gZmxleC1zaHJpbmstMCBqcy1qdW1wLXRvLW9jdGljb24tcmVwbyBkLW5vbmUiIHRpdGxlPSJSZXBvc2l0b3J5IiBhcmlhLWxhYmVsPSJSZXBvc2l0b3J5IiB2aWV3Qm94PSIwIDAgMTIgMTYiIHZlcnNpb249IjEuMSIgcm9sZT0iaW1nIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDlIM1Y4aDF2MXptMC0zSDN2MWgxVjZ6bTAtMkgzdjFoMVY0em0wLTJIM3YxaDFWMnptOC0xdjEyYzAgLjU1LS40NSAxLTEgMUg2djJsLTEuNS0xLjVMMyAxNnYtMkgxYy0uNTUgMC0xLS40NS0xLTFWMWMwLS41NS40NS0xIDEtMWgxMGMuNTUgMCAxIC40NSAxIDF6bS0xIDEwSDF2Mmgydi0xaDN2MWg1di0yem0wLTEwSDJ2OWg5VjF6Ii8+PC9zdmc+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXByb2plY3QgZmxleC1zaHJpbmstMCBqcy1qdW1wLXRvLW9jdGljb24tcHJvamVjdCBkLW5vbmUiIHRpdGxlPSJQcm9qZWN0IiBhcmlhLWxhYmVsPSJQcm9qZWN0IiB2aWV3Qm94PSIwIDAgMTUgMTYiIHZlcnNpb249IjEuMSIgcm9sZT0iaW1nIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMCAxMmgzVjJoLTN2MTB6bS00LTJoM1YySDZ2OHptLTQgNGgzVjJIMnYxMnptLTEgMWgxM1YxSDF2MTR6TTE0IDBIMWExIDEgMCAwMC0xIDF2MTRhMSAxIDAgMDAxIDFoMTNhMSAxIDAgMDAxLTFWMWExIDEgMCAwMC0xLTF6Ii8+PC9zdmc+CiAgICAgIDxzdmcgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXNlYXJjaCBmbGV4LXNocmluay0wIGpzLWp1bXAtdG8tb2N0aWNvbi1zZWFyY2ggZC1ub25lIiB0aXRsZT0iU2VhcmNoIiBhcmlhLWxhYmVsPSJTZWFyY2giIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiByb2xlPSJpbWciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTE1LjcgMTMuM2wtMy44MS0zLjgzQTUuOTMgNS45MyAwIDAwMTMgNmMwLTMuMzEtMi42OS02LTYtNlMxIDIuNjkgMSA2czIuNjkgNiA2IDZjMS4zIDAgMi40OC0uNDEgMy40Ny0xLjExbDMuODMgMy44MWMuMTkuMi40NS4zLjcuMy4yNSAwIC41Mi0uMDkuNy0uM2EuOTk2Ljk5NiAwIDAwMC0xLjQxdi4wMXpNNyAxMC43Yy0yLjU5IDAtNC43LTIuMTEtNC43LTQuNyAwLTIuNTkgMi4xMS00LjcgNC43LTQuNyAyLjU5IDAgNC43IDIuMTEgNC43IDQuNyAwIDIuNTktMi4xMSA0LjctNC43IDQuN3oiLz48L3N2Zz4KICAgIDwvZGl2PgoKICAgIDxpbWcgY2xhc3M9ImF2YXRhciBtci0yIGZsZXgtc2hyaW5rLTAganMtanVtcC10by1zdWdnZXN0aW9uLWF2YXRhciBkLW5vbmUiIGFsdD0iIiBhcmlhLWxhYmVsPSJUZWFtIiBzcmM9IiIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4Ij4KCiAgICA8ZGl2IGNsYXNzPSJqdW1wLXRvLXN1Z2dlc3Rpb24tbmFtZSBqcy1qdW1wLXRvLXN1Z2dlc3Rpb24tbmFtZSBmbGV4LWF1dG8gb3ZlcmZsb3ctaGlkZGVuIHRleHQtbGVmdCBuby13cmFwIGNzcy10cnVuY2F0ZSBjc3MtdHJ1bmNhdGUtdGFyZ2V0Ij4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImJvcmRlciByb3VuZGVkLTEgZmxleC1zaHJpbmstMCBiZy1ncmF5IHB4LTEgdGV4dC1ncmF5LWxpZ2h0IG1sLTEgZjYgZC1ub25lIGpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoIj4KICAgICAgPHNwYW4gY2xhc3M9ImpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoLXRleHQtZGVmYXVsdCBkLW5vbmUiIGFyaWEtbGFiZWw9ImluIHRoaXMgcmVwb3NpdG9yeSI+CiAgICAgICAgSW4gdGhpcyByZXBvc2l0b3J5CiAgICAgIDwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImpzLWp1bXAtdG8tYmFkZ2Utc2VhcmNoLXRleHQtZ2xvYmFsIGQtbm9uZSIgYXJpYS1sYWJlbD0iaW4gYWxsIG9mIEdpdEh1YiI+CiAgICAgICAgQWxsIEdpdEh1YgogICAgICA8L3NwYW4+CiAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPSJ0cnVlIiBjbGFzcz0iZC1pbmxpbmUtYmxvY2sgbWwtMSB2LWFsaWduLW1pZGRsZSI+4oa1PC9zcGFuPgogICAgPC9kaXY+CgogICAgPGRpdiBhcmlhLWhpZGRlbj0idHJ1ZSIgY2xhc3M9ImJvcmRlciByb3VuZGVkLTEgZmxleC1zaHJpbmstMCBiZy1ncmF5IHB4LTEgdGV4dC1ncmF5LWxpZ2h0IG1sLTEgZjYgZC1ub25lIGQtb24tbmF2LWZvY3VzIGpzLWp1bXAtdG8tYmFkZ2UtanVtcCI+CiAgICAgIEp1bXAgdG8KICAgICAgPHNwYW4gY2xhc3M9ImQtaW5saW5lLWJsb2NrIG1sLTEgdi1hbGlnbi1taWRkbGUiPuKGtTwvc3Bhbj4KICAgIDwvZGl2PgogIDwvYT4KPC9saT4KCgo8L3VsPgoKICAgICAgICAgICAgPC9kaXY+CiAgICAgIDwvbGFiZWw+CjwvZm9ybT4gIDwvZGl2Pgo8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGEgaHJlZj0iL2xvZ2luP3JldHVybl90bz0lMkZTaHViaGFtTmFuZGklMkZTcGxlZXRlciUyRmJsb2IlMkZtYXN0ZXIlMkZ5dWhpY2hhbGEubXAzIgogICAgICAgICAgY2xhc3M9IkhlYWRlck1lbnUtbGluayBuby11bmRlcmxpbmUgbXItMyIKICAgICAgICAgIGRhdGEtaHlkcm8tY2xpY2s9InsmcXVvdDtldmVudF90eXBlJnF1b3Q7OiZxdW90O2F1dGhlbnRpY2F0aW9uLmNsaWNrJnF1b3Q7LCZxdW90O3BheWxvYWQmcXVvdDs6eyZxdW90O2xvY2F0aW9uX2luX3BhZ2UmcXVvdDs6JnF1b3Q7c2l0ZSBoZWFkZXIgbWVudSZxdW90OywmcXVvdDtyZXBvc2l0b3J5X2lkJnF1b3Q7Om51bGwsJnF1b3Q7YXV0aF90eXBlJnF1b3Q7OiZxdW90O1NJR05fVVAmcXVvdDssJnF1b3Q7Y2xpZW50X2lkJnF1b3Q7Om51bGwsJnF1b3Q7b3JpZ2luYXRpbmdfcmVxdWVzdF9pZCZxdW90OzomcXVvdDs4REJBOjQ5NDU6Nzk1NjVBOjg1QTlFRjo1REQ0MjkyNSZxdW90OywmcXVvdDtvcmlnaW5hdGluZ191cmwmcXVvdDs6JnF1b3Q7aHR0cHM6Ly9naXRodWIuY29tL1NodWJoYW1OYW5kaS9TcGxlZXRlci9ibG9iL21hc3Rlci95dWhpY2hhbGEubXAzJnF1b3Q7LCZxdW90O3JlZmVycmVyJnF1b3Q7Om51bGwsJnF1b3Q7dXNlcl9pZCZxdW90OzpudWxsfX0iIGRhdGEtaHlkcm8tY2xpY2staG1hYz0iOWQ2NTcyOTBjNjk0YTFkMjU3Zjk2MjE5NDA5ZGI2N2IzYzgxOGYwMmIzYjNkZmQ0MTU4YTZlZjdlOTI3N2JiMiIKICAgICAgICAgIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBIZWFkZXIsIGNsaWNrZWQgU2lnbiBpbiwgdGV4dDpzaWduLWluIj4KICAgICAgICAgIFNpZ24mbmJzcDtpbgogICAgICAgIDwvYT4KICAgICAgICAgIDxhIGhyZWY9Ii9qb2luP3NvdXJjZT1oZWFkZXItcmVwbyZhbXA7c291cmNlX3JlcG89U2h1YmhhbU5hbmRpJTJGU3BsZWV0ZXIiCiAgICAgICAgICAgIGNsYXNzPSJIZWFkZXJNZW51LWxpbmsgZC1pbmxpbmUtYmxvY2sgbm8tdW5kZXJsaW5lIGJvcmRlciBib3JkZXItZ3JheS1kYXJrIHJvdW5kZWQtMSBweC0yIHB5LTEiCiAgICAgICAgICAgIGRhdGEtaHlkcm8tY2xpY2s9InsmcXVvdDtldmVudF90eXBlJnF1b3Q7OiZxdW90O2F1dGhlbnRpY2F0aW9uLmNsaWNrJnF1b3Q7LCZxdW90O3BheWxvYWQmcXVvdDs6eyZxdW90O2xvY2F0aW9uX2luX3BhZ2UmcXVvdDs6JnF1b3Q7c2l0ZSBoZWFkZXIgbWVudSZxdW90OywmcXVvdDtyZXBvc2l0b3J5X2lkJnF1b3Q7Om51bGwsJnF1b3Q7YXV0aF90eXBlJnF1b3Q7OiZxdW90O1NJR05fVVAmcXVvdDssJnF1b3Q7Y2xpZW50X2lkJnF1b3Q7Om51bGwsJnF1b3Q7b3JpZ2luYXRpbmdfcmVxdWVzdF9pZCZxdW90OzomcXVvdDs4REJBOjQ5NDU6Nzk1NjVBOjg1QTlFRjo1REQ0MjkyNSZxdW90OywmcXVvdDtvcmlnaW5hdGluZ191cmwmcXVvdDs6JnF1b3Q7aHR0cHM6Ly9naXRodWIuY29tL1NodWJoYW1OYW5kaS9TcGxlZXRlci9ibG9iL21hc3Rlci95dWhpY2hhbGEubXAzJnF1b3Q7LCZxdW90O3JlZmVycmVyJnF1b3Q7Om51bGwsJnF1b3Q7dXNlcl9pZCZxdW90OzpudWxsfX0iIGRhdGEtaHlkcm8tY2xpY2staG1hYz0iOWQ2NTcyOTBjNjk0YTFkMjU3Zjk2MjE5NDA5ZGI2N2IzYzgxOGYwMmIzYjNkZmQ0MTU4YTZlZjdlOTI3N2JiMiIKICAgICAgICAgICAgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIEhlYWRlciwgY2xpY2tlZCBTaWduIHVwLCB0ZXh0OnNpZ24tdXAiPgogICAgICAgICAgICBTaWduJm5ic3A7dXAKICAgICAgICAgIDwvYT4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9oZWFkZXI+CgogIDwvZGl2PgoKICA8ZGl2IGlkPSJzdGFydC1vZi1jb250ZW50IiBjbGFzcz0ic2hvdy1vbi1mb2N1cyI+PC9kaXY+CgoKICAgIDxkaXYgaWQ9ImpzLWZsYXNoLWNvbnRhaW5lciI+Cgo8L2Rpdj4KCgoKICA8ZGl2IGNsYXNzPSJhcHBsaWNhdGlvbi1tYWluICIgZGF0YS1jb21taXQtaG92ZXJjYXJkcy1lbmFibGVkPgogICAgICAgIDxkaXYgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9Tb2Z0d2FyZVNvdXJjZUNvZGUiIGNsYXNzPSIiPgogICAgPG1haW4gID4KICAgICAgCgoKICAKCgoKCgoKCgoKCgogIDxkaXYgY2xhc3M9IiBwYWdlaGVhZCByZXBvaGVhZCBpbnN0YXBhcGVyX2lnbm9yZSByZWFkYWJpbGl0eS1tZW51IGV4cGVyaW1lbnQtcmVwby1uYXYgcHQtMCBwdC1sZy00ICI+CiAgICA8ZGl2IGNsYXNzPSJyZXBvaGVhZC1kZXRhaWxzLWNvbnRhaW5lciBjbGVhcmZpeCBjb250YWluZXItbGcgcC1yZXNwb25zaXZlIGQtbm9uZSBkLWxnLWJsb2NrIj4KCiAgICAgIDx1bCBjbGFzcz0icGFnZWhlYWQtYWN0aW9ucyI+CgoKCgogIDxsaT4KICAgIAogIDxhIGNsYXNzPSJ0b29sdGlwcGVkIHRvb2x0aXBwZWQtcyBidG4gYnRuLXNtIGJ0bi13aXRoLWNvdW50IiBhcmlhLWxhYmVsPSJZb3UgbXVzdCBiZSBzaWduZWQgaW4gdG8gd2F0Y2ggYSByZXBvc2l0b3J5IiByZWw9Im5vZm9sbG93IiBkYXRhLWh5ZHJvLWNsaWNrPSJ7JnF1b3Q7ZXZlbnRfdHlwZSZxdW90OzomcXVvdDthdXRoZW50aWNhdGlvbi5jbGljayZxdW90OywmcXVvdDtwYXlsb2FkJnF1b3Q7OnsmcXVvdDtsb2NhdGlvbl9pbl9wYWdlJnF1b3Q7OiZxdW90O25vdGlmaWNhdGlvbiBzdWJzY3JpcHRpb24gbWVudSB3YXRjaCZxdW90OywmcXVvdDtyZXBvc2l0b3J5X2lkJnF1b3Q7Om51bGwsJnF1b3Q7YXV0aF90eXBlJnF1b3Q7OiZxdW90O0xPR19JTiZxdW90OywmcXVvdDtjbGllbnRfaWQmcXVvdDs6bnVsbCwmcXVvdDtvcmlnaW5hdGluZ19yZXF1ZXN0X2lkJnF1b3Q7OiZxdW90OzhEQkE6NDk0NTo3OTU2NUE6ODVBOUVGOjVERDQyOTI1JnF1b3Q7LCZxdW90O29yaWdpbmF0aW5nX3VybCZxdW90OzomcXVvdDtodHRwczovL2dpdGh1Yi5jb20vU2h1YmhhbU5hbmRpL1NwbGVldGVyL2Jsb2IvbWFzdGVyL3l1aGljaGFsYS5tcDMmcXVvdDssJnF1b3Q7cmVmZXJyZXImcXVvdDs6bnVsbCwmcXVvdDt1c2VyX2lkJnF1b3Q7Om51bGx9fSIgZGF0YS1oeWRyby1jbGljay1obWFjPSIwZDgzOTE5MDQzNDA0MmI4NGMxMGRkMjhiMzFlNzZjMTU2YTcwOGM0YTY0NmJmNjIxMzYyYzlhMjk5NTZkOTNiIiBocmVmPSIvbG9naW4/cmV0dXJuX3RvPSUyRlNodWJoYW1OYW5kaSUyRlNwbGVldGVyIj4KICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi1leWUgdi1hbGlnbi10ZXh0LWJvdHRvbSIgdmlld0JveD0iMCAwIDE2IDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTguMDYgMkMzIDIgMCA4IDAgOHMzIDYgOC4wNiA2QzEzIDE0IDE2IDggMTYgOHMtMy02LTcuOTQtNnpNOCAxMmMtMi4yIDAtNC0xLjc4LTQtNCAwLTIuMiAxLjgtNCA0LTQgMi4yMiAwIDQgMS44IDQgNCAwIDIuMjItMS43OCA0LTQgNHptMi00YzAgMS4xMS0uODkgMi0yIDItMS4xMSAwLTItLjg5LTItMiAwLTEuMTEuODktMiAyLTIgMS4xMSAwIDIgLjg5IDIgMnoiLz48L3N2Zz4KICAgIFdhdGNoCjwvYT4gICAgPGEgY2xhc3M9InNvY2lhbC1jb3VudCIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci93YXRjaGVycyIKICAgICAgIGFyaWEtbGFiZWw9IjEgdXNlciBpcyB3YXRjaGluZyB0aGlzIHJlcG9zaXRvcnkiPgogICAgICAxCiAgICA8L2E+CgogIDwvbGk+CgogIDxsaT4KICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1zbSBidG4td2l0aC1jb3VudCB0b29sdGlwcGVkIHRvb2x0aXBwZWQtcyIgYXJpYS1sYWJlbD0iWW91IG11c3QgYmUgc2lnbmVkIGluIHRvIHN0YXIgYSByZXBvc2l0b3J5IiByZWw9Im5vZm9sbG93IiBkYXRhLWh5ZHJvLWNsaWNrPSJ7JnF1b3Q7ZXZlbnRfdHlwZSZxdW90OzomcXVvdDthdXRoZW50aWNhdGlvbi5jbGljayZxdW90OywmcXVvdDtwYXlsb2FkJnF1b3Q7OnsmcXVvdDtsb2NhdGlvbl9pbl9wYWdlJnF1b3Q7OiZxdW90O3N0YXIgYnV0dG9uJnF1b3Q7LCZxdW90O3JlcG9zaXRvcnlfaWQmcXVvdDs6MjIyNzUyMDYzLCZxdW90O2F1dGhfdHlwZSZxdW90OzomcXVvdDtMT0dfSU4mcXVvdDssJnF1b3Q7Y2xpZW50X2lkJnF1b3Q7Om51bGwsJnF1b3Q7b3JpZ2luYXRpbmdfcmVxdWVzdF9pZCZxdW90OzomcXVvdDs4REJBOjQ5NDU6Nzk1NjVBOjg1QTlFRjo1REQ0MjkyNSZxdW90OywmcXVvdDtvcmlnaW5hdGluZ191cmwmcXVvdDs6JnF1b3Q7aHR0cHM6Ly9naXRodWIuY29tL1NodWJoYW1OYW5kaS9TcGxlZXRlci9ibG9iL21hc3Rlci95dWhpY2hhbGEubXAzJnF1b3Q7LCZxdW90O3JlZmVycmVyJnF1b3Q7Om51bGwsJnF1b3Q7dXNlcl9pZCZxdW90OzpudWxsfX0iIGRhdGEtaHlkcm8tY2xpY2staG1hYz0iNzhkNTIwYzAzOGJhMjEyYjRmN2Y4NTAwZjQ4N2QwM2UzMzlmY2NiMmMxYWNmNzkwNzA4NDM0YzJjNjdkNjMzZCIgaHJlZj0iL2xvZ2luP3JldHVybl90bz0lMkZTaHViaGFtTmFuZGklMkZTcGxlZXRlciI+CiAgICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi1zdGFyIHYtYWxpZ24tdGV4dC1ib3R0b20iIHZpZXdCb3g9IjAgMCAxNCAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTQiIGhlaWdodD0iMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA2bC00LjktLjY0TDcgMSA0LjkgNS4zNiAwIDZsMy42IDMuMjZMMi42NyAxNCA3IDExLjY3IDExLjMzIDE0bC0uOTMtNC43NEwxNCA2eiIvPjwvc3ZnPgogICAgICBTdGFyCjwvYT4KICAgIDxhIGNsYXNzPSJzb2NpYWwtY291bnQganMtc29jaWFsLWNvdW50IiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3N0YXJnYXplcnMiCiAgICAgIGFyaWEtbGFiZWw9IjAgdXNlcnMgc3RhcnJlZCB0aGlzIHJlcG9zaXRvcnkiPgogICAgICAwCiAgICA8L2E+CgogIDwvbGk+CgogIDxsaT4KICAgICAgPGEgY2xhc3M9ImJ0biBidG4tc20gYnRuLXdpdGgtY291bnQgdG9vbHRpcHBlZCB0b29sdGlwcGVkLXMiIGFyaWEtbGFiZWw9IllvdSBtdXN0IGJlIHNpZ25lZCBpbiB0byBmb3JrIGEgcmVwb3NpdG9yeSIgcmVsPSJub2ZvbGxvdyIgZGF0YS1oeWRyby1jbGljaz0ieyZxdW90O2V2ZW50X3R5cGUmcXVvdDs6JnF1b3Q7YXV0aGVudGljYXRpb24uY2xpY2smcXVvdDssJnF1b3Q7cGF5bG9hZCZxdW90Ozp7JnF1b3Q7bG9jYXRpb25faW5fcGFnZSZxdW90OzomcXVvdDtyZXBvIGRldGFpbHMgZm9yayBidXR0b24mcXVvdDssJnF1b3Q7cmVwb3NpdG9yeV9pZCZxdW90OzoyMjI3NTIwNjMsJnF1b3Q7YXV0aF90eXBlJnF1b3Q7OiZxdW90O0xPR19JTiZxdW90OywmcXVvdDtjbGllbnRfaWQmcXVvdDs6bnVsbCwmcXVvdDtvcmlnaW5hdGluZ19yZXF1ZXN0X2lkJnF1b3Q7OiZxdW90OzhEQkE6NDk0NTo3OTU2NUE6ODVBOUVGOjVERDQyOTI1JnF1b3Q7LCZxdW90O29yaWdpbmF0aW5nX3VybCZxdW90OzomcXVvdDtodHRwczovL2dpdGh1Yi5jb20vU2h1YmhhbU5hbmRpL1NwbGVldGVyL2Jsb2IvbWFzdGVyL3l1aGljaGFsYS5tcDMmcXVvdDssJnF1b3Q7cmVmZXJyZXImcXVvdDs6bnVsbCwmcXVvdDt1c2VyX2lkJnF1b3Q7Om51bGx9fSIgZGF0YS1oeWRyby1jbGljay1obWFjPSI1N2E0NzQ0NDkwNGQ0YzFiYjJhMzAwNTE4ZDJmYWU3NGU4NmM4NTg3NDE2MWZhYTcwYTVjNGU1ZjI5YzJlMTkxIiBocmVmPSIvbG9naW4/cmV0dXJuX3RvPSUyRlNodWJoYW1OYW5kaSUyRlNwbGVldGVyIj4KICAgICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24tcmVwby1mb3JrZWQgdi1hbGlnbi10ZXh0LWJvdHRvbSIgdmlld0JveD0iMCAwIDEwIDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTggMWExLjk5MyAxLjk5MyAwIDAwLTEgMy43MlY2TDUgOCAzIDZWNC43MkExLjk5MyAxLjk5MyAwIDAwMiAxYTEuOTkzIDEuOTkzIDAgMDAtMSAzLjcyVjYuNWwzIDN2MS43OEExLjk5MyAxLjk5MyAwIDAwNSAxNWExLjk5MyAxLjk5MyAwIDAwMS0zLjcyVjkuNWwzLTNWNC43MkExLjk5MyAxLjk5MyAwIDAwOCAxek0yIDQuMkMxLjM0IDQuMi44IDMuNjUuOCAzYzAtLjY1LjU1LTEuMiAxLjItMS4yLjY1IDAgMS4yLjU1IDEuMiAxLjIgMCAuNjUtLjU1IDEuMi0xLjIgMS4yem0zIDEwYy0uNjYgMC0xLjItLjU1LTEuMi0xLjIgMC0uNjUuNTUtMS4yIDEuMi0xLjIuNjUgMCAxLjIuNTUgMS4yIDEuMiAwIC42NS0uNTUgMS4yLTEuMiAxLjJ6bTMtMTBjLS42NiAwLTEuMi0uNTUtMS4yLTEuMiAwLS42NS41NS0xLjIgMS4yLTEuMi42NSAwIDEuMi41NSAxLjIgMS4yIDAgLjY1LS41NSAxLjItMS4yIDEuMnoiLz48L3N2Zz4KICAgICAgICBGb3JrCjwvYT4KICAgIDxhIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvbmV0d29yay9tZW1iZXJzIiBjbGFzcz0ic29jaWFsLWNvdW50IgogICAgICAgYXJpYS1sYWJlbD0iMCB1c2VycyBmb3JrZWQgdGhpcyByZXBvc2l0b3J5Ij4KICAgICAgMAogICAgPC9hPgogIDwvbGk+CjwvdWw+CgogICAgICA8aDEgY2xhc3M9InB1YmxpYyAiPgogICAgPHN2ZyBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXJlcG8iIHZpZXdCb3g9IjAgMCAxMiAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTIiIGhlaWdodD0iMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDlIM1Y4aDF2MXptMC0zSDN2MWgxVjZ6bTAtMkgzdjFoMVY0em0wLTJIM3YxaDFWMnptOC0xdjEyYzAgLjU1LS40NSAxLTEgMUg2djJsLTEuNS0xLjVMMyAxNnYtMkgxYy0uNTUgMC0xLS40NS0xLTFWMWMwLS41NS40NS0xIDEtMWgxMGMuNTUgMCAxIC40NSAxIDF6bS0xIDEwSDF2Mmgydi0xaDN2MWg1di0yem0wLTEwSDJ2OWg5VjF6Ii8+PC9zdmc+CiAgPHNwYW4gY2xhc3M9ImF1dGhvciIgaXRlbXByb3A9ImF1dGhvciI+PGEgY2xhc3M9InVybCBmbiIgcmVsPSJhdXRob3IiIGRhdGEtaG92ZXJjYXJkLXR5cGU9InVzZXIiIGRhdGEtaG92ZXJjYXJkLXVybD0iL2hvdmVyY2FyZHM/dXNlcl9pZD0yODYwNzY4OSIgZGF0YS1vY3RvLWNsaWNrPSJob3ZlcmNhcmQtbGluay1jbGljayIgZGF0YS1vY3RvLWRpbWVuc2lvbnM9ImxpbmtfdHlwZTpzZWxmIiBocmVmPSIvU2h1YmhhbU5hbmRpIj5TaHViaGFtTmFuZGk8L2E+PC9zcGFuPjwhLS0KLS0+PHNwYW4gY2xhc3M9InBhdGgtZGl2aWRlciI+Lzwvc3Bhbj48IS0tCi0tPjxzdHJvbmcgaXRlbXByb3A9Im5hbWUiPjxhIGRhdGEtcGpheD0iI2pzLXJlcG8tcGpheC1jb250YWluZXIiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIiPlNwbGVldGVyPC9hPjwvc3Ryb25nPgogIAoKPC9oMT4KCiAgICA8L2Rpdj4KICAgIAo8bmF2IGNsYXNzPSJoeF9yZXBvbmF2IHJlcG9uYXYganMtcmVwby1uYXYganMtc2lkZW5hdi1jb250YWluZXItcGpheCBjb250YWluZXItbGcgcC1yZXNwb25zaXZlIGQtbm9uZSBkLWxnLWJsb2NrIgogICAgIGl0ZW1zY29wZQogICAgIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9CcmVhZGNydW1iTGlzdCIKICAgIGFyaWEtbGFiZWw9IlJlcG9zaXRvcnkiCiAgICAgZGF0YS1wamF4PSIjanMtcmVwby1wamF4LWNvbnRhaW5lciI+CgogIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvTGlzdEl0ZW0iIGl0ZW1wcm9wPSJpdGVtTGlzdEVsZW1lbnQiPgogICAgPGEgY2xhc3M9ImpzLXNlbGVjdGVkLW5hdmlnYXRpb24taXRlbSBzZWxlY3RlZCByZXBvbmF2LWl0ZW0iIGl0ZW1wcm9wPSJ1cmwiIGRhdGEtaG90a2V5PSJnIGMiIGFyaWEtY3VycmVudD0icGFnZSIgZGF0YS1zZWxlY3RlZC1saW5rcz0icmVwb19zb3VyY2UgcmVwb19kb3dubG9hZHMgcmVwb19jb21taXRzIHJlcG9fcmVsZWFzZXMgcmVwb190YWdzIHJlcG9fYnJhbmNoZXMgcmVwb19wYWNrYWdlcyAvU2h1YmhhbU5hbmRpL1NwbGVldGVyIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyIj4KICAgICAgPHN2ZyBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLWNvZGUiIHZpZXdCb3g9IjAgMCAxNCAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTQiIGhlaWdodD0iMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05LjUgM0w4IDQuNSAxMS41IDggOCAxMS41IDkuNSAxMyAxNCA4IDkuNSAzem0tNSAwTDAgOGw0LjUgNUw2IDExLjUgMi41IDggNiA0LjUgNC41IDN6Ii8+PC9zdmc+CiAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5Db2RlPC9zcGFuPgogICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjEiPgo8L2E+ICA8L3NwYW4+CgogICAgPHNwYW4gaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbSIgaXRlbXByb3A9Iml0ZW1MaXN0RWxlbWVudCI+CiAgICAgIDxhIGl0ZW1wcm9wPSJ1cmwiIGRhdGEtaG90a2V5PSJnIGkiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJyZXBvX2lzc3VlcyByZXBvX2xhYmVscyByZXBvX21pbGVzdG9uZXMgL1NodWJoYW1OYW5kaS9TcGxlZXRlci9pc3N1ZXMiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvaXNzdWVzIj4KICAgICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24taXNzdWUtb3BlbmVkIiB2aWV3Qm94PSIwIDAgMTQgMTYiIHZlcnNpb249IjEuMSIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNyAyLjNjMy4xNCAwIDUuNyAyLjU2IDUuNyA1LjdzLTIuNTYgNS43LTUuNyA1LjdBNS43MSA1LjcxIDAgMDExLjMgOGMwLTMuMTQgMi41Ni01LjcgNS43LTUuN3pNNyAxQzMuMTQgMSAwIDQuMTQgMCA4czMuMTQgNyA3IDcgNy0zLjE0IDctNy0zLjE0LTctNy03em0xIDNINnY1aDJWNHptMCA2SDZ2Mmgydi0yeiIvPjwvc3ZnPgogICAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5Jc3N1ZXM8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9IkNvdW50ZXIiPjA8L3NwYW4+CiAgICAgICAgPG1ldGEgaXRlbXByb3A9InBvc2l0aW9uIiBjb250ZW50PSIyIj4KPC9hPiAgICA8L3NwYW4+CgogIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvTGlzdEl0ZW0iIGl0ZW1wcm9wPSJpdGVtTGlzdEVsZW1lbnQiPgogICAgPGEgZGF0YS1ob3RrZXk9ImcgcCIgaXRlbXByb3A9InVybCIgY2xhc3M9ImpzLXNlbGVjdGVkLW5hdmlnYXRpb24taXRlbSByZXBvbmF2LWl0ZW0iIGRhdGEtc2VsZWN0ZWQtbGlua3M9InJlcG9fcHVsbHMgY2hlY2tzIC9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHVsbHMiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHVsbHMiPgogICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24tZ2l0LXB1bGwtcmVxdWVzdCIgdmlld0JveD0iMCAwIDEyIDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTExIDExLjI4VjVjLS4wMy0uNzgtLjM0LTEuNDctLjk0LTIuMDZDOS40NiAyLjM1IDguNzggMi4wMyA4IDJIN1YwTDQgM2wzIDNWNGgxYy4yNy4wMi40OC4xMS42OS4zMS4yMS4yLjMuNDIuMzEuNjl2Ni4yOEExLjk5MyAxLjk5MyAwIDAwMTAgMTVhMS45OTMgMS45OTMgMCAwMDEtMy43MnptLTEgMi45MmMtLjY2IDAtMS4yLS41NS0xLjItMS4yIDAtLjY1LjU1LTEuMiAxLjItMS4yLjY1IDAgMS4yLjU1IDEuMiAxLjIgMCAuNjUtLjU1IDEuMi0xLjIgMS4yek00IDNjMC0xLjExLS44OS0yLTItMmExLjk5MyAxLjk5MyAwIDAwLTEgMy43MnY2LjU2QTEuOTkzIDEuOTkzIDAgMDAyIDE1YTEuOTkzIDEuOTkzIDAgMDAxLTMuNzJWNC43MmMuNTktLjM0IDEtLjk4IDEtMS43MnptLS44IDEwYzAgLjY2LS41NSAxLjItMS4yIDEuMi0uNjUgMC0xLjItLjU1LTEuMi0xLjIgMC0uNjUuNTUtMS4yIDEuMi0xLjIuNjUgMCAxLjIuNTUgMS4yIDEuMnpNMiA0LjJDMS4zNCA0LjIuOCAzLjY1LjggM2MwLS42NS41NS0xLjIgMS4yLTEuMi42NSAwIDEuMi41NSAxLjIgMS4yIDAgLjY1LS41NSAxLjItMS4yIDEuMnoiLz48L3N2Zz4KICAgICAgPHNwYW4gaXRlbXByb3A9Im5hbWUiPlB1bGwgcmVxdWVzdHM8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJDb3VudGVyIj4wPC9zcGFuPgogICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjMiPgo8L2E+ICA8L3NwYW4+CgoKICAgIDxhIGRhdGEtaG90a2V5PSJnIGIiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJyZXBvX3Byb2plY3RzIG5ld19yZXBvX3Byb2plY3QgcmVwb19wcm9qZWN0IC9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHJvamVjdHMiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHJvamVjdHMiPgogICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24tcHJvamVjdCIgdmlld0JveD0iMCAwIDE1IDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTEwIDEyaDNWMmgtM3YxMHptLTQtMmgzVjJINnY4em0tNCA0aDNWMkgydjEyem0tMSAxaDEzVjFIMXYxNHpNMTQgMEgxYTEgMSAwIDAwLTEgMXYxNGExIDEgMCAwMDEgMWgxM2ExIDEgMCAwMDEtMVYxYTEgMSAwIDAwLTEtMXoiLz48L3N2Zz4KICAgICAgUHJvamVjdHMKICAgICAgPHNwYW4gY2xhc3M9IkNvdW50ZXIiID4wPC9zcGFuPgo8L2E+CgoKICAgIDxhIGRhdGEtc2tpcC1wamF4PSJ0cnVlIiBjbGFzcz0ianMtc2VsZWN0ZWQtbmF2aWdhdGlvbi1pdGVtIHJlcG9uYXYtaXRlbSIgZGF0YS1zZWxlY3RlZC1saW5rcz0ic2VjdXJpdHkgYWxlcnRzIHBvbGljeSBjb2RlX3NjYW5uaW5nIC9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvc2VjdXJpdHkvYWR2aXNvcmllcyIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9zZWN1cml0eS9hZHZpc29yaWVzIj4KICAgICAgPHN2ZyBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLXNoaWVsZCIgdmlld0JveD0iMCAwIDE0IDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMmw3LTIgNyAydjYuMDJDMTQgMTIuNjkgOC42OSAxNiA3IDE2Yy0xLjY5IDAtNy0zLjMxLTctNy45OFYyem0xIC43NUw3IDFsNiAxLjc1djUuMjY4QzEzIDEyLjEwNCA4LjQ0OSAxNSA3IDE1Yy0xLjQ0OSAwLTYtMi44OTYtNi02Ljk4MlYyLjc1em0xIC43NUw3IDJ2MTJjLTEuMjA3IDAtNS0yLjQ4Mi01LTUuOTg1VjMuNXoiLz48L3N2Zz4KICAgICAgU2VjdXJpdHkKPC9hPgogICAgPGEgY2xhc3M9ImpzLXNlbGVjdGVkLW5hdmlnYXRpb24taXRlbSByZXBvbmF2LWl0ZW0iIGRhdGEtc2VsZWN0ZWQtbGlua3M9InJlcG9fZ3JhcGhzIHJlcG9fY29udHJpYnV0b3JzIGRlcGVuZGVuY3lfZ3JhcGggcHVsc2UgcGVvcGxlIC9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHVsc2UiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHVsc2UiPgogICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24tZ3JhcGgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNiAxNHYxSDBWMGgxdjE0aDE1ek01IDEzSDNWOGgydjV6bTQgMEg3VjNoMnYxMHptNCAwaC0yVjZoMnY3eiIvPjwvc3ZnPgogICAgICBJbnNpZ2h0cwo8L2E+Cgo8L25hdj4KCiAgPGRpdiBjbGFzcz0icmVwb25hdi13cmFwcGVyIHJlcG9uYXYtc21hbGwgZC1sZy1ub25lIj4KICA8bmF2IGNsYXNzPSJyZXBvbmF2IGpzLXJlcG9uYXYgdGV4dC1jZW50ZXIgbm8td3JhcCIKICAgICAgIGl0ZW1zY29wZQogICAgICAgaXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL0JyZWFkY3J1bWJMaXN0Ij4KCiAgICA8c3BhbiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL0xpc3RJdGVtIiBpdGVtcHJvcD0iaXRlbUxpc3RFbGVtZW50Ij4KICAgICAgPGEgY2xhc3M9ImpzLXNlbGVjdGVkLW5hdmlnYXRpb24taXRlbSBzZWxlY3RlZCByZXBvbmF2LWl0ZW0iIGl0ZW1wcm9wPSJ1cmwiIGFyaWEtY3VycmVudD0icGFnZSIgZGF0YS1zZWxlY3RlZC1saW5rcz0icmVwb19zb3VyY2UgcmVwb19kb3dubG9hZHMgcmVwb19jb21taXRzIHJlcG9fcmVsZWFzZXMgcmVwb190YWdzIHJlcG9fYnJhbmNoZXMgcmVwb19wYWNrYWdlcyAvU2h1YmhhbU5hbmRpL1NwbGVldGVyIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyIj4KICAgICAgICA8c3BhbiBpdGVtcHJvcD0ibmFtZSI+Q29kZTwvc3Bhbj4KICAgICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjEiPgo8L2E+ICAgIDwvc3Bhbj4KCiAgICAgIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvTGlzdEl0ZW0iIGl0ZW1wcm9wPSJpdGVtTGlzdEVsZW1lbnQiPgogICAgICAgIDxhIGl0ZW1wcm9wPSJ1cmwiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJyZXBvX2lzc3VlcyByZXBvX2xhYmVscyByZXBvX21pbGVzdG9uZXMgL1NodWJoYW1OYW5kaS9TcGxlZXRlci9pc3N1ZXMiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvaXNzdWVzIj4KICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5Jc3N1ZXM8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iQ291bnRlciI+MDwvc3Bhbj4KICAgICAgICAgIDxtZXRhIGl0ZW1wcm9wPSJwb3NpdGlvbiIgY29udGVudD0iMiI+CjwvYT4gICAgICA8L3NwYW4+CgogICAgPHNwYW4gaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbSIgaXRlbXByb3A9Iml0ZW1MaXN0RWxlbWVudCI+CiAgICAgIDxhIGl0ZW1wcm9wPSJ1cmwiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJyZXBvX3B1bGxzIGNoZWNrcyAvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3B1bGxzIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3B1bGxzIj4KICAgICAgICA8c3BhbiBpdGVtcHJvcD0ibmFtZSI+UHVsbCByZXF1ZXN0czwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iQ291bnRlciI+MDwvc3Bhbj4KICAgICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjMiPgo8L2E+ICAgIDwvc3Bhbj4KCiAgICAgIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL3NjaGVtYS5vcmcvTGlzdEl0ZW0iIGl0ZW1wcm9wPSJpdGVtTGlzdEVsZW1lbnQiPgogICAgICAgIDxhIGl0ZW1wcm9wPSJ1cmwiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJyZXBvX3Byb2plY3RzIG5ld19yZXBvX3Byb2plY3QgcmVwb19wcm9qZWN0IC9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHJvamVjdHMiIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcHJvamVjdHMiPgogICAgICAgICAgPHNwYW4gaXRlbXByb3A9Im5hbWUiPlByb2plY3RzPC9zcGFuPgogICAgICAgICAgPHNwYW4gY2xhc3M9IkNvdW50ZXIiPjA8L3NwYW4+CiAgICAgICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjQiPgo8L2E+ICAgICAgPC9zcGFuPgoKCiAgICAgIDxhIGl0ZW1wcm9wPSJ1cmwiIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJzZWN1cml0eSBhbGVydHMgcG9saWN5IGNvZGVfc2Nhbm5pbmcgL1NodWJoYW1OYW5kaS9TcGxlZXRlci9zZWN1cml0eS9hZHZpc29yaWVzIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3NlY3VyaXR5L2Fkdmlzb3JpZXMiPgogICAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5TZWN1cml0eTwvc3Bhbj4KICAgICAgICA8bWV0YSBpdGVtcHJvcD0icG9zaXRpb24iIGNvbnRlbnQ9IjYiPgo8L2E+CiAgICAgIDxhIGNsYXNzPSJqcy1zZWxlY3RlZC1uYXZpZ2F0aW9uLWl0ZW0gcmVwb25hdi1pdGVtIiBkYXRhLXNlbGVjdGVkLWxpbmtzPSJwdWxzZSAvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3B1bHNlIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL3B1bHNlIj4KICAgICAgICBQdWxzZQo8L2E+CgogIDwvbmF2Pgo8L2Rpdj4KCgogIDwvZGl2Pgo8ZGl2IGNsYXNzPSJjb250YWluZXItbGcgY2xlYXJmaXggbmV3LWRpc2N1c3Npb24tdGltZWxpbmUgZXhwZXJpbWVudC1yZXBvLW5hdiAgcC1yZXNwb25zaXZlIj4KICA8ZGl2IGNsYXNzPSJyZXBvc2l0b3J5LWNvbnRlbnQgIj4KCiAgICAKICAgIAoKCiAgCgoKICAgIDxhIGNsYXNzPSJkLW5vbmUganMtcGVybWFsaW5rLXNob3J0Y3V0IiBkYXRhLWhvdGtleT0ieSIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9ibG9iL2QxZWYzMjZlMzg5NDllNzRjZDc3NzIzNGI5MTA3NTQ4NDU3NWUyZDcveXVoaWNoYWxhLm1wMyI+UGVybWFsaW5rPC9hPgoKICAgIDwhLS0gYmxvYiBjb250cmliIGtleTogYmxvYl9jb250cmlidXRvcnM6djIxOjRmYzYwNTBlZDljMDgwNWI0ZGNkZTA5ZjMwODgxZjVjIC0tPgogICAgICAgICAgPGRpdiBjbGFzcz0ic2lnbnVwLXByb21wdC1iZyByb3VuZGVkLTEiPgogICAgICA8ZGl2IGNsYXNzPSJzaWdudXAtcHJvbXB0IHAtNCB0ZXh0LWNlbnRlciBtYi00IHJvdW5kZWQtMSI+CiAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUiPgogICAgICAgICAgPCEtLSAnImAgLS0+PCEtLSA8L3RleHRhcmVhPjwveG1wPiAtLT48L29wdGlvbj48L2Zvcm0+PGZvcm0gYWN0aW9uPSIvcHJvbXB0X2Rpc21pc3NhbHMvc2lnbnVwIiBhY2NlcHQtY2hhcnNldD0iVVRGLTgiIG1ldGhvZD0icG9zdCI+PGlucHV0IG5hbWU9InV0ZjgiIHR5cGU9ImhpZGRlbiIgdmFsdWU9IiYjeDI3MTM7IiAvPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Il9tZXRob2QiIHZhbHVlPSJwdXQiIC8+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYXV0aGVudGljaXR5X3Rva2VuIiB2YWx1ZT0iejJ1Q1VMWlJGREQ0MGJoOVpaenpjWFVqNXlTbnRlTCs4TXJUUnY3NWU1K2lteGRkT2ovYzg1WTFyaGkwUGdydEowWkwrTmJmU1VmRmJ3bWVFRXZyZlE9PSIgLz4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJwb3NpdGlvbi1hYnNvbHV0ZSB0b3AtMCByaWdodC0wIGJ0bi1saW5rIGxpbmstZ3JheSIgZGF0YS1nYS1jbGljaz0iKExvZ2dlZCBvdXQpIFNpZ24gdXAgcHJvbXB0LCBjbGlja2VkIERpc21pc3MsIHRleHQ6ZGlzbWlzcyI+CiAgICAgICAgICAgICAgRGlzbWlzcwogICAgICAgICAgICA8L2J1dHRvbj4KPC9mb3JtPiAgICAgICAgICA8aDMgY2xhc3M9InB0LTIiPkpvaW4gR2l0SHViIHRvZGF5PC9oMz4KICAgICAgICAgIDxwIGNsYXNzPSJjb2wtNiBteC1hdXRvIj5HaXRIdWIgaXMgaG9tZSB0byBvdmVyIDQwIG1pbGxpb24gZGV2ZWxvcGVycyB3b3JraW5nIHRvZ2V0aGVyIHRvIGhvc3QgYW5kIHJldmlldyBjb2RlLCBtYW5hZ2UgcHJvamVjdHMsIGFuZCBidWlsZCBzb2Z0d2FyZSB0b2dldGhlci48L3A+CiAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IiBkYXRhLWh5ZHJvLWNsaWNrPSJ7JnF1b3Q7ZXZlbnRfdHlwZSZxdW90OzomcXVvdDthdXRoZW50aWNhdGlvbi5jbGljayZxdW90OywmcXVvdDtwYXlsb2FkJnF1b3Q7OnsmcXVvdDtsb2NhdGlvbl9pbl9wYWdlJnF1b3Q7OiZxdW90O2ZpbGVzIHNpZ251cCBwcm9tcHQmcXVvdDssJnF1b3Q7cmVwb3NpdG9yeV9pZCZxdW90OzpudWxsLCZxdW90O2F1dGhfdHlwZSZxdW90OzomcXVvdDtTSUdOX1VQJnF1b3Q7LCZxdW90O2NsaWVudF9pZCZxdW90OzpudWxsLCZxdW90O29yaWdpbmF0aW5nX3JlcXVlc3RfaWQmcXVvdDs6JnF1b3Q7OERCQTo0OTQ1Ojc5NTY1QTo4NUE5RUY6NURENDI5MjUmcXVvdDssJnF1b3Q7b3JpZ2luYXRpbmdfdXJsJnF1b3Q7OiZxdW90O2h0dHBzOi8vZ2l0aHViLmNvbS9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvYmxvYi9tYXN0ZXIveXVoaWNoYWxhLm1wMyZxdW90OywmcXVvdDtyZWZlcnJlciZxdW90OzpudWxsLCZxdW90O3VzZXJfaWQmcXVvdDs6bnVsbH19IiBkYXRhLWh5ZHJvLWNsaWNrLWhtYWM9ImZkYTNjZmQyYmNiNzViMWUyYzFiMWE1YjEzNjQ0NWM5Nzc3YWZkOWM0MzBhY2MzM2RiMzVlMjZjYjBmNmZjYjMiIGRhdGEtZ2EtY2xpY2s9IihMb2dnZWQgb3V0KSBTaWduIHVwIHByb21wdCwgY2xpY2tlZCBTaWduIHVwLCB0ZXh0OnNpZ24tdXAiIGhyZWY9Ii9qb2luP3NvdXJjZT1wcm9tcHQtYmxvYi1zaG93JmFtcDtzb3VyY2VfcmVwbz1TaHViaGFtTmFuZGklMkZTcGxlZXRlciI+U2lnbiB1cDwvYT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCgogICAgPGRpdiBjbGFzcz0iZC1mbGV4IGZsZXgtaXRlbXMtc3RhcnQgZmxleC1zaHJpbmstMCBwYi0zIGZsZXgtY29sdW1uIGZsZXgtbWQtcm93Ij4KICAgICAgPHNwYW4gY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktYmV0d2VlbiB3aWR0aC1mdWxsIHdpZHRoLW1kLWF1dG8iPgogICAgICAgIAo8ZGV0YWlscyBjbGFzcz0iZGV0YWlscy1yZXNldCBkZXRhaWxzLW92ZXJsYXkgc2VsZWN0LW1lbnUgYnJhbmNoLXNlbGVjdC1tZW51ICBoeF9yc20iIGlkPSJicmFuY2gtc2VsZWN0LW1lbnUiPgogIDxzdW1tYXJ5IGNsYXNzPSJidG4gYnRuLXNtIHNlbGVjdC1tZW51LWJ1dHRvbiBjc3MtdHJ1bmNhdGUiCiAgICAgICAgICAgZGF0YS1ob3RrZXk9InciCiAgICAgICAgICAgdGl0bGU9IlN3aXRjaCBicmFuY2hlcyBvciB0YWdzIj4KICAgIDxpPkJyYW5jaDo8L2k+CiAgICA8c3BhbiBjbGFzcz0iY3NzLXRydW5jYXRlLXRhcmdldCIgZGF0YS1tZW51LWJ1dHRvbj5tYXN0ZXI8L3NwYW4+CiAgPC9zdW1tYXJ5PgoKICA8ZGV0YWlscy1tZW51IGNsYXNzPSJzZWxlY3QtbWVudS1tb2RhbCBoeF9yc20tbW9kYWwgcG9zaXRpb24tYWJzb2x1dGUiIHN0eWxlPSJ6LWluZGV4OiA5OTsiIHNyYz0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9yZWYtbGlzdC9tYXN0ZXIveXVoaWNoYWxhLm1wMz9zb3VyY2VfYWN0aW9uPXNob3cmYW1wO3NvdXJjZV9jb250cm9sbGVyPWJsb2IiIHByZWxvYWQ+CiAgICA8aW5jbHVkZS1mcmFnbWVudCBjbGFzcz0ic2VsZWN0LW1lbnUtbG9hZGluZy1vdmVybGF5IGFuaW0tcHVsc2UiPgogICAgICA8c3ZnIGhlaWdodD0iMzIiIGNsYXNzPSJvY3RpY29uIG9jdGljb24tb2N0b2ZhY2UiIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB3aWR0aD0iMzIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43IDUuMzRjLjEzLS4zMi41NS0xLjU5LS4xMy0zLjMxIDAgMC0xLjA1LS4zMy0zLjQ0IDEuMy0xLS4yOC0yLjA3LS4zMi0zLjEzLS4zMnMtMi4xMy4wNC0zLjEzLjMyYy0yLjM5LTEuNjQtMy40NC0xLjMtMy40NC0xLjMtLjY4IDEuNzItLjI2IDIuOTktLjEzIDMuMzFDLjQ5IDYuMjEgMCA3LjMzIDAgOC42OSAwIDEzLjg0IDMuMzMgMTUgNy45OCAxNVMxNiAxMy44NCAxNiA4LjY5YzAtMS4zNi0uNDktMi40OC0xLjMtMy4zNXpNOCAxNC4wMmMtMy4zIDAtNS45OC0uMTUtNS45OC0zLjM1IDAtLjc2LjM4LTEuNDggMS4wMi0yLjA3IDEuMDctLjk4IDIuOS0uNDYgNC45Ni0uNDYgMi4wNyAwIDMuODgtLjUyIDQuOTYuNDYuNjUuNTkgMS4wMiAxLjMgMS4wMiAyLjA3IDAgMy4xOS0yLjY4IDMuMzUtNS45OCAzLjM1ek01LjQ5IDkuMDFjLS42NiAwLTEuMi44LTEuMiAxLjc4cy41NCAxLjc5IDEuMiAxLjc5Yy42NiAwIDEuMi0uOCAxLjItMS43OXMtLjU0LTEuNzgtMS4yLTEuNzh6bTUuMDIgMGMtLjY2IDAtMS4yLjc5LTEuMiAxLjc4cy41NCAxLjc5IDEuMiAxLjc5Yy42NiAwIDEuMi0uOCAxLjItMS43OXMtLjUzLTEuNzgtMS4yLTEuNzh6Ii8+PC9zdmc+CiAgICA8L2luY2x1ZGUtZnJhZ21lbnQ+CiAgPC9kZXRhaWxzLW1lbnU+CjwvZGV0YWlscz4KCiAgICAgICAgPGRpdiBjbGFzcz0iQnRuR3JvdXAgZmxleC1zaHJpbmstMCBkLW1kLW5vbmUiPgogICAgICAgICAgPGEgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9maW5kL21hc3RlciIKICAgICAgICAgICAgICAgIGNsYXNzPSJqcy1wamF4LWNhcHR1cmUtaW5wdXQgYnRuIGJ0bi1zbSBCdG5Hcm91cC1pdGVtIgogICAgICAgICAgICAgICAgZGF0YS1wamF4CiAgICAgICAgICAgICAgICBkYXRhLWhvdGtleT0idCI+CiAgICAgICAgICAgIEZpbmQgZmlsZQogICAgICAgICAgPC9hPgogICAgICAgICAgPGNsaXBib2FyZC1jb3B5IHZhbHVlPSJ5dWhpY2hhbGEubXAzIiBjbGFzcz0iYnRuIGJ0bi1zbSBCdG5Hcm91cC1pdGVtIj4KICAgICAgICAgICAgQ29weSBwYXRoCiAgICAgICAgICA8L2NsaXBib2FyZC1jb3B5PgogICAgICAgIDwvZGl2PgogICAgICA8L3NwYW4+CiAgICAgIDxoMiBpZD0iYmxvYi1wYXRoIiBjbGFzcz0iYnJlYWRjcnVtYiBmbGV4LWF1dG8gbWluLXdpZHRoLTAgdGV4dC1ub3JtYWwgZmxleC1tZC1zZWxmLWNlbnRlciBtbC1tZC0yIG1yLW1kLTMgbXktMiBteS1tZC0wIj4KICAgICAgICA8c3BhbiBjbGFzcz0ianMtcmVwby1yb290IHRleHQtYm9sZCI+PHNwYW4gY2xhc3M9ImpzLXBhdGgtc2VnbWVudCI+PGEgZGF0YS1wamF4PSJ0cnVlIiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyIj48c3Bhbj5TcGxlZXRlcjwvc3Bhbj48L2E+PC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0ic2VwYXJhdG9yIj4vPC9zcGFuPjxzdHJvbmcgY2xhc3M9ImZpbmFsLXBhdGgiPnl1aGljaGFsYS5tcDM8L3N0cm9uZz4KICAgICAgPC9oMj4KCiAgICAgIDxkaXYgY2xhc3M9IkJ0bkdyb3VwIGZsZXgtc2hyaW5rLTAgZC1ub25lIGQtbWQtaW5saW5lLWJsb2NrIj4KICAgICAgICA8YSBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL2ZpbmQvbWFzdGVyIgogICAgICAgICAgICAgIGNsYXNzPSJqcy1wamF4LWNhcHR1cmUtaW5wdXQgYnRuIGJ0bi1zbSBCdG5Hcm91cC1pdGVtIgogICAgICAgICAgICAgIGRhdGEtcGpheAogICAgICAgICAgICAgIGRhdGEtaG90a2V5PSJ0Ij4KICAgICAgICAgIEZpbmQgZmlsZQogICAgICAgIDwvYT4KICAgICAgICA8Y2xpcGJvYXJkLWNvcHkgdmFsdWU9Inl1aGljaGFsYS5tcDMiIGNsYXNzPSJidG4gYnRuLXNtIEJ0bkdyb3VwLWl0ZW0iPgogICAgICAgICAgQ29weSBwYXRoCiAgICAgICAgPC9jbGlwYm9hcmQtY29weT4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCgoKICAgIAogIDxkaXYgY2xhc3M9IkJveCBCb3gtLWNvbmRlbnNlZCBkLWZsZXggZmxleC1jb2x1bW4gZmxleC1zaHJpbmstMCI+CiAgICAgIDxkaXYgY2xhc3M9IkJveC1ib2R5IGQtZmxleCBmbGV4LWp1c3RpZnktYmV0d2VlbiBiZy1ibHVlLWxpZ2h0IGZsZXgtY29sdW1uIGZsZXgtbWQtcm93IGZsZXgtaXRlbXMtc3RhcnQgZmxleC1tZC1pdGVtcy1jZW50ZXIiPgogICAgICAgIDxzcGFuIGNsYXNzPSJwci1tZC00IGY2Ij4KICAgICAgICAgIDxhIHJlbD0iYXV0aG9yIiBkYXRhLXNraXAtcGpheD0idHJ1ZSIgZGF0YS1ob3ZlcmNhcmQtdHlwZT0idXNlciIgZGF0YS1ob3ZlcmNhcmQtdXJsPSIvaG92ZXJjYXJkcz91c2VyX2lkPTI4NjA3Njg5IiBkYXRhLW9jdG8tY2xpY2s9ImhvdmVyY2FyZC1saW5rLWNsaWNrIiBkYXRhLW9jdG8tZGltZW5zaW9ucz0ibGlua190eXBlOnNlbGYiIGhyZWY9Ii9TaHViaGFtTmFuZGkiPjxpbWcgY2xhc3M9ImF2YXRhciIgc3JjPSJodHRwczovL2F2YXRhcnMwLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzI4NjA3Njg5P3M9NDAmYW1wO3Y9NCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBhbHQ9IkBTaHViaGFtTmFuZGkiIC8+PC9hPgogICAgICAgICAgPGEgY2xhc3M9InRleHQtYm9sZCBsaW5rLWdyYXktZGFyayBsaC1kZWZhdWx0IHYtYWxpZ24tbWlkZGxlIiByZWw9ImF1dGhvciIgZGF0YS1ob3ZlcmNhcmQtdHlwZT0idXNlciIgZGF0YS1ob3ZlcmNhcmQtdXJsPSIvaG92ZXJjYXJkcz91c2VyX2lkPTI4NjA3Njg5IiBkYXRhLW9jdG8tY2xpY2s9ImhvdmVyY2FyZC1saW5rLWNsaWNrIiBkYXRhLW9jdG8tZGltZW5zaW9ucz0ibGlua190eXBlOnNlbGYiIGhyZWY9Ii9TaHViaGFtTmFuZGkiPlNodWJoYW1OYW5kaTwvYT4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImxoLWRlZmF1bHQgdi1hbGlnbi1taWRkbGUiPgogICAgICAgICAgICAgIDxhIGRhdGEtcGpheD0idHJ1ZSIgdGl0bGU9IkFkZCBmaWxlcyB2aWEgdXBsb2FkIiBjbGFzcz0ibGluay1ncmF5IiBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL2NvbW1pdC9kMWVmMzI2ZTM4OTQ5ZTc0Y2Q3NzcyMzRiOTEwNzU0ODQ1NzVlMmQ3Ij5BZGQgZmlsZXMgdmlhIHVwbG9hZDwvYT4KICAgICAgICAgICAgPC9zcGFuPgogICAgICAgIDwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iZC1pbmxpbmUtYmxvY2sgZmxleC1zaHJpbmstMCB2LWFsaWduLWJvdHRvbSBmNiBtdC0yIG10LW1kLTAiPgogICAgICAgICAgPGEgY2xhc3M9InByLTIgdGV4dC1tb25vIGxpbmstZ3JheSIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9jb21taXQvZDFlZjMyNmUzODk0OWU3NGNkNzc3MjM0YjkxMDc1NDg0NTc1ZTJkNyIgZGF0YS1wamF4PmQxZWYzMjY8L2E+CiAgICAgICAgICA8cmVsYXRpdmUtdGltZSBkYXRldGltZT0iMjAxOS0xMS0xOVQxNzozMjoxMVoiIGNsYXNzPSJuby13cmFwIj5Ob3YgMTksIDIwMTk8L3JlbGF0aXZlLXRpbWU+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJCb3gtYm9keSBkLWZsZXggZmxleC1pdGVtcy1jZW50ZXIgZmxleC1hdXRvIGY2IGJvcmRlci1ib3R0b20tMCBmbGV4LXdyYXAiID4KICAgICAgPGRldGFpbHMgY2xhc3M9ImRldGFpbHMtcmVzZXQgZGV0YWlscy1vdmVybGF5IGRldGFpbHMtb3ZlcmxheS1kYXJrIGxoLWRlZmF1bHQgdGV4dC1ncmF5LWRhcmsgZmxvYXQtbGVmdCBtci0yIiBpZD0iYmxvYl9jb250cmlidXRvcnNfYm94Ij4KICAgICAgICA8c3VtbWFyeSBjbGFzcz0iYnRuLWxpbmsiPgogICAgICAgICAgPHNwYW4+PHN0cm9uZz4xPC9zdHJvbmc+IGNvbnRyaWJ1dG9yPC9zcGFuPgogICAgICAgIDwvc3VtbWFyeT4KICAgICAgICA8ZGV0YWlscy1kaWFsb2cKICAgICAgICAgIGNsYXNzPSJCb3ggQm94LS1vdmVybGF5IGQtZmxleCBmbGV4LWNvbHVtbiBhbmltLWZhZGUtaW4gZmFzdCIKICAgICAgICAgIGFyaWEtbGFiZWw9IlVzZXJzIHdobyBoYXZlIGNvbnRyaWJ1dGVkIHRvIHRoaXMgZmlsZSIKICAgICAgICAgIHNyYz0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9jb250cmlidXRvcnMtbGlzdC9tYXN0ZXIveXVoaWNoYWxhLm1wMyIgcHJlbG9hZD4KICAgICAgICAgIDxkaXYgY2xhc3M9IkJveC1oZWFkZXIiPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJCb3gtYnRuLW9jdGljb24gYnRuLW9jdGljb24gZmxvYXQtcmlnaHQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQ2xvc2UgZGlhbG9nIiBkYXRhLWNsb3NlLWRpYWxvZz4KICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJvY3RpY29uIG9jdGljb24teCIgdmlld0JveD0iMCAwIDEyIDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTcuNDggOGwzLjc1IDMuNzUtMS40OCAxLjQ4TDYgOS40OGwtMy43NSAzLjc1LTEuNDgtMS40OEw0LjUyIDggLjc3IDQuMjVsMS40OC0xLjQ4TDYgNi41MmwzLjc1LTMuNzUgMS40OCAxLjQ4TDcuNDggOHoiLz48L3N2Zz4KICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDxoMyBjbGFzcz0iQm94LXRpdGxlIj4KICAgICAgICAgICAgICBVc2VycyB3aG8gaGF2ZSBjb250cmlidXRlZCB0byB0aGlzIGZpbGUKICAgICAgICAgICAgPC9oMz4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGluY2x1ZGUtZnJhZ21lbnQgY2xhc3M9Im9jdG9jYXQtc3Bpbm5lciBteS0zIiBhcmlhLWxhYmVsPSJMb2FkaW5nLi4uIj48L2luY2x1ZGUtZnJhZ21lbnQ+CiAgICAgICAgPC9kZXRhaWxzLWRpYWxvZz4KICAgICAgPC9kZXRhaWxzPgogICAgPC9kaXY+CiAgPC9kaXY+CgoKCgoKICAgIDxkaXYgY2xhc3M9IkJveCBtdC0zIHBvc2l0aW9uLXJlbGF0aXZlIj4KICAgICAgCjxkaXYgY2xhc3M9IkJveC1oZWFkZXIgcHktMiBkLWZsZXggZmxleC1jb2x1bW4gZmxleC1zaHJpbmstMCBmbGV4LW1kLXJvdyBmbGV4LW1kLWl0ZW1zLWNlbnRlciI+CiAgPGRpdiBjbGFzcz0idGV4dC1tb25vIGY2IGZsZXgtYXV0byBwci0zIGZsZXgtb3JkZXItMiBmbGV4LW1kLW9yZGVyLTEgbXQtMiBtdC1tZC0wIj4KCiAgICAxMC4yIE1CCiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9ImQtZmxleCBweS0xIHB5LW1kLTAgZmxleC1hdXRvIGZsZXgtb3JkZXItMSBmbGV4LW1kLW9yZGVyLTIgZmxleC1zbS1ncm93LTAgZmxleC1qdXN0aWZ5LWJldHdlZW4iPgoKICAgIDxkaXYgY2xhc3M9IkJ0bkdyb3VwIj4KICAgICAgPGEgaWQ9InJhdy11cmwiIGNsYXNzPSJidG4gYnRuLXNtIEJ0bkdyb3VwLWl0ZW0iIGhyZWY9Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvcmF3L21hc3Rlci95dWhpY2hhbGEubXAzIj5Eb3dubG9hZDwvYT4KICAgICAgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImJ0biBidG4tc20gQnRuR3JvdXAtaXRlbSIgaHJlZj0iL1NodWJoYW1OYW5kaS9TcGxlZXRlci9jb21taXRzL21hc3Rlci95dWhpY2hhbGEubXAzIj5IaXN0b3J5PC9hPgogICAgPC9kaXY+CgoKICAgIDxkaXY+CgogICAgICAgICAgPCEtLSAnImAgLS0+PCEtLSA8L3RleHRhcmVhPjwveG1wPiAtLT48L29wdGlvbj48L2Zvcm0+PGZvcm0gY2xhc3M9ImlubGluZS1mb3JtIiBhY3Rpb249Ii9TaHViaGFtTmFuZGkvU3BsZWV0ZXIvZGVsZXRlL21hc3Rlci95dWhpY2hhbGEubXAzIiBhY2NlcHQtY2hhcnNldD0iVVRGLTgiIG1ldGhvZD0icG9zdCI+PGlucHV0IG5hbWU9InV0ZjgiIHR5cGU9ImhpZGRlbiIgdmFsdWU9IiYjeDI3MTM7IiAvPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImF1dGhlbnRpY2l0eV90b2tlbiIgdmFsdWU9Iks2RWtsVWpJV3p0QlhJL2VwMUhrQ0hHWFJhVmlRYldielVSRXVNWlprN1NwMnZrTC9EVDNYdERWMzU3T1dLSW1iKzdiNVJZZ0xLandOQitCaG1vRFBnPT0iIC8+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0bi1vY3RpY29uIGJ0bi1vY3RpY29uLWRhbmdlciB0b29sdGlwcGVkIHRvb2x0aXBwZWQtbnciIHR5cGU9InN1Ym1pdCIKICAgICAgICAgICAgICBhcmlhLWxhYmVsPSJZb3UgbXVzdCBiZSBzaWduZWQgaW4gdG8gbWFrZSBvciBwcm9wb3NlIGNoYW5nZXMiIGRhdGEtZGlzYWJsZS13aXRoPgogICAgICAgICAgICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi10cmFzaGNhbiIgdmlld0JveD0iMCAwIDEyIDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTExIDJIOWMwLS41NS0uNDUtMS0xLTFINWMtLjU1IDAtMSAuNDUtMSAxSDJjLS41NSAwLTEgLjQ1LTEgMXYxYzAgLjU1LjQ1IDEgMSAxdjljMCAuNTUuNDUgMSAxIDFoN2MuNTUgMCAxLS40NSAxLTFWNWMuNTUgMCAxLS40NSAxLTFWM2MwLS41NS0uNDUtMS0xLTF6bS0xIDEySDNWNWgxdjhoMVY1aDF2OGgxVjVoMXY4aDFWNWgxdjl6bTEtMTBIMlYzaDl2MXoiLz48L3N2Zz4KICAgICAgICAgICAgPC9idXR0b24+CjwvZm9ybT4gICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKCgoKICAgICAgCgogIDxkaXYgaXRlbXByb3A9InRleHQiIGNsYXNzPSJCb3gtYm9keSBwLTAgYmxvYi13cmFwcGVyIGRhdGEgdHlwZS10ZXh0ICI+CiAgICAgIDxkaXYgY2xhc3M9InRleHQtY2VudGVyIHAtMyI+CiAgICAgICAgICA8YSBocmVmPSIvU2h1YmhhbU5hbmRpL1NwbGVldGVyL2Jsb2IvbWFzdGVyL3l1aGljaGFsYS5tcDM/cmF3PXRydWUiPlZpZXcgcmF3PC9hPgogICAgICAgICAgICA8cD4oU29ycnkgYWJvdXQgdGhhdCwgYnV0IHdlIGNhbuKAmXQgc2hvdyBmaWxlcyB0aGF0IGFyZSB0aGlzIGJpZyByaWdodCBub3cuKTwvcD4KICAgICAgPC9kaXY+CiAgPC9kaXY+CgogICAgPC9kaXY+CgogIAoKICA8ZGV0YWlscyBjbGFzcz0iZGV0YWlscy1yZXNldCBkZXRhaWxzLW92ZXJsYXkgZGV0YWlscy1vdmVybGF5LWRhcmsiPgogICAgPHN1bW1hcnkgZGF0YS1ob3RrZXk9ImwiIGFyaWEtbGFiZWw9Ikp1bXAgdG8gbGluZSI+PC9zdW1tYXJ5PgogICAgPGRldGFpbHMtZGlhbG9nIGNsYXNzPSJCb3ggQm94LS1vdmVybGF5IGQtZmxleCBmbGV4LWNvbHVtbiBhbmltLWZhZGUtaW4gZmFzdCBsaW5lanVtcCIgYXJpYS1sYWJlbD0iSnVtcCB0byBsaW5lIj4KICAgICAgPCEtLSAnImAgLS0+PCEtLSA8L3RleHRhcmVhPjwveG1wPiAtLT48L29wdGlvbj48L2Zvcm0+PGZvcm0gY2xhc3M9ImpzLWp1bXAtdG8tbGluZS1mb3JtIEJveC1ib2R5IGQtZmxleCIgYWN0aW9uPSIiIGFjY2VwdC1jaGFyc2V0PSJVVEYtOCIgbWV0aG9kPSJnZXQiPjxpbnB1dCBuYW1lPSJ1dGY4IiB0eXBlPSJoaWRkZW4iIHZhbHVlPSImI3gyNzEzOyIgLz4KICAgICAgICA8aW5wdXQgY2xhc3M9ImZvcm0tY29udHJvbCBmbGV4LWF1dG8gbXItMyBsaW5lanVtcC1pbnB1dCBqcy1qdW1wLXRvLWxpbmUtZmllbGQiIHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSJKdW1wIHRvIGxpbmUmaGVsbGlwOyIgYXJpYS1sYWJlbD0iSnVtcCB0byBsaW5lIiBhdXRvZm9jdXM+CiAgICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4iIGRhdGEtY2xvc2UtZGlhbG9nPkdvPC9idXR0b24+CjwvZm9ybT4gICAgPC9kZXRhaWxzLWRpYWxvZz4KICA8L2RldGFpbHM+CgoKCiAgPC9kaXY+CjwvZGl2PgoKICAgIDwvbWFpbj4KICA8L2Rpdj4KICAKCiAgPC9kaXY+CgogICAgICAgIAo8ZGl2IGNsYXNzPSJmb290ZXIgY29udGFpbmVyLWxnIHdpZHRoLWZ1bGwgcC1yZXNwb25zaXZlIiByb2xlPSJjb250ZW50aW5mbyI+CiAgPGRpdiBjbGFzcz0icG9zaXRpb24tcmVsYXRpdmUgZC1mbGV4IGZsZXgtcm93LXJldmVyc2UgZmxleC1sZy1yb3cgZmxleC13cmFwIGZsZXgtbGctbm93cmFwIGZsZXgtanVzdGlmeS1jZW50ZXIgZmxleC1sZy1qdXN0aWZ5LWJldHdlZW4gcHQtNiBwYi0yIG10LTYgZjYgdGV4dC1ncmF5IGJvcmRlci10b3AgYm9yZGVyLWdyYXktbGlnaHQgIj4KICAgIDx1bCBjbGFzcz0ibGlzdC1zdHlsZS1ub25lIGQtZmxleCBmbGV4LXdyYXAgY29sLTEyIGNvbC1sZy01IGZsZXgtanVzdGlmeS1jZW50ZXIgZmxleC1sZy1qdXN0aWZ5LWJldHdlZW4gbWItMiBtYi1sZy0wIj4KICAgICAgPGxpIGNsYXNzPSJtci0zIG1yLWxnLTAiPiZjb3B5OyAyMDE5IDxzcGFuIHRpdGxlPSIwLjIwODg2cyBmcm9tIHVuaWNvcm4tNzU5NmI2ZGNiNy1yenZtZCI+R2l0SHViPC9zcGFuPiwgSW5jLjwvbGk+CiAgICAgICAgPGxpIGNsYXNzPSJtci0zIG1yLWxnLTAiPjxhIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gdGVybXMsIHRleHQ6dGVybXMiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9zaXRlL3Rlcm1zIj5UZXJtczwvYT48L2xpPgogICAgICAgIDxsaSBjbGFzcz0ibXItMyBtci1sZy0wIj48YSBkYXRhLWdhLWNsaWNrPSJGb290ZXIsIGdvIHRvIHByaXZhY3ksIHRleHQ6cHJpdmFjeSIgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL3NpdGUvcHJpdmFjeSI+UHJpdmFjeTwvYT48L2xpPgogICAgICAgIDxsaSBjbGFzcz0ibXItMyBtci1sZy0wIj48YSBkYXRhLWdhLWNsaWNrPSJGb290ZXIsIGdvIHRvIHNlY3VyaXR5LCB0ZXh0OnNlY3VyaXR5IiBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vc2VjdXJpdHkiPlNlY3VyaXR5PC9hPjwvbGk+CiAgICAgICAgPGxpIGNsYXNzPSJtci0zIG1yLWxnLTAiPjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHVic3RhdHVzLmNvbS8iIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gc3RhdHVzLCB0ZXh0OnN0YXR1cyI+U3RhdHVzPC9hPjwvbGk+CiAgICAgICAgPGxpPjxhIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gaGVscCwgdGV4dDpoZWxwIiBocmVmPSJodHRwczovL2hlbHAuZ2l0aHViLmNvbSI+SGVscDwvYT48L2xpPgogICAgPC91bD4KCiAgICA8YSBhcmlhLWxhYmVsPSJIb21lcGFnZSIgdGl0bGU9IkdpdEh1YiIgY2xhc3M9ImZvb3Rlci1vY3RpY29uIGQtbm9uZSBkLWxnLWJsb2NrIG14LWxnLTQiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbSI+CiAgICAgIDxzdmcgaGVpZ2h0PSIyNCIgY2xhc3M9Im9jdGljb24gb2N0aWNvbi1tYXJrLWdpdGh1YiIgdmlld0JveD0iMCAwIDE2IDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIyNCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTggMEMzLjU4IDAgMCAzLjU4IDAgOGMwIDMuNTQgMi4yOSA2LjUzIDUuNDcgNy41OS40LjA3LjU1LS4xNy41NS0uMzggMC0uMTktLjAxLS44Mi0uMDEtMS40OS0yLjAxLjM3LTIuNTMtLjQ5LTIuNjktLjk0LS4wOS0uMjMtLjQ4LS45NC0uODItMS4xMy0uMjgtLjE1LS42OC0uNTItLjAxLS41My42My0uMDEgMS4wOC41OCAxLjIzLjgyLjcyIDEuMjEgMS44Ny44NyAyLjMzLjY2LjA3LS41Mi4yOC0uODcuNTEtMS4wNy0xLjc4LS4yLTMuNjQtLjg5LTMuNjQtMy45NSAwLS44Ny4zMS0xLjU5LjgyLTIuMTUtLjA4LS4yLS4zNi0xLjAyLjA4LTIuMTIgMCAwIC42Ny0uMjEgMi4yLjgyLjY0LS4xOCAxLjMyLS4yNyAyLS4yNy42OCAwIDEuMzYuMDkgMiAuMjcgMS41My0xLjA0IDIuMi0uODIgMi4yLS44Mi40NCAxLjEuMTYgMS45Mi4wOCAyLjEyLjUxLjU2LjgyIDEuMjcuODIgMi4xNSAwIDMuMDctMS44NyAzLjc1LTMuNjUgMy45NS4yOS4yNS41NC43My41NCAxLjQ4IDAgMS4wNy0uMDEgMS45My0uMDEgMi4yIDAgLjIxLjE1LjQ2LjU1LjM4QTguMDEzIDguMDEzIDAgMDAxNiA4YzAtNC40Mi0zLjU4LTgtOC04eiIvPjwvc3ZnPgo8L2E+CiAgIDx1bCBjbGFzcz0ibGlzdC1zdHlsZS1ub25lIGQtZmxleCBmbGV4LXdyYXAgY29sLTEyIGNvbC1sZy01IGZsZXgtanVzdGlmeS1jZW50ZXIgZmxleC1sZy1qdXN0aWZ5LWJldHdlZW4gbWItMiBtYi1sZy0wIj4KICAgICAgICA8bGkgY2xhc3M9Im1yLTMgbXItbGctMCI+PGEgZGF0YS1nYS1jbGljaz0iRm9vdGVyLCBnbyB0byBjb250YWN0LCB0ZXh0OmNvbnRhY3QiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9jb250YWN0Ij5Db250YWN0IEdpdEh1YjwvYT48L2xpPgogICAgICAgIDxsaSBjbGFzcz0ibXItMyBtci1sZy0wIj48YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vcHJpY2luZyIgZGF0YS1nYS1jbGljaz0iRm9vdGVyLCBnbyB0byBQcmljaW5nLCB0ZXh0OlByaWNpbmciPlByaWNpbmc8L2E+PC9saT4KICAgICAgPGxpIGNsYXNzPSJtci0zIG1yLWxnLTAiPjxhIGhyZWY9Imh0dHBzOi8vZGV2ZWxvcGVyLmdpdGh1Yi5jb20iIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gYXBpLCB0ZXh0OmFwaSI+QVBJPC9hPjwvbGk+CiAgICAgIDxsaSBjbGFzcz0ibXItMyBtci1sZy0wIj48YSBocmVmPSJodHRwczovL3RyYWluaW5nLmdpdGh1Yi5jb20iIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gdHJhaW5pbmcsIHRleHQ6dHJhaW5pbmciPlRyYWluaW5nPC9hPjwvbGk+CiAgICAgICAgPGxpIGNsYXNzPSJtci0zIG1yLWxnLTAiPjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmJsb2ciIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gYmxvZywgdGV4dDpibG9nIj5CbG9nPC9hPjwvbGk+CiAgICAgICAgPGxpPjxhIGRhdGEtZ2EtY2xpY2s9IkZvb3RlciwgZ28gdG8gYWJvdXQsIHRleHQ6YWJvdXQiIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9hYm91dCI+QWJvdXQ8L2E+PC9saT4KCiAgICA8L3VsPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImQtZmxleCBmbGV4LWp1c3RpZnktY2VudGVyIHBiLTYiPgogICAgPHNwYW4gY2xhc3M9ImY2IHRleHQtZ3JheS1saWdodCI+PC9zcGFuPgogIDwvZGl2Pgo8L2Rpdj4KCgoKICA8ZGl2IGlkPSJhamF4LWVycm9yLW1lc3NhZ2UiIGNsYXNzPSJhamF4LWVycm9yLW1lc3NhZ2UgZmxhc2ggZmxhc2gtZXJyb3IiPgogICAgPHN2ZyBjbGFzcz0ib2N0aWNvbiBvY3RpY29uLWFsZXJ0IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOC44OTMgMS41Yy0uMTgzLS4zMS0uNTItLjUtLjg4Ny0uNXMtLjcwMy4xOS0uODg2LjVMLjEzOCAxMy40OTlhLjk4Ljk4IDAgMDAwIDEuMDAxYy4xOTMuMzEuNTMuNTAxLjg4Ni41MDFoMTMuOTY0Yy4zNjcgMCAuNzA0LS4xOS44NzctLjVhMS4wMyAxLjAzIDAgMDAuMDEtMS4wMDJMOC44OTMgMS41em0uMTMzIDExLjQ5N0g2Ljk4N3YtMi4wMDNoMi4wMzl2Mi4wMDN6bTAtMy4wMDRINi45ODdWNS45ODdoMi4wMzl2NC4wMDZ6Ii8+PC9zdmc+CiAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImZsYXNoLWNsb3NlIGpzLWFqYXgtZXJyb3ItZGlzbWlzcyIgYXJpYS1sYWJlbD0iRGlzbWlzcyBlcnJvciI+CiAgICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi14IiB2aWV3Qm94PSIwIDAgMTIgMTYiIHZlcnNpb249IjEuMSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNy40OCA4bDMuNzUgMy43NS0xLjQ4IDEuNDhMNiA5LjQ4bC0zLjc1IDMuNzUtMS40OC0xLjQ4TDQuNTIgOCAuNzcgNC4yNWwxLjQ4LTEuNDhMNiA2LjUybDMuNzUtMy43NSAxLjQ4IDEuNDhMNy40OCA4eiIvPjwvc3ZnPgogICAgPC9idXR0b24+CiAgICBZb3UgY2Fu4oCZdCBwZXJmb3JtIHRoYXQgYWN0aW9uIGF0IHRoaXMgdGltZS4KICA8L2Rpdj4KCgogICAgPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBpbnRlZ3JpdHk9InNoYTUxMi1TTUhmb0ZtbEZONVJGemtOR2IrQjBjbmZOMCtwNGQ3Z0Q1NmpFL1RrRXJQM3dNUnhYcm1ROFlHc3VsamxhRG1YZG0vcS82MmRwZGIvNFZOQVFReVcxUT09IiB0eXBlPSJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vZ2l0aHViLmdpdGh1YmFzc2V0cy5jb20vYXNzZXRzL2NvbXBhdC1ib290c3RyYXAtZmZhODRmYjQuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBpbnRlZ3JpdHk9InNoYTUxMi1Kc0cwUCsxNXpZOENWZ0RaWU1PbWxCdVVxeURTellhek5naXMvekExUnFNZ0VyWnF6SG1nTllLNXNmekJDYXpadmVPYS9udXE3YmVmRlZ1alVXVG9BQT09IiB0eXBlPSJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vZ2l0aHViLmdpdGh1YmFzc2V0cy5jb20vYXNzZXRzL2ZyYW1ld29ya3MtOGZiNmFiZTkuanMiPjwvc2NyaXB0PgogICAgCiAgICA8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGFzeW5jPSJhc3luYyIgaW50ZWdyaXR5PSJzaGE1MTItUTZYaDA4alh6RFRGUkhQcENnODEraWpZOGVLb3Q2b21LMnBYZTYxYVdCOXBBanV1UHFLZTduY3RlMEs2UnRvKzRnTTRkRktLSk9mQ01vbUF5eUg0OVE9PSIgdHlwZT0iYXBwbGljYXRpb24vamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2dpdGh1Yi5naXRodWJhc3NldHMuY29tL2Fzc2V0cy9naXRodWItYm9vdHN0cmFwLTNlNDhhMzZhLmpzIj48L3NjcmlwdD4KICAgIAogICAgCiAgICAKICA8ZGl2IGNsYXNzPSJqcy1zdGFsZS1zZXNzaW9uLWZsYXNoIGZsYXNoIGZsYXNoLXdhcm4gZmxhc2gtYmFubmVyIiBoaWRkZW4KICAgID4KICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi1hbGVydCIgdmlld0JveD0iMCAwIDE2IDE2IiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTguODkzIDEuNWMtLjE4My0uMzEtLjUyLS41LS44ODctLjVzLS43MDMuMTktLjg4Ni41TC4xMzggMTMuNDk5YS45OC45OCAwIDAwMCAxLjAwMWMuMTkzLjMxLjUzLjUwMS44ODYuNTAxaDEzLjk2NGMuMzY3IDAgLjcwNC0uMTkuODc3LS41YTEuMDMgMS4wMyAwIDAwLjAxLTEuMDAyTDguODkzIDEuNXptLjEzMyAxMS40OTdINi45ODd2LTIuMDAzaDIuMDM5djIuMDAzem0wLTMuMDA0SDYuOTg3VjUuOTg3aDIuMDM5djQuMDA2eiIvPjwvc3ZnPgogICAgPHNwYW4gY2xhc3M9ImpzLXN0YWxlLXNlc3Npb24tZmxhc2gtc2lnbmVkLWluIiBoaWRkZW4+WW91IHNpZ25lZCBpbiB3aXRoIGFub3RoZXIgdGFiIG9yIHdpbmRvdy4gPGEgaHJlZj0iIj5SZWxvYWQ8L2E+IHRvIHJlZnJlc2ggeW91ciBzZXNzaW9uLjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJqcy1zdGFsZS1zZXNzaW9uLWZsYXNoLXNpZ25lZC1vdXQiIGhpZGRlbj5Zb3Ugc2lnbmVkIG91dCBpbiBhbm90aGVyIHRhYiBvciB3aW5kb3cuIDxhIGhyZWY9IiI+UmVsb2FkPC9hPiB0byByZWZyZXNoIHlvdXIgc2Vzc2lvbi48L3NwYW4+CiAgPC9kaXY+CiAgPHRlbXBsYXRlIGlkPSJzaXRlLWRldGFpbHMtZGlhbG9nIj4KICA8ZGV0YWlscyBjbGFzcz0iZGV0YWlscy1yZXNldCBkZXRhaWxzLW92ZXJsYXkgZGV0YWlscy1vdmVybGF5LWRhcmsgbGgtZGVmYXVsdCB0ZXh0LWdyYXktZGFyayBoeF9yc20iIG9wZW4+CiAgICA8c3VtbWFyeSByb2xlPSJidXR0b24iIGFyaWEtbGFiZWw9IkNsb3NlIGRpYWxvZyI+PC9zdW1tYXJ5PgogICAgPGRldGFpbHMtZGlhbG9nIGNsYXNzPSJCb3ggQm94LS1vdmVybGF5IGQtZmxleCBmbGV4LWNvbHVtbiBhbmltLWZhZGUtaW4gZmFzdCBoeF9yc20tZGlhbG9nIGh4X3JzbS1tb2RhbCI+CiAgICAgIDxidXR0b24gY2xhc3M9IkJveC1idG4tb2N0aWNvbiBtLTAgYnRuLW9jdGljb24gcG9zaXRpb24tYWJzb2x1dGUgcmlnaHQtMCB0b3AtMCIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJDbG9zZSBkaWFsb2ciIGRhdGEtY2xvc2UtZGlhbG9nPgogICAgICAgIDxzdmcgY2xhc3M9Im9jdGljb24gb2N0aWNvbi14IiB2aWV3Qm94PSIwIDAgMTIgMTYiIHZlcnNpb249IjEuMSIgd2lkdGg9IjEyIiBoZWlnaHQ9IjE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNy40OCA4bDMuNzUgMy43NS0xLjQ4IDEuNDhMNiA5LjQ4bC0zLjc1IDMuNzUtMS40OC0xLjQ4TDQuNTIgOCAuNzcgNC4yNWwxLjQ4LTEuNDhMNiA2LjUybDMuNzUtMy43NSAxLjQ4IDEuNDhMNy40OCA4eiIvPjwvc3ZnPgogICAgICA8L2J1dHRvbj4KICAgICAgPGRpdiBjbGFzcz0ib2N0b2NhdC1zcGlubmVyIG15LTYganMtZGV0YWlscy1kaWFsb2ctc3Bpbm5lciI+PC9kaXY+CiAgICA8L2RldGFpbHMtZGlhbG9nPgogIDwvZGV0YWlscz4KPC90ZW1wbGF0ZT4KCiAgPGRpdiBjbGFzcz0iUG9wb3ZlciBqcy1ob3ZlcmNhcmQtY29udGVudCBwb3NpdGlvbi1hYnNvbHV0ZSIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IG91dGxpbmU6IG5vbmU7IiB0YWJpbmRleD0iMCI+CiAgPGRpdiBjbGFzcz0iUG9wb3Zlci1tZXNzYWdlIFBvcG92ZXItbWVzc2FnZS0tYm90dG9tLWxlZnQgUG9wb3Zlci1tZXNzYWdlLS1sYXJnZSBCb3ggYm94LXNoYWRvdy1sYXJnZSIgc3R5bGU9IndpZHRoOjM2MHB4OyI+CiAgPC9kaXY+CjwvZGl2PgoKICA8ZGl2IGFyaWEtbGl2ZT0icG9saXRlIiBjbGFzcz0ianMtZ2xvYmFsLXNjcmVlbi1yZWFkZXItbm90aWNlIHNyLW9ubHkiPjwvZGl2PgoKICA8L2JvZHk+CjwvaHRtbD4KCg==\" type=\"audio/mpeg\" />\n",
" Your browser does not support the audio element.\n",
" </audio>\n",
" "
],
"text/plain": [
"<IPython.lib.display.Audio object>"
]
},
"metadata": {
"tags": []
},
"execution_count": 30
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "pUEhGsBbwStT",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 635
},
"outputId": "f3fdb0d4-77af-4dc0-93a1-39fecbb09982"
},
"source": [
"\n",
"\n",
"!spleeter separate -h\n",
"\n"
],
"execution_count": 21,
"outputs": [
{
"output_type": "stream",
"text": [
"usage: spleeter separate [-h] [-a AUDIO_ADAPTER] [-p PARAMS_FILENAME]\n",
" [--verbose] -i AUDIO_FILENAMES [AUDIO_FILENAMES ...]\n",
" [-o OUTPUT_PATH] [-n {directory,filename}]\n",
" [-d MAX_DURATION] [-c {wav,mp3,ogg,m4a,wma,flac}]\n",
" [-m]\n",
"\n",
"optional arguments:\n",
" -h, --help show this help message and exit\n",
" -a AUDIO_ADAPTER, --adapter AUDIO_ADAPTER\n",
" Name of the audio adapter to use for audio I/O\n",
" -p PARAMS_FILENAME, --params_filename PARAMS_FILENAME\n",
" JSON filename that contains params\n",
" --verbose Shows verbose logs\n",
" -i AUDIO_FILENAMES [AUDIO_FILENAMES ...], --audio_filenames AUDIO_FILENAMES [AUDIO_FILENAMES ...]\n",
" List of input audio filenames\n",
" -o OUTPUT_PATH, --output_path OUTPUT_PATH\n",
" Path of the output directory to write audio files in\n",
" -n {directory,filename}, --output_naming {directory,filename}\n",
" Choice for naming the output base path: \"filename\"\n",
" (use the input filename, i.e /path/to/audio/mix.wav\n",
" will be separated to\n",
" <output_path>/mix/<instument1>.wav,\n",
" <output_path>/mix/<instument2>.wav...) or \"directory\"\n",
" (use the name of the input last level directory, for\n",
" instance /path/to/audio/mix.wav will be separated to\n",
" <output_path>/audio/<instument1>.wav,\n",
" <output_path>/audio/<instument2>.wav)\n",
" -d MAX_DURATION, --max_duration MAX_DURATION\n",
" Set a maximum duration for processing audio (only\n",
" separate max_duration first seconds of the input file)\n",
" -c {wav,mp3,ogg,m4a,wma,flac}, --audio_codec {wav,mp3,ogg,m4a,wma,flac}\n",
" Audio codec to be used for the separated output\n",
" -m, --mwf Whether to use multichannel Wiener filtering for\n",
" separation\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "cu09L1BQwwx6",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 199
},
"outputId": "a3204a2a-a636-4eaf-9c74-8e60f633891e"
},
"source": [
"!spleeter separate -i yuhichala.mp3 -p output/"
],
"execution_count": 26,
"outputs": [
{
"output_type": "stream",
"text": [
"Traceback (most recent call last):\n",
" File \"/usr/local/bin/spleeter\", line 8, in <module>\n",
" sys.exit(entrypoint())\n",
" File \"/usr/local/lib/python3.6/dist-packages/spleeter/__main__.py\", line 47, in entrypoint\n",
" main(sys.argv)\n",
" File \"/usr/local/lib/python3.6/dist-packages/spleeter/__main__.py\", line 40, in main\n",
" params = load_configuration(arguments.params_filename)\n",
" File \"/usr/local/lib/python3.6/dist-packages/spleeter/utils/configuration.py\", line 45, in load_configuration\n",
" raise IOError(f'Configuration file {descriptor} not found')\n",
"OSError: Configuration file output/ not found\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "vqC5eTauyu5S",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 53
},
"outputId": "ce6860e9-0dac-4241-fcdd-e62b4046e33a"
},
"source": [
"!spleeter separate -i yuhichala.mp3 -p spleeter:2stems -o output"
],
"execution_count": 33,
"outputs": [
{
"output_type": "stream",
"text": [
"INFO:spleeter:Loading audio b'yuhichala.mp3' from 0.0 to 600.0\n",
"WARNING:spleeter:ffprobe error (see stderr output for detail)\n"
],
"name": "stdout"
}
]
}
]
}