-
Notifications
You must be signed in to change notification settings - Fork 2
/
default.hta
356 lines (349 loc) · 490 KB
/
default.hta
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
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
<!-- ::
STUFF HERE IS IGNORED
MIGHT BE USFEUL ;]
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" ng-app="HTADOC" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content>
<meta name="author" content>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<HTA:APPLICATION ID="Title Here.19.08.13.26" APPLICATIONNAME="Title Here" CAPTION="Yes" BORDER="thick" ICON="#" SHOWINTASKBAR="Yes" SINGLEINSTANCE="Yes" SYSMENU WINDOWSTATE="maximize" VERSION="19.08.13.26" INNERBORDER="No" SELECTION="Yes" MAXIMIZEBUTTON="yes" MINIMIZEBUTTON="yes" NAVIGABLE="No" CONTEXTMENU BORDERSTYLE SCROLL="No" SCROLLFLAT="No">
<title>Title Here</title>
<style type="text/css">code{white-space: pre;}</style>
<style type="text/css">
div.sourceCode { overflow-x: auto; }
table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
margin: 0; padding: 0; vertical-align: baseline; border: none; }
table.sourceCode { width: 100%; line-height: 100%; }
td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
td.sourceCode { padding-left: 5px; }
code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
code > span.dt { color: #902000; } /* DataType */
code > span.dv { color: #40a070; } /* DecVal */
code > span.bn { color: #40a070; } /* BaseN */
code > span.fl { color: #40a070; } /* Float */
code > span.ch { color: #4070a0; } /* Char */
code > span.st { color: #4070a0; } /* String */
code > span.co { color: #60a0b0; font-style: italic; } /* Comment */
code > span.ot { color: #007020; } /* Other */
code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
code > span.fu { color: #06287e; } /* Function */
code > span.er { color: #ff0000; font-weight: bold; } /* Error */
code > span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
code > span.cn { color: #880000; } /* Constant */
code > span.sc { color: #4070a0; } /* SpecialChar */
code > span.vs { color: #4070a0; } /* VerbatimString */
code > span.ss { color: #bb6688; } /* SpecialString */
code > span.im { } /* Import */
code > span.va { color: #19177c; } /* Variable */
code > span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code > span.op { color: #666666; } /* Operator */
code > span.bu { } /* BuiltIn */
code > span.ex { } /* Extension */
code > span.pp { color: #bc7a00; } /* Preprocessor */
code > span.at { color: #7d9029; } /* Attribute */
code > span.do { color: #ba2121; font-style: italic; } /* Documentation */
code > span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code > span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
</style>
<link href="data:text/css;charset=utf-8,body%7B%0Afont%2Dfamily%3A%20%22PT%20Sans%22%3B%0A%7D%20h1%2Etitle%7B%0Afont%2Dsize%3A%203rem%3B%0A%7D%0Adiv%2EsourceCode%20%7B%0Abackground%2Dcolor%3A%20%23e8e8e8%3B%0Apadding%2Dleft%3A%201rem%3B%0Apadding%2Dright%3A%201rem%3B%0A%7D%0A" rel="stylesheet" type="text/css" />
<link href="data:text/css; charset=utf-8,%40font%2Dface%20%7B%0A%20%20font%2Dfamily%3A%20%27PT%20Sans%27%3B%0A%20%20font%2Dstyle%3A%20normal%3B%0A%20%20font%2Dweight%3A%20400%3B%0A%20%20src%3A%20local%28%27PT%20Sans%27%29%2C%20local%28%27PTSans%2DRegular%27%29%2C%20url%28http%3A%2F%2Ffonts%2Egstatic%2Ecom%2Fs%2Fptsans%2Fv11%2FjizaRExUiTo99u79D0KEwA%2Ettf%29%20format%28%27truetype%27%29%3B%0A%7D%0A" rel="stylesheet" />
<!-- Bootstrap core CSS -->
<link href="data:text/css;charset=utf-8,%3Aroot%7B%2D%2Dblue%3A%23007bff%3B%2D%2Dindigo%3A%236610f2%3B%2D%2Dpurple%3A%236f42c1%3B%2D%2Dpink%3A%23e83e8c%3B%2D%2Dred%3A%23dc3545%3B%2D%2Dorange%3A%23fd7e14%3B%2D%2Dyellow%3A%23ffc107%3B%2D%2Dgreen%3A%2328a745%3B%2D%2Dteal%3A%2320c997%3B%2D%2Dcyan%3A%2317a2b8%3B%2D%2Dwhite%3A%23fff%3B%2D%2Dgray%3A%236c757d%3B%2D%2Dgray%2Ddark%3A%23343a40%3B%2D%2Dprimary%3A%23007bff%3B%2D%2Dsecondary%3A%236c757d%3B%2D%2Dsuccess%3A%2328a745%3B%2D%2Dinfo%3A%2317a2b8%3B%2D%2Dwarning%3A%23ffc107%3B%2D%2Ddanger%3A%23dc3545%3B%2D%2Dlight%3A%23f8f9fa%3B%2D%2Ddark%3A%23343a40%3B%2D%2Dbreakpoint%2Dxs%3A0%3B%2D%2Dbreakpoint%2Dsm%3A576px%3B%2D%2Dbreakpoint%2Dmd%3A768px%3B%2D%2Dbreakpoint%2Dlg%3A992px%3B%2D%2Dbreakpoint%2Dxl%3A1200px%3B%2D%2Dfont%2Dfamily%2Dsans%2Dserif%3A%2Dapple%2Dsystem%2CBlinkMacSystemFont%2C%22Segoe%20UI%22%2CRoboto%2C%22Helvetica%20Neue%22%2CArial%2Csans%2Dserif%2C%22Apple%20Color%20Emoji%22%2C%22Segoe%20UI%20Emoji%22%2C%22Segoe%20UI%20Symbol%22%3B%2D%2Dfont%2Dfamily%2Dmonospace%3ASFMono%2DRegular%2CMenlo%2CMonaco%2CConsolas%2C%22Liberation%20Mono%22%2C%22Courier%20New%22%2Cmonospace%7D%2A%2C%3A%3Aafter%2C%3A%3Abefore%7Bbox%2Dsizing%3Aborder%2Dbox%7Dhtml%7Bfont%2Dfamily%3Asans%2Dserif%3Bline%2Dheight%3A1%2E15%3B%2Dwebkit%2Dtext%2Dsize%2Dadjust%3A100%25%3B%2Dms%2Dtext%2Dsize%2Dadjust%3A100%25%3B%2Dms%2Doverflow%2Dstyle%3Ascrollbar%3B%2Dwebkit%2Dtap%2Dhighlight%2Dcolor%3Atransparent%7D%40%2Dms%2Dviewport%7Bwidth%3Adevice%2Dwidth%7Darticle%2Caside%2Cfigcaption%2Cfigure%2Cfooter%2Cheader%2Chgroup%2Cmain%2Cnav%2Csection%7Bdisplay%3Ablock%7Dbody%7Bmargin%3A0%3Bfont%2Dfamily%3A%2Dapple%2Dsystem%2CBlinkMacSystemFont%2C%22Segoe%20UI%22%2CRoboto%2C%22Helvetica%20Neue%22%2CArial%2Csans%2Dserif%2C%22Apple%20Color%20Emoji%22%2C%22Segoe%20UI%20Emoji%22%2C%22Segoe%20UI%20Symbol%22%3Bfont%2Dsize%3A1rem%3Bfont%2Dweight%3A400%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23212529%3Btext%2Dalign%3Aleft%3Bbackground%2Dcolor%3A%23fff%7D%5Btabindex%3D%22%2D1%22%5D%3Afocus%7Boutline%3A0%21important%7Dhr%7Bbox%2Dsizing%3Acontent%2Dbox%3Bheight%3A0%3Boverflow%3Avisible%7Dh1%2Ch2%2Ch3%2Ch4%2Ch5%2Ch6%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A%2E5rem%7Dp%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A1rem%7Dabbr%5Bdata%2Doriginal%2Dtitle%5D%2Cabbr%5Btitle%5D%7Btext%2Ddecoration%3Aunderline%3B%2Dwebkit%2Dtext%2Ddecoration%3Aunderline%20dotted%3Btext%2Ddecoration%3Aunderline%20dotted%3Bcursor%3Ahelp%3Bborder%2Dbottom%3A0%7Daddress%7Bmargin%2Dbottom%3A1rem%3Bfont%2Dstyle%3Anormal%3Bline%2Dheight%3Ainherit%7Ddl%2Col%2Cul%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A1rem%7Dol%20ol%2Col%20ul%2Cul%20ol%2Cul%20ul%7Bmargin%2Dbottom%3A0%7Ddt%7Bfont%2Dweight%3A700%7Ddd%7Bmargin%2Dbottom%3A%2E5rem%3Bmargin%2Dleft%3A0%7Dblockquote%7Bmargin%3A0%200%201rem%7Ddfn%7Bfont%2Dstyle%3Aitalic%7Db%2Cstrong%7Bfont%2Dweight%3Abolder%7Dsmall%7Bfont%2Dsize%3A80%25%7Dsub%2Csup%7Bposition%3Arelative%3Bfont%2Dsize%3A75%25%3Bline%2Dheight%3A0%3Bvertical%2Dalign%3Abaseline%7Dsub%7Bbottom%3A%2D%2E25em%7Dsup%7Btop%3A%2D%2E5em%7Da%7Bcolor%3A%23007bff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3Atransparent%3B%2Dwebkit%2Dtext%2Ddecoration%2Dskip%3Aobjects%7Da%3Ahover%7Bcolor%3A%230056b3%3Btext%2Ddecoration%3Aunderline%7Da%3Anot%28%5Bhref%5D%29%3Anot%28%5Btabindex%5D%29%7Bcolor%3Ainherit%3Btext%2Ddecoration%3Anone%7Da%3Anot%28%5Bhref%5D%29%3Anot%28%5Btabindex%5D%29%3Afocus%2Ca%3Anot%28%5Bhref%5D%29%3Anot%28%5Btabindex%5D%29%3Ahover%7Bcolor%3Ainherit%3Btext%2Ddecoration%3Anone%7Da%3Anot%28%5Bhref%5D%29%3Anot%28%5Btabindex%5D%29%3Afocus%7Boutline%3A0%7Dcode%2Ckbd%2Cpre%2Csamp%7Bfont%2Dfamily%3ASFMono%2DRegular%2CMenlo%2CMonaco%2CConsolas%2C%22Liberation%20Mono%22%2C%22Courier%20New%22%2Cmonospace%3Bfont%2Dsize%3A1em%7Dpre%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A1rem%3Boverflow%3Aauto%3B%2Dms%2Doverflow%2Dstyle%3Ascrollbar%7Dfigure%7Bmargin%3A0%200%201rem%7Dimg%7Bvertical%2Dalign%3Amiddle%3Bborder%2Dstyle%3Anone%7Dsvg%3Anot%28%3Aroot%29%7Boverflow%3Ahidden%7Dtable%7Bborder%2Dcollapse%3Acollapse%7Dcaption%7Bpadding%2Dtop%3A%2E75rem%3Bpadding%2Dbottom%3A%2E75rem%3Bcolor%3A%236c757d%3Btext%2Dalign%3Aleft%3Bcaption%2Dside%3Abottom%7Dth%7Btext%2Dalign%3Ainherit%7Dlabel%7Bdisplay%3Ainline%2Dblock%3Bmargin%2Dbottom%3A%2E5rem%7Dbutton%7Bborder%2Dradius%3A0%7Dbutton%3Afocus%7Boutline%3A1px%20dotted%3Boutline%3A5px%20auto%20%2Dwebkit%2Dfocus%2Dring%2Dcolor%7Dbutton%2Cinput%2Coptgroup%2Cselect%2Ctextarea%7Bmargin%3A0%3Bfont%2Dfamily%3Ainherit%3Bfont%2Dsize%3Ainherit%3Bline%2Dheight%3Ainherit%7Dbutton%2Cinput%7Boverflow%3Avisible%7Dbutton%2Cselect%7Btext%2Dtransform%3Anone%7D%5Btype%3Dreset%5D%2C%5Btype%3Dsubmit%5D%2Cbutton%2Chtml%20%5Btype%3Dbutton%5D%7B%2Dwebkit%2Dappearance%3Abutton%7D%5Btype%3Dbutton%5D%3A%3A%2Dmoz%2Dfocus%2Dinner%2C%5Btype%3Dreset%5D%3A%3A%2Dmoz%2Dfocus%2Dinner%2C%5Btype%3Dsubmit%5D%3A%3A%2Dmoz%2Dfocus%2Dinner%2Cbutton%3A%3A%2Dmoz%2Dfocus%2Dinner%7Bpadding%3A0%3Bborder%2Dstyle%3Anone%7Dinput%5Btype%3Dcheckbox%5D%2Cinput%5Btype%3Dradio%5D%7Bbox%2Dsizing%3Aborder%2Dbox%3Bpadding%3A0%7Dinput%5Btype%3Ddate%5D%2Cinput%5Btype%3Ddatetime%2Dlocal%5D%2Cinput%5Btype%3Dmonth%5D%2Cinput%5Btype%3Dtime%5D%7B%2Dwebkit%2Dappearance%3Alistbox%7Dtextarea%7Boverflow%3Aauto%3Bresize%3Avertical%7Dfieldset%7Bmin%2Dwidth%3A0%3Bpadding%3A0%3Bmargin%3A0%3Bborder%3A0%7Dlegend%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Bmax%2Dwidth%3A100%25%3Bpadding%3A0%3Bmargin%2Dbottom%3A%2E5rem%3Bfont%2Dsize%3A1%2E5rem%3Bline%2Dheight%3Ainherit%3Bcolor%3Ainherit%3Bwhite%2Dspace%3Anormal%7Dprogress%7Bvertical%2Dalign%3Abaseline%7D%5Btype%3Dnumber%5D%3A%3A%2Dwebkit%2Dinner%2Dspin%2Dbutton%2C%5Btype%3Dnumber%5D%3A%3A%2Dwebkit%2Douter%2Dspin%2Dbutton%7Bheight%3Aauto%7D%5Btype%3Dsearch%5D%7Boutline%2Doffset%3A%2D2px%3B%2Dwebkit%2Dappearance%3Anone%7D%5Btype%3Dsearch%5D%3A%3A%2Dwebkit%2Dsearch%2Dcancel%2Dbutton%2C%5Btype%3Dsearch%5D%3A%3A%2Dwebkit%2Dsearch%2Ddecoration%7B%2Dwebkit%2Dappearance%3Anone%7D%3A%3A%2Dwebkit%2Dfile%2Dupload%2Dbutton%7Bfont%3Ainherit%3B%2Dwebkit%2Dappearance%3Abutton%7Doutput%7Bdisplay%3Ainline%2Dblock%7Dsummary%7Bdisplay%3Alist%2Ditem%3Bcursor%3Apointer%7Dtemplate%7Bdisplay%3Anone%7D%5Bhidden%5D%7Bdisplay%3Anone%21important%7D%2Eh1%2C%2Eh2%2C%2Eh3%2C%2Eh4%2C%2Eh5%2C%2Eh6%2Ch1%2Ch2%2Ch3%2Ch4%2Ch5%2Ch6%7Bmargin%2Dbottom%3A%2E5rem%3Bfont%2Dfamily%3Ainherit%3Bfont%2Dweight%3A500%3Bline%2Dheight%3A1%2E2%3Bcolor%3Ainherit%7D%2Eh1%2Ch1%7Bfont%2Dsize%3A2%2E5rem%7D%2Eh2%2Ch2%7Bfont%2Dsize%3A2rem%7D%2Eh3%2Ch3%7Bfont%2Dsize%3A1%2E75rem%7D%2Eh4%2Ch4%7Bfont%2Dsize%3A1%2E5rem%7D%2Eh5%2Ch5%7Bfont%2Dsize%3A1%2E25rem%7D%2Eh6%2Ch6%7Bfont%2Dsize%3A1rem%7D%2Elead%7Bfont%2Dsize%3A1%2E25rem%3Bfont%2Dweight%3A300%7D%2Edisplay%2D1%7Bfont%2Dsize%3A6rem%3Bfont%2Dweight%3A300%3Bline%2Dheight%3A1%2E2%7D%2Edisplay%2D2%7Bfont%2Dsize%3A5%2E5rem%3Bfont%2Dweight%3A300%3Bline%2Dheight%3A1%2E2%7D%2Edisplay%2D3%7Bfont%2Dsize%3A4%2E5rem%3Bfont%2Dweight%3A300%3Bline%2Dheight%3A1%2E2%7D%2Edisplay%2D4%7Bfont%2Dsize%3A3%2E5rem%3Bfont%2Dweight%3A300%3Bline%2Dheight%3A1%2E2%7Dhr%7Bmargin%2Dtop%3A1rem%3Bmargin%2Dbottom%3A1rem%3Bborder%3A0%3Bborder%2Dtop%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E1%29%7D%2Esmall%2Csmall%7Bfont%2Dsize%3A80%25%3Bfont%2Dweight%3A400%7D%2Emark%2Cmark%7Bpadding%3A%2E2em%3Bbackground%2Dcolor%3A%23fcf8e3%7D%2Elist%2Dunstyled%7Bpadding%2Dleft%3A0%3Blist%2Dstyle%3Anone%7D%2Elist%2Dinline%7Bpadding%2Dleft%3A0%3Blist%2Dstyle%3Anone%7D%2Elist%2Dinline%2Ditem%7Bdisplay%3Ainline%2Dblock%7D%2Elist%2Dinline%2Ditem%3Anot%28%3Alast%2Dchild%29%7Bmargin%2Dright%3A%2E5rem%7D%2Einitialism%7Bfont%2Dsize%3A90%25%3Btext%2Dtransform%3Auppercase%7D%2Eblockquote%7Bmargin%2Dbottom%3A1rem%3Bfont%2Dsize%3A1%2E25rem%7D%2Eblockquote%2Dfooter%7Bdisplay%3Ablock%3Bfont%2Dsize%3A80%25%3Bcolor%3A%236c757d%7D%2Eblockquote%2Dfooter%3A%3Abefore%7Bcontent%3A%22%5C2014%20%5C00A0%22%7D%2Eimg%2Dfluid%7Bmax%2Dwidth%3A100%25%3Bheight%3Aauto%7D%2Eimg%2Dthumbnail%7Bpadding%3A%2E25rem%3Bbackground%2Dcolor%3A%23fff%3Bborder%3A1px%20solid%20%23dee2e6%3Bborder%2Dradius%3A%2E25rem%3Bmax%2Dwidth%3A100%25%3Bheight%3Aauto%7D%2Efigure%7Bdisplay%3Ainline%2Dblock%7D%2Efigure%2Dimg%7Bmargin%2Dbottom%3A%2E5rem%3Bline%2Dheight%3A1%7D%2Efigure%2Dcaption%7Bfont%2Dsize%3A90%25%3Bcolor%3A%236c757d%7Dcode%7Bfont%2Dsize%3A87%2E5%25%3Bcolor%3A%23e83e8c%3Bword%2Dbreak%3Abreak%2Dword%7Da%3Ecode%7Bcolor%3Ainherit%7Dkbd%7Bpadding%3A%2E2rem%20%2E4rem%3Bfont%2Dsize%3A87%2E5%25%3Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23212529%3Bborder%2Dradius%3A%2E2rem%7Dkbd%20kbd%7Bpadding%3A0%3Bfont%2Dsize%3A100%25%3Bfont%2Dweight%3A700%7Dpre%7Bdisplay%3Ablock%3Bfont%2Dsize%3A87%2E5%25%3Bcolor%3A%23212529%7Dpre%20code%7Bfont%2Dsize%3Ainherit%3Bcolor%3Ainherit%3Bword%2Dbreak%3Anormal%7D%2Epre%2Dscrollable%7Bmax%2Dheight%3A340px%3Boverflow%2Dy%3Ascroll%7D%2Econtainer%7Bwidth%3A100%25%3Bpadding%2Dright%3A15px%3Bpadding%2Dleft%3A15px%3Bmargin%2Dright%3Aauto%3Bmargin%2Dleft%3Aauto%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Econtainer%7Bmax%2Dwidth%3A540px%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Econtainer%7Bmax%2Dwidth%3A720px%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Econtainer%7Bmax%2Dwidth%3A960px%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Econtainer%7Bmax%2Dwidth%3A1140px%7D%7D%2Econtainer%2Dfluid%7Bwidth%3A100%25%3Bpadding%2Dright%3A15px%3Bpadding%2Dleft%3A15px%3Bmargin%2Dright%3Aauto%3Bmargin%2Dleft%3Aauto%7D%2Erow%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3Bmargin%2Dright%3A%2D15px%3Bmargin%2Dleft%3A%2D15px%7D%2Eno%2Dgutters%7Bmargin%2Dright%3A0%3Bmargin%2Dleft%3A0%7D%2Eno%2Dgutters%3E%2Ecol%2C%2Eno%2Dgutters%3E%5Bclass%2A%3Dcol%2D%5D%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%2Ecol%2C%2Ecol%2D1%2C%2Ecol%2D10%2C%2Ecol%2D11%2C%2Ecol%2D12%2C%2Ecol%2D2%2C%2Ecol%2D3%2C%2Ecol%2D4%2C%2Ecol%2D5%2C%2Ecol%2D6%2C%2Ecol%2D7%2C%2Ecol%2D8%2C%2Ecol%2D9%2C%2Ecol%2Dauto%2C%2Ecol%2Dlg%2C%2Ecol%2Dlg%2D1%2C%2Ecol%2Dlg%2D10%2C%2Ecol%2Dlg%2D11%2C%2Ecol%2Dlg%2D12%2C%2Ecol%2Dlg%2D2%2C%2Ecol%2Dlg%2D3%2C%2Ecol%2Dlg%2D4%2C%2Ecol%2Dlg%2D5%2C%2Ecol%2Dlg%2D6%2C%2Ecol%2Dlg%2D7%2C%2Ecol%2Dlg%2D8%2C%2Ecol%2Dlg%2D9%2C%2Ecol%2Dlg%2Dauto%2C%2Ecol%2Dmd%2C%2Ecol%2Dmd%2D1%2C%2Ecol%2Dmd%2D10%2C%2Ecol%2Dmd%2D11%2C%2Ecol%2Dmd%2D12%2C%2Ecol%2Dmd%2D2%2C%2Ecol%2Dmd%2D3%2C%2Ecol%2Dmd%2D4%2C%2Ecol%2Dmd%2D5%2C%2Ecol%2Dmd%2D6%2C%2Ecol%2Dmd%2D7%2C%2Ecol%2Dmd%2D8%2C%2Ecol%2Dmd%2D9%2C%2Ecol%2Dmd%2Dauto%2C%2Ecol%2Dsm%2C%2Ecol%2Dsm%2D1%2C%2Ecol%2Dsm%2D10%2C%2Ecol%2Dsm%2D11%2C%2Ecol%2Dsm%2D12%2C%2Ecol%2Dsm%2D2%2C%2Ecol%2Dsm%2D3%2C%2Ecol%2Dsm%2D4%2C%2Ecol%2Dsm%2D5%2C%2Ecol%2Dsm%2D6%2C%2Ecol%2Dsm%2D7%2C%2Ecol%2Dsm%2D8%2C%2Ecol%2Dsm%2D9%2C%2Ecol%2Dsm%2Dauto%2C%2Ecol%2Dxl%2C%2Ecol%2Dxl%2D1%2C%2Ecol%2Dxl%2D10%2C%2Ecol%2Dxl%2D11%2C%2Ecol%2Dxl%2D12%2C%2Ecol%2Dxl%2D2%2C%2Ecol%2Dxl%2D3%2C%2Ecol%2Dxl%2D4%2C%2Ecol%2Dxl%2D5%2C%2Ecol%2Dxl%2D6%2C%2Ecol%2Dxl%2D7%2C%2Ecol%2Dxl%2D8%2C%2Ecol%2Dxl%2D9%2C%2Ecol%2Dxl%2Dauto%7Bposition%3Arelative%3Bwidth%3A100%25%3Bmin%2Dheight%3A1px%3Bpadding%2Dright%3A15px%3Bpadding%2Dleft%3A15px%7D%2Ecol%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Bmax%2Dwidth%3A100%25%7D%2Ecol%2Dauto%7B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3Bwidth%3Aauto%3Bmax%2Dwidth%3Anone%7D%2Ecol%2D1%7B%2Dms%2Dflex%3A0%200%208%2E333333%25%3Bflex%3A0%200%208%2E333333%25%3Bmax%2Dwidth%3A8%2E333333%25%7D%2Ecol%2D2%7B%2Dms%2Dflex%3A0%200%2016%2E666667%25%3Bflex%3A0%200%2016%2E666667%25%3Bmax%2Dwidth%3A16%2E666667%25%7D%2Ecol%2D3%7B%2Dms%2Dflex%3A0%200%2025%25%3Bflex%3A0%200%2025%25%3Bmax%2Dwidth%3A25%25%7D%2Ecol%2D4%7B%2Dms%2Dflex%3A0%200%2033%2E333333%25%3Bflex%3A0%200%2033%2E333333%25%3Bmax%2Dwidth%3A33%2E333333%25%7D%2Ecol%2D5%7B%2Dms%2Dflex%3A0%200%2041%2E666667%25%3Bflex%3A0%200%2041%2E666667%25%3Bmax%2Dwidth%3A41%2E666667%25%7D%2Ecol%2D6%7B%2Dms%2Dflex%3A0%200%2050%25%3Bflex%3A0%200%2050%25%3Bmax%2Dwidth%3A50%25%7D%2Ecol%2D7%7B%2Dms%2Dflex%3A0%200%2058%2E333333%25%3Bflex%3A0%200%2058%2E333333%25%3Bmax%2Dwidth%3A58%2E333333%25%7D%2Ecol%2D8%7B%2Dms%2Dflex%3A0%200%2066%2E666667%25%3Bflex%3A0%200%2066%2E666667%25%3Bmax%2Dwidth%3A66%2E666667%25%7D%2Ecol%2D9%7B%2Dms%2Dflex%3A0%200%2075%25%3Bflex%3A0%200%2075%25%3Bmax%2Dwidth%3A75%25%7D%2Ecol%2D10%7B%2Dms%2Dflex%3A0%200%2083%2E333333%25%3Bflex%3A0%200%2083%2E333333%25%3Bmax%2Dwidth%3A83%2E333333%25%7D%2Ecol%2D11%7B%2Dms%2Dflex%3A0%200%2091%2E666667%25%3Bflex%3A0%200%2091%2E666667%25%3Bmax%2Dwidth%3A91%2E666667%25%7D%2Ecol%2D12%7B%2Dms%2Dflex%3A0%200%20100%25%3Bflex%3A0%200%20100%25%3Bmax%2Dwidth%3A100%25%7D%2Eorder%2Dfirst%7B%2Dms%2Dflex%2Dorder%3A%2D1%3Border%3A%2D1%7D%2Eorder%2Dlast%7B%2Dms%2Dflex%2Dorder%3A13%3Border%3A13%7D%2Eorder%2D0%7B%2Dms%2Dflex%2Dorder%3A0%3Border%3A0%7D%2Eorder%2D1%7B%2Dms%2Dflex%2Dorder%3A1%3Border%3A1%7D%2Eorder%2D2%7B%2Dms%2Dflex%2Dorder%3A2%3Border%3A2%7D%2Eorder%2D3%7B%2Dms%2Dflex%2Dorder%3A3%3Border%3A3%7D%2Eorder%2D4%7B%2Dms%2Dflex%2Dorder%3A4%3Border%3A4%7D%2Eorder%2D5%7B%2Dms%2Dflex%2Dorder%3A5%3Border%3A5%7D%2Eorder%2D6%7B%2Dms%2Dflex%2Dorder%3A6%3Border%3A6%7D%2Eorder%2D7%7B%2Dms%2Dflex%2Dorder%3A7%3Border%3A7%7D%2Eorder%2D8%7B%2Dms%2Dflex%2Dorder%3A8%3Border%3A8%7D%2Eorder%2D9%7B%2Dms%2Dflex%2Dorder%3A9%3Border%3A9%7D%2Eorder%2D10%7B%2Dms%2Dflex%2Dorder%3A10%3Border%3A10%7D%2Eorder%2D11%7B%2Dms%2Dflex%2Dorder%3A11%3Border%3A11%7D%2Eorder%2D12%7B%2Dms%2Dflex%2Dorder%3A12%3Border%3A12%7D%2Eoffset%2D1%7Bmargin%2Dleft%3A8%2E333333%25%7D%2Eoffset%2D2%7Bmargin%2Dleft%3A16%2E666667%25%7D%2Eoffset%2D3%7Bmargin%2Dleft%3A25%25%7D%2Eoffset%2D4%7Bmargin%2Dleft%3A33%2E333333%25%7D%2Eoffset%2D5%7Bmargin%2Dleft%3A41%2E666667%25%7D%2Eoffset%2D6%7Bmargin%2Dleft%3A50%25%7D%2Eoffset%2D7%7Bmargin%2Dleft%3A58%2E333333%25%7D%2Eoffset%2D8%7Bmargin%2Dleft%3A66%2E666667%25%7D%2Eoffset%2D9%7Bmargin%2Dleft%3A75%25%7D%2Eoffset%2D10%7Bmargin%2Dleft%3A83%2E333333%25%7D%2Eoffset%2D11%7Bmargin%2Dleft%3A91%2E666667%25%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ecol%2Dsm%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Bmax%2Dwidth%3A100%25%7D%2Ecol%2Dsm%2Dauto%7B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3Bwidth%3Aauto%3Bmax%2Dwidth%3Anone%7D%2Ecol%2Dsm%2D1%7B%2Dms%2Dflex%3A0%200%208%2E333333%25%3Bflex%3A0%200%208%2E333333%25%3Bmax%2Dwidth%3A8%2E333333%25%7D%2Ecol%2Dsm%2D2%7B%2Dms%2Dflex%3A0%200%2016%2E666667%25%3Bflex%3A0%200%2016%2E666667%25%3Bmax%2Dwidth%3A16%2E666667%25%7D%2Ecol%2Dsm%2D3%7B%2Dms%2Dflex%3A0%200%2025%25%3Bflex%3A0%200%2025%25%3Bmax%2Dwidth%3A25%25%7D%2Ecol%2Dsm%2D4%7B%2Dms%2Dflex%3A0%200%2033%2E333333%25%3Bflex%3A0%200%2033%2E333333%25%3Bmax%2Dwidth%3A33%2E333333%25%7D%2Ecol%2Dsm%2D5%7B%2Dms%2Dflex%3A0%200%2041%2E666667%25%3Bflex%3A0%200%2041%2E666667%25%3Bmax%2Dwidth%3A41%2E666667%25%7D%2Ecol%2Dsm%2D6%7B%2Dms%2Dflex%3A0%200%2050%25%3Bflex%3A0%200%2050%25%3Bmax%2Dwidth%3A50%25%7D%2Ecol%2Dsm%2D7%7B%2Dms%2Dflex%3A0%200%2058%2E333333%25%3Bflex%3A0%200%2058%2E333333%25%3Bmax%2Dwidth%3A58%2E333333%25%7D%2Ecol%2Dsm%2D8%7B%2Dms%2Dflex%3A0%200%2066%2E666667%25%3Bflex%3A0%200%2066%2E666667%25%3Bmax%2Dwidth%3A66%2E666667%25%7D%2Ecol%2Dsm%2D9%7B%2Dms%2Dflex%3A0%200%2075%25%3Bflex%3A0%200%2075%25%3Bmax%2Dwidth%3A75%25%7D%2Ecol%2Dsm%2D10%7B%2Dms%2Dflex%3A0%200%2083%2E333333%25%3Bflex%3A0%200%2083%2E333333%25%3Bmax%2Dwidth%3A83%2E333333%25%7D%2Ecol%2Dsm%2D11%7B%2Dms%2Dflex%3A0%200%2091%2E666667%25%3Bflex%3A0%200%2091%2E666667%25%3Bmax%2Dwidth%3A91%2E666667%25%7D%2Ecol%2Dsm%2D12%7B%2Dms%2Dflex%3A0%200%20100%25%3Bflex%3A0%200%20100%25%3Bmax%2Dwidth%3A100%25%7D%2Eorder%2Dsm%2Dfirst%7B%2Dms%2Dflex%2Dorder%3A%2D1%3Border%3A%2D1%7D%2Eorder%2Dsm%2Dlast%7B%2Dms%2Dflex%2Dorder%3A13%3Border%3A13%7D%2Eorder%2Dsm%2D0%7B%2Dms%2Dflex%2Dorder%3A0%3Border%3A0%7D%2Eorder%2Dsm%2D1%7B%2Dms%2Dflex%2Dorder%3A1%3Border%3A1%7D%2Eorder%2Dsm%2D2%7B%2Dms%2Dflex%2Dorder%3A2%3Border%3A2%7D%2Eorder%2Dsm%2D3%7B%2Dms%2Dflex%2Dorder%3A3%3Border%3A3%7D%2Eorder%2Dsm%2D4%7B%2Dms%2Dflex%2Dorder%3A4%3Border%3A4%7D%2Eorder%2Dsm%2D5%7B%2Dms%2Dflex%2Dorder%3A5%3Border%3A5%7D%2Eorder%2Dsm%2D6%7B%2Dms%2Dflex%2Dorder%3A6%3Border%3A6%7D%2Eorder%2Dsm%2D7%7B%2Dms%2Dflex%2Dorder%3A7%3Border%3A7%7D%2Eorder%2Dsm%2D8%7B%2Dms%2Dflex%2Dorder%3A8%3Border%3A8%7D%2Eorder%2Dsm%2D9%7B%2Dms%2Dflex%2Dorder%3A9%3Border%3A9%7D%2Eorder%2Dsm%2D10%7B%2Dms%2Dflex%2Dorder%3A10%3Border%3A10%7D%2Eorder%2Dsm%2D11%7B%2Dms%2Dflex%2Dorder%3A11%3Border%3A11%7D%2Eorder%2Dsm%2D12%7B%2Dms%2Dflex%2Dorder%3A12%3Border%3A12%7D%2Eoffset%2Dsm%2D0%7Bmargin%2Dleft%3A0%7D%2Eoffset%2Dsm%2D1%7Bmargin%2Dleft%3A8%2E333333%25%7D%2Eoffset%2Dsm%2D2%7Bmargin%2Dleft%3A16%2E666667%25%7D%2Eoffset%2Dsm%2D3%7Bmargin%2Dleft%3A25%25%7D%2Eoffset%2Dsm%2D4%7Bmargin%2Dleft%3A33%2E333333%25%7D%2Eoffset%2Dsm%2D5%7Bmargin%2Dleft%3A41%2E666667%25%7D%2Eoffset%2Dsm%2D6%7Bmargin%2Dleft%3A50%25%7D%2Eoffset%2Dsm%2D7%7Bmargin%2Dleft%3A58%2E333333%25%7D%2Eoffset%2Dsm%2D8%7Bmargin%2Dleft%3A66%2E666667%25%7D%2Eoffset%2Dsm%2D9%7Bmargin%2Dleft%3A75%25%7D%2Eoffset%2Dsm%2D10%7Bmargin%2Dleft%3A83%2E333333%25%7D%2Eoffset%2Dsm%2D11%7Bmargin%2Dleft%3A91%2E666667%25%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Ecol%2Dmd%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Bmax%2Dwidth%3A100%25%7D%2Ecol%2Dmd%2Dauto%7B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3Bwidth%3Aauto%3Bmax%2Dwidth%3Anone%7D%2Ecol%2Dmd%2D1%7B%2Dms%2Dflex%3A0%200%208%2E333333%25%3Bflex%3A0%200%208%2E333333%25%3Bmax%2Dwidth%3A8%2E333333%25%7D%2Ecol%2Dmd%2D2%7B%2Dms%2Dflex%3A0%200%2016%2E666667%25%3Bflex%3A0%200%2016%2E666667%25%3Bmax%2Dwidth%3A16%2E666667%25%7D%2Ecol%2Dmd%2D3%7B%2Dms%2Dflex%3A0%200%2025%25%3Bflex%3A0%200%2025%25%3Bmax%2Dwidth%3A25%25%7D%2Ecol%2Dmd%2D4%7B%2Dms%2Dflex%3A0%200%2033%2E333333%25%3Bflex%3A0%200%2033%2E333333%25%3Bmax%2Dwidth%3A33%2E333333%25%7D%2Ecol%2Dmd%2D5%7B%2Dms%2Dflex%3A0%200%2041%2E666667%25%3Bflex%3A0%200%2041%2E666667%25%3Bmax%2Dwidth%3A41%2E666667%25%7D%2Ecol%2Dmd%2D6%7B%2Dms%2Dflex%3A0%200%2050%25%3Bflex%3A0%200%2050%25%3Bmax%2Dwidth%3A50%25%7D%2Ecol%2Dmd%2D7%7B%2Dms%2Dflex%3A0%200%2058%2E333333%25%3Bflex%3A0%200%2058%2E333333%25%3Bmax%2Dwidth%3A58%2E333333%25%7D%2Ecol%2Dmd%2D8%7B%2Dms%2Dflex%3A0%200%2066%2E666667%25%3Bflex%3A0%200%2066%2E666667%25%3Bmax%2Dwidth%3A66%2E666667%25%7D%2Ecol%2Dmd%2D9%7B%2Dms%2Dflex%3A0%200%2075%25%3Bflex%3A0%200%2075%25%3Bmax%2Dwidth%3A75%25%7D%2Ecol%2Dmd%2D10%7B%2Dms%2Dflex%3A0%200%2083%2E333333%25%3Bflex%3A0%200%2083%2E333333%25%3Bmax%2Dwidth%3A83%2E333333%25%7D%2Ecol%2Dmd%2D11%7B%2Dms%2Dflex%3A0%200%2091%2E666667%25%3Bflex%3A0%200%2091%2E666667%25%3Bmax%2Dwidth%3A91%2E666667%25%7D%2Ecol%2Dmd%2D12%7B%2Dms%2Dflex%3A0%200%20100%25%3Bflex%3A0%200%20100%25%3Bmax%2Dwidth%3A100%25%7D%2Eorder%2Dmd%2Dfirst%7B%2Dms%2Dflex%2Dorder%3A%2D1%3Border%3A%2D1%7D%2Eorder%2Dmd%2Dlast%7B%2Dms%2Dflex%2Dorder%3A13%3Border%3A13%7D%2Eorder%2Dmd%2D0%7B%2Dms%2Dflex%2Dorder%3A0%3Border%3A0%7D%2Eorder%2Dmd%2D1%7B%2Dms%2Dflex%2Dorder%3A1%3Border%3A1%7D%2Eorder%2Dmd%2D2%7B%2Dms%2Dflex%2Dorder%3A2%3Border%3A2%7D%2Eorder%2Dmd%2D3%7B%2Dms%2Dflex%2Dorder%3A3%3Border%3A3%7D%2Eorder%2Dmd%2D4%7B%2Dms%2Dflex%2Dorder%3A4%3Border%3A4%7D%2Eorder%2Dmd%2D5%7B%2Dms%2Dflex%2Dorder%3A5%3Border%3A5%7D%2Eorder%2Dmd%2D6%7B%2Dms%2Dflex%2Dorder%3A6%3Border%3A6%7D%2Eorder%2Dmd%2D7%7B%2Dms%2Dflex%2Dorder%3A7%3Border%3A7%7D%2Eorder%2Dmd%2D8%7B%2Dms%2Dflex%2Dorder%3A8%3Border%3A8%7D%2Eorder%2Dmd%2D9%7B%2Dms%2Dflex%2Dorder%3A9%3Border%3A9%7D%2Eorder%2Dmd%2D10%7B%2Dms%2Dflex%2Dorder%3A10%3Border%3A10%7D%2Eorder%2Dmd%2D11%7B%2Dms%2Dflex%2Dorder%3A11%3Border%3A11%7D%2Eorder%2Dmd%2D12%7B%2Dms%2Dflex%2Dorder%3A12%3Border%3A12%7D%2Eoffset%2Dmd%2D0%7Bmargin%2Dleft%3A0%7D%2Eoffset%2Dmd%2D1%7Bmargin%2Dleft%3A8%2E333333%25%7D%2Eoffset%2Dmd%2D2%7Bmargin%2Dleft%3A16%2E666667%25%7D%2Eoffset%2Dmd%2D3%7Bmargin%2Dleft%3A25%25%7D%2Eoffset%2Dmd%2D4%7Bmargin%2Dleft%3A33%2E333333%25%7D%2Eoffset%2Dmd%2D5%7Bmargin%2Dleft%3A41%2E666667%25%7D%2Eoffset%2Dmd%2D6%7Bmargin%2Dleft%3A50%25%7D%2Eoffset%2Dmd%2D7%7Bmargin%2Dleft%3A58%2E333333%25%7D%2Eoffset%2Dmd%2D8%7Bmargin%2Dleft%3A66%2E666667%25%7D%2Eoffset%2Dmd%2D9%7Bmargin%2Dleft%3A75%25%7D%2Eoffset%2Dmd%2D10%7Bmargin%2Dleft%3A83%2E333333%25%7D%2Eoffset%2Dmd%2D11%7Bmargin%2Dleft%3A91%2E666667%25%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Ecol%2Dlg%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Bmax%2Dwidth%3A100%25%7D%2Ecol%2Dlg%2Dauto%7B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3Bwidth%3Aauto%3Bmax%2Dwidth%3Anone%7D%2Ecol%2Dlg%2D1%7B%2Dms%2Dflex%3A0%200%208%2E333333%25%3Bflex%3A0%200%208%2E333333%25%3Bmax%2Dwidth%3A8%2E333333%25%7D%2Ecol%2Dlg%2D2%7B%2Dms%2Dflex%3A0%200%2016%2E666667%25%3Bflex%3A0%200%2016%2E666667%25%3Bmax%2Dwidth%3A16%2E666667%25%7D%2Ecol%2Dlg%2D3%7B%2Dms%2Dflex%3A0%200%2025%25%3Bflex%3A0%200%2025%25%3Bmax%2Dwidth%3A25%25%7D%2Ecol%2Dlg%2D4%7B%2Dms%2Dflex%3A0%200%2033%2E333333%25%3Bflex%3A0%200%2033%2E333333%25%3Bmax%2Dwidth%3A33%2E333333%25%7D%2Ecol%2Dlg%2D5%7B%2Dms%2Dflex%3A0%200%2041%2E666667%25%3Bflex%3A0%200%2041%2E666667%25%3Bmax%2Dwidth%3A41%2E666667%25%7D%2Ecol%2Dlg%2D6%7B%2Dms%2Dflex%3A0%200%2050%25%3Bflex%3A0%200%2050%25%3Bmax%2Dwidth%3A50%25%7D%2Ecol%2Dlg%2D7%7B%2Dms%2Dflex%3A0%200%2058%2E333333%25%3Bflex%3A0%200%2058%2E333333%25%3Bmax%2Dwidth%3A58%2E333333%25%7D%2Ecol%2Dlg%2D8%7B%2Dms%2Dflex%3A0%200%2066%2E666667%25%3Bflex%3A0%200%2066%2E666667%25%3Bmax%2Dwidth%3A66%2E666667%25%7D%2Ecol%2Dlg%2D9%7B%2Dms%2Dflex%3A0%200%2075%25%3Bflex%3A0%200%2075%25%3Bmax%2Dwidth%3A75%25%7D%2Ecol%2Dlg%2D10%7B%2Dms%2Dflex%3A0%200%2083%2E333333%25%3Bflex%3A0%200%2083%2E333333%25%3Bmax%2Dwidth%3A83%2E333333%25%7D%2Ecol%2Dlg%2D11%7B%2Dms%2Dflex%3A0%200%2091%2E666667%25%3Bflex%3A0%200%2091%2E666667%25%3Bmax%2Dwidth%3A91%2E666667%25%7D%2Ecol%2Dlg%2D12%7B%2Dms%2Dflex%3A0%200%20100%25%3Bflex%3A0%200%20100%25%3Bmax%2Dwidth%3A100%25%7D%2Eorder%2Dlg%2Dfirst%7B%2Dms%2Dflex%2Dorder%3A%2D1%3Border%3A%2D1%7D%2Eorder%2Dlg%2Dlast%7B%2Dms%2Dflex%2Dorder%3A13%3Border%3A13%7D%2Eorder%2Dlg%2D0%7B%2Dms%2Dflex%2Dorder%3A0%3Border%3A0%7D%2Eorder%2Dlg%2D1%7B%2Dms%2Dflex%2Dorder%3A1%3Border%3A1%7D%2Eorder%2Dlg%2D2%7B%2Dms%2Dflex%2Dorder%3A2%3Border%3A2%7D%2Eorder%2Dlg%2D3%7B%2Dms%2Dflex%2Dorder%3A3%3Border%3A3%7D%2Eorder%2Dlg%2D4%7B%2Dms%2Dflex%2Dorder%3A4%3Border%3A4%7D%2Eorder%2Dlg%2D5%7B%2Dms%2Dflex%2Dorder%3A5%3Border%3A5%7D%2Eorder%2Dlg%2D6%7B%2Dms%2Dflex%2Dorder%3A6%3Border%3A6%7D%2Eorder%2Dlg%2D7%7B%2Dms%2Dflex%2Dorder%3A7%3Border%3A7%7D%2Eorder%2Dlg%2D8%7B%2Dms%2Dflex%2Dorder%3A8%3Border%3A8%7D%2Eorder%2Dlg%2D9%7B%2Dms%2Dflex%2Dorder%3A9%3Border%3A9%7D%2Eorder%2Dlg%2D10%7B%2Dms%2Dflex%2Dorder%3A10%3Border%3A10%7D%2Eorder%2Dlg%2D11%7B%2Dms%2Dflex%2Dorder%3A11%3Border%3A11%7D%2Eorder%2Dlg%2D12%7B%2Dms%2Dflex%2Dorder%3A12%3Border%3A12%7D%2Eoffset%2Dlg%2D0%7Bmargin%2Dleft%3A0%7D%2Eoffset%2Dlg%2D1%7Bmargin%2Dleft%3A8%2E333333%25%7D%2Eoffset%2Dlg%2D2%7Bmargin%2Dleft%3A16%2E666667%25%7D%2Eoffset%2Dlg%2D3%7Bmargin%2Dleft%3A25%25%7D%2Eoffset%2Dlg%2D4%7Bmargin%2Dleft%3A33%2E333333%25%7D%2Eoffset%2Dlg%2D5%7Bmargin%2Dleft%3A41%2E666667%25%7D%2Eoffset%2Dlg%2D6%7Bmargin%2Dleft%3A50%25%7D%2Eoffset%2Dlg%2D7%7Bmargin%2Dleft%3A58%2E333333%25%7D%2Eoffset%2Dlg%2D8%7Bmargin%2Dleft%3A66%2E666667%25%7D%2Eoffset%2Dlg%2D9%7Bmargin%2Dleft%3A75%25%7D%2Eoffset%2Dlg%2D10%7Bmargin%2Dleft%3A83%2E333333%25%7D%2Eoffset%2Dlg%2D11%7Bmargin%2Dleft%3A91%2E666667%25%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Ecol%2Dxl%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Bmax%2Dwidth%3A100%25%7D%2Ecol%2Dxl%2Dauto%7B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3Bwidth%3Aauto%3Bmax%2Dwidth%3Anone%7D%2Ecol%2Dxl%2D1%7B%2Dms%2Dflex%3A0%200%208%2E333333%25%3Bflex%3A0%200%208%2E333333%25%3Bmax%2Dwidth%3A8%2E333333%25%7D%2Ecol%2Dxl%2D2%7B%2Dms%2Dflex%3A0%200%2016%2E666667%25%3Bflex%3A0%200%2016%2E666667%25%3Bmax%2Dwidth%3A16%2E666667%25%7D%2Ecol%2Dxl%2D3%7B%2Dms%2Dflex%3A0%200%2025%25%3Bflex%3A0%200%2025%25%3Bmax%2Dwidth%3A25%25%7D%2Ecol%2Dxl%2D4%7B%2Dms%2Dflex%3A0%200%2033%2E333333%25%3Bflex%3A0%200%2033%2E333333%25%3Bmax%2Dwidth%3A33%2E333333%25%7D%2Ecol%2Dxl%2D5%7B%2Dms%2Dflex%3A0%200%2041%2E666667%25%3Bflex%3A0%200%2041%2E666667%25%3Bmax%2Dwidth%3A41%2E666667%25%7D%2Ecol%2Dxl%2D6%7B%2Dms%2Dflex%3A0%200%2050%25%3Bflex%3A0%200%2050%25%3Bmax%2Dwidth%3A50%25%7D%2Ecol%2Dxl%2D7%7B%2Dms%2Dflex%3A0%200%2058%2E333333%25%3Bflex%3A0%200%2058%2E333333%25%3Bmax%2Dwidth%3A58%2E333333%25%7D%2Ecol%2Dxl%2D8%7B%2Dms%2Dflex%3A0%200%2066%2E666667%25%3Bflex%3A0%200%2066%2E666667%25%3Bmax%2Dwidth%3A66%2E666667%25%7D%2Ecol%2Dxl%2D9%7B%2Dms%2Dflex%3A0%200%2075%25%3Bflex%3A0%200%2075%25%3Bmax%2Dwidth%3A75%25%7D%2Ecol%2Dxl%2D10%7B%2Dms%2Dflex%3A0%200%2083%2E333333%25%3Bflex%3A0%200%2083%2E333333%25%3Bmax%2Dwidth%3A83%2E333333%25%7D%2Ecol%2Dxl%2D11%7B%2Dms%2Dflex%3A0%200%2091%2E666667%25%3Bflex%3A0%200%2091%2E666667%25%3Bmax%2Dwidth%3A91%2E666667%25%7D%2Ecol%2Dxl%2D12%7B%2Dms%2Dflex%3A0%200%20100%25%3Bflex%3A0%200%20100%25%3Bmax%2Dwidth%3A100%25%7D%2Eorder%2Dxl%2Dfirst%7B%2Dms%2Dflex%2Dorder%3A%2D1%3Border%3A%2D1%7D%2Eorder%2Dxl%2Dlast%7B%2Dms%2Dflex%2Dorder%3A13%3Border%3A13%7D%2Eorder%2Dxl%2D0%7B%2Dms%2Dflex%2Dorder%3A0%3Border%3A0%7D%2Eorder%2Dxl%2D1%7B%2Dms%2Dflex%2Dorder%3A1%3Border%3A1%7D%2Eorder%2Dxl%2D2%7B%2Dms%2Dflex%2Dorder%3A2%3Border%3A2%7D%2Eorder%2Dxl%2D3%7B%2Dms%2Dflex%2Dorder%3A3%3Border%3A3%7D%2Eorder%2Dxl%2D4%7B%2Dms%2Dflex%2Dorder%3A4%3Border%3A4%7D%2Eorder%2Dxl%2D5%7B%2Dms%2Dflex%2Dorder%3A5%3Border%3A5%7D%2Eorder%2Dxl%2D6%7B%2Dms%2Dflex%2Dorder%3A6%3Border%3A6%7D%2Eorder%2Dxl%2D7%7B%2Dms%2Dflex%2Dorder%3A7%3Border%3A7%7D%2Eorder%2Dxl%2D8%7B%2Dms%2Dflex%2Dorder%3A8%3Border%3A8%7D%2Eorder%2Dxl%2D9%7B%2Dms%2Dflex%2Dorder%3A9%3Border%3A9%7D%2Eorder%2Dxl%2D10%7B%2Dms%2Dflex%2Dorder%3A10%3Border%3A10%7D%2Eorder%2Dxl%2D11%7B%2Dms%2Dflex%2Dorder%3A11%3Border%3A11%7D%2Eorder%2Dxl%2D12%7B%2Dms%2Dflex%2Dorder%3A12%3Border%3A12%7D%2Eoffset%2Dxl%2D0%7Bmargin%2Dleft%3A0%7D%2Eoffset%2Dxl%2D1%7Bmargin%2Dleft%3A8%2E333333%25%7D%2Eoffset%2Dxl%2D2%7Bmargin%2Dleft%3A16%2E666667%25%7D%2Eoffset%2Dxl%2D3%7Bmargin%2Dleft%3A25%25%7D%2Eoffset%2Dxl%2D4%7Bmargin%2Dleft%3A33%2E333333%25%7D%2Eoffset%2Dxl%2D5%7Bmargin%2Dleft%3A41%2E666667%25%7D%2Eoffset%2Dxl%2D6%7Bmargin%2Dleft%3A50%25%7D%2Eoffset%2Dxl%2D7%7Bmargin%2Dleft%3A58%2E333333%25%7D%2Eoffset%2Dxl%2D8%7Bmargin%2Dleft%3A66%2E666667%25%7D%2Eoffset%2Dxl%2D9%7Bmargin%2Dleft%3A75%25%7D%2Eoffset%2Dxl%2D10%7Bmargin%2Dleft%3A83%2E333333%25%7D%2Eoffset%2Dxl%2D11%7Bmargin%2Dleft%3A91%2E666667%25%7D%7D%2Etable%7Bwidth%3A100%25%3Bmax%2Dwidth%3A100%25%3Bmargin%2Dbottom%3A1rem%3Bbackground%2Dcolor%3Atransparent%7D%2Etable%20td%2C%2Etable%20th%7Bpadding%3A%2E75rem%3Bvertical%2Dalign%3Atop%3Bborder%2Dtop%3A1px%20solid%20%23dee2e6%7D%2Etable%20thead%20th%7Bvertical%2Dalign%3Abottom%3Bborder%2Dbottom%3A2px%20solid%20%23dee2e6%7D%2Etable%20tbody%2Btbody%7Bborder%2Dtop%3A2px%20solid%20%23dee2e6%7D%2Etable%20%2Etable%7Bbackground%2Dcolor%3A%23fff%7D%2Etable%2Dsm%20td%2C%2Etable%2Dsm%20th%7Bpadding%3A%2E3rem%7D%2Etable%2Dbordered%7Bborder%3A1px%20solid%20%23dee2e6%7D%2Etable%2Dbordered%20td%2C%2Etable%2Dbordered%20th%7Bborder%3A1px%20solid%20%23dee2e6%7D%2Etable%2Dbordered%20thead%20td%2C%2Etable%2Dbordered%20thead%20th%7Bborder%2Dbottom%2Dwidth%3A2px%7D%2Etable%2Dborderless%20tbody%2Btbody%2C%2Etable%2Dborderless%20td%2C%2Etable%2Dborderless%20th%2C%2Etable%2Dborderless%20thead%20th%7Bborder%3A0%7D%2Etable%2Dstriped%20tbody%20tr%3Anth%2Dof%2Dtype%28odd%29%7Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E05%29%7D%2Etable%2Dhover%20tbody%20tr%3Ahover%7Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E075%29%7D%2Etable%2Dprimary%2C%2Etable%2Dprimary%3Etd%2C%2Etable%2Dprimary%3Eth%7Bbackground%2Dcolor%3A%23b8daff%7D%2Etable%2Dhover%20%2Etable%2Dprimary%3Ahover%7Bbackground%2Dcolor%3A%239fcdff%7D%2Etable%2Dhover%20%2Etable%2Dprimary%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dprimary%3Ahover%3Eth%7Bbackground%2Dcolor%3A%239fcdff%7D%2Etable%2Dsecondary%2C%2Etable%2Dsecondary%3Etd%2C%2Etable%2Dsecondary%3Eth%7Bbackground%2Dcolor%3A%23d6d8db%7D%2Etable%2Dhover%20%2Etable%2Dsecondary%3Ahover%7Bbackground%2Dcolor%3A%23c8cbcf%7D%2Etable%2Dhover%20%2Etable%2Dsecondary%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dsecondary%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23c8cbcf%7D%2Etable%2Dsuccess%2C%2Etable%2Dsuccess%3Etd%2C%2Etable%2Dsuccess%3Eth%7Bbackground%2Dcolor%3A%23c3e6cb%7D%2Etable%2Dhover%20%2Etable%2Dsuccess%3Ahover%7Bbackground%2Dcolor%3A%23b1dfbb%7D%2Etable%2Dhover%20%2Etable%2Dsuccess%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dsuccess%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23b1dfbb%7D%2Etable%2Dinfo%2C%2Etable%2Dinfo%3Etd%2C%2Etable%2Dinfo%3Eth%7Bbackground%2Dcolor%3A%23bee5eb%7D%2Etable%2Dhover%20%2Etable%2Dinfo%3Ahover%7Bbackground%2Dcolor%3A%23abdde5%7D%2Etable%2Dhover%20%2Etable%2Dinfo%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dinfo%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23abdde5%7D%2Etable%2Dwarning%2C%2Etable%2Dwarning%3Etd%2C%2Etable%2Dwarning%3Eth%7Bbackground%2Dcolor%3A%23ffeeba%7D%2Etable%2Dhover%20%2Etable%2Dwarning%3Ahover%7Bbackground%2Dcolor%3A%23ffe8a1%7D%2Etable%2Dhover%20%2Etable%2Dwarning%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dwarning%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23ffe8a1%7D%2Etable%2Ddanger%2C%2Etable%2Ddanger%3Etd%2C%2Etable%2Ddanger%3Eth%7Bbackground%2Dcolor%3A%23f5c6cb%7D%2Etable%2Dhover%20%2Etable%2Ddanger%3Ahover%7Bbackground%2Dcolor%3A%23f1b0b7%7D%2Etable%2Dhover%20%2Etable%2Ddanger%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Ddanger%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23f1b0b7%7D%2Etable%2Dlight%2C%2Etable%2Dlight%3Etd%2C%2Etable%2Dlight%3Eth%7Bbackground%2Dcolor%3A%23fdfdfe%7D%2Etable%2Dhover%20%2Etable%2Dlight%3Ahover%7Bbackground%2Dcolor%3A%23ececf6%7D%2Etable%2Dhover%20%2Etable%2Dlight%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dlight%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23ececf6%7D%2Etable%2Ddark%2C%2Etable%2Ddark%3Etd%2C%2Etable%2Ddark%3Eth%7Bbackground%2Dcolor%3A%23c6c8ca%7D%2Etable%2Dhover%20%2Etable%2Ddark%3Ahover%7Bbackground%2Dcolor%3A%23b9bbbe%7D%2Etable%2Dhover%20%2Etable%2Ddark%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Ddark%3Ahover%3Eth%7Bbackground%2Dcolor%3A%23b9bbbe%7D%2Etable%2Dactive%2C%2Etable%2Dactive%3Etd%2C%2Etable%2Dactive%3Eth%7Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E075%29%7D%2Etable%2Dhover%20%2Etable%2Dactive%3Ahover%7Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E075%29%7D%2Etable%2Dhover%20%2Etable%2Dactive%3Ahover%3Etd%2C%2Etable%2Dhover%20%2Etable%2Dactive%3Ahover%3Eth%7Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E075%29%7D%2Etable%20%2Ethead%2Ddark%20th%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23212529%3Bborder%2Dcolor%3A%2332383e%7D%2Etable%20%2Ethead%2Dlight%20th%7Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dcolor%3A%23dee2e6%7D%2Etable%2Ddark%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23212529%7D%2Etable%2Ddark%20td%2C%2Etable%2Ddark%20th%2C%2Etable%2Ddark%20thead%20th%7Bborder%2Dcolor%3A%2332383e%7D%2Etable%2Ddark%2Etable%2Dbordered%7Bborder%3A0%7D%2Etable%2Ddark%2Etable%2Dstriped%20tbody%20tr%3Anth%2Dof%2Dtype%28odd%29%7Bbackground%2Dcolor%3Argba%28255%2C255%2C255%2C%2E05%29%7D%2Etable%2Ddark%2Etable%2Dhover%20tbody%20tr%3Ahover%7Bbackground%2Dcolor%3Argba%28255%2C255%2C255%2C%2E075%29%7D%40media%20%28max%2Dwidth%3A575%2E98px%29%7B%2Etable%2Dresponsive%2Dsm%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Boverflow%2Dx%3Aauto%3B%2Dwebkit%2Doverflow%2Dscrolling%3Atouch%3B%2Dms%2Doverflow%2Dstyle%3A%2Dms%2Dautohiding%2Dscrollbar%7D%2Etable%2Dresponsive%2Dsm%3E%2Etable%2Dbordered%7Bborder%3A0%7D%7D%40media%20%28max%2Dwidth%3A767%2E98px%29%7B%2Etable%2Dresponsive%2Dmd%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Boverflow%2Dx%3Aauto%3B%2Dwebkit%2Doverflow%2Dscrolling%3Atouch%3B%2Dms%2Doverflow%2Dstyle%3A%2Dms%2Dautohiding%2Dscrollbar%7D%2Etable%2Dresponsive%2Dmd%3E%2Etable%2Dbordered%7Bborder%3A0%7D%7D%40media%20%28max%2Dwidth%3A991%2E98px%29%7B%2Etable%2Dresponsive%2Dlg%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Boverflow%2Dx%3Aauto%3B%2Dwebkit%2Doverflow%2Dscrolling%3Atouch%3B%2Dms%2Doverflow%2Dstyle%3A%2Dms%2Dautohiding%2Dscrollbar%7D%2Etable%2Dresponsive%2Dlg%3E%2Etable%2Dbordered%7Bborder%3A0%7D%7D%40media%20%28max%2Dwidth%3A1199%2E98px%29%7B%2Etable%2Dresponsive%2Dxl%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Boverflow%2Dx%3Aauto%3B%2Dwebkit%2Doverflow%2Dscrolling%3Atouch%3B%2Dms%2Doverflow%2Dstyle%3A%2Dms%2Dautohiding%2Dscrollbar%7D%2Etable%2Dresponsive%2Dxl%3E%2Etable%2Dbordered%7Bborder%3A0%7D%7D%2Etable%2Dresponsive%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Boverflow%2Dx%3Aauto%3B%2Dwebkit%2Doverflow%2Dscrolling%3Atouch%3B%2Dms%2Doverflow%2Dstyle%3A%2Dms%2Dautohiding%2Dscrollbar%7D%2Etable%2Dresponsive%3E%2Etable%2Dbordered%7Bborder%3A0%7D%2Eform%2Dcontrol%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Bpadding%3A%2E375rem%20%2E75rem%3Bfont%2Dsize%3A1rem%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%3Bbackground%2Dclip%3Apadding%2Dbox%3Bborder%3A1px%20solid%20%23ced4da%3Bborder%2Dradius%3A%2E25rem%3Btransition%3Aborder%2Dcolor%20%2E15s%20ease%2Din%2Dout%2Cbox%2Dshadow%20%2E15s%20ease%2Din%2Dout%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Eform%2Dcontrol%7Btransition%3Anone%7D%7D%2Eform%2Dcontrol%3A%3A%2Dms%2Dexpand%7Bbackground%2Dcolor%3Atransparent%3Bborder%3A0%7D%2Eform%2Dcontrol%3Afocus%7Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%3Bborder%2Dcolor%3A%2380bdff%3Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Eform%2Dcontrol%3A%3A%2Dwebkit%2Dinput%2Dplaceholder%7Bcolor%3A%236c757d%3Bopacity%3A1%7D%2Eform%2Dcontrol%3A%3A%2Dmoz%2Dplaceholder%7Bcolor%3A%236c757d%3Bopacity%3A1%7D%2Eform%2Dcontrol%3A%2Dms%2Dinput%2Dplaceholder%7Bcolor%3A%236c757d%3Bopacity%3A1%7D%2Eform%2Dcontrol%3A%3A%2Dms%2Dinput%2Dplaceholder%7Bcolor%3A%236c757d%3Bopacity%3A1%7D%2Eform%2Dcontrol%3A%3Aplaceholder%7Bcolor%3A%236c757d%3Bopacity%3A1%7D%2Eform%2Dcontrol%3Adisabled%2C%2Eform%2Dcontrol%5Breadonly%5D%7Bbackground%2Dcolor%3A%23e9ecef%3Bopacity%3A1%7Dselect%2Eform%2Dcontrol%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%7Bheight%3Acalc%282%2E25rem%20%2B%202px%29%7Dselect%2Eform%2Dcontrol%3Afocus%3A%3A%2Dms%2Dvalue%7Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%7D%2Eform%2Dcontrol%2Dfile%2C%2Eform%2Dcontrol%2Drange%7Bdisplay%3Ablock%3Bwidth%3A100%25%7D%2Ecol%2Dform%2Dlabel%7Bpadding%2Dtop%3Acalc%28%2E375rem%20%2B%201px%29%3Bpadding%2Dbottom%3Acalc%28%2E375rem%20%2B%201px%29%3Bmargin%2Dbottom%3A0%3Bfont%2Dsize%3Ainherit%3Bline%2Dheight%3A1%2E5%7D%2Ecol%2Dform%2Dlabel%2Dlg%7Bpadding%2Dtop%3Acalc%28%2E5rem%20%2B%201px%29%3Bpadding%2Dbottom%3Acalc%28%2E5rem%20%2B%201px%29%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3A1%2E5%7D%2Ecol%2Dform%2Dlabel%2Dsm%7Bpadding%2Dtop%3Acalc%28%2E25rem%20%2B%201px%29%3Bpadding%2Dbottom%3Acalc%28%2E25rem%20%2B%201px%29%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%2E5%7D%2Eform%2Dcontrol%2Dplaintext%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Bpadding%2Dtop%3A%2E375rem%3Bpadding%2Dbottom%3A%2E375rem%3Bmargin%2Dbottom%3A0%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23212529%3Bbackground%2Dcolor%3Atransparent%3Bborder%3Asolid%20transparent%3Bborder%2Dwidth%3A1px%200%7D%2Eform%2Dcontrol%2Dplaintext%2Eform%2Dcontrol%2Dlg%2C%2Eform%2Dcontrol%2Dplaintext%2Eform%2Dcontrol%2Dsm%2C%2Einput%2Dgroup%2Dlg%3E%2Eform%2Dcontrol%2Dplaintext%2Eform%2Dcontrol%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3E%2Eform%2Dcontrol%2Dplaintext%2Ebtn%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3E%2Eform%2Dcontrol%2Dplaintext%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3E%2Eform%2Dcontrol%2Dplaintext%2Ebtn%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3E%2Eform%2Dcontrol%2Dplaintext%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dsm%3E%2Eform%2Dcontrol%2Dplaintext%2Eform%2Dcontrol%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3E%2Eform%2Dcontrol%2Dplaintext%2Ebtn%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3E%2Eform%2Dcontrol%2Dplaintext%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3E%2Eform%2Dcontrol%2Dplaintext%2Ebtn%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3E%2Eform%2Dcontrol%2Dplaintext%2Einput%2Dgroup%2Dtext%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%2Eform%2Dcontrol%2Dsm%2C%2Einput%2Dgroup%2Dsm%3E%2Eform%2Dcontrol%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3E%2Ebtn%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3E%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3E%2Ebtn%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3E%2Einput%2Dgroup%2Dtext%7Bpadding%3A%2E25rem%20%2E5rem%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%2E5%3Bborder%2Dradius%3A%2E2rem%7D%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3Eselect%2Ebtn%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dappend%3Eselect%2Einput%2Dgroup%2Dtext%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3Eselect%2Ebtn%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dsm%3E%2Einput%2Dgroup%2Dprepend%3Eselect%2Einput%2Dgroup%2Dtext%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dsm%3Eselect%2Eform%2Dcontrol%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2Cselect%2Eform%2Dcontrol%2Dsm%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%7Bheight%3Acalc%281%2E8125rem%20%2B%202px%29%7D%2Eform%2Dcontrol%2Dlg%2C%2Einput%2Dgroup%2Dlg%3E%2Eform%2Dcontrol%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3E%2Ebtn%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3E%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3E%2Ebtn%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3E%2Einput%2Dgroup%2Dtext%7Bpadding%3A%2E5rem%201rem%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3A1%2E5%3Bborder%2Dradius%3A%2E3rem%7D%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3Eselect%2Ebtn%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dappend%3Eselect%2Einput%2Dgroup%2Dtext%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3Eselect%2Ebtn%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dlg%3E%2Einput%2Dgroup%2Dprepend%3Eselect%2Einput%2Dgroup%2Dtext%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2C%2Einput%2Dgroup%2Dlg%3Eselect%2Eform%2Dcontrol%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%2Cselect%2Eform%2Dcontrol%2Dlg%3Anot%28%5Bsize%5D%29%3Anot%28%5Bmultiple%5D%29%7Bheight%3Acalc%282%2E875rem%20%2B%202px%29%7D%2Eform%2Dgroup%7Bmargin%2Dbottom%3A1rem%7D%2Eform%2Dtext%7Bdisplay%3Ablock%3Bmargin%2Dtop%3A%2E25rem%7D%2Eform%2Drow%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3Bmargin%2Dright%3A%2D5px%3Bmargin%2Dleft%3A%2D5px%7D%2Eform%2Drow%3E%2Ecol%2C%2Eform%2Drow%3E%5Bclass%2A%3Dcol%2D%5D%7Bpadding%2Dright%3A5px%3Bpadding%2Dleft%3A5px%7D%2Eform%2Dcheck%7Bposition%3Arelative%3Bdisplay%3Ablock%3Bpadding%2Dleft%3A1%2E25rem%7D%2Eform%2Dcheck%2Dinput%7Bposition%3Aabsolute%3Bmargin%2Dtop%3A%2E3rem%3Bmargin%2Dleft%3A%2D1%2E25rem%7D%2Eform%2Dcheck%2Dinput%3Adisabled%7E%2Eform%2Dcheck%2Dlabel%7Bcolor%3A%236c757d%7D%2Eform%2Dcheck%2Dlabel%7Bmargin%2Dbottom%3A0%7D%2Eform%2Dcheck%2Dinline%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%3Bdisplay%3Ainline%2Dflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3Bpadding%2Dleft%3A0%3Bmargin%2Dright%3A%2E75rem%7D%2Eform%2Dcheck%2Dinline%20%2Eform%2Dcheck%2Dinput%7Bposition%3Astatic%3Bmargin%2Dtop%3A0%3Bmargin%2Dright%3A%2E3125rem%3Bmargin%2Dleft%3A0%7D%2Evalid%2Dfeedback%7Bdisplay%3Anone%3Bwidth%3A100%25%3Bmargin%2Dtop%3A%2E25rem%3Bfont%2Dsize%3A80%25%3Bcolor%3A%2328a745%7D%2Evalid%2Dtooltip%7Bposition%3Aabsolute%3Btop%3A100%25%3Bz%2Dindex%3A5%3Bdisplay%3Anone%3Bmax%2Dwidth%3A100%25%3Bpadding%3A%2E5rem%3Bmargin%2Dtop%3A%2E1rem%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%3Bcolor%3A%23fff%3Bbackground%2Dcolor%3Argba%2840%2C167%2C69%2C%2E8%29%3Bborder%2Dradius%3A%2E2rem%7D%2Ecustom%2Dselect%2Eis%2Dvalid%2C%2Eform%2Dcontrol%2Eis%2Dvalid%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Avalid%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Avalid%7Bborder%2Dcolor%3A%2328a745%7D%2Ecustom%2Dselect%2Eis%2Dvalid%3Afocus%2C%2Eform%2Dcontrol%2Eis%2Dvalid%3Afocus%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Avalid%3Afocus%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Avalid%3Afocus%7Bborder%2Dcolor%3A%2328a745%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E25%29%7D%2Ecustom%2Dselect%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Ecustom%2Dselect%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Eform%2Dcontrol%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Eform%2Dcontrol%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Avalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Avalid%7E%2Evalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Eform%2Dcontrol%2Dfile%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Eform%2Dcontrol%2Dfile%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%2Dfile%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%2Dfile%3Avalid%7E%2Evalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Eform%2Dcheck%2Dinput%2Eis%2Dvalid%7E%2Eform%2Dcheck%2Dlabel%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Avalid%7E%2Eform%2Dcheck%2Dlabel%7Bcolor%3A%2328a745%7D%2Eform%2Dcheck%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Eform%2Dcheck%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Avalid%7E%2Evalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%7E%2Ecustom%2Dcontrol%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%7E%2Ecustom%2Dcontrol%2Dlabel%7Bcolor%3A%2328a745%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%2371dd8a%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%7E%2Evalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%2334ce57%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dvalid%3Afocus%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Avalid%3Afocus%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E25%29%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dvalid%7E%2Ecustom%2Dfile%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Avalid%7E%2Ecustom%2Dfile%2Dlabel%7Bborder%2Dcolor%3A%2328a745%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dvalid%7E%2Ecustom%2Dfile%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Avalid%7E%2Ecustom%2Dfile%2Dlabel%3A%3Abefore%7Bborder%2Dcolor%3Ainherit%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dfeedback%2C%2Ecustom%2Dfile%2Dinput%2Eis%2Dvalid%7E%2Evalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Avalid%7E%2Evalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Avalid%7E%2Evalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dvalid%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Avalid%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E25%29%7D%2Einvalid%2Dfeedback%7Bdisplay%3Anone%3Bwidth%3A100%25%3Bmargin%2Dtop%3A%2E25rem%3Bfont%2Dsize%3A80%25%3Bcolor%3A%23dc3545%7D%2Einvalid%2Dtooltip%7Bposition%3Aabsolute%3Btop%3A100%25%3Bz%2Dindex%3A5%3Bdisplay%3Anone%3Bmax%2Dwidth%3A100%25%3Bpadding%3A%2E5rem%3Bmargin%2Dtop%3A%2E1rem%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%3Bcolor%3A%23fff%3Bbackground%2Dcolor%3Argba%28220%2C53%2C69%2C%2E8%29%3Bborder%2Dradius%3A%2E2rem%7D%2Ecustom%2Dselect%2Eis%2Dinvalid%2C%2Eform%2Dcontrol%2Eis%2Dinvalid%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Ainvalid%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Ainvalid%7Bborder%2Dcolor%3A%23dc3545%7D%2Ecustom%2Dselect%2Eis%2Dinvalid%3Afocus%2C%2Eform%2Dcontrol%2Eis%2Dinvalid%3Afocus%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Ainvalid%3Afocus%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Ainvalid%3Afocus%7Bborder%2Dcolor%3A%23dc3545%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E25%29%7D%2Ecustom%2Dselect%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Ecustom%2Dselect%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Eform%2Dcontrol%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Eform%2Dcontrol%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dselect%3Ainvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%3Ainvalid%7E%2Einvalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Eform%2Dcontrol%2Dfile%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Eform%2Dcontrol%2Dfile%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%2Dfile%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcontrol%2Dfile%3Ainvalid%7E%2Einvalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Eform%2Dcheck%2Dinput%2Eis%2Dinvalid%7E%2Eform%2Dcheck%2Dlabel%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Ainvalid%7E%2Eform%2Dcheck%2Dlabel%7Bcolor%3A%23dc3545%7D%2Eform%2Dcheck%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Eform%2Dcheck%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Eform%2Dcheck%2Dinput%3Ainvalid%7E%2Einvalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%7E%2Ecustom%2Dcontrol%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%7E%2Ecustom%2Dcontrol%2Dlabel%7Bcolor%3A%23dc3545%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23efa2a9%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%7E%2Einvalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23e4606d%7D%2Ecustom%2Dcontrol%2Dinput%2Eis%2Dinvalid%3Afocus%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dcontrol%2Dinput%3Ainvalid%3Afocus%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E25%29%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dinvalid%7E%2Ecustom%2Dfile%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Ainvalid%7E%2Ecustom%2Dfile%2Dlabel%7Bborder%2Dcolor%3A%23dc3545%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dinvalid%7E%2Ecustom%2Dfile%2Dlabel%3A%3Abefore%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Ainvalid%7E%2Ecustom%2Dfile%2Dlabel%3A%3Abefore%7Bborder%2Dcolor%3Ainherit%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dfeedback%2C%2Ecustom%2Dfile%2Dinput%2Eis%2Dinvalid%7E%2Einvalid%2Dtooltip%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Ainvalid%7E%2Einvalid%2Dfeedback%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Ainvalid%7E%2Einvalid%2Dtooltip%7Bdisplay%3Ablock%7D%2Ecustom%2Dfile%2Dinput%2Eis%2Dinvalid%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%2C%2Ewas%2Dvalidated%20%2Ecustom%2Dfile%2Dinput%3Ainvalid%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E25%29%7D%2Eform%2Dinline%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dflow%3Arow%20wrap%3Bflex%2Dflow%3Arow%20wrap%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%7D%2Eform%2Dinline%20%2Eform%2Dcheck%7Bwidth%3A100%25%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Eform%2Dinline%20label%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%3Bmargin%2Dbottom%3A0%7D%2Eform%2Dinline%20%2Eform%2Dgroup%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%3A0%200%20auto%3Bflex%3A0%200%20auto%3B%2Dms%2Dflex%2Dflow%3Arow%20wrap%3Bflex%2Dflow%3Arow%20wrap%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3Bmargin%2Dbottom%3A0%7D%2Eform%2Dinline%20%2Eform%2Dcontrol%7Bdisplay%3Ainline%2Dblock%3Bwidth%3Aauto%3Bvertical%2Dalign%3Amiddle%7D%2Eform%2Dinline%20%2Eform%2Dcontrol%2Dplaintext%7Bdisplay%3Ainline%2Dblock%7D%2Eform%2Dinline%20%2Ecustom%2Dselect%2C%2Eform%2Dinline%20%2Einput%2Dgroup%7Bwidth%3Aauto%7D%2Eform%2Dinline%20%2Eform%2Dcheck%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%3Bwidth%3Aauto%3Bpadding%2Dleft%3A0%7D%2Eform%2Dinline%20%2Eform%2Dcheck%2Dinput%7Bposition%3Arelative%3Bmargin%2Dtop%3A0%3Bmargin%2Dright%3A%2E25rem%3Bmargin%2Dleft%3A0%7D%2Eform%2Dinline%20%2Ecustom%2Dcontrol%7B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%7D%2Eform%2Dinline%20%2Ecustom%2Dcontrol%2Dlabel%7Bmargin%2Dbottom%3A0%7D%7D%2Ebtn%7Bdisplay%3Ainline%2Dblock%3Bfont%2Dweight%3A400%3Btext%2Dalign%3Acenter%3Bwhite%2Dspace%3Anowrap%3Bvertical%2Dalign%3Amiddle%3B%2Dwebkit%2Duser%2Dselect%3Anone%3B%2Dmoz%2Duser%2Dselect%3Anone%3B%2Dms%2Duser%2Dselect%3Anone%3Buser%2Dselect%3Anone%3Bborder%3A1px%20solid%20transparent%3Bpadding%3A%2E375rem%20%2E75rem%3Bfont%2Dsize%3A1rem%3Bline%2Dheight%3A1%2E5%3Bborder%2Dradius%3A%2E25rem%3Btransition%3Acolor%20%2E15s%20ease%2Din%2Dout%2Cbackground%2Dcolor%20%2E15s%20ease%2Din%2Dout%2Cborder%2Dcolor%20%2E15s%20ease%2Din%2Dout%2Cbox%2Dshadow%20%2E15s%20ease%2Din%2Dout%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Ebtn%7Btransition%3Anone%7D%7D%2Ebtn%3Afocus%2C%2Ebtn%3Ahover%7Btext%2Ddecoration%3Anone%7D%2Ebtn%2Efocus%2C%2Ebtn%3Afocus%7Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ebtn%2Edisabled%2C%2Ebtn%3Adisabled%7Bopacity%3A%2E65%7D%2Ebtn%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%7Bcursor%3Apointer%7D%2Ebtn%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%7Bbackground%2Dimage%3Anone%7Da%2Ebtn%2Edisabled%2Cfieldset%3Adisabled%20a%2Ebtn%7Bpointer%2Devents%3Anone%7D%2Ebtn%2Dprimary%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Ebtn%2Dprimary%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%230069d9%3Bborder%2Dcolor%3A%230062cc%7D%2Ebtn%2Dprimary%2Efocus%2C%2Ebtn%2Dprimary%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E5%29%7D%2Ebtn%2Dprimary%2Edisabled%2C%2Ebtn%2Dprimary%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Ebtn%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dprimary%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%230062cc%3Bborder%2Dcolor%3A%23005cbf%7D%2Ebtn%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dprimary%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E5%29%7D%2Ebtn%2Dsecondary%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%236c757d%3Bborder%2Dcolor%3A%236c757d%7D%2Ebtn%2Dsecondary%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%235a6268%3Bborder%2Dcolor%3A%23545b62%7D%2Ebtn%2Dsecondary%2Efocus%2C%2Ebtn%2Dsecondary%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28108%2C117%2C125%2C%2E5%29%7D%2Ebtn%2Dsecondary%2Edisabled%2C%2Ebtn%2Dsecondary%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%236c757d%3Bborder%2Dcolor%3A%236c757d%7D%2Ebtn%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dsecondary%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23545b62%3Bborder%2Dcolor%3A%234e555b%7D%2Ebtn%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dsecondary%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28108%2C117%2C125%2C%2E5%29%7D%2Ebtn%2Dsuccess%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2328a745%3Bborder%2Dcolor%3A%2328a745%7D%2Ebtn%2Dsuccess%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23218838%3Bborder%2Dcolor%3A%231e7e34%7D%2Ebtn%2Dsuccess%2Efocus%2C%2Ebtn%2Dsuccess%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E5%29%7D%2Ebtn%2Dsuccess%2Edisabled%2C%2Ebtn%2Dsuccess%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2328a745%3Bborder%2Dcolor%3A%2328a745%7D%2Ebtn%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dsuccess%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%231e7e34%3Bborder%2Dcolor%3A%231c7430%7D%2Ebtn%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dsuccess%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E5%29%7D%2Ebtn%2Dinfo%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2317a2b8%3Bborder%2Dcolor%3A%2317a2b8%7D%2Ebtn%2Dinfo%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23138496%3Bborder%2Dcolor%3A%23117a8b%7D%2Ebtn%2Dinfo%2Efocus%2C%2Ebtn%2Dinfo%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2823%2C162%2C184%2C%2E5%29%7D%2Ebtn%2Dinfo%2Edisabled%2C%2Ebtn%2Dinfo%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2317a2b8%3Bborder%2Dcolor%3A%2317a2b8%7D%2Ebtn%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dinfo%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23117a8b%3Bborder%2Dcolor%3A%2310707f%7D%2Ebtn%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dinfo%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2823%2C162%2C184%2C%2E5%29%7D%2Ebtn%2Dwarning%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23ffc107%3Bborder%2Dcolor%3A%23ffc107%7D%2Ebtn%2Dwarning%3Ahover%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23e0a800%3Bborder%2Dcolor%3A%23d39e00%7D%2Ebtn%2Dwarning%2Efocus%2C%2Ebtn%2Dwarning%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28255%2C193%2C7%2C%2E5%29%7D%2Ebtn%2Dwarning%2Edisabled%2C%2Ebtn%2Dwarning%3Adisabled%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23ffc107%3Bborder%2Dcolor%3A%23ffc107%7D%2Ebtn%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dwarning%2Edropdown%2Dtoggle%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23d39e00%3Bborder%2Dcolor%3A%23c69500%7D%2Ebtn%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dwarning%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28255%2C193%2C7%2C%2E5%29%7D%2Ebtn%2Ddanger%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23dc3545%3Bborder%2Dcolor%3A%23dc3545%7D%2Ebtn%2Ddanger%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23c82333%3Bborder%2Dcolor%3A%23bd2130%7D%2Ebtn%2Ddanger%2Efocus%2C%2Ebtn%2Ddanger%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E5%29%7D%2Ebtn%2Ddanger%2Edisabled%2C%2Ebtn%2Ddanger%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23dc3545%3Bborder%2Dcolor%3A%23dc3545%7D%2Ebtn%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Ddanger%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23bd2130%3Bborder%2Dcolor%3A%23b21f2d%7D%2Ebtn%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Ddanger%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E5%29%7D%2Ebtn%2Dlight%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23f8f9fa%3Bborder%2Dcolor%3A%23f8f9fa%7D%2Ebtn%2Dlight%3Ahover%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23e2e6ea%3Bborder%2Dcolor%3A%23dae0e5%7D%2Ebtn%2Dlight%2Efocus%2C%2Ebtn%2Dlight%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28248%2C249%2C250%2C%2E5%29%7D%2Ebtn%2Dlight%2Edisabled%2C%2Ebtn%2Dlight%3Adisabled%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23f8f9fa%3Bborder%2Dcolor%3A%23f8f9fa%7D%2Ebtn%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Dlight%2Edropdown%2Dtoggle%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23dae0e5%3Bborder%2Dcolor%3A%23d3d9df%7D%2Ebtn%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Dlight%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28248%2C249%2C250%2C%2E5%29%7D%2Ebtn%2Ddark%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23343a40%3Bborder%2Dcolor%3A%23343a40%7D%2Ebtn%2Ddark%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2323272b%3Bborder%2Dcolor%3A%231d2124%7D%2Ebtn%2Ddark%2Efocus%2C%2Ebtn%2Ddark%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2852%2C58%2C64%2C%2E5%29%7D%2Ebtn%2Ddark%2Edisabled%2C%2Ebtn%2Ddark%3Adisabled%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23343a40%3Bborder%2Dcolor%3A%23343a40%7D%2Ebtn%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Ddark%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%231d2124%3Bborder%2Dcolor%3A%23171a1d%7D%2Ebtn%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Ddark%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2852%2C58%2C64%2C%2E5%29%7D%2Ebtn%2Doutline%2Dprimary%7Bcolor%3A%23007bff%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%23007bff%7D%2Ebtn%2Doutline%2Dprimary%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Ebtn%2Doutline%2Dprimary%2Efocus%2C%2Ebtn%2Doutline%2Dprimary%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E5%29%7D%2Ebtn%2Doutline%2Dprimary%2Edisabled%2C%2Ebtn%2Doutline%2Dprimary%3Adisabled%7Bcolor%3A%23007bff%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dprimary%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Ebtn%2Doutline%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dprimary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dprimary%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E5%29%7D%2Ebtn%2Doutline%2Dsecondary%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%236c757d%7D%2Ebtn%2Doutline%2Dsecondary%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%236c757d%3Bborder%2Dcolor%3A%236c757d%7D%2Ebtn%2Doutline%2Dsecondary%2Efocus%2C%2Ebtn%2Doutline%2Dsecondary%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28108%2C117%2C125%2C%2E5%29%7D%2Ebtn%2Doutline%2Dsecondary%2Edisabled%2C%2Ebtn%2Doutline%2Dsecondary%3Adisabled%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dsecondary%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%236c757d%3Bborder%2Dcolor%3A%236c757d%7D%2Ebtn%2Doutline%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dsecondary%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dsecondary%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28108%2C117%2C125%2C%2E5%29%7D%2Ebtn%2Doutline%2Dsuccess%7Bcolor%3A%2328a745%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%2328a745%7D%2Ebtn%2Doutline%2Dsuccess%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2328a745%3Bborder%2Dcolor%3A%2328a745%7D%2Ebtn%2Doutline%2Dsuccess%2Efocus%2C%2Ebtn%2Doutline%2Dsuccess%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E5%29%7D%2Ebtn%2Doutline%2Dsuccess%2Edisabled%2C%2Ebtn%2Doutline%2Dsuccess%3Adisabled%7Bcolor%3A%2328a745%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dsuccess%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2328a745%3Bborder%2Dcolor%3A%2328a745%7D%2Ebtn%2Doutline%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dsuccess%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dsuccess%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2840%2C167%2C69%2C%2E5%29%7D%2Ebtn%2Doutline%2Dinfo%7Bcolor%3A%2317a2b8%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%2317a2b8%7D%2Ebtn%2Doutline%2Dinfo%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2317a2b8%3Bborder%2Dcolor%3A%2317a2b8%7D%2Ebtn%2Doutline%2Dinfo%2Efocus%2C%2Ebtn%2Doutline%2Dinfo%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2823%2C162%2C184%2C%2E5%29%7D%2Ebtn%2Doutline%2Dinfo%2Edisabled%2C%2Ebtn%2Doutline%2Dinfo%3Adisabled%7Bcolor%3A%2317a2b8%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dinfo%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2317a2b8%3Bborder%2Dcolor%3A%2317a2b8%7D%2Ebtn%2Doutline%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dinfo%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dinfo%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2823%2C162%2C184%2C%2E5%29%7D%2Ebtn%2Doutline%2Dwarning%7Bcolor%3A%23ffc107%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%23ffc107%7D%2Ebtn%2Doutline%2Dwarning%3Ahover%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23ffc107%3Bborder%2Dcolor%3A%23ffc107%7D%2Ebtn%2Doutline%2Dwarning%2Efocus%2C%2Ebtn%2Doutline%2Dwarning%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28255%2C193%2C7%2C%2E5%29%7D%2Ebtn%2Doutline%2Dwarning%2Edisabled%2C%2Ebtn%2Doutline%2Dwarning%3Adisabled%7Bcolor%3A%23ffc107%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dwarning%2Edropdown%2Dtoggle%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23ffc107%3Bborder%2Dcolor%3A%23ffc107%7D%2Ebtn%2Doutline%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dwarning%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dwarning%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28255%2C193%2C7%2C%2E5%29%7D%2Ebtn%2Doutline%2Ddanger%7Bcolor%3A%23dc3545%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%23dc3545%7D%2Ebtn%2Doutline%2Ddanger%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23dc3545%3Bborder%2Dcolor%3A%23dc3545%7D%2Ebtn%2Doutline%2Ddanger%2Efocus%2C%2Ebtn%2Doutline%2Ddanger%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E5%29%7D%2Ebtn%2Doutline%2Ddanger%2Edisabled%2C%2Ebtn%2Doutline%2Ddanger%3Adisabled%7Bcolor%3A%23dc3545%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Ddanger%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23dc3545%3Bborder%2Dcolor%3A%23dc3545%7D%2Ebtn%2Doutline%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Ddanger%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Ddanger%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28220%2C53%2C69%2C%2E5%29%7D%2Ebtn%2Doutline%2Dlight%7Bcolor%3A%23f8f9fa%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%23f8f9fa%7D%2Ebtn%2Doutline%2Dlight%3Ahover%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23f8f9fa%3Bborder%2Dcolor%3A%23f8f9fa%7D%2Ebtn%2Doutline%2Dlight%2Efocus%2C%2Ebtn%2Doutline%2Dlight%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28248%2C249%2C250%2C%2E5%29%7D%2Ebtn%2Doutline%2Dlight%2Edisabled%2C%2Ebtn%2Doutline%2Dlight%3Adisabled%7Bcolor%3A%23f8f9fa%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Dlight%2Edropdown%2Dtoggle%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23f8f9fa%3Bborder%2Dcolor%3A%23f8f9fa%7D%2Ebtn%2Doutline%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Dlight%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Dlight%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%28248%2C249%2C250%2C%2E5%29%7D%2Ebtn%2Doutline%2Ddark%7Bcolor%3A%23343a40%3Bbackground%2Dcolor%3Atransparent%3Bbackground%2Dimage%3Anone%3Bborder%2Dcolor%3A%23343a40%7D%2Ebtn%2Doutline%2Ddark%3Ahover%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23343a40%3Bborder%2Dcolor%3A%23343a40%7D%2Ebtn%2Doutline%2Ddark%2Efocus%2C%2Ebtn%2Doutline%2Ddark%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2852%2C58%2C64%2C%2E5%29%7D%2Ebtn%2Doutline%2Ddark%2Edisabled%2C%2Ebtn%2Doutline%2Ddark%3Adisabled%7Bcolor%3A%23343a40%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Doutline%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%2C%2Ebtn%2Doutline%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%2C%2Eshow%3E%2Ebtn%2Doutline%2Ddark%2Edropdown%2Dtoggle%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23343a40%3Bborder%2Dcolor%3A%23343a40%7D%2Ebtn%2Doutline%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%2Eactive%3Afocus%2C%2Ebtn%2Doutline%2Ddark%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%3Aactive%3Afocus%2C%2Eshow%3E%2Ebtn%2Doutline%2Ddark%2Edropdown%2Dtoggle%3Afocus%7Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%2852%2C58%2C64%2C%2E5%29%7D%2Ebtn%2Dlink%7Bfont%2Dweight%3A400%3Bcolor%3A%23007bff%3Bbackground%2Dcolor%3Atransparent%7D%2Ebtn%2Dlink%3Ahover%7Bcolor%3A%230056b3%3Btext%2Ddecoration%3Aunderline%3Bbackground%2Dcolor%3Atransparent%3Bborder%2Dcolor%3Atransparent%7D%2Ebtn%2Dlink%2Efocus%2C%2Ebtn%2Dlink%3Afocus%7Btext%2Ddecoration%3Aunderline%3Bborder%2Dcolor%3Atransparent%3Bbox%2Dshadow%3Anone%7D%2Ebtn%2Dlink%2Edisabled%2C%2Ebtn%2Dlink%3Adisabled%7Bcolor%3A%236c757d%3Bpointer%2Devents%3Anone%7D%2Ebtn%2Dgroup%2Dlg%3E%2Ebtn%2C%2Ebtn%2Dlg%7Bpadding%3A%2E5rem%201rem%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3A1%2E5%3Bborder%2Dradius%3A%2E3rem%7D%2Ebtn%2Dgroup%2Dsm%3E%2Ebtn%2C%2Ebtn%2Dsm%7Bpadding%3A%2E25rem%20%2E5rem%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%2E5%3Bborder%2Dradius%3A%2E2rem%7D%2Ebtn%2Dblock%7Bdisplay%3Ablock%3Bwidth%3A100%25%7D%2Ebtn%2Dblock%2B%2Ebtn%2Dblock%7Bmargin%2Dtop%3A%2E5rem%7Dinput%5Btype%3Dbutton%5D%2Ebtn%2Dblock%2Cinput%5Btype%3Dreset%5D%2Ebtn%2Dblock%2Cinput%5Btype%3Dsubmit%5D%2Ebtn%2Dblock%7Bwidth%3A100%25%7D%2Efade%7Btransition%3Aopacity%20%2E15s%20linear%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Efade%7Btransition%3Anone%7D%7D%2Efade%3Anot%28%2Eshow%29%7Bopacity%3A0%7D%2Ecollapse%3Anot%28%2Eshow%29%7Bdisplay%3Anone%7D%2Ecollapsing%7Bposition%3Arelative%3Bheight%3A0%3Boverflow%3Ahidden%3Btransition%3Aheight%20%2E35s%20ease%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Ecollapsing%7Btransition%3Anone%7D%7D%2Edropdown%2C%2Edropleft%2C%2Edropright%2C%2Edropup%7Bposition%3Arelative%7D%2Edropdown%2Dtoggle%3A%3Aafter%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A0%3Bheight%3A0%3Bmargin%2Dleft%3A%2E255em%3Bvertical%2Dalign%3A%2E255em%3Bcontent%3A%22%22%3Bborder%2Dtop%3A%2E3em%20solid%3Bborder%2Dright%3A%2E3em%20solid%20transparent%3Bborder%2Dbottom%3A0%3Bborder%2Dleft%3A%2E3em%20solid%20transparent%7D%2Edropdown%2Dtoggle%3Aempty%3A%3Aafter%7Bmargin%2Dleft%3A0%7D%2Edropdown%2Dmenu%7Bposition%3Aabsolute%3Btop%3A100%25%3Bleft%3A0%3Bz%2Dindex%3A1000%3Bdisplay%3Anone%3Bfloat%3Aleft%3Bmin%2Dwidth%3A10rem%3Bpadding%3A%2E5rem%200%3Bmargin%3A%2E125rem%200%200%3Bfont%2Dsize%3A1rem%3Bcolor%3A%23212529%3Btext%2Dalign%3Aleft%3Blist%2Dstyle%3Anone%3Bbackground%2Dcolor%3A%23fff%3Bbackground%2Dclip%3Apadding%2Dbox%3Bborder%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E15%29%3Bborder%2Dradius%3A%2E25rem%7D%2Edropdown%2Dmenu%2Dright%7Bright%3A0%3Bleft%3Aauto%7D%2Edropup%20%2Edropdown%2Dmenu%7Btop%3Aauto%3Bbottom%3A100%25%3Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A%2E125rem%7D%2Edropup%20%2Edropdown%2Dtoggle%3A%3Aafter%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A0%3Bheight%3A0%3Bmargin%2Dleft%3A%2E255em%3Bvertical%2Dalign%3A%2E255em%3Bcontent%3A%22%22%3Bborder%2Dtop%3A0%3Bborder%2Dright%3A%2E3em%20solid%20transparent%3Bborder%2Dbottom%3A%2E3em%20solid%3Bborder%2Dleft%3A%2E3em%20solid%20transparent%7D%2Edropup%20%2Edropdown%2Dtoggle%3Aempty%3A%3Aafter%7Bmargin%2Dleft%3A0%7D%2Edropright%20%2Edropdown%2Dmenu%7Btop%3A0%3Bright%3Aauto%3Bleft%3A100%25%3Bmargin%2Dtop%3A0%3Bmargin%2Dleft%3A%2E125rem%7D%2Edropright%20%2Edropdown%2Dtoggle%3A%3Aafter%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A0%3Bheight%3A0%3Bmargin%2Dleft%3A%2E255em%3Bvertical%2Dalign%3A%2E255em%3Bcontent%3A%22%22%3Bborder%2Dtop%3A%2E3em%20solid%20transparent%3Bborder%2Dright%3A0%3Bborder%2Dbottom%3A%2E3em%20solid%20transparent%3Bborder%2Dleft%3A%2E3em%20solid%7D%2Edropright%20%2Edropdown%2Dtoggle%3Aempty%3A%3Aafter%7Bmargin%2Dleft%3A0%7D%2Edropright%20%2Edropdown%2Dtoggle%3A%3Aafter%7Bvertical%2Dalign%3A0%7D%2Edropleft%20%2Edropdown%2Dmenu%7Btop%3A0%3Bright%3A100%25%3Bleft%3Aauto%3Bmargin%2Dtop%3A0%3Bmargin%2Dright%3A%2E125rem%7D%2Edropleft%20%2Edropdown%2Dtoggle%3A%3Aafter%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A0%3Bheight%3A0%3Bmargin%2Dleft%3A%2E255em%3Bvertical%2Dalign%3A%2E255em%3Bcontent%3A%22%22%7D%2Edropleft%20%2Edropdown%2Dtoggle%3A%3Aafter%7Bdisplay%3Anone%7D%2Edropleft%20%2Edropdown%2Dtoggle%3A%3Abefore%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A0%3Bheight%3A0%3Bmargin%2Dright%3A%2E255em%3Bvertical%2Dalign%3A%2E255em%3Bcontent%3A%22%22%3Bborder%2Dtop%3A%2E3em%20solid%20transparent%3Bborder%2Dright%3A%2E3em%20solid%3Bborder%2Dbottom%3A%2E3em%20solid%20transparent%7D%2Edropleft%20%2Edropdown%2Dtoggle%3Aempty%3A%3Aafter%7Bmargin%2Dleft%3A0%7D%2Edropleft%20%2Edropdown%2Dtoggle%3A%3Abefore%7Bvertical%2Dalign%3A0%7D%2Edropdown%2Dmenu%5Bx%2Dplacement%5E%3Dbottom%5D%2C%2Edropdown%2Dmenu%5Bx%2Dplacement%5E%3Dleft%5D%2C%2Edropdown%2Dmenu%5Bx%2Dplacement%5E%3Dright%5D%2C%2Edropdown%2Dmenu%5Bx%2Dplacement%5E%3Dtop%5D%7Bright%3Aauto%3Bbottom%3Aauto%7D%2Edropdown%2Ddivider%7Bheight%3A0%3Bmargin%3A%2E5rem%200%3Boverflow%3Ahidden%3Bborder%2Dtop%3A1px%20solid%20%23e9ecef%7D%2Edropdown%2Ditem%7Bdisplay%3Ablock%3Bwidth%3A100%25%3Bpadding%3A%2E25rem%201%2E5rem%3Bclear%3Aboth%3Bfont%2Dweight%3A400%3Bcolor%3A%23212529%3Btext%2Dalign%3Ainherit%3Bwhite%2Dspace%3Anowrap%3Bbackground%2Dcolor%3Atransparent%3Bborder%3A0%7D%2Edropdown%2Ditem%3Afocus%2C%2Edropdown%2Ditem%3Ahover%7Bcolor%3A%2316181b%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23f8f9fa%7D%2Edropdown%2Ditem%2Eactive%2C%2Edropdown%2Ditem%3Aactive%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23007bff%7D%2Edropdown%2Ditem%2Edisabled%2C%2Edropdown%2Ditem%3Adisabled%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3Atransparent%7D%2Edropdown%2Dmenu%2Eshow%7Bdisplay%3Ablock%7D%2Edropdown%2Dheader%7Bdisplay%3Ablock%3Bpadding%3A%2E5rem%201%2E5rem%3Bmargin%2Dbottom%3A0%3Bfont%2Dsize%3A%2E875rem%3Bcolor%3A%236c757d%3Bwhite%2Dspace%3Anowrap%7D%2Edropdown%2Ditem%2Dtext%7Bdisplay%3Ablock%3Bpadding%3A%2E25rem%201%2E5rem%3Bcolor%3A%23212529%7D%2Ebtn%2Dgroup%2C%2Ebtn%2Dgroup%2Dvertical%7Bposition%3Arelative%3Bdisplay%3A%2Dms%2Dinline%2Dflexbox%3Bdisplay%3Ainline%2Dflex%3Bvertical%2Dalign%3Amiddle%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2C%2Ebtn%2Dgroup%3E%2Ebtn%7Bposition%3Arelative%3B%2Dms%2Dflex%3A0%201%20auto%3Bflex%3A0%201%20auto%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%3Ahover%2C%2Ebtn%2Dgroup%3E%2Ebtn%3Ahover%7Bz%2Dindex%3A1%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2Eactive%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%3Aactive%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%3Afocus%2C%2Ebtn%2Dgroup%3E%2Ebtn%2Eactive%2C%2Ebtn%2Dgroup%3E%2Ebtn%3Aactive%2C%2Ebtn%2Dgroup%3E%2Ebtn%3Afocus%7Bz%2Dindex%3A1%7D%2Ebtn%2Dgroup%20%2Ebtn%2B%2Ebtn%2C%2Ebtn%2Dgroup%20%2Ebtn%2B%2Ebtn%2Dgroup%2C%2Ebtn%2Dgroup%20%2Ebtn%2Dgroup%2B%2Ebtn%2C%2Ebtn%2Dgroup%20%2Ebtn%2Dgroup%2B%2Ebtn%2Dgroup%2C%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2B%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2B%2Ebtn%2Dgroup%2C%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2Dgroup%2B%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2Dgroup%2B%2Ebtn%2Dgroup%7Bmargin%2Dleft%3A%2D1px%7D%2Ebtn%2Dtoolbar%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Ebtn%2Dtoolbar%20%2Einput%2Dgroup%7Bwidth%3Aauto%7D%2Ebtn%2Dgroup%3E%2Ebtn%3Afirst%2Dchild%7Bmargin%2Dleft%3A0%7D%2Ebtn%2Dgroup%3E%2Ebtn%2Dgroup%3Anot%28%3Alast%2Dchild%29%3E%2Ebtn%2C%2Ebtn%2Dgroup%3E%2Ebtn%3Anot%28%3Alast%2Dchild%29%3Anot%28%2Edropdown%2Dtoggle%29%7Bborder%2Dtop%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Ebtn%2Dgroup%3E%2Ebtn%2Dgroup%3Anot%28%3Afirst%2Dchild%29%3E%2Ebtn%2C%2Ebtn%2Dgroup%3E%2Ebtn%3Anot%28%3Afirst%2Dchild%29%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Edropdown%2Dtoggle%2Dsplit%7Bpadding%2Dright%3A%2E5625rem%3Bpadding%2Dleft%3A%2E5625rem%7D%2Edropdown%2Dtoggle%2Dsplit%3A%3Aafter%2C%2Edropright%20%2Edropdown%2Dtoggle%2Dsplit%3A%3Aafter%2C%2Edropup%20%2Edropdown%2Dtoggle%2Dsplit%3A%3Aafter%7Bmargin%2Dleft%3A0%7D%2Edropleft%20%2Edropdown%2Dtoggle%2Dsplit%3A%3Abefore%7Bmargin%2Dright%3A0%7D%2Ebtn%2Dgroup%2Dsm%3E%2Ebtn%2B%2Edropdown%2Dtoggle%2Dsplit%2C%2Ebtn%2Dsm%2B%2Edropdown%2Dtoggle%2Dsplit%7Bpadding%2Dright%3A%2E375rem%3Bpadding%2Dleft%3A%2E375rem%7D%2Ebtn%2Dgroup%2Dlg%3E%2Ebtn%2B%2Edropdown%2Dtoggle%2Dsplit%2C%2Ebtn%2Dlg%2B%2Edropdown%2Dtoggle%2Dsplit%7Bpadding%2Dright%3A%2E75rem%3Bpadding%2Dleft%3A%2E75rem%7D%2Ebtn%2Dgroup%2Dvertical%7B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3B%2Dms%2Dflex%2Dalign%3Astart%3Balign%2Ditems%3Aflex%2Dstart%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%7D%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%20%2Ebtn%2Dgroup%7Bwidth%3A100%25%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2B%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2B%2Ebtn%2Dgroup%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2Dgroup%2B%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2Dgroup%2B%2Ebtn%2Dgroup%7Bmargin%2Dtop%3A%2D1px%3Bmargin%2Dleft%3A0%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2Dgroup%3Anot%28%3Alast%2Dchild%29%3E%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%3Anot%28%3Alast%2Dchild%29%3Anot%28%2Edropdown%2Dtoggle%29%7Bborder%2Dbottom%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%2Dgroup%3Anot%28%3Afirst%2Dchild%29%3E%2Ebtn%2C%2Ebtn%2Dgroup%2Dvertical%3E%2Ebtn%3Anot%28%3Afirst%2Dchild%29%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dtop%2Dright%2Dradius%3A0%7D%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%2C%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%2Dgroup%3E%2Ebtn%7Bmargin%2Dbottom%3A0%7D%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%20input%5Btype%3Dcheckbox%5D%2C%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%20input%5Btype%3Dradio%5D%2C%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%2Dgroup%3E%2Ebtn%20input%5Btype%3Dcheckbox%5D%2C%2Ebtn%2Dgroup%2Dtoggle%3E%2Ebtn%2Dgroup%3E%2Ebtn%20input%5Btype%3Dradio%5D%7Bposition%3Aabsolute%3Bclip%3Arect%280%2C0%2C0%2C0%29%3Bpointer%2Devents%3Anone%7D%2Einput%2Dgroup%7Bposition%3Arelative%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3B%2Dms%2Dflex%2Dalign%3Astretch%3Balign%2Ditems%3Astretch%3Bwidth%3A100%25%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%2C%2Einput%2Dgroup%3E%2Ecustom%2Dselect%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%7Bposition%3Arelative%3B%2Dms%2Dflex%3A1%201%20auto%3Bflex%3A1%201%20auto%3Bwidth%3A1%25%3Bmargin%2Dbottom%3A0%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%3Afocus%2C%2Einput%2Dgroup%3E%2Ecustom%2Dselect%3Afocus%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%3Afocus%7Bz%2Dindex%3A3%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%2B%2Ecustom%2Dfile%2C%2Einput%2Dgroup%3E%2Ecustom%2Dfile%2B%2Ecustom%2Dselect%2C%2Einput%2Dgroup%3E%2Ecustom%2Dfile%2B%2Eform%2Dcontrol%2C%2Einput%2Dgroup%3E%2Ecustom%2Dselect%2B%2Ecustom%2Dfile%2C%2Einput%2Dgroup%3E%2Ecustom%2Dselect%2B%2Ecustom%2Dselect%2C%2Einput%2Dgroup%3E%2Ecustom%2Dselect%2B%2Eform%2Dcontrol%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%2B%2Ecustom%2Dfile%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%2B%2Ecustom%2Dselect%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%2B%2Eform%2Dcontrol%7Bmargin%2Dleft%3A%2D1px%7D%2Einput%2Dgroup%3E%2Ecustom%2Dselect%3Anot%28%3Alast%2Dchild%29%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%3Anot%28%3Alast%2Dchild%29%7Bborder%2Dtop%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Einput%2Dgroup%3E%2Ecustom%2Dselect%3Anot%28%3Afirst%2Dchild%29%2C%2Einput%2Dgroup%3E%2Eform%2Dcontrol%3Anot%28%3Afirst%2Dchild%29%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%3Anot%28%3Alast%2Dchild%29%20%2Ecustom%2Dfile%2Dlabel%2C%2Einput%2Dgroup%3E%2Ecustom%2Dfile%3Anot%28%3Alast%2Dchild%29%20%2Ecustom%2Dfile%2Dlabel%3A%3Aafter%7Bborder%2Dtop%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Einput%2Dgroup%3E%2Ecustom%2Dfile%3Anot%28%3Afirst%2Dchild%29%20%2Ecustom%2Dfile%2Dlabel%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Einput%2Dgroup%2Dappend%2C%2Einput%2Dgroup%2Dprepend%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%7D%2Einput%2Dgroup%2Dappend%20%2Ebtn%2C%2Einput%2Dgroup%2Dprepend%20%2Ebtn%7Bposition%3Arelative%3Bz%2Dindex%3A2%7D%2Einput%2Dgroup%2Dappend%20%2Ebtn%2B%2Ebtn%2C%2Einput%2Dgroup%2Dappend%20%2Ebtn%2B%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dappend%20%2Einput%2Dgroup%2Dtext%2B%2Ebtn%2C%2Einput%2Dgroup%2Dappend%20%2Einput%2Dgroup%2Dtext%2B%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dprepend%20%2Ebtn%2B%2Ebtn%2C%2Einput%2Dgroup%2Dprepend%20%2Ebtn%2B%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%2Dprepend%20%2Einput%2Dgroup%2Dtext%2B%2Ebtn%2C%2Einput%2Dgroup%2Dprepend%20%2Einput%2Dgroup%2Dtext%2B%2Einput%2Dgroup%2Dtext%7Bmargin%2Dleft%3A%2D1px%7D%2Einput%2Dgroup%2Dprepend%7Bmargin%2Dright%3A%2D1px%7D%2Einput%2Dgroup%2Dappend%7Bmargin%2Dleft%3A%2D1px%7D%2Einput%2Dgroup%2Dtext%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3Bpadding%3A%2E375rem%20%2E75rem%3Bmargin%2Dbottom%3A0%3Bfont%2Dsize%3A1rem%3Bfont%2Dweight%3A400%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23495057%3Btext%2Dalign%3Acenter%3Bwhite%2Dspace%3Anowrap%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%3A1px%20solid%20%23ced4da%3Bborder%2Dradius%3A%2E25rem%7D%2Einput%2Dgroup%2Dtext%20input%5Btype%3Dcheckbox%5D%2C%2Einput%2Dgroup%2Dtext%20input%5Btype%3Dradio%5D%7Bmargin%2Dtop%3A0%7D%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3Alast%2Dchild%3E%2Ebtn%3Anot%28%3Alast%2Dchild%29%3Anot%28%2Edropdown%2Dtoggle%29%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3Alast%2Dchild%3E%2Einput%2Dgroup%2Dtext%3Anot%28%3Alast%2Dchild%29%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3Anot%28%3Alast%2Dchild%29%3E%2Ebtn%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3Anot%28%3Alast%2Dchild%29%3E%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3E%2Ebtn%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3E%2Einput%2Dgroup%2Dtext%7Bborder%2Dtop%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3E%2Ebtn%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dappend%3E%2Einput%2Dgroup%2Dtext%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3Afirst%2Dchild%3E%2Ebtn%3Anot%28%3Afirst%2Dchild%29%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3Afirst%2Dchild%3E%2Einput%2Dgroup%2Dtext%3Anot%28%3Afirst%2Dchild%29%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3Anot%28%3Afirst%2Dchild%29%3E%2Ebtn%2C%2Einput%2Dgroup%3E%2Einput%2Dgroup%2Dprepend%3Anot%28%3Afirst%2Dchild%29%3E%2Einput%2Dgroup%2Dtext%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Ecustom%2Dcontrol%7Bposition%3Arelative%3Bdisplay%3Ablock%3Bmin%2Dheight%3A1%2E5rem%3Bpadding%2Dleft%3A1%2E5rem%7D%2Ecustom%2Dcontrol%2Dinline%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%3Bdisplay%3Ainline%2Dflex%3Bmargin%2Dright%3A1rem%7D%2Ecustom%2Dcontrol%2Dinput%7Bposition%3Aabsolute%3Bz%2Dindex%3A%2D1%3Bopacity%3A0%7D%2Ecustom%2Dcontrol%2Dinput%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%7D%2Ecustom%2Dcontrol%2Dinput%3Afocus%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ecustom%2Dcontrol%2Dinput%3Aactive%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23b3d7ff%7D%2Ecustom%2Dcontrol%2Dinput%3Adisabled%7E%2Ecustom%2Dcontrol%2Dlabel%7Bcolor%3A%236c757d%7D%2Ecustom%2Dcontrol%2Dinput%3Adisabled%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23e9ecef%7D%2Ecustom%2Dcontrol%2Dlabel%7Bposition%3Arelative%3Bmargin%2Dbottom%3A0%7D%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bposition%3Aabsolute%3Btop%3A%2E25rem%3Bleft%3A%2D1%2E5rem%3Bdisplay%3Ablock%3Bwidth%3A1rem%3Bheight%3A1rem%3Bpointer%2Devents%3Anone%3Bcontent%3A%22%22%3B%2Dwebkit%2Duser%2Dselect%3Anone%3B%2Dmoz%2Duser%2Dselect%3Anone%3B%2Dms%2Duser%2Dselect%3Anone%3Buser%2Dselect%3Anone%3Bbackground%2Dcolor%3A%23dee2e6%7D%2Ecustom%2Dcontrol%2Dlabel%3A%3Aafter%7Bposition%3Aabsolute%3Btop%3A%2E25rem%3Bleft%3A%2D1%2E5rem%3Bdisplay%3Ablock%3Bwidth%3A1rem%3Bheight%3A1rem%3Bcontent%3A%22%22%3Bbackground%2Drepeat%3Ano%2Drepeat%3Bbackground%2Dposition%3Acenter%20center%3Bbackground%2Dsize%3A50%25%2050%25%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bborder%2Dradius%3A%2E25rem%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23007bff%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Aafter%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20viewBox%3D%270%200%208%208%27%253E%253Cpath%20fill%3D%27%2523fff%27%20d%3D%27M6%2E564%2E75l%2D3%2E59%203%2E612%2D1%2E538%2D1%2E55L0%204%2E26%202%2E974%207%2E25%208%202%2E193z%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Aindeterminate%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23007bff%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Aindeterminate%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Aafter%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20viewBox%3D%270%200%204%204%27%253E%253Cpath%20stroke%3D%27%2523fff%27%20d%3D%27M0%202h4%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Adisabled%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3Argba%280%2C123%2C255%2C%2E5%29%7D%2Ecustom%2Dcheckbox%20%2Ecustom%2Dcontrol%2Dinput%3Adisabled%3Aindeterminate%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3Argba%280%2C123%2C255%2C%2E5%29%7D%2Ecustom%2Dradio%20%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bborder%2Dradius%3A50%25%7D%2Ecustom%2Dradio%20%2Ecustom%2Dcontrol%2Dinput%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3A%23007bff%7D%2Ecustom%2Dradio%20%2Ecustom%2Dcontrol%2Dinput%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Aafter%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20viewBox%3D%27%2D4%20%2D4%208%208%27%253E%253Ccircle%20r%3D%273%27%20fill%3D%27%2523fff%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Ecustom%2Dradio%20%2Ecustom%2Dcontrol%2Dinput%3Adisabled%3Achecked%7E%2Ecustom%2Dcontrol%2Dlabel%3A%3Abefore%7Bbackground%2Dcolor%3Argba%280%2C123%2C255%2C%2E5%29%7D%2Ecustom%2Dselect%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A100%25%3Bheight%3Acalc%282%2E25rem%20%2B%202px%29%3Bpadding%3A%2E375rem%201%2E75rem%20%2E375rem%20%2E75rem%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23495057%3Bvertical%2Dalign%3Amiddle%3Bbackground%3A%23fff%20url%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20viewBox%3D%270%200%204%205%27%253E%253Cpath%20fill%3D%27%2523343a40%27%20d%3D%27M2%200L0%202h4zm0%205L0%203h4z%27%2F%253E%253C%2Fsvg%253E%22%29%20no%2Drepeat%20right%20%2E75rem%20center%3Bbackground%2Dsize%3A8px%2010px%3Bborder%3A1px%20solid%20%23ced4da%3Bborder%2Dradius%3A%2E25rem%3B%2Dwebkit%2Dappearance%3Anone%3B%2Dmoz%2Dappearance%3Anone%3Bappearance%3Anone%7D%2Ecustom%2Dselect%3Afocus%7Bborder%2Dcolor%3A%2380bdff%3Boutline%3A0%3Bbox%2Dshadow%3Ainset%200%201px%202px%20rgba%280%2C0%2C0%2C%2E075%29%2C0%200%205px%20rgba%28128%2C189%2C255%2C%2E5%29%7D%2Ecustom%2Dselect%3Afocus%3A%3A%2Dms%2Dvalue%7Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%7D%2Ecustom%2Dselect%5Bmultiple%5D%2C%2Ecustom%2Dselect%5Bsize%5D%3Anot%28%5Bsize%3D%221%22%5D%29%7Bheight%3Aauto%3Bpadding%2Dright%3A%2E75rem%3Bbackground%2Dimage%3Anone%7D%2Ecustom%2Dselect%3Adisabled%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3A%23e9ecef%7D%2Ecustom%2Dselect%3A%3A%2Dms%2Dexpand%7Bopacity%3A0%7D%2Ecustom%2Dselect%2Dsm%7Bheight%3Acalc%281%2E8125rem%20%2B%202px%29%3Bpadding%2Dtop%3A%2E375rem%3Bpadding%2Dbottom%3A%2E375rem%3Bfont%2Dsize%3A75%25%7D%2Ecustom%2Dselect%2Dlg%7Bheight%3Acalc%282%2E875rem%20%2B%202px%29%3Bpadding%2Dtop%3A%2E375rem%3Bpadding%2Dbottom%3A%2E375rem%3Bfont%2Dsize%3A125%25%7D%2Ecustom%2Dfile%7Bposition%3Arelative%3Bdisplay%3Ainline%2Dblock%3Bwidth%3A100%25%3Bheight%3Acalc%282%2E25rem%20%2B%202px%29%3Bmargin%2Dbottom%3A0%7D%2Ecustom%2Dfile%2Dinput%7Bposition%3Arelative%3Bz%2Dindex%3A2%3Bwidth%3A100%25%3Bheight%3Acalc%282%2E25rem%20%2B%202px%29%3Bmargin%3A0%3Bopacity%3A0%7D%2Ecustom%2Dfile%2Dinput%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%7Bborder%2Dcolor%3A%2380bdff%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ecustom%2Dfile%2Dinput%3Afocus%7E%2Ecustom%2Dfile%2Dlabel%3A%3Aafter%7Bborder%2Dcolor%3A%2380bdff%7D%2Ecustom%2Dfile%2Dinput%3Alang%28en%29%7E%2Ecustom%2Dfile%2Dlabel%3A%3Aafter%7Bcontent%3A%22Browse%22%7D%2Ecustom%2Dfile%2Dlabel%7Bposition%3Aabsolute%3Btop%3A0%3Bright%3A0%3Bleft%3A0%3Bz%2Dindex%3A1%3Bheight%3Acalc%282%2E25rem%20%2B%202px%29%3Bpadding%3A%2E375rem%20%2E75rem%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%3Bborder%3A1px%20solid%20%23ced4da%3Bborder%2Dradius%3A%2E25rem%7D%2Ecustom%2Dfile%2Dlabel%3A%3Aafter%7Bposition%3Aabsolute%3Btop%3A0%3Bright%3A0%3Bbottom%3A0%3Bz%2Dindex%3A3%3Bdisplay%3Ablock%3Bheight%3A2%2E25rem%3Bpadding%3A%2E375rem%20%2E75rem%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23495057%3Bcontent%3A%22Browse%22%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dleft%3A1px%20solid%20%23ced4da%3Bborder%2Dradius%3A0%20%2E25rem%20%2E25rem%200%7D%2Ecustom%2Drange%7Bwidth%3A100%25%3Bpadding%2Dleft%3A0%3Bbackground%2Dcolor%3Atransparent%3B%2Dwebkit%2Dappearance%3Anone%3B%2Dmoz%2Dappearance%3Anone%3Bappearance%3Anone%7D%2Ecustom%2Drange%3Afocus%7Boutline%3A0%7D%2Ecustom%2Drange%3A%3A%2Dmoz%2Dfocus%2Douter%7Bborder%3A0%7D%2Ecustom%2Drange%3A%3A%2Dwebkit%2Dslider%2Dthumb%7Bwidth%3A1rem%3Bheight%3A1rem%3Bmargin%2Dtop%3A%2D%2E25rem%3Bbackground%2Dcolor%3A%23007bff%3Bborder%3A0%3Bborder%2Dradius%3A1rem%3B%2Dwebkit%2Dappearance%3Anone%3Bappearance%3Anone%7D%2Ecustom%2Drange%3A%3A%2Dwebkit%2Dslider%2Dthumb%3Afocus%7Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ecustom%2Drange%3A%3A%2Dwebkit%2Dslider%2Dthumb%3Aactive%7Bbackground%2Dcolor%3A%23b3d7ff%7D%2Ecustom%2Drange%3A%3A%2Dwebkit%2Dslider%2Drunnable%2Dtrack%7Bwidth%3A100%25%3Bheight%3A%2E5rem%3Bcolor%3Atransparent%3Bcursor%3Apointer%3Bbackground%2Dcolor%3A%23dee2e6%3Bborder%2Dcolor%3Atransparent%3Bborder%2Dradius%3A1rem%7D%2Ecustom%2Drange%3A%3A%2Dmoz%2Drange%2Dthumb%7Bwidth%3A1rem%3Bheight%3A1rem%3Bbackground%2Dcolor%3A%23007bff%3Bborder%3A0%3Bborder%2Dradius%3A1rem%3B%2Dmoz%2Dappearance%3Anone%3Bappearance%3Anone%7D%2Ecustom%2Drange%3A%3A%2Dmoz%2Drange%2Dthumb%3Afocus%7Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ecustom%2Drange%3A%3A%2Dmoz%2Drange%2Dthumb%3Aactive%7Bbackground%2Dcolor%3A%23b3d7ff%7D%2Ecustom%2Drange%3A%3A%2Dmoz%2Drange%2Dtrack%7Bwidth%3A100%25%3Bheight%3A%2E5rem%3Bcolor%3Atransparent%3Bcursor%3Apointer%3Bbackground%2Dcolor%3A%23dee2e6%3Bborder%2Dcolor%3Atransparent%3Bborder%2Dradius%3A1rem%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dthumb%7Bwidth%3A1rem%3Bheight%3A1rem%3Bbackground%2Dcolor%3A%23007bff%3Bborder%3A0%3Bborder%2Dradius%3A1rem%3Bappearance%3Anone%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dthumb%3Afocus%7Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%201px%20%23fff%2C0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dthumb%3Aactive%7Bbackground%2Dcolor%3A%23b3d7ff%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dtrack%7Bwidth%3A100%25%3Bheight%3A%2E5rem%3Bcolor%3Atransparent%3Bcursor%3Apointer%3Bbackground%2Dcolor%3Atransparent%3Bborder%2Dcolor%3Atransparent%3Bborder%2Dwidth%3A%2E5rem%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dfill%2Dlower%7Bbackground%2Dcolor%3A%23dee2e6%3Bborder%2Dradius%3A1rem%7D%2Ecustom%2Drange%3A%3A%2Dms%2Dfill%2Dupper%7Bmargin%2Dright%3A15px%3Bbackground%2Dcolor%3A%23dee2e6%3Bborder%2Dradius%3A1rem%7D%2Enav%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3Bpadding%2Dleft%3A0%3Bmargin%2Dbottom%3A0%3Blist%2Dstyle%3Anone%7D%2Enav%2Dlink%7Bdisplay%3Ablock%3Bpadding%3A%2E5rem%201rem%7D%2Enav%2Dlink%3Afocus%2C%2Enav%2Dlink%3Ahover%7Btext%2Ddecoration%3Anone%7D%2Enav%2Dlink%2Edisabled%7Bcolor%3A%236c757d%7D%2Enav%2Dtabs%7Bborder%2Dbottom%3A1px%20solid%20%23dee2e6%7D%2Enav%2Dtabs%20%2Enav%2Ditem%7Bmargin%2Dbottom%3A%2D1px%7D%2Enav%2Dtabs%20%2Enav%2Dlink%7Bborder%3A1px%20solid%20transparent%3Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%3Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%7D%2Enav%2Dtabs%20%2Enav%2Dlink%3Afocus%2C%2Enav%2Dtabs%20%2Enav%2Dlink%3Ahover%7Bborder%2Dcolor%3A%23e9ecef%20%23e9ecef%20%23dee2e6%7D%2Enav%2Dtabs%20%2Enav%2Dlink%2Edisabled%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3Atransparent%3Bborder%2Dcolor%3Atransparent%7D%2Enav%2Dtabs%20%2Enav%2Ditem%2Eshow%20%2Enav%2Dlink%2C%2Enav%2Dtabs%20%2Enav%2Dlink%2Eactive%7Bcolor%3A%23495057%3Bbackground%2Dcolor%3A%23fff%3Bborder%2Dcolor%3A%23dee2e6%20%23dee2e6%20%23fff%7D%2Enav%2Dtabs%20%2Edropdown%2Dmenu%7Bmargin%2Dtop%3A%2D1px%3Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dtop%2Dright%2Dradius%3A0%7D%2Enav%2Dpills%20%2Enav%2Dlink%7Bborder%2Dradius%3A%2E25rem%7D%2Enav%2Dpills%20%2Enav%2Dlink%2Eactive%2C%2Enav%2Dpills%20%2Eshow%3E%2Enav%2Dlink%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%7D%2Enav%2Dfill%20%2Enav%2Ditem%7B%2Dms%2Dflex%3A1%201%20auto%3Bflex%3A1%201%20auto%3Btext%2Dalign%3Acenter%7D%2Enav%2Djustified%20%2Enav%2Ditem%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A0%3Bflex%2Dbasis%3A0%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3Btext%2Dalign%3Acenter%7D%2Etab%2Dcontent%3E%2Etab%2Dpane%7Bdisplay%3Anone%7D%2Etab%2Dcontent%3E%2Eactive%7Bdisplay%3Ablock%7D%2Enavbar%7Bposition%3Arelative%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Ajustify%3Bjustify%2Dcontent%3Aspace%2Dbetween%3Bpadding%3A%2E5rem%201rem%7D%2Enavbar%3E%2Econtainer%2C%2Enavbar%3E%2Econtainer%2Dfluid%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Ajustify%3Bjustify%2Dcontent%3Aspace%2Dbetween%7D%2Enavbar%2Dbrand%7Bdisplay%3Ainline%2Dblock%3Bpadding%2Dtop%3A%2E3125rem%3Bpadding%2Dbottom%3A%2E3125rem%3Bmargin%2Dright%3A1rem%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3Ainherit%3Bwhite%2Dspace%3Anowrap%7D%2Enavbar%2Dbrand%3Afocus%2C%2Enavbar%2Dbrand%3Ahover%7Btext%2Ddecoration%3Anone%7D%2Enavbar%2Dnav%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3Bpadding%2Dleft%3A0%3Bmargin%2Dbottom%3A0%3Blist%2Dstyle%3Anone%7D%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Astatic%3Bfloat%3Anone%7D%2Enavbar%2Dtext%7Bdisplay%3Ainline%2Dblock%3Bpadding%2Dtop%3A%2E5rem%3Bpadding%2Dbottom%3A%2E5rem%7D%2Enavbar%2Dcollapse%7B%2Dms%2Dflex%2Dpreferred%2Dsize%3A100%25%3Bflex%2Dbasis%3A100%25%3B%2Dms%2Dflex%2Dpositive%3A1%3Bflex%2Dgrow%3A1%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%7D%2Enavbar%2Dtoggler%7Bpadding%3A%2E25rem%20%2E75rem%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3A1%3Bbackground%2Dcolor%3Atransparent%3Bborder%3A1px%20solid%20transparent%3Bborder%2Dradius%3A%2E25rem%7D%2Enavbar%2Dtoggler%3Afocus%2C%2Enavbar%2Dtoggler%3Ahover%7Btext%2Ddecoration%3Anone%7D%2Enavbar%2Dtoggler%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%7Bcursor%3Apointer%7D%2Enavbar%2Dtoggler%2Dicon%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A1%2E5em%3Bheight%3A1%2E5em%3Bvertical%2Dalign%3Amiddle%3Bcontent%3A%22%22%3Bbackground%3Ano%2Drepeat%20center%20center%3Bbackground%2Dsize%3A100%25%20100%25%7D%40media%20%28max%2Dwidth%3A575%2E98px%29%7B%2Enavbar%2Dexpand%2Dsm%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dsm%3E%2Econtainer%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Enavbar%2Dexpand%2Dsm%7B%2Dms%2Dflex%2Dflow%3Arow%20nowrap%3Bflex%2Dflow%3Arow%20nowrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Enavbar%2Dexpand%2Dsm%20%2Enavbar%2Dnav%7B%2Dms%2Dflex%2Ddirection%3Arow%3Bflex%2Ddirection%3Arow%7D%2Enavbar%2Dexpand%2Dsm%20%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Aabsolute%7D%2Enavbar%2Dexpand%2Dsm%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A%2E5rem%3Bpadding%2Dleft%3A%2E5rem%7D%2Enavbar%2Dexpand%2Dsm%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dsm%3E%2Econtainer%2Dfluid%7B%2Dms%2Dflex%2Dwrap%3Anowrap%3Bflex%2Dwrap%3Anowrap%7D%2Enavbar%2Dexpand%2Dsm%20%2Enavbar%2Dcollapse%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%3B%2Dms%2Dflex%2Dpreferred%2Dsize%3Aauto%3Bflex%2Dbasis%3Aauto%7D%2Enavbar%2Dexpand%2Dsm%20%2Enavbar%2Dtoggler%7Bdisplay%3Anone%7D%7D%40media%20%28max%2Dwidth%3A767%2E98px%29%7B%2Enavbar%2Dexpand%2Dmd%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dmd%3E%2Econtainer%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Enavbar%2Dexpand%2Dmd%7B%2Dms%2Dflex%2Dflow%3Arow%20nowrap%3Bflex%2Dflow%3Arow%20nowrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Enavbar%2Dexpand%2Dmd%20%2Enavbar%2Dnav%7B%2Dms%2Dflex%2Ddirection%3Arow%3Bflex%2Ddirection%3Arow%7D%2Enavbar%2Dexpand%2Dmd%20%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Aabsolute%7D%2Enavbar%2Dexpand%2Dmd%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A%2E5rem%3Bpadding%2Dleft%3A%2E5rem%7D%2Enavbar%2Dexpand%2Dmd%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dmd%3E%2Econtainer%2Dfluid%7B%2Dms%2Dflex%2Dwrap%3Anowrap%3Bflex%2Dwrap%3Anowrap%7D%2Enavbar%2Dexpand%2Dmd%20%2Enavbar%2Dcollapse%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%3B%2Dms%2Dflex%2Dpreferred%2Dsize%3Aauto%3Bflex%2Dbasis%3Aauto%7D%2Enavbar%2Dexpand%2Dmd%20%2Enavbar%2Dtoggler%7Bdisplay%3Anone%7D%7D%40media%20%28max%2Dwidth%3A991%2E98px%29%7B%2Enavbar%2Dexpand%2Dlg%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dlg%3E%2Econtainer%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Enavbar%2Dexpand%2Dlg%7B%2Dms%2Dflex%2Dflow%3Arow%20nowrap%3Bflex%2Dflow%3Arow%20nowrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Enavbar%2Dexpand%2Dlg%20%2Enavbar%2Dnav%7B%2Dms%2Dflex%2Ddirection%3Arow%3Bflex%2Ddirection%3Arow%7D%2Enavbar%2Dexpand%2Dlg%20%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Aabsolute%7D%2Enavbar%2Dexpand%2Dlg%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A%2E5rem%3Bpadding%2Dleft%3A%2E5rem%7D%2Enavbar%2Dexpand%2Dlg%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dlg%3E%2Econtainer%2Dfluid%7B%2Dms%2Dflex%2Dwrap%3Anowrap%3Bflex%2Dwrap%3Anowrap%7D%2Enavbar%2Dexpand%2Dlg%20%2Enavbar%2Dcollapse%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%3B%2Dms%2Dflex%2Dpreferred%2Dsize%3Aauto%3Bflex%2Dbasis%3Aauto%7D%2Enavbar%2Dexpand%2Dlg%20%2Enavbar%2Dtoggler%7Bdisplay%3Anone%7D%7D%40media%20%28max%2Dwidth%3A1199%2E98px%29%7B%2Enavbar%2Dexpand%2Dxl%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dxl%3E%2Econtainer%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Enavbar%2Dexpand%2Dxl%7B%2Dms%2Dflex%2Dflow%3Arow%20nowrap%3Bflex%2Dflow%3Arow%20nowrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Enavbar%2Dexpand%2Dxl%20%2Enavbar%2Dnav%7B%2Dms%2Dflex%2Ddirection%3Arow%3Bflex%2Ddirection%3Arow%7D%2Enavbar%2Dexpand%2Dxl%20%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Aabsolute%7D%2Enavbar%2Dexpand%2Dxl%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A%2E5rem%3Bpadding%2Dleft%3A%2E5rem%7D%2Enavbar%2Dexpand%2Dxl%3E%2Econtainer%2C%2Enavbar%2Dexpand%2Dxl%3E%2Econtainer%2Dfluid%7B%2Dms%2Dflex%2Dwrap%3Anowrap%3Bflex%2Dwrap%3Anowrap%7D%2Enavbar%2Dexpand%2Dxl%20%2Enavbar%2Dcollapse%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%3B%2Dms%2Dflex%2Dpreferred%2Dsize%3Aauto%3Bflex%2Dbasis%3Aauto%7D%2Enavbar%2Dexpand%2Dxl%20%2Enavbar%2Dtoggler%7Bdisplay%3Anone%7D%7D%2Enavbar%2Dexpand%7B%2Dms%2Dflex%2Dflow%3Arow%20nowrap%3Bflex%2Dflow%3Arow%20nowrap%3B%2Dms%2Dflex%2Dpack%3Astart%3Bjustify%2Dcontent%3Aflex%2Dstart%7D%2Enavbar%2Dexpand%3E%2Econtainer%2C%2Enavbar%2Dexpand%3E%2Econtainer%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%7D%2Enavbar%2Dexpand%20%2Enavbar%2Dnav%7B%2Dms%2Dflex%2Ddirection%3Arow%3Bflex%2Ddirection%3Arow%7D%2Enavbar%2Dexpand%20%2Enavbar%2Dnav%20%2Edropdown%2Dmenu%7Bposition%3Aabsolute%7D%2Enavbar%2Dexpand%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bpadding%2Dright%3A%2E5rem%3Bpadding%2Dleft%3A%2E5rem%7D%2Enavbar%2Dexpand%3E%2Econtainer%2C%2Enavbar%2Dexpand%3E%2Econtainer%2Dfluid%7B%2Dms%2Dflex%2Dwrap%3Anowrap%3Bflex%2Dwrap%3Anowrap%7D%2Enavbar%2Dexpand%20%2Enavbar%2Dcollapse%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%3B%2Dms%2Dflex%2Dpreferred%2Dsize%3Aauto%3Bflex%2Dbasis%3Aauto%7D%2Enavbar%2Dexpand%20%2Enavbar%2Dtoggler%7Bdisplay%3Anone%7D%2Enavbar%2Dlight%20%2Enavbar%2Dbrand%7Bcolor%3Argba%280%2C0%2C0%2C%2E9%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dbrand%3Afocus%2C%2Enavbar%2Dlight%20%2Enavbar%2Dbrand%3Ahover%7Bcolor%3Argba%280%2C0%2C0%2C%2E9%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bcolor%3Argba%280%2C0%2C0%2C%2E5%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%3Afocus%2C%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%3Ahover%7Bcolor%3Argba%280%2C0%2C0%2C%2E7%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Edisabled%7Bcolor%3Argba%280%2C0%2C0%2C%2E3%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Eactive%3E%2Enav%2Dlink%2C%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Eactive%2C%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Eshow%2C%2Enavbar%2Dlight%20%2Enavbar%2Dnav%20%2Eshow%3E%2Enav%2Dlink%7Bcolor%3Argba%280%2C0%2C0%2C%2E9%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dtoggler%7Bcolor%3Argba%280%2C0%2C0%2C%2E5%29%3Bborder%2Dcolor%3Argba%280%2C0%2C0%2C%2E1%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dtoggler%2Dicon%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20viewBox%3D%270%200%2030%2030%27%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%253E%253Cpath%20stroke%3D%27rgba%280%2C%200%2C%200%2C%200%2E5%29%27%20stroke%2Dwidth%3D%272%27%20stroke%2Dlinecap%3D%27round%27%20stroke%2Dmiterlimit%3D%2710%27%20d%3D%27M4%207h22M4%2015h22M4%2023h22%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dtext%7Bcolor%3Argba%280%2C0%2C0%2C%2E5%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dtext%20a%7Bcolor%3Argba%280%2C0%2C0%2C%2E9%29%7D%2Enavbar%2Dlight%20%2Enavbar%2Dtext%20a%3Afocus%2C%2Enavbar%2Dlight%20%2Enavbar%2Dtext%20a%3Ahover%7Bcolor%3Argba%280%2C0%2C0%2C%2E9%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dbrand%7Bcolor%3A%23fff%7D%2Enavbar%2Ddark%20%2Enavbar%2Dbrand%3Afocus%2C%2Enavbar%2Ddark%20%2Enavbar%2Dbrand%3Ahover%7Bcolor%3A%23fff%7D%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%7Bcolor%3Argba%28255%2C255%2C255%2C%2E5%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%3Afocus%2C%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%3Ahover%7Bcolor%3Argba%28255%2C255%2C255%2C%2E75%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Edisabled%7Bcolor%3Argba%28255%2C255%2C255%2C%2E25%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Eactive%3E%2Enav%2Dlink%2C%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Eactive%2C%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Enav%2Dlink%2Eshow%2C%2Enavbar%2Ddark%20%2Enavbar%2Dnav%20%2Eshow%3E%2Enav%2Dlink%7Bcolor%3A%23fff%7D%2Enavbar%2Ddark%20%2Enavbar%2Dtoggler%7Bcolor%3Argba%28255%2C255%2C255%2C%2E5%29%3Bborder%2Dcolor%3Argba%28255%2C255%2C255%2C%2E1%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dtoggler%2Dicon%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20viewBox%3D%270%200%2030%2030%27%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%253E%253Cpath%20stroke%3D%27rgba%28255%2C%20255%2C%20255%2C%200%2E5%29%27%20stroke%2Dwidth%3D%272%27%20stroke%2Dlinecap%3D%27round%27%20stroke%2Dmiterlimit%3D%2710%27%20d%3D%27M4%207h22M4%2015h22M4%2023h22%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dtext%7Bcolor%3Argba%28255%2C255%2C255%2C%2E5%29%7D%2Enavbar%2Ddark%20%2Enavbar%2Dtext%20a%7Bcolor%3A%23fff%7D%2Enavbar%2Ddark%20%2Enavbar%2Dtext%20a%3Afocus%2C%2Enavbar%2Ddark%20%2Enavbar%2Dtext%20a%3Ahover%7Bcolor%3A%23fff%7D%2Ecard%7Bposition%3Arelative%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3Bmin%2Dwidth%3A0%3Bword%2Dwrap%3Abreak%2Dword%3Bbackground%2Dcolor%3A%23fff%3Bbackground%2Dclip%3Aborder%2Dbox%3Bborder%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E125%29%3Bborder%2Dradius%3A%2E25rem%7D%2Ecard%3Ehr%7Bmargin%2Dright%3A0%3Bmargin%2Dleft%3A0%7D%2Ecard%3E%2Elist%2Dgroup%3Afirst%2Dchild%20%2Elist%2Dgroup%2Ditem%3Afirst%2Dchild%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%3Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%7D%2Ecard%3E%2Elist%2Dgroup%3Alast%2Dchild%20%2Elist%2Dgroup%2Ditem%3Alast%2Dchild%7Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%7D%2Ecard%2Dbody%7B%2Dms%2Dflex%3A1%201%20auto%3Bflex%3A1%201%20auto%3Bpadding%3A1%2E25rem%7D%2Ecard%2Dtitle%7Bmargin%2Dbottom%3A%2E75rem%7D%2Ecard%2Dsubtitle%7Bmargin%2Dtop%3A%2D%2E375rem%3Bmargin%2Dbottom%3A0%7D%2Ecard%2Dtext%3Alast%2Dchild%7Bmargin%2Dbottom%3A0%7D%2Ecard%2Dlink%3Ahover%7Btext%2Ddecoration%3Anone%7D%2Ecard%2Dlink%2B%2Ecard%2Dlink%7Bmargin%2Dleft%3A1%2E25rem%7D%2Ecard%2Dheader%7Bpadding%3A%2E75rem%201%2E25rem%3Bmargin%2Dbottom%3A0%3Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E03%29%3Bborder%2Dbottom%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E125%29%7D%2Ecard%2Dheader%3Afirst%2Dchild%7Bborder%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%20calc%28%2E25rem%20%2D%201px%29%200%200%7D%2Ecard%2Dheader%2B%2Elist%2Dgroup%20%2Elist%2Dgroup%2Ditem%3Afirst%2Dchild%7Bborder%2Dtop%3A0%7D%2Ecard%2Dfooter%7Bpadding%3A%2E75rem%201%2E25rem%3Bbackground%2Dcolor%3Argba%280%2C0%2C0%2C%2E03%29%3Bborder%2Dtop%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E125%29%7D%2Ecard%2Dfooter%3Alast%2Dchild%7Bborder%2Dradius%3A0%200%20calc%28%2E25rem%20%2D%201px%29%20calc%28%2E25rem%20%2D%201px%29%7D%2Ecard%2Dheader%2Dtabs%7Bmargin%2Dright%3A%2D%2E625rem%3Bmargin%2Dbottom%3A%2D%2E75rem%3Bmargin%2Dleft%3A%2D%2E625rem%3Bborder%2Dbottom%3A0%7D%2Ecard%2Dheader%2Dpills%7Bmargin%2Dright%3A%2D%2E625rem%3Bmargin%2Dleft%3A%2D%2E625rem%7D%2Ecard%2Dimg%2Doverlay%7Bposition%3Aabsolute%3Btop%3A0%3Bright%3A0%3Bbottom%3A0%3Bleft%3A0%3Bpadding%3A1%2E25rem%7D%2Ecard%2Dimg%7Bwidth%3A100%25%3Bborder%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%7D%2Ecard%2Dimg%2Dtop%7Bwidth%3A100%25%3Bborder%2Dtop%2Dleft%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%3Bborder%2Dtop%2Dright%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%7D%2Ecard%2Dimg%2Dbottom%7Bwidth%3A100%25%3Bborder%2Dbottom%2Dright%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%3Bborder%2Dbottom%2Dleft%2Dradius%3Acalc%28%2E25rem%20%2D%201px%29%7D%2Ecard%2Ddeck%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%7D%2Ecard%2Ddeck%20%2Ecard%7Bmargin%2Dbottom%3A15px%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ecard%2Ddeck%7B%2Dms%2Dflex%2Dflow%3Arow%20wrap%3Bflex%2Dflow%3Arow%20wrap%3Bmargin%2Dright%3A%2D15px%3Bmargin%2Dleft%3A%2D15px%7D%2Ecard%2Ddeck%20%2Ecard%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%3A1%200%200%25%3Bflex%3A1%200%200%25%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3Bmargin%2Dright%3A15px%3Bmargin%2Dbottom%3A0%3Bmargin%2Dleft%3A15px%7D%7D%2Ecard%2Dgroup%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%7D%2Ecard%2Dgroup%3E%2Ecard%7Bmargin%2Dbottom%3A15px%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ecard%2Dgroup%7B%2Dms%2Dflex%2Dflow%3Arow%20wrap%3Bflex%2Dflow%3Arow%20wrap%7D%2Ecard%2Dgroup%3E%2Ecard%7B%2Dms%2Dflex%3A1%200%200%25%3Bflex%3A1%200%200%25%3Bmargin%2Dbottom%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%2B%2Ecard%7Bmargin%2Dleft%3A0%3Bborder%2Dleft%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Afirst%2Dchild%7Bborder%2Dtop%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Afirst%2Dchild%20%2Ecard%2Dheader%2C%2Ecard%2Dgroup%3E%2Ecard%3Afirst%2Dchild%20%2Ecard%2Dimg%2Dtop%7Bborder%2Dtop%2Dright%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Afirst%2Dchild%20%2Ecard%2Dfooter%2C%2Ecard%2Dgroup%3E%2Ecard%3Afirst%2Dchild%20%2Ecard%2Dimg%2Dbottom%7Bborder%2Dbottom%2Dright%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Alast%2Dchild%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Alast%2Dchild%20%2Ecard%2Dheader%2C%2Ecard%2Dgroup%3E%2Ecard%3Alast%2Dchild%20%2Ecard%2Dimg%2Dtop%7Bborder%2Dtop%2Dleft%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Alast%2Dchild%20%2Ecard%2Dfooter%2C%2Ecard%2Dgroup%3E%2Ecard%3Alast%2Dchild%20%2Ecard%2Dimg%2Dbottom%7Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Aonly%2Dchild%7Bborder%2Dradius%3A%2E25rem%7D%2Ecard%2Dgroup%3E%2Ecard%3Aonly%2Dchild%20%2Ecard%2Dheader%2C%2Ecard%2Dgroup%3E%2Ecard%3Aonly%2Dchild%20%2Ecard%2Dimg%2Dtop%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%3Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%7D%2Ecard%2Dgroup%3E%2Ecard%3Aonly%2Dchild%20%2Ecard%2Dfooter%2C%2Ecard%2Dgroup%3E%2Ecard%3Aonly%2Dchild%20%2Ecard%2Dimg%2Dbottom%7Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%7D%2Ecard%2Dgroup%3E%2Ecard%3Anot%28%3Afirst%2Dchild%29%3Anot%28%3Alast%2Dchild%29%3Anot%28%3Aonly%2Dchild%29%7Bborder%2Dradius%3A0%7D%2Ecard%2Dgroup%3E%2Ecard%3Anot%28%3Afirst%2Dchild%29%3Anot%28%3Alast%2Dchild%29%3Anot%28%3Aonly%2Dchild%29%20%2Ecard%2Dfooter%2C%2Ecard%2Dgroup%3E%2Ecard%3Anot%28%3Afirst%2Dchild%29%3Anot%28%3Alast%2Dchild%29%3Anot%28%3Aonly%2Dchild%29%20%2Ecard%2Dheader%2C%2Ecard%2Dgroup%3E%2Ecard%3Anot%28%3Afirst%2Dchild%29%3Anot%28%3Alast%2Dchild%29%3Anot%28%3Aonly%2Dchild%29%20%2Ecard%2Dimg%2Dbottom%2C%2Ecard%2Dgroup%3E%2Ecard%3Anot%28%3Afirst%2Dchild%29%3Anot%28%3Alast%2Dchild%29%3Anot%28%3Aonly%2Dchild%29%20%2Ecard%2Dimg%2Dtop%7Bborder%2Dradius%3A0%7D%7D%2Ecard%2Dcolumns%20%2Ecard%7Bmargin%2Dbottom%3A%2E75rem%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ecard%2Dcolumns%7B%2Dwebkit%2Dcolumn%2Dcount%3A3%3B%2Dmoz%2Dcolumn%2Dcount%3A3%3Bcolumn%2Dcount%3A3%3B%2Dwebkit%2Dcolumn%2Dgap%3A1%2E25rem%3B%2Dmoz%2Dcolumn%2Dgap%3A1%2E25rem%3Bcolumn%2Dgap%3A1%2E25rem%3Borphans%3A1%3Bwidows%3A1%7D%2Ecard%2Dcolumns%20%2Ecard%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A100%25%7D%7D%2Eaccordion%20%2Ecard%3Anot%28%3Afirst%2Dof%2Dtype%29%3Anot%28%3Alast%2Dof%2Dtype%29%7Bborder%2Dbottom%3A0%3Bborder%2Dradius%3A0%7D%2Eaccordion%20%2Ecard%3Anot%28%3Afirst%2Dof%2Dtype%29%20%2Ecard%2Dheader%3Afirst%2Dchild%7Bborder%2Dradius%3A0%7D%2Eaccordion%20%2Ecard%3Afirst%2Dof%2Dtype%7Bborder%2Dbottom%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A0%3Bborder%2Dbottom%2Dleft%2Dradius%3A0%7D%2Eaccordion%20%2Ecard%3Alast%2Dof%2Dtype%7Bborder%2Dtop%2Dleft%2Dradius%3A0%3Bborder%2Dtop%2Dright%2Dradius%3A0%7D%2Ebreadcrumb%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dwrap%3Awrap%3Bflex%2Dwrap%3Awrap%3Bpadding%3A%2E75rem%201rem%3Bmargin%2Dbottom%3A1rem%3Blist%2Dstyle%3Anone%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dradius%3A%2E25rem%7D%2Ebreadcrumb%2Ditem%2B%2Ebreadcrumb%2Ditem%7Bpadding%2Dleft%3A%2E5rem%7D%2Ebreadcrumb%2Ditem%2B%2Ebreadcrumb%2Ditem%3A%3Abefore%7Bdisplay%3Ainline%2Dblock%3Bpadding%2Dright%3A%2E5rem%3Bcolor%3A%236c757d%3Bcontent%3A%22%2F%22%7D%2Ebreadcrumb%2Ditem%2B%2Ebreadcrumb%2Ditem%3Ahover%3A%3Abefore%7Btext%2Ddecoration%3Aunderline%7D%2Ebreadcrumb%2Ditem%2B%2Ebreadcrumb%2Ditem%3Ahover%3A%3Abefore%7Btext%2Ddecoration%3Anone%7D%2Ebreadcrumb%2Ditem%2Eactive%7Bcolor%3A%236c757d%7D%2Epagination%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3Bpadding%2Dleft%3A0%3Blist%2Dstyle%3Anone%3Bborder%2Dradius%3A%2E25rem%7D%2Epage%2Dlink%7Bposition%3Arelative%3Bdisplay%3Ablock%3Bpadding%3A%2E5rem%20%2E75rem%3Bmargin%2Dleft%3A%2D1px%3Bline%2Dheight%3A1%2E25%3Bcolor%3A%23007bff%3Bbackground%2Dcolor%3A%23fff%3Bborder%3A1px%20solid%20%23dee2e6%7D%2Epage%2Dlink%3Ahover%7Bz%2Dindex%3A2%3Bcolor%3A%230056b3%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dcolor%3A%23dee2e6%7D%2Epage%2Dlink%3Afocus%7Bz%2Dindex%3A2%3Boutline%3A0%3Bbox%2Dshadow%3A0%200%200%20%2E2rem%20rgba%280%2C123%2C255%2C%2E25%29%7D%2Epage%2Dlink%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%7Bcursor%3Apointer%7D%2Epage%2Ditem%3Afirst%2Dchild%20%2Epage%2Dlink%7Bmargin%2Dleft%3A0%3Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%7D%2Epage%2Ditem%3Alast%2Dchild%20%2Epage%2Dlink%7Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%3Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%7D%2Epage%2Ditem%2Eactive%20%2Epage%2Dlink%7Bz%2Dindex%3A1%3Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Epage%2Ditem%2Edisabled%20%2Epage%2Dlink%7Bcolor%3A%236c757d%3Bpointer%2Devents%3Anone%3Bcursor%3Aauto%3Bbackground%2Dcolor%3A%23fff%3Bborder%2Dcolor%3A%23dee2e6%7D%2Epagination%2Dlg%20%2Epage%2Dlink%7Bpadding%3A%2E75rem%201%2E5rem%3Bfont%2Dsize%3A1%2E25rem%3Bline%2Dheight%3A1%2E5%7D%2Epagination%2Dlg%20%2Epage%2Ditem%3Afirst%2Dchild%20%2Epage%2Dlink%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E3rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E3rem%7D%2Epagination%2Dlg%20%2Epage%2Ditem%3Alast%2Dchild%20%2Epage%2Dlink%7Bborder%2Dtop%2Dright%2Dradius%3A%2E3rem%3Bborder%2Dbottom%2Dright%2Dradius%3A%2E3rem%7D%2Epagination%2Dsm%20%2Epage%2Dlink%7Bpadding%3A%2E25rem%20%2E5rem%3Bfont%2Dsize%3A%2E875rem%3Bline%2Dheight%3A1%2E5%7D%2Epagination%2Dsm%20%2Epage%2Ditem%3Afirst%2Dchild%20%2Epage%2Dlink%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E2rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E2rem%7D%2Epagination%2Dsm%20%2Epage%2Ditem%3Alast%2Dchild%20%2Epage%2Dlink%7Bborder%2Dtop%2Dright%2Dradius%3A%2E2rem%3Bborder%2Dbottom%2Dright%2Dradius%3A%2E2rem%7D%2Ebadge%7Bdisplay%3Ainline%2Dblock%3Bpadding%3A%2E25em%20%2E4em%3Bfont%2Dsize%3A75%25%3Bfont%2Dweight%3A700%3Bline%2Dheight%3A1%3Btext%2Dalign%3Acenter%3Bwhite%2Dspace%3Anowrap%3Bvertical%2Dalign%3Abaseline%3Bborder%2Dradius%3A%2E25rem%7D%2Ebadge%3Aempty%7Bdisplay%3Anone%7D%2Ebtn%20%2Ebadge%7Bposition%3Arelative%3Btop%3A%2D1px%7D%2Ebadge%2Dpill%7Bpadding%2Dright%3A%2E6em%3Bpadding%2Dleft%3A%2E6em%3Bborder%2Dradius%3A10rem%7D%2Ebadge%2Dprimary%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%7D%2Ebadge%2Dprimary%5Bhref%5D%3Afocus%2C%2Ebadge%2Dprimary%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%230062cc%7D%2Ebadge%2Dsecondary%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%236c757d%7D%2Ebadge%2Dsecondary%5Bhref%5D%3Afocus%2C%2Ebadge%2Dsecondary%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23545b62%7D%2Ebadge%2Dsuccess%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2328a745%7D%2Ebadge%2Dsuccess%5Bhref%5D%3Afocus%2C%2Ebadge%2Dsuccess%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%231e7e34%7D%2Ebadge%2Dinfo%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%2317a2b8%7D%2Ebadge%2Dinfo%5Bhref%5D%3Afocus%2C%2Ebadge%2Dinfo%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23117a8b%7D%2Ebadge%2Dwarning%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23ffc107%7D%2Ebadge%2Dwarning%5Bhref%5D%3Afocus%2C%2Ebadge%2Dwarning%5Bhref%5D%3Ahover%7Bcolor%3A%23212529%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23d39e00%7D%2Ebadge%2Ddanger%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23dc3545%7D%2Ebadge%2Ddanger%5Bhref%5D%3Afocus%2C%2Ebadge%2Ddanger%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23bd2130%7D%2Ebadge%2Dlight%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23f8f9fa%7D%2Ebadge%2Dlight%5Bhref%5D%3Afocus%2C%2Ebadge%2Dlight%5Bhref%5D%3Ahover%7Bcolor%3A%23212529%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23dae0e5%7D%2Ebadge%2Ddark%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23343a40%7D%2Ebadge%2Ddark%5Bhref%5D%3Afocus%2C%2Ebadge%2Ddark%5Bhref%5D%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%231d2124%7D%2Ejumbotron%7Bpadding%3A2rem%201rem%3Bmargin%2Dbottom%3A2rem%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dradius%3A%2E3rem%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ejumbotron%7Bpadding%3A4rem%202rem%7D%7D%2Ejumbotron%2Dfluid%7Bpadding%2Dright%3A0%3Bpadding%2Dleft%3A0%3Bborder%2Dradius%3A0%7D%2Ealert%7Bposition%3Arelative%3Bpadding%3A%2E75rem%201%2E25rem%3Bmargin%2Dbottom%3A1rem%3Bborder%3A1px%20solid%20transparent%3Bborder%2Dradius%3A%2E25rem%7D%2Ealert%2Dheading%7Bcolor%3Ainherit%7D%2Ealert%2Dlink%7Bfont%2Dweight%3A700%7D%2Ealert%2Ddismissible%7Bpadding%2Dright%3A4rem%7D%2Ealert%2Ddismissible%20%2Eclose%7Bposition%3Aabsolute%3Btop%3A0%3Bright%3A0%3Bpadding%3A%2E75rem%201%2E25rem%3Bcolor%3Ainherit%7D%2Ealert%2Dprimary%7Bcolor%3A%23004085%3Bbackground%2Dcolor%3A%23cce5ff%3Bborder%2Dcolor%3A%23b8daff%7D%2Ealert%2Dprimary%20hr%7Bborder%2Dtop%2Dcolor%3A%239fcdff%7D%2Ealert%2Dprimary%20%2Ealert%2Dlink%7Bcolor%3A%23002752%7D%2Ealert%2Dsecondary%7Bcolor%3A%23383d41%3Bbackground%2Dcolor%3A%23e2e3e5%3Bborder%2Dcolor%3A%23d6d8db%7D%2Ealert%2Dsecondary%20hr%7Bborder%2Dtop%2Dcolor%3A%23c8cbcf%7D%2Ealert%2Dsecondary%20%2Ealert%2Dlink%7Bcolor%3A%23202326%7D%2Ealert%2Dsuccess%7Bcolor%3A%23155724%3Bbackground%2Dcolor%3A%23d4edda%3Bborder%2Dcolor%3A%23c3e6cb%7D%2Ealert%2Dsuccess%20hr%7Bborder%2Dtop%2Dcolor%3A%23b1dfbb%7D%2Ealert%2Dsuccess%20%2Ealert%2Dlink%7Bcolor%3A%230b2e13%7D%2Ealert%2Dinfo%7Bcolor%3A%230c5460%3Bbackground%2Dcolor%3A%23d1ecf1%3Bborder%2Dcolor%3A%23bee5eb%7D%2Ealert%2Dinfo%20hr%7Bborder%2Dtop%2Dcolor%3A%23abdde5%7D%2Ealert%2Dinfo%20%2Ealert%2Dlink%7Bcolor%3A%23062c33%7D%2Ealert%2Dwarning%7Bcolor%3A%23856404%3Bbackground%2Dcolor%3A%23fff3cd%3Bborder%2Dcolor%3A%23ffeeba%7D%2Ealert%2Dwarning%20hr%7Bborder%2Dtop%2Dcolor%3A%23ffe8a1%7D%2Ealert%2Dwarning%20%2Ealert%2Dlink%7Bcolor%3A%23533f03%7D%2Ealert%2Ddanger%7Bcolor%3A%23721c24%3Bbackground%2Dcolor%3A%23f8d7da%3Bborder%2Dcolor%3A%23f5c6cb%7D%2Ealert%2Ddanger%20hr%7Bborder%2Dtop%2Dcolor%3A%23f1b0b7%7D%2Ealert%2Ddanger%20%2Ealert%2Dlink%7Bcolor%3A%23491217%7D%2Ealert%2Dlight%7Bcolor%3A%23818182%3Bbackground%2Dcolor%3A%23fefefe%3Bborder%2Dcolor%3A%23fdfdfe%7D%2Ealert%2Dlight%20hr%7Bborder%2Dtop%2Dcolor%3A%23ececf6%7D%2Ealert%2Dlight%20%2Ealert%2Dlink%7Bcolor%3A%23686868%7D%2Ealert%2Ddark%7Bcolor%3A%231b1e21%3Bbackground%2Dcolor%3A%23d6d8d9%3Bborder%2Dcolor%3A%23c6c8ca%7D%2Ealert%2Ddark%20hr%7Bborder%2Dtop%2Dcolor%3A%23b9bbbe%7D%2Ealert%2Ddark%20%2Ealert%2Dlink%7Bcolor%3A%23040505%7D%40%2Dwebkit%2Dkeyframes%20progress%2Dbar%2Dstripes%7Bfrom%7Bbackground%2Dposition%3A1rem%200%7Dto%7Bbackground%2Dposition%3A0%200%7D%7D%40keyframes%20progress%2Dbar%2Dstripes%7Bfrom%7Bbackground%2Dposition%3A1rem%200%7Dto%7Bbackground%2Dposition%3A0%200%7D%7D%2Eprogress%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3Bheight%3A1rem%3Boverflow%3Ahidden%3Bfont%2Dsize%3A%2E75rem%3Bbackground%2Dcolor%3A%23e9ecef%3Bborder%2Dradius%3A%2E25rem%7D%2Eprogress%2Dbar%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%3Bcolor%3A%23fff%3Btext%2Dalign%3Acenter%3Bwhite%2Dspace%3Anowrap%3Bbackground%2Dcolor%3A%23007bff%3Btransition%3Awidth%20%2E6s%20ease%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Eprogress%2Dbar%7Btransition%3Anone%7D%7D%2Eprogress%2Dbar%2Dstriped%7Bbackground%2Dimage%3Alinear%2Dgradient%2845deg%2Crgba%28255%2C255%2C255%2C%2E15%29%2025%25%2Ctransparent%2025%25%2Ctransparent%2050%25%2Crgba%28255%2C255%2C255%2C%2E15%29%2050%25%2Crgba%28255%2C255%2C255%2C%2E15%29%2075%25%2Ctransparent%2075%25%2Ctransparent%29%3Bbackground%2Dsize%3A1rem%201rem%7D%2Eprogress%2Dbar%2Danimated%7B%2Dwebkit%2Danimation%3Aprogress%2Dbar%2Dstripes%201s%20linear%20infinite%3Banimation%3Aprogress%2Dbar%2Dstripes%201s%20linear%20infinite%7D%2Emedia%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Astart%3Balign%2Ditems%3Aflex%2Dstart%7D%2Emedia%2Dbody%7B%2Dms%2Dflex%3A1%3Bflex%3A1%7D%2Elist%2Dgroup%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3Bpadding%2Dleft%3A0%3Bmargin%2Dbottom%3A0%7D%2Elist%2Dgroup%2Ditem%2Daction%7Bwidth%3A100%25%3Bcolor%3A%23495057%3Btext%2Dalign%3Ainherit%7D%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23495057%3Btext%2Ddecoration%3Anone%3Bbackground%2Dcolor%3A%23f8f9fa%7D%2Elist%2Dgroup%2Ditem%2Daction%3Aactive%7Bcolor%3A%23212529%3Bbackground%2Dcolor%3A%23e9ecef%7D%2Elist%2Dgroup%2Ditem%7Bposition%3Arelative%3Bdisplay%3Ablock%3Bpadding%3A%2E75rem%201%2E25rem%3Bmargin%2Dbottom%3A%2D1px%3Bbackground%2Dcolor%3A%23fff%3Bborder%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E125%29%7D%2Elist%2Dgroup%2Ditem%3Afirst%2Dchild%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%3Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%7D%2Elist%2Dgroup%2Ditem%3Alast%2Dchild%7Bmargin%2Dbottom%3A0%3Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%7D%2Elist%2Dgroup%2Ditem%3Afocus%2C%2Elist%2Dgroup%2Ditem%3Ahover%7Bz%2Dindex%3A1%3Btext%2Ddecoration%3Anone%7D%2Elist%2Dgroup%2Ditem%2Edisabled%2C%2Elist%2Dgroup%2Ditem%3Adisabled%7Bcolor%3A%236c757d%3Bbackground%2Dcolor%3A%23fff%7D%2Elist%2Dgroup%2Ditem%2Eactive%7Bz%2Dindex%3A2%3Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23007bff%3Bborder%2Dcolor%3A%23007bff%7D%2Elist%2Dgroup%2Dflush%20%2Elist%2Dgroup%2Ditem%7Bborder%2Dright%3A0%3Bborder%2Dleft%3A0%3Bborder%2Dradius%3A0%7D%2Elist%2Dgroup%2Dflush%3Afirst%2Dchild%20%2Elist%2Dgroup%2Ditem%3Afirst%2Dchild%7Bborder%2Dtop%3A0%7D%2Elist%2Dgroup%2Dflush%3Alast%2Dchild%20%2Elist%2Dgroup%2Ditem%3Alast%2Dchild%7Bborder%2Dbottom%3A0%7D%2Elist%2Dgroup%2Ditem%2Dprimary%7Bcolor%3A%23004085%3Bbackground%2Dcolor%3A%23b8daff%7D%2Elist%2Dgroup%2Ditem%2Dprimary%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dprimary%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23004085%3Bbackground%2Dcolor%3A%239fcdff%7D%2Elist%2Dgroup%2Ditem%2Dprimary%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23004085%3Bborder%2Dcolor%3A%23004085%7D%2Elist%2Dgroup%2Ditem%2Dsecondary%7Bcolor%3A%23383d41%3Bbackground%2Dcolor%3A%23d6d8db%7D%2Elist%2Dgroup%2Ditem%2Dsecondary%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dsecondary%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23383d41%3Bbackground%2Dcolor%3A%23c8cbcf%7D%2Elist%2Dgroup%2Ditem%2Dsecondary%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23383d41%3Bborder%2Dcolor%3A%23383d41%7D%2Elist%2Dgroup%2Ditem%2Dsuccess%7Bcolor%3A%23155724%3Bbackground%2Dcolor%3A%23c3e6cb%7D%2Elist%2Dgroup%2Ditem%2Dsuccess%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dsuccess%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23155724%3Bbackground%2Dcolor%3A%23b1dfbb%7D%2Elist%2Dgroup%2Ditem%2Dsuccess%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23155724%3Bborder%2Dcolor%3A%23155724%7D%2Elist%2Dgroup%2Ditem%2Dinfo%7Bcolor%3A%230c5460%3Bbackground%2Dcolor%3A%23bee5eb%7D%2Elist%2Dgroup%2Ditem%2Dinfo%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dinfo%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%230c5460%3Bbackground%2Dcolor%3A%23abdde5%7D%2Elist%2Dgroup%2Ditem%2Dinfo%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%230c5460%3Bborder%2Dcolor%3A%230c5460%7D%2Elist%2Dgroup%2Ditem%2Dwarning%7Bcolor%3A%23856404%3Bbackground%2Dcolor%3A%23ffeeba%7D%2Elist%2Dgroup%2Ditem%2Dwarning%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dwarning%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23856404%3Bbackground%2Dcolor%3A%23ffe8a1%7D%2Elist%2Dgroup%2Ditem%2Dwarning%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23856404%3Bborder%2Dcolor%3A%23856404%7D%2Elist%2Dgroup%2Ditem%2Ddanger%7Bcolor%3A%23721c24%3Bbackground%2Dcolor%3A%23f5c6cb%7D%2Elist%2Dgroup%2Ditem%2Ddanger%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Ddanger%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23721c24%3Bbackground%2Dcolor%3A%23f1b0b7%7D%2Elist%2Dgroup%2Ditem%2Ddanger%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23721c24%3Bborder%2Dcolor%3A%23721c24%7D%2Elist%2Dgroup%2Ditem%2Dlight%7Bcolor%3A%23818182%3Bbackground%2Dcolor%3A%23fdfdfe%7D%2Elist%2Dgroup%2Ditem%2Dlight%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Dlight%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%23818182%3Bbackground%2Dcolor%3A%23ececf6%7D%2Elist%2Dgroup%2Ditem%2Dlight%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%23818182%3Bborder%2Dcolor%3A%23818182%7D%2Elist%2Dgroup%2Ditem%2Ddark%7Bcolor%3A%231b1e21%3Bbackground%2Dcolor%3A%23c6c8ca%7D%2Elist%2Dgroup%2Ditem%2Ddark%2Elist%2Dgroup%2Ditem%2Daction%3Afocus%2C%2Elist%2Dgroup%2Ditem%2Ddark%2Elist%2Dgroup%2Ditem%2Daction%3Ahover%7Bcolor%3A%231b1e21%3Bbackground%2Dcolor%3A%23b9bbbe%7D%2Elist%2Dgroup%2Ditem%2Ddark%2Elist%2Dgroup%2Ditem%2Daction%2Eactive%7Bcolor%3A%23fff%3Bbackground%2Dcolor%3A%231b1e21%3Bborder%2Dcolor%3A%231b1e21%7D%2Eclose%7Bfloat%3Aright%3Bfont%2Dsize%3A1%2E5rem%3Bfont%2Dweight%3A700%3Bline%2Dheight%3A1%3Bcolor%3A%23000%3Btext%2Dshadow%3A0%201px%200%20%23fff%3Bopacity%3A%2E5%7D%2Eclose%3Afocus%2C%2Eclose%3Ahover%7Bcolor%3A%23000%3Btext%2Ddecoration%3Anone%3Bopacity%3A%2E75%7D%2Eclose%3Anot%28%3Adisabled%29%3Anot%28%2Edisabled%29%7Bcursor%3Apointer%7Dbutton%2Eclose%7Bpadding%3A0%3Bbackground%2Dcolor%3Atransparent%3Bborder%3A0%3B%2Dwebkit%2Dappearance%3Anone%7D%2Emodal%2Dopen%7Boverflow%3Ahidden%7D%2Emodal%7Bposition%3Afixed%3Btop%3A0%3Bright%3A0%3Bbottom%3A0%3Bleft%3A0%3Bz%2Dindex%3A1050%3Bdisplay%3Anone%3Boverflow%3Ahidden%3Boutline%3A0%7D%2Emodal%2Dopen%20%2Emodal%7Boverflow%2Dx%3Ahidden%3Boverflow%2Dy%3Aauto%7D%2Emodal%2Ddialog%7Bposition%3Arelative%3Bwidth%3Aauto%3Bmargin%3A%2E5rem%3Bpointer%2Devents%3Anone%7D%2Emodal%2Efade%20%2Emodal%2Ddialog%7Btransition%3A%2Dwebkit%2Dtransform%20%2E3s%20ease%2Dout%3Btransition%3Atransform%20%2E3s%20ease%2Dout%3Btransition%3Atransform%20%2E3s%20ease%2Dout%2C%2Dwebkit%2Dtransform%20%2E3s%20ease%2Dout%3B%2Dwebkit%2Dtransform%3Atranslate%280%2C%2D25%25%29%3Btransform%3Atranslate%280%2C%2D25%25%29%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Emodal%2Efade%20%2Emodal%2Ddialog%7Btransition%3Anone%7D%7D%2Emodal%2Eshow%20%2Emodal%2Ddialog%7B%2Dwebkit%2Dtransform%3Atranslate%280%2C0%29%3Btransform%3Atranslate%280%2C0%29%7D%2Emodal%2Ddialog%2Dcentered%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3Bmin%2Dheight%3Acalc%28100%25%20%2D%20%28%2E5rem%20%2A%202%29%29%7D%2Emodal%2Dcontent%7Bposition%3Arelative%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Ddirection%3Acolumn%3Bflex%2Ddirection%3Acolumn%3Bwidth%3A100%25%3Bpointer%2Devents%3Aauto%3Bbackground%2Dcolor%3A%23fff%3Bbackground%2Dclip%3Apadding%2Dbox%3Bborder%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E2%29%3Bborder%2Dradius%3A%2E3rem%3Boutline%3A0%7D%2Emodal%2Dbackdrop%7Bposition%3Afixed%3Btop%3A0%3Bright%3A0%3Bbottom%3A0%3Bleft%3A0%3Bz%2Dindex%3A1040%3Bbackground%2Dcolor%3A%23000%7D%2Emodal%2Dbackdrop%2Efade%7Bopacity%3A0%7D%2Emodal%2Dbackdrop%2Eshow%7Bopacity%3A%2E5%7D%2Emodal%2Dheader%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Astart%3Balign%2Ditems%3Aflex%2Dstart%3B%2Dms%2Dflex%2Dpack%3Ajustify%3Bjustify%2Dcontent%3Aspace%2Dbetween%3Bpadding%3A1rem%3Bborder%2Dbottom%3A1px%20solid%20%23e9ecef%3Bborder%2Dtop%2Dleft%2Dradius%3A%2E3rem%3Bborder%2Dtop%2Dright%2Dradius%3A%2E3rem%7D%2Emodal%2Dheader%20%2Eclose%7Bpadding%3A1rem%3Bmargin%3A%2D1rem%20%2D1rem%20%2D1rem%20auto%7D%2Emodal%2Dtitle%7Bmargin%2Dbottom%3A0%3Bline%2Dheight%3A1%2E5%7D%2Emodal%2Dbody%7Bposition%3Arelative%3B%2Dms%2Dflex%3A1%201%20auto%3Bflex%3A1%201%20auto%3Bpadding%3A1rem%7D%2Emodal%2Dfooter%7Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Aend%3Bjustify%2Dcontent%3Aflex%2Dend%3Bpadding%3A1rem%3Bborder%2Dtop%3A1px%20solid%20%23e9ecef%7D%2Emodal%2Dfooter%3E%3Anot%28%3Afirst%2Dchild%29%7Bmargin%2Dleft%3A%2E25rem%7D%2Emodal%2Dfooter%3E%3Anot%28%3Alast%2Dchild%29%7Bmargin%2Dright%3A%2E25rem%7D%2Emodal%2Dscrollbar%2Dmeasure%7Bposition%3Aabsolute%3Btop%3A%2D9999px%3Bwidth%3A50px%3Bheight%3A50px%3Boverflow%3Ascroll%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Emodal%2Ddialog%7Bmax%2Dwidth%3A500px%3Bmargin%3A1%2E75rem%20auto%7D%2Emodal%2Ddialog%2Dcentered%7Bmin%2Dheight%3Acalc%28100%25%20%2D%20%281%2E75rem%20%2A%202%29%29%7D%2Emodal%2Dsm%7Bmax%2Dwidth%3A300px%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Emodal%2Dlg%7Bmax%2Dwidth%3A800px%7D%7D%2Etooltip%7Bposition%3Aabsolute%3Bz%2Dindex%3A1070%3Bdisplay%3Ablock%3Bmargin%3A0%3Bfont%2Dfamily%3A%2Dapple%2Dsystem%2CBlinkMacSystemFont%2C%22Segoe%20UI%22%2CRoboto%2C%22Helvetica%20Neue%22%2CArial%2Csans%2Dserif%2C%22Apple%20Color%20Emoji%22%2C%22Segoe%20UI%20Emoji%22%2C%22Segoe%20UI%20Symbol%22%3Bfont%2Dstyle%3Anormal%3Bfont%2Dweight%3A400%3Bline%2Dheight%3A1%2E5%3Btext%2Dalign%3Aleft%3Btext%2Dalign%3Astart%3Btext%2Ddecoration%3Anone%3Btext%2Dshadow%3Anone%3Btext%2Dtransform%3Anone%3Bletter%2Dspacing%3Anormal%3Bword%2Dbreak%3Anormal%3Bword%2Dspacing%3Anormal%3Bwhite%2Dspace%3Anormal%3Bline%2Dbreak%3Aauto%3Bfont%2Dsize%3A%2E875rem%3Bword%2Dwrap%3Abreak%2Dword%3Bopacity%3A0%7D%2Etooltip%2Eshow%7Bopacity%3A%2E9%7D%2Etooltip%20%2Earrow%7Bposition%3Aabsolute%3Bdisplay%3Ablock%3Bwidth%3A%2E8rem%3Bheight%3A%2E4rem%7D%2Etooltip%20%2Earrow%3A%3Abefore%7Bposition%3Aabsolute%3Bcontent%3A%22%22%3Bborder%2Dcolor%3Atransparent%3Bborder%2Dstyle%3Asolid%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%2C%2Ebs%2Dtooltip%2Dtop%7Bpadding%3A%2E4rem%200%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%2C%2Ebs%2Dtooltip%2Dtop%20%2Earrow%7Bbottom%3A0%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dtooltip%2Dtop%20%2Earrow%3A%3Abefore%7Btop%3A0%3Bborder%2Dwidth%3A%2E4rem%20%2E4rem%200%3Bborder%2Dtop%2Dcolor%3A%23000%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%2C%2Ebs%2Dtooltip%2Dright%7Bpadding%3A0%20%2E4rem%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%2C%2Ebs%2Dtooltip%2Dright%20%2Earrow%7Bleft%3A0%3Bwidth%3A%2E4rem%3Bheight%3A%2E8rem%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dtooltip%2Dright%20%2Earrow%3A%3Abefore%7Bright%3A0%3Bborder%2Dwidth%3A%2E4rem%20%2E4rem%20%2E4rem%200%3Bborder%2Dright%2Dcolor%3A%23000%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%2C%2Ebs%2Dtooltip%2Dbottom%7Bpadding%3A%2E4rem%200%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%2C%2Ebs%2Dtooltip%2Dbottom%20%2Earrow%7Btop%3A0%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dtooltip%2Dbottom%20%2Earrow%3A%3Abefore%7Bbottom%3A0%3Bborder%2Dwidth%3A0%20%2E4rem%20%2E4rem%3Bborder%2Dbottom%2Dcolor%3A%23000%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%2C%2Ebs%2Dtooltip%2Dleft%7Bpadding%3A0%20%2E4rem%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%2C%2Ebs%2Dtooltip%2Dleft%20%2Earrow%7Bright%3A0%3Bwidth%3A%2E4rem%3Bheight%3A%2E8rem%7D%2Ebs%2Dtooltip%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dtooltip%2Dleft%20%2Earrow%3A%3Abefore%7Bleft%3A0%3Bborder%2Dwidth%3A%2E4rem%200%20%2E4rem%20%2E4rem%3Bborder%2Dleft%2Dcolor%3A%23000%7D%2Etooltip%2Dinner%7Bmax%2Dwidth%3A200px%3Bpadding%3A%2E25rem%20%2E5rem%3Bcolor%3A%23fff%3Btext%2Dalign%3Acenter%3Bbackground%2Dcolor%3A%23000%3Bborder%2Dradius%3A%2E25rem%7D%2Epopover%7Bposition%3Aabsolute%3Btop%3A0%3Bleft%3A0%3Bz%2Dindex%3A1060%3Bdisplay%3Ablock%3Bmax%2Dwidth%3A276px%3Bfont%2Dfamily%3A%2Dapple%2Dsystem%2CBlinkMacSystemFont%2C%22Segoe%20UI%22%2CRoboto%2C%22Helvetica%20Neue%22%2CArial%2Csans%2Dserif%2C%22Apple%20Color%20Emoji%22%2C%22Segoe%20UI%20Emoji%22%2C%22Segoe%20UI%20Symbol%22%3Bfont%2Dstyle%3Anormal%3Bfont%2Dweight%3A400%3Bline%2Dheight%3A1%2E5%3Btext%2Dalign%3Aleft%3Btext%2Dalign%3Astart%3Btext%2Ddecoration%3Anone%3Btext%2Dshadow%3Anone%3Btext%2Dtransform%3Anone%3Bletter%2Dspacing%3Anormal%3Bword%2Dbreak%3Anormal%3Bword%2Dspacing%3Anormal%3Bwhite%2Dspace%3Anormal%3Bline%2Dbreak%3Aauto%3Bfont%2Dsize%3A%2E875rem%3Bword%2Dwrap%3Abreak%2Dword%3Bbackground%2Dcolor%3A%23fff%3Bbackground%2Dclip%3Apadding%2Dbox%3Bborder%3A1px%20solid%20rgba%280%2C0%2C0%2C%2E2%29%3Bborder%2Dradius%3A%2E3rem%7D%2Epopover%20%2Earrow%7Bposition%3Aabsolute%3Bdisplay%3Ablock%3Bwidth%3A1rem%3Bheight%3A%2E5rem%3Bmargin%3A0%20%2E3rem%7D%2Epopover%20%2Earrow%3A%3Aafter%2C%2Epopover%20%2Earrow%3A%3Abefore%7Bposition%3Aabsolute%3Bdisplay%3Ablock%3Bcontent%3A%22%22%3Bborder%2Dcolor%3Atransparent%3Bborder%2Dstyle%3Asolid%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%2C%2Ebs%2Dpopover%2Dtop%7Bmargin%2Dbottom%3A%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%2C%2Ebs%2Dpopover%2Dtop%20%2Earrow%7Bbottom%3Acalc%28%28%2E5rem%20%2B%201px%29%20%2A%20%2D1%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dtop%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dtop%20%2Earrow%3A%3Abefore%7Bborder%2Dwidth%3A%2E5rem%20%2E5rem%200%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dtop%20%2Earrow%3A%3Abefore%7Bbottom%3A0%3Bborder%2Dtop%2Dcolor%3Argba%280%2C0%2C0%2C%2E25%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dtop%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dtop%20%2Earrow%3A%3Aafter%7Bbottom%3A1px%3Bborder%2Dtop%2Dcolor%3A%23fff%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%2C%2Ebs%2Dpopover%2Dright%7Bmargin%2Dleft%3A%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%2C%2Ebs%2Dpopover%2Dright%20%2Earrow%7Bleft%3Acalc%28%28%2E5rem%20%2B%201px%29%20%2A%20%2D1%29%3Bwidth%3A%2E5rem%3Bheight%3A1rem%3Bmargin%3A%2E3rem%200%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dright%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dright%20%2Earrow%3A%3Abefore%7Bborder%2Dwidth%3A%2E5rem%20%2E5rem%20%2E5rem%200%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dright%20%2Earrow%3A%3Abefore%7Bleft%3A0%3Bborder%2Dright%2Dcolor%3Argba%280%2C0%2C0%2C%2E25%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dright%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dright%20%2Earrow%3A%3Aafter%7Bleft%3A1px%3Bborder%2Dright%2Dcolor%3A%23fff%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%2C%2Ebs%2Dpopover%2Dbottom%7Bmargin%2Dtop%3A%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%2C%2Ebs%2Dpopover%2Dbottom%20%2Earrow%7Btop%3Acalc%28%28%2E5rem%20%2B%201px%29%20%2A%20%2D1%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dbottom%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dbottom%20%2Earrow%3A%3Abefore%7Bborder%2Dwidth%3A0%20%2E5rem%20%2E5rem%20%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dbottom%20%2Earrow%3A%3Abefore%7Btop%3A0%3Bborder%2Dbottom%2Dcolor%3Argba%280%2C0%2C0%2C%2E25%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dbottom%20%2Earrow%3A%3Aafter%7Btop%3A1px%3Bborder%2Dbottom%2Dcolor%3A%23fff%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dbottom%5D%20%2Epopover%2Dheader%3A%3Abefore%2C%2Ebs%2Dpopover%2Dbottom%20%2Epopover%2Dheader%3A%3Abefore%7Bposition%3Aabsolute%3Btop%3A0%3Bleft%3A50%25%3Bdisplay%3Ablock%3Bwidth%3A1rem%3Bmargin%2Dleft%3A%2D%2E5rem%3Bcontent%3A%22%22%3Bborder%2Dbottom%3A1px%20solid%20%23f7f7f7%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%2C%2Ebs%2Dpopover%2Dleft%7Bmargin%2Dright%3A%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%2C%2Ebs%2Dpopover%2Dleft%20%2Earrow%7Bright%3Acalc%28%28%2E5rem%20%2B%201px%29%20%2A%20%2D1%29%3Bwidth%3A%2E5rem%3Bheight%3A1rem%3Bmargin%3A%2E3rem%200%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dleft%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dleft%20%2Earrow%3A%3Abefore%7Bborder%2Dwidth%3A%2E5rem%200%20%2E5rem%20%2E5rem%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%3A%3Abefore%2C%2Ebs%2Dpopover%2Dleft%20%2Earrow%3A%3Abefore%7Bright%3A0%3Bborder%2Dleft%2Dcolor%3Argba%280%2C0%2C0%2C%2E25%29%7D%2Ebs%2Dpopover%2Dauto%5Bx%2Dplacement%5E%3Dleft%5D%20%2Earrow%3A%3Aafter%2C%2Ebs%2Dpopover%2Dleft%20%2Earrow%3A%3Aafter%7Bright%3A1px%3Bborder%2Dleft%2Dcolor%3A%23fff%7D%2Epopover%2Dheader%7Bpadding%3A%2E5rem%20%2E75rem%3Bmargin%2Dbottom%3A0%3Bfont%2Dsize%3A1rem%3Bcolor%3Ainherit%3Bbackground%2Dcolor%3A%23f7f7f7%3Bborder%2Dbottom%3A1px%20solid%20%23ebebeb%3Bborder%2Dtop%2Dleft%2Dradius%3Acalc%28%2E3rem%20%2D%201px%29%3Bborder%2Dtop%2Dright%2Dradius%3Acalc%28%2E3rem%20%2D%201px%29%7D%2Epopover%2Dheader%3Aempty%7Bdisplay%3Anone%7D%2Epopover%2Dbody%7Bpadding%3A%2E5rem%20%2E75rem%3Bcolor%3A%23212529%7D%2Ecarousel%7Bposition%3Arelative%7D%2Ecarousel%2Dinner%7Bposition%3Arelative%3Bwidth%3A100%25%3Boverflow%3Ahidden%7D%2Ecarousel%2Ditem%7Bposition%3Arelative%3Bdisplay%3Anone%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3Bwidth%3A100%25%3Btransition%3A%2Dwebkit%2Dtransform%20%2E6s%20ease%3Btransition%3Atransform%20%2E6s%20ease%3Btransition%3Atransform%20%2E6s%20ease%2C%2Dwebkit%2Dtransform%20%2E6s%20ease%3B%2Dwebkit%2Dbackface%2Dvisibility%3Ahidden%3Bbackface%2Dvisibility%3Ahidden%3B%2Dwebkit%2Dperspective%3A1000px%3Bperspective%3A1000px%7D%40media%20screen%20and%20%28prefers%2Dreduced%2Dmotion%3Areduce%29%7B%2Ecarousel%2Ditem%7Btransition%3Anone%7D%7D%2Ecarousel%2Ditem%2Dnext%2C%2Ecarousel%2Ditem%2Dprev%2C%2Ecarousel%2Ditem%2Eactive%7Bdisplay%3Ablock%7D%2Ecarousel%2Ditem%2Dnext%2C%2Ecarousel%2Ditem%2Dprev%7Bposition%3Aabsolute%3Btop%3A0%7D%2Ecarousel%2Ditem%2Dnext%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Ditem%2Dprev%2Ecarousel%2Ditem%2Dright%7B%2Dwebkit%2Dtransform%3AtranslateX%280%29%3Btransform%3AtranslateX%280%29%7D%40supports%20%28%28%2Dwebkit%2Dtransform%2Dstyle%3Apreserve%2D3d%29%20or%20%28transform%2Dstyle%3Apreserve%2D3d%29%29%7B%2Ecarousel%2Ditem%2Dnext%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Ditem%2Dprev%2Ecarousel%2Ditem%2Dright%7B%2Dwebkit%2Dtransform%3Atranslate3d%280%2C0%2C0%29%3Btransform%3Atranslate3d%280%2C0%2C0%29%7D%7D%2Eactive%2Ecarousel%2Ditem%2Dright%2C%2Ecarousel%2Ditem%2Dnext%7B%2Dwebkit%2Dtransform%3AtranslateX%28100%25%29%3Btransform%3AtranslateX%28100%25%29%7D%40supports%20%28%28%2Dwebkit%2Dtransform%2Dstyle%3Apreserve%2D3d%29%20or%20%28transform%2Dstyle%3Apreserve%2D3d%29%29%7B%2Eactive%2Ecarousel%2Ditem%2Dright%2C%2Ecarousel%2Ditem%2Dnext%7B%2Dwebkit%2Dtransform%3Atranslate3d%28100%25%2C0%2C0%29%3Btransform%3Atranslate3d%28100%25%2C0%2C0%29%7D%7D%2Eactive%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Ditem%2Dprev%7B%2Dwebkit%2Dtransform%3AtranslateX%28%2D100%25%29%3Btransform%3AtranslateX%28%2D100%25%29%7D%40supports%20%28%28%2Dwebkit%2Dtransform%2Dstyle%3Apreserve%2D3d%29%20or%20%28transform%2Dstyle%3Apreserve%2D3d%29%29%7B%2Eactive%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Ditem%2Dprev%7B%2Dwebkit%2Dtransform%3Atranslate3d%28%2D100%25%2C0%2C0%29%3Btransform%3Atranslate3d%28%2D100%25%2C0%2C0%29%7D%7D%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%7Bopacity%3A0%3Btransition%2Dduration%3A%2E6s%3Btransition%2Dproperty%3Aopacity%7D%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dnext%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dprev%2Ecarousel%2Ditem%2Dright%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Eactive%7Bopacity%3A1%7D%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dright%7Bopacity%3A0%7D%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dprev%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dnext%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dprev%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Eactive%7B%2Dwebkit%2Dtransform%3AtranslateX%280%29%3Btransform%3AtranslateX%280%29%7D%40supports%20%28%28%2Dwebkit%2Dtransform%2Dstyle%3Apreserve%2D3d%29%20or%20%28transform%2Dstyle%3Apreserve%2D3d%29%29%7B%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dleft%2C%2Ecarousel%2Dfade%20%2Eactive%2Ecarousel%2Ditem%2Dprev%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dnext%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Dprev%2C%2Ecarousel%2Dfade%20%2Ecarousel%2Ditem%2Eactive%7B%2Dwebkit%2Dtransform%3Atranslate3d%280%2C0%2C0%29%3Btransform%3Atranslate3d%280%2C0%2C0%29%7D%7D%2Ecarousel%2Dcontrol%2Dnext%2C%2Ecarousel%2Dcontrol%2Dprev%7Bposition%3Aabsolute%3Btop%3A0%3Bbottom%3A0%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dalign%3Acenter%3Balign%2Ditems%3Acenter%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%3Bwidth%3A15%25%3Bcolor%3A%23fff%3Btext%2Dalign%3Acenter%3Bopacity%3A%2E5%7D%2Ecarousel%2Dcontrol%2Dnext%3Afocus%2C%2Ecarousel%2Dcontrol%2Dnext%3Ahover%2C%2Ecarousel%2Dcontrol%2Dprev%3Afocus%2C%2Ecarousel%2Dcontrol%2Dprev%3Ahover%7Bcolor%3A%23fff%3Btext%2Ddecoration%3Anone%3Boutline%3A0%3Bopacity%3A%2E9%7D%2Ecarousel%2Dcontrol%2Dprev%7Bleft%3A0%7D%2Ecarousel%2Dcontrol%2Dnext%7Bright%3A0%7D%2Ecarousel%2Dcontrol%2Dnext%2Dicon%2C%2Ecarousel%2Dcontrol%2Dprev%2Dicon%7Bdisplay%3Ainline%2Dblock%3Bwidth%3A20px%3Bheight%3A20px%3Bbackground%3Atransparent%20no%2Drepeat%20center%20center%3Bbackground%2Dsize%3A100%25%20100%25%7D%2Ecarousel%2Dcontrol%2Dprev%2Dicon%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20fill%3D%27%2523fff%27%20viewBox%3D%270%200%208%208%27%253E%253Cpath%20d%3D%27M5%2E25%200l%2D4%204%204%204%201%2E5%2D1%2E5%2D2%2E5%2D2%2E5%202%2E5%2D2%2E5%2D1%2E5%2D1%2E5z%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Ecarousel%2Dcontrol%2Dnext%2Dicon%7Bbackground%2Dimage%3Aurl%28%22data%3Aimage%2Fsvg%2Bxml%3Bcharset%3Dutf8%2C%253Csvg%20xmlns%3D%27http%3A%2F%2Fwww%2Ew3%2Eorg%2F2000%2Fsvg%27%20fill%3D%27%2523fff%27%20viewBox%3D%270%200%208%208%27%253E%253Cpath%20d%3D%27M2%2E75%200l%2D1%2E5%201%2E5%202%2E5%202%2E5%2D2%2E5%202%2E5%201%2E5%201%2E5%204%2D4%2D4%2D4z%27%2F%253E%253C%2Fsvg%253E%22%29%7D%2Ecarousel%2Dindicators%7Bposition%3Aabsolute%3Bright%3A0%3Bbottom%3A10px%3Bleft%3A0%3Bz%2Dindex%3A15%3Bdisplay%3A%2Dms%2Dflexbox%3Bdisplay%3Aflex%3B%2Dms%2Dflex%2Dpack%3Acenter%3Bjustify%2Dcontent%3Acenter%3Bpadding%2Dleft%3A0%3Bmargin%2Dright%3A15%25%3Bmargin%2Dleft%3A15%25%3Blist%2Dstyle%3Anone%7D%2Ecarousel%2Dindicators%20li%7Bposition%3Arelative%3B%2Dms%2Dflex%3A0%201%20auto%3Bflex%3A0%201%20auto%3Bwidth%3A30px%3Bheight%3A3px%3Bmargin%2Dright%3A3px%3Bmargin%2Dleft%3A3px%3Btext%2Dindent%3A%2D999px%3Bcursor%3Apointer%3Bbackground%2Dcolor%3Argba%28255%2C255%2C255%2C%2E5%29%7D%2Ecarousel%2Dindicators%20li%3A%3Abefore%7Bposition%3Aabsolute%3Btop%3A%2D10px%3Bleft%3A0%3Bdisplay%3Ainline%2Dblock%3Bwidth%3A100%25%3Bheight%3A10px%3Bcontent%3A%22%22%7D%2Ecarousel%2Dindicators%20li%3A%3Aafter%7Bposition%3Aabsolute%3Bbottom%3A%2D10px%3Bleft%3A0%3Bdisplay%3Ainline%2Dblock%3Bwidth%3A100%25%3Bheight%3A10px%3Bcontent%3A%22%22%7D%2Ecarousel%2Dindicators%20%2Eactive%7Bbackground%2Dcolor%3A%23fff%7D%2Ecarousel%2Dcaption%7Bposition%3Aabsolute%3Bright%3A15%25%3Bbottom%3A20px%3Bleft%3A15%25%3Bz%2Dindex%3A10%3Bpadding%2Dtop%3A20px%3Bpadding%2Dbottom%3A20px%3Bcolor%3A%23fff%3Btext%2Dalign%3Acenter%7D%2Ealign%2Dbaseline%7Bvertical%2Dalign%3Abaseline%21important%7D%2Ealign%2Dtop%7Bvertical%2Dalign%3Atop%21important%7D%2Ealign%2Dmiddle%7Bvertical%2Dalign%3Amiddle%21important%7D%2Ealign%2Dbottom%7Bvertical%2Dalign%3Abottom%21important%7D%2Ealign%2Dtext%2Dbottom%7Bvertical%2Dalign%3Atext%2Dbottom%21important%7D%2Ealign%2Dtext%2Dtop%7Bvertical%2Dalign%3Atext%2Dtop%21important%7D%2Ebg%2Dprimary%7Bbackground%2Dcolor%3A%23007bff%21important%7Da%2Ebg%2Dprimary%3Afocus%2Ca%2Ebg%2Dprimary%3Ahover%2Cbutton%2Ebg%2Dprimary%3Afocus%2Cbutton%2Ebg%2Dprimary%3Ahover%7Bbackground%2Dcolor%3A%230062cc%21important%7D%2Ebg%2Dsecondary%7Bbackground%2Dcolor%3A%236c757d%21important%7Da%2Ebg%2Dsecondary%3Afocus%2Ca%2Ebg%2Dsecondary%3Ahover%2Cbutton%2Ebg%2Dsecondary%3Afocus%2Cbutton%2Ebg%2Dsecondary%3Ahover%7Bbackground%2Dcolor%3A%23545b62%21important%7D%2Ebg%2Dsuccess%7Bbackground%2Dcolor%3A%2328a745%21important%7Da%2Ebg%2Dsuccess%3Afocus%2Ca%2Ebg%2Dsuccess%3Ahover%2Cbutton%2Ebg%2Dsuccess%3Afocus%2Cbutton%2Ebg%2Dsuccess%3Ahover%7Bbackground%2Dcolor%3A%231e7e34%21important%7D%2Ebg%2Dinfo%7Bbackground%2Dcolor%3A%2317a2b8%21important%7Da%2Ebg%2Dinfo%3Afocus%2Ca%2Ebg%2Dinfo%3Ahover%2Cbutton%2Ebg%2Dinfo%3Afocus%2Cbutton%2Ebg%2Dinfo%3Ahover%7Bbackground%2Dcolor%3A%23117a8b%21important%7D%2Ebg%2Dwarning%7Bbackground%2Dcolor%3A%23ffc107%21important%7Da%2Ebg%2Dwarning%3Afocus%2Ca%2Ebg%2Dwarning%3Ahover%2Cbutton%2Ebg%2Dwarning%3Afocus%2Cbutton%2Ebg%2Dwarning%3Ahover%7Bbackground%2Dcolor%3A%23d39e00%21important%7D%2Ebg%2Ddanger%7Bbackground%2Dcolor%3A%23dc3545%21important%7Da%2Ebg%2Ddanger%3Afocus%2Ca%2Ebg%2Ddanger%3Ahover%2Cbutton%2Ebg%2Ddanger%3Afocus%2Cbutton%2Ebg%2Ddanger%3Ahover%7Bbackground%2Dcolor%3A%23bd2130%21important%7D%2Ebg%2Dlight%7Bbackground%2Dcolor%3A%23f8f9fa%21important%7Da%2Ebg%2Dlight%3Afocus%2Ca%2Ebg%2Dlight%3Ahover%2Cbutton%2Ebg%2Dlight%3Afocus%2Cbutton%2Ebg%2Dlight%3Ahover%7Bbackground%2Dcolor%3A%23dae0e5%21important%7D%2Ebg%2Ddark%7Bbackground%2Dcolor%3A%23343a40%21important%7Da%2Ebg%2Ddark%3Afocus%2Ca%2Ebg%2Ddark%3Ahover%2Cbutton%2Ebg%2Ddark%3Afocus%2Cbutton%2Ebg%2Ddark%3Ahover%7Bbackground%2Dcolor%3A%231d2124%21important%7D%2Ebg%2Dwhite%7Bbackground%2Dcolor%3A%23fff%21important%7D%2Ebg%2Dtransparent%7Bbackground%2Dcolor%3Atransparent%21important%7D%2Eborder%7Bborder%3A1px%20solid%20%23dee2e6%21important%7D%2Eborder%2Dtop%7Bborder%2Dtop%3A1px%20solid%20%23dee2e6%21important%7D%2Eborder%2Dright%7Bborder%2Dright%3A1px%20solid%20%23dee2e6%21important%7D%2Eborder%2Dbottom%7Bborder%2Dbottom%3A1px%20solid%20%23dee2e6%21important%7D%2Eborder%2Dleft%7Bborder%2Dleft%3A1px%20solid%20%23dee2e6%21important%7D%2Eborder%2D0%7Bborder%3A0%21important%7D%2Eborder%2Dtop%2D0%7Bborder%2Dtop%3A0%21important%7D%2Eborder%2Dright%2D0%7Bborder%2Dright%3A0%21important%7D%2Eborder%2Dbottom%2D0%7Bborder%2Dbottom%3A0%21important%7D%2Eborder%2Dleft%2D0%7Bborder%2Dleft%3A0%21important%7D%2Eborder%2Dprimary%7Bborder%2Dcolor%3A%23007bff%21important%7D%2Eborder%2Dsecondary%7Bborder%2Dcolor%3A%236c757d%21important%7D%2Eborder%2Dsuccess%7Bborder%2Dcolor%3A%2328a745%21important%7D%2Eborder%2Dinfo%7Bborder%2Dcolor%3A%2317a2b8%21important%7D%2Eborder%2Dwarning%7Bborder%2Dcolor%3A%23ffc107%21important%7D%2Eborder%2Ddanger%7Bborder%2Dcolor%3A%23dc3545%21important%7D%2Eborder%2Dlight%7Bborder%2Dcolor%3A%23f8f9fa%21important%7D%2Eborder%2Ddark%7Bborder%2Dcolor%3A%23343a40%21important%7D%2Eborder%2Dwhite%7Bborder%2Dcolor%3A%23fff%21important%7D%2Erounded%7Bborder%2Dradius%3A%2E25rem%21important%7D%2Erounded%2Dtop%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%21important%3Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%21important%7D%2Erounded%2Dright%7Bborder%2Dtop%2Dright%2Dradius%3A%2E25rem%21important%3Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%21important%7D%2Erounded%2Dbottom%7Bborder%2Dbottom%2Dright%2Dradius%3A%2E25rem%21important%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%21important%7D%2Erounded%2Dleft%7Bborder%2Dtop%2Dleft%2Dradius%3A%2E25rem%21important%3Bborder%2Dbottom%2Dleft%2Dradius%3A%2E25rem%21important%7D%2Erounded%2Dcircle%7Bborder%2Dradius%3A50%25%21important%7D%2Erounded%2D0%7Bborder%2Dradius%3A0%21important%7D%2Eclearfix%3A%3Aafter%7Bdisplay%3Ablock%3Bclear%3Aboth%3Bcontent%3A%22%22%7D%2Ed%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Ed%2Dsm%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dsm%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dsm%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dsm%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dsm%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dsm%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dsm%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dsm%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dsm%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Ed%2Dmd%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dmd%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dmd%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dmd%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dmd%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dmd%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dmd%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dmd%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dmd%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Ed%2Dlg%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dlg%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dlg%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dlg%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dlg%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dlg%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dlg%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dlg%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dlg%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Ed%2Dxl%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dxl%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dxl%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dxl%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dxl%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dxl%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dxl%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dxl%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dxl%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%7D%40media%20print%7B%2Ed%2Dprint%2Dnone%7Bdisplay%3Anone%21important%7D%2Ed%2Dprint%2Dinline%7Bdisplay%3Ainline%21important%7D%2Ed%2Dprint%2Dinline%2Dblock%7Bdisplay%3Ainline%2Dblock%21important%7D%2Ed%2Dprint%2Dblock%7Bdisplay%3Ablock%21important%7D%2Ed%2Dprint%2Dtable%7Bdisplay%3Atable%21important%7D%2Ed%2Dprint%2Dtable%2Drow%7Bdisplay%3Atable%2Drow%21important%7D%2Ed%2Dprint%2Dtable%2Dcell%7Bdisplay%3Atable%2Dcell%21important%7D%2Ed%2Dprint%2Dflex%7Bdisplay%3A%2Dms%2Dflexbox%21important%3Bdisplay%3Aflex%21important%7D%2Ed%2Dprint%2Dinline%2Dflex%7Bdisplay%3A%2Dms%2Dinline%2Dflexbox%21important%3Bdisplay%3Ainline%2Dflex%21important%7D%7D%2Eembed%2Dresponsive%7Bposition%3Arelative%3Bdisplay%3Ablock%3Bwidth%3A100%25%3Bpadding%3A0%3Boverflow%3Ahidden%7D%2Eembed%2Dresponsive%3A%3Abefore%7Bdisplay%3Ablock%3Bcontent%3A%22%22%7D%2Eembed%2Dresponsive%20%2Eembed%2Dresponsive%2Ditem%2C%2Eembed%2Dresponsive%20embed%2C%2Eembed%2Dresponsive%20iframe%2C%2Eembed%2Dresponsive%20object%2C%2Eembed%2Dresponsive%20video%7Bposition%3Aabsolute%3Btop%3A0%3Bbottom%3A0%3Bleft%3A0%3Bwidth%3A100%25%3Bheight%3A100%25%3Bborder%3A0%7D%2Eembed%2Dresponsive%2D21by9%3A%3Abefore%7Bpadding%2Dtop%3A42%2E857143%25%7D%2Eembed%2Dresponsive%2D16by9%3A%3Abefore%7Bpadding%2Dtop%3A56%2E25%25%7D%2Eembed%2Dresponsive%2D4by3%3A%3Abefore%7Bpadding%2Dtop%3A75%25%7D%2Eembed%2Dresponsive%2D1by1%3A%3Abefore%7Bpadding%2Dtop%3A100%25%7D%2Eflex%2Drow%7B%2Dms%2Dflex%2Ddirection%3Arow%21important%3Bflex%2Ddirection%3Arow%21important%7D%2Eflex%2Dcolumn%7B%2Dms%2Dflex%2Ddirection%3Acolumn%21important%3Bflex%2Ddirection%3Acolumn%21important%7D%2Eflex%2Drow%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Arow%2Dreverse%21important%3Bflex%2Ddirection%3Arow%2Dreverse%21important%7D%2Eflex%2Dcolumn%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Acolumn%2Dreverse%21important%3Bflex%2Ddirection%3Acolumn%2Dreverse%21important%7D%2Eflex%2Dwrap%7B%2Dms%2Dflex%2Dwrap%3Awrap%21important%3Bflex%2Dwrap%3Awrap%21important%7D%2Eflex%2Dnowrap%7B%2Dms%2Dflex%2Dwrap%3Anowrap%21important%3Bflex%2Dwrap%3Anowrap%21important%7D%2Eflex%2Dwrap%2Dreverse%7B%2Dms%2Dflex%2Dwrap%3Awrap%2Dreverse%21important%3Bflex%2Dwrap%3Awrap%2Dreverse%21important%7D%2Eflex%2Dfill%7B%2Dms%2Dflex%3A1%201%20auto%21important%3Bflex%3A1%201%20auto%21important%7D%2Eflex%2Dgrow%2D0%7B%2Dms%2Dflex%2Dpositive%3A0%21important%3Bflex%2Dgrow%3A0%21important%7D%2Eflex%2Dgrow%2D1%7B%2Dms%2Dflex%2Dpositive%3A1%21important%3Bflex%2Dgrow%3A1%21important%7D%2Eflex%2Dshrink%2D0%7B%2Dms%2Dflex%2Dnegative%3A0%21important%3Bflex%2Dshrink%3A0%21important%7D%2Eflex%2Dshrink%2D1%7B%2Dms%2Dflex%2Dnegative%3A1%21important%3Bflex%2Dshrink%3A1%21important%7D%2Ejustify%2Dcontent%2Dstart%7B%2Dms%2Dflex%2Dpack%3Astart%21important%3Bjustify%2Dcontent%3Aflex%2Dstart%21important%7D%2Ejustify%2Dcontent%2Dend%7B%2Dms%2Dflex%2Dpack%3Aend%21important%3Bjustify%2Dcontent%3Aflex%2Dend%21important%7D%2Ejustify%2Dcontent%2Dcenter%7B%2Dms%2Dflex%2Dpack%3Acenter%21important%3Bjustify%2Dcontent%3Acenter%21important%7D%2Ejustify%2Dcontent%2Dbetween%7B%2Dms%2Dflex%2Dpack%3Ajustify%21important%3Bjustify%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ejustify%2Dcontent%2Daround%7B%2Dms%2Dflex%2Dpack%3Adistribute%21important%3Bjustify%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Ditems%2Dstart%7B%2Dms%2Dflex%2Dalign%3Astart%21important%3Balign%2Ditems%3Aflex%2Dstart%21important%7D%2Ealign%2Ditems%2Dend%7B%2Dms%2Dflex%2Dalign%3Aend%21important%3Balign%2Ditems%3Aflex%2Dend%21important%7D%2Ealign%2Ditems%2Dcenter%7B%2Dms%2Dflex%2Dalign%3Acenter%21important%3Balign%2Ditems%3Acenter%21important%7D%2Ealign%2Ditems%2Dbaseline%7B%2Dms%2Dflex%2Dalign%3Abaseline%21important%3Balign%2Ditems%3Abaseline%21important%7D%2Ealign%2Ditems%2Dstretch%7B%2Dms%2Dflex%2Dalign%3Astretch%21important%3Balign%2Ditems%3Astretch%21important%7D%2Ealign%2Dcontent%2Dstart%7B%2Dms%2Dflex%2Dline%2Dpack%3Astart%21important%3Balign%2Dcontent%3Aflex%2Dstart%21important%7D%2Ealign%2Dcontent%2Dend%7B%2Dms%2Dflex%2Dline%2Dpack%3Aend%21important%3Balign%2Dcontent%3Aflex%2Dend%21important%7D%2Ealign%2Dcontent%2Dcenter%7B%2Dms%2Dflex%2Dline%2Dpack%3Acenter%21important%3Balign%2Dcontent%3Acenter%21important%7D%2Ealign%2Dcontent%2Dbetween%7B%2Dms%2Dflex%2Dline%2Dpack%3Ajustify%21important%3Balign%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ealign%2Dcontent%2Daround%7B%2Dms%2Dflex%2Dline%2Dpack%3Adistribute%21important%3Balign%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Dcontent%2Dstretch%7B%2Dms%2Dflex%2Dline%2Dpack%3Astretch%21important%3Balign%2Dcontent%3Astretch%21important%7D%2Ealign%2Dself%2Dauto%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aauto%21important%3Balign%2Dself%3Aauto%21important%7D%2Ealign%2Dself%2Dstart%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astart%21important%3Balign%2Dself%3Aflex%2Dstart%21important%7D%2Ealign%2Dself%2Dend%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aend%21important%3Balign%2Dself%3Aflex%2Dend%21important%7D%2Ealign%2Dself%2Dcenter%7B%2Dms%2Dflex%2Ditem%2Dalign%3Acenter%21important%3Balign%2Dself%3Acenter%21important%7D%2Ealign%2Dself%2Dbaseline%7B%2Dms%2Dflex%2Ditem%2Dalign%3Abaseline%21important%3Balign%2Dself%3Abaseline%21important%7D%2Ealign%2Dself%2Dstretch%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astretch%21important%3Balign%2Dself%3Astretch%21important%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Eflex%2Dsm%2Drow%7B%2Dms%2Dflex%2Ddirection%3Arow%21important%3Bflex%2Ddirection%3Arow%21important%7D%2Eflex%2Dsm%2Dcolumn%7B%2Dms%2Dflex%2Ddirection%3Acolumn%21important%3Bflex%2Ddirection%3Acolumn%21important%7D%2Eflex%2Dsm%2Drow%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Arow%2Dreverse%21important%3Bflex%2Ddirection%3Arow%2Dreverse%21important%7D%2Eflex%2Dsm%2Dcolumn%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Acolumn%2Dreverse%21important%3Bflex%2Ddirection%3Acolumn%2Dreverse%21important%7D%2Eflex%2Dsm%2Dwrap%7B%2Dms%2Dflex%2Dwrap%3Awrap%21important%3Bflex%2Dwrap%3Awrap%21important%7D%2Eflex%2Dsm%2Dnowrap%7B%2Dms%2Dflex%2Dwrap%3Anowrap%21important%3Bflex%2Dwrap%3Anowrap%21important%7D%2Eflex%2Dsm%2Dwrap%2Dreverse%7B%2Dms%2Dflex%2Dwrap%3Awrap%2Dreverse%21important%3Bflex%2Dwrap%3Awrap%2Dreverse%21important%7D%2Eflex%2Dsm%2Dfill%7B%2Dms%2Dflex%3A1%201%20auto%21important%3Bflex%3A1%201%20auto%21important%7D%2Eflex%2Dsm%2Dgrow%2D0%7B%2Dms%2Dflex%2Dpositive%3A0%21important%3Bflex%2Dgrow%3A0%21important%7D%2Eflex%2Dsm%2Dgrow%2D1%7B%2Dms%2Dflex%2Dpositive%3A1%21important%3Bflex%2Dgrow%3A1%21important%7D%2Eflex%2Dsm%2Dshrink%2D0%7B%2Dms%2Dflex%2Dnegative%3A0%21important%3Bflex%2Dshrink%3A0%21important%7D%2Eflex%2Dsm%2Dshrink%2D1%7B%2Dms%2Dflex%2Dnegative%3A1%21important%3Bflex%2Dshrink%3A1%21important%7D%2Ejustify%2Dcontent%2Dsm%2Dstart%7B%2Dms%2Dflex%2Dpack%3Astart%21important%3Bjustify%2Dcontent%3Aflex%2Dstart%21important%7D%2Ejustify%2Dcontent%2Dsm%2Dend%7B%2Dms%2Dflex%2Dpack%3Aend%21important%3Bjustify%2Dcontent%3Aflex%2Dend%21important%7D%2Ejustify%2Dcontent%2Dsm%2Dcenter%7B%2Dms%2Dflex%2Dpack%3Acenter%21important%3Bjustify%2Dcontent%3Acenter%21important%7D%2Ejustify%2Dcontent%2Dsm%2Dbetween%7B%2Dms%2Dflex%2Dpack%3Ajustify%21important%3Bjustify%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ejustify%2Dcontent%2Dsm%2Daround%7B%2Dms%2Dflex%2Dpack%3Adistribute%21important%3Bjustify%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Ditems%2Dsm%2Dstart%7B%2Dms%2Dflex%2Dalign%3Astart%21important%3Balign%2Ditems%3Aflex%2Dstart%21important%7D%2Ealign%2Ditems%2Dsm%2Dend%7B%2Dms%2Dflex%2Dalign%3Aend%21important%3Balign%2Ditems%3Aflex%2Dend%21important%7D%2Ealign%2Ditems%2Dsm%2Dcenter%7B%2Dms%2Dflex%2Dalign%3Acenter%21important%3Balign%2Ditems%3Acenter%21important%7D%2Ealign%2Ditems%2Dsm%2Dbaseline%7B%2Dms%2Dflex%2Dalign%3Abaseline%21important%3Balign%2Ditems%3Abaseline%21important%7D%2Ealign%2Ditems%2Dsm%2Dstretch%7B%2Dms%2Dflex%2Dalign%3Astretch%21important%3Balign%2Ditems%3Astretch%21important%7D%2Ealign%2Dcontent%2Dsm%2Dstart%7B%2Dms%2Dflex%2Dline%2Dpack%3Astart%21important%3Balign%2Dcontent%3Aflex%2Dstart%21important%7D%2Ealign%2Dcontent%2Dsm%2Dend%7B%2Dms%2Dflex%2Dline%2Dpack%3Aend%21important%3Balign%2Dcontent%3Aflex%2Dend%21important%7D%2Ealign%2Dcontent%2Dsm%2Dcenter%7B%2Dms%2Dflex%2Dline%2Dpack%3Acenter%21important%3Balign%2Dcontent%3Acenter%21important%7D%2Ealign%2Dcontent%2Dsm%2Dbetween%7B%2Dms%2Dflex%2Dline%2Dpack%3Ajustify%21important%3Balign%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ealign%2Dcontent%2Dsm%2Daround%7B%2Dms%2Dflex%2Dline%2Dpack%3Adistribute%21important%3Balign%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Dcontent%2Dsm%2Dstretch%7B%2Dms%2Dflex%2Dline%2Dpack%3Astretch%21important%3Balign%2Dcontent%3Astretch%21important%7D%2Ealign%2Dself%2Dsm%2Dauto%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aauto%21important%3Balign%2Dself%3Aauto%21important%7D%2Ealign%2Dself%2Dsm%2Dstart%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astart%21important%3Balign%2Dself%3Aflex%2Dstart%21important%7D%2Ealign%2Dself%2Dsm%2Dend%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aend%21important%3Balign%2Dself%3Aflex%2Dend%21important%7D%2Ealign%2Dself%2Dsm%2Dcenter%7B%2Dms%2Dflex%2Ditem%2Dalign%3Acenter%21important%3Balign%2Dself%3Acenter%21important%7D%2Ealign%2Dself%2Dsm%2Dbaseline%7B%2Dms%2Dflex%2Ditem%2Dalign%3Abaseline%21important%3Balign%2Dself%3Abaseline%21important%7D%2Ealign%2Dself%2Dsm%2Dstretch%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astretch%21important%3Balign%2Dself%3Astretch%21important%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Eflex%2Dmd%2Drow%7B%2Dms%2Dflex%2Ddirection%3Arow%21important%3Bflex%2Ddirection%3Arow%21important%7D%2Eflex%2Dmd%2Dcolumn%7B%2Dms%2Dflex%2Ddirection%3Acolumn%21important%3Bflex%2Ddirection%3Acolumn%21important%7D%2Eflex%2Dmd%2Drow%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Arow%2Dreverse%21important%3Bflex%2Ddirection%3Arow%2Dreverse%21important%7D%2Eflex%2Dmd%2Dcolumn%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Acolumn%2Dreverse%21important%3Bflex%2Ddirection%3Acolumn%2Dreverse%21important%7D%2Eflex%2Dmd%2Dwrap%7B%2Dms%2Dflex%2Dwrap%3Awrap%21important%3Bflex%2Dwrap%3Awrap%21important%7D%2Eflex%2Dmd%2Dnowrap%7B%2Dms%2Dflex%2Dwrap%3Anowrap%21important%3Bflex%2Dwrap%3Anowrap%21important%7D%2Eflex%2Dmd%2Dwrap%2Dreverse%7B%2Dms%2Dflex%2Dwrap%3Awrap%2Dreverse%21important%3Bflex%2Dwrap%3Awrap%2Dreverse%21important%7D%2Eflex%2Dmd%2Dfill%7B%2Dms%2Dflex%3A1%201%20auto%21important%3Bflex%3A1%201%20auto%21important%7D%2Eflex%2Dmd%2Dgrow%2D0%7B%2Dms%2Dflex%2Dpositive%3A0%21important%3Bflex%2Dgrow%3A0%21important%7D%2Eflex%2Dmd%2Dgrow%2D1%7B%2Dms%2Dflex%2Dpositive%3A1%21important%3Bflex%2Dgrow%3A1%21important%7D%2Eflex%2Dmd%2Dshrink%2D0%7B%2Dms%2Dflex%2Dnegative%3A0%21important%3Bflex%2Dshrink%3A0%21important%7D%2Eflex%2Dmd%2Dshrink%2D1%7B%2Dms%2Dflex%2Dnegative%3A1%21important%3Bflex%2Dshrink%3A1%21important%7D%2Ejustify%2Dcontent%2Dmd%2Dstart%7B%2Dms%2Dflex%2Dpack%3Astart%21important%3Bjustify%2Dcontent%3Aflex%2Dstart%21important%7D%2Ejustify%2Dcontent%2Dmd%2Dend%7B%2Dms%2Dflex%2Dpack%3Aend%21important%3Bjustify%2Dcontent%3Aflex%2Dend%21important%7D%2Ejustify%2Dcontent%2Dmd%2Dcenter%7B%2Dms%2Dflex%2Dpack%3Acenter%21important%3Bjustify%2Dcontent%3Acenter%21important%7D%2Ejustify%2Dcontent%2Dmd%2Dbetween%7B%2Dms%2Dflex%2Dpack%3Ajustify%21important%3Bjustify%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ejustify%2Dcontent%2Dmd%2Daround%7B%2Dms%2Dflex%2Dpack%3Adistribute%21important%3Bjustify%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Ditems%2Dmd%2Dstart%7B%2Dms%2Dflex%2Dalign%3Astart%21important%3Balign%2Ditems%3Aflex%2Dstart%21important%7D%2Ealign%2Ditems%2Dmd%2Dend%7B%2Dms%2Dflex%2Dalign%3Aend%21important%3Balign%2Ditems%3Aflex%2Dend%21important%7D%2Ealign%2Ditems%2Dmd%2Dcenter%7B%2Dms%2Dflex%2Dalign%3Acenter%21important%3Balign%2Ditems%3Acenter%21important%7D%2Ealign%2Ditems%2Dmd%2Dbaseline%7B%2Dms%2Dflex%2Dalign%3Abaseline%21important%3Balign%2Ditems%3Abaseline%21important%7D%2Ealign%2Ditems%2Dmd%2Dstretch%7B%2Dms%2Dflex%2Dalign%3Astretch%21important%3Balign%2Ditems%3Astretch%21important%7D%2Ealign%2Dcontent%2Dmd%2Dstart%7B%2Dms%2Dflex%2Dline%2Dpack%3Astart%21important%3Balign%2Dcontent%3Aflex%2Dstart%21important%7D%2Ealign%2Dcontent%2Dmd%2Dend%7B%2Dms%2Dflex%2Dline%2Dpack%3Aend%21important%3Balign%2Dcontent%3Aflex%2Dend%21important%7D%2Ealign%2Dcontent%2Dmd%2Dcenter%7B%2Dms%2Dflex%2Dline%2Dpack%3Acenter%21important%3Balign%2Dcontent%3Acenter%21important%7D%2Ealign%2Dcontent%2Dmd%2Dbetween%7B%2Dms%2Dflex%2Dline%2Dpack%3Ajustify%21important%3Balign%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ealign%2Dcontent%2Dmd%2Daround%7B%2Dms%2Dflex%2Dline%2Dpack%3Adistribute%21important%3Balign%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Dcontent%2Dmd%2Dstretch%7B%2Dms%2Dflex%2Dline%2Dpack%3Astretch%21important%3Balign%2Dcontent%3Astretch%21important%7D%2Ealign%2Dself%2Dmd%2Dauto%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aauto%21important%3Balign%2Dself%3Aauto%21important%7D%2Ealign%2Dself%2Dmd%2Dstart%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astart%21important%3Balign%2Dself%3Aflex%2Dstart%21important%7D%2Ealign%2Dself%2Dmd%2Dend%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aend%21important%3Balign%2Dself%3Aflex%2Dend%21important%7D%2Ealign%2Dself%2Dmd%2Dcenter%7B%2Dms%2Dflex%2Ditem%2Dalign%3Acenter%21important%3Balign%2Dself%3Acenter%21important%7D%2Ealign%2Dself%2Dmd%2Dbaseline%7B%2Dms%2Dflex%2Ditem%2Dalign%3Abaseline%21important%3Balign%2Dself%3Abaseline%21important%7D%2Ealign%2Dself%2Dmd%2Dstretch%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astretch%21important%3Balign%2Dself%3Astretch%21important%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Eflex%2Dlg%2Drow%7B%2Dms%2Dflex%2Ddirection%3Arow%21important%3Bflex%2Ddirection%3Arow%21important%7D%2Eflex%2Dlg%2Dcolumn%7B%2Dms%2Dflex%2Ddirection%3Acolumn%21important%3Bflex%2Ddirection%3Acolumn%21important%7D%2Eflex%2Dlg%2Drow%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Arow%2Dreverse%21important%3Bflex%2Ddirection%3Arow%2Dreverse%21important%7D%2Eflex%2Dlg%2Dcolumn%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Acolumn%2Dreverse%21important%3Bflex%2Ddirection%3Acolumn%2Dreverse%21important%7D%2Eflex%2Dlg%2Dwrap%7B%2Dms%2Dflex%2Dwrap%3Awrap%21important%3Bflex%2Dwrap%3Awrap%21important%7D%2Eflex%2Dlg%2Dnowrap%7B%2Dms%2Dflex%2Dwrap%3Anowrap%21important%3Bflex%2Dwrap%3Anowrap%21important%7D%2Eflex%2Dlg%2Dwrap%2Dreverse%7B%2Dms%2Dflex%2Dwrap%3Awrap%2Dreverse%21important%3Bflex%2Dwrap%3Awrap%2Dreverse%21important%7D%2Eflex%2Dlg%2Dfill%7B%2Dms%2Dflex%3A1%201%20auto%21important%3Bflex%3A1%201%20auto%21important%7D%2Eflex%2Dlg%2Dgrow%2D0%7B%2Dms%2Dflex%2Dpositive%3A0%21important%3Bflex%2Dgrow%3A0%21important%7D%2Eflex%2Dlg%2Dgrow%2D1%7B%2Dms%2Dflex%2Dpositive%3A1%21important%3Bflex%2Dgrow%3A1%21important%7D%2Eflex%2Dlg%2Dshrink%2D0%7B%2Dms%2Dflex%2Dnegative%3A0%21important%3Bflex%2Dshrink%3A0%21important%7D%2Eflex%2Dlg%2Dshrink%2D1%7B%2Dms%2Dflex%2Dnegative%3A1%21important%3Bflex%2Dshrink%3A1%21important%7D%2Ejustify%2Dcontent%2Dlg%2Dstart%7B%2Dms%2Dflex%2Dpack%3Astart%21important%3Bjustify%2Dcontent%3Aflex%2Dstart%21important%7D%2Ejustify%2Dcontent%2Dlg%2Dend%7B%2Dms%2Dflex%2Dpack%3Aend%21important%3Bjustify%2Dcontent%3Aflex%2Dend%21important%7D%2Ejustify%2Dcontent%2Dlg%2Dcenter%7B%2Dms%2Dflex%2Dpack%3Acenter%21important%3Bjustify%2Dcontent%3Acenter%21important%7D%2Ejustify%2Dcontent%2Dlg%2Dbetween%7B%2Dms%2Dflex%2Dpack%3Ajustify%21important%3Bjustify%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ejustify%2Dcontent%2Dlg%2Daround%7B%2Dms%2Dflex%2Dpack%3Adistribute%21important%3Bjustify%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Ditems%2Dlg%2Dstart%7B%2Dms%2Dflex%2Dalign%3Astart%21important%3Balign%2Ditems%3Aflex%2Dstart%21important%7D%2Ealign%2Ditems%2Dlg%2Dend%7B%2Dms%2Dflex%2Dalign%3Aend%21important%3Balign%2Ditems%3Aflex%2Dend%21important%7D%2Ealign%2Ditems%2Dlg%2Dcenter%7B%2Dms%2Dflex%2Dalign%3Acenter%21important%3Balign%2Ditems%3Acenter%21important%7D%2Ealign%2Ditems%2Dlg%2Dbaseline%7B%2Dms%2Dflex%2Dalign%3Abaseline%21important%3Balign%2Ditems%3Abaseline%21important%7D%2Ealign%2Ditems%2Dlg%2Dstretch%7B%2Dms%2Dflex%2Dalign%3Astretch%21important%3Balign%2Ditems%3Astretch%21important%7D%2Ealign%2Dcontent%2Dlg%2Dstart%7B%2Dms%2Dflex%2Dline%2Dpack%3Astart%21important%3Balign%2Dcontent%3Aflex%2Dstart%21important%7D%2Ealign%2Dcontent%2Dlg%2Dend%7B%2Dms%2Dflex%2Dline%2Dpack%3Aend%21important%3Balign%2Dcontent%3Aflex%2Dend%21important%7D%2Ealign%2Dcontent%2Dlg%2Dcenter%7B%2Dms%2Dflex%2Dline%2Dpack%3Acenter%21important%3Balign%2Dcontent%3Acenter%21important%7D%2Ealign%2Dcontent%2Dlg%2Dbetween%7B%2Dms%2Dflex%2Dline%2Dpack%3Ajustify%21important%3Balign%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ealign%2Dcontent%2Dlg%2Daround%7B%2Dms%2Dflex%2Dline%2Dpack%3Adistribute%21important%3Balign%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Dcontent%2Dlg%2Dstretch%7B%2Dms%2Dflex%2Dline%2Dpack%3Astretch%21important%3Balign%2Dcontent%3Astretch%21important%7D%2Ealign%2Dself%2Dlg%2Dauto%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aauto%21important%3Balign%2Dself%3Aauto%21important%7D%2Ealign%2Dself%2Dlg%2Dstart%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astart%21important%3Balign%2Dself%3Aflex%2Dstart%21important%7D%2Ealign%2Dself%2Dlg%2Dend%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aend%21important%3Balign%2Dself%3Aflex%2Dend%21important%7D%2Ealign%2Dself%2Dlg%2Dcenter%7B%2Dms%2Dflex%2Ditem%2Dalign%3Acenter%21important%3Balign%2Dself%3Acenter%21important%7D%2Ealign%2Dself%2Dlg%2Dbaseline%7B%2Dms%2Dflex%2Ditem%2Dalign%3Abaseline%21important%3Balign%2Dself%3Abaseline%21important%7D%2Ealign%2Dself%2Dlg%2Dstretch%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astretch%21important%3Balign%2Dself%3Astretch%21important%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Eflex%2Dxl%2Drow%7B%2Dms%2Dflex%2Ddirection%3Arow%21important%3Bflex%2Ddirection%3Arow%21important%7D%2Eflex%2Dxl%2Dcolumn%7B%2Dms%2Dflex%2Ddirection%3Acolumn%21important%3Bflex%2Ddirection%3Acolumn%21important%7D%2Eflex%2Dxl%2Drow%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Arow%2Dreverse%21important%3Bflex%2Ddirection%3Arow%2Dreverse%21important%7D%2Eflex%2Dxl%2Dcolumn%2Dreverse%7B%2Dms%2Dflex%2Ddirection%3Acolumn%2Dreverse%21important%3Bflex%2Ddirection%3Acolumn%2Dreverse%21important%7D%2Eflex%2Dxl%2Dwrap%7B%2Dms%2Dflex%2Dwrap%3Awrap%21important%3Bflex%2Dwrap%3Awrap%21important%7D%2Eflex%2Dxl%2Dnowrap%7B%2Dms%2Dflex%2Dwrap%3Anowrap%21important%3Bflex%2Dwrap%3Anowrap%21important%7D%2Eflex%2Dxl%2Dwrap%2Dreverse%7B%2Dms%2Dflex%2Dwrap%3Awrap%2Dreverse%21important%3Bflex%2Dwrap%3Awrap%2Dreverse%21important%7D%2Eflex%2Dxl%2Dfill%7B%2Dms%2Dflex%3A1%201%20auto%21important%3Bflex%3A1%201%20auto%21important%7D%2Eflex%2Dxl%2Dgrow%2D0%7B%2Dms%2Dflex%2Dpositive%3A0%21important%3Bflex%2Dgrow%3A0%21important%7D%2Eflex%2Dxl%2Dgrow%2D1%7B%2Dms%2Dflex%2Dpositive%3A1%21important%3Bflex%2Dgrow%3A1%21important%7D%2Eflex%2Dxl%2Dshrink%2D0%7B%2Dms%2Dflex%2Dnegative%3A0%21important%3Bflex%2Dshrink%3A0%21important%7D%2Eflex%2Dxl%2Dshrink%2D1%7B%2Dms%2Dflex%2Dnegative%3A1%21important%3Bflex%2Dshrink%3A1%21important%7D%2Ejustify%2Dcontent%2Dxl%2Dstart%7B%2Dms%2Dflex%2Dpack%3Astart%21important%3Bjustify%2Dcontent%3Aflex%2Dstart%21important%7D%2Ejustify%2Dcontent%2Dxl%2Dend%7B%2Dms%2Dflex%2Dpack%3Aend%21important%3Bjustify%2Dcontent%3Aflex%2Dend%21important%7D%2Ejustify%2Dcontent%2Dxl%2Dcenter%7B%2Dms%2Dflex%2Dpack%3Acenter%21important%3Bjustify%2Dcontent%3Acenter%21important%7D%2Ejustify%2Dcontent%2Dxl%2Dbetween%7B%2Dms%2Dflex%2Dpack%3Ajustify%21important%3Bjustify%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ejustify%2Dcontent%2Dxl%2Daround%7B%2Dms%2Dflex%2Dpack%3Adistribute%21important%3Bjustify%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Ditems%2Dxl%2Dstart%7B%2Dms%2Dflex%2Dalign%3Astart%21important%3Balign%2Ditems%3Aflex%2Dstart%21important%7D%2Ealign%2Ditems%2Dxl%2Dend%7B%2Dms%2Dflex%2Dalign%3Aend%21important%3Balign%2Ditems%3Aflex%2Dend%21important%7D%2Ealign%2Ditems%2Dxl%2Dcenter%7B%2Dms%2Dflex%2Dalign%3Acenter%21important%3Balign%2Ditems%3Acenter%21important%7D%2Ealign%2Ditems%2Dxl%2Dbaseline%7B%2Dms%2Dflex%2Dalign%3Abaseline%21important%3Balign%2Ditems%3Abaseline%21important%7D%2Ealign%2Ditems%2Dxl%2Dstretch%7B%2Dms%2Dflex%2Dalign%3Astretch%21important%3Balign%2Ditems%3Astretch%21important%7D%2Ealign%2Dcontent%2Dxl%2Dstart%7B%2Dms%2Dflex%2Dline%2Dpack%3Astart%21important%3Balign%2Dcontent%3Aflex%2Dstart%21important%7D%2Ealign%2Dcontent%2Dxl%2Dend%7B%2Dms%2Dflex%2Dline%2Dpack%3Aend%21important%3Balign%2Dcontent%3Aflex%2Dend%21important%7D%2Ealign%2Dcontent%2Dxl%2Dcenter%7B%2Dms%2Dflex%2Dline%2Dpack%3Acenter%21important%3Balign%2Dcontent%3Acenter%21important%7D%2Ealign%2Dcontent%2Dxl%2Dbetween%7B%2Dms%2Dflex%2Dline%2Dpack%3Ajustify%21important%3Balign%2Dcontent%3Aspace%2Dbetween%21important%7D%2Ealign%2Dcontent%2Dxl%2Daround%7B%2Dms%2Dflex%2Dline%2Dpack%3Adistribute%21important%3Balign%2Dcontent%3Aspace%2Daround%21important%7D%2Ealign%2Dcontent%2Dxl%2Dstretch%7B%2Dms%2Dflex%2Dline%2Dpack%3Astretch%21important%3Balign%2Dcontent%3Astretch%21important%7D%2Ealign%2Dself%2Dxl%2Dauto%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aauto%21important%3Balign%2Dself%3Aauto%21important%7D%2Ealign%2Dself%2Dxl%2Dstart%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astart%21important%3Balign%2Dself%3Aflex%2Dstart%21important%7D%2Ealign%2Dself%2Dxl%2Dend%7B%2Dms%2Dflex%2Ditem%2Dalign%3Aend%21important%3Balign%2Dself%3Aflex%2Dend%21important%7D%2Ealign%2Dself%2Dxl%2Dcenter%7B%2Dms%2Dflex%2Ditem%2Dalign%3Acenter%21important%3Balign%2Dself%3Acenter%21important%7D%2Ealign%2Dself%2Dxl%2Dbaseline%7B%2Dms%2Dflex%2Ditem%2Dalign%3Abaseline%21important%3Balign%2Dself%3Abaseline%21important%7D%2Ealign%2Dself%2Dxl%2Dstretch%7B%2Dms%2Dflex%2Ditem%2Dalign%3Astretch%21important%3Balign%2Dself%3Astretch%21important%7D%7D%2Efloat%2Dleft%7Bfloat%3Aleft%21important%7D%2Efloat%2Dright%7Bfloat%3Aright%21important%7D%2Efloat%2Dnone%7Bfloat%3Anone%21important%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Efloat%2Dsm%2Dleft%7Bfloat%3Aleft%21important%7D%2Efloat%2Dsm%2Dright%7Bfloat%3Aright%21important%7D%2Efloat%2Dsm%2Dnone%7Bfloat%3Anone%21important%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Efloat%2Dmd%2Dleft%7Bfloat%3Aleft%21important%7D%2Efloat%2Dmd%2Dright%7Bfloat%3Aright%21important%7D%2Efloat%2Dmd%2Dnone%7Bfloat%3Anone%21important%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Efloat%2Dlg%2Dleft%7Bfloat%3Aleft%21important%7D%2Efloat%2Dlg%2Dright%7Bfloat%3Aright%21important%7D%2Efloat%2Dlg%2Dnone%7Bfloat%3Anone%21important%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Efloat%2Dxl%2Dleft%7Bfloat%3Aleft%21important%7D%2Efloat%2Dxl%2Dright%7Bfloat%3Aright%21important%7D%2Efloat%2Dxl%2Dnone%7Bfloat%3Anone%21important%7D%7D%2Eposition%2Dstatic%7Bposition%3Astatic%21important%7D%2Eposition%2Drelative%7Bposition%3Arelative%21important%7D%2Eposition%2Dabsolute%7Bposition%3Aabsolute%21important%7D%2Eposition%2Dfixed%7Bposition%3Afixed%21important%7D%2Eposition%2Dsticky%7Bposition%3A%2Dwebkit%2Dsticky%21important%3Bposition%3Asticky%21important%7D%2Efixed%2Dtop%7Bposition%3Afixed%3Btop%3A0%3Bright%3A0%3Bleft%3A0%3Bz%2Dindex%3A1030%7D%2Efixed%2Dbottom%7Bposition%3Afixed%3Bright%3A0%3Bbottom%3A0%3Bleft%3A0%3Bz%2Dindex%3A1030%7D%40supports%20%28%28position%3A%2Dwebkit%2Dsticky%29%20or%20%28position%3Asticky%29%29%7B%2Esticky%2Dtop%7Bposition%3A%2Dwebkit%2Dsticky%3Bposition%3Asticky%3Btop%3A0%3Bz%2Dindex%3A1020%7D%7D%2Esr%2Donly%7Bposition%3Aabsolute%3Bwidth%3A1px%3Bheight%3A1px%3Bpadding%3A0%3Boverflow%3Ahidden%3Bclip%3Arect%280%2C0%2C0%2C0%29%3Bwhite%2Dspace%3Anowrap%3Bborder%3A0%7D%2Esr%2Donly%2Dfocusable%3Aactive%2C%2Esr%2Donly%2Dfocusable%3Afocus%7Bposition%3Astatic%3Bwidth%3Aauto%3Bheight%3Aauto%3Boverflow%3Avisible%3Bclip%3Aauto%3Bwhite%2Dspace%3Anormal%7D%2Eshadow%2Dsm%7Bbox%2Dshadow%3A0%20%2E125rem%20%2E25rem%20rgba%280%2C0%2C0%2C%2E075%29%21important%7D%2Eshadow%7Bbox%2Dshadow%3A0%20%2E5rem%201rem%20rgba%280%2C0%2C0%2C%2E15%29%21important%7D%2Eshadow%2Dlg%7Bbox%2Dshadow%3A0%201rem%203rem%20rgba%280%2C0%2C0%2C%2E175%29%21important%7D%2Eshadow%2Dnone%7Bbox%2Dshadow%3Anone%21important%7D%2Ew%2D25%7Bwidth%3A25%25%21important%7D%2Ew%2D50%7Bwidth%3A50%25%21important%7D%2Ew%2D75%7Bwidth%3A75%25%21important%7D%2Ew%2D100%7Bwidth%3A100%25%21important%7D%2Ew%2Dauto%7Bwidth%3Aauto%21important%7D%2Eh%2D25%7Bheight%3A25%25%21important%7D%2Eh%2D50%7Bheight%3A50%25%21important%7D%2Eh%2D75%7Bheight%3A75%25%21important%7D%2Eh%2D100%7Bheight%3A100%25%21important%7D%2Eh%2Dauto%7Bheight%3Aauto%21important%7D%2Emw%2D100%7Bmax%2Dwidth%3A100%25%21important%7D%2Emh%2D100%7Bmax%2Dheight%3A100%25%21important%7D%2Em%2D0%7Bmargin%3A0%21important%7D%2Emt%2D0%2C%2Emy%2D0%7Bmargin%2Dtop%3A0%21important%7D%2Emr%2D0%2C%2Emx%2D0%7Bmargin%2Dright%3A0%21important%7D%2Emb%2D0%2C%2Emy%2D0%7Bmargin%2Dbottom%3A0%21important%7D%2Eml%2D0%2C%2Emx%2D0%7Bmargin%2Dleft%3A0%21important%7D%2Em%2D1%7Bmargin%3A%2E25rem%21important%7D%2Emt%2D1%2C%2Emy%2D1%7Bmargin%2Dtop%3A%2E25rem%21important%7D%2Emr%2D1%2C%2Emx%2D1%7Bmargin%2Dright%3A%2E25rem%21important%7D%2Emb%2D1%2C%2Emy%2D1%7Bmargin%2Dbottom%3A%2E25rem%21important%7D%2Eml%2D1%2C%2Emx%2D1%7Bmargin%2Dleft%3A%2E25rem%21important%7D%2Em%2D2%7Bmargin%3A%2E5rem%21important%7D%2Emt%2D2%2C%2Emy%2D2%7Bmargin%2Dtop%3A%2E5rem%21important%7D%2Emr%2D2%2C%2Emx%2D2%7Bmargin%2Dright%3A%2E5rem%21important%7D%2Emb%2D2%2C%2Emy%2D2%7Bmargin%2Dbottom%3A%2E5rem%21important%7D%2Eml%2D2%2C%2Emx%2D2%7Bmargin%2Dleft%3A%2E5rem%21important%7D%2Em%2D3%7Bmargin%3A1rem%21important%7D%2Emt%2D3%2C%2Emy%2D3%7Bmargin%2Dtop%3A1rem%21important%7D%2Emr%2D3%2C%2Emx%2D3%7Bmargin%2Dright%3A1rem%21important%7D%2Emb%2D3%2C%2Emy%2D3%7Bmargin%2Dbottom%3A1rem%21important%7D%2Eml%2D3%2C%2Emx%2D3%7Bmargin%2Dleft%3A1rem%21important%7D%2Em%2D4%7Bmargin%3A1%2E5rem%21important%7D%2Emt%2D4%2C%2Emy%2D4%7Bmargin%2Dtop%3A1%2E5rem%21important%7D%2Emr%2D4%2C%2Emx%2D4%7Bmargin%2Dright%3A1%2E5rem%21important%7D%2Emb%2D4%2C%2Emy%2D4%7Bmargin%2Dbottom%3A1%2E5rem%21important%7D%2Eml%2D4%2C%2Emx%2D4%7Bmargin%2Dleft%3A1%2E5rem%21important%7D%2Em%2D5%7Bmargin%3A3rem%21important%7D%2Emt%2D5%2C%2Emy%2D5%7Bmargin%2Dtop%3A3rem%21important%7D%2Emr%2D5%2C%2Emx%2D5%7Bmargin%2Dright%3A3rem%21important%7D%2Emb%2D5%2C%2Emy%2D5%7Bmargin%2Dbottom%3A3rem%21important%7D%2Eml%2D5%2C%2Emx%2D5%7Bmargin%2Dleft%3A3rem%21important%7D%2Ep%2D0%7Bpadding%3A0%21important%7D%2Ept%2D0%2C%2Epy%2D0%7Bpadding%2Dtop%3A0%21important%7D%2Epr%2D0%2C%2Epx%2D0%7Bpadding%2Dright%3A0%21important%7D%2Epb%2D0%2C%2Epy%2D0%7Bpadding%2Dbottom%3A0%21important%7D%2Epl%2D0%2C%2Epx%2D0%7Bpadding%2Dleft%3A0%21important%7D%2Ep%2D1%7Bpadding%3A%2E25rem%21important%7D%2Ept%2D1%2C%2Epy%2D1%7Bpadding%2Dtop%3A%2E25rem%21important%7D%2Epr%2D1%2C%2Epx%2D1%7Bpadding%2Dright%3A%2E25rem%21important%7D%2Epb%2D1%2C%2Epy%2D1%7Bpadding%2Dbottom%3A%2E25rem%21important%7D%2Epl%2D1%2C%2Epx%2D1%7Bpadding%2Dleft%3A%2E25rem%21important%7D%2Ep%2D2%7Bpadding%3A%2E5rem%21important%7D%2Ept%2D2%2C%2Epy%2D2%7Bpadding%2Dtop%3A%2E5rem%21important%7D%2Epr%2D2%2C%2Epx%2D2%7Bpadding%2Dright%3A%2E5rem%21important%7D%2Epb%2D2%2C%2Epy%2D2%7Bpadding%2Dbottom%3A%2E5rem%21important%7D%2Epl%2D2%2C%2Epx%2D2%7Bpadding%2Dleft%3A%2E5rem%21important%7D%2Ep%2D3%7Bpadding%3A1rem%21important%7D%2Ept%2D3%2C%2Epy%2D3%7Bpadding%2Dtop%3A1rem%21important%7D%2Epr%2D3%2C%2Epx%2D3%7Bpadding%2Dright%3A1rem%21important%7D%2Epb%2D3%2C%2Epy%2D3%7Bpadding%2Dbottom%3A1rem%21important%7D%2Epl%2D3%2C%2Epx%2D3%7Bpadding%2Dleft%3A1rem%21important%7D%2Ep%2D4%7Bpadding%3A1%2E5rem%21important%7D%2Ept%2D4%2C%2Epy%2D4%7Bpadding%2Dtop%3A1%2E5rem%21important%7D%2Epr%2D4%2C%2Epx%2D4%7Bpadding%2Dright%3A1%2E5rem%21important%7D%2Epb%2D4%2C%2Epy%2D4%7Bpadding%2Dbottom%3A1%2E5rem%21important%7D%2Epl%2D4%2C%2Epx%2D4%7Bpadding%2Dleft%3A1%2E5rem%21important%7D%2Ep%2D5%7Bpadding%3A3rem%21important%7D%2Ept%2D5%2C%2Epy%2D5%7Bpadding%2Dtop%3A3rem%21important%7D%2Epr%2D5%2C%2Epx%2D5%7Bpadding%2Dright%3A3rem%21important%7D%2Epb%2D5%2C%2Epy%2D5%7Bpadding%2Dbottom%3A3rem%21important%7D%2Epl%2D5%2C%2Epx%2D5%7Bpadding%2Dleft%3A3rem%21important%7D%2Em%2Dauto%7Bmargin%3Aauto%21important%7D%2Emt%2Dauto%2C%2Emy%2Dauto%7Bmargin%2Dtop%3Aauto%21important%7D%2Emr%2Dauto%2C%2Emx%2Dauto%7Bmargin%2Dright%3Aauto%21important%7D%2Emb%2Dauto%2C%2Emy%2Dauto%7Bmargin%2Dbottom%3Aauto%21important%7D%2Eml%2Dauto%2C%2Emx%2Dauto%7Bmargin%2Dleft%3Aauto%21important%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Em%2Dsm%2D0%7Bmargin%3A0%21important%7D%2Emt%2Dsm%2D0%2C%2Emy%2Dsm%2D0%7Bmargin%2Dtop%3A0%21important%7D%2Emr%2Dsm%2D0%2C%2Emx%2Dsm%2D0%7Bmargin%2Dright%3A0%21important%7D%2Emb%2Dsm%2D0%2C%2Emy%2Dsm%2D0%7Bmargin%2Dbottom%3A0%21important%7D%2Eml%2Dsm%2D0%2C%2Emx%2Dsm%2D0%7Bmargin%2Dleft%3A0%21important%7D%2Em%2Dsm%2D1%7Bmargin%3A%2E25rem%21important%7D%2Emt%2Dsm%2D1%2C%2Emy%2Dsm%2D1%7Bmargin%2Dtop%3A%2E25rem%21important%7D%2Emr%2Dsm%2D1%2C%2Emx%2Dsm%2D1%7Bmargin%2Dright%3A%2E25rem%21important%7D%2Emb%2Dsm%2D1%2C%2Emy%2Dsm%2D1%7Bmargin%2Dbottom%3A%2E25rem%21important%7D%2Eml%2Dsm%2D1%2C%2Emx%2Dsm%2D1%7Bmargin%2Dleft%3A%2E25rem%21important%7D%2Em%2Dsm%2D2%7Bmargin%3A%2E5rem%21important%7D%2Emt%2Dsm%2D2%2C%2Emy%2Dsm%2D2%7Bmargin%2Dtop%3A%2E5rem%21important%7D%2Emr%2Dsm%2D2%2C%2Emx%2Dsm%2D2%7Bmargin%2Dright%3A%2E5rem%21important%7D%2Emb%2Dsm%2D2%2C%2Emy%2Dsm%2D2%7Bmargin%2Dbottom%3A%2E5rem%21important%7D%2Eml%2Dsm%2D2%2C%2Emx%2Dsm%2D2%7Bmargin%2Dleft%3A%2E5rem%21important%7D%2Em%2Dsm%2D3%7Bmargin%3A1rem%21important%7D%2Emt%2Dsm%2D3%2C%2Emy%2Dsm%2D3%7Bmargin%2Dtop%3A1rem%21important%7D%2Emr%2Dsm%2D3%2C%2Emx%2Dsm%2D3%7Bmargin%2Dright%3A1rem%21important%7D%2Emb%2Dsm%2D3%2C%2Emy%2Dsm%2D3%7Bmargin%2Dbottom%3A1rem%21important%7D%2Eml%2Dsm%2D3%2C%2Emx%2Dsm%2D3%7Bmargin%2Dleft%3A1rem%21important%7D%2Em%2Dsm%2D4%7Bmargin%3A1%2E5rem%21important%7D%2Emt%2Dsm%2D4%2C%2Emy%2Dsm%2D4%7Bmargin%2Dtop%3A1%2E5rem%21important%7D%2Emr%2Dsm%2D4%2C%2Emx%2Dsm%2D4%7Bmargin%2Dright%3A1%2E5rem%21important%7D%2Emb%2Dsm%2D4%2C%2Emy%2Dsm%2D4%7Bmargin%2Dbottom%3A1%2E5rem%21important%7D%2Eml%2Dsm%2D4%2C%2Emx%2Dsm%2D4%7Bmargin%2Dleft%3A1%2E5rem%21important%7D%2Em%2Dsm%2D5%7Bmargin%3A3rem%21important%7D%2Emt%2Dsm%2D5%2C%2Emy%2Dsm%2D5%7Bmargin%2Dtop%3A3rem%21important%7D%2Emr%2Dsm%2D5%2C%2Emx%2Dsm%2D5%7Bmargin%2Dright%3A3rem%21important%7D%2Emb%2Dsm%2D5%2C%2Emy%2Dsm%2D5%7Bmargin%2Dbottom%3A3rem%21important%7D%2Eml%2Dsm%2D5%2C%2Emx%2Dsm%2D5%7Bmargin%2Dleft%3A3rem%21important%7D%2Ep%2Dsm%2D0%7Bpadding%3A0%21important%7D%2Ept%2Dsm%2D0%2C%2Epy%2Dsm%2D0%7Bpadding%2Dtop%3A0%21important%7D%2Epr%2Dsm%2D0%2C%2Epx%2Dsm%2D0%7Bpadding%2Dright%3A0%21important%7D%2Epb%2Dsm%2D0%2C%2Epy%2Dsm%2D0%7Bpadding%2Dbottom%3A0%21important%7D%2Epl%2Dsm%2D0%2C%2Epx%2Dsm%2D0%7Bpadding%2Dleft%3A0%21important%7D%2Ep%2Dsm%2D1%7Bpadding%3A%2E25rem%21important%7D%2Ept%2Dsm%2D1%2C%2Epy%2Dsm%2D1%7Bpadding%2Dtop%3A%2E25rem%21important%7D%2Epr%2Dsm%2D1%2C%2Epx%2Dsm%2D1%7Bpadding%2Dright%3A%2E25rem%21important%7D%2Epb%2Dsm%2D1%2C%2Epy%2Dsm%2D1%7Bpadding%2Dbottom%3A%2E25rem%21important%7D%2Epl%2Dsm%2D1%2C%2Epx%2Dsm%2D1%7Bpadding%2Dleft%3A%2E25rem%21important%7D%2Ep%2Dsm%2D2%7Bpadding%3A%2E5rem%21important%7D%2Ept%2Dsm%2D2%2C%2Epy%2Dsm%2D2%7Bpadding%2Dtop%3A%2E5rem%21important%7D%2Epr%2Dsm%2D2%2C%2Epx%2Dsm%2D2%7Bpadding%2Dright%3A%2E5rem%21important%7D%2Epb%2Dsm%2D2%2C%2Epy%2Dsm%2D2%7Bpadding%2Dbottom%3A%2E5rem%21important%7D%2Epl%2Dsm%2D2%2C%2Epx%2Dsm%2D2%7Bpadding%2Dleft%3A%2E5rem%21important%7D%2Ep%2Dsm%2D3%7Bpadding%3A1rem%21important%7D%2Ept%2Dsm%2D3%2C%2Epy%2Dsm%2D3%7Bpadding%2Dtop%3A1rem%21important%7D%2Epr%2Dsm%2D3%2C%2Epx%2Dsm%2D3%7Bpadding%2Dright%3A1rem%21important%7D%2Epb%2Dsm%2D3%2C%2Epy%2Dsm%2D3%7Bpadding%2Dbottom%3A1rem%21important%7D%2Epl%2Dsm%2D3%2C%2Epx%2Dsm%2D3%7Bpadding%2Dleft%3A1rem%21important%7D%2Ep%2Dsm%2D4%7Bpadding%3A1%2E5rem%21important%7D%2Ept%2Dsm%2D4%2C%2Epy%2Dsm%2D4%7Bpadding%2Dtop%3A1%2E5rem%21important%7D%2Epr%2Dsm%2D4%2C%2Epx%2Dsm%2D4%7Bpadding%2Dright%3A1%2E5rem%21important%7D%2Epb%2Dsm%2D4%2C%2Epy%2Dsm%2D4%7Bpadding%2Dbottom%3A1%2E5rem%21important%7D%2Epl%2Dsm%2D4%2C%2Epx%2Dsm%2D4%7Bpadding%2Dleft%3A1%2E5rem%21important%7D%2Ep%2Dsm%2D5%7Bpadding%3A3rem%21important%7D%2Ept%2Dsm%2D5%2C%2Epy%2Dsm%2D5%7Bpadding%2Dtop%3A3rem%21important%7D%2Epr%2Dsm%2D5%2C%2Epx%2Dsm%2D5%7Bpadding%2Dright%3A3rem%21important%7D%2Epb%2Dsm%2D5%2C%2Epy%2Dsm%2D5%7Bpadding%2Dbottom%3A3rem%21important%7D%2Epl%2Dsm%2D5%2C%2Epx%2Dsm%2D5%7Bpadding%2Dleft%3A3rem%21important%7D%2Em%2Dsm%2Dauto%7Bmargin%3Aauto%21important%7D%2Emt%2Dsm%2Dauto%2C%2Emy%2Dsm%2Dauto%7Bmargin%2Dtop%3Aauto%21important%7D%2Emr%2Dsm%2Dauto%2C%2Emx%2Dsm%2Dauto%7Bmargin%2Dright%3Aauto%21important%7D%2Emb%2Dsm%2Dauto%2C%2Emy%2Dsm%2Dauto%7Bmargin%2Dbottom%3Aauto%21important%7D%2Eml%2Dsm%2Dauto%2C%2Emx%2Dsm%2Dauto%7Bmargin%2Dleft%3Aauto%21important%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Em%2Dmd%2D0%7Bmargin%3A0%21important%7D%2Emt%2Dmd%2D0%2C%2Emy%2Dmd%2D0%7Bmargin%2Dtop%3A0%21important%7D%2Emr%2Dmd%2D0%2C%2Emx%2Dmd%2D0%7Bmargin%2Dright%3A0%21important%7D%2Emb%2Dmd%2D0%2C%2Emy%2Dmd%2D0%7Bmargin%2Dbottom%3A0%21important%7D%2Eml%2Dmd%2D0%2C%2Emx%2Dmd%2D0%7Bmargin%2Dleft%3A0%21important%7D%2Em%2Dmd%2D1%7Bmargin%3A%2E25rem%21important%7D%2Emt%2Dmd%2D1%2C%2Emy%2Dmd%2D1%7Bmargin%2Dtop%3A%2E25rem%21important%7D%2Emr%2Dmd%2D1%2C%2Emx%2Dmd%2D1%7Bmargin%2Dright%3A%2E25rem%21important%7D%2Emb%2Dmd%2D1%2C%2Emy%2Dmd%2D1%7Bmargin%2Dbottom%3A%2E25rem%21important%7D%2Eml%2Dmd%2D1%2C%2Emx%2Dmd%2D1%7Bmargin%2Dleft%3A%2E25rem%21important%7D%2Em%2Dmd%2D2%7Bmargin%3A%2E5rem%21important%7D%2Emt%2Dmd%2D2%2C%2Emy%2Dmd%2D2%7Bmargin%2Dtop%3A%2E5rem%21important%7D%2Emr%2Dmd%2D2%2C%2Emx%2Dmd%2D2%7Bmargin%2Dright%3A%2E5rem%21important%7D%2Emb%2Dmd%2D2%2C%2Emy%2Dmd%2D2%7Bmargin%2Dbottom%3A%2E5rem%21important%7D%2Eml%2Dmd%2D2%2C%2Emx%2Dmd%2D2%7Bmargin%2Dleft%3A%2E5rem%21important%7D%2Em%2Dmd%2D3%7Bmargin%3A1rem%21important%7D%2Emt%2Dmd%2D3%2C%2Emy%2Dmd%2D3%7Bmargin%2Dtop%3A1rem%21important%7D%2Emr%2Dmd%2D3%2C%2Emx%2Dmd%2D3%7Bmargin%2Dright%3A1rem%21important%7D%2Emb%2Dmd%2D3%2C%2Emy%2Dmd%2D3%7Bmargin%2Dbottom%3A1rem%21important%7D%2Eml%2Dmd%2D3%2C%2Emx%2Dmd%2D3%7Bmargin%2Dleft%3A1rem%21important%7D%2Em%2Dmd%2D4%7Bmargin%3A1%2E5rem%21important%7D%2Emt%2Dmd%2D4%2C%2Emy%2Dmd%2D4%7Bmargin%2Dtop%3A1%2E5rem%21important%7D%2Emr%2Dmd%2D4%2C%2Emx%2Dmd%2D4%7Bmargin%2Dright%3A1%2E5rem%21important%7D%2Emb%2Dmd%2D4%2C%2Emy%2Dmd%2D4%7Bmargin%2Dbottom%3A1%2E5rem%21important%7D%2Eml%2Dmd%2D4%2C%2Emx%2Dmd%2D4%7Bmargin%2Dleft%3A1%2E5rem%21important%7D%2Em%2Dmd%2D5%7Bmargin%3A3rem%21important%7D%2Emt%2Dmd%2D5%2C%2Emy%2Dmd%2D5%7Bmargin%2Dtop%3A3rem%21important%7D%2Emr%2Dmd%2D5%2C%2Emx%2Dmd%2D5%7Bmargin%2Dright%3A3rem%21important%7D%2Emb%2Dmd%2D5%2C%2Emy%2Dmd%2D5%7Bmargin%2Dbottom%3A3rem%21important%7D%2Eml%2Dmd%2D5%2C%2Emx%2Dmd%2D5%7Bmargin%2Dleft%3A3rem%21important%7D%2Ep%2Dmd%2D0%7Bpadding%3A0%21important%7D%2Ept%2Dmd%2D0%2C%2Epy%2Dmd%2D0%7Bpadding%2Dtop%3A0%21important%7D%2Epr%2Dmd%2D0%2C%2Epx%2Dmd%2D0%7Bpadding%2Dright%3A0%21important%7D%2Epb%2Dmd%2D0%2C%2Epy%2Dmd%2D0%7Bpadding%2Dbottom%3A0%21important%7D%2Epl%2Dmd%2D0%2C%2Epx%2Dmd%2D0%7Bpadding%2Dleft%3A0%21important%7D%2Ep%2Dmd%2D1%7Bpadding%3A%2E25rem%21important%7D%2Ept%2Dmd%2D1%2C%2Epy%2Dmd%2D1%7Bpadding%2Dtop%3A%2E25rem%21important%7D%2Epr%2Dmd%2D1%2C%2Epx%2Dmd%2D1%7Bpadding%2Dright%3A%2E25rem%21important%7D%2Epb%2Dmd%2D1%2C%2Epy%2Dmd%2D1%7Bpadding%2Dbottom%3A%2E25rem%21important%7D%2Epl%2Dmd%2D1%2C%2Epx%2Dmd%2D1%7Bpadding%2Dleft%3A%2E25rem%21important%7D%2Ep%2Dmd%2D2%7Bpadding%3A%2E5rem%21important%7D%2Ept%2Dmd%2D2%2C%2Epy%2Dmd%2D2%7Bpadding%2Dtop%3A%2E5rem%21important%7D%2Epr%2Dmd%2D2%2C%2Epx%2Dmd%2D2%7Bpadding%2Dright%3A%2E5rem%21important%7D%2Epb%2Dmd%2D2%2C%2Epy%2Dmd%2D2%7Bpadding%2Dbottom%3A%2E5rem%21important%7D%2Epl%2Dmd%2D2%2C%2Epx%2Dmd%2D2%7Bpadding%2Dleft%3A%2E5rem%21important%7D%2Ep%2Dmd%2D3%7Bpadding%3A1rem%21important%7D%2Ept%2Dmd%2D3%2C%2Epy%2Dmd%2D3%7Bpadding%2Dtop%3A1rem%21important%7D%2Epr%2Dmd%2D3%2C%2Epx%2Dmd%2D3%7Bpadding%2Dright%3A1rem%21important%7D%2Epb%2Dmd%2D3%2C%2Epy%2Dmd%2D3%7Bpadding%2Dbottom%3A1rem%21important%7D%2Epl%2Dmd%2D3%2C%2Epx%2Dmd%2D3%7Bpadding%2Dleft%3A1rem%21important%7D%2Ep%2Dmd%2D4%7Bpadding%3A1%2E5rem%21important%7D%2Ept%2Dmd%2D4%2C%2Epy%2Dmd%2D4%7Bpadding%2Dtop%3A1%2E5rem%21important%7D%2Epr%2Dmd%2D4%2C%2Epx%2Dmd%2D4%7Bpadding%2Dright%3A1%2E5rem%21important%7D%2Epb%2Dmd%2D4%2C%2Epy%2Dmd%2D4%7Bpadding%2Dbottom%3A1%2E5rem%21important%7D%2Epl%2Dmd%2D4%2C%2Epx%2Dmd%2D4%7Bpadding%2Dleft%3A1%2E5rem%21important%7D%2Ep%2Dmd%2D5%7Bpadding%3A3rem%21important%7D%2Ept%2Dmd%2D5%2C%2Epy%2Dmd%2D5%7Bpadding%2Dtop%3A3rem%21important%7D%2Epr%2Dmd%2D5%2C%2Epx%2Dmd%2D5%7Bpadding%2Dright%3A3rem%21important%7D%2Epb%2Dmd%2D5%2C%2Epy%2Dmd%2D5%7Bpadding%2Dbottom%3A3rem%21important%7D%2Epl%2Dmd%2D5%2C%2Epx%2Dmd%2D5%7Bpadding%2Dleft%3A3rem%21important%7D%2Em%2Dmd%2Dauto%7Bmargin%3Aauto%21important%7D%2Emt%2Dmd%2Dauto%2C%2Emy%2Dmd%2Dauto%7Bmargin%2Dtop%3Aauto%21important%7D%2Emr%2Dmd%2Dauto%2C%2Emx%2Dmd%2Dauto%7Bmargin%2Dright%3Aauto%21important%7D%2Emb%2Dmd%2Dauto%2C%2Emy%2Dmd%2Dauto%7Bmargin%2Dbottom%3Aauto%21important%7D%2Eml%2Dmd%2Dauto%2C%2Emx%2Dmd%2Dauto%7Bmargin%2Dleft%3Aauto%21important%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Em%2Dlg%2D0%7Bmargin%3A0%21important%7D%2Emt%2Dlg%2D0%2C%2Emy%2Dlg%2D0%7Bmargin%2Dtop%3A0%21important%7D%2Emr%2Dlg%2D0%2C%2Emx%2Dlg%2D0%7Bmargin%2Dright%3A0%21important%7D%2Emb%2Dlg%2D0%2C%2Emy%2Dlg%2D0%7Bmargin%2Dbottom%3A0%21important%7D%2Eml%2Dlg%2D0%2C%2Emx%2Dlg%2D0%7Bmargin%2Dleft%3A0%21important%7D%2Em%2Dlg%2D1%7Bmargin%3A%2E25rem%21important%7D%2Emt%2Dlg%2D1%2C%2Emy%2Dlg%2D1%7Bmargin%2Dtop%3A%2E25rem%21important%7D%2Emr%2Dlg%2D1%2C%2Emx%2Dlg%2D1%7Bmargin%2Dright%3A%2E25rem%21important%7D%2Emb%2Dlg%2D1%2C%2Emy%2Dlg%2D1%7Bmargin%2Dbottom%3A%2E25rem%21important%7D%2Eml%2Dlg%2D1%2C%2Emx%2Dlg%2D1%7Bmargin%2Dleft%3A%2E25rem%21important%7D%2Em%2Dlg%2D2%7Bmargin%3A%2E5rem%21important%7D%2Emt%2Dlg%2D2%2C%2Emy%2Dlg%2D2%7Bmargin%2Dtop%3A%2E5rem%21important%7D%2Emr%2Dlg%2D2%2C%2Emx%2Dlg%2D2%7Bmargin%2Dright%3A%2E5rem%21important%7D%2Emb%2Dlg%2D2%2C%2Emy%2Dlg%2D2%7Bmargin%2Dbottom%3A%2E5rem%21important%7D%2Eml%2Dlg%2D2%2C%2Emx%2Dlg%2D2%7Bmargin%2Dleft%3A%2E5rem%21important%7D%2Em%2Dlg%2D3%7Bmargin%3A1rem%21important%7D%2Emt%2Dlg%2D3%2C%2Emy%2Dlg%2D3%7Bmargin%2Dtop%3A1rem%21important%7D%2Emr%2Dlg%2D3%2C%2Emx%2Dlg%2D3%7Bmargin%2Dright%3A1rem%21important%7D%2Emb%2Dlg%2D3%2C%2Emy%2Dlg%2D3%7Bmargin%2Dbottom%3A1rem%21important%7D%2Eml%2Dlg%2D3%2C%2Emx%2Dlg%2D3%7Bmargin%2Dleft%3A1rem%21important%7D%2Em%2Dlg%2D4%7Bmargin%3A1%2E5rem%21important%7D%2Emt%2Dlg%2D4%2C%2Emy%2Dlg%2D4%7Bmargin%2Dtop%3A1%2E5rem%21important%7D%2Emr%2Dlg%2D4%2C%2Emx%2Dlg%2D4%7Bmargin%2Dright%3A1%2E5rem%21important%7D%2Emb%2Dlg%2D4%2C%2Emy%2Dlg%2D4%7Bmargin%2Dbottom%3A1%2E5rem%21important%7D%2Eml%2Dlg%2D4%2C%2Emx%2Dlg%2D4%7Bmargin%2Dleft%3A1%2E5rem%21important%7D%2Em%2Dlg%2D5%7Bmargin%3A3rem%21important%7D%2Emt%2Dlg%2D5%2C%2Emy%2Dlg%2D5%7Bmargin%2Dtop%3A3rem%21important%7D%2Emr%2Dlg%2D5%2C%2Emx%2Dlg%2D5%7Bmargin%2Dright%3A3rem%21important%7D%2Emb%2Dlg%2D5%2C%2Emy%2Dlg%2D5%7Bmargin%2Dbottom%3A3rem%21important%7D%2Eml%2Dlg%2D5%2C%2Emx%2Dlg%2D5%7Bmargin%2Dleft%3A3rem%21important%7D%2Ep%2Dlg%2D0%7Bpadding%3A0%21important%7D%2Ept%2Dlg%2D0%2C%2Epy%2Dlg%2D0%7Bpadding%2Dtop%3A0%21important%7D%2Epr%2Dlg%2D0%2C%2Epx%2Dlg%2D0%7Bpadding%2Dright%3A0%21important%7D%2Epb%2Dlg%2D0%2C%2Epy%2Dlg%2D0%7Bpadding%2Dbottom%3A0%21important%7D%2Epl%2Dlg%2D0%2C%2Epx%2Dlg%2D0%7Bpadding%2Dleft%3A0%21important%7D%2Ep%2Dlg%2D1%7Bpadding%3A%2E25rem%21important%7D%2Ept%2Dlg%2D1%2C%2Epy%2Dlg%2D1%7Bpadding%2Dtop%3A%2E25rem%21important%7D%2Epr%2Dlg%2D1%2C%2Epx%2Dlg%2D1%7Bpadding%2Dright%3A%2E25rem%21important%7D%2Epb%2Dlg%2D1%2C%2Epy%2Dlg%2D1%7Bpadding%2Dbottom%3A%2E25rem%21important%7D%2Epl%2Dlg%2D1%2C%2Epx%2Dlg%2D1%7Bpadding%2Dleft%3A%2E25rem%21important%7D%2Ep%2Dlg%2D2%7Bpadding%3A%2E5rem%21important%7D%2Ept%2Dlg%2D2%2C%2Epy%2Dlg%2D2%7Bpadding%2Dtop%3A%2E5rem%21important%7D%2Epr%2Dlg%2D2%2C%2Epx%2Dlg%2D2%7Bpadding%2Dright%3A%2E5rem%21important%7D%2Epb%2Dlg%2D2%2C%2Epy%2Dlg%2D2%7Bpadding%2Dbottom%3A%2E5rem%21important%7D%2Epl%2Dlg%2D2%2C%2Epx%2Dlg%2D2%7Bpadding%2Dleft%3A%2E5rem%21important%7D%2Ep%2Dlg%2D3%7Bpadding%3A1rem%21important%7D%2Ept%2Dlg%2D3%2C%2Epy%2Dlg%2D3%7Bpadding%2Dtop%3A1rem%21important%7D%2Epr%2Dlg%2D3%2C%2Epx%2Dlg%2D3%7Bpadding%2Dright%3A1rem%21important%7D%2Epb%2Dlg%2D3%2C%2Epy%2Dlg%2D3%7Bpadding%2Dbottom%3A1rem%21important%7D%2Epl%2Dlg%2D3%2C%2Epx%2Dlg%2D3%7Bpadding%2Dleft%3A1rem%21important%7D%2Ep%2Dlg%2D4%7Bpadding%3A1%2E5rem%21important%7D%2Ept%2Dlg%2D4%2C%2Epy%2Dlg%2D4%7Bpadding%2Dtop%3A1%2E5rem%21important%7D%2Epr%2Dlg%2D4%2C%2Epx%2Dlg%2D4%7Bpadding%2Dright%3A1%2E5rem%21important%7D%2Epb%2Dlg%2D4%2C%2Epy%2Dlg%2D4%7Bpadding%2Dbottom%3A1%2E5rem%21important%7D%2Epl%2Dlg%2D4%2C%2Epx%2Dlg%2D4%7Bpadding%2Dleft%3A1%2E5rem%21important%7D%2Ep%2Dlg%2D5%7Bpadding%3A3rem%21important%7D%2Ept%2Dlg%2D5%2C%2Epy%2Dlg%2D5%7Bpadding%2Dtop%3A3rem%21important%7D%2Epr%2Dlg%2D5%2C%2Epx%2Dlg%2D5%7Bpadding%2Dright%3A3rem%21important%7D%2Epb%2Dlg%2D5%2C%2Epy%2Dlg%2D5%7Bpadding%2Dbottom%3A3rem%21important%7D%2Epl%2Dlg%2D5%2C%2Epx%2Dlg%2D5%7Bpadding%2Dleft%3A3rem%21important%7D%2Em%2Dlg%2Dauto%7Bmargin%3Aauto%21important%7D%2Emt%2Dlg%2Dauto%2C%2Emy%2Dlg%2Dauto%7Bmargin%2Dtop%3Aauto%21important%7D%2Emr%2Dlg%2Dauto%2C%2Emx%2Dlg%2Dauto%7Bmargin%2Dright%3Aauto%21important%7D%2Emb%2Dlg%2Dauto%2C%2Emy%2Dlg%2Dauto%7Bmargin%2Dbottom%3Aauto%21important%7D%2Eml%2Dlg%2Dauto%2C%2Emx%2Dlg%2Dauto%7Bmargin%2Dleft%3Aauto%21important%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Em%2Dxl%2D0%7Bmargin%3A0%21important%7D%2Emt%2Dxl%2D0%2C%2Emy%2Dxl%2D0%7Bmargin%2Dtop%3A0%21important%7D%2Emr%2Dxl%2D0%2C%2Emx%2Dxl%2D0%7Bmargin%2Dright%3A0%21important%7D%2Emb%2Dxl%2D0%2C%2Emy%2Dxl%2D0%7Bmargin%2Dbottom%3A0%21important%7D%2Eml%2Dxl%2D0%2C%2Emx%2Dxl%2D0%7Bmargin%2Dleft%3A0%21important%7D%2Em%2Dxl%2D1%7Bmargin%3A%2E25rem%21important%7D%2Emt%2Dxl%2D1%2C%2Emy%2Dxl%2D1%7Bmargin%2Dtop%3A%2E25rem%21important%7D%2Emr%2Dxl%2D1%2C%2Emx%2Dxl%2D1%7Bmargin%2Dright%3A%2E25rem%21important%7D%2Emb%2Dxl%2D1%2C%2Emy%2Dxl%2D1%7Bmargin%2Dbottom%3A%2E25rem%21important%7D%2Eml%2Dxl%2D1%2C%2Emx%2Dxl%2D1%7Bmargin%2Dleft%3A%2E25rem%21important%7D%2Em%2Dxl%2D2%7Bmargin%3A%2E5rem%21important%7D%2Emt%2Dxl%2D2%2C%2Emy%2Dxl%2D2%7Bmargin%2Dtop%3A%2E5rem%21important%7D%2Emr%2Dxl%2D2%2C%2Emx%2Dxl%2D2%7Bmargin%2Dright%3A%2E5rem%21important%7D%2Emb%2Dxl%2D2%2C%2Emy%2Dxl%2D2%7Bmargin%2Dbottom%3A%2E5rem%21important%7D%2Eml%2Dxl%2D2%2C%2Emx%2Dxl%2D2%7Bmargin%2Dleft%3A%2E5rem%21important%7D%2Em%2Dxl%2D3%7Bmargin%3A1rem%21important%7D%2Emt%2Dxl%2D3%2C%2Emy%2Dxl%2D3%7Bmargin%2Dtop%3A1rem%21important%7D%2Emr%2Dxl%2D3%2C%2Emx%2Dxl%2D3%7Bmargin%2Dright%3A1rem%21important%7D%2Emb%2Dxl%2D3%2C%2Emy%2Dxl%2D3%7Bmargin%2Dbottom%3A1rem%21important%7D%2Eml%2Dxl%2D3%2C%2Emx%2Dxl%2D3%7Bmargin%2Dleft%3A1rem%21important%7D%2Em%2Dxl%2D4%7Bmargin%3A1%2E5rem%21important%7D%2Emt%2Dxl%2D4%2C%2Emy%2Dxl%2D4%7Bmargin%2Dtop%3A1%2E5rem%21important%7D%2Emr%2Dxl%2D4%2C%2Emx%2Dxl%2D4%7Bmargin%2Dright%3A1%2E5rem%21important%7D%2Emb%2Dxl%2D4%2C%2Emy%2Dxl%2D4%7Bmargin%2Dbottom%3A1%2E5rem%21important%7D%2Eml%2Dxl%2D4%2C%2Emx%2Dxl%2D4%7Bmargin%2Dleft%3A1%2E5rem%21important%7D%2Em%2Dxl%2D5%7Bmargin%3A3rem%21important%7D%2Emt%2Dxl%2D5%2C%2Emy%2Dxl%2D5%7Bmargin%2Dtop%3A3rem%21important%7D%2Emr%2Dxl%2D5%2C%2Emx%2Dxl%2D5%7Bmargin%2Dright%3A3rem%21important%7D%2Emb%2Dxl%2D5%2C%2Emy%2Dxl%2D5%7Bmargin%2Dbottom%3A3rem%21important%7D%2Eml%2Dxl%2D5%2C%2Emx%2Dxl%2D5%7Bmargin%2Dleft%3A3rem%21important%7D%2Ep%2Dxl%2D0%7Bpadding%3A0%21important%7D%2Ept%2Dxl%2D0%2C%2Epy%2Dxl%2D0%7Bpadding%2Dtop%3A0%21important%7D%2Epr%2Dxl%2D0%2C%2Epx%2Dxl%2D0%7Bpadding%2Dright%3A0%21important%7D%2Epb%2Dxl%2D0%2C%2Epy%2Dxl%2D0%7Bpadding%2Dbottom%3A0%21important%7D%2Epl%2Dxl%2D0%2C%2Epx%2Dxl%2D0%7Bpadding%2Dleft%3A0%21important%7D%2Ep%2Dxl%2D1%7Bpadding%3A%2E25rem%21important%7D%2Ept%2Dxl%2D1%2C%2Epy%2Dxl%2D1%7Bpadding%2Dtop%3A%2E25rem%21important%7D%2Epr%2Dxl%2D1%2C%2Epx%2Dxl%2D1%7Bpadding%2Dright%3A%2E25rem%21important%7D%2Epb%2Dxl%2D1%2C%2Epy%2Dxl%2D1%7Bpadding%2Dbottom%3A%2E25rem%21important%7D%2Epl%2Dxl%2D1%2C%2Epx%2Dxl%2D1%7Bpadding%2Dleft%3A%2E25rem%21important%7D%2Ep%2Dxl%2D2%7Bpadding%3A%2E5rem%21important%7D%2Ept%2Dxl%2D2%2C%2Epy%2Dxl%2D2%7Bpadding%2Dtop%3A%2E5rem%21important%7D%2Epr%2Dxl%2D2%2C%2Epx%2Dxl%2D2%7Bpadding%2Dright%3A%2E5rem%21important%7D%2Epb%2Dxl%2D2%2C%2Epy%2Dxl%2D2%7Bpadding%2Dbottom%3A%2E5rem%21important%7D%2Epl%2Dxl%2D2%2C%2Epx%2Dxl%2D2%7Bpadding%2Dleft%3A%2E5rem%21important%7D%2Ep%2Dxl%2D3%7Bpadding%3A1rem%21important%7D%2Ept%2Dxl%2D3%2C%2Epy%2Dxl%2D3%7Bpadding%2Dtop%3A1rem%21important%7D%2Epr%2Dxl%2D3%2C%2Epx%2Dxl%2D3%7Bpadding%2Dright%3A1rem%21important%7D%2Epb%2Dxl%2D3%2C%2Epy%2Dxl%2D3%7Bpadding%2Dbottom%3A1rem%21important%7D%2Epl%2Dxl%2D3%2C%2Epx%2Dxl%2D3%7Bpadding%2Dleft%3A1rem%21important%7D%2Ep%2Dxl%2D4%7Bpadding%3A1%2E5rem%21important%7D%2Ept%2Dxl%2D4%2C%2Epy%2Dxl%2D4%7Bpadding%2Dtop%3A1%2E5rem%21important%7D%2Epr%2Dxl%2D4%2C%2Epx%2Dxl%2D4%7Bpadding%2Dright%3A1%2E5rem%21important%7D%2Epb%2Dxl%2D4%2C%2Epy%2Dxl%2D4%7Bpadding%2Dbottom%3A1%2E5rem%21important%7D%2Epl%2Dxl%2D4%2C%2Epx%2Dxl%2D4%7Bpadding%2Dleft%3A1%2E5rem%21important%7D%2Ep%2Dxl%2D5%7Bpadding%3A3rem%21important%7D%2Ept%2Dxl%2D5%2C%2Epy%2Dxl%2D5%7Bpadding%2Dtop%3A3rem%21important%7D%2Epr%2Dxl%2D5%2C%2Epx%2Dxl%2D5%7Bpadding%2Dright%3A3rem%21important%7D%2Epb%2Dxl%2D5%2C%2Epy%2Dxl%2D5%7Bpadding%2Dbottom%3A3rem%21important%7D%2Epl%2Dxl%2D5%2C%2Epx%2Dxl%2D5%7Bpadding%2Dleft%3A3rem%21important%7D%2Em%2Dxl%2Dauto%7Bmargin%3Aauto%21important%7D%2Emt%2Dxl%2Dauto%2C%2Emy%2Dxl%2Dauto%7Bmargin%2Dtop%3Aauto%21important%7D%2Emr%2Dxl%2Dauto%2C%2Emx%2Dxl%2Dauto%7Bmargin%2Dright%3Aauto%21important%7D%2Emb%2Dxl%2Dauto%2C%2Emy%2Dxl%2Dauto%7Bmargin%2Dbottom%3Aauto%21important%7D%2Eml%2Dxl%2Dauto%2C%2Emx%2Dxl%2Dauto%7Bmargin%2Dleft%3Aauto%21important%7D%7D%2Etext%2Dmonospace%7Bfont%2Dfamily%3ASFMono%2DRegular%2CMenlo%2CMonaco%2CConsolas%2C%22Liberation%20Mono%22%2C%22Courier%20New%22%2Cmonospace%7D%2Etext%2Djustify%7Btext%2Dalign%3Ajustify%21important%7D%2Etext%2Dnowrap%7Bwhite%2Dspace%3Anowrap%21important%7D%2Etext%2Dtruncate%7Boverflow%3Ahidden%3Btext%2Doverflow%3Aellipsis%3Bwhite%2Dspace%3Anowrap%7D%2Etext%2Dleft%7Btext%2Dalign%3Aleft%21important%7D%2Etext%2Dright%7Btext%2Dalign%3Aright%21important%7D%2Etext%2Dcenter%7Btext%2Dalign%3Acenter%21important%7D%40media%20%28min%2Dwidth%3A576px%29%7B%2Etext%2Dsm%2Dleft%7Btext%2Dalign%3Aleft%21important%7D%2Etext%2Dsm%2Dright%7Btext%2Dalign%3Aright%21important%7D%2Etext%2Dsm%2Dcenter%7Btext%2Dalign%3Acenter%21important%7D%7D%40media%20%28min%2Dwidth%3A768px%29%7B%2Etext%2Dmd%2Dleft%7Btext%2Dalign%3Aleft%21important%7D%2Etext%2Dmd%2Dright%7Btext%2Dalign%3Aright%21important%7D%2Etext%2Dmd%2Dcenter%7Btext%2Dalign%3Acenter%21important%7D%7D%40media%20%28min%2Dwidth%3A992px%29%7B%2Etext%2Dlg%2Dleft%7Btext%2Dalign%3Aleft%21important%7D%2Etext%2Dlg%2Dright%7Btext%2Dalign%3Aright%21important%7D%2Etext%2Dlg%2Dcenter%7Btext%2Dalign%3Acenter%21important%7D%7D%40media%20%28min%2Dwidth%3A1200px%29%7B%2Etext%2Dxl%2Dleft%7Btext%2Dalign%3Aleft%21important%7D%2Etext%2Dxl%2Dright%7Btext%2Dalign%3Aright%21important%7D%2Etext%2Dxl%2Dcenter%7Btext%2Dalign%3Acenter%21important%7D%7D%2Etext%2Dlowercase%7Btext%2Dtransform%3Alowercase%21important%7D%2Etext%2Duppercase%7Btext%2Dtransform%3Auppercase%21important%7D%2Etext%2Dcapitalize%7Btext%2Dtransform%3Acapitalize%21important%7D%2Efont%2Dweight%2Dlight%7Bfont%2Dweight%3A300%21important%7D%2Efont%2Dweight%2Dnormal%7Bfont%2Dweight%3A400%21important%7D%2Efont%2Dweight%2Dbold%7Bfont%2Dweight%3A700%21important%7D%2Efont%2Ditalic%7Bfont%2Dstyle%3Aitalic%21important%7D%2Etext%2Dwhite%7Bcolor%3A%23fff%21important%7D%2Etext%2Dprimary%7Bcolor%3A%23007bff%21important%7Da%2Etext%2Dprimary%3Afocus%2Ca%2Etext%2Dprimary%3Ahover%7Bcolor%3A%230062cc%21important%7D%2Etext%2Dsecondary%7Bcolor%3A%236c757d%21important%7Da%2Etext%2Dsecondary%3Afocus%2Ca%2Etext%2Dsecondary%3Ahover%7Bcolor%3A%23545b62%21important%7D%2Etext%2Dsuccess%7Bcolor%3A%2328a745%21important%7Da%2Etext%2Dsuccess%3Afocus%2Ca%2Etext%2Dsuccess%3Ahover%7Bcolor%3A%231e7e34%21important%7D%2Etext%2Dinfo%7Bcolor%3A%2317a2b8%21important%7Da%2Etext%2Dinfo%3Afocus%2Ca%2Etext%2Dinfo%3Ahover%7Bcolor%3A%23117a8b%21important%7D%2Etext%2Dwarning%7Bcolor%3A%23ffc107%21important%7Da%2Etext%2Dwarning%3Afocus%2Ca%2Etext%2Dwarning%3Ahover%7Bcolor%3A%23d39e00%21important%7D%2Etext%2Ddanger%7Bcolor%3A%23dc3545%21important%7Da%2Etext%2Ddanger%3Afocus%2Ca%2Etext%2Ddanger%3Ahover%7Bcolor%3A%23bd2130%21important%7D%2Etext%2Dlight%7Bcolor%3A%23f8f9fa%21important%7Da%2Etext%2Dlight%3Afocus%2Ca%2Etext%2Dlight%3Ahover%7Bcolor%3A%23dae0e5%21important%7D%2Etext%2Ddark%7Bcolor%3A%23343a40%21important%7Da%2Etext%2Ddark%3Afocus%2Ca%2Etext%2Ddark%3Ahover%7Bcolor%3A%231d2124%21important%7D%2Etext%2Dbody%7Bcolor%3A%23212529%21important%7D%2Etext%2Dmuted%7Bcolor%3A%236c757d%21important%7D%2Etext%2Dblack%2D50%7Bcolor%3Argba%280%2C0%2C0%2C%2E5%29%21important%7D%2Etext%2Dwhite%2D50%7Bcolor%3Argba%28255%2C255%2C255%2C%2E5%29%21important%7D%2Etext%2Dhide%7Bfont%3A0%2F0%20a%3Bcolor%3Atransparent%3Btext%2Dshadow%3Anone%3Bbackground%2Dcolor%3Atransparent%3Bborder%3A0%7D%2Evisible%7Bvisibility%3Avisible%21important%7D%2Einvisible%7Bvisibility%3Ahidden%21important%7D%40media%20print%7B%2A%2C%3A%3Aafter%2C%3A%3Abefore%7Btext%2Dshadow%3Anone%21important%3Bbox%2Dshadow%3Anone%21important%7Da%3Anot%28%2Ebtn%29%7Btext%2Ddecoration%3Aunderline%7Dabbr%5Btitle%5D%3A%3Aafter%7Bcontent%3A%22%20%28%22%20attr%28title%29%20%22%29%22%7Dpre%7Bwhite%2Dspace%3Apre%2Dwrap%21important%7Dblockquote%2Cpre%7Bborder%3A1px%20solid%20%23adb5bd%3Bpage%2Dbreak%2Dinside%3Aavoid%7Dthead%7Bdisplay%3Atable%2Dheader%2Dgroup%7Dimg%2Ctr%7Bpage%2Dbreak%2Dinside%3Aavoid%7Dh2%2Ch3%2Cp%7Borphans%3A3%3Bwidows%3A3%7Dh2%2Ch3%7Bpage%2Dbreak%2Dafter%3Aavoid%7D%40page%7Bsize%3Aa3%7Dbody%7Bmin%2Dwidth%3A992px%21important%7D%2Econtainer%7Bmin%2Dwidth%3A992px%21important%7D%2Enavbar%7Bdisplay%3Anone%7D%2Ebadge%7Bborder%3A1px%20solid%20%23000%7D%2Etable%7Bborder%2Dcollapse%3Acollapse%21important%7D%2Etable%20td%2C%2Etable%20th%7Bbackground%2Dcolor%3A%23fff%21important%7D%2Etable%2Dbordered%20td%2C%2Etable%2Dbordered%20th%7Bborder%3A1px%20solid%20%23dee2e6%21important%7D%2Etable%2Ddark%7Bcolor%3Ainherit%7D%2Etable%2Ddark%20tbody%2Btbody%2C%2Etable%2Ddark%20td%2C%2Etable%2Ddark%20th%2C%2Etable%2Ddark%20thead%20th%7Bborder%2Dcolor%3A%23dee2e6%7D%2Etable%20%2Ethead%2Ddark%20th%7Bcolor%3Ainherit%3Bborder%2Dcolor%3A%23dee2e6%7D%7D%0A" rel="stylesheet">
<!-- Custom styles for this template -->
<link href="data:text/css;charset=utf-8,body%20%7B%0Aoverflow%2Dx%3A%20hidden%3B%0A%7D%0Aspan%2Emedium%5Fred%20%7B%0Acolor%3A%20red%3B%0Afont%2Dsize%3A%201%2E2em%3B%0A%7D%0Aspan%2Esmall%20%7B%0Afont%2Dsize%3A%20%2E9em%3B%0A%7D%0A%23wrapper%20%7B%0Apadding%2Dleft%3A%200%3B%0A%2Dwebkit%2Dtransition%3A%20all%200%2E5s%20ease%3B%0A%2Dmoz%2Dtransition%3A%20all%200%2E5s%20ease%3B%0A%2Do%2Dtransition%3A%20all%200%2E5s%20ease%3B%0Atransition%3A%20all%200%2E5s%20ease%3B%0A%7D%0A%23wrapper%2Etoggled%20%7B%0Apadding%2Dleft%3A%20250px%3B%0A%7D%0A%23sidebar%2Dwrapper%20%7B%0Az%2Dindex%3A%201000%3B%0Aposition%3A%20fixed%3B%0Aleft%3A%20250px%3B%0Awidth%3A%200%3B%0Aheight%3A%20100%25%3B%0Amargin%2Dleft%3A%20%2D250px%3B%0Aoverflow%2Dy%3A%20auto%3B%0Abackground%3A%20%23000%3B%0A%2Dwebkit%2Dtransition%3A%20all%200%2E5s%20ease%3B%0A%2Dmoz%2Dtransition%3A%20all%200%2E5s%20ease%3B%0A%2Do%2Dtransition%3A%20all%200%2E5s%20ease%3B%0Atransition%3A%20all%200%2E5s%20ease%3B%0A%7D%0A%23wrapper%2Etoggled%20%23sidebar%2Dwrapper%20%7B%0Awidth%3A%20250px%3B%0A%7D%0A%23page%2Dcontent%2Dwrapper%20%7B%0Awidth%3A%20100%25%3B%0Aposition%3A%20absolute%3B%0Apadding%3A%2015px%3B%0A%7D%0A%23wrapper%2Etoggled%20%23page%2Dcontent%2Dwrapper%20%7B%0Aposition%3A%20absolute%3B%0Amargin%2Dright%3A%20%2D250px%3B%0A%7D%0A%0A%2Esidebar%2Dnav%20%7B%0Aposition%3A%20absolute%3B%0Atop%3A%200%3B%0Awidth%3A%20250px%3B%0Amargin%3A%200%3B%0Apadding%3A%200%3B%0Alist%2Dstyle%3A%20none%3B%0A%7D%0A%2Esidebar%2Dnav%20li%20%7B%0Atext%2Dindent%3A%2020px%3B%0Aline%2Dheight%3A%2040px%3B%0A%7D%0A%2Esidebar%2Dnav%20li%20a%20%7B%0Adisplay%3A%20block%3B%0Atext%2Ddecoration%3A%20none%3B%0Acolor%3A%20%23999999%3B%0A%7D%0A%2Esidebar%2Dnav%20li%20a%3Ahover%20%7B%0Atext%2Ddecoration%3A%20none%3B%0Acolor%3A%20%23fff%3B%0Abackground%3A%20rgba%28255%2C%20255%2C%20255%2C%200%2E2%29%3B%0A%7D%0A%2Esidebar%2Dnav%20li%20a%3Aactive%2C%20%2Esidebar%2Dnav%20li%20a%3Afocus%20%7B%0Atext%2Ddecoration%3A%20none%3B%0A%7D%0A%2Esidebar%2Dnav%3E%2Esidebar%2Dbrand%20%7B%0Aheight%3A%2065px%3B%0Afont%2Dsize%3A%2018px%3B%0Aline%2Dheight%3A%2060px%3B%0A%7D%0A%2Esidebar%2Dnav%3E%2Esidebar%2Dbrand%20a%20%7B%0Acolor%3A%20%23999999%3B%0A%7D%0A%2Esidebar%2Dnav%3E%2Esidebar%2Dbrand%20a%3Ahover%20%7B%0Acolor%3A%20%23fff%3B%0Abackground%3A%20none%3B%0A%7D%0A%40media%28min%2Dwidth%3A768px%29%20%7B%0A%23wrapper%20%7B%0Apadding%2Dleft%3A%200%3B%0A%7D%0A%23wrapper%2Etoggled%20%7B%0Apadding%2Dleft%3A%20250px%3B%0A%7D%0A%23sidebar%2Dwrapper%20%7B%0Awidth%3A%200%3B%0A%7D%0A%23wrapper%2Etoggled%20%23sidebar%2Dwrapper%20%7B%0Awidth%3A%20250px%3B%0A%7D%0A%23page%2Dcontent%2Dwrapper%20%7B%0Apadding%3A%2020px%3B%0Aposition%3A%20relative%3B%0A%7D%0A%23wrapper%2Etoggled%20%23page%2Dcontent%2Dwrapper%20%7B%0Aposition%3A%20relative%3B%0Amargin%2Dright%3A%200%3B%0A%7D%0A%7D%0A%0Ahr%2Efade%20%7B%0Aborder%3A%200%3B%0Aheight%3A%201px%3B%0Abackground%3A%20%23333%3B%0Abackground%2Dimage%3A%20linear%2Dgradient%28to%20right%2C%20%23ccc%2C%20%23333%2C%20%23ccc%29%3B%0A%7D%0A%0A%0A%0A%0Atable%20%7B%0Aborder%2Dspacing%3A%200%3B%0Aborder%2Dbottom%3A%202px%20solid%20black%3B%0Aborder%2Dtop%3A%202px%20solid%20black%3B%0A%7D%0Atable%20th%20%7B%0Apadding%3A%203px%2010px%3B%0Abackground%2Dcolor%3A%20white%3B%0Aborder%2Dtop%3A%20none%3B%0Aborder%2Dleft%3A%20none%3B%0Aborder%2Dright%3A%20none%3B%0Aborder%2Dbottom%3A%201px%20solid%20black%3B%0A%7D%0Atable%20td%20%7B%0Apadding%3A%203px%2010px%3B%0Aborder%2Dtop%3A%20none%3B%0Aborder%2Dleft%3A%20none%3B%0Aborder%2Dbottom%3A%20none%3B%0Aborder%2Dright%3A%20none%3B%0A%7D%0A%0A%23topnav%20%7B%0Abackground%2Dcolor%3A%20%23333%3B%0Aoverflow%3A%20hidden%3B%0A%7D%0A%0A%23topnav%20a%20%7B%0Afloat%3A%20left%3B%0Acolor%3A%20%23f2f2f2%3B%0Atext%2Dalign%3A%20center%3B%0Apadding%3A%2014px%2016px%3B%0Atext%2Ddecoration%3A%20none%3B%0Afont%2Dsize%3A%2017px%3B%0A%7D%0A%0A%23topnav%20a%3Ahover%20%7B%0Abackground%2Dcolor%3A%20%23ddd%3B%0Acolor%3A%20black%3B%0A%7D%0A%0A%23topnav%20a%2Eactive%20%7B%0Abackground%2Dcolor%3A%20%234CAF50%3B%0Acolor%3A%20white%3B%0A%7D%0A%0A%2Eclicked%20%7B%0Abackground%2Dcolor%3A%20red%3B%0A%7D" rel="stylesheet">
<link href="data:text/css;charset=utf-8,%2Edocforms%20%7B%0Aborder%3A%201px%20solid%20%23aaa%3B%20border%2Dradius%3A%205px%3B%0Aheight%3A%2050%25%3B%0Awidth%3A%2050%25%3B%0A%7D%0A%2Edocforms%20ul%20%7B%0Alist%2Dstyle%3A%20none%3B%0Amargin%2Dbottom%3A%2010px%3B%0A%7D%0A%2Edocforms%20input%5Btype%3Dcheckbox%5D%20%7B%20display%3A%20none%3B%20%7D%0A%2Edocforms%20label%20%7B%0Aposition%3A%20relative%3B%0Aheight%3A%2038px%3B%20line%2Dheight%3A%2036px%3B%20margin%3A%204px%3B%20padding%3A%200px%204px%200px%208px%3B%0Adisplay%3A%20inline%2Dblock%3B%20cursor%3A%20pointer%3B%0Aborder%3A%201px%20solid%20%23aaa%3B%20border%2Dradius%3A%205px%3B%0Afont%2Dfamily%3A%20helvetica%2C%20sans%2Dserif%3B%0A%2Dwebkit%2Duser%2Dselect%3A%20none%3B%0A%2Dmoz%2Duser%2Dselect%3A%20none%3B%0A%2Dms%2Duser%2Dselect%3A%20none%3B%0Auser%2Dselect%3A%20none%3B%20%7D%0A%2Edocforms%20label%3A%3Abefore%20%7B%0Acontent%3A%20%27%27%3B%20position%3A%20absolute%3B%0Atop%3A%200px%3B%20right%3A%2032px%3B%0Aheight%3A%2036px%3B%20width%3A%202px%3B%0Aborder%2Dleft%3A%201px%20solid%20%23aaa%3B%0A%7D%0A%2Edocforms%20label%3A%3Aafter%20%7B%0Acontent%3A%20%27%5C2713%27%3B%20text%2Dalign%3A%20center%3B%0Amargin%2Dleft%3A%2012px%3B%20display%3A%20inline%2Dblock%3B%20border%2Dradius%3A%204px%3B%0Aborder%3A%201px%20dashed%20%23999%3B%0Aheight%3A%2026px%3B%20line%2Dheight%3A%2026px%3B%20width%3A%2024px%3B%0A%7D%0A%2Edocforms%20input%5Btype%3Dcheckbox%5D%3Achecked%20%2B%20label%20%7B%0Aborder%3A%201px%20solid%20%234575ab%3B%0Acolor%3A%20%234575ab%3B%0A%7D%0A%2Edocforms%20input%5Btype%3Dcheckbox%5D%3Achecked%20%2B%20label%3A%3Aafter%20%7B%0Aborder%3A%201px%20solid%20%234575ab%3B%20background%2Dcolor%3A%20%234575ab%3B%0Acolor%3A%20%23fff%3B%0A%7D%0A%2Edocforms%20input%5Btype%3Dcheckbox%5D%3Aindeterminate%20%2B%20label%20%7B%0Aborder%3A%201px%20solid%20%234575ab%3B%0Acolor%3A%20%234575ab%3B%0A%7D%0A%2Edocforms%20input%5Btype%3Dcheckbox%5D%3Aindeterminate%20%2B%20label%3A%3Aafter%20%7B%0Acontent%3A%20%27%5C2796%27%3B%20text%2Dalign%3A%20center%3B%0Amargin%2Dleft%3A%2012px%3B%20display%3A%20inline%2Dblock%3B%20border%2Dradius%3A%204px%3B%0Aborder%3A%201px%20solid%20%23999%3B%0Aheight%3A%2026px%3B%20line%2Dheight%3A%2026px%3B%20width%3A%2024px%3B%0A%7D" rel="stylesheet">
</head>
<body>
<div id="wrapper">
<!-- Sidebar -->
<div id="sidebar-wrapper">
<ul class="sidebar-nav">
<li class="sidebar-brand">
<a href="#" id="home">Home</a>
</li>
<li>
<a href="#" id="section1" class="section_link">Section 1</a>
</li>
<li>
<a href="#" id="section2" class="section_link">Section 2</a>
</li>
<li>
<a href="#" id="section3" class="section_link">Section 3</a>
</li>
<li>
<a href="#" id="section4" class="section_link">Section 4</a>
</li>
</ul>
</div>
<!-- /#sidebar-wrapper -->
<div id="topnav">
<a href="#" class="menu-toggle">Toggle Sidebar</a>
<a href="#" id="topnav-home">Home</a>
<a href="#" id="requirements" class="powershell">Run Powershell Command!
<!--
'Hello from Powershell!'
&pause
-->
</a>
<a href="#" class="shell" data-shell="cmd" data-keep-open="1">Start cmd!</a>
<a href="#" id="rebuild" class="powershell" data-interactive="0">Rebuild
<!--
.\build.bat -s .\_template\default.markdown -o default.hta -t .\_template\templates\default.html
-->
</a>
<a href="#" id="about">About
<!--
HTA Interactive Document
Author: Bert Tejeda
Version: 19.08.13.26
-->
</a>
<a href="#" id="console">Console</a>
<a href="#" id="elevate">Elevate</a>
</div>
<!-- Page Content -->
<div id="page-content-wrapper">
<div class="container-fluid">
<div id="header">
<h1 class="title">Title Here</h1>
<span class="subtitle">Some Subtitle|</span>
<span class="author">Author Name |</span>
<span class="date">08.13.2018|</span>
</div>
<hr class="style-eight">
<div id="content">
<div id="start">
<h1 id="start-page">Start Page</h1>
<p>This is your starting page.</p>
<p>Here, you can introduce your readers to the purpose of the document, as well as provide any useful information pertinent to its goals.</p>
<h1 id="html-structures">HTML Structures</h1>
<p>Below are some HTML structures you will no doubt find useful.</p>
<h2 id="paragraph">Paragraph</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
<p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>
<p>Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<h2 id="italics-bold-superscript-subscript-strikeout">Italics, bold, superscript, subscript, strikeout</h2>
<p><em>Italics</em> and <strong>bold</strong> are indicated with asterisks.</p>
<p>To <del>strikeout</del> text use double tildas.</p>
<p>Superscripts use carats, like so: 2<sup>nd</sup>.</p>
<p>Subscripts use single tildas, like so: H<sub>2</sub>O.</p>
<p>Spaces inside subscripts and superscripts must be escaped, e.g., H<sub>this is a long subscript</sub>.</p>
<p>Inline code goes between backticks: <code>echo 'hello'</code>.</p>
<h2 id="code-blocks">Code blocks</h2>
<div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash">
$ <span class="co"># Lorem ipsum dolor</span>
$ <span class="bu">echo</span> Lorem ipsum dolor
$ <span class="co"># consectetur adipiscing elit</span>
$ <span class="fu">rm</span> -f consectetur</code></pre></div>
<h2 id="links-and-images">Links and images</h2>
<p>Weblink: <a href="http://example.com" class="uri">http://example.com</a></p>
<p>Weblink with Text: <a href="http://example.com">Example</a></p>
<p>Email link: <a href="mailto:[email protected]">[email protected]</a></p>
<p>Inline Link: <a href="http://example.com" title="Title">inline link</a></p>
<p><a href="http://example.com" title="Title">reference link</a></p>
<p><a href="http://example.com">implicit reference link</a></p>
<p><img src="data:image/png;base64,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" alt="inline image" /> <img src="data:image/png;base64,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" alt="reference image" /></p>
<p>This is a link to a footer <a href="#fn1" class="footnoteRef" id="fnref1"><sup>1</sup></a></p>
<h2 id="footnotes">Footnotes</h2>
<pre><code>Inline notes are like this.^[Note that inline notes cannot contain multiple paragraphs.] Reference notes are like this.[^id]
[^id]: Reference notes can contain multiple paragraphs.
Subsequent paragraphs must be indented.</code></pre>
<h2 id="headers">Headers</h2>
<h1 id="header-1">Header 1</h1>
<h2 id="header-2">Header 2</h2>
<h1 id="header-1-1">Header 1</h1>
<h2 id="header-2-1">Header 2</h2>
<p>Closing #s are optional. Blank line required before and after each header.</p>
<h2 id="lists">Lists</h2>
<h3 id="ordered-lists">Ordered lists</h3>
<ol style="list-style-type: decimal">
<li>example</li>
<li>example</li>
</ol>
<ol style="list-style-type: upper-alpha">
<li>example</li>
<li>example</li>
</ol>
<h3 id="unordered-lists">Unordered lists</h3>
<p>Items may be marked by '*', '+', or '-'.</p>
<ul>
<li>example</li>
<li>example</li>
<li>example</li>
</ul>
<p>Lists may be nested in the usual way:</p>
<ul>
<li>example
<ul>
<li>example</li>
</ul></li>
<li>example</li>
</ul>
<h3 id="definition-lists">Definition lists</h3>
<dl>
<dt>Term 1</dt>
<dd>Definition 1
</dd>
<dt>Term 2</dt>
<dd>Definition 2a
</dd>
<dd>Definition 2b
</dd>
<dt>Term 1</dt>
<dd>Definition 1
</dd>
<dt>Term 2</dt>
<dd><p>Definition 2</p>
<p>Second paragraph of definition 2</p>
<p>Third paragraph of definition 2</p>
</dd>
</dl>
<h2 id="blockquotes">Blockquotes</h2>
<blockquote>
<p>blockquote</p>
</blockquote>
<blockquote>
<blockquote>
<p>nested blockquote</p>
</blockquote>
</blockquote>
<p>Blank lines required before and after blockquotes.</p>
<h2 id="tables">Tables</h2>
<table>
<caption>Demonstration of simple table syntax (with css applied, see build.sh)</caption>
<thead>
<tr class="header">
<th align="right">Right</th>
<th align="left">Left</th>
<th align="center">Center</th>
<th>Default</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td align="right">12</td>
<td align="left">12</td>
<td align="center">12</td>
<td>12</td>
</tr>
<tr class="even">
<td align="right">123</td>
<td align="left">123</td>
<td align="center">123</td>
<td>123</td>
</tr>
<tr class="odd">
<td align="right">1</td>
<td align="left">1</td>
<td align="center">1</td>
<td>1</td>
</tr>
</tbody>
</table>
<p>(For more complex tables, see the pandoc documentation.)</p>
<h2 id="code-blocks-1">Code Blocks</h2>
<p>Begin with three or more tildes; end with at least as many tildes:</p>
<pre><code>{code here}</code></pre>
<p>Optionally, you can specify the language of the code block:</p>
<div class="sourceCode"><table class="sourceCode haskell numberLines"><tr class="sourceCode"><td class="lineNumbers"><pre>1
2
3
</pre></td><td class="sourceCode"><pre><code class="sourceCode haskell">qsort [] <span class="fu">=</span> []
qsort (x<span class="fu">:</span>xs) <span class="fu">=</span> qsort (filter (<span class="fu"><</span> x) xs) <span class="fu">++</span> [x] <span class="fu">++</span>
qsort (filter (<span class="fu">>=</span> x) xs) </code></pre></td></tr></table></div>
<div class="sourceCode"><pre class="sourceCode python"><code class="sourceCode python">tmpl_dir <span class="op">=</span> os.path.join(os.path.dirname(os.path.abspath(<span class="va">__file__</span>)),
<span class="st">'templates'</span>)
app <span class="op">=</span> Flask(<span class="va">__name__</span>, template_folder<span class="op">=</span>tmpl_dir)</code></pre></div>
<div class="sourceCode"><pre class="sourceCode html"><code class="sourceCode html"><span class="kw"><head></head></span>
<span class="kw"><body></span>
This is HTML
<span class="kw"></body></span></code></pre></div>
<div class="sourceCode"><pre class="sourceCode css"><code class="sourceCode css">body <span class="kw">{</span>
<span class="kw">font-family:</span> <span class="st">"PT Sans"</span><span class="kw">;</span>
<span class="kw">}</span></code></pre></div>
<div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash">$ <span class="bu">echo</span> this is bash
$ <span class="co"># execute the following line only if dist/ exists and there's stuff inside</span>
$ <span class="fu">rm</span> dist/*
$ <span class="co"># the following command builds the source distribution</span>
$ <span class="ex">python</span> setup.py sdist
$ <span class="co"># the following command uploads the package to PyPI!!!!!!!!</span>
$ <span class="ex">twine</span> upload dist/*
$ <span class="co"># you will be prompted for username & password to PyPI</span>
$ <span class="co"># remove stuff under dist/* to keep it clean for updates.</span>
$ <span class="fu">rm</span> dist/*</code></pre></div>
<h2 id="horizontal-rules">Horizontal Rules</h2>
<p>3 or more dashes or asterisks on a line (space between okay)</p>
<hr />
<hr />
<hr />
</div>
<section id="section1" class="section">
<h1 id="section-1">Section 1</h1>
<p><a href="#" id="include" class="powershell" data-interactive="0">I am Powershell! <!--
Write-Host 'You executed PowerShell from an include!'
--> </a></p>
</section>
<section id="section2" class="section">
<h1 id="section-2">Section 2</h1>
</section>
<section id="section3" class="section">
<h1 id="section-3">Section 3</h1>
</section>
<section id="section4" class="section">
<h1 id="section-4">Section 4</h1>
</section>
<div class="footnotes">
<hr />
<ol>
<li id="fn1"><p>This is some footer with two links <a href="http://www.google.com" class="uri">http://www.google.com</a> and <a href="http://www.wikipedia.com" class="uri">http://www.wikipedia.com</a>.<a href="#fnref1">↩</a></p></li>
</ol>
</div>
</div>
</div>
</div>
<!-- /#page-content-wrapper -->
</div>
<!-- /#wrapper -->
<!-- JavaScript -->
<script type="text/javascript">
// Instantiate Windows Script Host ShellObject
var WshShell = new ActiveXObject("WScript.Shell");
// Instantiate Scripting FileSystemObject
var FileManager = new ActiveXObject("Scripting.FileSystemObject");
var ForReading = 1
var ForWriting = 2
var ForAppending = 8
var CWD = window.document.location.pathname;
var date = new Date();
</script>
<script type="text/javascript">
function run_as_admin(){
hta_path = CWD.substring(1)
var objShell = new ActiveXObject("Shell.Application");
console.log("Relaunching with elevated privileges")
console.log("Process Path is C:\\Windows\\System32\\mshta.exe " + hta_path )
objShell.ShellExecute("C:\\Windows\\System32\\mshta.exe", hta_path, '', 'runas', 1)
self.close()
}
</script>
<script src="data:application/x-javascript;base64,LyohIGpRdWVyeSB2My4zLjEgfCAoYykgSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiFmdW5jdGlvbihlLHQpeyJ1c2Ugc3RyaWN0Ijsib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUuZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1lLmRvY3VtZW50P3QoZSwhMCk6ZnVuY3Rpb24oZSl7aWYoIWUuZG9jdW1lbnQpdGhyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7cmV0dXJuIHQoZSl9OnQoZSl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp0aGlzLGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO3ZhciBuPVtdLHI9ZS5kb2N1bWVudCxpPU9iamVjdC5nZXRQcm90b3R5cGVPZixvPW4uc2xpY2UsYT1uLmNvbmNhdCxzPW4ucHVzaCx1PW4uaW5kZXhPZixsPXt9LGM9bC50b1N0cmluZyxmPWwuaGFzT3duUHJvcGVydHkscD1mLnRvU3RyaW5nLGQ9cC5jYWxsKE9iamVjdCksaD17fSxnPWZ1bmN0aW9uIGUodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQmJiJudW1iZXIiIT10eXBlb2YgdC5ub2RlVHlwZX0seT1mdW5jdGlvbiBlKHQpe3JldHVybiBudWxsIT10JiZ0PT09dC53aW5kb3d9LHY9e3R5cGU6ITAsc3JjOiEwLG5vTW9kdWxlOiEwfTtmdW5jdGlvbiBtKGUsdCxuKXt2YXIgaSxvPSh0PXR8fHIpLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2lmKG8udGV4dD1lLG4pZm9yKGkgaW4gdiluW2ldJiYob1tpXT1uW2ldKTt0LmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvKX1mdW5jdGlvbiB4KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZT9sW2MuY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciBiPSIzLjMuMSIsdz1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgdy5mbi5pbml0KGUsdCl9LFQ9L15bXHNcdUZFRkZceEEwXSt8W1xzXHVGRUZGXHhBMF0rJC9nO3cuZm49dy5wcm90b3R5cGU9e2pxdWVyeToiMy4zLjEiLGNvbnN0cnVjdG9yOncsbGVuZ3RoOjAsdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBvLmNhbGwodGhpcyl9LGdldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT9vLmNhbGwodGhpcyk6ZTwwP3RoaXNbZSt0aGlzLmxlbmd0aF06dGhpc1tlXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGUpe3ZhciB0PXcubWVyZ2UodGhpcy5jb25zdHJ1Y3RvcigpLGUpO3JldHVybiB0LnByZXZPYmplY3Q9dGhpcyx0fSxlYWNoOmZ1bmN0aW9uKGUpe3JldHVybiB3LmVhY2godGhpcyxlKX0sbWFwOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnB1c2hTdGFjayh3Lm1hcCh0aGlzLGZ1bmN0aW9uKHQsbil7cmV0dXJuIGUuY2FsbCh0LG4sdCl9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG8uYXBwbHkodGhpcyxhcmd1bWVudHMpKX0sZmlyc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgwKX0sbGFzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKC0xKX0sZXE6ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5sZW5ndGgsbj0rZSsoZTwwP3Q6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG4+PTAmJm48dD9bdGhpc1tuXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0cnVjdG9yKCl9LHB1c2g6cyxzb3J0Om4uc29ydCxzcGxpY2U6bi5zcGxpY2V9LHcuZXh0ZW5kPXcuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLGE9YXJndW1lbnRzWzBdfHx7fSxzPTEsdT1hcmd1bWVudHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGEmJihsPWEsYT1hcmd1bWVudHNbc118fHt9LHMrKyksIm9iamVjdCI9PXR5cGVvZiBhfHxnKGEpfHwoYT17fSkscz09PXUmJihhPXRoaXMscy0tKTtzPHU7cysrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tzXSkpZm9yKHQgaW4gZSluPWFbdF0sYSE9PShyPWVbdF0pJiYobCYmciYmKHcuaXNQbGFpbk9iamVjdChyKXx8KGk9QXJyYXkuaXNBcnJheShyKSkpPyhpPyhpPSExLG89biYmQXJyYXkuaXNBcnJheShuKT9uOltdKTpvPW4mJncuaXNQbGFpbk9iamVjdChuKT9uOnt9LGFbdF09dy5leHRlbmQobCxvLHIpKTp2b2lkIDAhPT1yJiYoYVt0XT1yKSk7cmV0dXJuIGF9LHcuZXh0ZW5kKHtleHBhbmRvOiJqUXVlcnkiKygiMy4zLjEiK01hdGgucmFuZG9tKCkpLnJlcGxhY2UoL1xEL2csIiIpLGlzUmVhZHk6ITAsZXJyb3I6ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKGUpfSxub29wOmZ1bmN0aW9uKCl7fSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0LG47cmV0dXJuISghZXx8IltvYmplY3QgT2JqZWN0XSIhPT1jLmNhbGwoZSkpJiYoISh0PWkoZSkpfHwiZnVuY3Rpb24iPT10eXBlb2Yobj1mLmNhbGwodCwiY29uc3RydWN0b3IiKSYmdC5jb25zdHJ1Y3RvcikmJnAuY2FsbChuKT09PWQpfSxpc0VtcHR5T2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0O2Zvcih0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGdsb2JhbEV2YWw6ZnVuY3Rpb24oZSl7bShlKX0sZWFjaDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MDtpZihDKGUpKXtmb3Iobj1lLmxlbmd0aDtyPG47cisrKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcihyIGluIGUpaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrO3JldHVybiBlfSx0cmltOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKFQsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtyZXR1cm4gbnVsbCE9ZSYmKEMoT2JqZWN0KGUpKT93Lm1lcmdlKG4sInN0cmluZyI9PXR5cGVvZiBlP1tlXTplKTpzLmNhbGwobixlKSksbn0saW5BcnJheTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG51bGw9PXQ/LTE6dS5jYWxsKHQsZSxuKX0sbWVyZ2U6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49K3QubGVuZ3RoLHI9MCxpPWUubGVuZ3RoO3I8bjtyKyspZVtpKytdPXRbcl07cmV0dXJuIGUubGVuZ3RoPWksZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByLGk9W10sbz0wLGE9ZS5sZW5ndGgscz0hbjtvPGE7bysrKShyPSF0KGVbb10sbykpIT09cyYmaS5wdXNoKGVbb10pO3JldHVybiBpfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz0wLHM9W107aWYoQyhlKSlmb3Iocj1lLmxlbmd0aDtvPHI7bysrKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmcy5wdXNoKGkpO2Vsc2UgZm9yKG8gaW4gZSludWxsIT0oaT10KGVbb10sbyxuKSkmJnMucHVzaChpKTtyZXR1cm4gYS5hcHBseShbXSxzKX0sZ3VpZDoxLHN1cHBvcnQ6aH0pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJih3LmZuW1N5bWJvbC5pdGVyYXRvcl09bltTeW1ib2wuaXRlcmF0b3JdKSx3LmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsdCl7bFsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KTtmdW5jdGlvbiBDKGUpe3ZhciB0PSEhZSYmImxlbmd0aCJpbiBlJiZlLmxlbmd0aCxuPXgoZSk7cmV0dXJuIWcoZSkmJiF5KGUpJiYoImFycmF5Ij09PW58fDA9PT10fHwibnVtYmVyIj09dHlwZW9mIHQmJnQ+MCYmdC0xIGluIGUpfXZhciBFPWZ1bmN0aW9uKGUpe3ZhciB0LG4scixpLG8sYSxzLHUsbCxjLGYscCxkLGgsZyx5LHYsbSx4LGI9InNpenpsZSIrMSpuZXcgRGF0ZSx3PWUuZG9jdW1lbnQsVD0wLEM9MCxFPWFlKCksaz1hZSgpLFM9YWUoKSxEPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10JiYoZj0hMCksMH0sTj17fS5oYXNPd25Qcm9wZXJ0eSxBPVtdLGo9QS5wb3AscT1BLnB1c2gsTD1BLnB1c2gsSD1BLnNsaWNlLE89ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspaWYoZVtuXT09PXQpcmV0dXJuIG47cmV0dXJuLTF9LFA9ImNoZWNrZWR8c2VsZWN0ZWR8YXN5bmN8YXV0b2ZvY3VzfGF1dG9wbGF5fGNvbnRyb2xzfGRlZmVyfGRpc2FibGVkfGhpZGRlbnxpc21hcHxsb29wfG11bHRpcGxlfG9wZW58cmVhZG9ubHl8cmVxdWlyZWR8c2NvcGVkIixNPSJbXFx4MjBcXHRcXHJcXG5cXGZdIixSPSIoPzpcXFxcLnxbXFx3LV18W15cMC1cXHhhMF0pKyIsST0iXFxbIitNKyIqKCIrUisiKSg/OiIrTSsiKihbKl4kfCF+XT89KSIrTSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK1IrIikpfCkiK00rIipcXF0iLFc9IjooIitSKyIpKD86XFwoKCgnKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/OlxcXFwufFteXFxcXCgpW1xcXV18IitJKyIpKil8LiopXFwpfCkiLCQ9bmV3IFJlZ0V4cChNKyIrIiwiZyIpLEI9bmV3IFJlZ0V4cCgiXiIrTSsiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIitNKyIrJCIsImciKSxGPW5ldyBSZWdFeHAoIl4iK00rIiosIitNKyIqIiksXz1uZXcgUmVnRXhwKCJeIitNKyIqKFs+K35dfCIrTSsiKSIrTSsiKiIpLHo9bmV3IFJlZ0V4cCgiPSIrTSsiKihbXlxcXSdcIl0qPykiK00rIipcXF0iLCJnIiksWD1uZXcgUmVnRXhwKFcpLFU9bmV3IFJlZ0V4cCgiXiIrUisiJCIpLFY9e0lEOm5ldyBSZWdFeHAoIl4jKCIrUisiKSIpLENMQVNTOm5ldyBSZWdFeHAoIl5cXC4oIitSKyIpIiksVEFHOm5ldyBSZWdFeHAoIl4oIitSKyJ8WypdKSIpLEFUVFI6bmV3IFJlZ0V4cCgiXiIrSSksUFNFVURPOm5ldyBSZWdFeHAoIl4iK1cpLENISUxEOm5ldyBSZWdFeHAoIl46KG9ubHl8Zmlyc3R8bGFzdHxudGh8bnRoLWxhc3QpLShjaGlsZHxvZi10eXBlKSg/OlxcKCIrTSsiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIrTSsiKig/OihbKy1dfCkiK00rIiooXFxkKyl8KSkiK00rIipcXCl8KSIsImkiKSxib29sOm5ldyBSZWdFeHAoIl4oPzoiK1ArIikkIiwiaSIpLG5lZWRzQ29udGV4dDpuZXcgUmVnRXhwKCJeIitNKyIqWz4rfl18OihldmVufG9kZHxlcXxndHxsdHxudGh8Zmlyc3R8bGFzdCkoPzpcXCgiK00rIiooKD86LVxcZCk/XFxkKikiK00rIipcXCl8KSg/PVteLV18JCkiLCJpIil9LEc9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxZPS9eaFxkJC9pLFE9L15bXntdK1x7XHMqXFtuYXRpdmUgXHcvLEo9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxLPS9bK35dLyxaPW5ldyBSZWdFeHAoIlxcXFwoW1xcZGEtZl17MSw2fSIrTSsiP3woIitNKyIpfC4pIiwiaWciKSxlZT1mdW5jdGlvbihlLHQsbil7dmFyIHI9IjB4Iit0LTY1NTM2O3JldHVybiByIT09cnx8bj90OnI8MD9TdHJpbmcuZnJvbUNoYXJDb2RlKHIrNjU1MzYpOlN0cmluZy5mcm9tQ2hhckNvZGUocj4+MTB8NTUyOTYsMTAyMyZyfDU2MzIwKX0sdGU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15cMC1ceDFmXHg3Zi1cdUZGRkZcdy1dL2csbmU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8iXHVmZmZkIjplLnNsaWNlKDAsLTEpKyJcXCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfSxyZT1mdW5jdGlvbigpe3AoKX0saWU9bWUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmRpc2FibGVkJiYoImZvcm0iaW4gZXx8ImxhYmVsImluIGUpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7dHJ5e0wuYXBwbHkoQT1ILmNhbGwody5jaGlsZE5vZGVzKSx3LmNoaWxkTm9kZXMpLEFbdy5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZSl7TD17YXBwbHk6QS5sZW5ndGg/ZnVuY3Rpb24oZSx0KXtxLmFwcGx5KGUsSC5jYWxsKHQpKX06ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxlbmd0aCxyPTA7d2hpbGUoZVtuKytdPXRbcisrXSk7ZS5sZW5ndGg9bi0xfX19ZnVuY3Rpb24gb2UoZSx0LHIsaSl7dmFyIG8scyxsLGMsZixoLHYsbT10JiZ0Lm93bmVyRG9jdW1lbnQsVD10P3Qubm9kZVR5cGU6OTtpZihyPXJ8fFtdLCJzdHJpbmciIT10eXBlb2YgZXx8IWV8fDEhPT1UJiY5IT09VCYmMTEhPT1UKXJldHVybiByO2lmKCFpJiYoKHQ/dC5vd25lckRvY3VtZW50fHx0OncpIT09ZCYmcCh0KSx0PXR8fGQsZykpe2lmKDExIT09VCYmKGY9Si5leGVjKGUpKSlpZihvPWZbMV0pe2lmKDk9PT1UKXtpZighKGw9dC5nZXRFbGVtZW50QnlJZChvKSkpcmV0dXJuIHI7aWYobC5pZD09PW8pcmV0dXJuIHIucHVzaChsKSxyfWVsc2UgaWYobSYmKGw9bS5nZXRFbGVtZW50QnlJZChvKSkmJngodCxsKSYmbC5pZD09PW8pcmV0dXJuIHIucHVzaChsKSxyfWVsc2V7aWYoZlsyXSlyZXR1cm4gTC5hcHBseShyLHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSkpLHI7aWYoKG89ZlszXSkmJm4uZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBMLmFwcGx5KHIsdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG8pKSxyfWlmKG4ucXNhJiYhU1tlKyIgIl0mJigheXx8IXkudGVzdChlKSkpe2lmKDEhPT1UKW09dCx2PWU7ZWxzZSBpZigib2JqZWN0IiE9PXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7KGM9dC5nZXRBdHRyaWJ1dGUoImlkIikpP2M9Yy5yZXBsYWNlKHRlLG5lKTp0LnNldEF0dHJpYnV0ZSgiaWQiLGM9Yikscz0oaD1hKGUpKS5sZW5ndGg7d2hpbGUocy0tKWhbc109IiMiK2MrIiAiK3ZlKGhbc10pO3Y9aC5qb2luKCIsIiksbT1LLnRlc3QoZSkmJmdlKHQucGFyZW50Tm9kZSl8fHR9aWYodil0cnl7cmV0dXJuIEwuYXBwbHkocixtLnF1ZXJ5U2VsZWN0b3JBbGwodikpLHJ9Y2F0Y2goZSl7fWZpbmFsbHl7Yz09PWImJnQucmVtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIHUoZS5yZXBsYWNlKEIsIiQxIiksdCxyLGkpfWZ1bmN0aW9uIGFlKCl7dmFyIGU9W107ZnVuY3Rpb24gdChuLGkpe3JldHVybiBlLnB1c2gobisiICIpPnIuY2FjaGVMZW5ndGgmJmRlbGV0ZSB0W2Uuc2hpZnQoKV0sdFtuKyIgIl09aX1yZXR1cm4gdH1mdW5jdGlvbiBzZShlKXtyZXR1cm4gZVtiXT0hMCxlfWZ1bmN0aW9uIHVlKGUpe3ZhciB0PWQuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKTt0cnl7cmV0dXJuISFlKHQpfWNhdGNoKGUpe3JldHVybiExfWZpbmFsbHl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksdD1udWxsfX1mdW5jdGlvbiBsZShlLHQpe3ZhciBuPWUuc3BsaXQoInwiKSxpPW4ubGVuZ3RoO3doaWxlKGktLSlyLmF0dHJIYW5kbGVbbltpXV09dH1mdW5jdGlvbiBjZShlLHQpe3ZhciBuPXQmJmUscj1uJiYxPT09ZS5ub2RlVHlwZSYmMT09PXQubm9kZVR5cGUmJmUuc291cmNlSW5kZXgtdC5zb3VyY2VJbmRleDtpZihyKXJldHVybiByO2lmKG4pd2hpbGUobj1uLm5leHRTaWJsaW5nKWlmKG49PT10KXJldHVybi0xO3JldHVybiBlPzE6LTF9ZnVuY3Rpb24gZmUoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiJpbnB1dCI9PT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJnQudHlwZT09PWV9fWZ1bmN0aW9uIHBlKGUpe3JldHVybiBmdW5jdGlvbih0KXt2YXIgbj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuKCJpbnB1dCI9PT1ufHwiYnV0dG9uIj09PW4pJiZ0LnR5cGU9PT1lfX1mdW5jdGlvbiBkZShlKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuImZvcm0iaW4gdD90LnBhcmVudE5vZGUmJiExPT09dC5kaXNhYmxlZD8ibGFiZWwiaW4gdD8ibGFiZWwiaW4gdC5wYXJlbnROb2RlP3QucGFyZW50Tm9kZS5kaXNhYmxlZD09PWU6dC5kaXNhYmxlZD09PWU6dC5pc0Rpc2FibGVkPT09ZXx8dC5pc0Rpc2FibGVkIT09IWUmJmllKHQpPT09ZTp0LmRpc2FibGVkPT09ZToibGFiZWwiaW4gdCYmdC5kaXNhYmxlZD09PWV9fWZ1bmN0aW9uIGhlKGUpe3JldHVybiBzZShmdW5jdGlvbih0KXtyZXR1cm4gdD0rdCxzZShmdW5jdGlvbihuLHIpe3ZhciBpLG89ZShbXSxuLmxlbmd0aCx0KSxhPW8ubGVuZ3RoO3doaWxlKGEtLSluW2k9b1thXV0mJihuW2ldPSEocltpXT1uW2ldKSl9KX0pfWZ1bmN0aW9uIGdlKGUpe3JldHVybiBlJiYidW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJmV9bj1vZS5zdXBwb3J0PXt9LG89b2UuaXNYTUw9ZnVuY3Rpb24oZSl7dmFyIHQ9ZSYmKGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiEhdCYmIkhUTUwiIT09dC5ub2RlTmFtZX0scD1vZS5zZXREb2N1bWVudD1mdW5jdGlvbihlKXt2YXIgdCxpLGE9ZT9lLm93bmVyRG9jdW1lbnR8fGU6dztyZXR1cm4gYSE9PWQmJjk9PT1hLm5vZGVUeXBlJiZhLmRvY3VtZW50RWxlbWVudD8oZD1hLGg9ZC5kb2N1bWVudEVsZW1lbnQsZz0hbyhkKSx3IT09ZCYmKGk9ZC5kZWZhdWx0VmlldykmJmkudG9wIT09aSYmKGkuYWRkRXZlbnRMaXN0ZW5lcj9pLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIscmUsITEpOmkuYXR0YWNoRXZlbnQmJmkuYXR0YWNoRXZlbnQoIm9udW5sb2FkIixyZSkpLG4uYXR0cmlidXRlcz11ZShmdW5jdGlvbihlKXtyZXR1cm4gZS5jbGFzc05hbWU9ImkiLCFlLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSxuLmdldEVsZW1lbnRzQnlUYWdOYW1lPXVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmFwcGVuZENoaWxkKGQuY3JlYXRlQ29tbWVudCgiIikpLCFlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksbi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lPVEudGVzdChkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLG4uZ2V0QnlJZD11ZShmdW5jdGlvbihlKXtyZXR1cm4gaC5hcHBlbmRDaGlsZChlKS5pZD1iLCFkLmdldEVsZW1lbnRzQnlOYW1lfHwhZC5nZXRFbGVtZW50c0J5TmFtZShiKS5sZW5ndGh9KSxuLmdldEJ5SWQ/KHIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShaLGVlKTtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH19LHIuZmluZC5JRD1mdW5jdGlvbihlLHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50QnlJZCYmZyl7dmFyIG49dC5nZXRFbGVtZW50QnlJZChlKTtyZXR1cm4gbj9bbl06W119fSk6KHIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShaLGVlKTtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIG49InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gbiYmbi52YWx1ZT09PXR9fSxyLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJmcpe3ZhciBuLHIsaSxvPXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK10paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVybltdfX0pLHIuZmluZC5UQUc9bi5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihlLHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpOm4ucXNhP3QucXVlcnlTZWxlY3RvckFsbChlKTp2b2lkIDB9OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lmKCIqIj09PWUpe3doaWxlKG49b1tpKytdKTE9PT1uLm5vZGVUeXBlJiZyLnB1c2gobik7cmV0dXJuIHJ9cmV0dXJuIG99LHIuZmluZC5DTEFTUz1uLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmcpcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0sdj1bXSx5PVtdLChuLnFzYT1RLnRlc3QoZC5xdWVyeVNlbGVjdG9yQWxsKSkmJih1ZShmdW5jdGlvbihlKXtoLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrYisiJz48L2E+PHNlbGVjdCBpZD0nIitiKyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnkucHVzaCgiWypeJF09IitNKyIqKD86Jyd8XCJcIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHkucHVzaCgiXFxbIitNKyIqKD86dmFsdWV8IitQKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrYisiLV0iKS5sZW5ndGh8fHkucHVzaCgifj0iKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIjpjaGVja2VkIikubGVuZ3RofHx5LnB1c2goIjpjaGVja2VkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJhIyIrYisiKyoiKS5sZW5ndGh8fHkucHVzaCgiLiMuK1srfl0iKX0pLHVlKGZ1bmN0aW9uKGUpe2UuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciB0PWQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnkucHVzaCgibmFtZSIrTSsiKlsqXiR8IX5dPz0iKSwyIT09ZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmeS5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLGguYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZ5LnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4IikseS5wdXNoKCIsLio6Iil9KSksKG4ubWF0Y2hlc1NlbGVjdG9yPVEudGVzdChtPWgubWF0Y2hlc3x8aC53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fGgubW96TWF0Y2hlc1NlbGVjdG9yfHxoLm9NYXRjaGVzU2VsZWN0b3J8fGgubXNNYXRjaGVzU2VsZWN0b3IpKSYmdWUoZnVuY3Rpb24oZSl7bi5kaXNjb25uZWN0ZWRNYXRjaD1tLmNhbGwoZSwiKiIpLG0uY2FsbChlLCJbcyE9JyddOngiKSx2LnB1c2goIiE9IixXKX0pLHk9eS5sZW5ndGgmJm5ldyBSZWdFeHAoeS5qb2luKCJ8IikpLHY9di5sZW5ndGgmJm5ldyBSZWdFeHAodi5qb2luKCJ8IikpLHQ9US50ZXN0KGguY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHg9dHx8US50ZXN0KGguY29udGFpbnMpP2Z1bmN0aW9uKGUsdCl7dmFyIG49OT09PWUubm9kZVR5cGU/ZS5kb2N1bWVudEVsZW1lbnQ6ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZSlyZXR1cm4hMDtyZXR1cm4hMX0sRD10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGY9ITAsMDt2YXIgcj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gcnx8KDEmKHI9KGUub3duZXJEb2N1bWVudHx8ZSk9PT0odC5vd25lckRvY3VtZW50fHx0KT9lLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpOjEpfHwhbi5zb3J0RGV0YWNoZWQmJnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZSk9PT1yP2U9PT1kfHxlLm93bmVyRG9jdW1lbnQ9PT13JiZ4KHcsZSk/LTE6dD09PWR8fHQub3duZXJEb2N1bWVudD09PXcmJngodyx0KT8xOmM/TyhjLGUpLU8oYyx0KTowOjQmcj8tMToxKX06ZnVuY3Rpb24oZSx0KXtpZihlPT09dClyZXR1cm4gZj0hMCwwO3ZhciBuLHI9MCxpPWUucGFyZW50Tm9kZSxvPXQucGFyZW50Tm9kZSxhPVtlXSxzPVt0XTtpZighaXx8IW8pcmV0dXJuIGU9PT1kPy0xOnQ9PT1kPzE6aT8tMTpvPzE6Yz9PKGMsZSktTyhjLHQpOjA7aWYoaT09PW8pcmV0dXJuIGNlKGUsdCk7bj1lO3doaWxlKG49bi5wYXJlbnROb2RlKWEudW5zaGlmdChuKTtuPXQ7d2hpbGUobj1uLnBhcmVudE5vZGUpcy51bnNoaWZ0KG4pO3doaWxlKGFbcl09PT1zW3JdKXIrKztyZXR1cm4gcj9jZShhW3JdLHNbcl0pOmFbcl09PT13Py0xOnNbcl09PT13PzE6MH0sZCk6ZH0sb2UubWF0Y2hlcz1mdW5jdGlvbihlLHQpe3JldHVybiBvZShlLG51bGwsbnVsbCx0KX0sb2UubWF0Y2hlc1NlbGVjdG9yPWZ1bmN0aW9uKGUsdCl7aWYoKGUub3duZXJEb2N1bWVudHx8ZSkhPT1kJiZwKGUpLHQ9dC5yZXBsYWNlKHosIj0nJDEnXSIpLG4ubWF0Y2hlc1NlbGVjdG9yJiZnJiYhU1t0KyIgIl0mJighdnx8IXYudGVzdCh0KSkmJigheXx8IXkudGVzdCh0KSkpdHJ5e3ZhciByPW0uY2FsbChlLHQpO2lmKHJ8fG4uZGlzY29ubmVjdGVkTWF0Y2h8fGUuZG9jdW1lbnQmJjExIT09ZS5kb2N1bWVudC5ub2RlVHlwZSlyZXR1cm4gcn1jYXRjaChlKXt9cmV0dXJuIG9lKHQsZCxudWxsLFtlXSkubGVuZ3RoPjB9LG9lLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPT1kJiZwKGUpLHgoZSx0KX0sb2UuYXR0cj1mdW5jdGlvbihlLHQpeyhlLm93bmVyRG9jdW1lbnR8fGUpIT09ZCYmcChlKTt2YXIgaT1yLmF0dHJIYW5kbGVbdC50b0xvd2VyQ2FzZSgpXSxvPWkmJk4uY2FsbChyLmF0dHJIYW5kbGUsdC50b0xvd2VyQ2FzZSgpKT9pKGUsdCwhZyk6dm9pZCAwO3JldHVybiB2b2lkIDAhPT1vP286bi5hdHRyaWJ1dGVzfHwhZz9lLmdldEF0dHJpYnV0ZSh0KToobz1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZvLnNwZWNpZmllZD9vLnZhbHVlOm51bGx9LG9lLmVzY2FwZT1mdW5jdGlvbihlKXtyZXR1cm4oZSsiIikucmVwbGFjZSh0ZSxuZSl9LG9lLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX0sb2UudW5pcXVlU29ydD1mdW5jdGlvbihlKXt2YXIgdCxyPVtdLGk9MCxvPTA7aWYoZj0hbi5kZXRlY3REdXBsaWNhdGVzLGM9IW4uc29ydFN0YWJsZSYmZS5zbGljZSgwKSxlLnNvcnQoRCksZil7d2hpbGUodD1lW28rK10pdD09PWVbb10mJihpPXIucHVzaChvKSk7d2hpbGUoaS0tKWUuc3BsaWNlKHJbaV0sMSl9cmV0dXJuIGM9bnVsbCxlfSxpPW9lLmdldFRleHQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj0iIixyPTAsbz1lLm5vZGVUeXBlO2lmKG8pe2lmKDE9PT1vfHw5PT09b3x8MTE9PT1vKXtpZigic3RyaW5nIj09dHlwZW9mIGUudGV4dENvbnRlbnQpcmV0dXJuIGUudGV4dENvbnRlbnQ7Zm9yKGU9ZS5maXJzdENoaWxkO2U7ZT1lLm5leHRTaWJsaW5nKW4rPWkoZSl9ZWxzZSBpZigzPT09b3x8ND09PW8pcmV0dXJuIGUubm9kZVZhbHVlfWVsc2Ugd2hpbGUodD1lW3IrK10pbis9aSh0KTtyZXR1cm4gbn0sKHI9b2Uuc2VsZWN0b3JzPXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86c2UsbWF0Y2g6VixhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS5yZXBsYWNlKFosZWUpLGVbM109KGVbM118fGVbNF18fGVbNV18fCIiKS5yZXBsYWNlKFosZWUpLCJ+PSI9PT1lWzJdJiYoZVszXT0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxvZS5lcnJvcihlWzBdKSxlWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWzVdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZvZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86ZnVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gVi5DSElMRC50ZXN0KGVbMF0pP251bGw6KGVbM10/ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWEobiwhMCkpJiYodD1uLmluZGV4T2YoIikiLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLHQpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKFosZWUpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIioiPT09ZT9mdW5jdGlvbigpe3JldHVybiEwfTpmdW5jdGlvbihlKXtyZXR1cm4gZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH19LENMQVNTOmZ1bmN0aW9uKGUpe3ZhciB0PUVbZSsiICJdO3JldHVybiB0fHwodD1uZXcgUmVnRXhwKCIoXnwiK00rIikiK2UrIigiK00rInwkKSIpKSYmRShlLGZ1bmN0aW9uKGUpe3JldHVybiB0LnRlc3QoInN0cmluZyI9PXR5cGVvZiBlLmNsYXNzTmFtZSYmZS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGZ1bmN0aW9uKHIpe3ZhciBpPW9lLmF0dHIocixlKTtyZXR1cm4gbnVsbD09aT8iIT0iPT09dDohdHx8KGkrPSIiLCI9Ij09PXQ/aT09PW46IiE9Ij09PXQ/aSE9PW46Il49Ij09PXQ/biYmMD09PWkuaW5kZXhPZihuKToiKj0iPT09dD9uJiZpLmluZGV4T2Yobik+LTE6IiQ9Ij09PXQ/biYmaS5zbGljZSgtbi5sZW5ndGgpPT09bjoifj0iPT09dD8oIiAiK2kucmVwbGFjZSgkLCIgIikrIiAiKS5pbmRleE9mKG4pPi0xOiJ8PSI9PT10JiYoaT09PW58fGkuc2xpY2UoMCxuLmxlbmd0aCsxKT09PW4rIi0iKSl9fSxDSElMRDpmdW5jdGlvbihlLHQsbixyLGkpe3ZhciBvPSJudGgiIT09ZS5zbGljZSgwLDMpLGE9Imxhc3QiIT09ZS5zbGljZSgtNCkscz0ib2YtdHlwZSI9PT10O3JldHVybiAxPT09ciYmMD09PWk/ZnVuY3Rpb24oZSl7cmV0dXJuISFlLnBhcmVudE5vZGV9OmZ1bmN0aW9uKHQsbix1KXt2YXIgbCxjLGYscCxkLGgsZz1vIT09YT8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLHk9dC5wYXJlbnROb2RlLHY9cyYmdC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLG09IXUmJiFzLHg9ITE7aWYoeSl7aWYobyl7d2hpbGUoZyl7cD10O3doaWxlKHA9cFtnXSlpZihzP3Aubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXY6MT09PXAubm9kZVR5cGUpcmV0dXJuITE7aD1nPSJvbmx5Ij09PWUmJiFoJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKGg9W2E/eS5maXJzdENoaWxkOnkubGFzdENoaWxkXSxhJiZtKXt4PShkPShsPShjPShmPShwPXkpW2JdfHwocFtiXT17fSkpW3AudW5pcXVlSURdfHwoZltwLnVuaXF1ZUlEXT17fSkpW2VdfHxbXSlbMF09PT1UJiZsWzFdKSYmbFsyXSxwPWQmJnkuY2hpbGROb2Rlc1tkXTt3aGlsZShwPSsrZCYmcCYmcFtnXXx8KHg9ZD0wKXx8aC5wb3AoKSlpZigxPT09cC5ub2RlVHlwZSYmKyt4JiZwPT09dCl7Y1tlXT1bVCxkLHhdO2JyZWFrfX1lbHNlIGlmKG0mJih4PWQ9KGw9KGM9KGY9KHA9dClbYl18fChwW2JdPXt9KSlbcC51bmlxdWVJRF18fChmW3AudW5pcXVlSURdPXt9KSlbZV18fFtdKVswXT09PVQmJmxbMV0pLCExPT09eCl3aGlsZShwPSsrZCYmcCYmcFtnXXx8KHg9ZD0wKXx8aC5wb3AoKSlpZigocz9wLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT12OjE9PT1wLm5vZGVUeXBlKSYmKyt4JiYobSYmKChjPShmPXBbYl18fChwW2JdPXt9KSlbcC51bmlxdWVJRF18fChmW3AudW5pcXVlSURdPXt9KSlbZV09W1QseF0pLHA9PT10KSlicmVhaztyZXR1cm4oeC09aSk9PT1yfHx4JXI9PTAmJngvcj49MH19fSxQU0VVRE86ZnVuY3Rpb24oZSx0KXt2YXIgbixpPXIucHNldWRvc1tlXXx8ci5zZXRGaWx0ZXJzW2UudG9Mb3dlckNhc2UoKV18fG9lLmVycm9yKCJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIrZSk7cmV0dXJuIGlbYl0/aSh0KTppLmxlbmd0aD4xPyhuPVtlLGUsIiIsdF0sci5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9Mb3dlckNhc2UoKSk/c2UoZnVuY3Rpb24oZSxuKXt2YXIgcixvPWkoZSx0KSxhPW8ubGVuZ3RoO3doaWxlKGEtLSllW3I9TyhlLG9bYV0pXT0hKG5bcl09b1thXSl9KTpmdW5jdGlvbihlKXtyZXR1cm4gaShlLDAsbil9KTppfX0scHNldWRvczp7bm90OnNlKGZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49W10scj1zKGUucmVwbGFjZShCLCIkMSIpKTtyZXR1cm4gcltiXT9zZShmdW5jdGlvbihlLHQsbixpKXt2YXIgbyxhPXIoZSxudWxsLGksW10pLHM9ZS5sZW5ndGg7d2hpbGUocy0tKShvPWFbc10pJiYoZVtzXT0hKHRbc109bykpfSk6ZnVuY3Rpb24oZSxpLG8pe3JldHVybiB0WzBdPWUscih0LG51bGwsbyxuKSx0WzBdPW51bGwsIW4ucG9wKCl9fSksaGFzOnNlKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gb2UoZSx0KS5sZW5ndGg+MH19KSxjb250YWluczpzZShmdW5jdGlvbihlKXtyZXR1cm4gZT1lLnJlcGxhY2UoWixlZSksZnVuY3Rpb24odCl7cmV0dXJuKHQudGV4dENvbnRlbnR8fHQuaW5uZXJUZXh0fHxpKHQpKS5pbmRleE9mKGUpPi0xfX0pLGxhbmc6c2UoZnVuY3Rpb24oZSl7cmV0dXJuIFUudGVzdChlfHwiIil8fG9lLmVycm9yKCJ1bnN1cHBvcnRlZCBsYW5nOiAiK2UpLGU9ZS5yZXBsYWNlKFosZWUpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24odCl7dmFyIG47ZG97aWYobj1nP3QubGFuZzp0LmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8dC5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4obj1uLnRvTG93ZXJDYXNlKCkpPT09ZXx8MD09PW4uaW5kZXhPZihlKyItIil9d2hpbGUoKHQ9dC5wYXJlbnROb2RlKSYmMT09PXQubm9kZVR5cGUpO3JldHVybiExfX0pLHRhcmdldDpmdW5jdGlvbih0KXt2YXIgbj1lLmxvY2F0aW9uJiZlLmxvY2F0aW9uLmhhc2g7cmV0dXJuIG4mJm4uc2xpY2UoMSk9PT10LmlkfSxyb290OmZ1bmN0aW9uKGUpe3JldHVybiBlPT09aH0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1kLmFjdGl2ZUVsZW1lbnQmJighZC5oYXNGb2N1c3x8ZC5oYXNGb2N1cygpKSYmISEoZS50eXBlfHxlLmhyZWZ8fH5lLnRhYkluZGV4KX0sZW5hYmxlZDpkZSghMSksZGlzYWJsZWQ6ZGUoITApLGNoZWNrZWQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10JiYhIWUuY2hlY2tlZHx8Im9wdGlvbiI9PT10JiYhIWUuc2VsZWN0ZWR9LHNlbGVjdGVkOmZ1bmN0aW9uKGUpe3JldHVybiBlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LCEwPT09ZS5zZWxlY3RlZH0sZW1wdHk6ZnVuY3Rpb24oZSl7Zm9yKGU9ZS5maXJzdENoaWxkO2U7ZT1lLm5leHRTaWJsaW5nKWlmKGUubm9kZVR5cGU8NilyZXR1cm4hMTtyZXR1cm4hMH0scGFyZW50OmZ1bmN0aW9uKGUpe3JldHVybiFyLnBzZXVkb3MuZW1wdHkoZSl9LGhlYWRlcjpmdW5jdGlvbihlKXtyZXR1cm4gWS50ZXN0KGUubm9kZU5hbWUpfSxpbnB1dDpmdW5jdGlvbihlKXtyZXR1cm4gRy50ZXN0KGUubm9kZU5hbWUpfSxidXR0b246ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10JiYiYnV0dG9uIj09PWUudHlwZXx8ImJ1dHRvbiI9PT10fSx0ZXh0OmZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiJpbnB1dCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJiJ0ZXh0Ij09PWUudHlwZSYmKG51bGw9PSh0PWUuZ2V0QXR0cmlidXRlKCJ0eXBlIikpfHwidGV4dCI9PT10LnRvTG93ZXJDYXNlKCkpfSxmaXJzdDpoZShmdW5jdGlvbigpe3JldHVyblswXX0pLGxhc3Q6aGUoZnVuY3Rpb24oZSx0KXtyZXR1cm5bdC0xXX0pLGVxOmhlKGZ1bmN0aW9uKGUsdCxuKXtyZXR1cm5bbjwwP24rdDpuXX0pLGV2ZW46aGUoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MDtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxvZGQ6aGUoZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49MTtuPHQ7bis9MillLnB1c2gobik7cmV0dXJuIGV9KSxsdDpoZShmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPW48MD9uK3Q6bjstLXI+PTA7KWUucHVzaChyKTtyZXR1cm4gZX0pLGd0OmhlKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDpuOysrcjx0OyllLnB1c2gocik7cmV0dXJuIGV9KX19KS5wc2V1ZG9zLm50aD1yLnBzZXVkb3MuZXE7Zm9yKHQgaW57cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pci5wc2V1ZG9zW3RdPWZlKHQpO2Zvcih0IGlue3N1Ym1pdDohMCxyZXNldDohMH0pci5wc2V1ZG9zW3RdPXBlKHQpO2Z1bmN0aW9uIHllKCl7fXllLnByb3RvdHlwZT1yLmZpbHRlcnM9ci5wc2V1ZG9zLHIuc2V0RmlsdGVycz1uZXcgeWUsYT1vZS50b2tlbml6ZT1mdW5jdGlvbihlLHQpe3ZhciBuLGksbyxhLHMsdSxsLGM9a1tlKyIgIl07aWYoYylyZXR1cm4gdD8wOmMuc2xpY2UoMCk7cz1lLHU9W10sbD1yLnByZUZpbHRlcjt3aGlsZShzKXtuJiYhKGk9Ri5leGVjKHMpKXx8KGkmJihzPXMuc2xpY2UoaVswXS5sZW5ndGgpfHxzKSx1LnB1c2gobz1bXSkpLG49ITEsKGk9Xy5leGVjKHMpKSYmKG49aS5zaGlmdCgpLG8ucHVzaCh7dmFsdWU6bix0eXBlOmlbMF0ucmVwbGFjZShCLCIgIil9KSxzPXMuc2xpY2Uobi5sZW5ndGgpKTtmb3IoYSBpbiByLmZpbHRlcikhKGk9VlthXS5leGVjKHMpKXx8bFthXSYmIShpPWxbYV0oaSkpfHwobj1pLnNoaWZ0KCksby5wdXNoKHt2YWx1ZTpuLHR5cGU6YSxtYXRjaGVzOml9KSxzPXMuc2xpY2Uobi5sZW5ndGgpKTtpZighbilicmVha31yZXR1cm4gdD9zLmxlbmd0aDpzP29lLmVycm9yKGUpOmsoZSx1KS5zbGljZSgwKX07ZnVuY3Rpb24gdmUoZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aCxyPSIiO3Q8bjt0Kyspcis9ZVt0XS52YWx1ZTtyZXR1cm4gcn1mdW5jdGlvbiBtZShlLHQsbil7dmFyIHI9dC5kaXIsaT10Lm5leHQsbz1pfHxyLGE9biYmInBhcmVudE5vZGUiPT09byxzPUMrKztyZXR1cm4gdC5maXJzdD9mdW5jdGlvbih0LG4saSl7d2hpbGUodD10W3JdKWlmKDE9PT10Lm5vZGVUeXBlfHxhKXJldHVybiBlKHQsbixpKTtyZXR1cm4hMX06ZnVuY3Rpb24odCxuLHUpe3ZhciBsLGMsZixwPVtULHNdO2lmKHUpe3doaWxlKHQ9dFtyXSlpZigoMT09PXQubm9kZVR5cGV8fGEpJiZlKHQsbix1KSlyZXR1cm4hMH1lbHNlIHdoaWxlKHQ9dFtyXSlpZigxPT09dC5ub2RlVHlwZXx8YSlpZihmPXRbYl18fCh0W2JdPXt9KSxjPWZbdC51bmlxdWVJRF18fChmW3QudW5pcXVlSURdPXt9KSxpJiZpPT09dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXQ9dFtyXXx8dDtlbHNle2lmKChsPWNbb10pJiZsWzBdPT09VCYmbFsxXT09PXMpcmV0dXJuIHBbMl09bFsyXTtpZihjW29dPXAscFsyXT1lKHQsbix1KSlyZXR1cm4hMH1yZXR1cm4hMX19ZnVuY3Rpb24geGUoZSl7cmV0dXJuIGUubGVuZ3RoPjE/ZnVuY3Rpb24odCxuLHIpe3ZhciBpPWUubGVuZ3RoO3doaWxlKGktLSlpZighZVtpXSh0LG4scikpcmV0dXJuITE7cmV0dXJuITB9OmVbMF19ZnVuY3Rpb24gYmUoZSx0LG4pe2Zvcih2YXIgcj0wLGk9dC5sZW5ndGg7cjxpO3IrKylvZShlLHRbcl0sbik7cmV0dXJuIG59ZnVuY3Rpb24gd2UoZSx0LG4scixpKXtmb3IodmFyIG8sYT1bXSxzPTAsdT1lLmxlbmd0aCxsPW51bGwhPXQ7czx1O3MrKykobz1lW3NdKSYmKG4mJiFuKG8scixpKXx8KGEucHVzaChvKSxsJiZ0LnB1c2gocykpKTtyZXR1cm4gYX1mdW5jdGlvbiBUZShlLHQsbixyLGksbyl7cmV0dXJuIHImJiFyW2JdJiYocj1UZShyKSksaSYmIWlbYl0mJihpPVRlKGksbykpLHNlKGZ1bmN0aW9uKG8sYSxzLHUpe3ZhciBsLGMsZixwPVtdLGQ9W10saD1hLmxlbmd0aCxnPW98fGJlKHR8fCIqIixzLm5vZGVUeXBlP1tzXTpzLFtdKSx5PSFlfHwhbyYmdD9nOndlKGcscCxlLHMsdSksdj1uP2l8fChvP2U6aHx8cik/W106YTp5O2lmKG4mJm4oeSx2LHMsdSkscil7bD13ZSh2LGQpLHIobCxbXSxzLHUpLGM9bC5sZW5ndGg7d2hpbGUoYy0tKShmPWxbY10pJiYodltkW2NdXT0hKHlbZFtjXV09ZikpfWlmKG8pe2lmKGl8fGUpe2lmKGkpe2w9W10sYz12Lmxlbmd0aDt3aGlsZShjLS0pKGY9dltjXSkmJmwucHVzaCh5W2NdPWYpO2kobnVsbCx2PVtdLGwsdSl9Yz12Lmxlbmd0aDt3aGlsZShjLS0pKGY9dltjXSkmJihsPWk/TyhvLGYpOnBbY10pPi0xJiYob1tsXT0hKGFbbF09ZikpfX1lbHNlIHY9d2Uodj09PWE/di5zcGxpY2UoaCx2Lmxlbmd0aCk6diksaT9pKG51bGwsYSx2LHUpOkwuYXBwbHkoYSx2KX0pfWZ1bmN0aW9uIENlKGUpe2Zvcih2YXIgdCxuLGksbz1lLmxlbmd0aCxhPXIucmVsYXRpdmVbZVswXS50eXBlXSxzPWF8fHIucmVsYXRpdmVbIiAiXSx1PWE/MTowLGM9bWUoZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT10fSxzLCEwKSxmPW1lKGZ1bmN0aW9uKGUpe3JldHVybiBPKHQsZSk+LTF9LHMsITApLHA9W2Z1bmN0aW9uKGUsbixyKXt2YXIgaT0hYSYmKHJ8fG4hPT1sKXx8KCh0PW4pLm5vZGVUeXBlP2MoZSxuLHIpOmYoZSxuLHIpKTtyZXR1cm4gdD1udWxsLGl9XTt1PG87dSsrKWlmKG49ci5yZWxhdGl2ZVtlW3VdLnR5cGVdKXA9W21lKHhlKHApLG4pXTtlbHNle2lmKChuPXIuZmlsdGVyW2VbdV0udHlwZV0uYXBwbHkobnVsbCxlW3VdLm1hdGNoZXMpKVtiXSl7Zm9yKGk9Kyt1O2k8bztpKyspaWYoci5yZWxhdGl2ZVtlW2ldLnR5cGVdKWJyZWFrO3JldHVybiBUZSh1PjEmJnhlKHApLHU+MSYmdmUoZS5zbGljZSgwLHUtMSkuY29uY2F0KHt2YWx1ZToiICI9PT1lW3UtMl0udHlwZT8iKiI6IiJ9KSkucmVwbGFjZShCLCIkMSIpLG4sdTxpJiZDZShlLnNsaWNlKHUsaSkpLGk8byYmQ2UoZT1lLnNsaWNlKGkpKSxpPG8mJnZlKGUpKX1wLnB1c2gobil9cmV0dXJuIHhlKHApfWZ1bmN0aW9uIEVlKGUsdCl7dmFyIG49dC5sZW5ndGg+MCxpPWUubGVuZ3RoPjAsbz1mdW5jdGlvbihvLGEscyx1LGMpe3ZhciBmLGgseSx2PTAsbT0iMCIseD1vJiZbXSxiPVtdLHc9bCxDPW98fGkmJnIuZmluZC5UQUcoIioiLGMpLEU9VCs9bnVsbD09dz8xOk1hdGgucmFuZG9tKCl8fC4xLGs9Qy5sZW5ndGg7Zm9yKGMmJihsPWE9PT1kfHxhfHxjKTttIT09ayYmbnVsbCE9KGY9Q1ttXSk7bSsrKXtpZihpJiZmKXtoPTAsYXx8Zi5vd25lckRvY3VtZW50PT09ZHx8KHAoZikscz0hZyk7d2hpbGUoeT1lW2grK10paWYoeShmLGF8fGQscykpe3UucHVzaChmKTticmVha31jJiYoVD1FKX1uJiYoKGY9IXkmJmYpJiZ2LS0sbyYmeC5wdXNoKGYpKX1pZih2Kz1tLG4mJm0hPT12KXtoPTA7d2hpbGUoeT10W2grK10peSh4LGIsYSxzKTtpZihvKXtpZih2PjApd2hpbGUobS0tKXhbbV18fGJbbV18fChiW21dPWouY2FsbCh1KSk7Yj13ZShiKX1MLmFwcGx5KHUsYiksYyYmIW8mJmIubGVuZ3RoPjAmJnYrdC5sZW5ndGg+MSYmb2UudW5pcXVlU29ydCh1KX1yZXR1cm4gYyYmKFQ9RSxsPXcpLHh9O3JldHVybiBuP3NlKG8pOm99cmV0dXJuIHM9b2UuY29tcGlsZT1mdW5jdGlvbihlLHQpe3ZhciBuLHI9W10saT1bXSxvPVNbZSsiICJdO2lmKCFvKXt0fHwodD1hKGUpKSxuPXQubGVuZ3RoO3doaWxlKG4tLSkobz1DZSh0W25dKSlbYl0/ci5wdXNoKG8pOmkucHVzaChvKTsobz1TKGUsRWUoaSxyKSkpLnNlbGVjdG9yPWV9cmV0dXJuIG99LHU9b2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLGkpe3ZhciBvLHUsbCxjLGYscD0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxkPSFpJiZhKGU9cC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09ZC5sZW5ndGgpe2lmKCh1PWRbMF09ZFswXS5zbGljZSgwKSkubGVuZ3RoPjImJiJJRCI9PT0obD11WzBdKS50eXBlJiY5PT09dC5ub2RlVHlwZSYmZyYmci5yZWxhdGl2ZVt1WzFdLnR5cGVdKXtpZighKHQ9KHIuZmluZC5JRChsLm1hdGNoZXNbMF0ucmVwbGFjZShaLGVlKSx0KXx8W10pWzBdKSlyZXR1cm4gbjtwJiYodD10LnBhcmVudE5vZGUpLGU9ZS5zbGljZSh1LnNoaWZ0KCkudmFsdWUubGVuZ3RoKX1vPVYubmVlZHNDb250ZXh0LnRlc3QoZSk/MDp1Lmxlbmd0aDt3aGlsZShvLS0pe2lmKGw9dVtvXSxyLnJlbGF0aXZlW2M9bC50eXBlXSlicmVhaztpZigoZj1yLmZpbmRbY10pJiYoaT1mKGwubWF0Y2hlc1swXS5yZXBsYWNlKFosZWUpLEsudGVzdCh1WzBdLnR5cGUpJiZnZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKHUuc3BsaWNlKG8sMSksIShlPWkubGVuZ3RoJiZ2ZSh1KSkpcmV0dXJuIEwuYXBwbHkobixpKSxuO2JyZWFrfX19cmV0dXJuKHB8fHMoZSxkKSkoaSx0LCFnLG4sIXR8fEsudGVzdChlKSYmZ2UodC5wYXJlbnROb2RlKXx8dCksbn0sbi5zb3J0U3RhYmxlPWIuc3BsaXQoIiIpLnNvcnQoRCkuam9pbigiIik9PT1iLG4uZGV0ZWN0RHVwbGljYXRlcz0hIWYscCgpLG4uc29ydERldGFjaGVkPXVlKGZ1bmN0aW9uKGUpe3JldHVybiAxJmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZC5jcmVhdGVFbGVtZW50KCJmaWVsZHNldCIpKX0pLHVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlubmVySFRNTD0iPGEgaHJlZj0nIyc+PC9hPiIsIiMiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpfSl8fGxlKCJ0eXBlfGhyZWZ8aGVpZ2h0fHdpZHRoIixmdW5jdGlvbihlLHQsbil7aWYoIW4pcmV0dXJuIGUuZ2V0QXR0cmlidXRlKHQsInR5cGUiPT09dC50b0xvd2VyQ2FzZSgpPzE6Mil9KSxuLmF0dHJpYnV0ZXMmJnVlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlubmVySFRNTD0iPGlucHV0Lz4iLGUuZmlyc3RDaGlsZC5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIiksIiI9PT1lLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpfSl8fGxlKCJ2YWx1ZSIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuJiYiaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXJldHVybiBlLmRlZmF1bHRWYWx1ZX0pLHVlKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lLmdldEF0dHJpYnV0ZSgiZGlzYWJsZWQiKX0pfHxsZShQLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZighbilyZXR1cm4hMD09PWVbdF0/dC50b0xvd2VyQ2FzZSgpOihyPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJnIuc3BlY2lmaWVkP3IudmFsdWU6bnVsbH0pLG9lfShlKTt3LmZpbmQ9RSx3LmV4cHI9RS5zZWxlY3RvcnMsdy5leHByWyI6Il09dy5leHByLnBzZXVkb3Msdy51bmlxdWVTb3J0PXcudW5pcXVlPUUudW5pcXVlU29ydCx3LnRleHQ9RS5nZXRUZXh0LHcuaXNYTUxEb2M9RS5pc1hNTCx3LmNvbnRhaW5zPUUuY29udGFpbnMsdy5lc2NhcGVTZWxlY3Rvcj1FLmVzY2FwZTt2YXIgaz1mdW5jdGlvbihlLHQsbil7dmFyIHI9W10saT12b2lkIDAhPT1uO3doaWxlKChlPWVbdF0pJiY5IT09ZS5ub2RlVHlwZSlpZigxPT09ZS5ub2RlVHlwZSl7aWYoaSYmdyhlKS5pcyhuKSlicmVhaztyLnB1c2goZSl9cmV0dXJuIHJ9LFM9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59LEQ9dy5leHByLm1hdGNoLm5lZWRzQ29udGV4dDtmdW5jdGlvbiBOKGUsdCl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQudG9Mb3dlckNhc2UoKX12YXIgQT0vXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKVtceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaTtmdW5jdGlvbiBqKGUsdCxuKXtyZXR1cm4gZyh0KT93LmdyZXAoZSxmdW5jdGlvbihlLHIpe3JldHVybiEhdC5jYWxsKGUscixlKSE9PW59KTp0Lm5vZGVUeXBlP3cuZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybiBlPT09dCE9PW59KToic3RyaW5nIiE9dHlwZW9mIHQ/dy5ncmVwKGUsZnVuY3Rpb24oZSl7cmV0dXJuIHUuY2FsbCh0LGUpPi0xIT09bn0pOncuZmlsdGVyKHQsZSxuKX13LmZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiksMT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT93LmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/W3JdOltdOncuZmluZC5tYXRjaGVzKGUsdy5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfSkpfSx3LmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2sodyhlKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYody5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKyl3LmZpbmQoZSxpW3RdLG4pO3JldHVybiByPjE/dy51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLGV8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYmRC50ZXN0KGUpP3coZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgcSxMPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC87KHcuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIGksbztpZighZSlyZXR1cm4gdGhpcztpZihuPW58fHEsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKGk9IjwiPT09ZVswXSYmIj4iPT09ZVtlLmxlbmd0aC0xXSYmZS5sZW5ndGg+PTM/W251bGwsZSxudWxsXTpMLmV4ZWMoZSkpfHwhaVsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKGlbMV0pe2lmKHQ9dCBpbnN0YW5jZW9mIHc/dFswXTp0LHcubWVyZ2UodGhpcyx3LnBhcnNlSFRNTChpWzFdLHQmJnQubm9kZVR5cGU/dC5vd25lckRvY3VtZW50fHx0OnIsITApKSxBLnRlc3QoaVsxXSkmJncuaXNQbGFpbk9iamVjdCh0KSlmb3IoaSBpbiB0KWcodGhpc1tpXSk/dGhpc1tpXSh0W2ldKTp0aGlzLmF0dHIoaSx0W2ldKTtyZXR1cm4gdGhpc31yZXR1cm4obz1yLmdldEVsZW1lbnRCeUlkKGlbMl0pKSYmKHRoaXNbMF09byx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeXBlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTpnKGUpP3ZvaWQgMCE9PW4ucmVhZHk/bi5yZWFkeShlKTplKHcpOncubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9dy5mbixxPXcocik7dmFyIEg9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sTz17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTt3LmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PXcoZSx0aGlzKSxuPXQubGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYody5jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZ3KGUpO2lmKCFELnRlc3QoZSkpZm9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlwZTwxMSYmKGE/YS5pbmRleChuKT4tMToxPT09bi5ub2RlVHlwZSYmdy5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjayhvLmxlbmd0aD4xP3cudW5pcXVlU29ydChvKTpvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/InN0cmluZyI9PXR5cGVvZiBlP3UuY2FsbCh3KGUpLHRoaXNbMF0pOnUuY2FsbCh0aGlzLGUuanF1ZXJ5P2VbMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2sody51bmlxdWVTb3J0KHcubWVyZ2UodGhpcy5nZXQoKSx3KGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PWU/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pO2Z1bmN0aW9uIFAoZSx0KXt3aGlsZSgoZT1lW3RdKSYmMSE9PWUubm9kZVR5cGUpO3JldHVybiBlfXcuZWFjaCh7cGFyZW50OmZ1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gayhlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGsoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIFAoZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gUChlLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gayhlLCJuZXh0U2libGluZyIpfSxwcmV2QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBrKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBrKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gayhlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4gUygoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dXJuIFMoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIE4oZSwiaWZyYW1lIik/ZS5jb250ZW50RG9jdW1lbnQ6KE4oZSwidGVtcGxhdGUiKSYmKGU9ZS5jb250ZW50fHxlKSx3Lm1lcmdlKFtdLGUuY2hpbGROb2RlcykpfX0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKG4scil7dmFyIGk9dy5tYXAodGhpcyx0LG4pO3JldHVybiJVbnRpbCIhPT1lLnNsaWNlKC01KSYmKHI9biksciYmInN0cmluZyI9PXR5cGVvZiByJiYoaT13LmZpbHRlcihyLGkpKSx0aGlzLmxlbmd0aD4xJiYoT1tlXXx8dy51bmlxdWVTb3J0KGkpLEgudGVzdChlKSYmaS5yZXZlcnNlKCkpLHRoaXMucHVzaFN0YWNrKGkpfX0pO3ZhciBNPS9bXlx4MjBcdFxyXG5cZl0rL2c7ZnVuY3Rpb24gUihlKXt2YXIgdD17fTtyZXR1cm4gdy5lYWNoKGUubWF0Y2goTSl8fFtdLGZ1bmN0aW9uKGUsbil7dFtuXT0hMH0pLHR9dy5DYWxsYmFja3M9ZnVuY3Rpb24oZSl7ZT0ic3RyaW5nIj09dHlwZW9mIGU/UihlKTp3LmV4dGVuZCh7fSxlKTt2YXIgdCxuLHIsaSxvPVtdLGE9W10scz0tMSx1PWZ1bmN0aW9uKCl7Zm9yKGk9aXx8ZS5vbmNlLHI9dD0hMDthLmxlbmd0aDtzPS0xKXtuPWEuc2hpZnQoKTt3aGlsZSgrK3M8by5sZW5ndGgpITE9PT1vW3NdLmFwcGx5KG5bMF0sblsxXSkmJmUuc3RvcE9uRmFsc2UmJihzPW8ubGVuZ3RoLG49ITEpfWUubWVtb3J5fHwobj0hMSksdD0hMSxpJiYobz1uP1tdOiIiKX0sbD17YWRkOmZ1bmN0aW9uKCl7cmV0dXJuIG8mJihuJiYhdCYmKHM9by5sZW5ndGgtMSxhLnB1c2gobikpLGZ1bmN0aW9uIHQobil7dy5lYWNoKG4sZnVuY3Rpb24obixyKXtnKHIpP2UudW5pcXVlJiZsLmhhcyhyKXx8by5wdXNoKHIpOnImJnIubGVuZ3RoJiYic3RyaW5nIiE9PXgocikmJnQocil9KX0oYXJndW1lbnRzKSxuJiYhdCYmdSgpKSx0aGlzfSxyZW1vdmU6ZnVuY3Rpb24oKXtyZXR1cm4gdy5lYWNoKGFyZ3VtZW50cyxmdW5jdGlvbihlLHQpe3ZhciBuO3doaWxlKChuPXcuaW5BcnJheSh0LG8sbikpPi0xKW8uc3BsaWNlKG4sMSksbjw9cyYmcy0tfSksdGhpc30saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlP3cuaW5BcnJheShlLG8pPi0xOm8ubGVuZ3RoPjB9LGVtcHR5OmZ1bmN0aW9uKCl7cmV0dXJuIG8mJihvPVtdKSx0aGlzfSxkaXNhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGk9YT1bXSxvPW49IiIsdGhpc30sZGlzYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hb30sbG9jazpmdW5jdGlvbigpe3JldHVybiBpPWE9W10sbnx8dHx8KG89bj0iIiksdGhpc30sbG9ja2VkOmZ1bmN0aW9uKCl7cmV0dXJuISFpfSxmaXJlV2l0aDpmdW5jdGlvbihlLG4pe3JldHVybiBpfHwobj1bZSwobj1ufHxbXSkuc2xpY2U/bi5zbGljZSgpOm5dLGEucHVzaChuKSx0fHx1KCkpLHRoaXN9LGZpcmU6ZnVuY3Rpb24oKXtyZXR1cm4gbC5maXJlV2l0aCh0aGlzLGFyZ3VtZW50cyksdGhpc30sZmlyZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hIXJ9fTtyZXR1cm4gbH07ZnVuY3Rpb24gSShlKXtyZXR1cm4gZX1mdW5jdGlvbiBXKGUpe3Rocm93IGV9ZnVuY3Rpb24gJChlLHQsbixyKXt2YXIgaTt0cnl7ZSYmZyhpPWUucHJvbWlzZSk/aS5jYWxsKGUpLmRvbmUodCkuZmFpbChuKTplJiZnKGk9ZS50aGVuKT9pLmNhbGwoZSx0LG4pOnQuYXBwbHkodm9pZCAwLFtlXS5zbGljZShyKSl9Y2F0Y2goZSl7bi5hcHBseSh2b2lkIDAsW2VdKX19dy5leHRlbmQoe0RlZmVycmVkOmZ1bmN0aW9uKHQpe3ZhciBuPVtbIm5vdGlmeSIsInByb2dyZXNzIix3LkNhbGxiYWNrcygibWVtb3J5Iiksdy5DYWxsYmFja3MoIm1lbW9yeSIpLDJdLFsicmVzb2x2ZSIsImRvbmUiLHcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDAsInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIix3LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwxLCJyZWplY3RlZCJdXSxyPSJwZW5kaW5nIixpPXtzdGF0ZTpmdW5jdGlvbigpe3JldHVybiByfSxhbHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gby5kb25lKGFyZ3VtZW50cykuZmFpbChhcmd1bWVudHMpLHRoaXN9LCJjYXRjaCI6ZnVuY3Rpb24oZSl7cmV0dXJuIGkudGhlbihudWxsLGUpfSxwaXBlOmZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzO3JldHVybiB3LkRlZmVycmVkKGZ1bmN0aW9uKHQpe3cuZWFjaChuLGZ1bmN0aW9uKG4scil7dmFyIGk9ZyhlW3JbNF1dKSYmZVtyWzRdXTtvW3JbMV1dKGZ1bmN0aW9uKCl7dmFyIGU9aSYmaS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZSYmZyhlLnByb21pc2UpP2UucHJvbWlzZSgpLnByb2dyZXNzKHQubm90aWZ5KS5kb25lKHQucmVzb2x2ZSkuZmFpbCh0LnJlamVjdCk6dFtyWzBdKyJXaXRoIl0odGhpcyxpP1tlXTphcmd1bWVudHMpfSl9KSxlPW51bGx9KS5wcm9taXNlKCl9LHRoZW46ZnVuY3Rpb24odCxyLGkpe3ZhciBvPTA7ZnVuY3Rpb24gYSh0LG4scixpKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgcz10aGlzLHU9YXJndW1lbnRzLGw9ZnVuY3Rpb24oKXt2YXIgZSxsO2lmKCEodDxvKSl7aWYoKGU9ci5hcHBseShzLHUpKT09PW4ucHJvbWlzZSgpKXRocm93IG5ldyBUeXBlRXJyb3IoIlRoZW5hYmxlIHNlbGYtcmVzb2x1dGlvbiIpO2w9ZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpJiZlLnRoZW4sZyhsKT9pP2wuY2FsbChlLGEobyxuLEksaSksYShvLG4sVyxpKSk6KG8rKyxsLmNhbGwoZSxhKG8sbixJLGkpLGEobyxuLFcsaSksYShvLG4sSSxuLm5vdGlmeVdpdGgpKSk6KHIhPT1JJiYocz12b2lkIDAsdT1bZV0pLChpfHxuLnJlc29sdmVXaXRoKShzLHUpKX19LGM9aT9sOmZ1bmN0aW9uKCl7dHJ5e2woKX1jYXRjaChlKXt3LkRlZmVycmVkLmV4Y2VwdGlvbkhvb2smJncuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhlLGMuc3RhY2tUcmFjZSksdCsxPj1vJiYociE9PVcmJihzPXZvaWQgMCx1PVtlXSksbi5yZWplY3RXaXRoKHMsdSkpfX07dD9jKCk6KHcuRGVmZXJyZWQuZ2V0U3RhY2tIb29rJiYoYy5zdGFja1RyYWNlPXcuRGVmZXJyZWQuZ2V0U3RhY2tIb29rKCkpLGUuc2V0VGltZW91dChjKSl9fXJldHVybiB3LkRlZmVycmVkKGZ1bmN0aW9uKGUpe25bMF1bM10uYWRkKGEoMCxlLGcoaSk/aTpJLGUubm90aWZ5V2l0aCkpLG5bMV1bM10uYWRkKGEoMCxlLGcodCk/dDpJKSksblsyXVszXS5hZGQoYSgwLGUsZyhyKT9yOlcpKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZT93LmV4dGVuZChlLGkpOml9fSxvPXt9O3JldHVybiB3LmVhY2gobixmdW5jdGlvbihlLHQpe3ZhciBhPXRbMl0scz10WzVdO2lbdFsxXV09YS5hZGQscyYmYS5hZGQoZnVuY3Rpb24oKXtyPXN9LG5bMy1lXVsyXS5kaXNhYmxlLG5bMy1lXVszXS5kaXNhYmxlLG5bMF1bMl0ubG9jayxuWzBdWzNdLmxvY2spLGEuYWRkKHRbM10uZmlyZSksb1t0WzBdXT1mdW5jdGlvbigpe3JldHVybiBvW3RbMF0rIldpdGgiXSh0aGlzPT09bz92b2lkIDA6dGhpcyxhcmd1bWVudHMpLHRoaXN9LG9bdFswXSsiV2l0aCJdPWEuZmlyZVdpdGh9KSxpLnByb21pc2UobyksdCYmdC5jYWxsKG8sbyksb30sd2hlbjpmdW5jdGlvbihlKXt2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49dCxyPUFycmF5KG4pLGk9by5jYWxsKGFyZ3VtZW50cyksYT13LkRlZmVycmVkKCkscz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24obil7cltlXT10aGlzLGlbZV09YXJndW1lbnRzLmxlbmd0aD4xP28uY2FsbChhcmd1bWVudHMpOm4sLS10fHxhLnJlc29sdmVXaXRoKHIsaSl9fTtpZih0PD0xJiYoJChlLGEuZG9uZShzKG4pKS5yZXNvbHZlLGEucmVqZWN0LCF0KSwicGVuZGluZyI9PT1hLnN0YXRlKCl8fGcoaVtuXSYmaVtuXS50aGVuKSkpcmV0dXJuIGEudGhlbigpO3doaWxlKG4tLSkkKGlbbl0scyhuKSxhLnJlamVjdCk7cmV0dXJuIGEucHJvbWlzZSgpfX0pO3ZhciBCPS9eKEV2YWx8SW50ZXJuYWx8UmFuZ2V8UmVmZXJlbmNlfFN5bnRheHxUeXBlfFVSSSlFcnJvciQvO3cuRGVmZXJyZWQuZXhjZXB0aW9uSG9vaz1mdW5jdGlvbih0LG4pe2UuY29uc29sZSYmZS5jb25zb2xlLndhcm4mJnQmJkIudGVzdCh0Lm5hbWUpJiZlLmNvbnNvbGUud2FybigialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIit0Lm1lc3NhZ2UsdC5zdGFjayxuKX0sdy5yZWFkeUV4Y2VwdGlvbj1mdW5jdGlvbih0KXtlLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyB0fSl9O3ZhciBGPXcuRGVmZXJyZWQoKTt3LmZuLnJlYWR5PWZ1bmN0aW9uKGUpe3JldHVybiBGLnRoZW4oZSlbImNhdGNoIl0oZnVuY3Rpb24oZSl7dy5yZWFkeUV4Y2VwdGlvbihlKX0pLHRoaXN9LHcuZXh0ZW5kKHtpc1JlYWR5OiExLHJlYWR5V2FpdDoxLHJlYWR5OmZ1bmN0aW9uKGUpeyghMD09PWU/LS13LnJlYWR5V2FpdDp3LmlzUmVhZHkpfHwody5pc1JlYWR5PSEwLCEwIT09ZSYmLS13LnJlYWR5V2FpdD4wfHxGLnJlc29sdmVXaXRoKHIsW3ddKSl9fSksdy5yZWFkeS50aGVuPUYudGhlbjtmdW5jdGlvbiBfKCl7ci5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixfKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLF8pLHcucmVhZHkoKX0iY29tcGxldGUiPT09ci5yZWFkeVN0YXRlfHwibG9hZGluZyIhPT1yLnJlYWR5U3RhdGUmJiFyLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbD9lLnNldFRpbWVvdXQody5yZWFkeSk6KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsXyksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixfKSk7dmFyIHo9ZnVuY3Rpb24oZSx0LG4scixpLG8sYSl7dmFyIHM9MCx1PWUubGVuZ3RoLGw9bnVsbD09bjtpZigib2JqZWN0Ij09PXgobikpe2k9ITA7Zm9yKHMgaW4gbil6KGUsdCxzLG5bc10sITAsbyxhKX1lbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLGcocil8fChhPSEwKSxsJiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwodyhlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG4pKSk7cmV0dXJuIGk/ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxYPS9eLW1zLS8sVT0vLShbYS16XSkvZztmdW5jdGlvbiBWKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBHKGUpe3JldHVybiBlLnJlcGxhY2UoWCwibXMtIikucmVwbGFjZShVLFYpfXZhciBZPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8OT09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gUSgpe3RoaXMuZXhwYW5kbz13LmV4cGFuZG8rUS51aWQrK31RLnVpZD0xLFEucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LFkoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdClpW0codCldPW47ZWxzZSBmb3IociBpbiB0KWlbRyhyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtHKHQpXX0sYWNjZXNzOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkIDA9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmdW5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChHKToodD1HKHQpKWluIHI/W3RdOnQubWF0Y2goTSl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT10fHx3LmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbGV0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb107cmV0dXJuIHZvaWQgMCE9PXQmJiF3LmlzRW1wdHlPYmplY3QodCl9fTt2YXIgSj1uZXcgUSxLPW5ldyBRLFo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxlZT0vW0EtWl0vZztmdW5jdGlvbiB0ZShlKXtyZXR1cm4idHJ1ZSI9PT1lfHwiZmFsc2UiIT09ZSYmKCJudWxsIj09PWU/bnVsbDplPT09K2UrIiI/K2U6Wi50ZXN0KGUpP0pTT04ucGFyc2UoZSk6ZSl9ZnVuY3Rpb24gbmUoZSx0LG4pe3ZhciByO2lmKHZvaWQgMD09PW4mJjE9PT1lLm5vZGVUeXBlKWlmKHI9ImRhdGEtIit0LnJlcGxhY2UoZWUsIi0kJiIpLnRvTG93ZXJDYXNlKCksInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5e249dGUobil9Y2F0Y2goZSl7fUsuc2V0KGUsdCxuKX1lbHNlIG49dm9pZCAwO3JldHVybiBufXcuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBLLmhhc0RhdGEoZSl8fEouaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIEsuYWNjZXNzKGUsdCxuKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe0sucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gSi5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe0oucmVtb3ZlKGUsdCl9fSksdy5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbz10aGlzWzBdLGE9byYmby5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PWUpe2lmKHRoaXMubGVuZ3RoJiYoaT1LLmdldChvKSwxPT09by5ub2RlVHlwZSYmIUouZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7bj1hLmxlbmd0aDt3aGlsZShuLS0pYVtuXSYmMD09PShyPWFbbl0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9RyhyLnNsaWNlKDUpKSxuZShvLHIsaVtyXSkpO0ouc2V0KG8sImhhc0RhdGFBdHRycyIsITApfXJldHVybiBpfXJldHVybiJvYmplY3QiPT10eXBlb2YgZT90aGlzLmVhY2goZnVuY3Rpb24oKXtLLnNldCh0aGlzLGUpfSk6eih0aGlzLGZ1bmN0aW9uKHQpe3ZhciBuO2lmKG8mJnZvaWQgMD09PXQpe2lmKHZvaWQgMCE9PShuPUsuZ2V0KG8sZSkpKXJldHVybiBuO2lmKHZvaWQgMCE9PShuPW5lKG8sZSkpKXJldHVybiBufWVsc2UgdGhpcy5lYWNoKGZ1bmN0aW9uKCl7Sy5zZXQodGhpcyxlLHQpfSl9LG51bGwsdCxhcmd1bWVudHMubGVuZ3RoPjEsbnVsbCwhMCl9LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe0sucmVtb3ZlKHRoaXMsZSl9KX19KSx3LmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1KLmdldChlLHQpLG4mJighcnx8QXJyYXkuaXNBcnJheShuKT9yPUouYWNjZXNzKGUsdCx3Lm1ha2VBcnJheShuKSk6ci5wdXNoKG4pKSxyfHxbXX0sZGVxdWV1ZTpmdW5jdGlvbihlLHQpe3Q9dHx8ImZ4Ijt2YXIgbj13LnF1ZXVlKGUsdCkscj1uLmxlbmd0aCxpPW4uc2hpZnQoKSxvPXcuX3F1ZXVlSG9va3MoZSx0KSxhPWZ1bmN0aW9uKCl7dy5kZXF1ZXVlKGUsdCl9OyJpbnByb2dyZXNzIj09PWkmJihpPW4uc2hpZnQoKSxyLS0pLGkmJigiZngiPT09dCYmbi51bnNoaWZ0KCJpbnByb2dyZXNzIiksZGVsZXRlIG8uc3RvcCxpLmNhbGwoZSxhLG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIEouZ2V0KGUsbil8fEouYWNjZXNzKGUsbix7ZW1wdHk6dy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7Si5yZW1vdmUoZSxbdCsicXVldWUiLG5dKX0pfSl9fSksdy5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCl7dmFyIG49MjtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT0iZngiLG4tLSksYXJndW1lbnRzLmxlbmd0aDxuP3cucXVldWUodGhpc1swXSxlKTp2b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIG49dy5xdWV1ZSh0aGlzLGUsdCk7dy5fcXVldWVIb29rcyh0aGlzLGUpLCJmeCI9PT1lJiYiaW5wcm9ncmVzcyIhPT1uWzBdJiZ3LmRlcXVldWUodGhpcyxlKX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt3LmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9dy5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpdGgobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShhLS0pKG49Si5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHMpKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgcmU9L1srLV0/KD86XGQqXC58KVxkKyg/OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsaWU9bmV3IFJlZ0V4cCgiXig/OihbKy1dKT18KSgiK3JlKyIpKFthLXolXSopJCIsImkiKSxvZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdLGFlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIm5vbmUiPT09KGU9dHx8ZSkuc3R5bGUuZGlzcGxheXx8IiI9PT1lLnN0eWxlLmRpc3BsYXkmJncuY29udGFpbnMoZS5vd25lckRvY3VtZW50LGUpJiYibm9uZSI9PT13LmNzcyhlLCJkaXNwbGF5Iil9LHNlPWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYT17fTtmb3IobyBpbiB0KWFbb109ZS5zdHlsZVtvXSxlLnN0eWxlW29dPXRbb107aT1uLmFwcGx5KGUscnx8W10pO2ZvcihvIGluIHQpZS5zdHlsZVtvXT1hW29dO3JldHVybiBpfTtmdW5jdGlvbiB1ZShlLHQsbixyKXt2YXIgaSxvLGE9MjAscz1yP2Z1bmN0aW9uKCl7cmV0dXJuIHIuY3VyKCl9OmZ1bmN0aW9uKCl7cmV0dXJuIHcuY3NzKGUsdCwiIil9LHU9cygpLGw9biYmblszXXx8KHcuY3NzTnVtYmVyW3RdPyIiOiJweCIpLGM9KHcuY3NzTnVtYmVyW3RdfHwicHgiIT09bCYmK3UpJiZpZS5leGVjKHcuY3NzKGUsdCkpO2lmKGMmJmNbM10hPT1sKXt1Lz0yLGw9bHx8Y1szXSxjPSt1fHwxO3doaWxlKGEtLSl3LnN0eWxlKGUsdCxjK2wpLCgxLW8pKigxLShvPXMoKS91fHwuNSkpPD0wJiYoYT0wKSxjLz1vO2MqPTIsdy5zdHlsZShlLHQsYytsKSxuPW58fFtdfXJldHVybiBuJiYoYz0rY3x8K3V8fDAsaT1uWzFdP2MrKG5bMV0rMSkqblsyXTorblsyXSxyJiYoci51bml0PWwsci5zdGFydD1jLHIuZW5kPWkpKSxpfXZhciBsZT17fTtmdW5jdGlvbiBjZShlKXt2YXIgdCxuPWUub3duZXJEb2N1bWVudCxyPWUubm9kZU5hbWUsaT1sZVtyXTtyZXR1cm4gaXx8KHQ9bi5ib2R5LmFwcGVuZENoaWxkKG4uY3JlYXRlRWxlbWVudChyKSksaT13LmNzcyh0LCJkaXNwbGF5IiksdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLCJub25lIj09PWkmJihpPSJibG9jayIpLGxlW3JdPWksaSl9ZnVuY3Rpb24gZmUoZSx0KXtmb3IodmFyIG4scixpPVtdLG89MCxhPWUubGVuZ3RoO288YTtvKyspKHI9ZVtvXSkuc3R5bGUmJihuPXIuc3R5bGUuZGlzcGxheSx0Pygibm9uZSI9PT1uJiYoaVtvXT1KLmdldChyLCJkaXNwbGF5Iil8fG51bGwsaVtvXXx8KHIuc3R5bGUuZGlzcGxheT0iIikpLCIiPT09ci5zdHlsZS5kaXNwbGF5JiZhZShyKSYmKGlbb109Y2UocikpKToibm9uZSIhPT1uJiYoaVtvXT0ibm9uZSIsSi5zZXQociwiZGlzcGxheSIsbikpKTtmb3Iobz0wO288YTtvKyspbnVsbCE9aVtvXSYmKGVbb10uc3R5bGUuZGlzcGxheT1pW29dKTtyZXR1cm4gZX13LmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBmZSh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBmZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT93KHRoaXMpLnNob3coKTp3KHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBwZT0vXig/OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKykvaSxoZT0vXiR8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2ksZ2U9e29wdGlvbjpbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdLHRoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtnZS5vcHRncm91cD1nZS5vcHRpb24sZ2UudGJvZHk9Z2UudGZvb3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZDtmdW5jdGlvbiB5ZShlLHQpe3ZhciBuO3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmTihlLHQpP3cubWVyZ2UoW2VdLG4pOm59ZnVuY3Rpb24gdmUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspSi5zZXQoZVtuXSwiZ2xvYmFsRXZhbCIsIXR8fEouZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9dmFyIG1lPS88fCYjP1x3KzsvO2Z1bmN0aW9uIHhlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGEscyx1LGwsYyxmPXQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHA9W10sZD0wLGg9ZS5sZW5ndGg7ZDxoO2QrKylpZigobz1lW2RdKXx8MD09PW8paWYoIm9iamVjdCI9PT14KG8pKXcubWVyZ2UocCxvLm5vZGVUeXBlP1tvXTpvKTtlbHNlIGlmKG1lLnRlc3Qobykpe2E9YXx8Zi5hcHBlbmRDaGlsZCh0LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxzPShkZS5leGVjKG8pfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLHU9Z2Vbc118fGdlLl9kZWZhdWx0LGEuaW5uZXJIVE1MPXVbMV0rdy5odG1sUHJlZmlsdGVyKG8pK3VbMl0sYz11WzBdO3doaWxlKGMtLSlhPWEubGFzdENoaWxkO3cubWVyZ2UocCxhLmNoaWxkTm9kZXMpLChhPWYuZmlyc3RDaGlsZCkudGV4dENvbnRlbnQ9IiJ9ZWxzZSBwLnB1c2godC5jcmVhdGVUZXh0Tm9kZShvKSk7Zi50ZXh0Q29udGVudD0iIixkPTA7d2hpbGUobz1wW2QrK10paWYociYmdy5pbkFycmF5KG8scik+LTEpaSYmaS5wdXNoKG8pO2Vsc2UgaWYobD13LmNvbnRhaW5zKG8ub3duZXJEb2N1bWVudCxvKSxhPXllKGYuYXBwZW5kQ2hpbGQobyksInNjcmlwdCIpLGwmJnZlKGEpLG4pe2M9MDt3aGlsZShvPWFbYysrXSloZS50ZXN0KG8udHlwZXx8IiIpJiZuLnB1c2gobyl9cmV0dXJuIGZ9IWZ1bmN0aW9uKCl7dmFyIGU9ci5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkuYXBwZW5kQ2hpbGQoci5jcmVhdGVFbGVtZW50KCJkaXYiKSksdD1yLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7dC5zZXRBdHRyaWJ1dGUoInR5cGUiLCJyYWRpbyIpLHQuc2V0QXR0cmlidXRlKCJjaGVja2VkIiwiY2hlY2tlZCIpLHQuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGUuYXBwZW5kQ2hpbGQodCksaC5jaGVja0Nsb25lPWUuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGUuaW5uZXJIVE1MPSI8dGV4dGFyZWE+eDwvdGV4dGFyZWE+IixoLm5vQ2xvbmVDaGVja2VkPSEhZS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWV9KCk7dmFyIGJlPXIuZG9jdW1lbnRFbGVtZW50LHdlPS9ea2V5LyxUZT0vXig/Om1vdXNlfHBvaW50ZXJ8Y29udGV4dG1lbnV8ZHJhZ3xkcm9wKXxjbGljay8sQ2U9L14oW14uXSopKD86XC4oLispfCkvO2Z1bmN0aW9uIEVlKCl7cmV0dXJuITB9ZnVuY3Rpb24ga2UoKXtyZXR1cm4hMX1mdW5jdGlvbiBTZSgpe3RyeXtyZXR1cm4gci5hY3RpdmVFbGVtZW50fWNhdGNoKGUpe319ZnVuY3Rpb24gRGUoZSx0LG4scixpLG8pe3ZhciBhLHM7aWYoIm9iamVjdCI9PXR5cGVvZiB0KXsic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4sbj12b2lkIDApO2ZvcihzIGluIHQpRGUoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOihpPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9a2U7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIHcoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD13Lmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe3cuZXZlbnQuYWRkKHRoaXMsdCxpLHIsbil9KX13LmV2ZW50PXtnbG9iYWw6e30sYWRkOmZ1bmN0aW9uKGUsdCxuLHIsaSl7dmFyIG8sYSxzLHUsbCxjLGYscCxkLGgsZyx5PUouZ2V0KGUpO2lmKHkpe24uaGFuZGxlciYmKG49KG89bikuaGFuZGxlcixpPW8uc2VsZWN0b3IpLGkmJncuZmluZC5tYXRjaGVzU2VsZWN0b3IoYmUsaSksbi5ndWlkfHwobi5ndWlkPXcuZ3VpZCsrKSwodT15LmV2ZW50cyl8fCh1PXkuZXZlbnRzPXt9KSwoYT15LmhhbmRsZSl8fChhPXkuaGFuZGxlPWZ1bmN0aW9uKHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgdyYmdy5ldmVudC50cmlnZ2VyZWQhPT10LnR5cGU/dy5ldmVudC5kaXNwYXRjaC5hcHBseShlLGFyZ3VtZW50cyk6dm9pZCAwfSksbD0odD0odHx8IiIpLm1hdGNoKE0pfHxbIiJdKS5sZW5ndGg7d2hpbGUobC0tKWQ9Zz0ocz1DZS5leGVjKHRbbF0pfHxbXSlbMV0saD0oc1syXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLGQmJihmPXcuZXZlbnQuc3BlY2lhbFtkXXx8e30sZD0oaT9mLmRlbGVnYXRlVHlwZTpmLmJpbmRUeXBlKXx8ZCxmPXcuZXZlbnQuc3BlY2lhbFtkXXx8e30sYz13LmV4dGVuZCh7dHlwZTpkLG9yaWdUeXBlOmcsZGF0YTpyLGhhbmRsZXI6bixndWlkOm4uZ3VpZCxzZWxlY3RvcjppLG5lZWRzQ29udGV4dDppJiZ3LmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoaSksbmFtZXNwYWNlOmguam9pbigiLiIpfSxvKSwocD11W2RdKXx8KChwPXVbZF09W10pLmRlbGVnYXRlQ291bnQ9MCxmLnNldHVwJiYhMSE9PWYuc2V0dXAuY2FsbChlLHIsaCxhKXx8ZS5hZGRFdmVudExpc3RlbmVyJiZlLmFkZEV2ZW50TGlzdGVuZXIoZCxhKSksZi5hZGQmJihmLmFkZC5jYWxsKGUsYyksYy5oYW5kbGVyLmd1aWR8fChjLmhhbmRsZXIuZ3VpZD1uLmd1aWQpKSxpP3Auc3BsaWNlKHAuZGVsZWdhdGVDb3VudCsrLDAsYyk6cC5wdXNoKGMpLHcuZXZlbnQuZ2xvYmFsW2RdPSEwKX19LHJlbW92ZTpmdW5jdGlvbihlLHQsbixyLGkpe3ZhciBvLGEscyx1LGwsYyxmLHAsZCxoLGcseT1KLmhhc0RhdGEoZSkmJkouZ2V0KGUpO2lmKHkmJih1PXkuZXZlbnRzKSl7bD0odD0odHx8IiIpLm1hdGNoKE0pfHxbIiJdKS5sZW5ndGg7d2hpbGUobC0tKWlmKHM9Q2UuZXhlYyh0W2xdKXx8W10sZD1nPXNbMV0saD0oc1syXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLGQpe2Y9dy5ldmVudC5zcGVjaWFsW2RdfHx7fSxwPXVbZD0ocj9mLmRlbGVnYXRlVHlwZTpmLmJpbmRUeXBlKXx8ZF18fFtdLHM9c1syXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIraC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxhPW89cC5sZW5ndGg7d2hpbGUoby0tKWM9cFtvXSwhaSYmZyE9PWMub3JpZ1R5cGV8fG4mJm4uZ3VpZCE9PWMuZ3VpZHx8cyYmIXMudGVzdChjLm5hbWVzcGFjZSl8fHImJnIhPT1jLnNlbGVjdG9yJiYoIioqIiE9PXJ8fCFjLnNlbGVjdG9yKXx8KHAuc3BsaWNlKG8sMSksYy5zZWxlY3RvciYmcC5kZWxlZ2F0ZUNvdW50LS0sZi5yZW1vdmUmJmYucmVtb3ZlLmNhbGwoZSxjKSk7YSYmIXAubGVuZ3RoJiYoZi50ZWFyZG93biYmITEhPT1mLnRlYXJkb3duLmNhbGwoZSxoLHkuaGFuZGxlKXx8dy5yZW1vdmVFdmVudChlLGQseS5oYW5kbGUpLGRlbGV0ZSB1W2RdKX1lbHNlIGZvcihkIGluIHUpdy5ldmVudC5yZW1vdmUoZSxkK3RbbF0sbixyLCEwKTt3LmlzRW1wdHlPYmplY3QodSkmJkoucmVtb3ZlKGUsImhhbmRsZSBldmVudHMiKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGUpe3ZhciB0PXcuZXZlbnQuZml4KGUpLG4scixpLG8sYSxzLHU9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLGw9KEouZ2V0KHRoaXMsImV2ZW50cyIpfHx7fSlbdC50eXBlXXx8W10sYz13LmV2ZW50LnNwZWNpYWxbdC50eXBlXXx8e307Zm9yKHVbMF09dCxuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl1W25dPWFyZ3VtZW50c1tuXTtpZih0LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsdCkpe3M9dy5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdCxsKSxuPTA7d2hpbGUoKG89c1tuKytdKSYmIXQuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dC5jdXJyZW50VGFyZ2V0PW8uZWxlbSxyPTA7d2hpbGUoKGE9by5oYW5kbGVyc1tyKytdKSYmIXQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl0LnJuYW1lc3BhY2UmJiF0LnJuYW1lc3BhY2UudGVzdChhLm5hbWVzcGFjZSl8fCh0LmhhbmRsZU9iaj1hLHQuZGF0YT1hLmRhdGEsdm9pZCAwIT09KGk9KCh3LmV2ZW50LnNwZWNpYWxbYS5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGEuaGFuZGxlcikuYXBwbHkoby5lbGVtLHUpKSYmITE9PT0odC5yZXN1bHQ9aSkmJih0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNwYXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHQpLHQucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJmUuYnV0dG9uPj0xKSlmb3IoO2whPT10aGlzO2w9bC5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRpc2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/dyhpLHRoaXMpLmluZGV4KGwpPi0xOncuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PHQubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jdGlvbihlLHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh3LkV2ZW50LnByb3RvdHlwZSxlLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6Zyh0KT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdCh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudClyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W2VdfSxzZXQ6ZnVuY3Rpb24odCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsZSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6dH0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbdy5leHBhbmRvXT9lOm5ldyB3LkV2ZW50KGUpfSxzcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sZm9jdXM6e3RyaWdnZXI6ZnVuY3Rpb24oKXtpZih0aGlzIT09U2UoKSYmdGhpcy5mb2N1cylyZXR1cm4gdGhpcy5mb2N1cygpLCExfSxkZWxlZ2F0ZVR5cGU6ImZvY3VzaW4ifSxibHVyOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7aWYodGhpcz09PVNlKCkmJnRoaXMuYmx1cilyZXR1cm4gdGhpcy5ibHVyKCksITF9LGRlbGVnYXRlVHlwZToiZm9jdXNvdXQifSxjbGljazp7dHJpZ2dlcjpmdW5jdGlvbigpe2lmKCJjaGVja2JveCI9PT10aGlzLnR5cGUmJnRoaXMuY2xpY2smJk4odGhpcywiaW5wdXQiKSlyZXR1cm4gdGhpcy5jbGljaygpLCExfSxfZGVmYXVsdDpmdW5jdGlvbihlKXtyZXR1cm4gTihlLnRhcmdldCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVudC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LHcucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmVtb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LHcuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiB3LkV2ZW50KSlyZXR1cm4gbmV3IHcuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm5WYWx1ZT9FZTprZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZ3LmV4dGVuZCh0aGlzLHQpLHRoaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbdy5leHBhbmRvXT0hMH0sdy5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOncuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOmtlLGlzUHJvcGFnYXRpb25TdG9wcGVkOmtlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOmtlLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPUVlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPUVlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD1FZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sdy5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjaGFyQ29kZTohMCxrZXk6ITAsa2V5Q29kZTohMCxidXR0b246ITAsYnV0dG9uczohMCxjbGllbnRYOiEwLGNsaWVudFk6ITAsb2Zmc2V0WDohMCxvZmZzZXRZOiEwLHBvaW50ZXJJZDohMCxwb2ludGVyVHlwZTohMCxzY3JlZW5YOiEwLHNjcmVlblk6ITAsdGFyZ2V0VG91Y2hlczohMCx0b0VsZW1lbnQ6ITAsdG91Y2hlczohMCx3aGljaDpmdW5jdGlvbihlKXt2YXIgdD1lLmJ1dHRvbjtyZXR1cm4gbnVsbD09ZS53aGljaCYmd2UudGVzdChlLnR5cGUpP251bGwhPWUuY2hhckNvZGU/ZS5jaGFyQ29kZTplLmtleUNvZGU6IWUud2hpY2gmJnZvaWQgMCE9PXQmJlRlLnRlc3QoZS50eXBlKT8xJnQ/MToyJnQ/Mzo0JnQ/MjowOmUud2hpY2h9fSx3LmV2ZW50LmFkZFByb3ApLHcuZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCIscG9pbnRlcmVudGVyOiJwb2ludGVyb3ZlciIscG9pbnRlcmxlYXZlOiJwb2ludGVyb3V0In0sZnVuY3Rpb24oZSx0KXt3LmV2ZW50LnNwZWNpYWxbZV09e2RlbGVnYXRlVHlwZTp0LGJpbmRUeXBlOnQsaGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciBuLHI9dGhpcyxpPWUucmVsYXRlZFRhcmdldCxvPWUuaGFuZGxlT2JqO3JldHVybiBpJiYoaT09PXJ8fHcuY29udGFpbnMocixpKSl8fChlLnR5cGU9by5vcmlnVHlwZSxuPW8uaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksZS50eXBlPXQpLG59fX0pLHcuZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gRGUodGhpcyxlLHQsbixyKX0sb25lOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBEZSh0aGlzLGUsdCxuLHIsMSl9LG9mZjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLmhhbmRsZU9iailyZXR1cm4gcj1lLmhhbmRsZU9iaix3KGUuZGVsZWdhdGVUYXJnZXQpLm9mZihyLm5hbWVzcGFjZT9yLm9yaWdUeXBlKyIuIityLm5hbWVzcGFjZTpyLm9yaWdUeXBlLHIuc2VsZWN0b3Isci5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKGkgaW4gZSl0aGlzLm9mZihpLHQsZVtpXSk7cmV0dXJuIHRoaXN9cmV0dXJuITEhPT10JiYiZnVuY3Rpb24iIT10eXBlb2YgdHx8KG49dCx0PXZvaWQgMCksITE9PT1uJiYobj1rZSksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dy5ldmVudC5yZW1vdmUodGhpcyxlLG4sdCl9KX19KTt2YXIgTmU9LzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSopW14+XSopXC8+L2dpLEFlPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLGplPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHFlPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBMZShlLHQpe3JldHVybiBOKGUsInRhYmxlIikmJk4oMTEhPT10Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpP3coZSkuY2hpbGRyZW4oInRib2R5IilbMF18fGU6ZX1mdW5jdGlvbiBIZShlKXtyZXR1cm4gZS50eXBlPShudWxsIT09ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2UudHlwZSxlfWZ1bmN0aW9uIE9lKGUpe3JldHVybiJ0cnVlLyI9PT0oZS50eXBlfHwiIikuc2xpY2UoMCw1KT9lLnR5cGU9ZS50eXBlLnNsaWNlKDUpOmUucmVtb3ZlQXR0cmlidXRlKCJ0eXBlIiksZX1mdW5jdGlvbiBQZShlLHQpe3ZhciBuLHIsaSxvLGEscyx1LGw7aWYoMT09PXQubm9kZVR5cGUpe2lmKEouaGFzRGF0YShlKSYmKG89Si5hY2Nlc3MoZSksYT1KLnNldCh0LG8pLGw9by5ldmVudHMpKXtkZWxldGUgYS5oYW5kbGUsYS5ldmVudHM9e307Zm9yKGkgaW4gbClmb3Iobj0wLHI9bFtpXS5sZW5ndGg7bjxyO24rKyl3LmV2ZW50LmFkZCh0LGksbFtpXVtuXSl9Sy5oYXNEYXRhKGUpJiYocz1LLmFjY2VzcyhlKSx1PXcuZXh0ZW5kKHt9LHMpLEsuc2V0KHQsdSkpfX1mdW5jdGlvbiBNZShlLHQpe3ZhciBuPXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsiaW5wdXQiPT09biYmcGUudGVzdChlLnR5cGUpP3QuY2hlY2tlZD1lLmNoZWNrZWQ6ImlucHV0IiE9PW4mJiJ0ZXh0YXJlYSIhPT1ufHwodC5kZWZhdWx0VmFsdWU9ZS5kZWZhdWx0VmFsdWUpfWZ1bmN0aW9uIFJlKGUsdCxuLHIpe3Q9YS5hcHBseShbXSx0KTt2YXIgaSxvLHMsdSxsLGMsZj0wLHA9ZS5sZW5ndGgsZD1wLTEseT10WzBdLHY9Zyh5KTtpZih2fHxwPjEmJiJzdHJpbmciPT10eXBlb2YgeSYmIWguY2hlY2tDbG9uZSYmamUudGVzdCh5KSlyZXR1cm4gZS5lYWNoKGZ1bmN0aW9uKGkpe3ZhciBvPWUuZXEoaSk7diYmKHRbMF09eS5jYWxsKHRoaXMsaSxvLmh0bWwoKSkpLFJlKG8sdCxuLHIpfSk7aWYocCYmKGk9eGUodCxlWzBdLm93bmVyRG9jdW1lbnQsITEsZSxyKSxvPWkuZmlyc3RDaGlsZCwxPT09aS5jaGlsZE5vZGVzLmxlbmd0aCYmKGk9byksb3x8cikpe2Zvcih1PShzPXcubWFwKHllKGksInNjcmlwdCIpLEhlKSkubGVuZ3RoO2Y8cDtmKyspbD1pLGYhPT1kJiYobD13LmNsb25lKGwsITAsITApLHUmJncubWVyZ2Uocyx5ZShsLCJzY3JpcHQiKSkpLG4uY2FsbChlW2ZdLGwsZik7aWYodSlmb3IoYz1zW3MubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsdy5tYXAocyxPZSksZj0wO2Y8dTtmKyspbD1zW2ZdLGhlLnRlc3QobC50eXBlfHwiIikmJiFKLmFjY2VzcyhsLCJnbG9iYWxFdmFsIikmJncuY29udGFpbnMoYyxsKSYmKGwuc3JjJiYibW9kdWxlIiE9PShsLnR5cGV8fCIiKS50b0xvd2VyQ2FzZSgpP3cuX2V2YWxVcmwmJncuX2V2YWxVcmwobC5zcmMpOm0obC50ZXh0Q29udGVudC5yZXBsYWNlKHFlLCIiKSxjLGwpKX1yZXR1cm4gZX1mdW5jdGlvbiBJZShlLHQsbil7Zm9yKHZhciByLGk9dD93LmZpbHRlcih0LGUpOmUsbz0wO251bGwhPShyPWlbb10pO28rKylufHwxIT09ci5ub2RlVHlwZXx8dy5jbGVhbkRhdGEoeWUocikpLHIucGFyZW50Tm9kZSYmKG4mJncuY29udGFpbnMoci5vd25lckRvY3VtZW50LHIpJiZ2ZSh5ZShyLCJzY3JpcHQiKSksci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHIpKTtyZXR1cm4gZX13LmV4dGVuZCh7aHRtbFByZWZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKE5lLCI8JDE+PC8kMj4iKX0sY2xvbmU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHM9ZS5jbG9uZU5vZGUoITApLHU9dy5jb250YWlucyhlLm93bmVyRG9jdW1lbnQsZSk7aWYoIShoLm5vQ2xvbmVDaGVja2VkfHwxIT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlfHx3LmlzWE1MRG9jKGUpKSlmb3IoYT15ZShzKSxyPTAsaT0obz15ZShlKSkubGVuZ3RoO3I8aTtyKyspTWUob1tyXSxhW3JdKTtpZih0KWlmKG4pZm9yKG89b3x8eWUoZSksYT1hfHx5ZShzKSxyPTAsaT1vLmxlbmd0aDtyPGk7cisrKVBlKG9bcl0sYVtyXSk7ZWxzZSBQZShlLHMpO3JldHVybihhPXllKHMsInNjcmlwdCIpKS5sZW5ndGg+MCYmdmUoYSwhdSYmeWUoZSwic2NyaXB0IikpLHN9LGNsZWFuRGF0YTpmdW5jdGlvbihlKXtmb3IodmFyIHQsbixyLGk9dy5ldmVudC5zcGVjaWFsLG89MDt2b2lkIDAhPT0obj1lW29dKTtvKyspaWYoWShuKSl7aWYodD1uW0ouZXhwYW5kb10pe2lmKHQuZXZlbnRzKWZvcihyIGluIHQuZXZlbnRzKWlbcl0/dy5ldmVudC5yZW1vdmUobixyKTp3LnJlbW92ZUV2ZW50KG4scix0LmhhbmRsZSk7bltKLmV4cGFuZG9dPXZvaWQgMH1uW0suZXhwYW5kb10mJihuW0suZXhwYW5kb109dm9pZCAwKX19fSksdy5mbi5leHRlbmQoe2RldGFjaDpmdW5jdGlvbihlKXtyZXR1cm4gSWUodGhpcyxlLCEwKX0scmVtb3ZlOmZ1bmN0aW9uKGUpe3JldHVybiBJZSh0aGlzLGUpfSx0ZXh0OmZ1bmN0aW9uKGUpe3JldHVybiB6KHRoaXMsZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMD09PWU/dy50ZXh0KHRoaXMpOnRoaXMuZW1wdHkoKS5lYWNoKGZ1bmN0aW9uKCl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fCh0aGlzLnRleHRDb250ZW50PWUpfSl9LG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIFJlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGUpezEhPT10aGlzLm5vZGVUeXBlJiYxMSE9PXRoaXMubm9kZVR5cGUmJjkhPT10aGlzLm5vZGVUeXBlfHxMZSh0aGlzLGUpLmFwcGVuZENoaWxkKGUpfSl9LHByZXBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7aWYoMT09PXRoaXMubm9kZVR5cGV8fDExPT09dGhpcy5ub2RlVHlwZXx8OT09PXRoaXMubm9kZVR5cGUpe3ZhciB0PUxlKHRoaXMsZSk7dC5pbnNlcnRCZWZvcmUoZSx0LmZpcnN0Q2hpbGQpfX0pfSxiZWZvcmU6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcyl9KX0sYWZ0ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gUmUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlJiZ0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGUsdGhpcy5uZXh0U2libGluZyl9KX0sZW1wdHk6ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD0wO251bGwhPShlPXRoaXNbdF0pO3QrKykxPT09ZS5ub2RlVHlwZSYmKHcuY2xlYW5EYXRhKHllKGUsITEpKSxlLnRleHRDb250ZW50PSIiKTtyZXR1cm4gdGhpc30sY2xvbmU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1udWxsIT1lJiZlLHQ9bnVsbD09dD9lOnQsdGhpcy5tYXAoZnVuY3Rpb24oKXtyZXR1cm4gdy5jbG9uZSh0aGlzLGUsdCl9KX0saHRtbDpmdW5jdGlvbihlKXtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXNbMF18fHt9LG49MCxyPXRoaXMubGVuZ3RoO2lmKHZvaWQgMD09PWUmJjE9PT10Lm5vZGVUeXBlKXJldHVybiB0LmlubmVySFRNTDtpZigic3RyaW5nIj09dHlwZW9mIGUmJiFBZS50ZXN0KGUpJiYhZ2VbKGRlLmV4ZWMoZSl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCldKXtlPXcuaHRtbFByZWZpbHRlcihlKTt0cnl7Zm9yKDtuPHI7bisrKTE9PT0odD10aGlzW25dfHx7fSkubm9kZVR5cGUmJih3LmNsZWFuRGF0YSh5ZSh0LCExKSksdC5pbm5lckhUTUw9ZSk7dD0wfWNhdGNoKGUpe319dCYmdGhpcy5lbXB0eSgpLmFwcGVuZChlKX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxyZXBsYWNlV2l0aDpmdW5jdGlvbigpe3ZhciBlPVtdO3JldHVybiBSZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbih0KXt2YXIgbj10aGlzLnBhcmVudE5vZGU7dy5pbkFycmF5KHRoaXMsZSk8MCYmKHcuY2xlYW5EYXRhKHllKHRoaXMpKSxuJiZuLnJlcGxhY2VDaGlsZCh0LHRoaXMpKX0sZSl9fSksdy5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixwcmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRBZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKGUpe2Zvcih2YXIgbixyPVtdLGk9dyhlKSxvPWkubGVuZ3RoLTEsYT0wO2E8PW87YSsrKW49YT09PW8/dGhpczp0aGlzLmNsb25lKCEwKSx3KGlbYV0pW3RdKG4pLHMuYXBwbHkocixuLmdldCgpKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2socil9fSk7dmFyIFdlPW5ldyBSZWdFeHAoIl4oIityZSsiKSg/IXB4KVthLXolXSskIiwiaSIpLCRlPWZ1bmN0aW9uKHQpe3ZhciBuPXQub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4gbiYmbi5vcGVuZXJ8fChuPWUpLG4uZ2V0Q29tcHV0ZWRTdHlsZSh0KX0sQmU9bmV3IFJlZ0V4cChvZS5qb2luKCJ8IiksImkiKTshZnVuY3Rpb24oKXtmdW5jdGlvbiB0KCl7aWYoYyl7bC5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O3dpZHRoOjYwcHg7bWFyZ2luLXRvcDoxcHg7cGFkZGluZzowO2JvcmRlcjowIixjLnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O292ZXJmbG93OnNjcm9sbDttYXJnaW46YXV0bztib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjYwJTt0b3A6MSUiLGJlLmFwcGVuZENoaWxkKGwpLmFwcGVuZENoaWxkKGMpO3ZhciB0PWUuZ2V0Q29tcHV0ZWRTdHlsZShjKTtpPSIxJSIhPT10LnRvcCx1PTEyPT09bih0Lm1hcmdpbkxlZnQpLGMuc3R5bGUucmlnaHQ9IjYwJSIscz0zNj09PW4odC5yaWdodCksbz0zNj09PW4odC53aWR0aCksYy5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGE9MzY9PT1jLm9mZnNldFdpZHRofHwiYWJzb2x1dGUiLGJlLnJlbW92ZUNoaWxkKGwpLGM9bnVsbH19ZnVuY3Rpb24gbihlKXtyZXR1cm4gTWF0aC5yb3VuZChwYXJzZUZsb2F0KGUpKX12YXIgaSxvLGEscyx1LGw9ci5jcmVhdGVFbGVtZW50KCJkaXYiKSxjPXIuY3JlYXRlRWxlbWVudCgiZGl2Iik7Yy5zdHlsZSYmKGMuc3R5bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixjLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3VuZENsaXA9IiIsaC5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PWMuc3R5bGUuYmFja2dyb3VuZENsaXAsdy5leHRlbmQoaCx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLG99LHBpeGVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIHQoKSxzfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIHQoKSxpfSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLHV9LHNjcm9sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gdCgpLGF9fSkpfSgpO2Z1bmN0aW9uIEZlKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuc3R5bGU7cmV0dXJuKG49bnx8JGUoZSkpJiYoIiIhPT0oYT1uLmdldFByb3BlcnR5VmFsdWUodCl8fG5bdF0pfHx3LmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8KGE9dy5zdHlsZShlLHQpKSwhaC5waXhlbEJveFN0eWxlcygpJiZXZS50ZXN0KGEpJiZCZS50ZXN0KHQpJiYocj1zLndpZHRoLGk9cy5taW5XaWR0aCxvPXMubWF4V2lkdGgscy5taW5XaWR0aD1zLm1heFdpZHRoPXMud2lkdGg9YSxhPW4ud2lkdGgscy53aWR0aD1yLHMubWluV2lkdGg9aSxzLm1heFdpZHRoPW8pKSx2b2lkIDAhPT1hP2ErIiI6YX1mdW5jdGlvbiBfZShlLHQpe3JldHVybntnZXQ6ZnVuY3Rpb24oKXtpZighZSgpKXJldHVybih0aGlzLmdldD10KS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZGVsZXRlIHRoaXMuZ2V0fX19dmFyIHplPS9eKG5vbmV8dGFibGUoPyEtY1tlYV0pLispLyxYZT0vXi0tLyxVZT17cG9zaXRpb246ImFic29sdXRlIix2aXNpYmlsaXR5OiJoaWRkZW4iLGRpc3BsYXk6ImJsb2NrIn0sVmU9e2xldHRlclNwYWNpbmc6IjAiLGZvbnRXZWlnaHQ6IjQwMCJ9LEdlPVsiV2Via2l0IiwiTW96IiwibXMiXSxZZT1yLmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlO2Z1bmN0aW9uIFFlKGUpe2lmKGUgaW4gWWUpcmV0dXJuIGU7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSksbj1HZS5sZW5ndGg7d2hpbGUobi0tKWlmKChlPUdlW25dK3QpaW4gWWUpcmV0dXJuIGV9ZnVuY3Rpb24gSmUoZSl7dmFyIHQ9dy5jc3NQcm9wc1tlXTtyZXR1cm4gdHx8KHQ9dy5jc3NQcm9wc1tlXT1RZShlKXx8ZSksdH1mdW5jdGlvbiBLZShlLHQsbil7dmFyIHI9aWUuZXhlYyh0KTtyZXR1cm4gcj9NYXRoLm1heCgwLHJbMl0tKG58fDApKSsoclszXXx8InB4Iik6dH1mdW5jdGlvbiBaZShlLHQsbixyLGksbyl7dmFyIGE9IndpZHRoIj09PXQ/MTowLHM9MCx1PTA7aWYobj09PShyPyJib3JkZXIiOiJjb250ZW50IikpcmV0dXJuIDA7Zm9yKDthPDQ7YSs9MikibWFyZ2luIj09PW4mJih1Kz13LmNzcyhlLG4rb2VbYV0sITAsaSkpLHI/KCJjb250ZW50Ij09PW4mJih1LT13LmNzcyhlLCJwYWRkaW5nIitvZVthXSwhMCxpKSksIm1hcmdpbiIhPT1uJiYodS09dy5jc3MoZSwiYm9yZGVyIitvZVthXSsiV2lkdGgiLCEwLGkpKSk6KHUrPXcuY3NzKGUsInBhZGRpbmciK29lW2FdLCEwLGkpLCJwYWRkaW5nIiE9PW4/dSs9dy5jc3MoZSwiYm9yZGVyIitvZVthXSsiV2lkdGgiLCEwLGkpOnMrPXcuY3NzKGUsImJvcmRlciIrb2VbYV0rIldpZHRoIiwhMCxpKSk7cmV0dXJuIXImJm8+PTAmJih1Kz1NYXRoLm1heCgwLE1hdGguY2VpbChlWyJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpXS1vLXUtcy0uNSkpKSx1fWZ1bmN0aW9uIGV0KGUsdCxuKXt2YXIgcj0kZShlKSxpPUZlKGUsdCxyKSxvPSJib3JkZXItYm94Ij09PXcuY3NzKGUsImJveFNpemluZyIsITEsciksYT1vO2lmKFdlLnRlc3QoaSkpe2lmKCFuKXJldHVybiBpO2k9ImF1dG8ifXJldHVybiBhPWEmJihoLmJveFNpemluZ1JlbGlhYmxlKCl8fGk9PT1lLnN0eWxlW3RdKSwoImF1dG8iPT09aXx8IXBhcnNlRmxvYXQoaSkmJiJpbmxpbmUiPT09dy5jc3MoZSwiZGlzcGxheSIsITEscikpJiYoaT1lWyJvZmZzZXQiK3RbMF0udG9VcHBlckNhc2UoKSt0LnNsaWNlKDEpXSxhPSEwKSwoaT1wYXJzZUZsb2F0KGkpfHwwKStaZShlLHQsbnx8KG8/ImJvcmRlciI6ImNvbnRlbnQiKSxhLHIsaSkrInB4In13LmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPUZlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITAsZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGxpbmVIZWlnaHQ6ITAsb3BhY2l0eTohMCxvcmRlcjohMCxvcnBoYW5zOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMH0sY3NzUHJvcHM6e30sc3R5bGU6ZnVuY3Rpb24oZSx0LG4scil7aWYoZSYmMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZlLnN0eWxlKXt2YXIgaSxvLGEscz1HKHQpLHU9WGUudGVzdCh0KSxsPWUuc3R5bGU7aWYodXx8KHQ9SmUocykpLGE9dy5jc3NIb29rc1t0XXx8dy5jc3NIb29rc1tzXSx2b2lkIDA9PT1uKXJldHVybiBhJiYiZ2V0ImluIGEmJnZvaWQgMCE9PShpPWEuZ2V0KGUsITEscikpP2k6bFt0XTsic3RyaW5nIj09KG89dHlwZW9mIG4pJiYoaT1pZS5leGVjKG4pKSYmaVsxXSYmKG49dWUoZSx0LGkpLG89Im51bWJlciIpLG51bGwhPW4mJm49PT1uJiYoIm51bWJlciI9PT1vJiYobis9aSYmaVszXXx8KHcuY3NzTnVtYmVyW3NdPyIiOiJweCIpKSxoLmNsZWFyQ2xvbmVTdHlsZXx8IiIhPT1ufHwwIT09dC5pbmRleE9mKCJiYWNrZ3JvdW5kIil8fChsW3RdPSJpbmhlcml0IiksYSYmInNldCJpbiBhJiZ2b2lkIDA9PT0obj1hLnNldChlLG4scikpfHwodT9sLnNldFByb3BlcnR5KHQsbik6bFt0XT1uKSl9fSxjc3M6ZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbyxhLHM9Ryh0KTtyZXR1cm4gWGUudGVzdCh0KXx8KHQ9SmUocykpLChhPXcuY3NzSG9va3NbdF18fHcuY3NzSG9va3Nbc10pJiYiZ2V0ImluIGEmJihpPWEuZ2V0KGUsITAsbikpLHZvaWQgMD09PWkmJihpPUZlKGUsdCxyKSksIm5vcm1hbCI9PT1pJiZ0IGluIFZlJiYoaT1WZVt0XSksIiI9PT1ufHxuPyhvPXBhcnNlRmxvYXQoaSksITA9PT1ufHxpc0Zpbml0ZShvKT9vfHwwOmkpOml9fSksdy5lYWNoKFsiaGVpZ2h0Iiwid2lkdGgiXSxmdW5jdGlvbihlLHQpe3cuY3NzSG9va3NbdF09e2dldDpmdW5jdGlvbihlLG4scil7aWYobilyZXR1cm4hemUudGVzdCh3LmNzcyhlLCJkaXNwbGF5IikpfHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoJiZlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoP2V0KGUsdCxyKTpzZShlLFVlLGZ1bmN0aW9uKCl7cmV0dXJuIGV0KGUsdCxyKX0pfSxzZXQ6ZnVuY3Rpb24oZSxuLHIpe3ZhciBpLG89JGUoZSksYT0iYm9yZGVyLWJveCI9PT13LmNzcyhlLCJib3hTaXppbmciLCExLG8pLHM9ciYmWmUoZSx0LHIsYSxvKTtyZXR1cm4gYSYmaC5zY3JvbGxib3hTaXplKCk9PT1vLnBvc2l0aW9uJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSldLXBhcnNlRmxvYXQob1t0XSktWmUoZSx0LCJib3JkZXIiLCExLG8pLS41KSkscyYmKGk9aWUuZXhlYyhuKSkmJiJweCIhPT0oaVszXXx8InB4IikmJihlLnN0eWxlW3RdPW4sbj13LmNzcyhlLHQpKSxLZShlLG4scyl9fX0pLHcuY3NzSG9va3MubWFyZ2luTGVmdD1fZShoLnJlbGlhYmxlTWFyZ2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoRmUoZSwibWFyZ2luTGVmdCIpKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LXNlKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb24oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSx3LmVhY2goe21hcmdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihlLHQpe3cuY3NzSG9va3NbZSt0XT17ZXhwYW5kOmZ1bmN0aW9uKG4pe2Zvcih2YXIgcj0wLGk9e30sbz0ic3RyaW5nIj09dHlwZW9mIG4/bi5zcGxpdCgiICIpOltuXTtyPDQ7cisrKWlbZStvZVtyXSt0XT1vW3JdfHxvW3ItMl18fG9bMF07cmV0dXJuIGl9fSwibWFyZ2luIiE9PWUmJih3LmNzc0hvb2tzW2UrdF0uc2V0PUtlKX0pLHcuZm4uZXh0ZW5kKHtjc3M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPSRlKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPXcuY3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj93LnN0eWxlKGUsdCxuKTp3LmNzcyhlLHQpfSxlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX19KTtmdW5jdGlvbiB0dChlLHQsbixyLGkpe3JldHVybiBuZXcgdHQucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX13LlR3ZWVuPXR0LHR0LnByb3RvdHlwZT17Y29uc3RydWN0b3I6dHQsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wPW4sdGhpcy5lYXNpbmc9aXx8dy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fCh3LmNzc051bWJlcltuXT8iIjoicHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9dHQucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJmUuZ2V0P2UuZ2V0KHRoaXMpOnR0LnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvbihlKXt2YXIgdCxuPXR0LnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRpb24/dGhpcy5wb3M9dD13LmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDEsdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/bi5zZXQodGhpcyk6dHQucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0sdHQucHJvdG90eXBlLmluaXQucHJvdG90eXBlPXR0LnByb3RvdHlwZSx0dC5wcm9wSG9va3M9e19kZWZhdWx0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIDEhPT1lLmVsZW0ubm9kZVR5cGV8fG51bGwhPWUuZWxlbVtlLnByb3BdJiZudWxsPT1lLmVsZW0uc3R5bGVbZS5wcm9wXT9lLmVsZW1bZS5wcm9wXToodD13LmNzcyhlLmVsZW0sZS5wcm9wLCIiKSkmJiJhdXRvIiE9PXQ/dDowfSxzZXQ6ZnVuY3Rpb24oZSl7dy5meC5zdGVwW2UucHJvcF0/dy5meC5zdGVwW2UucHJvcF0oZSk6MSE9PWUuZWxlbS5ub2RlVHlwZXx8bnVsbD09ZS5lbGVtLnN0eWxlW3cuY3NzUHJvcHNbZS5wcm9wXV0mJiF3LmNzc0hvb2tzW2UucHJvcF0/ZS5lbGVtW2UucHJvcF09ZS5ub3c6dy5zdHlsZShlLmVsZW0sZS5wcm9wLGUubm93K2UudW5pdCl9fX0sdHQucHJvcEhvb2tzLnNjcm9sbFRvcD10dC5wcm9wSG9va3Muc2Nyb2xsTGVmdD17c2V0OmZ1bmN0aW9uKGUpe2UuZWxlbS5ub2RlVHlwZSYmZS5lbGVtLnBhcmVudE5vZGUmJihlLmVsZW1bZS5wcm9wXT1lLm5vdyl9fSx3LmVhc2luZz17bGluZWFyOmZ1bmN0aW9uKGUpe3JldHVybiBlfSxzd2luZzpmdW5jdGlvbihlKXtyZXR1cm4uNS1NYXRoLmNvcyhlKk1hdGguUEkpLzJ9LF9kZWZhdWx0OiJzd2luZyJ9LHcuZng9dHQucHJvdG90eXBlLmluaXQsdy5meC5zdGVwPXt9O3ZhciBudCxydCxpdD0vXig/OnRvZ2dsZXxzaG93fGhpZGUpJC8sb3Q9L3F1ZXVlSG9va3MkLztmdW5jdGlvbiBhdCgpe3J0JiYoITE9PT1yLmhpZGRlbiYmZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWU/ZS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoYXQpOmUuc2V0VGltZW91dChhdCx3LmZ4LmludGVydmFsKSx3LmZ4LnRpY2soKSl9ZnVuY3Rpb24gc3QoKXtyZXR1cm4gZS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bnQ9dm9pZCAwfSksbnQ9RGF0ZS5ub3coKX1mdW5jdGlvbiB1dChlLHQpe3ZhciBuLHI9MCxpPXtoZWlnaHQ6ZX07Zm9yKHQ9dD8xOjA7cjw0O3IrPTItdClpWyJtYXJnaW4iKyhuPW9lW3JdKV09aVsicGFkZGluZyIrbl09ZTtyZXR1cm4gdCYmKGkub3BhY2l0eT1pLndpZHRoPWUpLGl9ZnVuY3Rpb24gbHQoZSx0LG4pe2Zvcih2YXIgcixpPShwdC50d2VlbmVyc1t0XXx8W10pLmNvbmNhdChwdC50d2VlbmVyc1siKiJdKSxvPTAsYT1pLmxlbmd0aDtvPGE7bysrKWlmKHI9aVtvXS5jYWxsKG4sdCxlKSlyZXR1cm4gcn1mdW5jdGlvbiBjdChlLHQsbil7dmFyIHIsaSxvLGEscyx1LGwsYyxmPSJ3aWR0aCJpbiB0fHwiaGVpZ2h0ImluIHQscD10aGlzLGQ9e30saD1lLnN0eWxlLGc9ZS5ub2RlVHlwZSYmYWUoZSkseT1KLmdldChlLCJmeHNob3ciKTtuLnF1ZXVlfHwobnVsbD09KGE9dy5fcXVldWVIb29rcyhlLCJmeCIpKS51bnF1ZXVlZCYmKGEudW5xdWV1ZWQ9MCxzPWEuZW1wdHkuZmlyZSxhLmVtcHR5LmZpcmU9ZnVuY3Rpb24oKXthLnVucXVldWVkfHxzKCl9KSxhLnVucXVldWVkKysscC5hbHdheXMoZnVuY3Rpb24oKXtwLmFsd2F5cyhmdW5jdGlvbigpe2EudW5xdWV1ZWQtLSx3LnF1ZXVlKGUsImZ4IikubGVuZ3RofHxhLmVtcHR5LmZpcmUoKX0pfSkpO2ZvcihyIGluIHQpaWYoaT10W3JdLGl0LnRlc3QoaSkpe2lmKGRlbGV0ZSB0W3JdLG89b3x8InRvZ2dsZSI9PT1pLGk9PT0oZz8iaGlkZSI6InNob3ciKSl7aWYoInNob3ciIT09aXx8IXl8fHZvaWQgMD09PXlbcl0pY29udGludWU7Zz0hMH1kW3JdPXkmJnlbcl18fHcuc3R5bGUoZSxyKX1pZigodT0hdy5pc0VtcHR5T2JqZWN0KHQpKXx8IXcuaXNFbXB0eU9iamVjdChkKSl7ZiYmMT09PWUubm9kZVR5cGUmJihuLm92ZXJmbG93PVtoLm92ZXJmbG93LGgub3ZlcmZsb3dYLGgub3ZlcmZsb3dZXSxudWxsPT0obD15JiZ5LmRpc3BsYXkpJiYobD1KLmdldChlLCJkaXNwbGF5IikpLCJub25lIj09PShjPXcuY3NzKGUsImRpc3BsYXkiKSkmJihsP2M9bDooZmUoW2VdLCEwKSxsPWUuc3R5bGUuZGlzcGxheXx8bCxjPXcuY3NzKGUsImRpc3BsYXkiKSxmZShbZV0pKSksKCJpbmxpbmUiPT09Y3x8ImlubGluZS1ibG9jayI9PT1jJiZudWxsIT1sKSYmIm5vbmUiPT09dy5jc3MoZSwiZmxvYXQiKSYmKHV8fChwLmRvbmUoZnVuY3Rpb24oKXtoLmRpc3BsYXk9bH0pLG51bGw9PWwmJihjPWguZGlzcGxheSxsPSJub25lIj09PWM/IiI6YykpLGguZGlzcGxheT0iaW5saW5lLWJsb2NrIikpLG4ub3ZlcmZsb3cmJihoLm92ZXJmbG93PSJoaWRkZW4iLHAuYWx3YXlzKGZ1bmN0aW9uKCl7aC5vdmVyZmxvdz1uLm92ZXJmbG93WzBdLGgub3ZlcmZsb3dYPW4ub3ZlcmZsb3dbMV0saC5vdmVyZmxvd1k9bi5vdmVyZmxvd1syXX0pKSx1PSExO2ZvcihyIGluIGQpdXx8KHk/ImhpZGRlbiJpbiB5JiYoZz15LmhpZGRlbik6eT1KLmFjY2VzcyhlLCJmeHNob3ciLHtkaXNwbGF5Omx9KSxvJiYoeS5oaWRkZW49IWcpLGcmJmZlKFtlXSwhMCkscC5kb25lKGZ1bmN0aW9uKCl7Z3x8ZmUoW2VdKSxKLnJlbW92ZShlLCJmeHNob3ciKTtmb3IociBpbiBkKXcuc3R5bGUoZSxyLGRbcl0pfSkpLHU9bHQoZz95W3JdOjAscixwKSxyIGluIHl8fCh5W3JdPXUuc3RhcnQsZyYmKHUuZW5kPXUuc3RhcnQsdS5zdGFydD0wKSl9fWZ1bmN0aW9uIGZ0KGUsdCl7dmFyIG4scixpLG8sYTtmb3IobiBpbiBlKWlmKHI9RyhuKSxpPXRbcl0sbz1lW25dLEFycmF5LmlzQXJyYXkobykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT13LmNzc0hvb2tzW3JdKSYmImV4cGFuZCJpbiBhKXtvPWEuZXhwYW5kKG8pLGRlbGV0ZSBlW3JdO2ZvcihuIGluIG8pbiBpbiBlfHwoZVtuXT1vW25dLHRbbl09aSl9ZWxzZSB0W3JdPWl9ZnVuY3Rpb24gcHQoZSx0LG4pe3ZhciByLGksbz0wLGE9cHQucHJlZmlsdGVycy5sZW5ndGgscz13LkRlZmVycmVkKCkuYWx3YXlzKGZ1bmN0aW9uKCl7ZGVsZXRlIHUuZWxlbX0pLHU9ZnVuY3Rpb24oKXtpZihpKXJldHVybiExO2Zvcih2YXIgdD1udHx8c3QoKSxuPU1hdGgubWF4KDAsbC5zdGFydFRpbWUrbC5kdXJhdGlvbi10KSxyPTEtKG4vbC5kdXJhdGlvbnx8MCksbz0wLGE9bC50d2VlbnMubGVuZ3RoO288YTtvKyspbC50d2VlbnNbb10ucnVuKHIpO3JldHVybiBzLm5vdGlmeVdpdGgoZSxbbCxyLG5dKSxyPDEmJmE/bjooYXx8cy5ub3RpZnlXaXRoKGUsW2wsMSwwXSkscy5yZXNvbHZlV2l0aChlLFtsXSksITEpfSxsPXMucHJvbWlzZSh7ZWxlbTplLHByb3BzOncuZXh0ZW5kKHt9LHQpLG9wdHM6dy5leHRlbmQoITAse3NwZWNpYWxFYXNpbmc6e30sZWFzaW5nOncuZWFzaW5nLl9kZWZhdWx0fSxuKSxvcmlnaW5hbFByb3BlcnRpZXM6dCxvcmlnaW5hbE9wdGlvbnM6bixzdGFydFRpbWU6bnR8fHN0KCksZHVyYXRpb246bi5kdXJhdGlvbix0d2VlbnM6W10sY3JlYXRlVHdlZW46ZnVuY3Rpb24odCxuKXt2YXIgcj13LlR3ZWVuKGUsbC5vcHRzLHQsbixsLm9wdHMuc3BlY2lhbEVhc2luZ1t0XXx8bC5vcHRzLmVhc2luZyk7cmV0dXJuIGwudHdlZW5zLnB1c2gocikscn0sc3RvcDpmdW5jdGlvbih0KXt2YXIgbj0wLHI9dD9sLnR3ZWVucy5sZW5ndGg6MDtpZihpKXJldHVybiB0aGlzO2ZvcihpPSEwO248cjtuKyspbC50d2VlbnNbbl0ucnVuKDEpO3JldHVybiB0PyhzLm5vdGlmeVdpdGgoZSxbbCwxLDBdKSxzLnJlc29sdmVXaXRoKGUsW2wsdF0pKTpzLnJlamVjdFdpdGgoZSxbbCx0XSksdGhpc319KSxjPWwucHJvcHM7Zm9yKGZ0KGMsbC5vcHRzLnNwZWNpYWxFYXNpbmcpO288YTtvKyspaWYocj1wdC5wcmVmaWx0ZXJzW29dLmNhbGwobCxlLGMsbC5vcHRzKSlyZXR1cm4gZyhyLnN0b3ApJiYody5fcXVldWVIb29rcyhsLmVsZW0sbC5vcHRzLnF1ZXVlKS5zdG9wPXIuc3RvcC5iaW5kKHIpKSxyO3JldHVybiB3Lm1hcChjLGx0LGwpLGcobC5vcHRzLnN0YXJ0KSYmbC5vcHRzLnN0YXJ0LmNhbGwoZSxsKSxsLnByb2dyZXNzKGwub3B0cy5wcm9ncmVzcykuZG9uZShsLm9wdHMuZG9uZSxsLm9wdHMuY29tcGxldGUpLmZhaWwobC5vcHRzLmZhaWwpLmFsd2F5cyhsLm9wdHMuYWx3YXlzKSx3LmZ4LnRpbWVyKHcuZXh0ZW5kKHUse2VsZW06ZSxhbmltOmwscXVldWU6bC5vcHRzLnF1ZXVlfSkpLGx9dy5BbmltYXRpb249dy5leHRlbmQocHQse3R3ZWVuZXJzOnsiKiI6W2Z1bmN0aW9uKGUsdCl7dmFyIG49dGhpcy5jcmVhdGVUd2VlbihlLHQpO3JldHVybiB1ZShuLmVsZW0sZSxpZS5leGVjKHQpLG4pLG59XX0sdHdlZW5lcjpmdW5jdGlvbihlLHQpe2coZSk/KHQ9ZSxlPVsiKiJdKTplPWUubWF0Y2goTSk7Zm9yKHZhciBuLHI9MCxpPWUubGVuZ3RoO3I8aTtyKyspbj1lW3JdLHB0LnR3ZWVuZXJzW25dPXB0LnR3ZWVuZXJzW25dfHxbXSxwdC50d2VlbmVyc1tuXS51bnNoaWZ0KHQpfSxwcmVmaWx0ZXJzOltjdF0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9wdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6cHQucHJlZmlsdGVycy5wdXNoKGUpfX0pLHcuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT93LmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fGcoZSkmJmUsZHVyYXRpb246ZSxlYXNpbmc6biYmdHx8dCYmIWcodCkmJnR9O3JldHVybiB3LmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciIhPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiB3LmZ4LnNwZWVkcz9yLmR1cmF0aW9uPXcuZnguc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249dy5meC5zcGVlZHMuX2RlZmF1bHQpLG51bGwhPXIucXVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZSxyLmNvbXBsZXRlPWZ1bmN0aW9uKCl7ZyhyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmdy5kZXF1ZXVlKHRoaXMsci5xdWV1ZSl9LHJ9LHcuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHtvcGFjaXR5OnR9LGUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT13LmlzRW1wdHlPYmplY3QoZSksbz13LnNwZWVkKHQsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIHQ9cHQodGhpcyx3LmV4dGVuZCh7fSxlKSxvKTsoaXx8Si5nZXQodGhpcywiZmluaXNoIikpJiZ0LnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHwhMT09PW8ucXVldWU/dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihlLHQsbil7dmFyIHI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChuKX07cmV0dXJuInN0cmluZyIhPXR5cGVvZiBlJiYobj10LHQ9ZSxlPXZvaWQgMCksdCYmITEhPT1lJiZ0aGlzLnF1ZXVlKGV8fCJmeCIsW10pLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PSEwLGk9bnVsbCE9ZSYmZSsicXVldWVIb29rcyIsbz13LnRpbWVycyxhPUouZ2V0KHRoaXMpO2lmKGkpYVtpXSYmYVtpXS5zdG9wJiZyKGFbaV0pO2Vsc2UgZm9yKGkgaW4gYSlhW2ldJiZhW2ldLnN0b3AmJm90LnRlc3QoaSkmJnIoYVtpXSk7Zm9yKGk9by5sZW5ndGg7aS0tOylvW2ldLmVsZW0hPT10aGlzfHxudWxsIT1lJiZvW2ldLnF1ZXVlIT09ZXx8KG9baV0uYW5pbS5zdG9wKG4pLHQ9ITEsby5zcGxpY2UoaSwxKSk7IXQmJm58fHcuZGVxdWV1ZSh0aGlzLGUpfSl9LGZpbmlzaDpmdW5jdGlvbihlKXtyZXR1cm4hMSE9PWUmJihlPWV8fCJmeCIpLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0LG49Si5nZXQodGhpcykscj1uW2UrInF1ZXVlIl0saT1uW2UrInF1ZXVlSG9va3MiXSxvPXcudGltZXJzLGE9cj9yLmxlbmd0aDowO2ZvcihuLmZpbmlzaD0hMCx3LnF1ZXVlKHRoaXMsZSxbXSksaSYmaS5zdG9wJiZpLnN0b3AuY2FsbCh0aGlzLCEwKSx0PW8ubGVuZ3RoO3QtLTspb1t0XS5lbGVtPT09dGhpcyYmb1t0XS5xdWV1ZT09PWUmJihvW3RdLmFuaW0uc3RvcCghMCksby5zcGxpY2UodCwxKSk7Zm9yKHQ9MDt0PGE7dCsrKXJbdF0mJnJbdF0uZmluaXNoJiZyW3RdLmZpbmlzaC5jYWxsKHRoaXMpO2RlbGV0ZSBuLmZpbmlzaH0pfX0pLHcuZWFjaChbInRvZ2dsZSIsInNob3ciLCJoaWRlIl0sZnVuY3Rpb24oZSx0KXt2YXIgbj13LmZuW3RdO3cuZm5bdF09ZnVuY3Rpb24oZSxyLGkpe3JldHVybiBudWxsPT1lfHwiYm9vbGVhbiI9PXR5cGVvZiBlP24uYXBwbHkodGhpcyxhcmd1bWVudHMpOnRoaXMuYW5pbWF0ZSh1dCh0LCEwKSxlLHIsaSl9fSksdy5lYWNoKHtzbGlkZURvd246dXQoInNob3ciKSxzbGlkZVVwOnV0KCJoaWRlIiksc2xpZGVUb2dnbGU6dXQoInRvZ2dsZSIpLGZhZGVJbjp7b3BhY2l0eToic2hvdyJ9LGZhZGVPdXQ6e29wYWNpdHk6ImhpZGUifSxmYWRlVG9nZ2xlOntvcGFjaXR5OiJ0b2dnbGUifX0sZnVuY3Rpb24oZSx0KXt3LmZuW2VdPWZ1bmN0aW9uKGUsbixyKXtyZXR1cm4gdGhpcy5hbmltYXRlKHQsZSxuLHIpfX0pLHcudGltZXJzPVtdLHcuZngudGljaz1mdW5jdGlvbigpe3ZhciBlLHQ9MCxuPXcudGltZXJzO2ZvcihudD1EYXRlLm5vdygpO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pKCl8fG5bdF0hPT1lfHxuLnNwbGljZSh0LS0sMSk7bi5sZW5ndGh8fHcuZnguc3RvcCgpLG50PXZvaWQgMH0sdy5meC50aW1lcj1mdW5jdGlvbihlKXt3LnRpbWVycy5wdXNoKGUpLHcuZnguc3RhcnQoKX0sdy5meC5pbnRlcnZhbD0xMyx3LmZ4LnN0YXJ0PWZ1bmN0aW9uKCl7cnR8fChydD0hMCxhdCgpKX0sdy5meC5zdG9wPWZ1bmN0aW9uKCl7cnQ9bnVsbH0sdy5meC5zcGVlZHM9e3Nsb3c6NjAwLGZhc3Q6MjAwLF9kZWZhdWx0OjQwMH0sdy5mbi5kZWxheT1mdW5jdGlvbih0LG4pe3JldHVybiB0PXcuZng/dy5meC5zcGVlZHNbdF18fHQ6dCxuPW58fCJmeCIsdGhpcy5xdWV1ZShuLGZ1bmN0aW9uKG4scil7dmFyIGk9ZS5zZXRUaW1lb3V0KG4sdCk7ci5zdG9wPWZ1bmN0aW9uKCl7ZS5jbGVhclRpbWVvdXQoaSl9fSl9LGZ1bmN0aW9uKCl7dmFyIGU9ci5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLHQ9ci5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKS5hcHBlbmRDaGlsZChyLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKTtlLnR5cGU9ImNoZWNrYm94IixoLmNoZWNrT249IiIhPT1lLnZhbHVlLGgub3B0U2VsZWN0ZWQ9dC5zZWxlY3RlZCwoZT1yLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0IixlLnR5cGU9InJhZGlvIixoLnJhZGlvVmFsdWU9InQiPT09ZS52YWx1ZX0oKTt2YXIgZHQsaHQ9dy5leHByLmF0dHJIYW5kbGU7dy5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLHcuYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dy5yZW1vdmVBdHRyKHRoaXMsZSl9KX19KSx3LmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPWUubm9kZVR5cGU7aWYoMyE9PW8mJjghPT1vJiYyIT09bylyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGUuZ2V0QXR0cmlidXRlP3cucHJvcChlLHQsbik6KDE9PT1vJiZ3LmlzWE1MRG9jKGUpfHwoaT13LmF0dHJIb29rc1t0LnRvTG93ZXJDYXNlKCldfHwody5leHByLm1hdGNoLmJvb2wudGVzdCh0KT9kdDp2b2lkIDApKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgdy5yZW1vdmVBdHRyKGUsdCk6aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6KGUuc2V0QXR0cmlidXRlKHQsbisiIiksbik6aSYmImdldCJpbiBpJiZudWxsIT09KHI9aS5nZXQoZSx0KSk/cjpudWxsPT0ocj13LmZpbmQuYXR0cihlLHQpKT92b2lkIDA6cil9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGUsdCl7aWYoIWgucmFkaW9WYWx1ZSYmInJhZGlvIj09PXQmJk4oZSwiaW5wdXQiKSl7dmFyIG49ZS52YWx1ZTtyZXR1cm4gZS5zZXRBdHRyaWJ1dGUoInR5cGUiLHQpLG4mJihlLnZhbHVlPW4pLHR9fX19LHJlbW92ZUF0dHI6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTAsaT10JiZ0Lm1hdGNoKE0pO2lmKGkmJjE9PT1lLm5vZGVUeXBlKXdoaWxlKG49aVtyKytdKWUucmVtb3ZlQXR0cmlidXRlKG4pfX0pLGR0PXtzZXQ6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiExPT09dD93LnJlbW92ZUF0dHIoZSxuKTplLnNldEF0dHJpYnV0ZShuLG4pLG59fSx3LmVhY2gody5leHByLm1hdGNoLmJvb2wuc291cmNlLm1hdGNoKC9cdysvZyksZnVuY3Rpb24oZSx0KXt2YXIgbj1odFt0XXx8dy5maW5kLmF0dHI7aHRbdF09ZnVuY3Rpb24oZSx0LHIpe3ZhciBpLG8sYT10LnRvTG93ZXJDYXNlKCk7cmV0dXJuIHJ8fChvPWh0W2FdLGh0W2FdPWksaT1udWxsIT1uKGUsdCxyKT9hOm51bGwsaHRbYV09byksaX19KTt2YXIgZ3Q9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSx5dD0vXig/OmF8YXJlYSkkL2k7dy5mbi5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4geih0aGlzLHcucHJvcCxlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXNbdy5wcm9wRml4W2VdfHxlXX0pfX0pLHcuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmdy5pc1hNTERvYyhlKXx8KHQ9dy5wcm9wRml4W3RdfHx0LGk9dy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSYmbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PXcuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/cGFyc2VJbnQodCwxMCk6Z3QudGVzdChlLm5vZGVOYW1lKXx8eXQudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSksaC5vcHRTZWxlY3RlZHx8KHcucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSx3LmVhY2goWyJ0YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe3cucHJvcEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KTtmdW5jdGlvbiB2dChlKXtyZXR1cm4oZS5tYXRjaChNKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiBtdChlKXtyZXR1cm4gZS5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiB4dChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZT9lLm1hdGNoKE0pfHxbXTpbXX13LmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGksbyxhLHMsdT0wO2lmKGcoZSkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbih0KXt3KHRoaXMpLmFkZENsYXNzKGUuY2FsbCh0aGlzLHQsbXQodGhpcykpKX0pO2lmKCh0PXh0KGUpKS5sZW5ndGgpd2hpbGUobj10aGlzW3UrK10paWYoaT1tdChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIrdnQoaSkrIiAiKXthPTA7d2hpbGUobz10W2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpIT09KHM9dnQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscyx1PTA7aWYoZyhlKSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKHQpe3codGhpcykucmVtb3ZlQ2xhc3MoZS5jYWxsKHRoaXMsdCxtdCh0aGlzKSkpfSk7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigodD14dChlKSkubGVuZ3RoKXdoaWxlKG49dGhpc1t1KytdKWlmKGk9bXQobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK3Z0KGkpKyIgIil7YT0wO3doaWxlKG89dFthKytdKXdoaWxlKHIuaW5kZXhPZigiICIrbysiICIpPi0xKXI9ci5yZXBsYWNlKCIgIitvKyIgIiwiICIpO2khPT0ocz12dChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIGUscj0ic3RyaW5nIj09PW58fEFycmF5LmlzQXJyYXkoZSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmcj90P3RoaXMuYWRkQ2xhc3MoZSk6dGhpcy5yZW1vdmVDbGFzcyhlKTpnKGUpP3RoaXMuZWFjaChmdW5jdGlvbihuKXt3KHRoaXMpLnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sbXQodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdCxpLG8sYTtpZihyKXtpPTAsbz13KHRoaXMpLGE9eHQoZSk7d2hpbGUodD1hW2krK10pby5oYXNDbGFzcyh0KT9vLnJlbW92ZUNsYXNzKHQpOm8uYWRkQ2xhc3ModCl9ZWxzZSB2b2lkIDAhPT1lJiYiYm9vbGVhbiIhPT1ufHwoKHQ9bXQodGhpcykpJiZKLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIix0KSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIix0fHwhMT09PWU/IiI6Si5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYoIiAiK3Z0KG10KG4pKSsiICIpLmluZGV4T2YodCk+LTEpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIGJ0PS9cci9nO3cuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9dGhpc1swXTt7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gcj1nKGUpLHRoaXMuZWFjaChmdW5jdGlvbihuKXt2YXIgaTsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PShpPXI/ZS5jYWxsKHRoaXMsbix3KHRoaXMpLnZhbCgpKTplKT9pPSIiOiJudW1iZXIiPT10eXBlb2YgaT9pKz0iIjpBcnJheS5pc0FycmF5KGkpJiYoaT13Lm1hcChpLGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSksKHQ9dy52YWxIb29rc1t0aGlzLnR5cGVdfHx3LnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYic2V0ImluIHQmJnZvaWQgMCE9PXQuc2V0KHRoaXMsaSwidmFsdWUiKXx8KHRoaXMudmFsdWU9aSkpfSk7aWYoaSlyZXR1cm4odD13LnZhbEhvb2tzW2kudHlwZV18fHcudmFsSG9va3NbaS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gdCYmdm9pZCAwIT09KG49dC5nZXQoaSwidmFsdWUiKSk/bjoic3RyaW5nIj09dHlwZW9mKG49aS52YWx1ZSk/bi5yZXBsYWNlKGJ0LCIiKTpudWxsPT1uPyIiOm59fX0pLHcuZXh0ZW5kKHt2YWxIb29rczp7b3B0aW9uOntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9dy5maW5kLmF0dHIoZSwidmFsdWUiKTtyZXR1cm4gbnVsbCE9dD90OnZ0KHcudGV4dChlKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaT1lLm9wdGlvbnMsbz1lLnNlbGVjdGVkSW5kZXgsYT0ic2VsZWN0LW9uZSI9PT1lLnR5cGUscz1hP251bGw6W10sdT1hP28rMTppLmxlbmd0aDtmb3Iocj1vPDA/dTphP286MDtyPHU7cisrKWlmKCgobj1pW3JdKS5zZWxlY3RlZHx8cj09PW8pJiYhbi5kaXNhYmxlZCYmKCFuLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFOKG4ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9dyhuKS52YWwoKSxhKXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gc30sc2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPWUub3B0aW9ucyxvPXcubWFrZUFycmF5KHQpLGE9aS5sZW5ndGg7d2hpbGUoYS0tKSgocj1pW2FdKS5zZWxlY3RlZD13LmluQXJyYXkody52YWxIb29rcy5vcHRpb24uZ2V0KHIpLG8pPi0xKSYmKG49ITApO3JldHVybiBufHwoZS5zZWxlY3RlZEluZGV4PS0xKSxvfX19fSksdy5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7dy52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGUsdCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPXcuaW5BcnJheSh3KGUpLnZhbCgpLHQpPi0xfX0saC5jaGVja09ufHwody52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT1lLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmUudmFsdWV9KX0pLGguZm9jdXNpbj0ib25mb2N1c2luImluIGU7dmFyIHd0PS9eKD86Zm9jdXNpbmZvY3VzfGZvY3Vzb3V0Ymx1cikkLyxUdD1mdW5jdGlvbihlKXtlLnN0b3BQcm9wYWdhdGlvbigpfTt3LmV4dGVuZCh3LmV2ZW50LHt0cmlnZ2VyOmZ1bmN0aW9uKHQsbixpLG8pe3ZhciBhLHMsdSxsLGMscCxkLGgsdj1baXx8cl0sbT1mLmNhbGwodCwidHlwZSIpP3QudHlwZTp0LHg9Zi5jYWxsKHQsIm5hbWVzcGFjZSIpP3QubmFtZXNwYWNlLnNwbGl0KCIuIik6W107aWYocz1oPXU9aT1pfHxyLDMhPT1pLm5vZGVUeXBlJiY4IT09aS5ub2RlVHlwZSYmIXd0LnRlc3QobSt3LmV2ZW50LnRyaWdnZXJlZCkmJihtLmluZGV4T2YoIi4iKT4tMSYmKG09KHg9bS5zcGxpdCgiLiIpKS5zaGlmdCgpLHguc29ydCgpKSxjPW0uaW5kZXhPZigiOiIpPDAmJiJvbiIrbSx0PXRbdy5leHBhbmRvXT90Om5ldyB3LkV2ZW50KG0sIm9iamVjdCI9PXR5cGVvZiB0JiZ0KSx0LmlzVHJpZ2dlcj1vPzI6Myx0Lm5hbWVzcGFjZT14LmpvaW4oIi4iKSx0LnJuYW1lc3BhY2U9dC5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIreC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLHQucmVzdWx0PXZvaWQgMCx0LnRhcmdldHx8KHQudGFyZ2V0PWkpLG49bnVsbD09bj9bdF06dy5tYWtlQXJyYXkobixbdF0pLGQ9dy5ldmVudC5zcGVjaWFsW21dfHx7fSxvfHwhZC50cmlnZ2VyfHwhMSE9PWQudHJpZ2dlci5hcHBseShpLG4pKSl7aWYoIW8mJiFkLm5vQnViYmxlJiYheShpKSl7Zm9yKGw9ZC5kZWxlZ2F0ZVR5cGV8fG0sd3QudGVzdChsK20pfHwocz1zLnBhcmVudE5vZGUpO3M7cz1zLnBhcmVudE5vZGUpdi5wdXNoKHMpLHU9czt1PT09KGkub3duZXJEb2N1bWVudHx8cikmJnYucHVzaCh1LmRlZmF1bHRWaWV3fHx1LnBhcmVudFdpbmRvd3x8ZSl9YT0wO3doaWxlKChzPXZbYSsrXSkmJiF0LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpaD1zLHQudHlwZT1hPjE/bDpkLmJpbmRUeXBlfHxtLChwPShKLmdldChzLCJldmVudHMiKXx8e30pW3QudHlwZV0mJkouZ2V0KHMsImhhbmRsZSIpKSYmcC5hcHBseShzLG4pLChwPWMmJnNbY10pJiZwLmFwcGx5JiZZKHMpJiYodC5yZXN1bHQ9cC5hcHBseShzLG4pLCExPT09dC5yZXN1bHQmJnQucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIHQudHlwZT1tLG98fHQuaXNEZWZhdWx0UHJldmVudGVkKCl8fGQuX2RlZmF1bHQmJiExIT09ZC5fZGVmYXVsdC5hcHBseSh2LnBvcCgpLG4pfHwhWShpKXx8YyYmZyhpW21dKSYmIXkoaSkmJigodT1pW2NdKSYmKGlbY109bnVsbCksdy5ldmVudC50cmlnZ2VyZWQ9bSx0LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkmJmguYWRkRXZlbnRMaXN0ZW5lcihtLFR0KSxpW21dKCksdC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpJiZoLnJlbW92ZUV2ZW50TGlzdGVuZXIobSxUdCksdy5ldmVudC50cmlnZ2VyZWQ9dm9pZCAwLHUmJihpW2NdPXUpKSx0LnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj13LmV4dGVuZChuZXcgdy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTt3LmV2ZW50LnRyaWdnZXIocixudWxsLHQpfX0pLHcuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3cuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIHcuZXZlbnQudHJpZ2dlcihlLHQsbiwhMCl9fSksaC5mb2N1c2lufHx3LmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0aW9uKGUsdCl7dmFyIG49ZnVuY3Rpb24oZSl7dy5ldmVudC5zaW11bGF0ZSh0LGUudGFyZ2V0LHcuZXZlbnQuZml4KGUpKX07dy5ldmVudC5zcGVjaWFsW3RdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciByPXRoaXMub3duZXJEb2N1bWVudHx8dGhpcyxpPUouYWNjZXNzKHIsdCk7aXx8ci5hZGRFdmVudExpc3RlbmVyKGUsbiwhMCksSi5hY2Nlc3Mocix0LChpfHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgcj10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMsaT1KLmFjY2VzcyhyLHQpLTE7aT9KLmFjY2VzcyhyLHQsaSk6KHIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLG4sITApLEoucmVtb3ZlKHIsdCkpfX19KTt2YXIgQ3Q9ZS5sb2NhdGlvbixFdD1EYXRlLm5vdygpLGt0PS9cPy87dy5wYXJzZVhNTD1mdW5jdGlvbih0KXt2YXIgbjtpZighdHx8InN0cmluZyIhPXR5cGVvZiB0KXJldHVybiBudWxsO3RyeXtuPShuZXcgZS5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyh0LCJ0ZXh0L3htbCIpfWNhdGNoKGUpe249dm9pZCAwfXJldHVybiBuJiYhbi5nZXRFbGVtZW50c0J5VGFnTmFtZSgicGFyc2VyZXJyb3IiKS5sZW5ndGh8fHcuZXJyb3IoIkludmFsaWQgWE1MOiAiK3QpLG59O3ZhciBTdD0vXFtcXSQvLER0PS9ccj9cbi9nLE50PS9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSxBdD0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxrZXlnZW4pL2k7ZnVuY3Rpb24ganQoZSx0LG4scil7dmFyIGk7aWYoQXJyYXkuaXNBcnJheSh0KSl3LmVhY2godCxmdW5jdGlvbih0LGkpe258fFN0LnRlc3QoZSk/cihlLGkpOmp0KGUrIlsiKygib2JqZWN0Ij09dHlwZW9mIGkmJm51bGwhPWk/dDoiIikrIl0iLGksbixyKX0pO2Vsc2UgaWYobnx8Im9iamVjdCIhPT14KHQpKXIoZSx0KTtlbHNlIGZvcihpIGluIHQpanQoZSsiWyIraSsiXSIsdFtpXSxuLHIpfXcucGFyYW09ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9ZnVuY3Rpb24oZSx0KXt2YXIgbj1nKHQpP3QoKTp0O3Jbci5sZW5ndGhdPWVuY29kZVVSSUNvbXBvbmVudChlKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KG51bGw9PW4/IiI6bil9O2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhdy5pc1BsYWluT2JqZWN0KGUpKXcuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZvcihuIGluIGUpanQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSx3LmZuLmV4dGVuZCh7c2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIHcucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT13LnByb3AodGhpcywiZWxlbWVudHMiKTtyZXR1cm4gZT93Lm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiF3KHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYmQXQudGVzdCh0aGlzLm5vZGVOYW1lKSYmIU50LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpKX0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPXcodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDpBcnJheS5pc0FycmF5KG4pP3cubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZhbHVlOmUucmVwbGFjZShEdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2UoRHQsIlxyXG4iKX19KS5nZXQoKX19KTt2YXIgcXQ9LyUyMC9nLEx0PS8jLiokLyxIdD0vKFs/Jl0pXz1bXiZdKi8sT3Q9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxQdD0vXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLyxNdD0vXig/OkdFVHxIRUFEKSQvLFJ0PS9eXC9cLy8sSXQ9e30sV3Q9e30sJHQ9IiovIi5jb25jYXQoIioiKSxCdD1yLmNyZWF0ZUVsZW1lbnQoImEiKTtCdC5ocmVmPUN0LmhyZWY7ZnVuY3Rpb24gRnQoZSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7InN0cmluZyIhPXR5cGVvZiB0JiYobj10LHQ9IioiKTt2YXIgcixpPTAsbz10LnRvTG93ZXJDYXNlKCkubWF0Y2goTSl8fFtdO2lmKGcobikpd2hpbGUocj1vW2krK10pIisiPT09clswXT8ocj1yLnNsaWNlKDEpfHwiKiIsKGVbcl09ZVtyXXx8W10pLnVuc2hpZnQobikpOihlW3JdPWVbcl18fFtdKS5wdXNoKG4pfX1mdW5jdGlvbiBfdChlLHQsbixyKXt2YXIgaT17fSxvPWU9PT1XdDtmdW5jdGlvbiBhKHMpe3ZhciB1O3JldHVybiBpW3NdPSEwLHcuZWFjaChlW3NdfHxbXSxmdW5jdGlvbihlLHMpe3ZhciBsPXModCxuLHIpO3JldHVybiJzdHJpbmciIT10eXBlb2YgbHx8b3x8aVtsXT9vPyEodT1sKTp2b2lkIDA6KHQuZGF0YVR5cGVzLnVuc2hpZnQobCksYShsKSwhMSl9KSx1fXJldHVybiBhKHQuZGF0YVR5cGVzWzBdKXx8IWlbIioiXSYmYSgiKiIpfWZ1bmN0aW9uIHp0KGUsdCl7dmFyIG4scixpPXcuYWpheFNldHRpbmdzLmZsYXRPcHRpb25zfHx7fTtmb3IobiBpbiB0KXZvaWQgMCE9PXRbbl0mJigoaVtuXT9lOnJ8fChyPXt9KSlbbl09dFtuXSk7cmV0dXJuIHImJncuZXh0ZW5kKCEwLGUsciksZX1mdW5jdGlvbiBYdChlLHQsbil7dmFyIHIsaSxvLGEscz1lLmNvbnRlbnRzLHU9ZS5kYXRhVHlwZXM7d2hpbGUoIioiPT09dVswXSl1LnNoaWZ0KCksdm9pZCAwPT09ciYmKHI9ZS5taW1lVHlwZXx8dC5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIikpO2lmKHIpZm9yKGkgaW4gcylpZihzW2ldJiZzW2ldLnRlc3Qocikpe3UudW5zaGlmdChpKTticmVha31pZih1WzBdaW4gbilvPXVbMF07ZWxzZXtmb3IoaSBpbiBuKXtpZighdVswXXx8ZS5jb252ZXJ0ZXJzW2krIiAiK3VbMF1dKXtvPWk7YnJlYWt9YXx8KGE9aSl9bz1vfHxhfWlmKG8pcmV0dXJuIG8hPT11WzBdJiZ1LnVuc2hpZnQobyksbltvXX1mdW5jdGlvbiBVdChlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZm9yKGEgaW4gZS5jb252ZXJ0ZXJzKWxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNoaWZ0KCk7d2hpbGUobylpZihlLnJlc3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT10KSwhdSYmciYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy5zaGlmdCgpKWlmKCIqIj09PW8pbz11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK29dfHxsWyIqICIrb10pKWZvcihpIGluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsiICIrc1swXV18fGxbIiogIitzWzBdXSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5zaGlmdChzWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeXt0PWEodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJzaW9uIGZyb20gIit1KyIgdG8gIitvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fXcuZXh0ZW5kKHthY3RpdmU6MCxsYXN0TW9kaWZpZWQ6e30sZXRhZzp7fSxhamF4U2V0dGluZ3M6e3VybDpDdC5ocmVmLHR5cGU6IkdFVCIsaXNMb2NhbDpQdC50ZXN0KEN0LnByb3RvY29sKSxnbG9iYWw6ITAscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsYWNjZXB0czp7IioiOiR0LHRleHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIseG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixqc29uOiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L2phdmFzY3JpcHQifSxjb250ZW50czp7eG1sOi9cYnhtbFxiLyxodG1sOi9cYmh0bWwvLGpzb246L1xianNvblxiL30scmVzcG9uc2VGaWVsZHM6e3htbDoicmVzcG9uc2VYTUwiLHRleHQ6InJlc3BvbnNlVGV4dCIsanNvbjoicmVzcG9uc2VKU09OIn0sY29udmVydGVyczp7IiogdGV4dCI6U3RyaW5nLCJ0ZXh0IGh0bWwiOiEwLCJ0ZXh0IGpzb24iOkpTT04ucGFyc2UsInRleHQgeG1sIjp3LnBhcnNlWE1MfSxmbGF0T3B0aW9uczp7dXJsOiEwLGNvbnRleHQ6ITB9fSxhamF4U2V0dXA6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD96dCh6dChlLHcuYWpheFNldHRpbmdzKSx0KTp6dCh3LmFqYXhTZXR0aW5ncyxlKX0sYWpheFByZWZpbHRlcjpGdChJdCksYWpheFRyYW5zcG9ydDpGdChXdCksYWpheDpmdW5jdGlvbih0LG4peyJvYmplY3QiPT10eXBlb2YgdCYmKG49dCx0PXZvaWQgMCksbj1ufHx7fTt2YXIgaSxvLGEscyx1LGwsYyxmLHAsZCxoPXcuYWpheFNldHVwKHt9LG4pLGc9aC5jb250ZXh0fHxoLHk9aC5jb250ZXh0JiYoZy5ub2RlVHlwZXx8Zy5qcXVlcnkpP3coZyk6dy5ldmVudCx2PXcuRGVmZXJyZWQoKSxtPXcuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHg9aC5zdGF0dXNDb2RlfHx7fSxiPXt9LFQ9e30sQz0iY2FuY2VsZWQiLEU9e3JlYWR5U3RhdGU6MCxnZXRSZXNwb25zZUhlYWRlcjpmdW5jdGlvbihlKXt2YXIgdDtpZihjKXtpZighcyl7cz17fTt3aGlsZSh0PU90LmV4ZWMoYSkpc1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl19dD1zW2UudG9Mb3dlckNhc2UoKV19cmV0dXJuIG51bGw9PXQ/bnVsbDp0fSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gYz9hOm51bGx9LHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09YyYmKGU9VFtlLnRvTG93ZXJDYXNlKCldPVRbZS50b0xvd2VyQ2FzZSgpXXx8ZSxiW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWMmJihoLm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoZSlpZihjKUUuYWx3YXlzKGVbRS5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpeFt0XT1beFt0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8QztyZXR1cm4gaSYmaS5hYm9ydCh0KSxrKDAsdCksdGhpc319O2lmKHYucHJvbWlzZShFKSxoLnVybD0oKHR8fGgudXJsfHxDdC5ocmVmKSsiIikucmVwbGFjZShSdCxDdC5wcm90b2NvbCsiLy8iKSxoLnR5cGU9bi5tZXRob2R8fG4udHlwZXx8aC5tZXRob2R8fGgudHlwZSxoLmRhdGFUeXBlcz0oaC5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm1hdGNoKE0pfHxbIiJdLG51bGw9PWguY3Jvc3NEb21haW4pe2w9ci5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e2wuaHJlZj1oLnVybCxsLmhyZWY9bC5ocmVmLGguY3Jvc3NEb21haW49QnQucHJvdG9jb2wrIi8vIitCdC5ob3N0IT1sLnByb3RvY29sKyIvLyIrbC5ob3N0fWNhdGNoKGUpe2guY3Jvc3NEb21haW49ITB9fWlmKGguZGF0YSYmaC5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBoLmRhdGEmJihoLmRhdGE9dy5wYXJhbShoLmRhdGEsaC50cmFkaXRpb25hbCkpLF90KEl0LGgsbixFKSxjKXJldHVybiBFOyhmPXcuZXZlbnQmJmguZ2xvYmFsKSYmMD09dy5hY3RpdmUrKyYmdy5ldmVudC50cmlnZ2VyKCJhamF4U3RhcnQiKSxoLnR5cGU9aC50eXBlLnRvVXBwZXJDYXNlKCksaC5oYXNDb250ZW50PSFNdC50ZXN0KGgudHlwZSksbz1oLnVybC5yZXBsYWNlKEx0LCIiKSxoLmhhc0NvbnRlbnQ/aC5kYXRhJiZoLnByb2Nlc3NEYXRhJiYwPT09KGguY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmKGguZGF0YT1oLmRhdGEucmVwbGFjZShxdCwiKyIpKTooZD1oLnVybC5zbGljZShvLmxlbmd0aCksaC5kYXRhJiYoaC5wcm9jZXNzRGF0YXx8InN0cmluZyI9PXR5cGVvZiBoLmRhdGEpJiYobys9KGt0LnRlc3Qobyk/IiYiOiI/IikraC5kYXRhLGRlbGV0ZSBoLmRhdGEpLCExPT09aC5jYWNoZSYmKG89by5yZXBsYWNlKEh0LCIkMSIpLGQ9KGt0LnRlc3Qobyk/IiYiOiI/IikrIl89IitFdCsrK2QpLGgudXJsPW8rZCksaC5pZk1vZGlmaWVkJiYody5sYXN0TW9kaWZpZWRbb10mJkUuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLHcubGFzdE1vZGlmaWVkW29dKSx3LmV0YWdbb10mJkUuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsdy5ldGFnW29dKSksKGguZGF0YSYmaC5oYXNDb250ZW50JiYhMSE9PWguY29udGVudFR5cGV8fG4uY29udGVudFR5cGUpJiZFLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsaC5jb250ZW50VHlwZSksRS5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLGguZGF0YVR5cGVzWzBdJiZoLmFjY2VwdHNbaC5kYXRhVHlwZXNbMF1dP2guYWNjZXB0c1toLmRhdGFUeXBlc1swXV0rKCIqIiE9PWguZGF0YVR5cGVzWzBdPyIsICIrJHQrIjsgcT0wLjAxIjoiIik6aC5hY2NlcHRzWyIqIl0pO2ZvcihwIGluIGguaGVhZGVycylFLnNldFJlcXVlc3RIZWFkZXIocCxoLmhlYWRlcnNbcF0pO2lmKGguYmVmb3JlU2VuZCYmKCExPT09aC5iZWZvcmVTZW5kLmNhbGwoZyxFLGgpfHxjKSlyZXR1cm4gRS5hYm9ydCgpO2lmKEM9ImFib3J0IixtLmFkZChoLmNvbXBsZXRlKSxFLmRvbmUoaC5zdWNjZXNzKSxFLmZhaWwoaC5lcnJvciksaT1fdChXdCxoLG4sRSkpe2lmKEUucmVhZHlTdGF0ZT0xLGYmJnkudHJpZ2dlcigiYWpheFNlbmQiLFtFLGhdKSxjKXJldHVybiBFO2guYXN5bmMmJmgudGltZW91dD4wJiYodT1lLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtFLmFib3J0KCJ0aW1lb3V0Iil9LGgudGltZW91dCkpO3RyeXtjPSExLGkuc2VuZChiLGspfWNhdGNoKGUpe2lmKGMpdGhyb3cgZTtrKC0xLGUpfX1lbHNlIGsoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIGsodCxuLHIscyl7dmFyIGwscCxkLGIsVCxDPW47Y3x8KGM9ITAsdSYmZS5jbGVhclRpbWVvdXQodSksaT12b2lkIDAsYT1zfHwiIixFLnJlYWR5U3RhdGU9dD4wPzQ6MCxsPXQ+PTIwMCYmdDwzMDB8fDMwND09PXQsciYmKGI9WHQoaCxFLHIpKSxiPVV0KGgsYixFLGwpLGw/KGguaWZNb2RpZmllZCYmKChUPUUuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKSkmJih3Lmxhc3RNb2RpZmllZFtvXT1UKSwoVD1FLmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIikpJiYody5ldGFnW29dPVQpKSwyMDQ9PT10fHwiSEVBRCI9PT1oLnR5cGU/Qz0ibm9jb250ZW50IjozMDQ9PT10P0M9Im5vdG1vZGlmaWVkIjooQz1iLnN0YXRlLHA9Yi5kYXRhLGw9IShkPWIuZXJyb3IpKSk6KGQ9QywhdCYmQ3x8KEM9ImVycm9yIix0PDAmJih0PTApKSksRS5zdGF0dXM9dCxFLnN0YXR1c1RleHQ9KG58fEMpKyIiLGw/di5yZXNvbHZlV2l0aChnLFtwLEMsRV0pOnYucmVqZWN0V2l0aChnLFtFLEMsZF0pLEUuc3RhdHVzQ29kZSh4KSx4PXZvaWQgMCxmJiZ5LnRyaWdnZXIobD8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFtFLGgsbD9wOmRdKSxtLmZpcmVXaXRoKGcsW0UsQ10pLGYmJih5LnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW0UsaF0pLC0tdy5hY3RpdmV8fHcuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiBFfSxnZXRKU09OOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdy5nZXQoZSx0LG4sImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHcuZ2V0KGUsdm9pZCAwLHQsInNjcmlwdCIpfX0pLHcuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihlLHQpe3dbdF09ZnVuY3Rpb24oZSxuLHIsaSl7cmV0dXJuIGcobikmJihpPWl8fHIscj1uLG49dm9pZCAwKSx3LmFqYXgody5leHRlbmQoe3VybDplLHR5cGU6dCxkYXRhVHlwZTppLGRhdGE6bixzdWNjZXNzOnJ9LHcuaXNQbGFpbk9iamVjdChlKSYmZSkpfX0pLHcuX2V2YWxVcmw9ZnVuY3Rpb24oZSl7cmV0dXJuIHcuYWpheCh7dXJsOmUsdHlwZToiR0VUIixkYXRhVHlwZToic2NyaXB0IixjYWNoZTohMCxhc3luYzohMSxnbG9iYWw6ITEsInRocm93cyI6ITB9KX0sdy5mbi5leHRlbmQoe3dyYXBBbGw6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHRoaXNbMF0mJihnKGUpJiYoZT1lLmNhbGwodGhpc1swXSkpLHQ9dyhlLHRoaXNbMF0ub3duZXJEb2N1bWVudCkuZXEoMCkuY2xvbmUoITApLHRoaXNbMF0ucGFyZW50Tm9kZSYmdC5pbnNlcnRCZWZvcmUodGhpc1swXSksdC5tYXAoZnVuY3Rpb24oKXt2YXIgZT10aGlzO3doaWxlKGUuZmlyc3RFbGVtZW50Q2hpbGQpZT1lLmZpcnN0RWxlbWVudENoaWxkO3JldHVybiBlfSkuYXBwZW5kKHRoaXMpKSx0aGlzfSx3cmFwSW5uZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGcoZSk/dGhpcy5lYWNoKGZ1bmN0aW9uKHQpe3codGhpcykud3JhcElubmVyKGUuY2FsbCh0aGlzLHQpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PXcodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQuYXBwZW5kKGUpfSl9LHdyYXA6ZnVuY3Rpb24oZSl7dmFyIHQ9ZyhlKTtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKG4pe3codGhpcykud3JhcEFsbCh0P2UuY2FsbCh0aGlzLG4pOmUpfSl9LHVud3JhcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wYXJlbnQoZSkubm90KCJib2R5IikuZWFjaChmdW5jdGlvbigpe3codGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pLHRoaXN9fSksdy5leHByLnBzZXVkb3MuaGlkZGVuPWZ1bmN0aW9uKGUpe3JldHVybiF3LmV4cHIucHNldWRvcy52aXNpYmxlKGUpfSx3LmV4cHIucHNldWRvcy52aXNpYmxlPWZ1bmN0aW9uKGUpe3JldHVybiEhKGUub2Zmc2V0V2lkdGh8fGUub2Zmc2V0SGVpZ2h0fHxlLmdldENsaWVudFJlY3RzKCkubGVuZ3RoKX0sdy5hamF4U2V0dGluZ3MueGhyPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgZS5YTUxIdHRwUmVxdWVzdH1jYXRjaChlKXt9fTt2YXIgVnQ9ezA6MjAwLDEyMjM6MjA0fSxHdD13LmFqYXhTZXR0aW5ncy54aHIoKTtoLmNvcnM9ISFHdCYmIndpdGhDcmVkZW50aWFscyJpbiBHdCxoLmFqYXg9R3Q9ISFHdCx3LmFqYXhUcmFuc3BvcnQoZnVuY3Rpb24odCl7dmFyIG4scjtpZihoLmNvcnN8fEd0JiYhdC5jcm9zc0RvbWFpbilyZXR1cm57c2VuZDpmdW5jdGlvbihpLG8pe3ZhciBhLHM9dC54aHIoKTtpZihzLm9wZW4odC50eXBlLHQudXJsLHQuYXN5bmMsdC51c2VybmFtZSx0LnBhc3N3b3JkKSx0LnhockZpZWxkcylmb3IoYSBpbiB0LnhockZpZWxkcylzW2FdPXQueGhyRmllbGRzW2FdO3QubWltZVR5cGUmJnMub3ZlcnJpZGVNaW1lVHlwZSYmcy5vdmVycmlkZU1pbWVUeXBlKHQubWltZVR5cGUpLHQuY3Jvc3NEb21haW58fGlbIlgtUmVxdWVzdGVkLVdpdGgiXXx8KGlbIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTtmb3IoYSBpbiBpKXMuc2V0UmVxdWVzdEhlYWRlcihhLGlbYV0pO249ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7biYmKG49cj1zLm9ubG9hZD1zLm9uZXJyb3I9cy5vbmFib3J0PXMub250aW1lb3V0PXMub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsImFib3J0Ij09PWU/cy5hYm9ydCgpOiJlcnJvciI9PT1lPyJudW1iZXIiIT10eXBlb2Ygcy5zdGF0dXM/bygwLCJlcnJvciIpOm8ocy5zdGF0dXMscy5zdGF0dXNUZXh0KTpvKFZ0W3Muc3RhdHVzXXx8cy5zdGF0dXMscy5zdGF0dXNUZXh0LCJ0ZXh0IiE9PShzLnJlc3BvbnNlVHlwZXx8InRleHQiKXx8InN0cmluZyIhPXR5cGVvZiBzLnJlc3BvbnNlVGV4dD97YmluYXJ5OnMucmVzcG9uc2V9Ont0ZXh0OnMucmVzcG9uc2VUZXh0fSxzLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSl9fSxzLm9ubG9hZD1uKCkscj1zLm9uZXJyb3I9cy5vbnRpbWVvdXQ9bigiZXJyb3IiKSx2b2lkIDAhPT1zLm9uYWJvcnQ/cy5vbmFib3J0PXI6cy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09cy5yZWFkeVN0YXRlJiZlLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtuJiZyKCl9KX0sbj1uKCJhYm9ydCIpO3RyeXtzLnNlbmQodC5oYXNDb250ZW50JiZ0LmRhdGF8fG51bGwpfWNhdGNoKGUpe2lmKG4pdGhyb3cgZX19LGFib3J0OmZ1bmN0aW9uKCl7biYmbigpfX19KSx3LmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7ZS5jcm9zc0RvbWFpbiYmKGUuY29udGVudHMuc2NyaXB0PSExKX0pLHcuYWpheFNldHVwKHthY2NlcHRzOntzY3JpcHQ6InRleHQvamF2YXNjcmlwdCwgYXBwbGljYXRpb24vamF2YXNjcmlwdCwgYXBwbGljYXRpb24vZWNtYXNjcmlwdCwgYXBwbGljYXRpb24veC1lY21hc2NyaXB0In0sY29udGVudHM6e3NjcmlwdDovXGIoPzpqYXZhfGVjbWEpc2NyaXB0XGIvfSxjb252ZXJ0ZXJzOnsidGV4dCBzY3JpcHQiOmZ1bmN0aW9uKGUpe3JldHVybiB3Lmdsb2JhbEV2YWwoZSksZX19fSksdy5hamF4UHJlZmlsdGVyKCJzY3JpcHQiLGZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUuY2FjaGUmJihlLmNhY2hlPSExKSxlLmNyb3NzRG9tYWluJiYoZS50eXBlPSJHRVQiKX0pLHcuYWpheFRyYW5zcG9ydCgic2NyaXB0IixmdW5jdGlvbihlKXtpZihlLmNyb3NzRG9tYWluKXt2YXIgdCxuO3JldHVybntzZW5kOmZ1bmN0aW9uKGksbyl7dD13KCI8c2NyaXB0PiIpLnByb3Aoe2NoYXJzZXQ6ZS5zY3JpcHRDaGFyc2V0LHNyYzplLnVybH0pLm9uKCJsb2FkIGVycm9yIixuPWZ1bmN0aW9uKGUpe3QucmVtb3ZlKCksbj1udWxsLGUmJm8oImVycm9yIj09PWUudHlwZT80MDQ6MjAwLGUudHlwZSl9KSxyLmhlYWQuYXBwZW5kQ2hpbGQodFswXSl9LGFib3J0OmZ1bmN0aW9uKCl7biYmbigpfX19fSk7dmFyIFl0PVtdLFF0PS8oPSlcPyg/PSZ8JCl8XD9cPy87dy5hamF4U2V0dXAoe2pzb25wOiJjYWxsYmFjayIsanNvbnBDYWxsYmFjazpmdW5jdGlvbigpe3ZhciBlPVl0LnBvcCgpfHx3LmV4cGFuZG8rIl8iK0V0Kys7cmV0dXJuIHRoaXNbZV09ITAsZX19KSx3LmFqYXhQcmVmaWx0ZXIoImpzb24ganNvbnAiLGZ1bmN0aW9uKHQsbixyKXt2YXIgaSxvLGEscz0hMSE9PXQuanNvbnAmJihRdC50ZXN0KHQudXJsKT8idXJsIjoic3RyaW5nIj09dHlwZW9mIHQuZGF0YSYmMD09PSh0LmNvbnRlbnRUeXBlfHwiIikuaW5kZXhPZigiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikmJlF0LnRlc3QodC5kYXRhKSYmImRhdGEiKTtpZihzfHwianNvbnAiPT09dC5kYXRhVHlwZXNbMF0pcmV0dXJuIGk9dC5qc29ucENhbGxiYWNrPWcodC5qc29ucENhbGxiYWNrKT90Lmpzb25wQ2FsbGJhY2soKTp0Lmpzb25wQ2FsbGJhY2sscz90W3NdPXRbc10ucmVwbGFjZShRdCwiJDEiK2kpOiExIT09dC5qc29ucCYmKHQudXJsKz0oa3QudGVzdCh0LnVybCk/IiYiOiI/IikrdC5qc29ucCsiPSIraSksdC5jb252ZXJ0ZXJzWyJzY3JpcHQganNvbiJdPWZ1bmN0aW9uKCl7cmV0dXJuIGF8fHcuZXJyb3IoaSsiIHdhcyBub3QgY2FsbGVkIiksYVswXX0sdC5kYXRhVHlwZXNbMF09Impzb24iLG89ZVtpXSxlW2ldPWZ1bmN0aW9uKCl7YT1hcmd1bWVudHN9LHIuYWx3YXlzKGZ1bmN0aW9uKCl7dm9pZCAwPT09bz93KGUpLnJlbW92ZVByb3AoaSk6ZVtpXT1vLHRbaV0mJih0Lmpzb25wQ2FsbGJhY2s9bi5qc29ucENhbGxiYWNrLFl0LnB1c2goaSkpLGEmJmcobykmJm8oYVswXSksYT1vPXZvaWQgMH0pLCJzY3JpcHQifSksaC5jcmVhdGVIVE1MRG9jdW1lbnQ9ZnVuY3Rpb24oKXt2YXIgZT1yLmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIikuYm9keTtyZXR1cm4gZS5pbm5lckhUTUw9Ijxmb3JtPjwvZm9ybT48Zm9ybT48L2Zvcm0+IiwyPT09ZS5jaGlsZE5vZGVzLmxlbmd0aH0oKSx3LnBhcnNlSFRNTD1mdW5jdGlvbihlLHQsbil7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybltdOyJib29sZWFuIj09dHlwZW9mIHQmJihuPXQsdD0hMSk7dmFyIGksbyxhO3JldHVybiB0fHwoaC5jcmVhdGVIVE1MRG9jdW1lbnQ/KChpPSh0PXIuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCgiYmFzZSIpKS5ocmVmPXIubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQoaSkpOnQ9ciksbz1BLmV4ZWMoZSksYT0hbiYmW10sbz9bdC5jcmVhdGVFbGVtZW50KG9bMV0pXToobz14ZShbZV0sdCxhKSxhJiZhLmxlbmd0aCYmdyhhKS5yZW1vdmUoKSx3Lm1lcmdlKFtdLG8uY2hpbGROb2RlcykpfSx3LmZuLmxvYWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhPXRoaXMscz1lLmluZGV4T2YoIiAiKTtyZXR1cm4gcz4tMSYmKHI9dnQoZS5zbGljZShzKSksZT1lLnNsaWNlKDAscykpLGcodCk/KG49dCx0PXZvaWQgMCk6dCYmIm9iamVjdCI9PXR5cGVvZiB0JiYoaT0iUE9TVCIpLGEubGVuZ3RoPjAmJncuYWpheCh7dXJsOmUsdHlwZTppfHwiR0VUIixkYXRhVHlwZToiaHRtbCIsZGF0YTp0fSkuZG9uZShmdW5jdGlvbihlKXtvPWFyZ3VtZW50cyxhLmh0bWwocj93KCI8ZGl2PiIpLmFwcGVuZCh3LnBhcnNlSFRNTChlKSkuZmluZChyKTplKX0pLmFsd2F5cyhuJiZmdW5jdGlvbihlLHQpe2EuZWFjaChmdW5jdGlvbigpe24uYXBwbHkodGhpcyxvfHxbZS5yZXNwb25zZVRleHQsdCxlXSl9KX0pLHRoaXN9LHcuZWFjaChbImFqYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9yIiwiYWpheFN1Y2Nlc3MiLCJhamF4U2VuZCJdLGZ1bmN0aW9uKGUsdCl7dy5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5vbih0LGUpfX0pLHcuZXhwci5wc2V1ZG9zLmFuaW1hdGVkPWZ1bmN0aW9uKGUpe3JldHVybiB3LmdyZXAody50aW1lcnMsZnVuY3Rpb24odCl7cmV0dXJuIGU9PT10LmVsZW19KS5sZW5ndGh9LHcub2Zmc2V0PXtzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdSxsLGM9dy5jc3MoZSwicG9zaXRpb24iKSxmPXcoZSkscD17fTsic3RhdGljIj09PWMmJihlLnN0eWxlLnBvc2l0aW9uPSJyZWxhdGl2ZSIpLHM9Zi5vZmZzZXQoKSxvPXcuY3NzKGUsInRvcCIpLHU9dy5jc3MoZSwibGVmdCIpLChsPSgiYWJzb2x1dGUiPT09Y3x8ImZpeGVkIj09PWMpJiYobyt1KS5pbmRleE9mKCJhdXRvIik+LTEpPyhhPShyPWYucG9zaXRpb24oKSkudG9wLGk9ci5sZWZ0KTooYT1wYXJzZUZsb2F0KG8pfHwwLGk9cGFyc2VGbG9hdCh1KXx8MCksZyh0KSYmKHQ9dC5jYWxsKGUsbix3LmV4dGVuZCh7fSxzKSkpLG51bGwhPXQudG9wJiYocC50b3A9dC50b3Atcy50b3ArYSksbnVsbCE9dC5sZWZ0JiYocC5sZWZ0PXQubGVmdC1zLmxlZnQraSksInVzaW5nImluIHQ/dC51c2luZy5jYWxsKGUscCk6Zi5jc3MocCl9fSx3LmZuLmV4dGVuZCh7b2Zmc2V0OmZ1bmN0aW9uKGUpe2lmKGFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHZvaWQgMD09PWU/dGhpczp0aGlzLmVhY2goZnVuY3Rpb24odCl7dy5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsZSx0KX0pO3ZhciB0LG4scj10aGlzWzBdO2lmKHIpcmV0dXJuIHIuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGg/KHQ9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXIub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyx7dG9wOnQudG9wK24ucGFnZVlPZmZzZXQsbGVmdDp0LmxlZnQrbi5wYWdlWE9mZnNldH0pOnt0b3A6MCxsZWZ0OjB9fSxwb3NpdGlvbjpmdW5jdGlvbigpe2lmKHRoaXNbMF0pe3ZhciBlLHQsbixyPXRoaXNbMF0saT17dG9wOjAsbGVmdDowfTtpZigiZml4ZWQiPT09dy5jc3MociwicG9zaXRpb24iKSl0PXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ZWxzZXt0PXRoaXMub2Zmc2V0KCksbj1yLm93bmVyRG9jdW1lbnQsZT1yLm9mZnNldFBhcmVudHx8bi5kb2N1bWVudEVsZW1lbnQ7d2hpbGUoZSYmKGU9PT1uLmJvZHl8fGU9PT1uLmRvY3VtZW50RWxlbWVudCkmJiJzdGF0aWMiPT09dy5jc3MoZSwicG9zaXRpb24iKSllPWUucGFyZW50Tm9kZTtlJiZlIT09ciYmMT09PWUubm9kZVR5cGUmJigoaT13KGUpLm9mZnNldCgpKS50b3ArPXcuY3NzKGUsImJvcmRlclRvcFdpZHRoIiwhMCksaS5sZWZ0Kz13LmNzcyhlLCJib3JkZXJMZWZ0V2lkdGgiLCEwKSl9cmV0dXJue3RvcDp0LnRvcC1pLnRvcC13LmNzcyhyLCJtYXJnaW5Ub3AiLCEwKSxsZWZ0OnQubGVmdC1pLmxlZnQtdy5jc3MociwibWFyZ2luTGVmdCIsITApfX19LG9mZnNldFBhcmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBlPXRoaXMub2Zmc2V0UGFyZW50O3doaWxlKGUmJiJzdGF0aWMiPT09dy5jc3MoZSwicG9zaXRpb24iKSllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfHxiZX0pfX0pLHcuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSxmdW5jdGlvbihlLHQpe3ZhciBuPSJwYWdlWU9mZnNldCI9PT10O3cuZm5bZV09ZnVuY3Rpb24ocil7cmV0dXJuIHoodGhpcyxmdW5jdGlvbihlLHIsaSl7dmFyIG87aWYoeShlKT9vPWU6OT09PWUubm9kZVR5cGUmJihvPWUuZGVmYXVsdFZpZXcpLHZvaWQgMD09PWkpcmV0dXJuIG8/b1t0XTplW3JdO28/by5zY3JvbGxUbyhuP28ucGFnZVhPZmZzZXQ6aSxuP2k6by5wYWdlWU9mZnNldCk6ZVtyXT1pfSxlLHIsYXJndW1lbnRzLmxlbmd0aCl9fSksdy5lYWNoKFsidG9wIiwibGVmdCJdLGZ1bmN0aW9uKGUsdCl7dy5jc3NIb29rc1t0XT1fZShoLnBpeGVsUG9zaXRpb24sZnVuY3Rpb24oZSxuKXtpZihuKXJldHVybiBuPUZlKGUsdCksV2UudGVzdChuKT93KGUpLnBvc2l0aW9uKClbdF0rInB4IjpufSl9KSx3LmVhY2goe0hlaWdodDoiaGVpZ2h0IixXaWR0aDoid2lkdGgifSxmdW5jdGlvbihlLHQpe3cuZWFjaCh7cGFkZGluZzoiaW5uZXIiK2UsY29udGVudDp0LCIiOiJvdXRlciIrZX0sZnVuY3Rpb24obixyKXt3LmZuW3JdPWZ1bmN0aW9uKGksbyl7dmFyIGE9YXJndW1lbnRzLmxlbmd0aCYmKG58fCJib29sZWFuIiE9dHlwZW9mIGkpLHM9bnx8KCEwPT09aXx8ITA9PT1vPyJtYXJnaW4iOiJib3JkZXIiKTtyZXR1cm4geih0aGlzLGZ1bmN0aW9uKHQsbixpKXt2YXIgbztyZXR1cm4geSh0KT8wPT09ci5pbmRleE9mKCJvdXRlciIpP3RbImlubmVyIitlXTp0LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFsiY2xpZW50IitlXTo5PT09dC5ub2RlVHlwZT8obz10LmRvY3VtZW50RWxlbWVudCxNYXRoLm1heCh0LmJvZHlbInNjcm9sbCIrZV0sb1sic2Nyb2xsIitlXSx0LmJvZHlbIm9mZnNldCIrZV0sb1sib2Zmc2V0IitlXSxvWyJjbGllbnQiK2VdKSk6dm9pZCAwPT09aT93LmNzcyh0LG4scyk6dy5zdHlsZSh0LG4saSxzKX0sdCxhP2k6dm9pZCAwLGEpfX0pfSksdy5lYWNoKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgcmVzaXplIHNjcm9sbCBjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW1vdmUgbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBjaGFuZ2Ugc2VsZWN0IHN1Ym1pdCBrZXlkb3duIGtleXByZXNzIGtleXVwIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsdCl7dy5mblt0XT1mdW5jdGlvbihlLG4pe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjA/dGhpcy5vbih0LG51bGwsZSxuKTp0aGlzLnRyaWdnZXIodCl9fSksdy5mbi5leHRlbmQoe2hvdmVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubW91c2VlbnRlcihlKS5tb3VzZWxlYXZlKHR8fGUpfX0pLHcuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdGhpcy5vbihlLG51bGwsdCxuKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub2ZmKGUsbnVsbCx0KX0sZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMub24odCxlLG4scil9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZXx8IioqIixuKX19KSx3LnByb3h5PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpO2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKG49ZVt0XSx0PWUsZT1uKSxnKGUpKXJldHVybiByPW8uY2FsbChhcmd1bWVudHMsMiksaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHR8fHRoaXMsci5jb25jYXQoby5jYWxsKGFyZ3VtZW50cykpKX0saS5ndWlkPWUuZ3VpZD1lLmd1aWR8fHcuZ3VpZCsrLGl9LHcuaG9sZFJlYWR5PWZ1bmN0aW9uKGUpe2U/dy5yZWFkeVdhaXQrKzp3LnJlYWR5KCEwKX0sdy5pc0FycmF5PUFycmF5LmlzQXJyYXksdy5wYXJzZUpTT049SlNPTi5wYXJzZSx3Lm5vZGVOYW1lPU4sdy5pc0Z1bmN0aW9uPWcsdy5pc1dpbmRvdz15LHcuY2FtZWxDYXNlPUcsdy50eXBlPXgsdy5ub3c9RGF0ZS5ub3csdy5pc051bWVyaWM9ZnVuY3Rpb24oZSl7dmFyIHQ9dy50eXBlKGUpO3JldHVybigibnVtYmVyIj09PXR8fCJzdHJpbmciPT09dCkmJiFpc05hTihlLXBhcnNlRmxvYXQoZSkpfSwiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kJiZkZWZpbmUoImpxdWVyeSIsW10sZnVuY3Rpb24oKXtyZXR1cm4gd30pO3ZhciBKdD1lLmpRdWVyeSxLdD1lLiQ7cmV0dXJuIHcubm9Db25mbGljdD1mdW5jdGlvbih0KXtyZXR1cm4gZS4kPT09dyYmKGUuJD1LdCksdCYmZS5qUXVlcnk9PT13JiYoZS5qUXVlcnk9SnQpLHd9LHR8fChlLmpRdWVyeT1lLiQ9dyksd30pOwo="></script>
<script src="data:application/x-javascript;base64,LyohCiAgKiBCb290c3RyYXAgdjQuMS4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKQogICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUaGUgQm9vdHN0cmFwIEF1dGhvcnMgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ncmFwaHMvY29udHJpYnV0b3JzKQogICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSkKICAqLwohZnVuY3Rpb24odCxlKXsib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlP2UoZXhwb3J0cyxyZXF1aXJlKCJqcXVlcnkiKSk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJleHBvcnRzIiwianF1ZXJ5Il0sZSk6ZSh0LmJvb3RzdHJhcD17fSx0LmpRdWVyeSl9KHRoaXMsZnVuY3Rpb24odCxlKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaS5rZXksaSl9fWZ1bmN0aW9uIHModCxlLG4pe3JldHVybiBlJiZpKHQucHJvdG90eXBlLGUpLG4mJmkodCxuKSx0fWZ1bmN0aW9uIGMocil7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG89bnVsbCE9YXJndW1lbnRzW3RdP2FyZ3VtZW50c1t0XTp7fSxlPU9iamVjdC5rZXlzKG8pOyJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYoZT1lLmNvbmNhdChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKG8pLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvLHQpLmVudW1lcmFibGV9KSkpLGUuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZSxuLGk7ZT1yLGk9b1tuPXRdLG4gaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHt2YWx1ZTppLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVtuXT1pfSl9cmV0dXJuIHJ9Zm9yKHZhciByLG4sbyxhLGwsZixoLHUsZCxwLGcsbSxfLHYsRSx5LGIsVCxDLHcsSSxELEEsUyxPLE4sayxMLFAseCxqLE0sUixILFcsRixVLEIsSyxWLFEsWSxHLHEseixYLEosWiwkLHR0LGV0LG50LGl0LHJ0LG90LHN0LGF0LGx0LGN0LGZ0LGh0LHV0LGR0LHB0LGd0PWZ1bmN0aW9uKGkpe3ZhciBlPSJ0cmFuc2l0aW9uZW5kIjtmdW5jdGlvbiB0KHQpe3ZhciBlPXRoaXMsbj0hMTtyZXR1cm4gaSh0aGlzKS5vbmUobC5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbigpe249ITB9KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bnx8bC50cmlnZ2VyVHJhbnNpdGlvbkVuZChlKX0sdCksdGhpc312YXIgbD17VFJBTlNJVElPTl9FTkQ6ImJzVHJhbnNpdGlvbkVuZCIsZ2V0VUlEOmZ1bmN0aW9uKHQpe2Zvcig7dCs9fn4oMWU2Kk1hdGgucmFuZG9tKCkpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHQpOyk7cmV0dXJuIHR9LGdldFNlbGVjdG9yRnJvbUVsZW1lbnQ6ZnVuY3Rpb24odCl7dmFyIGU9dC5nZXRBdHRyaWJ1dGUoImRhdGEtdGFyZ2V0Iik7ZSYmIiMiIT09ZXx8KGU9dC5nZXRBdHRyaWJ1dGUoImhyZWYiKXx8IiIpO3RyeXtyZXR1cm4gMDxpKGRvY3VtZW50KS5maW5kKGUpLmxlbmd0aD9lOm51bGx9Y2F0Y2godCl7cmV0dXJuIG51bGx9fSxnZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudDpmdW5jdGlvbih0KXtpZighdClyZXR1cm4gMDt2YXIgZT1pKHQpLmNzcygidHJhbnNpdGlvbi1kdXJhdGlvbiIpO3JldHVybiBwYXJzZUZsb2F0KGUpPyhlPWUuc3BsaXQoIiwiKVswXSwxZTMqcGFyc2VGbG9hdChlKSk6MH0scmVmbG93OmZ1bmN0aW9uKHQpe3JldHVybiB0Lm9mZnNldEhlaWdodH0sdHJpZ2dlclRyYW5zaXRpb25FbmQ6ZnVuY3Rpb24odCl7aSh0KS50cmlnZ2VyKGUpfSxzdXBwb3J0c1RyYW5zaXRpb25FbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gQm9vbGVhbihlKX0saXNFbGVtZW50OmZ1bmN0aW9uKHQpe3JldHVybih0WzBdfHx0KS5ub2RlVHlwZX0sdHlwZUNoZWNrQ29uZmlnOmZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIGkgaW4gbilpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixpKSl7dmFyIHI9bltpXSxvPWVbaV0scz1vJiZsLmlzRWxlbWVudChvKT8iZWxlbWVudCI6KGE9byx7fS50b1N0cmluZy5jYWxsKGEpLm1hdGNoKC9ccyhbYS16XSspL2kpWzFdLnRvTG93ZXJDYXNlKCkpO2lmKCFuZXcgUmVnRXhwKHIpLnRlc3QocykpdGhyb3cgbmV3IEVycm9yKHQudG9VcHBlckNhc2UoKSsnOiBPcHRpb24gIicraSsnIiBwcm92aWRlZCB0eXBlICInK3MrJyIgYnV0IGV4cGVjdGVkIHR5cGUgIicrcisnIi4nKX12YXIgYX19O3JldHVybiBpLmZuLmVtdWxhdGVUcmFuc2l0aW9uRW5kPXQsaS5ldmVudC5zcGVjaWFsW2wuVFJBTlNJVElPTl9FTkRdPXtiaW5kVHlwZTplLGRlbGVnYXRlVHlwZTplLGhhbmRsZTpmdW5jdGlvbih0KXtpZihpKHQudGFyZ2V0KS5pcyh0aGlzKSlyZXR1cm4gdC5oYW5kbGVPYmouaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSxsfShlPWUmJmUuaGFzT3duUHJvcGVydHkoImRlZmF1bHQiKT9lLmRlZmF1bHQ6ZSksbXQ9KG49ImFsZXJ0IixhPSIuIisobz0iYnMuYWxlcnQiKSxsPShyPWUpLmZuW25dLGY9e0NMT1NFOiJjbG9zZSIrYSxDTE9TRUQ6ImNsb3NlZCIrYSxDTElDS19EQVRBX0FQSToiY2xpY2siK2ErIi5kYXRhLWFwaSJ9LGg9ImFsZXJ0Iix1PSJmYWRlIixkPSJzaG93IixwPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaSh0KXt0aGlzLl9lbGVtZW50PXR9dmFyIHQ9aS5wcm90b3R5cGU7cmV0dXJuIHQuY2xvc2U9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fZWxlbWVudDt0JiYoZT10aGlzLl9nZXRSb290RWxlbWVudCh0KSksdGhpcy5fdHJpZ2dlckNsb3NlRXZlbnQoZSkuaXNEZWZhdWx0UHJldmVudGVkKCl8fHRoaXMuX3JlbW92ZUVsZW1lbnQoZSl9LHQuZGlzcG9zZT1mdW5jdGlvbigpe3IucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LG8pLHRoaXMuX2VsZW1lbnQ9bnVsbH0sdC5fZ2V0Um9vdEVsZW1lbnQ9ZnVuY3Rpb24odCl7dmFyIGU9Z3QuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KSxuPSExO3JldHVybiBlJiYobj1yKGUpWzBdKSxufHwobj1yKHQpLmNsb3Nlc3QoIi4iK2gpWzBdKSxufSx0Ll90cmlnZ2VyQ2xvc2VFdmVudD1mdW5jdGlvbih0KXt2YXIgZT1yLkV2ZW50KGYuQ0xPU0UpO3JldHVybiByKHQpLnRyaWdnZXIoZSksZX0sdC5fcmVtb3ZlRWxlbWVudD1mdW5jdGlvbihlKXt2YXIgbj10aGlzO2lmKHIoZSkucmVtb3ZlQ2xhc3MoZCkscihlKS5oYXNDbGFzcyh1KSl7dmFyIHQ9Z3QuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoZSk7cihlKS5vbmUoZ3QuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24odCl7cmV0dXJuIG4uX2Rlc3Ryb3lFbGVtZW50KGUsdCl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZCh0KX1lbHNlIHRoaXMuX2Rlc3Ryb3lFbGVtZW50KGUpfSx0Ll9kZXN0cm95RWxlbWVudD1mdW5jdGlvbih0KXtyKHQpLmRldGFjaCgpLnRyaWdnZXIoZi5DTE9TRUQpLnJlbW92ZSgpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PXIodGhpcyksZT10LmRhdGEobyk7ZXx8KGU9bmV3IGkodGhpcyksdC5kYXRhKG8sZSkpLCJjbG9zZSI9PT1uJiZlW25dKHRoaXMpfSl9LGkuX2hhbmRsZURpc21pc3M9ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3QmJnQucHJldmVudERlZmF1bHQoKSxlLmNsb3NlKHRoaXMpfX0scyhpLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fV0pLGl9KCkscihkb2N1bWVudCkub24oZi5DTElDS19EQVRBX0FQSSwnW2RhdGEtZGlzbWlzcz0iYWxlcnQiXScscC5faGFuZGxlRGlzbWlzcyhuZXcgcCkpLHIuZm5bbl09cC5falF1ZXJ5SW50ZXJmYWNlLHIuZm5bbl0uQ29uc3RydWN0b3I9cCxyLmZuW25dLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gci5mbltuXT1sLHAuX2pRdWVyeUludGVyZmFjZX0scCksX3Q9KG09ImJ1dHRvbiIsdj0iLiIrKF89ImJzLmJ1dHRvbiIpLEU9Ii5kYXRhLWFwaSIseT0oZz1lKS5mblttXSxiPSJhY3RpdmUiLFQ9ImJ0biIsdz0nW2RhdGEtdG9nZ2xlXj0iYnV0dG9uIl0nLEk9J1tkYXRhLXRvZ2dsZT0iYnV0dG9ucyJdJyxEPSJpbnB1dCIsQT0iLmFjdGl2ZSIsUz0iLmJ0biIsTz17Q0xJQ0tfREFUQV9BUEk6ImNsaWNrIit2K0UsRk9DVVNfQkxVUl9EQVRBX0FQSTooQz0iZm9jdXMiKSt2K0UrIiBibHVyIit2K0V9LE49ZnVuY3Rpb24oKXtmdW5jdGlvbiBuKHQpe3RoaXMuX2VsZW1lbnQ9dH12YXIgdD1uLnByb3RvdHlwZTtyZXR1cm4gdC50b2dnbGU9ZnVuY3Rpb24oKXt2YXIgdD0hMCxlPSEwLG49Zyh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KEkpWzBdO2lmKG4pe3ZhciBpPWcodGhpcy5fZWxlbWVudCkuZmluZChEKVswXTtpZihpKXtpZigicmFkaW8iPT09aS50eXBlKWlmKGkuY2hlY2tlZCYmZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhiKSl0PSExO2Vsc2V7dmFyIHI9ZyhuKS5maW5kKEEpWzBdO3ImJmcocikucmVtb3ZlQ2xhc3MoYil9aWYodCl7aWYoaS5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil8fG4uaGFzQXR0cmlidXRlKCJkaXNhYmxlZCIpfHxpLmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKXx8bi5jbGFzc0xpc3QuY29udGFpbnMoImRpc2FibGVkIikpcmV0dXJuO2kuY2hlY2tlZD0hZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhiKSxnKGkpLnRyaWdnZXIoImNoYW5nZSIpfWkuZm9jdXMoKSxlPSExfX1lJiZ0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwhZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhiKSksdCYmZyh0aGlzLl9lbGVtZW50KS50b2dnbGVDbGFzcyhiKX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Zy5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsXyksdGhpcy5fZWxlbWVudD1udWxsfSxuLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PWcodGhpcykuZGF0YShfKTt0fHwodD1uZXcgbih0aGlzKSxnKHRoaXMpLmRhdGEoXyx0KSksInRvZ2dsZSI9PT1lJiZ0W2VdKCl9KX0scyhuLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fV0pLG59KCksZyhkb2N1bWVudCkub24oTy5DTElDS19EQVRBX0FQSSx3LGZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKTt2YXIgZT10LnRhcmdldDtnKGUpLmhhc0NsYXNzKFQpfHwoZT1nKGUpLmNsb3Nlc3QoUykpLE4uX2pRdWVyeUludGVyZmFjZS5jYWxsKGcoZSksInRvZ2dsZSIpfSkub24oTy5GT0NVU19CTFVSX0RBVEFfQVBJLHcsZnVuY3Rpb24odCl7dmFyIGU9Zyh0LnRhcmdldCkuY2xvc2VzdChTKVswXTtnKGUpLnRvZ2dsZUNsYXNzKEMsL15mb2N1cyhpbik/JC8udGVzdCh0LnR5cGUpKX0pLGcuZm5bbV09Ti5falF1ZXJ5SW50ZXJmYWNlLGcuZm5bbV0uQ29uc3RydWN0b3I9TixnLmZuW21dLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZy5mblttXT15LE4uX2pRdWVyeUludGVyZmFjZX0sTiksdnQ9KEw9ImNhcm91c2VsIix4PSIuIisoUD0iYnMuY2Fyb3VzZWwiKSxqPSIuZGF0YS1hcGkiLE09KGs9ZSkuZm5bTF0sUj17aW50ZXJ2YWw6NWUzLGtleWJvYXJkOiEwLHNsaWRlOiExLHBhdXNlOiJob3ZlciIsd3JhcDohMH0sSD17aW50ZXJ2YWw6IihudW1iZXJ8Ym9vbGVhbikiLGtleWJvYXJkOiJib29sZWFuIixzbGlkZToiKGJvb2xlYW58c3RyaW5nKSIscGF1c2U6IihzdHJpbmd8Ym9vbGVhbikiLHdyYXA6ImJvb2xlYW4ifSxXPSJuZXh0IixGPSJwcmV2IixVPSJsZWZ0IixCPSJyaWdodCIsSz17U0xJREU6InNsaWRlIit4LFNMSUQ6InNsaWQiK3gsS0VZRE9XTjoia2V5ZG93biIreCxNT1VTRUVOVEVSOiJtb3VzZWVudGVyIit4LE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK3gsVE9VQ0hFTkQ6InRvdWNoZW5kIit4LExPQURfREFUQV9BUEk6ImxvYWQiK3graixDTElDS19EQVRBX0FQSToiY2xpY2siK3gran0sVj0iY2Fyb3VzZWwiLFE9ImFjdGl2ZSIsWT0ic2xpZGUiLEc9ImNhcm91c2VsLWl0ZW0tcmlnaHQiLHE9ImNhcm91c2VsLWl0ZW0tbGVmdCIsej0iY2Fyb3VzZWwtaXRlbS1uZXh0IixYPSJjYXJvdXNlbC1pdGVtLXByZXYiLEo9e0FDVElWRToiLmFjdGl2ZSIsQUNUSVZFX0lURU06Ii5hY3RpdmUuY2Fyb3VzZWwtaXRlbSIsSVRFTToiLmNhcm91c2VsLWl0ZW0iLE5FWFRfUFJFVjoiLmNhcm91c2VsLWl0ZW0tbmV4dCwgLmNhcm91c2VsLWl0ZW0tcHJldiIsSU5ESUNBVE9SUzoiLmNhcm91c2VsLWluZGljYXRvcnMiLERBVEFfU0xJREU6IltkYXRhLXNsaWRlXSwgW2RhdGEtc2xpZGUtdG9dIixEQVRBX1JJREU6J1tkYXRhLXJpZGU9ImNhcm91c2VsIl0nfSxaPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbyh0LGUpe3RoaXMuX2l0ZW1zPW51bGwsdGhpcy5faW50ZXJ2YWw9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faXNQYXVzZWQ9ITEsdGhpcy5faXNTbGlkaW5nPSExLHRoaXMudG91Y2hUaW1lb3V0PW51bGwsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9lbGVtZW50PWsodClbMF0sdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQ9ayh0aGlzLl9lbGVtZW50KS5maW5kKEouSU5ESUNBVE9SUylbMF0sdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKX12YXIgdD1vLnByb3RvdHlwZTtyZXR1cm4gdC5uZXh0PWZ1bmN0aW9uKCl7dGhpcy5faXNTbGlkaW5nfHx0aGlzLl9zbGlkZShXKX0sdC5uZXh0V2hlblZpc2libGU9ZnVuY3Rpb24oKXshZG9jdW1lbnQuaGlkZGVuJiZrKHRoaXMuX2VsZW1lbnQpLmlzKCI6dmlzaWJsZSIpJiYiaGlkZGVuIiE9PWsodGhpcy5fZWxlbWVudCkuY3NzKCJ2aXNpYmlsaXR5IikmJnRoaXMubmV4dCgpfSx0LnByZXY9ZnVuY3Rpb24oKXt0aGlzLl9pc1NsaWRpbmd8fHRoaXMuX3NsaWRlKEYpfSx0LnBhdXNlPWZ1bmN0aW9uKHQpe3R8fCh0aGlzLl9pc1BhdXNlZD0hMCksayh0aGlzLl9lbGVtZW50KS5maW5kKEouTkVYVF9QUkVWKVswXSYmKGd0LnRyaWdnZXJUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQpLHRoaXMuY3ljbGUoITApKSxjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsfSx0LmN5Y2xlPWZ1bmN0aW9uKHQpe3R8fCh0aGlzLl9pc1BhdXNlZD0hMSksdGhpcy5faW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsKSx0aGlzLl9jb25maWcuaW50ZXJ2YWwmJiF0aGlzLl9pc1BhdXNlZCYmKHRoaXMuX2ludGVydmFsPXNldEludGVydmFsKChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU/dGhpcy5uZXh0V2hlblZpc2libGU6dGhpcy5uZXh0KS5iaW5kKHRoaXMpLHRoaXMuX2NvbmZpZy5pbnRlcnZhbCkpfSx0LnRvPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5fYWN0aXZlRWxlbWVudD1rKHRoaXMuX2VsZW1lbnQpLmZpbmQoSi5BQ1RJVkVfSVRFTSlbMF07dmFyIG49dGhpcy5fZ2V0SXRlbUluZGV4KHRoaXMuX2FjdGl2ZUVsZW1lbnQpO2lmKCEodD50aGlzLl9pdGVtcy5sZW5ndGgtMXx8dDwwKSlpZih0aGlzLl9pc1NsaWRpbmcpayh0aGlzLl9lbGVtZW50KS5vbmUoSy5TTElELGZ1bmN0aW9uKCl7cmV0dXJuIGUudG8odCl9KTtlbHNle2lmKG49PT10KXJldHVybiB0aGlzLnBhdXNlKCksdm9pZCB0aGlzLmN5Y2xlKCk7dmFyIGk9bjx0P1c6Rjt0aGlzLl9zbGlkZShpLHRoaXMuX2l0ZW1zW3RdKX19LHQuZGlzcG9zZT1mdW5jdGlvbigpe2sodGhpcy5fZWxlbWVudCkub2ZmKHgpLGsucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LFApLHRoaXMuX2l0ZW1zPW51bGwsdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX2ludGVydmFsPW51bGwsdGhpcy5faXNQYXVzZWQ9bnVsbCx0aGlzLl9pc1NsaWRpbmc9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faW5kaWNhdG9yc0VsZW1lbnQ9bnVsbH0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybiB0PWMoe30sUix0KSxndC50eXBlQ2hlY2tDb25maWcoTCx0LEgpLHR9LHQuX2FkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9jb25maWcua2V5Ym9hcmQmJmsodGhpcy5fZWxlbWVudCkub24oSy5LRVlET1dOLGZ1bmN0aW9uKHQpe3JldHVybiBlLl9rZXlkb3duKHQpfSksImhvdmVyIj09PXRoaXMuX2NvbmZpZy5wYXVzZSYmKGsodGhpcy5fZWxlbWVudCkub24oSy5NT1VTRUVOVEVSLGZ1bmN0aW9uKHQpe3JldHVybiBlLnBhdXNlKHQpfSkub24oSy5NT1VTRUxFQVZFLGZ1bmN0aW9uKHQpe3JldHVybiBlLmN5Y2xlKHQpfSksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmsodGhpcy5fZWxlbWVudCkub24oSy5UT1VDSEVORCxmdW5jdGlvbigpe2UucGF1c2UoKSxlLnRvdWNoVGltZW91dCYmY2xlYXJUaW1lb3V0KGUudG91Y2hUaW1lb3V0KSxlLnRvdWNoVGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKHQpe3JldHVybiBlLmN5Y2xlKHQpfSw1MDArZS5fY29uZmlnLmludGVydmFsKX0pKX0sdC5fa2V5ZG93bj1mdW5jdGlvbih0KXtpZighL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKSlzd2l0Y2godC53aGljaCl7Y2FzZSAzNzp0LnByZXZlbnREZWZhdWx0KCksdGhpcy5wcmV2KCk7YnJlYWs7Y2FzZSAzOTp0LnByZXZlbnREZWZhdWx0KCksdGhpcy5uZXh0KCl9fSx0Ll9nZXRJdGVtSW5kZXg9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2l0ZW1zPWsubWFrZUFycmF5KGsodCkucGFyZW50KCkuZmluZChKLklURU0pKSx0aGlzLl9pdGVtcy5pbmRleE9mKHQpfSx0Ll9nZXRJdGVtQnlEaXJlY3Rpb249ZnVuY3Rpb24odCxlKXt2YXIgbj10PT09VyxpPXQ9PT1GLHI9dGhpcy5fZ2V0SXRlbUluZGV4KGUpLG89dGhpcy5faXRlbXMubGVuZ3RoLTE7aWYoKGkmJjA9PT1yfHxuJiZyPT09bykmJiF0aGlzLl9jb25maWcud3JhcClyZXR1cm4gZTt2YXIgcz0ocisodD09PUY/LTE6MSkpJXRoaXMuX2l0ZW1zLmxlbmd0aDtyZXR1cm4tMT09PXM/dGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoLTFdOnRoaXMuX2l0ZW1zW3NdfSx0Ll90cmlnZ2VyU2xpZGVFdmVudD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX2dldEl0ZW1JbmRleCh0KSxpPXRoaXMuX2dldEl0ZW1JbmRleChrKHRoaXMuX2VsZW1lbnQpLmZpbmQoSi5BQ1RJVkVfSVRFTSlbMF0pLHI9ay5FdmVudChLLlNMSURFLHtyZWxhdGVkVGFyZ2V0OnQsZGlyZWN0aW9uOmUsZnJvbTppLHRvOm59KTtyZXR1cm4gayh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKHIpLHJ9LHQuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQ9ZnVuY3Rpb24odCl7aWYodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpe2sodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpLmZpbmQoSi5BQ1RJVkUpLnJlbW92ZUNsYXNzKFEpO3ZhciBlPXRoaXMuX2luZGljYXRvcnNFbGVtZW50LmNoaWxkcmVuW3RoaXMuX2dldEl0ZW1JbmRleCh0KV07ZSYmayhlKS5hZGRDbGFzcyhRKX19LHQuX3NsaWRlPWZ1bmN0aW9uKHQsZSl7dmFyIG4saSxyLG89dGhpcyxzPWsodGhpcy5fZWxlbWVudCkuZmluZChKLkFDVElWRV9JVEVNKVswXSxhPXRoaXMuX2dldEl0ZW1JbmRleChzKSxsPWV8fHMmJnRoaXMuX2dldEl0ZW1CeURpcmVjdGlvbih0LHMpLGM9dGhpcy5fZ2V0SXRlbUluZGV4KGwpLGY9Qm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7aWYodD09PVc/KG49cSxpPXoscj1VKToobj1HLGk9WCxyPUIpLGwmJmsobCkuaGFzQ2xhc3MoUSkpdGhpcy5faXNTbGlkaW5nPSExO2Vsc2UgaWYoIXRoaXMuX3RyaWdnZXJTbGlkZUV2ZW50KGwscikuaXNEZWZhdWx0UHJldmVudGVkKCkmJnMmJmwpe3RoaXMuX2lzU2xpZGluZz0hMCxmJiZ0aGlzLnBhdXNlKCksdGhpcy5fc2V0QWN0aXZlSW5kaWNhdG9yRWxlbWVudChsKTt2YXIgaD1rLkV2ZW50KEsuU0xJRCx7cmVsYXRlZFRhcmdldDpsLGRpcmVjdGlvbjpyLGZyb206YSx0bzpjfSk7aWYoayh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhZKSl7ayhsKS5hZGRDbGFzcyhpKSxndC5yZWZsb3cobCksayhzKS5hZGRDbGFzcyhuKSxrKGwpLmFkZENsYXNzKG4pO3ZhciB1PWd0LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHMpO2socykub25lKGd0LlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7ayhsKS5yZW1vdmVDbGFzcyhuKyIgIitpKS5hZGRDbGFzcyhRKSxrKHMpLnJlbW92ZUNsYXNzKFErIiAiK2krIiAiK24pLG8uX2lzU2xpZGluZz0hMSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIGsoby5fZWxlbWVudCkudHJpZ2dlcihoKX0sMCl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZCh1KX1lbHNlIGsocykucmVtb3ZlQ2xhc3MoUSksayhsKS5hZGRDbGFzcyhRKSx0aGlzLl9pc1NsaWRpbmc9ITEsayh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKGgpO2YmJnRoaXMuY3ljbGUoKX19LG8uX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbihpKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHQ9ayh0aGlzKS5kYXRhKFApLGU9Yyh7fSxSLGsodGhpcykuZGF0YSgpKTsib2JqZWN0Ij09dHlwZW9mIGkmJihlPWMoe30sZSxpKSk7dmFyIG49InN0cmluZyI9PXR5cGVvZiBpP2k6ZS5zbGlkZTtpZih0fHwodD1uZXcgbyh0aGlzLGUpLGsodGhpcykuZGF0YShQLHQpKSwibnVtYmVyIj09dHlwZW9mIGkpdC50byhpKTtlbHNlIGlmKCJzdHJpbmciPT10eXBlb2Ygbil7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSgpfWVsc2UgZS5pbnRlcnZhbCYmKHQucGF1c2UoKSx0LmN5Y2xlKCkpfSl9LG8uX2RhdGFBcGlDbGlja0hhbmRsZXI9ZnVuY3Rpb24odCl7dmFyIGU9Z3QuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0aGlzKTtpZihlKXt2YXIgbj1rKGUpWzBdO2lmKG4mJmsobikuaGFzQ2xhc3MoVikpe3ZhciBpPWMoe30sayhuKS5kYXRhKCksayh0aGlzKS5kYXRhKCkpLHI9dGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtc2xpZGUtdG8iKTtyJiYoaS5pbnRlcnZhbD0hMSksby5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoayhuKSxpKSxyJiZrKG4pLmRhdGEoUCkudG8ociksdC5wcmV2ZW50RGVmYXVsdCgpfX19LHMobyxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4xLjEifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFJ9fV0pLG99KCksayhkb2N1bWVudCkub24oSy5DTElDS19EQVRBX0FQSSxKLkRBVEFfU0xJREUsWi5fZGF0YUFwaUNsaWNrSGFuZGxlciksayh3aW5kb3cpLm9uKEsuTE9BRF9EQVRBX0FQSSxmdW5jdGlvbigpe2soSi5EQVRBX1JJREUpLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1rKHRoaXMpO1ouX2pRdWVyeUludGVyZmFjZS5jYWxsKHQsdC5kYXRhKCkpfSl9KSxrLmZuW0xdPVouX2pRdWVyeUludGVyZmFjZSxrLmZuW0xdLkNvbnN0cnVjdG9yPVosay5mbltMXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGsuZm5bTF09TSxaLl9qUXVlcnlJbnRlcmZhY2V9LFopLEV0PSh0dD0iY29sbGFwc2UiLG50PSIuIisoZXQ9ImJzLmNvbGxhcHNlIiksaXQ9KCQ9ZSkuZm5bdHRdLHJ0PXt0b2dnbGU6ITAscGFyZW50OiIifSxvdD17dG9nZ2xlOiJib29sZWFuIixwYXJlbnQ6IihzdHJpbmd8ZWxlbWVudCkifSxzdD17U0hPVzoic2hvdyIrbnQsU0hPV046InNob3duIitudCxISURFOiJoaWRlIitudCxISURERU46ImhpZGRlbiIrbnQsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrIitudCsiLmRhdGEtYXBpIn0sYXQ9InNob3ciLGx0PSJjb2xsYXBzZSIsY3Q9ImNvbGxhcHNpbmciLGZ0PSJjb2xsYXBzZWQiLGh0PSJ3aWR0aCIsdXQ9ImhlaWdodCIsZHQ9e0FDVElWRVM6Ii5zaG93LCAuY29sbGFwc2luZyIsREFUQV9UT0dHTEU6J1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXSd9LHB0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSh0LGUpe3RoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9lbGVtZW50PXQsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl90cmlnZ2VyQXJyYXk9JC5tYWtlQXJyYXkoJCgnW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdW2hyZWY9IiMnK3QuaWQrJyJdLFtkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXRhcmdldD0iIycrdC5pZCsnIl0nKSk7Zm9yKHZhciBuPSQoZHQuREFUQV9UT0dHTEUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXSxvPWd0LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQocik7bnVsbCE9PW8mJjA8JChvKS5maWx0ZXIodCkubGVuZ3RoJiYodGhpcy5fc2VsZWN0b3I9byx0aGlzLl90cmlnZ2VyQXJyYXkucHVzaChyKSl9dGhpcy5fcGFyZW50PXRoaXMuX2NvbmZpZy5wYXJlbnQ/dGhpcy5fZ2V0UGFyZW50KCk6bnVsbCx0aGlzLl9jb25maWcucGFyZW50fHx0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fZWxlbWVudCx0aGlzLl90cmlnZ2VyQXJyYXkpLHRoaXMuX2NvbmZpZy50b2dnbGUmJnRoaXMudG9nZ2xlKCl9dmFyIHQ9YS5wcm90b3R5cGU7cmV0dXJuIHQudG9nZ2xlPWZ1bmN0aW9uKCl7JCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhhdCk/dGhpcy5oaWRlKCk6dGhpcy5zaG93KCl9LHQuc2hvdz1mdW5jdGlvbigpe3ZhciB0LGUsbj10aGlzO2lmKCF0aGlzLl9pc1RyYW5zaXRpb25pbmcmJiEkKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGF0KSYmKHRoaXMuX3BhcmVudCYmMD09PSh0PSQubWFrZUFycmF5KCQodGhpcy5fcGFyZW50KS5maW5kKGR0LkFDVElWRVMpLmZpbHRlcignW2RhdGEtcGFyZW50PSInK3RoaXMuX2NvbmZpZy5wYXJlbnQrJyJdJykpKS5sZW5ndGgmJih0PW51bGwpLCEodCYmKGU9JCh0KS5ub3QodGhpcy5fc2VsZWN0b3IpLmRhdGEoZXQpKSYmZS5faXNUcmFuc2l0aW9uaW5nKSkpe3ZhciBpPSQuRXZlbnQoc3QuU0hPVyk7aWYoJCh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKGkpLCFpLmlzRGVmYXVsdFByZXZlbnRlZCgpKXt0JiYoYS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoJCh0KS5ub3QodGhpcy5fc2VsZWN0b3IpLCJoaWRlIiksZXx8JCh0KS5kYXRhKGV0LG51bGwpKTt2YXIgcj10aGlzLl9nZXREaW1lbnNpb24oKTskKHRoaXMuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGx0KS5hZGRDbGFzcyhjdCksKHRoaXMuX2VsZW1lbnQuc3R5bGVbcl09MCk8dGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aCYmJCh0aGlzLl90cmlnZ2VyQXJyYXkpLnJlbW92ZUNsYXNzKGZ0KS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMCksdGhpcy5zZXRUcmFuc2l0aW9uaW5nKCEwKTt2YXIgbz0ic2Nyb2xsIisoclswXS50b1VwcGVyQ2FzZSgpK3Iuc2xpY2UoMSkpLHM9Z3QuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7JCh0aGlzLl9lbGVtZW50KS5vbmUoZ3QuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXskKG4uX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGN0KS5hZGRDbGFzcyhsdCkuYWRkQ2xhc3MoYXQpLG4uX2VsZW1lbnQuc3R5bGVbcl09IiIsbi5zZXRUcmFuc2l0aW9uaW5nKCExKSwkKG4uX2VsZW1lbnQpLnRyaWdnZXIoc3QuU0hPV04pfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQocyksdGhpcy5fZWxlbWVudC5zdHlsZVtyXT10aGlzLl9lbGVtZW50W29dKyJweCJ9fX0sdC5oaWRlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztpZighdGhpcy5faXNUcmFuc2l0aW9uaW5nJiYkKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGF0KSl7dmFyIGU9JC5FdmVudChzdC5ISURFKTtpZigkKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoZSksIWUuaXNEZWZhdWx0UHJldmVudGVkKCkpe3ZhciBuPXRoaXMuX2dldERpbWVuc2lvbigpO2lmKHRoaXMuX2VsZW1lbnQuc3R5bGVbbl09dGhpcy5fZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVtuXSsicHgiLGd0LnJlZmxvdyh0aGlzLl9lbGVtZW50KSwkKHRoaXMuX2VsZW1lbnQpLmFkZENsYXNzKGN0KS5yZW1vdmVDbGFzcyhsdCkucmVtb3ZlQ2xhc3MoYXQpLDA8dGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aClmb3IodmFyIGk9MDtpPHRoaXMuX3RyaWdnZXJBcnJheS5sZW5ndGg7aSsrKXt2YXIgcj10aGlzLl90cmlnZ2VyQXJyYXlbaV0sbz1ndC5nZXRTZWxlY3RvckZyb21FbGVtZW50KHIpO2lmKG51bGwhPT1vKSQobykuaGFzQ2xhc3MoYXQpfHwkKHIpLmFkZENsYXNzKGZ0KS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMSl9dGhpcy5zZXRUcmFuc2l0aW9uaW5nKCEwKTt0aGlzLl9lbGVtZW50LnN0eWxlW25dPSIiO3ZhciBzPWd0LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpOyQodGhpcy5fZWxlbWVudCkub25lKGd0LlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7dC5zZXRUcmFuc2l0aW9uaW5nKCExKSwkKHQuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKGN0KS5hZGRDbGFzcyhsdCkudHJpZ2dlcihzdC5ISURERU4pfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQocyl9fX0sdC5zZXRUcmFuc2l0aW9uaW5nPWZ1bmN0aW9uKHQpe3RoaXMuX2lzVHJhbnNpdGlvbmluZz10fSx0LmRpc3Bvc2U9ZnVuY3Rpb24oKXskLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCxldCksdGhpcy5fY29uZmlnPW51bGwsdGhpcy5fcGFyZW50PW51bGwsdGhpcy5fZWxlbWVudD1udWxsLHRoaXMuX3RyaWdnZXJBcnJheT1udWxsLHRoaXMuX2lzVHJhbnNpdGlvbmluZz1udWxsfSx0Ll9nZXRDb25maWc9ZnVuY3Rpb24odCl7cmV0dXJuKHQ9Yyh7fSxydCx0KSkudG9nZ2xlPUJvb2xlYW4odC50b2dnbGUpLGd0LnR5cGVDaGVja0NvbmZpZyh0dCx0LG90KSx0fSx0Ll9nZXREaW1lbnNpb249ZnVuY3Rpb24oKXtyZXR1cm4gJCh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhodCk/aHQ6dXR9LHQuX2dldFBhcmVudD1mdW5jdGlvbigpe3ZhciBuPXRoaXMsdD1udWxsO2d0LmlzRWxlbWVudCh0aGlzLl9jb25maWcucGFyZW50KT8odD10aGlzLl9jb25maWcucGFyZW50LCJ1bmRlZmluZWQiIT10eXBlb2YgdGhpcy5fY29uZmlnLnBhcmVudC5qcXVlcnkmJih0PXRoaXMuX2NvbmZpZy5wYXJlbnRbMF0pKTp0PSQodGhpcy5fY29uZmlnLnBhcmVudClbMF07dmFyIGU9J1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXBhcmVudD0iJyt0aGlzLl9jb25maWcucGFyZW50KyciXSc7cmV0dXJuICQodCkuZmluZChlKS5lYWNoKGZ1bmN0aW9uKHQsZSl7bi5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzKGEuX2dldFRhcmdldEZyb21FbGVtZW50KGUpLFtlXSl9KSx0fSx0Ll9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3M9ZnVuY3Rpb24odCxlKXtpZih0KXt2YXIgbj0kKHQpLmhhc0NsYXNzKGF0KTswPGUubGVuZ3RoJiYkKGUpLnRvZ2dsZUNsYXNzKGZ0LCFuKS5hdHRyKCJhcmlhLWV4cGFuZGVkIixuKX19LGEuX2dldFRhcmdldEZyb21FbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlPWd0LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCk7cmV0dXJuIGU/JChlKVswXTpudWxsfSxhLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PSQodGhpcyksZT10LmRhdGEoZXQpLG49Yyh7fSxydCx0LmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIGkmJmk/aTp7fSk7aWYoIWUmJm4udG9nZ2xlJiYvc2hvd3xoaWRlLy50ZXN0KGkpJiYobi50b2dnbGU9ITEpLGV8fChlPW5ldyBhKHRoaXMsbiksdC5kYXRhKGV0LGUpKSwic3RyaW5nIj09dHlwZW9mIGkpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZVtpXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicraSsnIicpO2VbaV0oKX19KX0scyhhLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcnR9fV0pLGF9KCksJChkb2N1bWVudCkub24oc3QuQ0xJQ0tfREFUQV9BUEksZHQuREFUQV9UT0dHTEUsZnVuY3Rpb24odCl7IkEiPT09dC5jdXJyZW50VGFyZ2V0LnRhZ05hbWUmJnQucHJldmVudERlZmF1bHQoKTt2YXIgbj0kKHRoaXMpLGU9Z3QuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0aGlzKTskKGUpLmVhY2goZnVuY3Rpb24oKXt2YXIgdD0kKHRoaXMpLGU9dC5kYXRhKGV0KT8idG9nZ2xlIjpuLmRhdGEoKTtwdC5falF1ZXJ5SW50ZXJmYWNlLmNhbGwodCxlKX0pfSksJC5mblt0dF09cHQuX2pRdWVyeUludGVyZmFjZSwkLmZuW3R0XS5Db25zdHJ1Y3Rvcj1wdCwkLmZuW3R0XS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuICQuZm5bdHRdPWl0LHB0Ll9qUXVlcnlJbnRlcmZhY2V9LHB0KSx5dD0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCxidD1bIkVkZ2UiLCJUcmlkZW50IiwiRmlyZWZveCJdLFR0PTAsQ3Q9MDtDdDxidC5sZW5ndGg7Q3QrPTEpaWYoeXQmJjA8PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZihidFtDdF0pKXtUdD0xO2JyZWFrfXZhciB3dD15dCYmd2luZG93LlByb21pc2U/ZnVuY3Rpb24odCl7dmFyIGU9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7ZXx8KGU9ITAsd2luZG93LlByb21pc2UucmVzb2x2ZSgpLnRoZW4oZnVuY3Rpb24oKXtlPSExLHQoKX0pKX19OmZ1bmN0aW9uKHQpe3ZhciBlPSExO3JldHVybiBmdW5jdGlvbigpe2V8fChlPSEwLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtlPSExLHQoKX0sVHQpKX19O2Z1bmN0aW9uIEl0KHQpe3JldHVybiB0JiYiW29iamVjdCBGdW5jdGlvbl0iPT09e30udG9TdHJpbmcuY2FsbCh0KX1mdW5jdGlvbiBEdCh0LGUpe2lmKDEhPT10Lm5vZGVUeXBlKXJldHVybltdO3ZhciBuPWdldENvbXB1dGVkU3R5bGUodCxudWxsKTtyZXR1cm4gZT9uW2VdOm59ZnVuY3Rpb24gQXQodCl7cmV0dXJuIkhUTUwiPT09dC5ub2RlTmFtZT90OnQucGFyZW50Tm9kZXx8dC5ob3N0fWZ1bmN0aW9uIFN0KHQpe2lmKCF0KXJldHVybiBkb2N1bWVudC5ib2R5O3N3aXRjaCh0Lm5vZGVOYW1lKXtjYXNlIkhUTUwiOmNhc2UiQk9EWSI6cmV0dXJuIHQub3duZXJEb2N1bWVudC5ib2R5O2Nhc2UiI2RvY3VtZW50IjpyZXR1cm4gdC5ib2R5fXZhciBlPUR0KHQpLG49ZS5vdmVyZmxvdyxpPWUub3ZlcmZsb3dYLHI9ZS5vdmVyZmxvd1k7cmV0dXJuLyhhdXRvfHNjcm9sbHxvdmVybGF5KS8udGVzdChuK3IraSk/dDpTdChBdCh0KSl9dmFyIE90PXl0JiYhKCF3aW5kb3cuTVNJbnB1dE1ldGhvZENvbnRleHR8fCFkb2N1bWVudC5kb2N1bWVudE1vZGUpLE50PXl0JiYvTVNJRSAxMC8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtmdW5jdGlvbiBrdCh0KXtyZXR1cm4gMTE9PT10P090OjEwPT09dD9OdDpPdHx8TnR9ZnVuY3Rpb24gTHQodCl7aWYoIXQpcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtmb3IodmFyIGU9a3QoMTApP2RvY3VtZW50LmJvZHk6bnVsbCxuPXQub2Zmc2V0UGFyZW50O249PT1lJiZ0Lm5leHRFbGVtZW50U2libGluZzspbj0odD10Lm5leHRFbGVtZW50U2libGluZykub2Zmc2V0UGFyZW50O3ZhciBpPW4mJm4ubm9kZU5hbWU7cmV0dXJuIGkmJiJCT0RZIiE9PWkmJiJIVE1MIiE9PWk/LTEhPT1bIlREIiwiVEFCTEUiXS5pbmRleE9mKG4ubm9kZU5hbWUpJiYic3RhdGljIj09PUR0KG4sInBvc2l0aW9uIik/THQobik6bjp0P3Qub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIFB0KHQpe3JldHVybiBudWxsIT09dC5wYXJlbnROb2RlP1B0KHQucGFyZW50Tm9kZSk6dH1mdW5jdGlvbiB4dCh0LGUpe2lmKCEodCYmdC5ub2RlVHlwZSYmZSYmZS5ub2RlVHlwZSkpcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDt2YXIgbj10LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGUpJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRk9MTE9XSU5HLGk9bj90OmUscj1uP2U6dCxvPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7by5zZXRTdGFydChpLDApLG8uc2V0RW5kKHIsMCk7dmFyIHMsYSxsPW8uY29tbW9uQW5jZXN0b3JDb250YWluZXI7aWYodCE9PWwmJmUhPT1sfHxpLmNvbnRhaW5zKHIpKXJldHVybiJCT0RZIj09PShhPShzPWwpLm5vZGVOYW1lKXx8IkhUTUwiIT09YSYmTHQocy5maXJzdEVsZW1lbnRDaGlsZCkhPT1zP0x0KGwpOmw7dmFyIGM9UHQodCk7cmV0dXJuIGMuaG9zdD94dChjLmhvc3QsZSk6eHQodCxQdChlKS5ob3N0KX1mdW5jdGlvbiBqdCh0KXt2YXIgZT0idG9wIj09PSgxPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06InRvcCIpPyJzY3JvbGxUb3AiOiJzY3JvbGxMZWZ0IixuPXQubm9kZU5hbWU7aWYoIkJPRFkiPT09bnx8IkhUTUwiPT09bil7dmFyIGk9dC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtyZXR1cm4odC5vd25lckRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnR8fGkpW2VdfXJldHVybiB0W2VdfWZ1bmN0aW9uIE10KHQsZSl7dmFyIG49IngiPT09ZT8iTGVmdCI6IlRvcCIsaT0iTGVmdCI9PT1uPyJSaWdodCI6IkJvdHRvbSI7cmV0dXJuIHBhcnNlRmxvYXQodFsiYm9yZGVyIituKyJXaWR0aCJdLDEwKStwYXJzZUZsb2F0KHRbImJvcmRlciIraSsiV2lkdGgiXSwxMCl9ZnVuY3Rpb24gUnQodCxlLG4saSl7cmV0dXJuIE1hdGgubWF4KGVbIm9mZnNldCIrdF0sZVsic2Nyb2xsIit0XSxuWyJjbGllbnQiK3RdLG5bIm9mZnNldCIrdF0sblsic2Nyb2xsIit0XSxrdCgxMCk/blsib2Zmc2V0Iit0XStpWyJtYXJnaW4iKygiSGVpZ2h0Ij09PXQ/IlRvcCI6IkxlZnQiKV0raVsibWFyZ2luIisoIkhlaWdodCI9PT10PyJCb3R0b20iOiJSaWdodCIpXTowKX1mdW5jdGlvbiBIdCgpe3ZhciB0PWRvY3VtZW50LmJvZHksZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1rdCgxMCkmJmdldENvbXB1dGVkU3R5bGUoZSk7cmV0dXJue2hlaWdodDpSdCgiSGVpZ2h0Iix0LGUsbiksd2lkdGg6UnQoIldpZHRoIix0LGUsbil9fXZhciBXdD1mdW5jdGlvbih0LGUpe2lmKCEodCBpbnN0YW5jZW9mIGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpfSxGdD1mdW5jdGlvbigpe2Z1bmN0aW9uIGkodCxlKXtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpLmVudW1lcmFibGU9aS5lbnVtZXJhYmxlfHwhMSxpLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gaSYmKGkud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGkua2V5LGkpfX1yZXR1cm4gZnVuY3Rpb24odCxlLG4pe3JldHVybiBlJiZpKHQucHJvdG90eXBlLGUpLG4mJmkodCxuKSx0fX0oKSxVdD1mdW5jdGlvbih0LGUsbil7cmV0dXJuIGUgaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxlLHt2YWx1ZTpuLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtlXT1uLHR9LEJ0PU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBuPWFyZ3VtZW50c1tlXTtmb3IodmFyIGkgaW4gbilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixpKSYmKHRbaV09bltpXSl9cmV0dXJuIHR9O2Z1bmN0aW9uIEt0KHQpe3JldHVybiBCdCh7fSx0LHtyaWdodDp0LmxlZnQrdC53aWR0aCxib3R0b206dC50b3ArdC5oZWlnaHR9KX1mdW5jdGlvbiBWdCh0KXt2YXIgZT17fTt0cnl7aWYoa3QoMTApKXtlPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dmFyIG49anQodCwidG9wIiksaT1qdCh0LCJsZWZ0Iik7ZS50b3ArPW4sZS5sZWZ0Kz1pLGUuYm90dG9tKz1uLGUucmlnaHQrPWl9ZWxzZSBlPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2godCl7fXZhciByPXtsZWZ0OmUubGVmdCx0b3A6ZS50b3Asd2lkdGg6ZS5yaWdodC1lLmxlZnQsaGVpZ2h0OmUuYm90dG9tLWUudG9wfSxvPSJIVE1MIj09PXQubm9kZU5hbWU/SHQoKTp7fSxzPW8ud2lkdGh8fHQuY2xpZW50V2lkdGh8fHIucmlnaHQtci5sZWZ0LGE9by5oZWlnaHR8fHQuY2xpZW50SGVpZ2h0fHxyLmJvdHRvbS1yLnRvcCxsPXQub2Zmc2V0V2lkdGgtcyxjPXQub2Zmc2V0SGVpZ2h0LWE7aWYobHx8Yyl7dmFyIGY9RHQodCk7bC09TXQoZiwieCIpLGMtPU10KGYsInkiKSxyLndpZHRoLT1sLHIuaGVpZ2h0LT1jfXJldHVybiBLdChyKX1mdW5jdGlvbiBRdCh0LGUpe3ZhciBuPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0saT1rdCgxMCkscj0iSFRNTCI9PT1lLm5vZGVOYW1lLG89VnQodCkscz1WdChlKSxhPVN0KHQpLGw9RHQoZSksYz1wYXJzZUZsb2F0KGwuYm9yZGVyVG9wV2lkdGgsMTApLGY9cGFyc2VGbG9hdChsLmJvcmRlckxlZnRXaWR0aCwxMCk7biYmIkhUTUwiPT09ZS5ub2RlTmFtZSYmKHMudG9wPU1hdGgubWF4KHMudG9wLDApLHMubGVmdD1NYXRoLm1heChzLmxlZnQsMCkpO3ZhciBoPUt0KHt0b3A6by50b3Atcy50b3AtYyxsZWZ0Om8ubGVmdC1zLmxlZnQtZix3aWR0aDpvLndpZHRoLGhlaWdodDpvLmhlaWdodH0pO2lmKGgubWFyZ2luVG9wPTAsaC5tYXJnaW5MZWZ0PTAsIWkmJnIpe3ZhciB1PXBhcnNlRmxvYXQobC5tYXJnaW5Ub3AsMTApLGQ9cGFyc2VGbG9hdChsLm1hcmdpbkxlZnQsMTApO2gudG9wLT1jLXUsaC5ib3R0b20tPWMtdSxoLmxlZnQtPWYtZCxoLnJpZ2h0LT1mLWQsaC5tYXJnaW5Ub3A9dSxoLm1hcmdpbkxlZnQ9ZH1yZXR1cm4oaSYmIW4/ZS5jb250YWlucyhhKTplPT09YSYmIkJPRFkiIT09YS5ub2RlTmFtZSkmJihoPWZ1bmN0aW9uKHQsZSl7dmFyIG49Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0mJmFyZ3VtZW50c1syXSxpPWp0KGUsInRvcCIpLHI9anQoZSwibGVmdCIpLG89bj8tMToxO3JldHVybiB0LnRvcCs9aSpvLHQuYm90dG9tKz1pKm8sdC5sZWZ0Kz1yKm8sdC5yaWdodCs9cipvLHR9KGgsZSkpLGh9ZnVuY3Rpb24gWXQodCl7aWYoIXR8fCF0LnBhcmVudEVsZW1lbnR8fGt0KCkpcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtmb3IodmFyIGU9dC5wYXJlbnRFbGVtZW50O2UmJiJub25lIj09PUR0KGUsInRyYW5zZm9ybSIpOyllPWUucGFyZW50RWxlbWVudDtyZXR1cm4gZXx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIEd0KHQsZSxuLGkpe3ZhciByPTQ8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzRdJiZhcmd1bWVudHNbNF0sbz17dG9wOjAsbGVmdDowfSxzPXI/WXQodCk6eHQodCxlKTtpZigidmlld3BvcnQiPT09aSlvPWZ1bmN0aW9uKHQpe3ZhciBlPTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV0sbj10Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGk9UXQodCxuKSxyPU1hdGgubWF4KG4uY2xpZW50V2lkdGgsd2luZG93LmlubmVyV2lkdGh8fDApLG89TWF0aC5tYXgobi5jbGllbnRIZWlnaHQsd2luZG93LmlubmVySGVpZ2h0fHwwKSxzPWU/MDpqdChuKSxhPWU/MDpqdChuLCJsZWZ0Iik7cmV0dXJuIEt0KHt0b3A6cy1pLnRvcCtpLm1hcmdpblRvcCxsZWZ0OmEtaS5sZWZ0K2kubWFyZ2luTGVmdCx3aWR0aDpyLGhlaWdodDpvfSl9KHMscik7ZWxzZXt2YXIgYT12b2lkIDA7InNjcm9sbFBhcmVudCI9PT1pPyJCT0RZIj09PShhPVN0KEF0KGUpKSkubm9kZU5hbWUmJihhPXQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOmE9IndpbmRvdyI9PT1pP3Qub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6aTt2YXIgbD1RdChhLHMscik7aWYoIkhUTUwiIT09YS5ub2RlTmFtZXx8ZnVuY3Rpb24gdChlKXt2YXIgbj1lLm5vZGVOYW1lO3JldHVybiJCT0RZIiE9PW4mJiJIVE1MIiE9PW4mJigiZml4ZWQiPT09RHQoZSwicG9zaXRpb24iKXx8dChBdChlKSkpfShzKSlvPWw7ZWxzZXt2YXIgYz1IdCgpLGY9Yy5oZWlnaHQsaD1jLndpZHRoO28udG9wKz1sLnRvcC1sLm1hcmdpblRvcCxvLmJvdHRvbT1mK2wudG9wLG8ubGVmdCs9bC5sZWZ0LWwubWFyZ2luTGVmdCxvLnJpZ2h0PWgrbC5sZWZ0fX1yZXR1cm4gby5sZWZ0Kz1uLG8udG9wKz1uLG8ucmlnaHQtPW4sby5ib3R0b20tPW4sb31mdW5jdGlvbiBxdCh0LGUsaSxuLHIpe3ZhciBvPTU8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzVdP2FyZ3VtZW50c1s1XTowO2lmKC0xPT09dC5pbmRleE9mKCJhdXRvIikpcmV0dXJuIHQ7dmFyIHM9R3QoaSxuLG8sciksYT17dG9wOnt3aWR0aDpzLndpZHRoLGhlaWdodDplLnRvcC1zLnRvcH0scmlnaHQ6e3dpZHRoOnMucmlnaHQtZS5yaWdodCxoZWlnaHQ6cy5oZWlnaHR9LGJvdHRvbTp7d2lkdGg6cy53aWR0aCxoZWlnaHQ6cy5ib3R0b20tZS5ib3R0b219LGxlZnQ6e3dpZHRoOmUubGVmdC1zLmxlZnQsaGVpZ2h0OnMuaGVpZ2h0fX0sbD1PYmplY3Qua2V5cyhhKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIEJ0KHtrZXk6dH0sYVt0XSx7YXJlYTooZT1hW3RdLGUud2lkdGgqZS5oZWlnaHQpfSk7dmFyIGV9KS5zb3J0KGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGUuYXJlYS10LmFyZWF9KSxjPWwuZmlsdGVyKGZ1bmN0aW9uKHQpe3ZhciBlPXQud2lkdGgsbj10LmhlaWdodDtyZXR1cm4gZT49aS5jbGllbnRXaWR0aCYmbj49aS5jbGllbnRIZWlnaHR9KSxmPTA8Yy5sZW5ndGg/Y1swXS5rZXk6bFswXS5rZXksaD10LnNwbGl0KCItIilbMV07cmV0dXJuIGYrKGg/Ii0iK2g6IiIpfWZ1bmN0aW9uIHp0KHQsZSxuKXt2YXIgaT0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbDtyZXR1cm4gUXQobixpP1l0KGUpOnh0KGUsbiksaSl9ZnVuY3Rpb24gWHQodCl7dmFyIGU9Z2V0Q29tcHV0ZWRTdHlsZSh0KSxuPXBhcnNlRmxvYXQoZS5tYXJnaW5Ub3ApK3BhcnNlRmxvYXQoZS5tYXJnaW5Cb3R0b20pLGk9cGFyc2VGbG9hdChlLm1hcmdpbkxlZnQpK3BhcnNlRmxvYXQoZS5tYXJnaW5SaWdodCk7cmV0dXJue3dpZHRoOnQub2Zmc2V0V2lkdGgraSxoZWlnaHQ6dC5vZmZzZXRIZWlnaHQrbn19ZnVuY3Rpb24gSnQodCl7dmFyIGU9e2xlZnQ6InJpZ2h0IixyaWdodDoibGVmdCIsYm90dG9tOiJ0b3AiLHRvcDoiYm90dG9tIn07cmV0dXJuIHQucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csZnVuY3Rpb24odCl7cmV0dXJuIGVbdF19KX1mdW5jdGlvbiBadCh0LGUsbil7bj1uLnNwbGl0KCItIilbMF07dmFyIGk9WHQodCkscj17d2lkdGg6aS53aWR0aCxoZWlnaHQ6aS5oZWlnaHR9LG89LTEhPT1bInJpZ2h0IiwibGVmdCJdLmluZGV4T2Yobikscz1vPyJ0b3AiOiJsZWZ0IixhPW8/ImxlZnQiOiJ0b3AiLGw9bz8iaGVpZ2h0Ijoid2lkdGgiLGM9bz8id2lkdGgiOiJoZWlnaHQiO3JldHVybiByW3NdPWVbc10rZVtsXS8yLWlbbF0vMixyW2FdPW49PT1hP2VbYV0taVtjXTplW0p0KGEpXSxyfWZ1bmN0aW9uICR0KHQsZSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maW5kP3QuZmluZChlKTp0LmZpbHRlcihlKVswXX1mdW5jdGlvbiB0ZSh0LG4sZSl7cmV0dXJuKHZvaWQgMD09PWU/dDp0LnNsaWNlKDAsZnVuY3Rpb24odCxlLG4pe2lmKEFycmF5LnByb3RvdHlwZS5maW5kSW5kZXgpcmV0dXJuIHQuZmluZEluZGV4KGZ1bmN0aW9uKHQpe3JldHVybiB0W2VdPT09bn0pO3ZhciBpPSR0KHQsZnVuY3Rpb24odCl7cmV0dXJuIHRbZV09PT1ufSk7cmV0dXJuIHQuaW5kZXhPZihpKX0odCwibmFtZSIsZSkpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuZnVuY3Rpb24mJmNvbnNvbGUud2FybigiYG1vZGlmaWVyLmZ1bmN0aW9uYCBpcyBkZXByZWNhdGVkLCB1c2UgYG1vZGlmaWVyLmZuYCEiKTt2YXIgZT10LmZ1bmN0aW9ufHx0LmZuO3QuZW5hYmxlZCYmSXQoZSkmJihuLm9mZnNldHMucG9wcGVyPUt0KG4ub2Zmc2V0cy5wb3BwZXIpLG4ub2Zmc2V0cy5yZWZlcmVuY2U9S3Qobi5vZmZzZXRzLnJlZmVyZW5jZSksbj1lKG4sdCkpfSksbn1mdW5jdGlvbiBlZSh0LG4pe3JldHVybiB0LnNvbWUoZnVuY3Rpb24odCl7dmFyIGU9dC5uYW1lO3JldHVybiB0LmVuYWJsZWQmJmU9PT1ufSl9ZnVuY3Rpb24gbmUodCl7Zm9yKHZhciBlPVshMSwibXMiLCJXZWJraXQiLCJNb3oiLCJPIl0sbj10LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoMSksaT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgcj1lW2ldLG89cj8iIityK246dDtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50LmJvZHkuc3R5bGVbb10pcmV0dXJuIG99cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWUodCl7dmFyIGU9dC5vd25lckRvY3VtZW50O3JldHVybiBlP2UuZGVmYXVsdFZpZXc6d2luZG93fWZ1bmN0aW9uIHJlKHQsZSxuLGkpe24udXBkYXRlQm91bmQ9aSxpZSh0KS5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLG4udXBkYXRlQm91bmQse3Bhc3NpdmU6ITB9KTt2YXIgcj1TdCh0KTtyZXR1cm4gZnVuY3Rpb24gdChlLG4saSxyKXt2YXIgbz0iQk9EWSI9PT1lLm5vZGVOYW1lLHM9bz9lLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXc6ZTtzLmFkZEV2ZW50TGlzdGVuZXIobixpLHtwYXNzaXZlOiEwfSksb3x8dChTdChzLnBhcmVudE5vZGUpLG4saSxyKSxyLnB1c2gocyl9KHIsInNjcm9sbCIsbi51cGRhdGVCb3VuZCxuLnNjcm9sbFBhcmVudHMpLG4uc2Nyb2xsRWxlbWVudD1yLG4uZXZlbnRzRW5hYmxlZD0hMCxufWZ1bmN0aW9uIG9lKCl7dmFyIHQsZTt0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQmJihjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLnNjaGVkdWxlVXBkYXRlKSx0aGlzLnN0YXRlPSh0PXRoaXMucmVmZXJlbmNlLGU9dGhpcy5zdGF0ZSxpZSh0KS5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLGUudXBkYXRlQm91bmQpLGUuc2Nyb2xsUGFyZW50cy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLnVwZGF0ZUJvdW5kKX0pLGUudXBkYXRlQm91bmQ9bnVsbCxlLnNjcm9sbFBhcmVudHM9W10sZS5zY3JvbGxFbGVtZW50PW51bGwsZS5ldmVudHNFbmFibGVkPSExLGUpKX1mdW5jdGlvbiBzZSh0KXtyZXR1cm4iIiE9PXQmJiFpc05hTihwYXJzZUZsb2F0KHQpKSYmaXNGaW5pdGUodCl9ZnVuY3Rpb24gYWUobixpKXtPYmplY3Qua2V5cyhpKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlPSIiOy0xIT09WyJ3aWR0aCIsImhlaWdodCIsInRvcCIsInJpZ2h0IiwiYm90dG9tIiwibGVmdCJdLmluZGV4T2YodCkmJnNlKGlbdF0pJiYoZT0icHgiKSxuLnN0eWxlW3RdPWlbdF0rZX0pfWZ1bmN0aW9uIGxlKHQsZSxuKXt2YXIgaT0kdCh0LGZ1bmN0aW9uKHQpe3JldHVybiB0Lm5hbWU9PT1lfSkscj0hIWkmJnQuc29tZShmdW5jdGlvbih0KXtyZXR1cm4gdC5uYW1lPT09biYmdC5lbmFibGVkJiZ0Lm9yZGVyPGkub3JkZXJ9KTtpZighcil7dmFyIG89ImAiK2UrImAiLHM9ImAiK24rImAiO2NvbnNvbGUud2FybihzKyIgbW9kaWZpZXIgaXMgcmVxdWlyZWQgYnkgIitvKyIgbW9kaWZpZXIgaW4gb3JkZXIgdG8gd29yaywgYmUgc3VyZSB0byBpbmNsdWRlIGl0IGJlZm9yZSAiK28rIiEiKX1yZXR1cm4gcn12YXIgY2U9WyJhdXRvLXN0YXJ0IiwiYXV0byIsImF1dG8tZW5kIiwidG9wLXN0YXJ0IiwidG9wIiwidG9wLWVuZCIsInJpZ2h0LXN0YXJ0IiwicmlnaHQiLCJyaWdodC1lbmQiLCJib3R0b20tZW5kIiwiYm90dG9tIiwiYm90dG9tLXN0YXJ0IiwibGVmdC1lbmQiLCJsZWZ0IiwibGVmdC1zdGFydCJdLGZlPWNlLnNsaWNlKDMpO2Z1bmN0aW9uIGhlKHQpe3ZhciBlPTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdJiZhcmd1bWVudHNbMV0sbj1mZS5pbmRleE9mKHQpLGk9ZmUuc2xpY2UobisxKS5jb25jYXQoZmUuc2xpY2UoMCxuKSk7cmV0dXJuIGU/aS5yZXZlcnNlKCk6aX12YXIgdWU9e0ZMSVA6ImZsaXAiLENMT0NLV0lTRToiY2xvY2t3aXNlIixDT1VOVEVSQ0xPQ0tXSVNFOiJjb3VudGVyY2xvY2t3aXNlIn07ZnVuY3Rpb24gZGUodCxyLG8sZSl7dmFyIHM9WzAsMF0sYT0tMSE9PVsicmlnaHQiLCJsZWZ0Il0uaW5kZXhPZihlKSxuPXQuc3BsaXQoLyhcK3xcLSkvKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQudHJpbSgpfSksaT1uLmluZGV4T2YoJHQobixmdW5jdGlvbih0KXtyZXR1cm4tMSE9PXQuc2VhcmNoKC8sfFxzLyl9KSk7bltpXSYmLTE9PT1uW2ldLmluZGV4T2YoIiwiKSYmY29uc29sZS53YXJuKCJPZmZzZXRzIHNlcGFyYXRlZCBieSB3aGl0ZSBzcGFjZShzKSBhcmUgZGVwcmVjYXRlZCwgdXNlIGEgY29tbWEgKCwpIGluc3RlYWQuIik7dmFyIGw9L1xzKixccyp8XHMrLyxjPS0xIT09aT9bbi5zbGljZSgwLGkpLmNvbmNhdChbbltpXS5zcGxpdChsKVswXV0pLFtuW2ldLnNwbGl0KGwpWzFdXS5jb25jYXQobi5zbGljZShpKzEpKV06W25dO3JldHVybihjPWMubWFwKGZ1bmN0aW9uKHQsZSl7dmFyIG49KDE9PT1lPyFhOmEpPyJoZWlnaHQiOiJ3aWR0aCIsaT0hMTtyZXR1cm4gdC5yZWR1Y2UoZnVuY3Rpb24odCxlKXtyZXR1cm4iIj09PXRbdC5sZW5ndGgtMV0mJi0xIT09WyIrIiwiLSJdLmluZGV4T2YoZSk/KHRbdC5sZW5ndGgtMV09ZSxpPSEwLHQpOmk/KHRbdC5sZW5ndGgtMV0rPWUsaT0hMSx0KTp0LmNvbmNhdChlKX0sW10pLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24odCxlLG4saSl7dmFyIHI9dC5tYXRjaCgvKCg/OlwtfFwrKT9cZCpcLj9cZCopKC4qKS8pLG89K3JbMV0scz1yWzJdO2lmKCFvKXJldHVybiB0O2lmKDA9PT1zLmluZGV4T2YoIiUiKSl7dmFyIGE9dm9pZCAwO3N3aXRjaChzKXtjYXNlIiVwIjphPW47YnJlYWs7Y2FzZSIlIjpjYXNlIiVyIjpkZWZhdWx0OmE9aX1yZXR1cm4gS3QoYSlbZV0vMTAwKm99aWYoInZoIj09PXN8fCJ2dyI9PT1zKXJldHVybigidmgiPT09cz9NYXRoLm1heChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0LHdpbmRvdy5pbm5lckhlaWdodHx8MCk6TWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoLHdpbmRvdy5pbm5lcldpZHRofHwwKSkvMTAwKm87cmV0dXJuIG99KHQsbixyLG8pfSl9KSkuZm9yRWFjaChmdW5jdGlvbihuLGkpe24uZm9yRWFjaChmdW5jdGlvbih0LGUpe3NlKHQpJiYoc1tpXSs9dCooIi0iPT09bltlLTFdPy0xOjEpKX0pfSksc312YXIgcGU9e3BsYWNlbWVudDoiYm90dG9tIixwb3NpdGlvbkZpeGVkOiExLGV2ZW50c0VuYWJsZWQ6ITAscmVtb3ZlT25EZXN0cm95OiExLG9uQ3JlYXRlOmZ1bmN0aW9uKCl7fSxvblVwZGF0ZTpmdW5jdGlvbigpe30sbW9kaWZpZXJzOntzaGlmdDp7b3JkZXI6MTAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24odCl7dmFyIGU9dC5wbGFjZW1lbnQsbj1lLnNwbGl0KCItIilbMF0saT1lLnNwbGl0KCItIilbMV07aWYoaSl7dmFyIHI9dC5vZmZzZXRzLG89ci5yZWZlcmVuY2Uscz1yLnBvcHBlcixhPS0xIT09WyJib3R0b20iLCJ0b3AiXS5pbmRleE9mKG4pLGw9YT8ibGVmdCI6InRvcCIsYz1hPyJ3aWR0aCI6ImhlaWdodCIsZj17c3RhcnQ6VXQoe30sbCxvW2xdKSxlbmQ6VXQoe30sbCxvW2xdK29bY10tc1tjXSl9O3Qub2Zmc2V0cy5wb3BwZXI9QnQoe30scyxmW2ldKX1yZXR1cm4gdH19LG9mZnNldDp7b3JkZXI6MjAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24odCxlKXt2YXIgbj1lLm9mZnNldCxpPXQucGxhY2VtZW50LHI9dC5vZmZzZXRzLG89ci5wb3BwZXIscz1yLnJlZmVyZW5jZSxhPWkuc3BsaXQoIi0iKVswXSxsPXZvaWQgMDtyZXR1cm4gbD1zZSgrbik/WytuLDBdOmRlKG4sbyxzLGEpLCJsZWZ0Ij09PWE/KG8udG9wKz1sWzBdLG8ubGVmdC09bFsxXSk6InJpZ2h0Ij09PWE/KG8udG9wKz1sWzBdLG8ubGVmdCs9bFsxXSk6InRvcCI9PT1hPyhvLmxlZnQrPWxbMF0sby50b3AtPWxbMV0pOiJib3R0b20iPT09YSYmKG8ubGVmdCs9bFswXSxvLnRvcCs9bFsxXSksdC5wb3BwZXI9byx0fSxvZmZzZXQ6MH0scHJldmVudE92ZXJmbG93OntvcmRlcjozMDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbih0LGkpe3ZhciBlPWkuYm91bmRhcmllc0VsZW1lbnR8fEx0KHQuaW5zdGFuY2UucG9wcGVyKTt0Lmluc3RhbmNlLnJlZmVyZW5jZT09PWUmJihlPUx0KGUpKTt2YXIgbj1uZSgidHJhbnNmb3JtIikscj10Lmluc3RhbmNlLnBvcHBlci5zdHlsZSxvPXIudG9wLHM9ci5sZWZ0LGE9cltuXTtyLnRvcD0iIixyLmxlZnQ9IiIscltuXT0iIjt2YXIgbD1HdCh0Lmluc3RhbmNlLnBvcHBlcix0Lmluc3RhbmNlLnJlZmVyZW5jZSxpLnBhZGRpbmcsZSx0LnBvc2l0aW9uRml4ZWQpO3IudG9wPW8sci5sZWZ0PXMscltuXT1hLGkuYm91bmRhcmllcz1sO3ZhciBjPWkucHJpb3JpdHksZj10Lm9mZnNldHMucG9wcGVyLGg9e3ByaW1hcnk6ZnVuY3Rpb24odCl7dmFyIGU9Zlt0XTtyZXR1cm4gZlt0XTxsW3RdJiYhaS5lc2NhcGVXaXRoUmVmZXJlbmNlJiYoZT1NYXRoLm1heChmW3RdLGxbdF0pKSxVdCh7fSx0LGUpfSxzZWNvbmRhcnk6ZnVuY3Rpb24odCl7dmFyIGU9InJpZ2h0Ij09PXQ/ImxlZnQiOiJ0b3AiLG49ZltlXTtyZXR1cm4gZlt0XT5sW3RdJiYhaS5lc2NhcGVXaXRoUmVmZXJlbmNlJiYobj1NYXRoLm1pbihmW2VdLGxbdF0tKCJyaWdodCI9PT10P2Yud2lkdGg6Zi5oZWlnaHQpKSksVXQoe30sZSxuKX19O3JldHVybiBjLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9LTEhPT1bImxlZnQiLCJ0b3AiXS5pbmRleE9mKHQpPyJwcmltYXJ5Ijoic2Vjb25kYXJ5IjtmPUJ0KHt9LGYsaFtlXSh0KSl9KSx0Lm9mZnNldHMucG9wcGVyPWYsdH0scHJpb3JpdHk6WyJsZWZ0IiwicmlnaHQiLCJ0b3AiLCJib3R0b20iXSxwYWRkaW5nOjUsYm91bmRhcmllc0VsZW1lbnQ6InNjcm9sbFBhcmVudCJ9LGtlZXBUb2dldGhlcjp7b3JkZXI6NDAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24odCl7dmFyIGU9dC5vZmZzZXRzLG49ZS5wb3BwZXIsaT1lLnJlZmVyZW5jZSxyPXQucGxhY2VtZW50LnNwbGl0KCItIilbMF0sbz1NYXRoLmZsb29yLHM9LTEhPT1bInRvcCIsImJvdHRvbSJdLmluZGV4T2YociksYT1zPyJyaWdodCI6ImJvdHRvbSIsbD1zPyJsZWZ0IjoidG9wIixjPXM/IndpZHRoIjoiaGVpZ2h0IjtyZXR1cm4gblthXTxvKGlbbF0pJiYodC5vZmZzZXRzLnBvcHBlcltsXT1vKGlbbF0pLW5bY10pLG5bbF0+byhpW2FdKSYmKHQub2Zmc2V0cy5wb3BwZXJbbF09byhpW2FdKSksdH19LGFycm93OntvcmRlcjo1MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbih0LGUpe3ZhciBuO2lmKCFsZSh0Lmluc3RhbmNlLm1vZGlmaWVycywiYXJyb3ciLCJrZWVwVG9nZXRoZXIiKSlyZXR1cm4gdDt2YXIgaT1lLmVsZW1lbnQ7aWYoInN0cmluZyI9PXR5cGVvZiBpKXtpZighKGk9dC5pbnN0YW5jZS5wb3BwZXIucXVlcnlTZWxlY3RvcihpKSkpcmV0dXJuIHR9ZWxzZSBpZighdC5pbnN0YW5jZS5wb3BwZXIuY29udGFpbnMoaSkpcmV0dXJuIGNvbnNvbGUud2FybigiV0FSTklORzogYGFycm93LmVsZW1lbnRgIG11c3QgYmUgY2hpbGQgb2YgaXRzIHBvcHBlciBlbGVtZW50ISIpLHQ7dmFyIHI9dC5wbGFjZW1lbnQuc3BsaXQoIi0iKVswXSxvPXQub2Zmc2V0cyxzPW8ucG9wcGVyLGE9by5yZWZlcmVuY2UsbD0tMSE9PVsibGVmdCIsInJpZ2h0Il0uaW5kZXhPZihyKSxjPWw/ImhlaWdodCI6IndpZHRoIixmPWw/IlRvcCI6IkxlZnQiLGg9Zi50b0xvd2VyQ2FzZSgpLHU9bD8ibGVmdCI6InRvcCIsZD1sPyJib3R0b20iOiJyaWdodCIscD1YdChpKVtjXTthW2RdLXA8c1toXSYmKHQub2Zmc2V0cy5wb3BwZXJbaF0tPXNbaF0tKGFbZF0tcCkpLGFbaF0rcD5zW2RdJiYodC5vZmZzZXRzLnBvcHBlcltoXSs9YVtoXStwLXNbZF0pLHQub2Zmc2V0cy5wb3BwZXI9S3QodC5vZmZzZXRzLnBvcHBlcik7dmFyIGc9YVtoXSthW2NdLzItcC8yLG09RHQodC5pbnN0YW5jZS5wb3BwZXIpLF89cGFyc2VGbG9hdChtWyJtYXJnaW4iK2ZdLDEwKSx2PXBhcnNlRmxvYXQobVsiYm9yZGVyIitmKyJXaWR0aCJdLDEwKSxFPWctdC5vZmZzZXRzLnBvcHBlcltoXS1fLXY7cmV0dXJuIEU9TWF0aC5tYXgoTWF0aC5taW4oc1tjXS1wLEUpLDApLHQuYXJyb3dFbGVtZW50PWksdC5vZmZzZXRzLmFycm93PShVdChuPXt9LGgsTWF0aC5yb3VuZChFKSksVXQobix1LCIiKSxuKSx0fSxlbGVtZW50OiJbeC1hcnJvd10ifSxmbGlwOntvcmRlcjo2MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbihwLGcpe2lmKGVlKHAuaW5zdGFuY2UubW9kaWZpZXJzLCJpbm5lciIpKXJldHVybiBwO2lmKHAuZmxpcHBlZCYmcC5wbGFjZW1lbnQ9PT1wLm9yaWdpbmFsUGxhY2VtZW50KXJldHVybiBwO3ZhciBtPUd0KHAuaW5zdGFuY2UucG9wcGVyLHAuaW5zdGFuY2UucmVmZXJlbmNlLGcucGFkZGluZyxnLmJvdW5kYXJpZXNFbGVtZW50LHAucG9zaXRpb25GaXhlZCksXz1wLnBsYWNlbWVudC5zcGxpdCgiLSIpWzBdLHY9SnQoXyksRT1wLnBsYWNlbWVudC5zcGxpdCgiLSIpWzFdfHwiIix5PVtdO3N3aXRjaChnLmJlaGF2aW9yKXtjYXNlIHVlLkZMSVA6eT1bXyx2XTticmVhaztjYXNlIHVlLkNMT0NLV0lTRTp5PWhlKF8pO2JyZWFrO2Nhc2UgdWUuQ09VTlRFUkNMT0NLV0lTRTp5PWhlKF8sITApO2JyZWFrO2RlZmF1bHQ6eT1nLmJlaGF2aW9yfXJldHVybiB5LmZvckVhY2goZnVuY3Rpb24odCxlKXtpZihfIT09dHx8eS5sZW5ndGg9PT1lKzEpcmV0dXJuIHA7Xz1wLnBsYWNlbWVudC5zcGxpdCgiLSIpWzBdLHY9SnQoXyk7dmFyIG4saT1wLm9mZnNldHMucG9wcGVyLHI9cC5vZmZzZXRzLnJlZmVyZW5jZSxvPU1hdGguZmxvb3Iscz0ibGVmdCI9PT1fJiZvKGkucmlnaHQpPm8oci5sZWZ0KXx8InJpZ2h0Ij09PV8mJm8oaS5sZWZ0KTxvKHIucmlnaHQpfHwidG9wIj09PV8mJm8oaS5ib3R0b20pPm8oci50b3ApfHwiYm90dG9tIj09PV8mJm8oaS50b3ApPG8oci5ib3R0b20pLGE9byhpLmxlZnQpPG8obS5sZWZ0KSxsPW8oaS5yaWdodCk+byhtLnJpZ2h0KSxjPW8oaS50b3ApPG8obS50b3ApLGY9byhpLmJvdHRvbSk+byhtLmJvdHRvbSksaD0ibGVmdCI9PT1fJiZhfHwicmlnaHQiPT09XyYmbHx8InRvcCI9PT1fJiZjfHwiYm90dG9tIj09PV8mJmYsdT0tMSE9PVsidG9wIiwiYm90dG9tIl0uaW5kZXhPZihfKSxkPSEhZy5mbGlwVmFyaWF0aW9ucyYmKHUmJiJzdGFydCI9PT1FJiZhfHx1JiYiZW5kIj09PUUmJmx8fCF1JiYic3RhcnQiPT09RSYmY3x8IXUmJiJlbmQiPT09RSYmZik7KHN8fGh8fGQpJiYocC5mbGlwcGVkPSEwLChzfHxoKSYmKF89eVtlKzFdKSxkJiYoRT0iZW5kIj09PShuPUUpPyJzdGFydCI6InN0YXJ0Ij09PW4/ImVuZCI6bikscC5wbGFjZW1lbnQ9XysoRT8iLSIrRToiIikscC5vZmZzZXRzLnBvcHBlcj1CdCh7fSxwLm9mZnNldHMucG9wcGVyLFp0KHAuaW5zdGFuY2UucG9wcGVyLHAub2Zmc2V0cy5yZWZlcmVuY2UscC5wbGFjZW1lbnQpKSxwPXRlKHAuaW5zdGFuY2UubW9kaWZpZXJzLHAsImZsaXAiKSl9KSxwfSxiZWhhdmlvcjoiZmxpcCIscGFkZGluZzo1LGJvdW5kYXJpZXNFbGVtZW50OiJ2aWV3cG9ydCJ9LGlubmVyOntvcmRlcjo3MDAsZW5hYmxlZDohMSxmbjpmdW5jdGlvbih0KXt2YXIgZT10LnBsYWNlbWVudCxuPWUuc3BsaXQoIi0iKVswXSxpPXQub2Zmc2V0cyxyPWkucG9wcGVyLG89aS5yZWZlcmVuY2Uscz0tMSE9PVsibGVmdCIsInJpZ2h0Il0uaW5kZXhPZihuKSxhPS0xPT09WyJ0b3AiLCJsZWZ0Il0uaW5kZXhPZihuKTtyZXR1cm4gcltzPyJsZWZ0IjoidG9wIl09b1tuXS0oYT9yW3M/IndpZHRoIjoiaGVpZ2h0Il06MCksdC5wbGFjZW1lbnQ9SnQoZSksdC5vZmZzZXRzLnBvcHBlcj1LdChyKSx0fX0saGlkZTp7b3JkZXI6ODAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24odCl7aWYoIWxlKHQuaW5zdGFuY2UubW9kaWZpZXJzLCJoaWRlIiwicHJldmVudE92ZXJmbG93IikpcmV0dXJuIHQ7dmFyIGU9dC5vZmZzZXRzLnJlZmVyZW5jZSxuPSR0KHQuaW5zdGFuY2UubW9kaWZpZXJzLGZ1bmN0aW9uKHQpe3JldHVybiJwcmV2ZW50T3ZlcmZsb3ciPT09dC5uYW1lfSkuYm91bmRhcmllcztpZihlLmJvdHRvbTxuLnRvcHx8ZS5sZWZ0Pm4ucmlnaHR8fGUudG9wPm4uYm90dG9tfHxlLnJpZ2h0PG4ubGVmdCl7aWYoITA9PT10LmhpZGUpcmV0dXJuIHQ7dC5oaWRlPSEwLHQuYXR0cmlidXRlc1sieC1vdXQtb2YtYm91bmRhcmllcyJdPSIifWVsc2V7aWYoITE9PT10LmhpZGUpcmV0dXJuIHQ7dC5oaWRlPSExLHQuYXR0cmlidXRlc1sieC1vdXQtb2YtYm91bmRhcmllcyJdPSExfXJldHVybiB0fX0sY29tcHV0ZVN0eWxlOntvcmRlcjo4NTAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbih0LGUpe3ZhciBuPWUueCxpPWUueSxyPXQub2Zmc2V0cy5wb3BwZXIsbz0kdCh0Lmluc3RhbmNlLm1vZGlmaWVycyxmdW5jdGlvbih0KXtyZXR1cm4iYXBwbHlTdHlsZSI9PT10Lm5hbWV9KS5ncHVBY2NlbGVyYXRpb247dm9pZCAwIT09byYmY29uc29sZS53YXJuKCJXQVJOSU5HOiBgZ3B1QWNjZWxlcmF0aW9uYCBvcHRpb24gbW92ZWQgdG8gYGNvbXB1dGVTdHlsZWAgbW9kaWZpZXIgYW5kIHdpbGwgbm90IGJlIHN1cHBvcnRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgb2YgUG9wcGVyLmpzISIpO3ZhciBzPXZvaWQgMCE9PW8/bzplLmdwdUFjY2VsZXJhdGlvbixhPVZ0KEx0KHQuaW5zdGFuY2UucG9wcGVyKSksbD17cG9zaXRpb246ci5wb3NpdGlvbn0sYz17bGVmdDpNYXRoLmZsb29yKHIubGVmdCksdG9wOk1hdGgucm91bmQoci50b3ApLGJvdHRvbTpNYXRoLnJvdW5kKHIuYm90dG9tKSxyaWdodDpNYXRoLmZsb29yKHIucmlnaHQpfSxmPSJib3R0b20iPT09bj8idG9wIjoiYm90dG9tIixoPSJyaWdodCI9PT1pPyJsZWZ0IjoicmlnaHQiLHU9bmUoInRyYW5zZm9ybSIpLGQ9dm9pZCAwLHA9dm9pZCAwO2lmKHA9ImJvdHRvbSI9PT1mPy1hLmhlaWdodCtjLmJvdHRvbTpjLnRvcCxkPSJyaWdodCI9PT1oPy1hLndpZHRoK2MucmlnaHQ6Yy5sZWZ0LHMmJnUpbFt1XT0idHJhbnNsYXRlM2QoIitkKyJweCwgIitwKyJweCwgMCkiLGxbZl09MCxsW2hdPTAsbC53aWxsQ2hhbmdlPSJ0cmFuc2Zvcm0iO2Vsc2V7dmFyIGc9ImJvdHRvbSI9PT1mPy0xOjEsbT0icmlnaHQiPT09aD8tMToxO2xbZl09cCpnLGxbaF09ZCptLGwud2lsbENoYW5nZT1mKyIsICIraH12YXIgXz17IngtcGxhY2VtZW50Ijp0LnBsYWNlbWVudH07cmV0dXJuIHQuYXR0cmlidXRlcz1CdCh7fSxfLHQuYXR0cmlidXRlcyksdC5zdHlsZXM9QnQoe30sbCx0LnN0eWxlcyksdC5hcnJvd1N0eWxlcz1CdCh7fSx0Lm9mZnNldHMuYXJyb3csdC5hcnJvd1N0eWxlcyksdH0sZ3B1QWNjZWxlcmF0aW9uOiEwLHg6ImJvdHRvbSIseToicmlnaHQifSxhcHBseVN0eWxlOntvcmRlcjo5MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbih0KXt2YXIgZSxuO3JldHVybiBhZSh0Lmluc3RhbmNlLnBvcHBlcix0LnN0eWxlcyksZT10Lmluc3RhbmNlLnBvcHBlcixuPXQuYXR0cmlidXRlcyxPYmplY3Qua2V5cyhuKS5mb3JFYWNoKGZ1bmN0aW9uKHQpeyExIT09blt0XT9lLnNldEF0dHJpYnV0ZSh0LG5bdF0pOmUucmVtb3ZlQXR0cmlidXRlKHQpfSksdC5hcnJvd0VsZW1lbnQmJk9iamVjdC5rZXlzKHQuYXJyb3dTdHlsZXMpLmxlbmd0aCYmYWUodC5hcnJvd0VsZW1lbnQsdC5hcnJvd1N0eWxlcyksdH0sb25Mb2FkOmZ1bmN0aW9uKHQsZSxuLGkscil7dmFyIG89enQocixlLHQsbi5wb3NpdGlvbkZpeGVkKSxzPXF0KG4ucGxhY2VtZW50LG8sZSx0LG4ubW9kaWZpZXJzLmZsaXAuYm91bmRhcmllc0VsZW1lbnQsbi5tb2RpZmllcnMuZmxpcC5wYWRkaW5nKTtyZXR1cm4gZS5zZXRBdHRyaWJ1dGUoIngtcGxhY2VtZW50IixzKSxhZShlLHtwb3NpdGlvbjpuLnBvc2l0aW9uRml4ZWQ/ImZpeGVkIjoiYWJzb2x1dGUifSksbn0sZ3B1QWNjZWxlcmF0aW9uOnZvaWQgMH19fSxnZT1mdW5jdGlvbigpe2Z1bmN0aW9uIG8odCxlKXt2YXIgbj10aGlzLGk9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOnt9O1d0KHRoaXMsbyksdGhpcy5zY2hlZHVsZVVwZGF0ZT1mdW5jdGlvbigpe3JldHVybiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUobi51cGRhdGUpfSx0aGlzLnVwZGF0ZT13dCh0aGlzLnVwZGF0ZS5iaW5kKHRoaXMpKSx0aGlzLm9wdGlvbnM9QnQoe30sby5EZWZhdWx0cyxpKSx0aGlzLnN0YXRlPXtpc0Rlc3Ryb3llZDohMSxpc0NyZWF0ZWQ6ITEsc2Nyb2xsUGFyZW50czpbXX0sdGhpcy5yZWZlcmVuY2U9dCYmdC5qcXVlcnk/dFswXTp0LHRoaXMucG9wcGVyPWUmJmUuanF1ZXJ5P2VbMF06ZSx0aGlzLm9wdGlvbnMubW9kaWZpZXJzPXt9LE9iamVjdC5rZXlzKEJ0KHt9LG8uRGVmYXVsdHMubW9kaWZpZXJzLGkubW9kaWZpZXJzKSkuZm9yRWFjaChmdW5jdGlvbih0KXtuLm9wdGlvbnMubW9kaWZpZXJzW3RdPUJ0KHt9LG8uRGVmYXVsdHMubW9kaWZpZXJzW3RdfHx7fSxpLm1vZGlmaWVycz9pLm1vZGlmaWVyc1t0XTp7fSl9KSx0aGlzLm1vZGlmaWVycz1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMubW9kaWZpZXJzKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIEJ0KHtuYW1lOnR9LG4ub3B0aW9ucy5tb2RpZmllcnNbdF0pfSkuc29ydChmdW5jdGlvbih0LGUpe3JldHVybiB0Lm9yZGVyLWUub3JkZXJ9KSx0aGlzLm1vZGlmaWVycy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuZW5hYmxlZCYmSXQodC5vbkxvYWQpJiZ0Lm9uTG9hZChuLnJlZmVyZW5jZSxuLnBvcHBlcixuLm9wdGlvbnMsdCxuLnN0YXRlKX0pLHRoaXMudXBkYXRlKCk7dmFyIHI9dGhpcy5vcHRpb25zLmV2ZW50c0VuYWJsZWQ7ciYmdGhpcy5lbmFibGVFdmVudExpc3RlbmVycygpLHRoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZD1yfXJldHVybiBGdChvLFt7a2V5OiJ1cGRhdGUiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIXRoaXMuc3RhdGUuaXNEZXN0cm95ZWQpe3ZhciB0PXtpbnN0YW5jZTp0aGlzLHN0eWxlczp7fSxhcnJvd1N0eWxlczp7fSxhdHRyaWJ1dGVzOnt9LGZsaXBwZWQ6ITEsb2Zmc2V0czp7fX07dC5vZmZzZXRzLnJlZmVyZW5jZT16dCh0aGlzLnN0YXRlLHRoaXMucG9wcGVyLHRoaXMucmVmZXJlbmNlLHRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkKSx0LnBsYWNlbWVudD1xdCh0aGlzLm9wdGlvbnMucGxhY2VtZW50LHQub2Zmc2V0cy5yZWZlcmVuY2UsdGhpcy5wb3BwZXIsdGhpcy5yZWZlcmVuY2UsdGhpcy5vcHRpb25zLm1vZGlmaWVycy5mbGlwLmJvdW5kYXJpZXNFbGVtZW50LHRoaXMub3B0aW9ucy5tb2RpZmllcnMuZmxpcC5wYWRkaW5nKSx0Lm9yaWdpbmFsUGxhY2VtZW50PXQucGxhY2VtZW50LHQucG9zaXRpb25GaXhlZD10aGlzLm9wdGlvbnMucG9zaXRpb25GaXhlZCx0Lm9mZnNldHMucG9wcGVyPVp0KHRoaXMucG9wcGVyLHQub2Zmc2V0cy5yZWZlcmVuY2UsdC5wbGFjZW1lbnQpLHQub2Zmc2V0cy5wb3BwZXIucG9zaXRpb249dGhpcy5vcHRpb25zLnBvc2l0aW9uRml4ZWQ/ImZpeGVkIjoiYWJzb2x1dGUiLHQ9dGUodGhpcy5tb2RpZmllcnMsdCksdGhpcy5zdGF0ZS5pc0NyZWF0ZWQ/dGhpcy5vcHRpb25zLm9uVXBkYXRlKHQpOih0aGlzLnN0YXRlLmlzQ3JlYXRlZD0hMCx0aGlzLm9wdGlvbnMub25DcmVhdGUodCkpfX0uY2FsbCh0aGlzKX19LHtrZXk6ImRlc3Ryb3kiLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGUuaXNEZXN0cm95ZWQ9ITAsZWUodGhpcy5tb2RpZmllcnMsImFwcGx5U3R5bGUiKSYmKHRoaXMucG9wcGVyLnJlbW92ZUF0dHJpYnV0ZSgieC1wbGFjZW1lbnQiKSx0aGlzLnBvcHBlci5zdHlsZS5wb3NpdGlvbj0iIix0aGlzLnBvcHBlci5zdHlsZS50b3A9IiIsdGhpcy5wb3BwZXIuc3R5bGUubGVmdD0iIix0aGlzLnBvcHBlci5zdHlsZS5yaWdodD0iIix0aGlzLnBvcHBlci5zdHlsZS5ib3R0b209IiIsdGhpcy5wb3BwZXIuc3R5bGUud2lsbENoYW5nZT0iIix0aGlzLnBvcHBlci5zdHlsZVtuZSgidHJhbnNmb3JtIildPSIiKSx0aGlzLmRpc2FibGVFdmVudExpc3RlbmVycygpLHRoaXMub3B0aW9ucy5yZW1vdmVPbkRlc3Ryb3kmJnRoaXMucG9wcGVyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5wb3BwZXIpLHRoaXN9LmNhbGwodGhpcyl9fSx7a2V5OiJlbmFibGVFdmVudExpc3RlbmVycyIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWR8fCh0aGlzLnN0YXRlPXJlKHRoaXMucmVmZXJlbmNlLHRoaXMub3B0aW9ucyx0aGlzLnN0YXRlLHRoaXMuc2NoZWR1bGVVcGRhdGUpKX0uY2FsbCh0aGlzKX19LHtrZXk6ImRpc2FibGVFdmVudExpc3RlbmVycyIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gb2UuY2FsbCh0aGlzKX19XSksb30oKTtnZS5VdGlscz0oInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/d2luZG93Omdsb2JhbCkuUG9wcGVyVXRpbHMsZ2UucGxhY2VtZW50cz1jZSxnZS5EZWZhdWx0cz1wZTt2YXIgbWUsX2UsdmUsRWUseWUsYmUsVGUsQ2Usd2UsSWUsRGUsQWUsU2UsT2UsTmUsa2UsTGUsUGUseGUsamUsTWUsUmUsSGUsV2UsRmUsVWUsQmUsS2UsVmUsUWUsWWUsR2UscWUsemUsWGUsSmUsWmUsJGUsdG4sZW4sbm4scm4sb24sc24sYW4sbG4sY24sZm4saG4sdW4sZG4scG4sZ24sbW4sX24sdm4sRW4seW4sYm4sVG4sQ24sd24sSW4sRG4sQW4sU24sT24sTm4sa24sTG4sUG4seG4sam4sTW4sUm4sSG4sV24sRm4sVW4sQm4sS24sVm4sUW4sWW4sR24scW4sem4sWG4sSm4sWm4sJG4sdGksZWksbmksaWkscmksb2ksc2ksYWksbGksY2ksZmksaGksdWksZGkscGksZ2ksbWksX2ksdmksRWkseWksYmksVGk9KF9lPSJkcm9wZG93biIsRWU9Ii4iKyh2ZT0iYnMuZHJvcGRvd24iKSx5ZT0iLmRhdGEtYXBpIixiZT0obWU9ZSkuZm5bX2VdLFRlPW5ldyBSZWdFeHAoIjM4fDQwfDI3IiksQ2U9e0hJREU6ImhpZGUiK0VlLEhJRERFTjoiaGlkZGVuIitFZSxTSE9XOiJzaG93IitFZSxTSE9XTjoic2hvd24iK0VlLENMSUNLOiJjbGljayIrRWUsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrIitFZSt5ZSxLRVlET1dOX0RBVEFfQVBJOiJrZXlkb3duIitFZSt5ZSxLRVlVUF9EQVRBX0FQSToia2V5dXAiK0VlK3llfSx3ZT0iZGlzYWJsZWQiLEllPSJzaG93IixEZT0iZHJvcHVwIixBZT0iZHJvcHJpZ2h0IixTZT0iZHJvcGxlZnQiLE9lPSJkcm9wZG93bi1tZW51LXJpZ2h0IixOZT0icG9zaXRpb24tc3RhdGljIixrZT0nW2RhdGEtdG9nZ2xlPSJkcm9wZG93biJdJyxMZT0iLmRyb3Bkb3duIGZvcm0iLFBlPSIuZHJvcGRvd24tbWVudSIseGU9Ii5uYXZiYXItbmF2IixqZT0iLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkiLE1lPSJ0b3Atc3RhcnQiLFJlPSJ0b3AtZW5kIixIZT0iYm90dG9tLXN0YXJ0IixXZT0iYm90dG9tLWVuZCIsRmU9InJpZ2h0LXN0YXJ0IixVZT0ibGVmdC1zdGFydCIsQmU9e29mZnNldDowLGZsaXA6ITAsYm91bmRhcnk6InNjcm9sbFBhcmVudCIscmVmZXJlbmNlOiJ0b2dnbGUiLGRpc3BsYXk6ImR5bmFtaWMifSxLZT17b2Zmc2V0OiIobnVtYmVyfHN0cmluZ3xmdW5jdGlvbikiLGZsaXA6ImJvb2xlYW4iLGJvdW5kYXJ5OiIoc3RyaW5nfGVsZW1lbnQpIixyZWZlcmVuY2U6IihzdHJpbmd8ZWxlbWVudCkiLGRpc3BsYXk6InN0cmluZyJ9LFZlPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbCh0LGUpe3RoaXMuX2VsZW1lbnQ9dCx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX21lbnU9dGhpcy5fZ2V0TWVudUVsZW1lbnQoKSx0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXZhciB0PWwucHJvdG90eXBlO3JldHVybiB0LnRvZ2dsZT1mdW5jdGlvbigpe2lmKCF0aGlzLl9lbGVtZW50LmRpc2FibGVkJiYhbWUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3Mod2UpKXt2YXIgdD1sLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KSxlPW1lKHRoaXMuX21lbnUpLmhhc0NsYXNzKEllKTtpZihsLl9jbGVhck1lbnVzKCksIWUpe3ZhciBuPXtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9LGk9bWUuRXZlbnQoQ2UuU0hPVyxuKTtpZihtZSh0KS50cmlnZ2VyKGkpLCFpLmlzRGVmYXVsdFByZXZlbnRlZCgpKXtpZighdGhpcy5faW5OYXZiYXIpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZ2UpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwIGRyb3Bkb3duIHJlcXVpcmUgUG9wcGVyLmpzIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7dmFyIHI9dGhpcy5fZWxlbWVudDsicGFyZW50Ij09PXRoaXMuX2NvbmZpZy5yZWZlcmVuY2U/cj10Omd0LmlzRWxlbWVudCh0aGlzLl9jb25maWcucmVmZXJlbmNlKSYmKHI9dGhpcy5fY29uZmlnLnJlZmVyZW5jZSwidW5kZWZpbmVkIiE9dHlwZW9mIHRoaXMuX2NvbmZpZy5yZWZlcmVuY2UuanF1ZXJ5JiYocj10aGlzLl9jb25maWcucmVmZXJlbmNlWzBdKSksInNjcm9sbFBhcmVudCIhPT10aGlzLl9jb25maWcuYm91bmRhcnkmJm1lKHQpLmFkZENsYXNzKE5lKSx0aGlzLl9wb3BwZXI9bmV3IGdlKHIsdGhpcy5fbWVudSx0aGlzLl9nZXRQb3BwZXJDb25maWcoKSl9Im9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJjA9PT1tZSh0KS5jbG9zZXN0KHhlKS5sZW5ndGgmJm1lKGRvY3VtZW50LmJvZHkpLmNoaWxkcmVuKCkub24oIm1vdXNlb3ZlciIsbnVsbCxtZS5ub29wKSx0aGlzLl9lbGVtZW50LmZvY3VzKCksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCEwKSxtZSh0aGlzLl9tZW51KS50b2dnbGVDbGFzcyhJZSksbWUodCkudG9nZ2xlQ2xhc3MoSWUpLnRyaWdnZXIobWUuRXZlbnQoQ2UuU0hPV04sbikpfX19fSx0LmRpc3Bvc2U9ZnVuY3Rpb24oKXttZS5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsdmUpLG1lKHRoaXMuX2VsZW1lbnQpLm9mZihFZSksdGhpcy5fZWxlbWVudD1udWxsLCh0aGlzLl9tZW51PW51bGwpIT09dGhpcy5fcG9wcGVyJiYodGhpcy5fcG9wcGVyLmRlc3Ryb3koKSx0aGlzLl9wb3BwZXI9bnVsbCl9LHQudXBkYXRlPWZ1bmN0aW9uKCl7dGhpcy5faW5OYXZiYXI9dGhpcy5fZGV0ZWN0TmF2YmFyKCksbnVsbCE9PXRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLnNjaGVkdWxlVXBkYXRlKCl9LHQuX2FkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczttZSh0aGlzLl9lbGVtZW50KS5vbihDZS5DTElDSyxmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSxlLnRvZ2dsZSgpfSl9LHQuX2dldENvbmZpZz1mdW5jdGlvbih0KXtyZXR1cm4gdD1jKHt9LHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCxtZSh0aGlzLl9lbGVtZW50KS5kYXRhKCksdCksZ3QudHlwZUNoZWNrQ29uZmlnKF9lLHQsdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSksdH0sdC5fZ2V0TWVudUVsZW1lbnQ9ZnVuY3Rpb24oKXtpZighdGhpcy5fbWVudSl7dmFyIHQ9bC5fZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7dGhpcy5fbWVudT1tZSh0KS5maW5kKFBlKVswXX1yZXR1cm4gdGhpcy5fbWVudX0sdC5fZ2V0UGxhY2VtZW50PWZ1bmN0aW9uKCl7dmFyIHQ9bWUodGhpcy5fZWxlbWVudCkucGFyZW50KCksZT1IZTtyZXR1cm4gdC5oYXNDbGFzcyhEZSk/KGU9TWUsbWUodGhpcy5fbWVudSkuaGFzQ2xhc3MoT2UpJiYoZT1SZSkpOnQuaGFzQ2xhc3MoQWUpP2U9RmU6dC5oYXNDbGFzcyhTZSk/ZT1VZTptZSh0aGlzLl9tZW51KS5oYXNDbGFzcyhPZSkmJihlPVdlKSxlfSx0Ll9kZXRlY3ROYXZiYXI9ZnVuY3Rpb24oKXtyZXR1cm4gMDxtZSh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KCIubmF2YmFyIikubGVuZ3RofSx0Ll9nZXRQb3BwZXJDb25maWc9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9e307ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX2NvbmZpZy5vZmZzZXQ/dC5mbj1mdW5jdGlvbih0KXtyZXR1cm4gdC5vZmZzZXRzPWMoe30sdC5vZmZzZXRzLGUuX2NvbmZpZy5vZmZzZXQodC5vZmZzZXRzKXx8e30pLHR9OnQub2Zmc2V0PXRoaXMuX2NvbmZpZy5vZmZzZXQ7dmFyIG49e3BsYWNlbWVudDp0aGlzLl9nZXRQbGFjZW1lbnQoKSxtb2RpZmllcnM6e29mZnNldDp0LGZsaXA6e2VuYWJsZWQ6dGhpcy5fY29uZmlnLmZsaXB9LHByZXZlbnRPdmVyZmxvdzp7Ym91bmRhcmllc0VsZW1lbnQ6dGhpcy5fY29uZmlnLmJvdW5kYXJ5fX19O3JldHVybiJzdGF0aWMiPT09dGhpcy5fY29uZmlnLmRpc3BsYXkmJihuLm1vZGlmaWVycy5hcHBseVN0eWxlPXtlbmFibGVkOiExfSksbn0sbC5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1tZSh0aGlzKS5kYXRhKHZlKTtpZih0fHwodD1uZXcgbCh0aGlzLCJvYmplY3QiPT10eXBlb2YgZT9lOm51bGwpLG1lKHRoaXMpLmRhdGEodmUsdCkpLCJzdHJpbmciPT10eXBlb2YgZSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W2VdKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytlKyciJyk7dFtlXSgpfX0pfSxsLl9jbGVhck1lbnVzPWZ1bmN0aW9uKHQpe2lmKCF0fHwzIT09dC53aGljaCYmKCJrZXl1cCIhPT10LnR5cGV8fDk9PT10LndoaWNoKSlmb3IodmFyIGU9bWUubWFrZUFycmF5KG1lKGtlKSksbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1sLl9nZXRQYXJlbnRGcm9tRWxlbWVudChlW25dKSxyPW1lKGVbbl0pLmRhdGEodmUpLG89e3JlbGF0ZWRUYXJnZXQ6ZVtuXX07aWYocil7dmFyIHM9ci5fbWVudTtpZihtZShpKS5oYXNDbGFzcyhJZSkmJiEodCYmKCJjbGljayI9PT10LnR5cGUmJi9pbnB1dHx0ZXh0YXJlYS9pLnRlc3QodC50YXJnZXQudGFnTmFtZSl8fCJrZXl1cCI9PT10LnR5cGUmJjk9PT10LndoaWNoKSYmbWUuY29udGFpbnMoaSx0LnRhcmdldCkpKXt2YXIgYT1tZS5FdmVudChDZS5ISURFLG8pO21lKGkpLnRyaWdnZXIoYSksYS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8KCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZtZShkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9mZigibW91c2VvdmVyIixudWxsLG1lLm5vb3ApLGVbbl0uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSxtZShzKS5yZW1vdmVDbGFzcyhJZSksbWUoaSkucmVtb3ZlQ2xhc3MoSWUpLnRyaWdnZXIobWUuRXZlbnQoQ2UuSElEREVOLG8pKSl9fX19LGwuX2dldFBhcmVudEZyb21FbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlLG49Z3QuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTtyZXR1cm4gbiYmKGU9bWUobilbMF0pLGV8fHQucGFyZW50Tm9kZX0sbC5fZGF0YUFwaUtleWRvd25IYW5kbGVyPWZ1bmN0aW9uKHQpe2lmKCgvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KHQudGFyZ2V0LnRhZ05hbWUpPyEoMzI9PT10LndoaWNofHwyNyE9PXQud2hpY2gmJig0MCE9PXQud2hpY2gmJjM4IT09dC53aGljaHx8bWUodC50YXJnZXQpLmNsb3Nlc3QoUGUpLmxlbmd0aCkpOlRlLnRlc3QodC53aGljaCkpJiYodC5wcmV2ZW50RGVmYXVsdCgpLHQuc3RvcFByb3BhZ2F0aW9uKCksIXRoaXMuZGlzYWJsZWQmJiFtZSh0aGlzKS5oYXNDbGFzcyh3ZSkpKXt2YXIgZT1sLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzKSxuPW1lKGUpLmhhc0NsYXNzKEllKTtpZigobnx8Mjc9PT10LndoaWNoJiYzMj09PXQud2hpY2gpJiYoIW58fDI3IT09dC53aGljaCYmMzIhPT10LndoaWNoKSl7dmFyIGk9bWUoZSkuZmluZChqZSkuZ2V0KCk7aWYoMCE9PWkubGVuZ3RoKXt2YXIgcj1pLmluZGV4T2YodC50YXJnZXQpOzM4PT09dC53aGljaCYmMDxyJiZyLS0sNDA9PT10LndoaWNoJiZyPGkubGVuZ3RoLTEmJnIrKyxyPDAmJihyPTApLGlbcl0uZm9jdXMoKX19ZWxzZXtpZigyNz09PXQud2hpY2gpe3ZhciBvPW1lKGUpLmZpbmQoa2UpWzBdO21lKG8pLnRyaWdnZXIoImZvY3VzIil9bWUodGhpcykudHJpZ2dlcigiY2xpY2siKX19fSxzKGwsbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMS4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBCZX19LHtrZXk6IkRlZmF1bHRUeXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gS2V9fV0pLGx9KCksbWUoZG9jdW1lbnQpLm9uKENlLktFWURPV05fREFUQV9BUEksa2UsVmUuX2RhdGFBcGlLZXlkb3duSGFuZGxlcikub24oQ2UuS0VZRE9XTl9EQVRBX0FQSSxQZSxWZS5fZGF0YUFwaUtleWRvd25IYW5kbGVyKS5vbihDZS5DTElDS19EQVRBX0FQSSsiICIrQ2UuS0VZVVBfREFUQV9BUEksVmUuX2NsZWFyTWVudXMpLm9uKENlLkNMSUNLX0RBVEFfQVBJLGtlLGZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKSx0LnN0b3BQcm9wYWdhdGlvbigpLFZlLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChtZSh0aGlzKSwidG9nZ2xlIil9KS5vbihDZS5DTElDS19EQVRBX0FQSSxMZSxmdW5jdGlvbih0KXt0LnN0b3BQcm9wYWdhdGlvbigpfSksbWUuZm5bX2VdPVZlLl9qUXVlcnlJbnRlcmZhY2UsbWUuZm5bX2VdLkNvbnN0cnVjdG9yPVZlLG1lLmZuW19lXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIG1lLmZuW19lXT1iZSxWZS5falF1ZXJ5SW50ZXJmYWNlfSxWZSksQ2k9KFllPSJtb2RhbCIscWU9Ii4iKyhHZT0iYnMubW9kYWwiKSx6ZT0oUWU9ZSkuZm5bWWVdLFhlPXtiYWNrZHJvcDohMCxrZXlib2FyZDohMCxmb2N1czohMCxzaG93OiEwfSxKZT17YmFja2Ryb3A6Iihib29sZWFufHN0cmluZykiLGtleWJvYXJkOiJib29sZWFuIixmb2N1czoiYm9vbGVhbiIsc2hvdzoiYm9vbGVhbiJ9LFplPXtISURFOiJoaWRlIitxZSxISURERU46ImhpZGRlbiIrcWUsU0hPVzoic2hvdyIrcWUsU0hPV046InNob3duIitxZSxGT0NVU0lOOiJmb2N1c2luIitxZSxSRVNJWkU6InJlc2l6ZSIrcWUsQ0xJQ0tfRElTTUlTUzoiY2xpY2suZGlzbWlzcyIrcWUsS0VZRE9XTl9ESVNNSVNTOiJrZXlkb3duLmRpc21pc3MiK3FlLE1PVVNFVVBfRElTTUlTUzoibW91c2V1cC5kaXNtaXNzIitxZSxNT1VTRURPV05fRElTTUlTUzoibW91c2Vkb3duLmRpc21pc3MiK3FlLENMSUNLX0RBVEFfQVBJOiJjbGljayIrcWUrIi5kYXRhLWFwaSJ9LCRlPSJtb2RhbC1zY3JvbGxiYXItbWVhc3VyZSIsdG49Im1vZGFsLWJhY2tkcm9wIixlbj0ibW9kYWwtb3BlbiIsbm49ImZhZGUiLHJuPSJzaG93Iixvbj17RElBTE9HOiIubW9kYWwtZGlhbG9nIixEQVRBX1RPR0dMRTonW2RhdGEtdG9nZ2xlPSJtb2RhbCJdJyxEQVRBX0RJU01JU1M6J1tkYXRhLWRpc21pc3M9Im1vZGFsIl0nLEZJWEVEX0NPTlRFTlQ6Ii5maXhlZC10b3AsIC5maXhlZC1ib3R0b20sIC5pcy1maXhlZCwgLnN0aWNreS10b3AiLFNUSUNLWV9DT05URU5UOiIuc3RpY2t5LXRvcCIsTkFWQkFSX1RPR0dMRVI6Ii5uYXZiYXItdG9nZ2xlciJ9LHNuPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0LGUpe3RoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcoZSksdGhpcy5fZWxlbWVudD10LHRoaXMuX2RpYWxvZz1RZSh0KS5maW5kKG9uLkRJQUxPRylbMF0sdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2lzQm9keU92ZXJmbG93aW5nPSExLHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9ITEsdGhpcy5fc2Nyb2xsYmFyV2lkdGg9MH12YXIgdD1yLnByb3RvdHlwZTtyZXR1cm4gdC50b2dnbGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2lzU2hvd24/dGhpcy5oaWRlKCk6dGhpcy5zaG93KHQpfSx0LnNob3c9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztpZighdGhpcy5faXNUcmFuc2l0aW9uaW5nJiYhdGhpcy5faXNTaG93bil7UWUodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3Mobm4pJiYodGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwKTt2YXIgbj1RZS5FdmVudChaZS5TSE9XLHtyZWxhdGVkVGFyZ2V0OnR9KTtRZSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKG4pLHRoaXMuX2lzU2hvd258fG4uaXNEZWZhdWx0UHJldmVudGVkKCl8fCh0aGlzLl9pc1Nob3duPSEwLHRoaXMuX2NoZWNrU2Nyb2xsYmFyKCksdGhpcy5fc2V0U2Nyb2xsYmFyKCksdGhpcy5fYWRqdXN0RGlhbG9nKCksUWUoZG9jdW1lbnQuYm9keSkuYWRkQ2xhc3MoZW4pLHRoaXMuX3NldEVzY2FwZUV2ZW50KCksdGhpcy5fc2V0UmVzaXplRXZlbnQoKSxRZSh0aGlzLl9lbGVtZW50KS5vbihaZS5DTElDS19ESVNNSVNTLG9uLkRBVEFfRElTTUlTUyxmdW5jdGlvbih0KXtyZXR1cm4gZS5oaWRlKHQpfSksUWUodGhpcy5fZGlhbG9nKS5vbihaZS5NT1VTRURPV05fRElTTUlTUyxmdW5jdGlvbigpe1FlKGUuX2VsZW1lbnQpLm9uZShaZS5NT1VTRVVQX0RJU01JU1MsZnVuY3Rpb24odCl7UWUodC50YXJnZXQpLmlzKGUuX2VsZW1lbnQpJiYoZS5faWdub3JlQmFja2Ryb3BDbGljaz0hMCl9KX0pLHRoaXMuX3Nob3dCYWNrZHJvcChmdW5jdGlvbigpe3JldHVybiBlLl9zaG93RWxlbWVudCh0KX0pKX19LHQuaGlkZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzO2lmKHQmJnQucHJldmVudERlZmF1bHQoKSwhdGhpcy5faXNUcmFuc2l0aW9uaW5nJiZ0aGlzLl9pc1Nob3duKXt2YXIgbj1RZS5FdmVudChaZS5ISURFKTtpZihRZSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKG4pLHRoaXMuX2lzU2hvd24mJiFuLmlzRGVmYXVsdFByZXZlbnRlZCgpKXt0aGlzLl9pc1Nob3duPSExO3ZhciBpPVFlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKG5uKTtpZihpJiYodGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwKSx0aGlzLl9zZXRFc2NhcGVFdmVudCgpLHRoaXMuX3NldFJlc2l6ZUV2ZW50KCksUWUoZG9jdW1lbnQpLm9mZihaZS5GT0NVU0lOKSxRZSh0aGlzLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhybiksUWUodGhpcy5fZWxlbWVudCkub2ZmKFplLkNMSUNLX0RJU01JU1MpLFFlKHRoaXMuX2RpYWxvZykub2ZmKFplLk1PVVNFRE9XTl9ESVNNSVNTKSxpKXt2YXIgcj1ndC5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtRZSh0aGlzLl9lbGVtZW50KS5vbmUoZ3QuVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24odCl7cmV0dXJuIGUuX2hpZGVNb2RhbCh0KX0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKHIpfWVsc2UgdGhpcy5faGlkZU1vZGFsKCl9fX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7UWUucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LEdlKSxRZSh3aW5kb3csZG9jdW1lbnQsdGhpcy5fZWxlbWVudCx0aGlzLl9iYWNrZHJvcCkub2ZmKHFlKSx0aGlzLl9jb25maWc9bnVsbCx0aGlzLl9lbGVtZW50PW51bGwsdGhpcy5fZGlhbG9nPW51bGwsdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPW51bGwsdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmc9bnVsbCx0aGlzLl9pZ25vcmVCYWNrZHJvcENsaWNrPW51bGwsdGhpcy5fc2Nyb2xsYmFyV2lkdGg9bnVsbH0sdC5oYW5kbGVVcGRhdGU9ZnVuY3Rpb24oKXt0aGlzLl9hZGp1c3REaWFsb2coKX0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybiB0PWMoe30sWGUsdCksZ3QudHlwZUNoZWNrQ29uZmlnKFllLHQsSmUpLHR9LHQuX3Nob3dFbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj1RZSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhubik7dGhpcy5fZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERXx8ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50KSx0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9ImJsb2NrIix0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSx0aGlzLl9lbGVtZW50LnNjcm9sbFRvcD0wLG4mJmd0LnJlZmxvdyh0aGlzLl9lbGVtZW50KSxRZSh0aGlzLl9lbGVtZW50KS5hZGRDbGFzcyhybiksdGhpcy5fY29uZmlnLmZvY3VzJiZ0aGlzLl9lbmZvcmNlRm9jdXMoKTt2YXIgaT1RZS5FdmVudChaZS5TSE9XTix7cmVsYXRlZFRhcmdldDp0fSkscj1mdW5jdGlvbigpe2UuX2NvbmZpZy5mb2N1cyYmZS5fZWxlbWVudC5mb2N1cygpLGUuX2lzVHJhbnNpdGlvbmluZz0hMSxRZShlLl9lbGVtZW50KS50cmlnZ2VyKGkpfTtpZihuKXt2YXIgbz1ndC5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtRZSh0aGlzLl9kaWFsb2cpLm9uZShndC5UUkFOU0lUSU9OX0VORCxyKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChvKX1lbHNlIHIoKX0sdC5fZW5mb3JjZUZvY3VzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztRZShkb2N1bWVudCkub2ZmKFplLkZPQ1VTSU4pLm9uKFplLkZPQ1VTSU4sZnVuY3Rpb24odCl7ZG9jdW1lbnQhPT10LnRhcmdldCYmZS5fZWxlbWVudCE9PXQudGFyZ2V0JiYwPT09UWUoZS5fZWxlbWVudCkuaGFzKHQudGFyZ2V0KS5sZW5ndGgmJmUuX2VsZW1lbnQuZm9jdXMoKX0pfSx0Ll9zZXRFc2NhcGVFdmVudD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5faXNTaG93biYmdGhpcy5fY29uZmlnLmtleWJvYXJkP1FlKHRoaXMuX2VsZW1lbnQpLm9uKFplLktFWURPV05fRElTTUlTUyxmdW5jdGlvbih0KXsyNz09PXQud2hpY2gmJih0LnByZXZlbnREZWZhdWx0KCksZS5oaWRlKCkpfSk6dGhpcy5faXNTaG93bnx8UWUodGhpcy5fZWxlbWVudCkub2ZmKFplLktFWURPV05fRElTTUlTUyl9LHQuX3NldFJlc2l6ZUV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9pc1Nob3duP1FlKHdpbmRvdykub24oWmUuUkVTSVpFLGZ1bmN0aW9uKHQpe3JldHVybiBlLmhhbmRsZVVwZGF0ZSh0KX0pOlFlKHdpbmRvdykub2ZmKFplLlJFU0laRSl9LHQuX2hpZGVNb2RhbD1mdW5jdGlvbigpe3ZhciB0PXRoaXM7dGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5PSJub25lIix0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iLCEwKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fc2hvd0JhY2tkcm9wKGZ1bmN0aW9uKCl7UWUoZG9jdW1lbnQuYm9keSkucmVtb3ZlQ2xhc3MoZW4pLHQuX3Jlc2V0QWRqdXN0bWVudHMoKSx0Ll9yZXNldFNjcm9sbGJhcigpLFFlKHQuX2VsZW1lbnQpLnRyaWdnZXIoWmUuSElEREVOKX0pfSx0Ll9yZW1vdmVCYWNrZHJvcD1mdW5jdGlvbigpe3RoaXMuX2JhY2tkcm9wJiYoUWUodGhpcy5fYmFja2Ryb3ApLnJlbW92ZSgpLHRoaXMuX2JhY2tkcm9wPW51bGwpfSx0Ll9zaG93QmFja2Ryb3A9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPVFlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKG5uKT9ubjoiIjtpZih0aGlzLl9pc1Nob3duJiZ0aGlzLl9jb25maWcuYmFja2Ryb3Ape2lmKHRoaXMuX2JhY2tkcm9wPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2JhY2tkcm9wLmNsYXNzTmFtZT10bixuJiZRZSh0aGlzLl9iYWNrZHJvcCkuYWRkQ2xhc3MobiksUWUodGhpcy5fYmFja2Ryb3ApLmFwcGVuZFRvKGRvY3VtZW50LmJvZHkpLFFlKHRoaXMuX2VsZW1lbnQpLm9uKFplLkNMSUNLX0RJU01JU1MsZnVuY3Rpb24odCl7ZS5faWdub3JlQmFja2Ryb3BDbGljaz9lLl9pZ25vcmVCYWNrZHJvcENsaWNrPSExOnQudGFyZ2V0PT09dC5jdXJyZW50VGFyZ2V0JiYoInN0YXRpYyI9PT1lLl9jb25maWcuYmFja2Ryb3A/ZS5fZWxlbWVudC5mb2N1cygpOmUuaGlkZSgpKX0pLG4mJmd0LnJlZmxvdyh0aGlzLl9iYWNrZHJvcCksUWUodGhpcy5fYmFja2Ryb3ApLmFkZENsYXNzKHJuKSwhdClyZXR1cm47aWYoIW4pcmV0dXJuIHZvaWQgdCgpO3ZhciBpPWd0LmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2JhY2tkcm9wKTtRZSh0aGlzLl9iYWNrZHJvcCkub25lKGd0LlRSQU5TSVRJT05fRU5ELHQpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGkpfWVsc2UgaWYoIXRoaXMuX2lzU2hvd24mJnRoaXMuX2JhY2tkcm9wKXtRZSh0aGlzLl9iYWNrZHJvcCkucmVtb3ZlQ2xhc3Mocm4pO3ZhciByPWZ1bmN0aW9uKCl7ZS5fcmVtb3ZlQmFja2Ryb3AoKSx0JiZ0KCl9O2lmKFFlKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKG5uKSl7dmFyIG89Z3QuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fYmFja2Ryb3ApO1FlKHRoaXMuX2JhY2tkcm9wKS5vbmUoZ3QuVFJBTlNJVElPTl9FTkQscikuZW11bGF0ZVRyYW5zaXRpb25FbmQobyl9ZWxzZSByKCl9ZWxzZSB0JiZ0KCl9LHQuX2FkanVzdERpYWxvZz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuX2VsZW1lbnQuc2Nyb2xsSGVpZ2h0PmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7IXRoaXMuX2lzQm9keU92ZXJmbG93aW5nJiZ0JiYodGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nTGVmdD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKSx0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyYmIXQmJih0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKX0sdC5fcmVzZXRBZGp1c3RtZW50cz1mdW5jdGlvbigpe3RoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQ9IiIsdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQ9IiJ9LHQuX2NoZWNrU2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLl9pc0JvZHlPdmVyZmxvd2luZz10LmxlZnQrdC5yaWdodDx3aW5kb3cuaW5uZXJXaWR0aCx0aGlzLl9zY3JvbGxiYXJXaWR0aD10aGlzLl9nZXRTY3JvbGxiYXJXaWR0aCgpfSx0Ll9zZXRTY3JvbGxiYXI9ZnVuY3Rpb24oKXt2YXIgcj10aGlzO2lmKHRoaXMuX2lzQm9keU92ZXJmbG93aW5nKXtRZShvbi5GSVhFRF9DT05URU5UKS5lYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49UWUoZSlbMF0uc3R5bGUucGFkZGluZ1JpZ2h0LGk9UWUoZSkuY3NzKCJwYWRkaW5nLXJpZ2h0Iik7UWUoZSkuZGF0YSgicGFkZGluZy1yaWdodCIsbikuY3NzKCJwYWRkaW5nLXJpZ2h0IixwYXJzZUZsb2F0KGkpK3IuX3Njcm9sbGJhcldpZHRoKyJweCIpfSksUWUob24uU1RJQ0tZX0NPTlRFTlQpLmVhY2goZnVuY3Rpb24odCxlKXt2YXIgbj1RZShlKVswXS5zdHlsZS5tYXJnaW5SaWdodCxpPVFlKGUpLmNzcygibWFyZ2luLXJpZ2h0Iik7UWUoZSkuZGF0YSgibWFyZ2luLXJpZ2h0IixuKS5jc3MoIm1hcmdpbi1yaWdodCIscGFyc2VGbG9hdChpKS1yLl9zY3JvbGxiYXJXaWR0aCsicHgiKX0pLFFlKG9uLk5BVkJBUl9UT0dHTEVSKS5lYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49UWUoZSlbMF0uc3R5bGUubWFyZ2luUmlnaHQsaT1RZShlKS5jc3MoIm1hcmdpbi1yaWdodCIpO1FlKGUpLmRhdGEoIm1hcmdpbi1yaWdodCIsbikuY3NzKCJtYXJnaW4tcmlnaHQiLHBhcnNlRmxvYXQoaSkrci5fc2Nyb2xsYmFyV2lkdGgrInB4Iil9KTt2YXIgdD1kb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCxlPVFlKGRvY3VtZW50LmJvZHkpLmNzcygicGFkZGluZy1yaWdodCIpO1FlKGRvY3VtZW50LmJvZHkpLmRhdGEoInBhZGRpbmctcmlnaHQiLHQpLmNzcygicGFkZGluZy1yaWdodCIscGFyc2VGbG9hdChlKSt0aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKX19LHQuX3Jlc2V0U2Nyb2xsYmFyPWZ1bmN0aW9uKCl7UWUob24uRklYRURfQ09OVEVOVCkuZWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPVFlKGUpLmRhdGEoInBhZGRpbmctcmlnaHQiKTsidW5kZWZpbmVkIiE9dHlwZW9mIG4mJlFlKGUpLmNzcygicGFkZGluZy1yaWdodCIsbikucmVtb3ZlRGF0YSgicGFkZGluZy1yaWdodCIpfSksUWUob24uU1RJQ0tZX0NPTlRFTlQrIiwgIitvbi5OQVZCQVJfVE9HR0xFUikuZWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPVFlKGUpLmRhdGEoIm1hcmdpbi1yaWdodCIpOyJ1bmRlZmluZWQiIT10eXBlb2YgbiYmUWUoZSkuY3NzKCJtYXJnaW4tcmlnaHQiLG4pLnJlbW92ZURhdGEoIm1hcmdpbi1yaWdodCIpfSk7dmFyIHQ9UWUoZG9jdW1lbnQuYm9keSkuZGF0YSgicGFkZGluZy1yaWdodCIpOyJ1bmRlZmluZWQiIT10eXBlb2YgdCYmUWUoZG9jdW1lbnQuYm9keSkuY3NzKCJwYWRkaW5nLXJpZ2h0Iix0KS5yZW1vdmVEYXRhKCJwYWRkaW5nLXJpZ2h0Iil9LHQuX2dldFNjcm9sbGJhcldpZHRoPWZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9JGUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KTt2YXIgZT10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLXQuY2xpZW50V2lkdGg7cmV0dXJuIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodCksZX0sci5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4saSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PVFlKHRoaXMpLmRhdGEoR2UpLGU9Yyh7fSxYZSxRZSh0aGlzKS5kYXRhKCksIm9iamVjdCI9PXR5cGVvZiBuJiZuP246e30pO2lmKHR8fCh0PW5ldyByKHRoaXMsZSksUWUodGhpcykuZGF0YShHZSx0KSksInN0cmluZyI9PXR5cGVvZiBuKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHRbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTt0W25dKGkpfWVsc2UgZS5zaG93JiZ0LnNob3coaSl9KX0scyhyLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gWGV9fV0pLHJ9KCksUWUoZG9jdW1lbnQpLm9uKFplLkNMSUNLX0RBVEFfQVBJLG9uLkRBVEFfVE9HR0xFLGZ1bmN0aW9uKHQpe3ZhciBlLG49dGhpcyxpPWd0LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyk7aSYmKGU9UWUoaSlbMF0pO3ZhciByPVFlKGUpLmRhdGEoR2UpPyJ0b2dnbGUiOmMoe30sUWUoZSkuZGF0YSgpLFFlKHRoaXMpLmRhdGEoKSk7IkEiIT09dGhpcy50YWdOYW1lJiYiQVJFQSIhPT10aGlzLnRhZ05hbWV8fHQucHJldmVudERlZmF1bHQoKTt2YXIgbz1RZShlKS5vbmUoWmUuU0hPVyxmdW5jdGlvbih0KXt0LmlzRGVmYXVsdFByZXZlbnRlZCgpfHxvLm9uZShaZS5ISURERU4sZnVuY3Rpb24oKXtRZShuKS5pcygiOnZpc2libGUiKSYmbi5mb2N1cygpfSl9KTtzbi5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoUWUoZSkscix0aGlzKX0pLFFlLmZuW1llXT1zbi5falF1ZXJ5SW50ZXJmYWNlLFFlLmZuW1llXS5Db25zdHJ1Y3Rvcj1zbixRZS5mbltZZV0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBRZS5mbltZZV09emUsc24uX2pRdWVyeUludGVyZmFjZX0sc24pLHdpPShsbj0idG9vbHRpcCIsZm49Ii4iKyhjbj0iYnMudG9vbHRpcCIpLGhuPShhbj1lKS5mbltsbl0sdW49ImJzLXRvb2x0aXAiLGRuPW5ldyBSZWdFeHAoIihefFxccykiK3VuKyJcXFMrIiwiZyIpLG1uPXthbmltYXRpb246ITAsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InRvb2x0aXAiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj48ZGl2IGNsYXNzPSJ0b29sdGlwLWlubmVyIj48L2Rpdj48L2Rpdj4nLHRyaWdnZXI6ImhvdmVyIGZvY3VzIix0aXRsZToiIixkZWxheTowLGh0bWw6IShnbj17QVVUTzoiYXV0byIsVE9QOiJ0b3AiLFJJR0hUOiJyaWdodCIsQk9UVE9NOiJib3R0b20iLExFRlQ6ImxlZnQifSksc2VsZWN0b3I6IShwbj17YW5pbWF0aW9uOiJib29sZWFuIix0ZW1wbGF0ZToic3RyaW5nIix0aXRsZToiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSIsdHJpZ2dlcjoic3RyaW5nIixkZWxheToiKG51bWJlcnxvYmplY3QpIixodG1sOiJib29sZWFuIixzZWxlY3RvcjoiKHN0cmluZ3xib29sZWFuKSIscGxhY2VtZW50OiIoc3RyaW5nfGZ1bmN0aW9uKSIsb2Zmc2V0OiIobnVtYmVyfHN0cmluZykiLGNvbnRhaW5lcjoiKHN0cmluZ3xlbGVtZW50fGJvb2xlYW4pIixmYWxsYmFja1BsYWNlbWVudDoiKHN0cmluZ3xhcnJheSkiLGJvdW5kYXJ5OiIoc3RyaW5nfGVsZW1lbnQpIn0pLHBsYWNlbWVudDoidG9wIixvZmZzZXQ6MCxjb250YWluZXI6ITEsZmFsbGJhY2tQbGFjZW1lbnQ6ImZsaXAiLGJvdW5kYXJ5OiJzY3JvbGxQYXJlbnQifSx2bj0ib3V0IixFbj17SElERToiaGlkZSIrZm4sSElEREVOOiJoaWRkZW4iK2ZuLFNIT1c6KF9uPSJzaG93IikrZm4sU0hPV046InNob3duIitmbixJTlNFUlRFRDoiaW5zZXJ0ZWQiK2ZuLENMSUNLOiJjbGljayIrZm4sRk9DVVNJTjoiZm9jdXNpbiIrZm4sRk9DVVNPVVQ6ImZvY3Vzb3V0IitmbixNT1VTRUVOVEVSOiJtb3VzZWVudGVyIitmbixNT1VTRUxFQVZFOiJtb3VzZWxlYXZlIitmbn0seW49ImZhZGUiLGJuPSJzaG93IixUbj0iLnRvb2x0aXAtaW5uZXIiLENuPSIuYXJyb3ciLHduPSJob3ZlciIsSW49ImZvY3VzIixEbj0iY2xpY2siLEFuPSJtYW51YWwiLFNuPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaSh0LGUpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZ2UpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyLmpzIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7dGhpcy5faXNFbmFibGVkPSEwLHRoaXMuX3RpbWVvdXQ9MCx0aGlzLl9ob3ZlclN0YXRlPSIiLHRoaXMuX2FjdGl2ZVRyaWdnZXI9e30sdGhpcy5fcG9wcGVyPW51bGwsdGhpcy5lbGVtZW50PXQsdGhpcy5jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMudGlwPW51bGwsdGhpcy5fc2V0TGlzdGVuZXJzKCl9dmFyIHQ9aS5wcm90b3R5cGU7cmV0dXJuIHQuZW5hYmxlPWZ1bmN0aW9uKCl7dGhpcy5faXNFbmFibGVkPSEwfSx0LmRpc2FibGU9ZnVuY3Rpb24oKXt0aGlzLl9pc0VuYWJsZWQ9ITF9LHQudG9nZ2xlRW5hYmxlZD1mdW5jdGlvbigpe3RoaXMuX2lzRW5hYmxlZD0hdGhpcy5faXNFbmFibGVkfSx0LnRvZ2dsZT1mdW5jdGlvbih0KXtpZih0aGlzLl9pc0VuYWJsZWQpaWYodCl7dmFyIGU9dGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSxuPWFuKHQuY3VycmVudFRhcmdldCkuZGF0YShlKTtufHwobj1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksYW4odC5jdXJyZW50VGFyZ2V0KS5kYXRhKGUsbikpLG4uX2FjdGl2ZVRyaWdnZXIuY2xpY2s9IW4uX2FjdGl2ZVRyaWdnZXIuY2xpY2ssbi5faXNXaXRoQWN0aXZlVHJpZ2dlcigpP24uX2VudGVyKG51bGwsbik6bi5fbGVhdmUobnVsbCxuKX1lbHNle2lmKGFuKHRoaXMuZ2V0VGlwRWxlbWVudCgpKS5oYXNDbGFzcyhibikpcmV0dXJuIHZvaWQgdGhpcy5fbGVhdmUobnVsbCx0aGlzKTt0aGlzLl9lbnRlcihudWxsLHRoaXMpfX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLGFuLnJlbW92ZURhdGEodGhpcy5lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpLGFuKHRoaXMuZWxlbWVudCkub2ZmKHRoaXMuY29uc3RydWN0b3IuRVZFTlRfS0VZKSxhbih0aGlzLmVsZW1lbnQpLmNsb3Nlc3QoIi5tb2RhbCIpLm9mZigiaGlkZS5icy5tb2RhbCIpLHRoaXMudGlwJiZhbih0aGlzLnRpcCkucmVtb3ZlKCksdGhpcy5faXNFbmFibGVkPW51bGwsdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX2hvdmVyU3RhdGU9bnVsbCwodGhpcy5fYWN0aXZlVHJpZ2dlcj1udWxsKSE9PXRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLmVsZW1lbnQ9bnVsbCx0aGlzLmNvbmZpZz1udWxsLHRoaXMudGlwPW51bGx9LHQuc2hvdz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7aWYoIm5vbmUiPT09YW4odGhpcy5lbGVtZW50KS5jc3MoImRpc3BsYXkiKSl0aHJvdyBuZXcgRXJyb3IoIlBsZWFzZSB1c2Ugc2hvdyBvbiB2aXNpYmxlIGVsZW1lbnRzIik7dmFyIHQ9YW4uRXZlbnQodGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5TSE9XKTtpZih0aGlzLmlzV2l0aENvbnRlbnQoKSYmdGhpcy5faXNFbmFibGVkKXthbih0aGlzLmVsZW1lbnQpLnRyaWdnZXIodCk7dmFyIG49YW4uY29udGFpbnModGhpcy5lbGVtZW50Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMuZWxlbWVudCk7aWYodC5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8IW4pcmV0dXJuO3ZhciBpPXRoaXMuZ2V0VGlwRWxlbWVudCgpLHI9Z3QuZ2V0VUlEKHRoaXMuY29uc3RydWN0b3IuTkFNRSk7aS5zZXRBdHRyaWJ1dGUoImlkIixyKSx0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IixyKSx0aGlzLnNldENvbnRlbnQoKSx0aGlzLmNvbmZpZy5hbmltYXRpb24mJmFuKGkpLmFkZENsYXNzKHluKTt2YXIgbz0iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5jb25maWcucGxhY2VtZW50P3RoaXMuY29uZmlnLnBsYWNlbWVudC5jYWxsKHRoaXMsaSx0aGlzLmVsZW1lbnQpOnRoaXMuY29uZmlnLnBsYWNlbWVudCxzPXRoaXMuX2dldEF0dGFjaG1lbnQobyk7dGhpcy5hZGRBdHRhY2htZW50Q2xhc3Mocyk7dmFyIGE9ITE9PT10aGlzLmNvbmZpZy5jb250YWluZXI/ZG9jdW1lbnQuYm9keTphbih0aGlzLmNvbmZpZy5jb250YWluZXIpO2FuKGkpLmRhdGEodGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSx0aGlzKSxhbi5jb250YWlucyh0aGlzLmVsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdGhpcy50aXApfHxhbihpKS5hcHBlbmRUbyhhKSxhbih0aGlzLmVsZW1lbnQpLnRyaWdnZXIodGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5JTlNFUlRFRCksdGhpcy5fcG9wcGVyPW5ldyBnZSh0aGlzLmVsZW1lbnQsaSx7cGxhY2VtZW50OnMsbW9kaWZpZXJzOntvZmZzZXQ6e29mZnNldDp0aGlzLmNvbmZpZy5vZmZzZXR9LGZsaXA6e2JlaGF2aW9yOnRoaXMuY29uZmlnLmZhbGxiYWNrUGxhY2VtZW50fSxhcnJvdzp7ZWxlbWVudDpDbn0scHJldmVudE92ZXJmbG93Ontib3VuZGFyaWVzRWxlbWVudDp0aGlzLmNvbmZpZy5ib3VuZGFyeX19LG9uQ3JlYXRlOmZ1bmN0aW9uKHQpe3Qub3JpZ2luYWxQbGFjZW1lbnQhPT10LnBsYWNlbWVudCYmZS5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlKHQpfSxvblVwZGF0ZTpmdW5jdGlvbih0KXtlLl9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UodCl9fSksYW4oaSkuYWRkQ2xhc3MoYm4pLCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZhbihkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9uKCJtb3VzZW92ZXIiLG51bGwsYW4ubm9vcCk7dmFyIGw9ZnVuY3Rpb24oKXtlLmNvbmZpZy5hbmltYXRpb24mJmUuX2ZpeFRyYW5zaXRpb24oKTt2YXIgdD1lLl9ob3ZlclN0YXRlO2UuX2hvdmVyU3RhdGU9bnVsbCxhbihlLmVsZW1lbnQpLnRyaWdnZXIoZS5jb25zdHJ1Y3Rvci5FdmVudC5TSE9XTiksdD09PXZuJiZlLl9sZWF2ZShudWxsLGUpfTtpZihhbih0aGlzLnRpcCkuaGFzQ2xhc3MoeW4pKXt2YXIgYz1ndC5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLnRpcCk7YW4odGhpcy50aXApLm9uZShndC5UUkFOU0lUSU9OX0VORCxsKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChjKX1lbHNlIGwoKX19LHQuaGlkZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLG49dGhpcy5nZXRUaXBFbGVtZW50KCksaT1hbi5FdmVudCh0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LkhJREUpLHI9ZnVuY3Rpb24oKXtlLl9ob3ZlclN0YXRlIT09X24mJm4ucGFyZW50Tm9kZSYmbi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4pLGUuX2NsZWFuVGlwQ2xhc3MoKSxlLmVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiksYW4oZS5lbGVtZW50KS50cmlnZ2VyKGUuY29uc3RydWN0b3IuRXZlbnQuSElEREVOKSxudWxsIT09ZS5fcG9wcGVyJiZlLl9wb3BwZXIuZGVzdHJveSgpLHQmJnQoKX07aWYoYW4odGhpcy5lbGVtZW50KS50cmlnZ2VyKGkpLCFpLmlzRGVmYXVsdFByZXZlbnRlZCgpKXtpZihhbihuKS5yZW1vdmVDbGFzcyhibiksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmFuKGRvY3VtZW50LmJvZHkpLmNoaWxkcmVuKCkub2ZmKCJtb3VzZW92ZXIiLG51bGwsYW4ubm9vcCksdGhpcy5fYWN0aXZlVHJpZ2dlcltEbl09ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltJbl09ITEsdGhpcy5fYWN0aXZlVHJpZ2dlclt3bl09ITEsYW4odGhpcy50aXApLmhhc0NsYXNzKHluKSl7dmFyIG89Z3QuZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQobik7YW4obikub25lKGd0LlRSQU5TSVRJT05fRU5ELHIpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKG8pfWVsc2UgcigpO3RoaXMuX2hvdmVyU3RhdGU9IiJ9fSx0LnVwZGF0ZT1mdW5jdGlvbigpe251bGwhPT10aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5zY2hlZHVsZVVwZGF0ZSgpfSx0LmlzV2l0aENvbnRlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gQm9vbGVhbih0aGlzLmdldFRpdGxlKCkpfSx0LmFkZEF0dGFjaG1lbnRDbGFzcz1mdW5jdGlvbih0KXthbih0aGlzLmdldFRpcEVsZW1lbnQoKSkuYWRkQ2xhc3ModW4rIi0iK3QpfSx0LmdldFRpcEVsZW1lbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50aXA9dGhpcy50aXB8fGFuKHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sdC5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9YW4odGhpcy5nZXRUaXBFbGVtZW50KCkpO3RoaXMuc2V0RWxlbWVudENvbnRlbnQodC5maW5kKFRuKSx0aGlzLmdldFRpdGxlKCkpLHQucmVtb3ZlQ2xhc3MoeW4rIiAiK2JuKX0sdC5zZXRFbGVtZW50Q29udGVudD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuY29uZmlnLmh0bWw7Im9iamVjdCI9PXR5cGVvZiBlJiYoZS5ub2RlVHlwZXx8ZS5qcXVlcnkpP24/YW4oZSkucGFyZW50KCkuaXModCl8fHQuZW1wdHkoKS5hcHBlbmQoZSk6dC50ZXh0KGFuKGUpLnRleHQoKSk6dFtuPyJodG1sIjoidGV4dCJdKGUpfSx0LmdldFRpdGxlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIpO3JldHVybiB0fHwodD0iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5jb25maWcudGl0bGU/dGhpcy5jb25maWcudGl0bGUuY2FsbCh0aGlzLmVsZW1lbnQpOnRoaXMuY29uZmlnLnRpdGxlKSx0fSx0Ll9nZXRBdHRhY2htZW50PWZ1bmN0aW9uKHQpe3JldHVybiBnblt0LnRvVXBwZXJDYXNlKCldfSx0Ll9zZXRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO3RoaXMuY29uZmlnLnRyaWdnZXIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe2lmKCJjbGljayI9PT10KWFuKGkuZWxlbWVudCkub24oaS5jb25zdHJ1Y3Rvci5FdmVudC5DTElDSyxpLmNvbmZpZy5zZWxlY3RvcixmdW5jdGlvbih0KXtyZXR1cm4gaS50b2dnbGUodCl9KTtlbHNlIGlmKHQhPT1Bbil7dmFyIGU9dD09PXduP2kuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VFTlRFUjppLmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTSU4sbj10PT09d24/aS5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUxFQVZFOmkuY29uc3RydWN0b3IuRXZlbnQuRk9DVVNPVVQ7YW4oaS5lbGVtZW50KS5vbihlLGkuY29uZmlnLnNlbGVjdG9yLGZ1bmN0aW9uKHQpe3JldHVybiBpLl9lbnRlcih0KX0pLm9uKG4saS5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24odCl7cmV0dXJuIGkuX2xlYXZlKHQpfSl9YW4oaS5lbGVtZW50KS5jbG9zZXN0KCIubW9kYWwiKS5vbigiaGlkZS5icy5tb2RhbCIsZnVuY3Rpb24oKXtyZXR1cm4gaS5oaWRlKCl9KX0pLHRoaXMuY29uZmlnLnNlbGVjdG9yP3RoaXMuY29uZmlnPWMoe30sdGhpcy5jb25maWcse3RyaWdnZXI6Im1hbnVhbCIsc2VsZWN0b3I6IiJ9KTp0aGlzLl9maXhUaXRsZSgpfSx0Ll9maXhUaXRsZT1mdW5jdGlvbigpe3ZhciB0PXR5cGVvZiB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLW9yaWdpbmFsLXRpdGxlIik7KHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoInRpdGxlIil8fCJzdHJpbmciIT09dCkmJih0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJkYXRhLW9yaWdpbmFsLXRpdGxlIix0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpfHwiIiksdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgidGl0bGUiLCIiKSl9LHQuX2VudGVyPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTsoZT1lfHxhbih0LmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwoZT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksYW4odC5jdXJyZW50VGFyZ2V0KS5kYXRhKG4sZSkpLHQmJihlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c2luIj09PXQudHlwZT9Jbjp3bl09ITApLGFuKGUuZ2V0VGlwRWxlbWVudCgpKS5oYXNDbGFzcyhibil8fGUuX2hvdmVyU3RhdGU9PT1fbj9lLl9ob3ZlclN0YXRlPV9uOihjbGVhclRpbWVvdXQoZS5fdGltZW91dCksZS5faG92ZXJTdGF0ZT1fbixlLmNvbmZpZy5kZWxheSYmZS5jb25maWcuZGVsYXkuc2hvdz9lLl90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLl9ob3ZlclN0YXRlPT09X24mJmUuc2hvdygpfSxlLmNvbmZpZy5kZWxheS5zaG93KTplLnNob3coKSl9LHQuX2xlYXZlPWZ1bmN0aW9uKHQsZSl7dmFyIG49dGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWTsoZT1lfHxhbih0LmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwoZT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksYW4odC5jdXJyZW50VGFyZ2V0KS5kYXRhKG4sZSkpLHQmJihlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c291dCI9PT10LnR5cGU/SW46d25dPSExKSxlLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCl8fChjbGVhclRpbWVvdXQoZS5fdGltZW91dCksZS5faG92ZXJTdGF0ZT12bixlLmNvbmZpZy5kZWxheSYmZS5jb25maWcuZGVsYXkuaGlkZT9lLl90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLl9ob3ZlclN0YXRlPT09dm4mJmUuaGlkZSgpfSxlLmNvbmZpZy5kZWxheS5oaWRlKTplLmhpZGUoKSl9LHQuX2lzV2l0aEFjdGl2ZVRyaWdnZXI9ZnVuY3Rpb24oKXtmb3IodmFyIHQgaW4gdGhpcy5fYWN0aXZlVHJpZ2dlcilpZih0aGlzLl9hY3RpdmVUcmlnZ2VyW3RdKXJldHVybiEwO3JldHVybiExfSx0Ll9nZXRDb25maWc9ZnVuY3Rpb24odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZih0PWMoe30sdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0LGFuKHRoaXMuZWxlbWVudCkuZGF0YSgpLCJvYmplY3QiPT10eXBlb2YgdCYmdD90Ont9KSkuZGVsYXkmJih0LmRlbGF5PXtzaG93OnQuZGVsYXksaGlkZTp0LmRlbGF5fSksIm51bWJlciI9PXR5cGVvZiB0LnRpdGxlJiYodC50aXRsZT10LnRpdGxlLnRvU3RyaW5nKCkpLCJudW1iZXIiPT10eXBlb2YgdC5jb250ZW50JiYodC5jb250ZW50PXQuY29udGVudC50b1N0cmluZygpKSxndC50eXBlQ2hlY2tDb25maWcobG4sdCx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSx0fSx0Ll9nZXREZWxlZ2F0ZUNvbmZpZz1mdW5jdGlvbigpe3ZhciB0PXt9O2lmKHRoaXMuY29uZmlnKWZvcih2YXIgZSBpbiB0aGlzLmNvbmZpZyl0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRbZV0hPT10aGlzLmNvbmZpZ1tlXSYmKHRbZV09dGhpcy5jb25maWdbZV0pO3JldHVybiB0fSx0Ll9jbGVhblRpcENsYXNzPWZ1bmN0aW9uKCl7dmFyIHQ9YW4odGhpcy5nZXRUaXBFbGVtZW50KCkpLGU9dC5hdHRyKCJjbGFzcyIpLm1hdGNoKGRuKTtudWxsIT09ZSYmMDxlLmxlbmd0aCYmdC5yZW1vdmVDbGFzcyhlLmpvaW4oIiIpKX0sdC5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlPWZ1bmN0aW9uKHQpe3RoaXMuX2NsZWFuVGlwQ2xhc3MoKSx0aGlzLmFkZEF0dGFjaG1lbnRDbGFzcyh0aGlzLl9nZXRBdHRhY2htZW50KHQucGxhY2VtZW50KSl9LHQuX2ZpeFRyYW5zaXRpb249ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmdldFRpcEVsZW1lbnQoKSxlPXRoaXMuY29uZmlnLmFuaW1hdGlvbjtudWxsPT09dC5nZXRBdHRyaWJ1dGUoIngtcGxhY2VtZW50IikmJihhbih0KS5yZW1vdmVDbGFzcyh5biksdGhpcy5jb25maWcuYW5pbWF0aW9uPSExLHRoaXMuaGlkZSgpLHRoaXMuc2hvdygpLHRoaXMuY29uZmlnLmFuaW1hdGlvbj1lKX0saS5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1hbih0aGlzKS5kYXRhKGNuKSxlPSJvYmplY3QiPT10eXBlb2YgbiYmbjtpZigodHx8IS9kaXNwb3NlfGhpZGUvLnRlc3QobikpJiYodHx8KHQ9bmV3IGkodGhpcyxlKSxhbih0aGlzKS5kYXRhKGNuLHQpKSwic3RyaW5nIj09dHlwZW9mIG4pKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHRbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTt0W25dKCl9fSl9LHMoaSxudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4xLjEifX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG1ufX0se2tleToiTkFNRSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGxufX0se2tleToiREFUQV9LRVkiLGdldDpmdW5jdGlvbigpe3JldHVybiBjbn19LHtrZXk6IkV2ZW50IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gRW59fSx7a2V5OiJFVkVOVF9LRVkiLGdldDpmdW5jdGlvbigpe3JldHVybiBmbn19LHtrZXk6IkRlZmF1bHRUeXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gcG59fV0pLGl9KCksYW4uZm5bbG5dPVNuLl9qUXVlcnlJbnRlcmZhY2UsYW4uZm5bbG5dLkNvbnN0cnVjdG9yPVNuLGFuLmZuW2xuXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGFuLmZuW2xuXT1obixTbi5falF1ZXJ5SW50ZXJmYWNlfSxTbiksSWk9KE5uPSJwb3BvdmVyIixMbj0iLiIrKGtuPSJicy5wb3BvdmVyIiksUG49KE9uPWUpLmZuW05uXSx4bj0iYnMtcG9wb3ZlciIsam49bmV3IFJlZ0V4cCgiKF58XFxzKSIreG4rIlxcUysiLCJnIiksTW49Yyh7fSx3aS5EZWZhdWx0LHtwbGFjZW1lbnQ6InJpZ2h0Iix0cmlnZ2VyOiJjbGljayIsY29udGVudDoiIix0ZW1wbGF0ZTonPGRpdiBjbGFzcz0icG9wb3ZlciIgcm9sZT0idG9vbHRpcCI+PGRpdiBjbGFzcz0iYXJyb3ciPjwvZGl2PjxoMyBjbGFzcz0icG9wb3Zlci1oZWFkZXIiPjwvaDM+PGRpdiBjbGFzcz0icG9wb3Zlci1ib2R5Ij48L2Rpdj48L2Rpdj4nfSksUm49Yyh7fSx3aS5EZWZhdWx0VHlwZSx7Y29udGVudDoiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSJ9KSxIbj0iZmFkZSIsRm49Ii5wb3BvdmVyLWhlYWRlciIsVW49Ii5wb3BvdmVyLWJvZHkiLEJuPXtISURFOiJoaWRlIitMbixISURERU46ImhpZGRlbiIrTG4sU0hPVzooV249InNob3ciKStMbixTSE9XTjoic2hvd24iK0xuLElOU0VSVEVEOiJpbnNlcnRlZCIrTG4sQ0xJQ0s6ImNsaWNrIitMbixGT0NVU0lOOiJmb2N1c2luIitMbixGT0NVU09VVDoiZm9jdXNvdXQiK0xuLE1PVVNFRU5URVI6Im1vdXNlZW50ZXIiK0xuLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK0xufSxLbj1mdW5jdGlvbih0KXt2YXIgZSxuO2Z1bmN0aW9uIGkoKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9bj10LChlPWkpLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKG4ucHJvdG90eXBlKSwoZS5wcm90b3R5cGUuY29uc3RydWN0b3I9ZSkuX19wcm90b19fPW47dmFyIHI9aS5wcm90b3R5cGU7cmV0dXJuIHIuaXNXaXRoQ29udGVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuX2dldENvbnRlbnQoKX0sci5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24odCl7T24odGhpcy5nZXRUaXBFbGVtZW50KCkpLmFkZENsYXNzKHhuKyItIit0KX0sci5nZXRUaXBFbGVtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGlwPXRoaXMudGlwfHxPbih0aGlzLmNvbmZpZy50ZW1wbGF0ZSlbMF0sdGhpcy50aXB9LHIuc2V0Q29udGVudD1mdW5jdGlvbigpe3ZhciB0PU9uKHRoaXMuZ2V0VGlwRWxlbWVudCgpKTt0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZChGbiksdGhpcy5nZXRUaXRsZSgpKTt2YXIgZT10aGlzLl9nZXRDb250ZW50KCk7ImZ1bmN0aW9uIj09dHlwZW9mIGUmJihlPWUuY2FsbCh0aGlzLmVsZW1lbnQpKSx0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZChVbiksZSksdC5yZW1vdmVDbGFzcyhIbisiICIrV24pfSxyLl9nZXRDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtY29udGVudCIpfHx0aGlzLmNvbmZpZy5jb250ZW50fSxyLl9jbGVhblRpcENsYXNzPWZ1bmN0aW9uKCl7dmFyIHQ9T24odGhpcy5nZXRUaXBFbGVtZW50KCkpLGU9dC5hdHRyKCJjbGFzcyIpLm1hdGNoKGpuKTtudWxsIT09ZSYmMDxlLmxlbmd0aCYmdC5yZW1vdmVDbGFzcyhlLmpvaW4oIiIpKX0saS5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1Pbih0aGlzKS5kYXRhKGtuKSxlPSJvYmplY3QiPT10eXBlb2Ygbj9uOm51bGw7aWYoKHR8fCEvZGVzdHJveXxoaWRlLy50ZXN0KG4pKSYmKHR8fCh0PW5ldyBpKHRoaXMsZSksT24odGhpcykuZGF0YShrbix0KSksInN0cmluZyI9PXR5cGVvZiBuKSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSgpfX0pfSxzKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMS4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBNbn19LHtrZXk6Ik5BTUUiLGdldDpmdW5jdGlvbigpe3JldHVybiBObn19LHtrZXk6IkRBVEFfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4ga259fSx7a2V5OiJFdmVudCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIEJufX0se2tleToiRVZFTlRfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gTG59fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFJufX1dKSxpfSh3aSksT24uZm5bTm5dPUtuLl9qUXVlcnlJbnRlcmZhY2UsT24uZm5bTm5dLkNvbnN0cnVjdG9yPUtuLE9uLmZuW05uXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIE9uLmZuW05uXT1QbixLbi5falF1ZXJ5SW50ZXJmYWNlfSxLbiksRGk9KFFuPSJzY3JvbGxzcHkiLEduPSIuIisoWW49ImJzLnNjcm9sbHNweSIpLHFuPShWbj1lKS5mbltRbl0sem49e29mZnNldDoxMCxtZXRob2Q6ImF1dG8iLHRhcmdldDoiIn0sWG49e29mZnNldDoibnVtYmVyIixtZXRob2Q6InN0cmluZyIsdGFyZ2V0OiIoc3RyaW5nfGVsZW1lbnQpIn0sSm49e0FDVElWQVRFOiJhY3RpdmF0ZSIrR24sU0NST0xMOiJzY3JvbGwiK0duLExPQURfREFUQV9BUEk6ImxvYWQiK0duKyIuZGF0YS1hcGkifSxabj0iZHJvcGRvd24taXRlbSIsJG49ImFjdGl2ZSIsdGk9e0RBVEFfU1BZOidbZGF0YS1zcHk9InNjcm9sbCJdJyxBQ1RJVkU6Ii5hY3RpdmUiLE5BVl9MSVNUX0dST1VQOiIubmF2LCAubGlzdC1ncm91cCIsTkFWX0xJTktTOiIubmF2LWxpbmsiLE5BVl9JVEVNUzoiLm5hdi1pdGVtIixMSVNUX0lURU1TOiIubGlzdC1ncm91cC1pdGVtIixEUk9QRE9XTjoiLmRyb3Bkb3duIixEUk9QRE9XTl9JVEVNUzoiLmRyb3Bkb3duLWl0ZW0iLERST1BET1dOX1RPR0dMRToiLmRyb3Bkb3duLXRvZ2dsZSJ9LGVpPSJvZmZzZXQiLG5pPSJwb3NpdGlvbiIsaWk9ZnVuY3Rpb24oKXtmdW5jdGlvbiBuKHQsZSl7dmFyIG49dGhpczt0aGlzLl9lbGVtZW50PXQsdGhpcy5fc2Nyb2xsRWxlbWVudD0iQk9EWSI9PT10LnRhZ05hbWU/d2luZG93OnQsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9zZWxlY3Rvcj10aGlzLl9jb25maWcudGFyZ2V0KyIgIit0aS5OQVZfTElOS1MrIiwiK3RoaXMuX2NvbmZpZy50YXJnZXQrIiAiK3RpLkxJU1RfSVRFTVMrIiwiK3RoaXMuX2NvbmZpZy50YXJnZXQrIiAiK3RpLkRST1BET1dOX0lURU1TLHRoaXMuX29mZnNldHM9W10sdGhpcy5fdGFyZ2V0cz1bXSx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9MCxWbih0aGlzLl9zY3JvbGxFbGVtZW50KS5vbihKbi5TQ1JPTEwsZnVuY3Rpb24odCl7cmV0dXJuIG4uX3Byb2Nlc3ModCl9KSx0aGlzLnJlZnJlc2goKSx0aGlzLl9wcm9jZXNzKCl9dmFyIHQ9bi5wcm90b3R5cGU7cmV0dXJuIHQucmVmcmVzaD1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD10aGlzLl9zY3JvbGxFbGVtZW50PT09dGhpcy5fc2Nyb2xsRWxlbWVudC53aW5kb3c/ZWk6bmkscj0iYXV0byI9PT10aGlzLl9jb25maWcubWV0aG9kP3Q6dGhpcy5fY29uZmlnLm1ldGhvZCxvPXI9PT1uaT90aGlzLl9nZXRTY3JvbGxUb3AoKTowO3RoaXMuX29mZnNldHM9W10sdGhpcy5fdGFyZ2V0cz1bXSx0aGlzLl9zY3JvbGxIZWlnaHQ9dGhpcy5fZ2V0U2Nyb2xsSGVpZ2h0KCksVm4ubWFrZUFycmF5KFZuKHRoaXMuX3NlbGVjdG9yKSkubWFwKGZ1bmN0aW9uKHQpe3ZhciBlLG49Z3QuZ2V0U2VsZWN0b3JGcm9tRWxlbWVudCh0KTtpZihuJiYoZT1WbihuKVswXSksZSl7dmFyIGk9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihpLndpZHRofHxpLmhlaWdodClyZXR1cm5bVm4oZSlbcl0oKS50b3ArbyxuXX1yZXR1cm4gbnVsbH0pLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdH0pLnNvcnQoZnVuY3Rpb24odCxlKXtyZXR1cm4gdFswXS1lWzBdfSkuZm9yRWFjaChmdW5jdGlvbih0KXtlLl9vZmZzZXRzLnB1c2godFswXSksZS5fdGFyZ2V0cy5wdXNoKHRbMV0pfSl9LHQuZGlzcG9zZT1mdW5jdGlvbigpe1ZuLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCxZbiksVm4odGhpcy5fc2Nyb2xsRWxlbWVudCkub2ZmKEduKSx0aGlzLl9lbGVtZW50PW51bGwsdGhpcy5fc2Nyb2xsRWxlbWVudD1udWxsLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX3NlbGVjdG9yPW51bGwsdGhpcy5fb2Zmc2V0cz1udWxsLHRoaXMuX3RhcmdldHM9bnVsbCx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9bnVsbH0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe2lmKCJzdHJpbmciIT10eXBlb2YodD1jKHt9LHpuLCJvYmplY3QiPT10eXBlb2YgdCYmdD90Ont9KSkudGFyZ2V0KXt2YXIgZT1Wbih0LnRhcmdldCkuYXR0cigiaWQiKTtlfHwoZT1ndC5nZXRVSUQoUW4pLFZuKHQudGFyZ2V0KS5hdHRyKCJpZCIsZSkpLHQudGFyZ2V0PSIjIitlfXJldHVybiBndC50eXBlQ2hlY2tDb25maWcoUW4sdCxYbiksdH0sdC5fZ2V0U2Nyb2xsVG9wPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3Njcm9sbEVsZW1lbnQ9PT13aW5kb3c/dGhpcy5fc2Nyb2xsRWxlbWVudC5wYWdlWU9mZnNldDp0aGlzLl9zY3JvbGxFbGVtZW50LnNjcm9sbFRvcH0sdC5fZ2V0U2Nyb2xsSGVpZ2h0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3Njcm9sbEVsZW1lbnQuc2Nyb2xsSGVpZ2h0fHxNYXRoLm1heChkb2N1bWVudC5ib2R5LnNjcm9sbEhlaWdodCxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsSGVpZ2h0KX0sdC5fZ2V0T2Zmc2V0SGVpZ2h0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3Njcm9sbEVsZW1lbnQ9PT13aW5kb3c/d2luZG93LmlubmVySGVpZ2h0OnRoaXMuX3Njcm9sbEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0fSx0Ll9wcm9jZXNzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fZ2V0U2Nyb2xsVG9wKCkrdGhpcy5fY29uZmlnLm9mZnNldCxlPXRoaXMuX2dldFNjcm9sbEhlaWdodCgpLG49dGhpcy5fY29uZmlnLm9mZnNldCtlLXRoaXMuX2dldE9mZnNldEhlaWdodCgpO2lmKHRoaXMuX3Njcm9sbEhlaWdodCE9PWUmJnRoaXMucmVmcmVzaCgpLG48PXQpe3ZhciBpPXRoaXMuX3RhcmdldHNbdGhpcy5fdGFyZ2V0cy5sZW5ndGgtMV07dGhpcy5fYWN0aXZlVGFyZ2V0IT09aSYmdGhpcy5fYWN0aXZhdGUoaSl9ZWxzZXtpZih0aGlzLl9hY3RpdmVUYXJnZXQmJnQ8dGhpcy5fb2Zmc2V0c1swXSYmMDx0aGlzLl9vZmZzZXRzWzBdKXJldHVybiB0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx2b2lkIHRoaXMuX2NsZWFyKCk7Zm9yKHZhciByPXRoaXMuX29mZnNldHMubGVuZ3RoO3ItLTspe3RoaXMuX2FjdGl2ZVRhcmdldCE9PXRoaXMuX3RhcmdldHNbcl0mJnQ+PXRoaXMuX29mZnNldHNbcl0mJigidW5kZWZpbmVkIj09dHlwZW9mIHRoaXMuX29mZnNldHNbcisxXXx8dDx0aGlzLl9vZmZzZXRzW3IrMV0pJiZ0aGlzLl9hY3RpdmF0ZSh0aGlzLl90YXJnZXRzW3JdKX19fSx0Ll9hY3RpdmF0ZT1mdW5jdGlvbihlKXt0aGlzLl9hY3RpdmVUYXJnZXQ9ZSx0aGlzLl9jbGVhcigpO3ZhciB0PXRoaXMuX3NlbGVjdG9yLnNwbGl0KCIsIik7dD10Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdCsnW2RhdGEtdGFyZ2V0PSInK2UrJyJdLCcrdCsnW2hyZWY9IicrZSsnIl0nfSk7dmFyIG49Vm4odC5qb2luKCIsIikpO24uaGFzQ2xhc3MoWm4pPyhuLmNsb3Nlc3QodGkuRFJPUERPV04pLmZpbmQodGkuRFJPUERPV05fVE9HR0xFKS5hZGRDbGFzcygkbiksbi5hZGRDbGFzcygkbikpOihuLmFkZENsYXNzKCRuKSxuLnBhcmVudHModGkuTkFWX0xJU1RfR1JPVVApLnByZXYodGkuTkFWX0xJTktTKyIsICIrdGkuTElTVF9JVEVNUykuYWRkQ2xhc3MoJG4pLG4ucGFyZW50cyh0aS5OQVZfTElTVF9HUk9VUCkucHJldih0aS5OQVZfSVRFTVMpLmNoaWxkcmVuKHRpLk5BVl9MSU5LUykuYWRkQ2xhc3MoJG4pKSxWbih0aGlzLl9zY3JvbGxFbGVtZW50KS50cmlnZ2VyKEpuLkFDVElWQVRFLHtyZWxhdGVkVGFyZ2V0OmV9KX0sdC5fY2xlYXI9ZnVuY3Rpb24oKXtWbih0aGlzLl9zZWxlY3RvcikuZmlsdGVyKHRpLkFDVElWRSkucmVtb3ZlQ2xhc3MoJG4pfSxuLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PVZuKHRoaXMpLmRhdGEoWW4pO2lmKHR8fCh0PW5ldyBuKHRoaXMsIm9iamVjdCI9PXR5cGVvZiBlJiZlKSxWbih0aGlzKS5kYXRhKFluLHQpKSwic3RyaW5nIj09dHlwZW9mIGUpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgdFtlXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrZSsnIicpO3RbZV0oKX19KX0scyhuLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gem59fV0pLG59KCksVm4od2luZG93KS5vbihKbi5MT0FEX0RBVEFfQVBJLGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVZuLm1ha2VBcnJheShWbih0aS5EQVRBX1NQWSkpLGU9dC5sZW5ndGg7ZS0tOyl7dmFyIG49Vm4odFtlXSk7aWkuX2pRdWVyeUludGVyZmFjZS5jYWxsKG4sbi5kYXRhKCkpfX0pLFZuLmZuW1FuXT1paS5falF1ZXJ5SW50ZXJmYWNlLFZuLmZuW1FuXS5Db25zdHJ1Y3Rvcj1paSxWbi5mbltRbl0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBWbi5mbltRbl09cW4saWkuX2pRdWVyeUludGVyZmFjZX0saWkpLEFpPShzaT0iLiIrKG9pPSJicy50YWIiKSxhaT0ocmk9ZSkuZm4udGFiLGxpPXtISURFOiJoaWRlIitzaSxISURERU46ImhpZGRlbiIrc2ksU0hPVzoic2hvdyIrc2ksU0hPV046InNob3duIitzaSxDTElDS19EQVRBX0FQSToiY2xpY2siK3NpKyIuZGF0YS1hcGkifSxjaT0iZHJvcGRvd24tbWVudSIsZmk9ImFjdGl2ZSIsaGk9ImRpc2FibGVkIix1aT0iZmFkZSIsZGk9InNob3ciLHBpPSIuZHJvcGRvd24iLGdpPSIubmF2LCAubGlzdC1ncm91cCIsbWk9Ii5hY3RpdmUiLF9pPSI+IGxpID4gLmFjdGl2ZSIsdmk9J1tkYXRhLXRvZ2dsZT0idGFiIl0sIFtkYXRhLXRvZ2dsZT0icGlsbCJdLCBbZGF0YS10b2dnbGU9Imxpc3QiXScsRWk9Ii5kcm9wZG93bi10b2dnbGUiLHlpPSI+IC5kcm9wZG93bi1tZW51IC5hY3RpdmUiLGJpPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gaSh0KXt0aGlzLl9lbGVtZW50PXR9dmFyIHQ9aS5wcm90b3R5cGU7cmV0dXJuIHQuc2hvdz1mdW5jdGlvbigpe3ZhciBuPXRoaXM7aWYoISh0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUmJnRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZS5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFJiZyaSh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhmaSl8fHJpKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGhpKSkpe3ZhciB0LGksZT1yaSh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KGdpKVswXSxyPWd0LmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7aWYoZSl7dmFyIG89IlVMIj09PWUubm9kZU5hbWU/X2k6bWk7aT0oaT1yaS5tYWtlQXJyYXkocmkoZSkuZmluZChvKSkpW2kubGVuZ3RoLTFdfXZhciBzPXJpLkV2ZW50KGxpLkhJREUse3JlbGF0ZWRUYXJnZXQ6dGhpcy5fZWxlbWVudH0pLGE9cmkuRXZlbnQobGkuU0hPVyx7cmVsYXRlZFRhcmdldDppfSk7aWYoaSYmcmkoaSkudHJpZ2dlcihzKSxyaSh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKGEpLCFhLmlzRGVmYXVsdFByZXZlbnRlZCgpJiYhcy5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7ciYmKHQ9cmkocilbMF0pLHRoaXMuX2FjdGl2YXRlKHRoaXMuX2VsZW1lbnQsZSk7dmFyIGw9ZnVuY3Rpb24oKXt2YXIgdD1yaS5FdmVudChsaS5ISURERU4se3JlbGF0ZWRUYXJnZXQ6bi5fZWxlbWVudH0pLGU9cmkuRXZlbnQobGkuU0hPV04se3JlbGF0ZWRUYXJnZXQ6aX0pO3JpKGkpLnRyaWdnZXIodCkscmkobi5fZWxlbWVudCkudHJpZ2dlcihlKX07dD90aGlzLl9hY3RpdmF0ZSh0LHQucGFyZW50Tm9kZSxsKTpsKCl9fX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7cmkucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LG9pKSx0aGlzLl9lbGVtZW50PW51bGx9LHQuX2FjdGl2YXRlPWZ1bmN0aW9uKHQsZSxuKXt2YXIgaT10aGlzLHI9KCJVTCI9PT1lLm5vZGVOYW1lP3JpKGUpLmZpbmQoX2kpOnJpKGUpLmNoaWxkcmVuKG1pKSlbMF0sbz1uJiZyJiZyaShyKS5oYXNDbGFzcyh1aSkscz1mdW5jdGlvbigpe3JldHVybiBpLl90cmFuc2l0aW9uQ29tcGxldGUodCxyLG4pfTtpZihyJiZvKXt2YXIgYT1ndC5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChyKTtyaShyKS5vbmUoZ3QuVFJBTlNJVElPTl9FTkQscykuZW11bGF0ZVRyYW5zaXRpb25FbmQoYSl9ZWxzZSBzKCl9LHQuX3RyYW5zaXRpb25Db21wbGV0ZT1mdW5jdGlvbih0LGUsbil7aWYoZSl7cmkoZSkucmVtb3ZlQ2xhc3MoZGkrIiAiK2ZpKTt2YXIgaT1yaShlLnBhcmVudE5vZGUpLmZpbmQoeWkpWzBdO2kmJnJpKGkpLnJlbW92ZUNsYXNzKGZpKSwidGFiIj09PWUuZ2V0QXR0cmlidXRlKCJyb2xlIikmJmUuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwhMSl9aWYocmkodCkuYWRkQ2xhc3MoZmkpLCJ0YWIiPT09dC5nZXRBdHRyaWJ1dGUoInJvbGUiKSYmdC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCEwKSxndC5yZWZsb3codCkscmkodCkuYWRkQ2xhc3MoZGkpLHQucGFyZW50Tm9kZSYmcmkodC5wYXJlbnROb2RlKS5oYXNDbGFzcyhjaSkpe3ZhciByPXJpKHQpLmNsb3Nlc3QocGkpWzBdO3ImJnJpKHIpLmZpbmQoRWkpLmFkZENsYXNzKGZpKSx0LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsITApfW4mJm4oKX0saS5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1yaSh0aGlzKSxlPXQuZGF0YShvaSk7aWYoZXx8KGU9bmV3IGkodGhpcyksdC5kYXRhKG9pLGUpKSwic3RyaW5nIj09dHlwZW9mIG4pe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZVtuXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrbisnIicpO2Vbbl0oKX19KX0scyhpLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjEuMSJ9fV0pLGl9KCkscmkoZG9jdW1lbnQpLm9uKGxpLkNMSUNLX0RBVEFfQVBJLHZpLGZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKSxiaS5falF1ZXJ5SW50ZXJmYWNlLmNhbGwocmkodGhpcyksInNob3ciKX0pLHJpLmZuLnRhYj1iaS5falF1ZXJ5SW50ZXJmYWNlLHJpLmZuLnRhYi5Db25zdHJ1Y3Rvcj1iaSxyaS5mbi50YWIubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiByaS5mbi50YWI9YWksYmkuX2pRdWVyeUludGVyZmFjZX0sYmkpOyFmdW5jdGlvbih0KXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwJ3MgSmF2YVNjcmlwdCByZXF1aXJlcyBqUXVlcnkuIGpRdWVyeSBtdXN0IGJlIGluY2x1ZGVkIGJlZm9yZSBCb290c3RyYXAncyBKYXZhU2NyaXB0LiIpO3ZhciBlPXQuZm4uanF1ZXJ5LnNwbGl0KCIgIilbMF0uc3BsaXQoIi4iKTtpZihlWzBdPDImJmVbMV08OXx8MT09PWVbMF0mJjk9PT1lWzFdJiZlWzJdPDF8fDQ8PWVbMF0pdGhyb3cgbmV3IEVycm9yKCJCb290c3RyYXAncyBKYXZhU2NyaXB0IHJlcXVpcmVzIGF0IGxlYXN0IGpRdWVyeSB2MS45LjEgYnV0IGxlc3MgdGhhbiB2NC4wLjAiKX0oZSksdC5VdGlsPWd0LHQuQWxlcnQ9bXQsdC5CdXR0b249X3QsdC5DYXJvdXNlbD12dCx0LkNvbGxhcHNlPUV0LHQuRHJvcGRvd249VGksdC5Nb2RhbD1DaSx0LlBvcG92ZXI9SWksdC5TY3JvbGxzcHk9RGksdC5UYWI9QWksdC5Ub29sdGlwPXdpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0pOwovLyMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuYnVuZGxlLm1pbi5qcy5tYXA="></script>
<script src="data:application/x-javascript;base64,Ly8gU3RyaW5nLmpzIC0gbGliZXJhdGVkIGZyb20gTWljcm9zb2Z0QWpheC5qcyBvbiAwMy8yOC8xMCBieSBTa3kgU2FuZGVycwovLyBwZXJtYWxpbms6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzI1MzQ4MzQvMjM0MwoKLyoKICAgIENvcHlyaWdodCAoYykgMjAwOSwgQ29kZVBsZXggRm91bmRhdGlvbgogICAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiAgICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkCiAgICBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgoKICAgICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zCiAgICAgICAgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KCiAgICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucwogICAgICAgIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCgogICAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgQ29kZVBsZXggRm91bmRhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvcgogICAgICAgIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogICAgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyBBUyBJUyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRAogICAgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogICAgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQogICAgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiAgICBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKICAgIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAogICAgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTgogICAgSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuPC90ZXh0YXJlYT4KKi8KCihmdW5jdGlvbih3aW5kb3cpIHsKCiAgICAkdHlwZSA9IFN0cmluZzsKICAgICR0eXBlLl9fdHlwZU5hbWUgPSAnU3RyaW5nJzsKICAgICR0eXBlLl9fY2xhc3MgPSB0cnVlOwoKICAgICRwcm90b3R5cGUgPSAkdHlwZS5wcm90b3R5cGU7CiAgICAkcHJvdG90eXBlLmVuZHNXaXRoID0gZnVuY3Rpb24gU3RyaW5nJGVuZHNXaXRoKHN1ZmZpeCkgewogICAgICAgIC8vLyA8c3VtbWFyeT5EZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGVuZCBvZiB0aGlzIGluc3RhbmNlIG1hdGNoZXMgdGhlIHNwZWNpZmllZCBzdHJpbmcuPC9zdW1tYXJ5PgogICAgICAgIC8vLyA8cGFyYW0gbmFtZT0ic3VmZml4IiB0eXBlPSJTdHJpbmciPkEgc3RyaW5nIHRvIGNvbXBhcmUgdG8uPC9wYXJhbT4KICAgICAgICAvLy8gPHJldHVybnMgdHlwZT0iQm9vbGVhbiI+dHJ1ZSBpZiBzdWZmaXggbWF0Y2hlcyB0aGUgZW5kIG9mIHRoaXMgaW5zdGFuY2U7IG90aGVyd2lzZSwgZmFsc2UuPC9yZXR1cm5zPgogICAgICAgIHJldHVybiAodGhpcy5zdWJzdHIodGhpcy5sZW5ndGggLSBzdWZmaXgubGVuZ3RoKSA9PT0gc3VmZml4KTsKICAgIH0KCiAgICAkcHJvdG90eXBlLnN0YXJ0c1dpdGggPSBmdW5jdGlvbiBTdHJpbmckc3RhcnRzV2l0aChwcmVmaXgpIHsKICAgICAgICAvLy8gPHN1bW1hcnkgPkRldGVybWluZXMgd2hldGhlciB0aGUgYmVnaW5uaW5nIG9mIHRoaXMgaW5zdGFuY2UgbWF0Y2hlcyB0aGUgc3BlY2lmaWVkIHN0cmluZy48L3N1bW1hcnk+CiAgICAgICAgLy8vIDxwYXJhbSBuYW1lPSJwcmVmaXgiIHR5cGU9IlN0cmluZyI+VGhlIFN0cmluZyB0byBjb21wYXJlLjwvcGFyYW0+CiAgICAgICAgLy8vIDxyZXR1cm5zIHR5cGU9IkJvb2xlYW4iPnRydWUgaWYgcHJlZml4IG1hdGNoZXMgdGhlIGJlZ2lubmluZyBvZiB0aGlzIHN0cmluZzsgb3RoZXJ3aXNlLCBmYWxzZS48L3JldHVybnM+CiAgICAgICAgcmV0dXJuICh0aGlzLnN1YnN0cigwLCBwcmVmaXgubGVuZ3RoKSA9PT0gcHJlZml4KTsKICAgIH0KCiAgICAkcHJvdG90eXBlLnRyaW0gPSBmdW5jdGlvbiBTdHJpbmckdHJpbSgpIHsKICAgICAgICAvLy8gPHN1bW1hcnkgPlJlbW92ZXMgYWxsIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlLXNwYWNlIGNoYXJhY3RlcnMgZnJvbSB0aGUgY3VycmVudCBTdHJpbmcgb2JqZWN0Ljwvc3VtbWFyeT4KICAgICAgICAvLy8gPHJldHVybnMgdHlwZT0iU3RyaW5nIj5UaGUgc3RyaW5nIHRoYXQgcmVtYWlucyBhZnRlciBhbGwgd2hpdGUtc3BhY2UgY2hhcmFjdGVycyBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBzdGFydCBhbmQgZW5kIG9mIHRoZSBjdXJyZW50IFN0cmluZyBvYmplY3QuPC9yZXR1cm5zPgogICAgICAgIHJldHVybiB0aGlzLnJlcGxhY2UoL15ccyt8XHMrJC9nLCAnJyk7CiAgICB9CgogICAgJHByb3RvdHlwZS50cmltRW5kID0gZnVuY3Rpb24gU3RyaW5nJHRyaW1FbmQoKSB7CiAgICAgICAgLy8vIDxzdW1tYXJ5ID5SZW1vdmVzIGFsbCB0cmFpbGluZyB3aGl0ZSBzcGFjZXMgZnJvbSB0aGUgY3VycmVudCBTdHJpbmcgb2JqZWN0Ljwvc3VtbWFyeT4KICAgICAgICAvLy8gPHJldHVybnMgdHlwZT0iU3RyaW5nIj5UaGUgc3RyaW5nIHRoYXQgcmVtYWlucyBhZnRlciBhbGwgd2hpdGUtc3BhY2UgY2hhcmFjdGVycyBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgU3RyaW5nIG9iamVjdC48L3JldHVybnM+CiAgICAgICAgcmV0dXJuIHRoaXMucmVwbGFjZSgvXHMrJC8sICcnKTsKICAgIH0KCiAgICAkcHJvdG90eXBlLnRyaW1TdGFydCA9IGZ1bmN0aW9uIFN0cmluZyR0cmltU3RhcnQoKSB7CiAgICAgICAgLy8vIDxzdW1tYXJ5ID5SZW1vdmVzIGFsbCBsZWFkaW5nIHdoaXRlIHNwYWNlcyBmcm9tIHRoZSBjdXJyZW50IFN0cmluZyBvYmplY3QuPC9zdW1tYXJ5PgogICAgICAgIC8vLyA8cmV0dXJucyB0eXBlPSJTdHJpbmciPlRoZSBzdHJpbmcgdGhhdCByZW1haW5zIGFmdGVyIGFsbCB3aGl0ZS1zcGFjZSBjaGFyYWN0ZXJzIGFyZSByZW1vdmVkIGZyb20gdGhlIHN0YXJ0IG9mIHRoZSBjdXJyZW50IFN0cmluZyBvYmplY3QuPC9yZXR1cm5zPgogICAgICAgIHJldHVybiB0aGlzLnJlcGxhY2UoL15ccysvLCAnJyk7CiAgICB9CgogICAgJHR5cGUuZm9ybWF0ID0gZnVuY3Rpb24gU3RyaW5nJGZvcm1hdChmb3JtYXQsIGFyZ3MpIHsKICAgICAgICAvLy8gPHN1bW1hcnk+UmVwbGFjZXMgdGhlIGZvcm1hdCBpdGVtcyBpbiBhIHNwZWNpZmllZCBTdHJpbmcgd2l0aCB0aGUgdGV4dCBlcXVpdmFsZW50cyBvZiB0aGUgdmFsdWVzIG9mICAgY29ycmVzcG9uZGluZyBvYmplY3QgaW5zdGFuY2VzLiBUaGUgaW52YXJpYW50IGN1bHR1cmUgd2lsbCBiZSB1c2VkIHRvIGZvcm1hdCBkYXRlcyBhbmQgbnVtYmVycy48L3N1bW1hcnk+CiAgICAgICAgLy8vIDxwYXJhbSBuYW1lPSJmb3JtYXQiIHR5cGU9IlN0cmluZyI+QSBmb3JtYXQgc3RyaW5nLjwvcGFyYW0+CiAgICAgICAgLy8vIDxwYXJhbSBuYW1lPSJhcmdzIiBwYXJhbWV0ZXJBcnJheT0idHJ1ZSIgbWF5QmVOdWxsPSJ0cnVlIj5UaGUgb2JqZWN0cyB0byBmb3JtYXQuPC9wYXJhbT4KICAgICAgICAvLy8gPHJldHVybnMgdHlwZT0iU3RyaW5nIj5BIGNvcHkgb2YgZm9ybWF0IGluIHdoaWNoIHRoZSBmb3JtYXQgaXRlbXMgaGF2ZSBiZWVuIHJlcGxhY2VkIGJ5IHRoZSAgIHN0cmluZyBlcXVpdmFsZW50IG9mIHRoZSBjb3JyZXNwb25kaW5nIGluc3RhbmNlcyBvZiBvYmplY3QgYXJndW1lbnRzLjwvcmV0dXJucz4KICAgICAgICByZXR1cm4gU3RyaW5nLl90b0Zvcm1hdHRlZFN0cmluZyhmYWxzZSwgYXJndW1lbnRzKTsKICAgIH0KCiAgICAkdHlwZS5fdG9Gb3JtYXR0ZWRTdHJpbmcgPSBmdW5jdGlvbiBTdHJpbmckX3RvRm9ybWF0dGVkU3RyaW5nKHVzZUxvY2FsZSwgYXJncykgewogICAgICAgIHZhciByZXN1bHQgPSAnJzsKICAgICAgICB2YXIgZm9ybWF0ID0gYXJnc1swXTsKCiAgICAgICAgZm9yICh2YXIgaSA9IDA7IDsgKSB7CiAgICAgICAgICAgIC8vIEZpbmQgdGhlIG5leHQgb3BlbmluZyBvciBjbG9zaW5nIGJyYWNlCiAgICAgICAgICAgIHZhciBvcGVuID0gZm9ybWF0LmluZGV4T2YoJ3snLCBpKTsKICAgICAgICAgICAgdmFyIGNsb3NlID0gZm9ybWF0LmluZGV4T2YoJ30nLCBpKTsKICAgICAgICAgICAgaWYgKChvcGVuIDwgMCkgJiYgKGNsb3NlIDwgMCkpIHsKICAgICAgICAgICAgICAgIC8vIE5vdCBmb3VuZDogY29weSB0aGUgZW5kIG9mIHRoZSBzdHJpbmcgYW5kIGJyZWFrCiAgICAgICAgICAgICAgICByZXN1bHQgKz0gZm9ybWF0LnNsaWNlKGkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKChjbG9zZSA+IDApICYmICgoY2xvc2UgPCBvcGVuKSB8fCAob3BlbiA8IDApKSkgewoKICAgICAgICAgICAgICAgIGlmIChmb3JtYXQuY2hhckF0KGNsb3NlICsgMSkgIT09ICd9JykgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignZm9ybWF0IHN0cmluZ0Zvcm1hdEJyYWNlTWlzbWF0Y2gnKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICByZXN1bHQgKz0gZm9ybWF0LnNsaWNlKGksIGNsb3NlICsgMSk7CiAgICAgICAgICAgICAgICBpID0gY2xvc2UgKyAyOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIENvcHkgdGhlIHN0cmluZyBiZWZvcmUgdGhlIGJyYWNlCiAgICAgICAgICAgIHJlc3VsdCArPSBmb3JtYXQuc2xpY2UoaSwgb3Blbik7CiAgICAgICAgICAgIGkgPSBvcGVuICsgMTsKCiAgICAgICAgICAgIC8vIENoZWNrIGZvciBkb3VibGUgYnJhY2VzICh3aGljaCBkaXNwbGF5IGFzIG9uZSBhbmQgYXJlIG5vdCBhcmd1bWVudHMpCiAgICAgICAgICAgIGlmIChmb3JtYXQuY2hhckF0KGkpID09PSAneycpIHsKICAgICAgICAgICAgICAgIHJlc3VsdCArPSAneyc7CiAgICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGNsb3NlIDwgMCkgdGhyb3cgbmV3IEVycm9yKCdmb3JtYXQgc3RyaW5nRm9ybWF0QnJhY2VNaXNtYXRjaCcpOwoKCiAgICAgICAgICAgIC8vIEZpbmQgdGhlIGNsb3NpbmcgYnJhY2UKCiAgICAgICAgICAgIC8vIEdldCB0aGUgc3RyaW5nIGJldHdlZW4gdGhlIGJyYWNlcywgYW5kIHNwbGl0IGl0IGFyb3VuZCB0aGUgJzonIChpZiBhbnkpCiAgICAgICAgICAgIHZhciBicmFjZSA9IGZvcm1hdC5zdWJzdHJpbmcoaSwgY2xvc2UpOwogICAgICAgICAgICB2YXIgY29sb25JbmRleCA9IGJyYWNlLmluZGV4T2YoJzonKTsKICAgICAgICAgICAgdmFyIGFyZ051bWJlciA9IHBhcnNlSW50KChjb2xvbkluZGV4IDwgMCkgPyBicmFjZSA6IGJyYWNlLnN1YnN0cmluZygwLCBjb2xvbkluZGV4KSwgMTApICsgMTsKCiAgICAgICAgICAgIGlmIChpc05hTihhcmdOdW1iZXIpKSB0aHJvdyBuZXcgRXJyb3IoJ2Zvcm1hdCBzdHJpbmdGb3JtYXRJbnZhbGlkJyk7CgogICAgICAgICAgICB2YXIgYXJnRm9ybWF0ID0gKGNvbG9uSW5kZXggPCAwKSA/ICcnIDogYnJhY2Uuc3Vic3RyaW5nKGNvbG9uSW5kZXggKyAxKTsKCiAgICAgICAgICAgIHZhciBhcmcgPSBhcmdzW2FyZ051bWJlcl07CiAgICAgICAgICAgIGlmICh0eXBlb2YgKGFyZykgPT09ICJ1bmRlZmluZWQiIHx8IGFyZyA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgYXJnID0gJyc7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIElmIGl0IGhhcyBhIHRvRm9ybWF0dGVkU3RyaW5nIG1ldGhvZCwgY2FsbCBpdC4gIE90aGVyd2lzZSwgY2FsbCB0b1N0cmluZygpCiAgICAgICAgICAgIGlmIChhcmcudG9Gb3JtYXR0ZWRTdHJpbmcpIHsKICAgICAgICAgICAgICAgIHJlc3VsdCArPSBhcmcudG9Gb3JtYXR0ZWRTdHJpbmcoYXJnRm9ybWF0KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmICh1c2VMb2NhbGUgJiYgYXJnLmxvY2FsZUZvcm1hdCkgewogICAgICAgICAgICAgICAgcmVzdWx0ICs9IGFyZy5sb2NhbGVGb3JtYXQoYXJnRm9ybWF0KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmIChhcmcuZm9ybWF0KSB7CiAgICAgICAgICAgICAgICByZXN1bHQgKz0gYXJnLmZvcm1hdChhcmdGb3JtYXQpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHJlc3VsdCArPSBhcmcudG9TdHJpbmcoKTsKCiAgICAgICAgICAgIGkgPSBjbG9zZSArIDE7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgfQoKfSkod2luZG93KTs="></script>
<script src="data:application/x-javascript;base64,Ly8gZGF0ZSBmdW5jdGlvbnMKRGF0ZS5wcm90b3R5cGUueXl5eW1tZGQgPSBmdW5jdGlvbigpIHsKICB2YXIgbW0gPSB0aGlzLmdldE1vbnRoKCkgKyAxOyAvLyBnZXRNb250aCgpIGlzIHplcm8tYmFzZWQKICB2YXIgZGQgPSB0aGlzLmdldERhdGUoKTsKCiAgcmV0dXJuIFt0aGlzLmdldEZ1bGxZZWFyKCksCiAgICAgICAgICAobW0+OSA/ICcnIDogJzAnKSArIG1tLAogICAgICAgICAgKGRkPjkgPyAnJyA6ICcwJykgKyBkZAogICAgICAgICBdLmpvaW4oJycpOwp9OwoKZnVuY3Rpb24gaGVyZWRvYyhmbikgewogIHJldHVybiBmbi50b1N0cmluZygpLm1hdGNoKC9cL1wqXHMqKFtcc1xTXSo/KVxzKlwqXC8vbSlbMV07Cn07CgoKZnVuY3Rpb24gZmxhc2goc2VsZWN0b3IsIGR1cmF0aW9uKSB7CgkkKHNlbGVjdG9yKS5mYWRlSW4oZHVyYXRpb24pLmZhZGVPdXQoZHVyYXRpb24pLmZhZGVJbihkdXJhdGlvbikuZmFkZU91dChkdXJhdGlvbikuZmFkZUluKGR1cmF0aW9uKTsKfQo="></script>
<script src="data:application/x-javascript;base64,IGZ1bmN0aW9uIG9wZW5VUkwodXJsKQp7CiAgY29uc29sZS5sb2coU3RyaW5nLmZvcm1hdCgib3BlblVSTCh7MH0pIiwgdXJsKSkKICBXc2hTaGVsbC5ydW4odXJsKTsKfQ=="></script>
<script src="data:application/x-javascript;base64,Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLyoqCiogU2lsZW50bHkgZXhlY3V0ZSBhIHBvd2Vyc2hlbGwgY29tbWFuZC4gCiovCmZ1bmN0aW9uIHBvd2Vyc2hlbGwoY29tbWFuZF9zdHJpbmcsIGludGVyYWN0aXZlLCBwYXVzZSl7CiAgICBzdGFydCA9ICdzdGFydCBcIlwiJwogICAgaWYgKHBhdXNlID09IDEpewogICAgICAgIHBhdXNlID0gJyZwYXVzZScKICAgIH0gZWxzZSB7CiAgICAgICAgcGF1c2UgPSAnJwogICAgfQogICAgaWYgKGludGVyYWN0aXZlID09IDApewogICAgICAgIGhpZGRlbiA9ICctdyBoaWRkZW4gLW5vbG9nbycKICAgICAgICBzdGFydCA9ICcnCiAgICB9IGVsc2UgewogICAgICAgIGhpZGRlbiA9ICcnCiAgICB9ICAgIAogICAgdmFyIGNsaXBib2FyZERhdGFfb3JpZyA9IHdpbmRvdy5jbGlwYm9hcmREYXRhLmdldERhdGEoIlRleHQiKTsKICAgIHdpbmRvdy5jbGlwYm9hcmREYXRhLnNldERhdGEoIlRleHQiLGNvbW1hbmRfc3RyaW5nKTsgCiAgICB2YXIgY2xpcGJvYXJkRGF0YSA9IHdpbmRvdy5jbGlwYm9hcmREYXRhLmdldERhdGEoIlRleHQiKTsKICAgIGNvbnNvbGUubG9nKCJQb3dlcnNoZWxsIGNvbW1hbmQgaXM6ICIgKyBjbGlwYm9hcmREYXRhKQogICAgY29tbWFuZCA9IFN0cmluZy5mb3JtYXQoIiVjb21zcGVjJSAvYyB7MH0gUG93ZXJTaGVsbCAtRXhlY3V0aW9uUG9saWN5IFVucmVzdHJpY3RlZCAtbm9wcm9maWxlIHsxfSAtQ29tbWFuZCAkY29tbWFuZHM9JChcImFkZC10eXBlIC1Bc3NlbWJseU5hbWUgU3lzdGVtLldpbmRvd3MuRm9ybXM7JGNsaXBib2FyZERhdGEgPSBbU3lzdGVtLldpbmRvd3MuRm9ybXMuQ2xpcGJvYXJkXTo6R2V0VGV4dCgpIC1zcGxpdCAnXFxyXFxuJztbU3RyaW5nXTo6Sm9pbiggJzsnLCAkKCAgKCAkY2xpcGJvYXJkRGF0YSApICkpXCIpO0ludm9rZS1FeHByZXNzaW9uICRjb21tYW5kcyAyPiYxO3syfSB8IGNsaXAiLCBzdGFydCwgaGlkZGVuLCBwYXVzZSk7CiAgICBjb25zb2xlLmxvZygiSW52b2tlZCBQb3dlcnNoZWxsIGNvbW1hbmQgdmlhOiAiICsgY29tbWFuZCkKICAgIFdzaFNoZWxsLnJ1bihjb21tYW5kLDAsdHJ1ZSk7CiAgICBjb25zb2xlLmxvZygiU1RET1VUOiAiICsgd2luZG93LmNsaXBib2FyZERhdGEuZ2V0RGF0YSgiVGV4dCIpKTsKICAgIHNldFRpbWVvdXQoZnVuY3Rpb24odCl7CiAgICB3aW5kb3cuY2xpcGJvYXJkRGF0YS5zZXREYXRhKCJUZXh0IixjbGlwYm9hcmREYXRhX29yaWcpOyAKICAgIH0sIDIwMDApOwogICAgcmV0dXJuICAgICAgICAgICAgICAgCn0KLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLyoqCiogU2lsZW50bHkgZXhlY3V0ZSBhIGNtZCBzaGVsbCBjb21tYW5kIHZpYSBpbnRlcm1lZGlhcnkgc2NyaXB0CiovCmZ1bmN0aW9uIGNtZChjb21tYW5kX3N0cmluZyl7CgogICAgLy8gSW5zdGFudGlhdGUgIFdpbmRvd3MgU2NyaXB0IEhvc3QgRmlsZVN5c3RlbU9iamVjdAogICAgSU5URVJNRURJQVJZX1NDUklQVF9OQU1FID0gJy5jbWQuY29tbWFuZHMuYmF0JwogICAgSU5URVJNRURJQVJZX1NDUklQVF9GSUxFID0gQ1dEK0lOVEVSTUVESUFSWV9TQ1JJUFRfTkFNRQogICAgT1VUUFVURklMRU5BTUUgPSAnLmNtZC5jb21tYW5kcy5sb2cnCiAgICBPVVRQVVRGSUxFID0gQ1dEK09VVFBVVEZJTEVOQU1FCiAgICB2YXIgcmVzdWx0ID0gIiI7ICAgICAgIAogICAgdHJ5IHsKICAgICAgICB2YXIgZmlsZSA9IEZpbGVNYW5hZ2VyLk9wZW5UZXh0RmlsZShJTlRFUk1FRElBUllfU0NSSVBUX0ZJTEUsIEZvcldyaXRpbmcsIHRydWUpOwogICAgICAgIGZpbGUud3JpdGUoY29tbWFuZF9zdHJpbmcpOwogICAgICAgIGZpbGUuQ2xvc2UoKTsKICAgICAgICBXc2hTaGVsbC5ydW4oJyVjb21zcGVjJSAvYyAnK0lOVEVSTUVESUFSWV9TQ1JJUFRfRklMRSsnID4+ICInK09VVFBVVEZJTEUrJyInLDAsdHJ1ZSk7CiAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIC8vIEZpbGUgZG9lcyBub3QgZXhpc3Qgb3IgaXMgZW1wdHkuIAogICAgICAgIC8vIEp1c3Qga2VlcCByZXN1bHQgYXMgYW4gZW1wdHkgc3RyaW5nLCBidXQgYWxlcnQgdXMKICAgICAgICBhbGVydChlcnJvcikKICAgIH0KICAgIHRyeSB7CiAgICAgICAgRmlsZU1hbmFnZXIuRGVsZXRlRmlsZShJTlRFUk1FRElBUllfU0NSSVBUX0ZJTEUpOwogICAgfSBjYXRjaCAoZXJyb3IpIHt9CiAgICByZXR1cm4gcmVzdWx0Owp9Ci8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8qKgoqIEludm9rZSBhIGNtZCBzaGVsbAoqLwpmdW5jdGlvbiBzaGVsbChleGUsIGNvbW1hbmRfc3RyaW5nLCBjbWRfa2VlcF9vcGVuLCBjbWRfbmV3X3dpbmRvdywgcHJvZ3JhbV93aW5kb3dfc3R5bGUsIHdhaXRfZm9yX2V4aXQpewogICAgLy8gZXhlID0gV3NoU2hlbGwuRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKGV4ZSkKICAgIGlmIChjb21tYW5kX3N0cmluZyA9PSBudWxsICYmIGNtZF9rZWVwX29wZW4gIT0gIi9rIil7CiAgICAgICAgY29uc29sZS5sb2coU3RyaW5nLmZvcm1hdCgnU2tpcHBlZCBpbnZvY2F0aW9uIGZvciB7MH06IGNvbW1hbmQgU3RyaW5nIGlzIG51bGwsIHlldCBkYXRhLWNtZC1rZWVwLW9wZW4gaXMgbm90IHNldCB0byAvaycsIGV4ZSkpCiAgICAgICAgcmV0dXJuCiAgICB9CiAgICBjb21tYW5kID0gU3RyaW5nLmZvcm1hdCgiezB9IHsxfSB7Mn0gezN9IiwgZXhlLCBjbWRfa2VlcF9vcGVuLCBjbWRfbmV3X3dpbmRvdywgY29tbWFuZF9zdHJpbmcpIC8vIGUuZy4gY21kIC9jICIiICIiIGVjaG8gaGVsbG8gb3IgY21kIC9jIHN0YXJ0ICIiIGVjaG8gaGVsbG8KICAgIHRyeSB7CiAgICAgICAgY29uc29sZS5sb2coIkludm9rZWQgc2hlbGwgYXMgcGVyICIgKyBjb21tYW5kKQogICAgICAgIGNvbnNvbGUubG9nKFN0cmluZy5mb3JtYXQoIkxpbmUgaW4gY29kZSBpczogV3NoU2hlbGwuZXhlYygnezB9JykiLGNvbW1hbmQpKQogICAgICAgIGlmIChXc2hTaGVsbCAhPSBudWxsKSB7CiAgICAgICAgICAgIHIgPSBXc2hTaGVsbC5leGVjKGNvbW1hbmQpCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJSZWFkaW5nIFNURE9VVCAuLi4iKQogICAgICAgICAgICB2YXIgT3V0U3RyZWFtID0gci5TdGRPdXQ7CiAgICAgICAgICAgIHZhciBTdGRPdXQgPSAnIiInOwogICAgICAgICAgICB3aGlsZSAoIU91dFN0cmVhbS5hdEVuZE9mU3RyZWFtKSB7CiAgICAgICAgICAgIFN0ZE91dCA9IFN0ZE91dCArIE91dFN0cmVhbS5yZWFkQWxsKCk7CiAgICAgICAgICAgIH0gCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCJTdGRPdXQ6IFxuICIgKyBTdGRPdXQpCiAgICAgICAgICAgIHJldHVybiB0cnVlCiAgICAgICAgfQogICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICBhbGVydChlcnJvcikKICAgICAgICByZXR1cm4gZmFsc2UKICAgIH0KCn0KLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgCgoK"></script>
<script src="data:application/x-javascript;base64,JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgIC8vIE9uY2UgZG9jdW1lbnQgbG9hZHMsIGhpZGUgZGl2cyB3aXRoIC5zZWN0aW9uIGNsYXNzCiAgICAkKCIuc2VjdGlvbiwgc2VjdGlvbiIpLmhpZGUoKTsKfSk7"></script>
<script src="data:application/x-javascript;base64,JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihmdW5jdGlvbihjb250ZXh0KSB7CgogIHZhciBsYXlvdXQgPSAgJzxkaXYgaWQ9InBhbmVsLWJveCI+JyArCiAgICAgICAgICAgICAgICAnICA8ZGl2IGlkPSJwYW5lbC1kcmFnYmFyIj48L2Rpdj4nICsKICAgICAgICAgICAgICAgICcgIDxkaXYgaWQ9InBhbmVsLWhlYWRlciI+JyArCiAgICAgICAgICAgICAgICAnICA8c3BhbiBzdHlsZT0icGFkZGluZy1sZWZ0OiA1cHg7IGZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAjNTU1OyI+Q29uc29sZTwvc3Bhbj4nICsKICAgICAgICAgICAgICAgICcgICAgPHNwYW4gaWQ9InBhbmVsLW1lbnUtY2xvc2UiIHN0eWxlPSJmbG9hdDogcmlnaHQ7IG1hcmdpbi1yaWdodDogOHB4OyBjdXJzb3I6IHBvaW50ZXI7IGNvbG9yOiBncmV5OyIgb25jbGljaz0iaHRhQ29uc29sZS50b2dnbGUoKTsiPiYjMTAwMDY7PC9zcGFuPicgKwogICAgICAgICAgICAgICAgJyAgICA8c3BhbiBpZD0icGFuZWwtbWVudS1taW5pbWl6ZSIgc3R5bGU9ImZsb2F0OiByaWdodDsgbWFyZ2luLXRvcDoxcHg7bWFyZ2luLXJpZ2h0OiAxMHB4OyBjdXJzb3I6IHBvaW50ZXI7IGNvbG9yOiBncmV5OyIgb25jbGljaz0iaHRhQ29uc29sZS5taW5pbWl6ZSgpIj4mIzk2NjA7PC9zcGFuPicgKwogICAgICAgICAgICAgICAgJyAgPC9kaXY+JyArCiAgICAgICAgICAgICAgICAnICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiNmZmYiPicgKwogICAgICAgICAgICAgICAgJyAgICA8ZGl2IGlkPSJwYW5lbC1jb25zb2xlIj48L2Rpdj4nICsKICAgICAgICAgICAgICAgICcgICAgPHNwYW4gc3R5bGU9InBhZGRpbmctbGVmdDo0cHg7IGZvbnQtd2VpZ2h0OjcwMDsgZm9udC1zaXplOjE2cHg7IGNvbG9yOiM2MmFkZWEiPiYjNjI7PC9pPjwvc3Bhbj48aW5wdXQgaWQ9ImNvbW1hbmRsaW5lIj4nICsKICAgICAgICAgICAgICAgICcgIDwvZGl2PicgKwogICAgICAgICAgICAgICAgJyAgPGRpdiBpZD0icGFuZWwtbmF2aWdhdGlvbiI+JyArCiAgICAgICAgICAgICAgICAnICAgIDxzcGFuIHN0eWxlPSJjdXJzb3I6IHBvaW50ZXIiIG9uY2xpY2s9Imh0YUNvbnNvbGUuY2xlYXIoKSI+JiMxMDY4MDs8L3NwYW4+JyArCiAgICAgICAgICAgICAgICAnICAgIDxzcGFuIGlkPSJwYW5lbC1tZW51LXRyYW5zcGFyZW50IiBzdHlsZT0iY3Vyc29yOiBwb2ludGVyIiBvbmNsaWNrPSJodGFDb25zb2xlLnRyYW5zcGFyZW50KCkiPiYjOTY4MDs8L3NwYW4+JyArCiAgICAgICAgICAgICAgICAnICA8L2Rpdj4nICsKICAgICAgICAgICAgICAgICc8L2Rpdj4nCgogIHZhciBjc3MgPSB7CiAgICBwYW5lbEJveDogewogICAgICAnd2lkdGgnOiAnMTAwJScsCiAgICAgICdjb2xvcic6ICcjMDAwJywKICAgICAgJ2ZvbnQtZmFtaWx5JzogJ0NvbnNvbGFzLCBDb3VyaWVyJywKICAgICAgJ2ZvbnQtc2l6ZSc6ICcxNHB4JywKICAgICAgJ3BhZGRpbmcnOiAnM3B4IDBweCAzcHggMHB4JywKICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJywKICAgICAgJ2JvdHRvbSc6ICctNHB4JywKICAgICAgJ2xlZnQnOiAnMHB4JywKICAgICAgJ29wYWNpdHknOiAnMS4wJywKICAgICAgJ2Rpc3BsYXknOiAnYmxvY2snLAogICAgICAnei1pbmRleCc6ICcxMDAwMCcKICAgIH0sCiAgICBwYW5lbERyYWdiYXI6IHsKICAgICAgJ2JvcmRlci10b3AnOiAnM3B4IHNvbGlkICNlZGVkZWQnLAogICAgICAnYm9yZGVyLWJvdHRvbSc6ICcxcHggc29saWQgI2NjYycsCiAgICAgICd3aWR0aCc6ICcxMDAlJywKICAgICAgJ2N1cnNvcic6ICdyb3ctcmVzaXplJwogICAgfSwKICAgIHBhbmVsSGVhZGVyOiB7CiAgICAgICdoZWlnaHQnOiAnMjRweCcsCiAgICAgICdiYWNrZ3JvdW5kJzogJyNlZGVkZWQnLAogICAgICAnYm9yZGVyLXRvcCc6ICcxcHggc29saWQgI2ZmZicsCiAgICAgICdib3JkZXItYm90dG9tJzogJzFweCBzb2xpZCAjY2FjYWNhJywKICAgICAgJ3RleHQtYWxpZ24nOiAnbGVmdCcsCiAgICAgICdmb250LWZhbWlseSc6ICdBcmlhbCcKICAgIH0sCiAgICBwYW5lbENvbnNvbGU6IHsKICAgICAgJ292ZXJmbG93JzogJ2F1dG8nLAogICAgICAnaGVpZ2h0JzogJzE1MHB4JywKICAgICAgJ3BhZGRpbmcnOiAnIDAgNXB4IDAgNXB4JywKICAgICAgJ3RleHQtYWxpZ24nOiAnbGVmdCcsCiAgICAgICdkaXNwbGF5JzogJ2Jsb2NrJywKICAgICAgJ2JhY2tncm91bmQnOiAnI2ZmZicKICAgIH0sCiAgICBwYW5lbE5hdmlnYXRpb246IHsKICAgICAgJ2hlaWdodCc6ICcyMXB4JywKICAgICAgJ3dpZHRoJzogJzEwMCUnLAogICAgICAncGFkZGluZy1sZWZ0JzogJzRweCcsCiAgICAgICdsaW5lLWhlaWdodCc6ICcxJywKICAgICAgJ2ZvbnQtc2l6ZSc6ICcxOHB4JywKICAgICAgJ2ZvbnQtd2VpZ2h0JzogJzcwMCcsCiAgICAgICdiYWNrZ3JvdW5kJzogJyNlZGVkZWQnLAogICAgICAnYm9yZGVyLXRvcCc6ICcxcHggc29saWQgI2NhY2FjYScsCiAgICAgICdmb250LWZhbWlseSc6ICdBcmlhbCcsCiAgICAgICdjb2xvcic6ICdncmV5JwogICAgfSwKICAgIGNvbW1hbmRsaW5lOiB7CiAgICAgICd3aWR0aCc6ICc5NyUnLAogICAgICAnYm9yZGVyJzogJ25vbmUnLAogICAgICAncGFkZGluZy1sZWZ0JzogJzZweCcsCiAgICAgICdvdXRsaW5lLXdpZHRoJzogJzBweCcKICAgIH0KICB9CgogIHZhciBjbWRIaXN0b3J5ID0gW10KICB2YXIgY21kSGlzdG9yeVBvc2l0aW9uID0gMAoKICB2YXIgY2FtZWxDYXNlID0gZnVuY3Rpb24oaW5wdXQpIHsgCiAgICByZXR1cm4gaW5wdXQudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC8tKC4pL2csIGZ1bmN0aW9uKG1hdGNoLCBncm91cDEpIHsKICAgICAgcmV0dXJuIGdyb3VwMS50b1VwcGVyQ2FzZSgpCiAgICB9KQogIH0KICB2YXIgaHlwaGVuID0gZnVuY3Rpb24oaW5wdXQpIHsKICAgIHJldHVybiBpbnB1dC5yZXBsYWNlKC8oW2Etel1bQS1aXSkvZywgZnVuY3Rpb24gKGdyb3VwKSB7CiAgICAgIHJldHVybiBncm91cFswXSArICctJyArIGdyb3VwWzFdLnRvTG93ZXJDYXNlKCkKICAgIH0pCiAgfQoKICB2YXIgY2Vuc29yID0gZnVuY3Rpb24oY2Vuc29yKSB7CiAgICB2YXIgaSA9IDAKICAgIHJldHVybiBmdW5jdGlvbihrZXksIHZhbHVlKSB7CiAgICAgIGlmIChpICE9PSAwICYmIHR5cGVvZihjZW5zb3IpID09PSAnb2JqZWN0JyAmJiB0eXBlb2YodmFsdWUpID09ICdvYmplY3QnICYmIGNlbnNvciA9PSB2YWx1ZSkKICAgICAgICByZXR1cm4gJ1tDaXJjdWxhcl0nCiAgICAgIGlmIChpID49IDI5KQogICAgICAgIHJldHVybiAnW1Vua25vd25dJwogICAgICA7KytpCiAgICAgIHJldHVybiB2YWx1ZQogICAgfQogIH0KCiAgdmFyIGh0YUNvbnNvbGUgPSB7fQogIGh0YUNvbnNvbGUuaW5pdCA9IGZ1bmN0aW9uKCkgewogICAgICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JykKICAgICAgY29udGFpbmVyLmlubmVySFRNTCA9IGxheW91dAogICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGNvbnRhaW5lcikKICAgICAgZm9yICh2YXIgY3NzQ2xhc3MgaW4gY3NzKSB7CiAgICAgICAgZm9yICh2YXIgY3NzUHJvcCBpbiBjc3NbY3NzQ2xhc3NdKSB7CiAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChoeXBoZW4oY3NzQ2xhc3MpKS5zdHlsZVtjYW1lbENhc2UoY3NzUHJvcCldID0gY3NzW2Nzc0NsYXNzXVtjc3NQcm9wXQogICAgICAgIH0KICAgICAgfQoKICAgICAgLy8gRHJhZ2JhcgogICAgICB2YXIgZHJhZ0hhbmRsZXIgPSBmdW5jdGlvbihldnQpIHsKICAgICAgICB2YXIgaGVpZ2h0ID0gImlubmVySGVpZ2h0IiBpbiB3aW5kb3cgPyB3aW5kb3cuaW5uZXJIZWlnaHQgOiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0SGVpZ2h0CiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWNvbnNvbGUnKS5zdHlsZS5oZWlnaHQgPSAoaGVpZ2h0IC0gODYgLSBldnQuY2xpZW50WSkgKyAncHgnCiAgICAgIH0KICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWRyYWdiYXInKS5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBmdW5jdGlvbihldnQpIHsKICAgICAgICBldnQucHJldmVudERlZmF1bHQoKQogICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIGRyYWdIYW5kbGVyKQogICAgICB9KQogICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgZnVuY3Rpb24oZXZ0KSB7CiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgZHJhZ0hhbmRsZXIpCiAgICAgIH0pCgogICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgZnVuY3Rpb24oZXZ0KSB7CiAgICAgICAgaWYgKGV2dC5rZXlDb2RlID09PSAxMjMpIGh0YUNvbnNvbGUudG9nZ2xlKCkKICAgICAgfSwgdHJ1ZSkKCiAgICAgIC8vIEZvY3VzCiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYW5lbC1jb25zb2xlJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihldnQpIHsKICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY29tbWFuZGxpbmUnKS5mb2N1cygpCiAgICAgIH0pCgoKICAgICAgLy8ga2V5cHJlc3MKICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbW1hbmRsaW5lJykuYWRkRXZlbnRMaXN0ZW5lcigna2V5cHJlc3MnLCBmdW5jdGlvbihldnQpIHsKICAgICAgICBpZiAoZXZ0LmtleUNvZGUgPT09IDEzKSB7CiAgICAgICAgICB2YXIgc0NtZCA9IHRoaXMudmFsdWUKICAgICAgICAgIGlmIChzQ21kID09PSAiY2xlYXIiKSB7CiAgICAgICAgICAgIGh0YUNvbnNvbGUuY2xlYXIoKQogICAgICAgICAgICB0aGlzLnZhbHVlID0gJycKICAgICAgICAgIH0gZWxzZSBpZiAoc0NtZCA9PT0gImhpc3RvcnkiKSB7CiAgICAgICAgICAgIGZvciAodmFyIHggPSAwOyB4IDwgY21kSGlzdG9yeS5sZW5ndGg7IHgrKykgY29uc29sZS5sb2coY21kSGlzdG9yeVt4XSkKICAgICAgICAgICAgdGhpcy52YWx1ZSA9ICcnCiAgICAgICAgICB9IGVsc2UgaWYgKHNDbWQpIHsKICAgICAgICAgICAgaHRhQ29uc29sZS5sb2coJzxzcGFuIHN0eWxlPSJjb2xvcjojNzc3IjsgZm9udC13ZWlnaHQ6NzAwIj4mIzYyOzwvc3Bhbj4gPHNwYW4+JyArIHNDbWQgKyAnPC9zcGFuPicpCiAgICAgICAgICAgIGNtZEhpc3RvcnkucHVzaChzQ21kKQogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIHZhciBldmFsQ21kID0gZXZhbChzQ21kKQogICAgICAgICAgICAgIGlmICh0eXBlb2YgZXZhbENtZCA9PT0gIm9iamVjdCIpIHsKICAgICAgICAgICAgICAgIHRyeSB7IGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGV2YWxDbWQpKSB9CiAgICAgICAgICAgICAgICBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICB0cnkgeyBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShldmFsQ21kLCBjZW5zb3IoZXZhbENtZCkpKSB9CiAgICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7IHRocm93IGUgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhldmFsQ21kKQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gJycKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgIHRoaXMudmFsdWUgPSAnJwogICAgICAgICAgICAgIHRocm93IGUKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIGNtZEhpc3RvcnlQb3NpdGlvbiA9IGNtZEhpc3RvcnkubGVuZ3RoCiAgICAgICAgfQogICAgICB9KQoKICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbW1hbmRsaW5lJykuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGZ1bmN0aW9uKGV2dCkgewogICAgICAgIGlmIChldnQua2V5Q29kZSA9PT0gMzgpIHsKICAgICAgICAgIGNtZEhpc3RvcnlQb3NpdGlvbi0tCiAgICAgICAgICBpZiAoY21kSGlzdG9yeVBvc2l0aW9uIDwgMCkgY21kSGlzdG9yeVBvc2l0aW9uID0gMAogICAgICAgICAgaWYgKGNtZEhpc3RvcnlbY21kSGlzdG9yeVBvc2l0aW9uXSAhPT0gdW5kZWZpbmVkICYmIGNtZEhpc3RvcnlbY21kSGlzdG9yeVBvc2l0aW9uXSAhPT0gJycpIHsKICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGNtZEhpc3RvcnlbY21kSGlzdG9yeVBvc2l0aW9uXQogICAgICAgICAgICByZXR1cm4gZmFsc2UKICAgICAgICAgIH0gZWxzZSBpZiAoY21kSGlzdG9yeVBvc2l0aW9uID09PSBjbWRIaXN0b3J5Lmxlbmd0aCkgewogICAgICAgICAgICB0aGlzLnZhbHVlID0gJycKICAgICAgICAgICAgcmV0dXJuIGZhbHNlCiAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoZXZ0LmtleUNvZGUgPT09IDQwKSB7CiAgICAgICAgICBjbWRIaXN0b3J5UG9zaXRpb24rKwogICAgICAgICAgaWYgKGNtZEhpc3RvcnlQb3NpdGlvbiA+PSBjbWRIaXN0b3J5Lmxlbmd0aCkgY21kSGlzdG9yeVBvc2l0aW9uID0gY21kSGlzdG9yeS5sZW5ndGgKICAgICAgICAgIGlmIChjbWRIaXN0b3J5W2NtZEhpc3RvcnlQb3NpdGlvbl0gIT09IHVuZGVmaW5lZCAmJiBjbWRIaXN0b3J5W2NtZEhpc3RvcnlQb3NpdGlvbl0gIT09ICcnKSB7CiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBjbWRIaXN0b3J5W2NtZEhpc3RvcnlQb3NpdGlvbl0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlCiAgICAgICAgICB9IGVsc2UgaWYgKGNtZEhpc3RvcnlQb3NpdGlvbiA9PT0gY21kSGlzdG9yeS5sZW5ndGgpIHsKICAgICAgICAgICAgdGhpcy52YWx1ZSA9ICcnCiAgICAgICAgICAgIHJldHVybiBmYWxzZQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSkKCiAgICAgIGNvbnNvbGUgPSB3aW5kb3cgfHwgd2luZG93LmNvbnNvbGUKICAgICAgdmFyIG1ldGhvZCA9IFsKICAgICAgICAibG9nIiwgImluZm8iLCAid2FybiIsICJvbmVycm9yIiwgImRlYnVnIiwgInRyYWNlIiwgImRpciIsICJncm91cCIsCiAgICAgICAgImdyb3VwQ29sbGFwc2VkIiwgImdyb3VwRW5kIiwgInRpbWUiLCAidGltZUVuZCIsICJwcm9maWxlIiwgInByb2ZpbGVFbmQiLAogICAgICAgICJkaXJ4bWwiLCAiYXNzZXJ0IiwgImNvdW50IiwgIm1hcmtUaW1lbGluZSIsICJ0aW1lU3RhbXAiLCAiY2xlYXIiLCAiY21kIgogICAgICBdCiAgICAgIC8vIGRlZmluZSB1bmRlZmluZWQgbWV0aG9kcyBhcyBub29wcyB0byBwcmV2ZW50IGVycm9ycwogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG1ldGhvZC5sZW5ndGg7IGkrKykgewogICAgICAgIGlmICghd2luZG93LmNvbnNvbGVbbWV0aG9kW2ldXSkgewogICAgICAgICAgaWYgKG1ldGhvZFtpXSA9PT0gJ29uZXJyb3InKSB7CiAgICAgICAgICAgIGNvbnNvbGVbbWV0aG9kW2ldXSA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHZhciBzY3JpcHRVUkwgPSBhcmd1bWVudHNbMV0KICAgICAgICAgICAgICB2YXIgc2NyaXB0TmFtZSA9IHNjcmlwdFVSTC5zcGxpdCgnLycpW3NjcmlwdFVSTC5zcGxpdCgnLycpLmxlbmd0aCAtIDFdCiAgICAgICAgICAgICAgaHRhQ29uc29sZS5sb2coCiAgICAgICAgICAgICAgICAnPHNwYW4gc3R5bGU9ImNvbG9yOnJlZCI+Jm90aW1lczsnICsKICAgICAgICAgICAgICAgICcgIDxzcGFuPicgKyBhcmd1bWVudHNbMF0gKyAnPC9zcGFuPicgKwogICAgICAgICAgICAgICAgJyAgPHNwYW4gY2xhc3M9InB1bGwtcmlnaHQiIHN0eWxlPSJjdXJzb3I6cG9pbnRlcjsgY29sb3I6Ymx1ZSIgb25jbGljaz0iaHRhQ29uc29sZS5zaG93TW9kYWwoXCcnKyBzY3JpcHRVUkwgKydcJykiPicgKyBzY3JpcHROYW1lICsgIjoiICsgYXJndW1lbnRzWzJdICsgJzwvc3Bhbj4nICsKICAgICAgICAgICAgICAgICc8L3NwYW4+JwogICAgICAgICAgICAgICkKICAgICAgICAgICAgICByZXR1cm4gdHJ1ZQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBjb25zb2xlW21ldGhvZFtpXV0gPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRydWUgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQoKICAgICAgY29uc29sZSA9IHsKICAgICAgICBjbGVhcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICBodGFDb25zb2xlLmNsZWFyKCkKICAgICAgICB9LAogICAgICAgIGNtZDogZnVuY3Rpb24oYXJnKSB7CiAgICAgICAgICBodGFDb25zb2xlLmxvZygnPHNwYW4gc3R5bGU9ImNvbG9yOiM3NzciOyBmb250LXdlaWdodDo3MDAiPiYjNjI7PC9zcGFuPiA8c3Bhbj4nICsgYXJnICsgIjwvc3Bhbj4iKQogICAgICAgIH0sCiAgICAgICAgaW5mbzogZnVuY3Rpb24oYXJnKSB7CiAgICAgICAgICBodGFDb25zb2xlLmxvZygnPHNwYW4gc3R5bGU9ImNvbG9yOiBSb3lhbEJsdWUiPiYjOTQzMjs8L3NwYW4+IDxzcGFuPicgKyBhcmcgKyAiPC9zcGFuPiIpCiAgICAgICAgfSwKICAgICAgICBsb2c6IGZ1bmN0aW9uKGFyZykgewogICAgICAgICAgaHRhQ29uc29sZS5sb2coJzxzcGFuIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDJweDsiPicgKyBhcmcgKyAnPC9zcGFuPicpCiAgICAgICAgfSwKICAgICAgICB3YXJuOiBmdW5jdGlvbihhcmcpIHsKICAgICAgICAgIGh0YUNvbnNvbGUubG9nKCc8c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZSI+JiM5ODg4Ozwvc3Bhbj4gPHNwYW4+JyArIGFyZyArICc8L3NwYW4+JykKICAgICAgICB9LAogICAgICAgIGVycm9yOiBmdW5jdGlvbihhcmcpIHsKICAgICAgICAgIHRocm93IGFyZwogICAgICAgIH0KICAgICAgfQogICAgfQoKICAgIGh0YUNvbnNvbGUubG9nID0gZnVuY3Rpb24obXNnKSB7CiAgICAgIHZhciBsb2dDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKQogICAgICBsb2dDb250YWluZXIuaW5uZXJIVE1MID0gbXNnICsgIjxicj4iCiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYW5lbC1jb25zb2xlJykuYXBwZW5kQ2hpbGQobG9nQ29udGFpbmVyKQogICAgICB0aGlzLmNvbnNvbGVyZXNpemUoKQogICAgfQoKICAgIGh0YUNvbnNvbGUuY29uc29sZXJlc2l6ZSA9IGZ1bmN0aW9uKCkgewogICAgICB2YXIgcGFuZWxDb25zb2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWNvbnNvbGUnKQogICAgICBwYW5lbENvbnNvbGUuc2Nyb2xsVG9wID0gcGFuZWxDb25zb2xlLnNjcm9sbEhlaWdodAogICAgfQoKICAgIGh0YUNvbnNvbGUuY2xlYXIgPSBmdW5jdGlvbigpIHsKICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWNvbnNvbGUnKS5pbm5lckhUTUwgPSAnJwogICAgfQoKICAgIGh0YUNvbnNvbGUudHJhbnNwYXJlbnQgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIHBhbmVsQm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWJveCcpCiAgICAgIHZhciBwYW5lbFRyYW5zcGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLW1lbnUtdHJhbnNwYXJlbnQnKQogICAgICBpZiAocGFuZWxCb3guc3R5bGUub3BhY2l0eSA9PT0gIjAuNSIpIHsKICAgICAgICBwYW5lbEJveC5zdHlsZS5vcGFjaXR5ID0gJzEuMCcKICAgICAgICBwYW5lbFRyYW5zcGFyZW50LmlubmVySFRNTCA9ICcmIzk2ODA7JwogICAgICB9IGVsc2UgewogICAgICAgIHBhbmVsQm94LnN0eWxlLm9wYWNpdHkgPSAnMC41JwogICAgICAgIHBhbmVsVHJhbnNwYXJlbnQuaW5uZXJIVE1MID0gJyYjOTg5OTsnCiAgICAgIH0KICAgIH0KCiAgICBodGFDb25zb2xlLm1pbmltaXplID0gZnVuY3Rpb24oKSB7CiAgICAgIHZhciBwYW5lbENvbnNvbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFuZWwtY29uc29sZScpCiAgICAgIHZhciBwYW5lbE1pbmltaXplID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLW1lbnUtbWluaW1pemUnKQogICAgICBpZiAocGFuZWxDb25zb2xlLnN0eWxlLmRpc3BsYXkgPT09ICJibG9jayIpIHsKICAgICAgICB0aGlzLnBhbmVsQ29uc29sZUhlaWdodCA9IHBhbmVsQ29uc29sZS5zdHlsZS5oZWlnaHQKICAgICAgICBwYW5lbENvbnNvbGUuc3R5bGUuaGVpZ2h0ID0gIjBweCIKICAgICAgICBwYW5lbENvbnNvbGUuc3R5bGUuZGlzcGxheSA9ICJub25lIgogICAgICAgIHBhbmVsTWluaW1pemUuaW5uZXJIVE1MID0gJyYjOTY1MDsnCiAgICAgIH0gZWxzZSB7CiAgICAgICAgcGFuZWxDb25zb2xlLnN0eWxlLmhlaWdodCA9IHRoaXMucGFuZWxDb25zb2xlSGVpZ2h0CiAgICAgICAgcGFuZWxDb25zb2xlLnN0eWxlLmRpc3BsYXkgPSAiYmxvY2siCiAgICAgICAgcGFuZWxNaW5pbWl6ZS5pbm5lckhUTUwgPSAnJiM5NjYwOycKICAgICAgICB0aGlzLmNvbnNvbGVyZXNpemUoKQogICAgICB9CiAgICB9CgogICAgaHRhQ29uc29sZS50b2dnbGUgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIHBhbmVsQm94ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbmVsLWJveCcpCiAgICAgIGlmIChwYW5lbEJveC5zdHlsZS5kaXNwbGF5ID09PSAiYmxvY2siKSB7CiAgICAgICAgcGFuZWxCb3guc3R5bGUuZGlzcGxheSA9ICJub25lIgogICAgICB9IGVsc2UgewogICAgICAgIHBhbmVsQm94LnN0eWxlLmRpc3BsYXkgPSAiYmxvY2siCiAgICAgICAgdGhpcy5jb25zb2xlcmVzaXplKCkKICAgICAgfQogICAgfQoKICAgIGh0YUNvbnNvbGUuc2hvd01vZGFsID0gZnVuY3Rpb24odXJsKXsKICAgICAgd2luZG93Lm9wZW4odXJsKQogICAgfQoKICByZXR1cm4gY29udGV4dC5odGFDb25zb2xlID0gaHRhQ29uc29sZQoKfSkod2luZG93KS5pbml0KCkKaHRhQ29uc29sZS50b2dnbGUoKQp9KTsKLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K"></script>
<script src="data:application/x-javascript;base64,Ly8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLyoqCiogRm9yIGFsbCBodG1sIGxpbmtzIChhKSB3aXRoIGNsYXNzICdyZWZlcmVuY2UnLCBpZiBjbGlja2VkLCB0cmlnZ2VyIGFub3RoZXIgbGluayBhcyBwZXIgdGhlIGRhdGEtcmVmZXJlbmNlIHRhZwoqLwokKCAiYS5yZWZlcmVuY2UiICkuY2xpY2soZnVuY3Rpb24oKSB7CnZhciByZWZlcmVuY2U9dGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcmVmZXJlbmNlJykKaWYgKHJlZmVyZW5jZSAhPSBudWxsKXsKICAgIGNvbnNvbGUubG9nKCdUcmlnZ2VyZWQgJyArIHJlZmVyZW5jZSkKICAgICQocmVmZXJlbmNlKS50cmlnZ2VyKCdjbGljaycpOwp9Cn0pOwovKioKKiBGb3IgYWxsIGh0bWwgbGlua3MgKGEpIHdpdGhvdXQgYSBjbGFzcyBvciBpZCwgb3BlbiB0aGUgdXJsIGFzIHNwZWNpZmllZCBpbiB0aGUgJ2hyZWYnIGF0dHJpYnV0ZQoqLwovLyAkKCAiYS53ZWJsaW5rIiApLmNsaWNrKGZ1bmN0aW9uKCkgewokKCAiYTpub3QoW2NsYXNzXSlhOm5vdChbaWRdKSwgYS51cmkiICkuY2xpY2soZnVuY3Rpb24oKSB7CnVybCA9IHRoaXMuZ2V0QXR0cmlidXRlKCdocmVmJykKaWYgKHVybCAhPSBudWxsKXsKICAgIG9wZW5VUkwodXJsKQp9Cn0pOwovKioKKiBGb3IgYWxsIGh0bWwgbGlua3MgKGEpIHdpdGggY2xhc3MgJ3Bvd2Vyc2hlbGwnIGludm9rZSB0aGUgcG93ZXJzaGVsbCBjb21tYW5kIGVuY2FzZWQgaW4gY29tbWVudCBzdHJpbmdzIDwhLS1QT1dFUlNIRUxMQ09ERS0tPgoqLwokKCAiYS5wb3dlcnNoZWxsIiApLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgCnZhciBjb21tYW5kX3N0cmluZyA9ICcnCnZhciB0ZXN0ID0gdGhpcy5pbm5lckhUTUwubWF0Y2goLzwhLS1bXHNcU10qLS0+LykKCmlmICh0ZXN0ICE9IG51bGwpewogICAgdmFyIHJlZ2V4ID0gLzwhLS18LS0+L2dpOwogICAgY29tbWFuZF9zdHJpbmcgPSB0ZXN0WzBdLnJlcGxhY2UocmVnZXgsJycpCn1lbHNlIHsKICAgIGNvbW1hbmRfc3RyaW5nID0gaGVyZWRvYyhmdW5jdGlvbiAoKSB7LyoKICAgICdZb3UgbXVzdCBzcGVjaWZ5IHBvd2Vyc2hlbGwgY29tbWFuZHMgZm9yIHRoaXMgbGluayBieSBlbmNhc2luZyB0aGVzZSBpbiBjb21tZW50IHN0cmluZ3MnCiAgICAgICAgJ2UuZy4nCiAgICAgICAgJzxhIGhyZWY9IiMiIGNsYXNzPSJwb3dlcnNoZWxsIj4nCiAgICAgICAgJzwhLS0nCiAgICAgICAgICAgICdIZWxsbyBXb3JsZCEnCiAgICAgICAgJy0tPicKICAgICAgICAnPC9hPicKICAgICAgICAmcGF1c2UKICAgICovfSk7IAogICAgYWxlcnQoY29tbWFuZF9zdHJpbmcpICAgCiAgICByZXR1cm4KfQoKdmFyIHBhdXNlPXRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXBhdXNlJykKaWYgKHBhdXNlICE9IDEpewogICAgcGF1c2UgPSAwCn0KCnZhciBpbnRlcmFjdGl2ZT10aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1pbnRlcmFjdGl2ZScpCmlmIChpbnRlcmFjdGl2ZSAhPSAwKXsKICAgIGludGVyYWN0aXZlID0gMQp9CgokKHRoaXMpLnRvZ2dsZUNsYXNzKCdjbGlja2VkJyk7CnBvd2Vyc2hlbGwoY29tbWFuZF9zdHJpbmcsIGludGVyYWN0aXZlLCBwYXVzZSk7CiQodGhpcykudG9nZ2xlQ2xhc3MoJ2NsaWNrZWQnKTsKCn0pOyAKLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLyoqCiogRm9yIGFsbCBodG1sIGxpbmtzIChhKSB3aXRoIGNsYXNzICdzaGVsbCcgaW52b2tlIHRoZSBzaGVsbCBhcyBlbmNhc2VkIGluIGNvbW1lbnQgc3RyaW5ncyA8IS0tU0hFTEwtLT4KKi8KJCggImEuc2hlbGwiICkuY2xpY2soZnVuY3Rpb24oKSB7CmNvbW1hbmRfc3RyaW5nID0gJycKdmFyIHRlc3QgPSB0aGlzLmlubmVySFRNTC5tYXRjaCgvPCEtLVtcc1xTXSotLT4vKQppZiAodGVzdCAhPSBudWxsKXsKICAgIHZhciByZWdleCA9IC88IS0tfC0tPi9naTsKICAgIGNvbW1hbmRfc3RyaW5nID0gdGVzdFswXS5yZXBsYWNlKHJlZ2V4LCcnKQp9IAp2YXIgY21kX2tlZXBfb3Blbj0kKHRoaXMpLmRhdGEoJ2NtZEtlZXBPcGVuJykKdmFyIGNtZF9uZXdfd2luZG93PSQodGhpcykuZGF0YSgnY21kTmV3V2luZG93JykKdmFyIHByb2dyYW1fd2luZG93X3N0eWxlPSQodGhpcykuZGF0YSgnd2luZG93U3R5bGUnKQp2YXIgd2FpdF9mb3JfZXhpdD0kKHRoaXMpLmRhdGEoJ3dhaXQnKQpjbWRfa2VlcF9vcGVuID0gKGNtZF9rZWVwX29wZW4gPT0gMSkgPyAnL2snOicvYycKY21kX25ld193aW5kb3cgPSAoY21kX25ld193aW5kb3cgPT0gMSkgPyAnc3RhcnQgXCJcIic6JycKLy8gU3BlY2lmeSBXU2NyaXB0LlNoZWxsIC5SdW4gcGFyYW1ldGVycwovLyBSZWFkIG1vcmU6IC5SdW4gLSBWQlNjcmlwdCAtIFNTNjQuY29tCi8vIGh0dHBzOi8vc3M2NC5jb20vdmIvcnVuLmh0bWwKcHJvZ3JhbV93aW5kb3dfc3R5bGUgPSAocHJvZ3JhbV93aW5kb3dfc3R5bGUgIT0gbnVsbCkgPyBwcm9ncmFtX3dpbmRvd19zdHlsZToxCndhaXRfZm9yX2V4aXQgPSAod2FpdF9mb3JfZXhpdCA9PSAxKSA/IHRydWU6ZmFsc2UKc2hlbGwoJ2NtZC5leGUnLCBjb21tYW5kX3N0cmluZywgY21kX2tlZXBfb3BlbiwgY21kX25ld193aW5kb3csIHByb2dyYW1fd2luZG93X3N0eWxlLCB3YWl0X2Zvcl9leGl0KQp9KTsKLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLyoqCiogRm9yIGFsbCBodG1sIGxpbmtzIChhKSB3aXRoIGNsYXNzICdjbWQnIGludm9rZSB0aGUgY21kIGNvbW1hbmQgZW5jYXNlZCBpbiBjb21tZW50IHN0cmluZ3MgPCEtLUNNRENPREUtLT4KKi8KJCggImEuY21kIiApLmNsaWNrKGZ1bmN0aW9uKCkgewpjb21tYW5kX3N0cmluZyA9ICcnCmlmICh0ZXN0ICE9IG51bGwpewogICAgdmFyIHJlZ2V4ID0gLzwhLS18LS0+L2dpOwogICAgY29tbWFuZF9zdHJpbmcgPSB0ZXN0WzBdLnJlcGxhY2UocmVnZXgsJycpCn1lbHNlIHsKICAgIGNvbW1hbmRfc3RyaW5nID0gaGVyZWRvYyhmdW5jdGlvbiAoKSB7LyoKICAgICdZb3UgbXVzdCBzcGVjaWZ5IGNtZCBjb21tYW5kcyBmb3IgdGhpcyBsaW5rIGJ5IGVuY2FzaW5nIHRoZXNlIGluIGNvbW1lbnQgc3RyaW5ncycKICAgICAgICAnZS5nLicKICAgICAgICAnPGEgaHJlZj0iIyIgY2xhc3M9ImNtZCI+JwogICAgICAgICc8IS0tJwogICAgICAgICAgICAnSGVsbG8gV29ybGQhJwogICAgICAgICctLT4nCiAgICAgICAgJzwvYT4nCiAgICAgICAgJnBhdXNlCiAgICAqL30pOyAKICAgIGFsZXJ0KGNvbW1hbmRfc3RyaW5nKSAgIAogICAgcmV0dXJuCn0KY21kKGNvbW1hbmRfc3RyaW5nLCAwKTsKfSk7Ci8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8qKgoqIGh0bWwgbGluayAoYSkgd2l0aCBpZCAncG93ZXJzaGVsbF9oZWxsbycgdHJpZ2dlcnMgYSB0ZXN0IHBvd2Vyc2hlbGwgY29tbWFuZAoqLwokKCIjcG93ZXJzaGVsbF9oZWxsbyIpLmNsaWNrKGZ1bmN0aW9uKGUpIHsKICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgIHZhciBjb21tYW5kX3N0cmluZyA9IGhlcmVkb2MoZnVuY3Rpb24gKCkgey8qCiAgICAnSGVsbG8gZnJvbSBQb3dlcnNoZWxsIScgICAKICAgICovfSk7CiAgICBwb3dlcnNoZWxsKGNvbW1hbmRfc3RyaW5nLCAwKTsKfSk7Ci8qKgoqIEZvciBodG1sIGxpbmtzIHdpdGggY2xhc3MgJ21lbnUtdG9nZ2xlJywgaWYgY2xpY2tlZCwgdG9nZ2xlIHRoZSBsZWZ0IG5hdmlnYXRpb24gbWVudQoqLwokKCJhLm1lbnUtdG9nZ2xlIikuY2xpY2soZnVuY3Rpb24oZSkgewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgJCgiI3dyYXBwZXIiKS50b2dnbGVDbGFzcygidG9nZ2xlZCIpOwp9KTsKLyoqCiogRm9yIHRoZSBodG1sIGxpbmsgd2l0aCBpZCAnYWJvdXQnLCBpZiBjbGlja2VkLCBzaG93IHRoZSAnYWJvdXQnIG1lc3NhZ2UKKi8KJCgiYVtpZD0nYWJvdXQnXSIpLmNsaWNrKGZ1bmN0aW9uKGUpIHsKICAgIGNvbnNvbGUubG9nKCJjbGlja2VkICdBYm91dCcgbGluayIpCiAgICB2YXIgdGVzdCA9IHRoaXMuaW5uZXJIVE1MLm1hdGNoKC88IS0tW1xzXFNdKi0tPi8pCiAgICBpZiAodGVzdCAhPSBudWxsKXsKICAgICAgICB2YXIgcmVnZXggPSAvPCEtLXwtLT4vZ2k7CiAgICAgICAgYWJvdXRfc3RyaW5nID0gdGVzdFswXS5yZXBsYWNlKHJlZ2V4LCcnKQogICAgICAgIGFsZXJ0KGFib3V0X3N0cmluZykgIAogICAgfQp9KTsgCi8qKgoqIEZvciB0aGUgaHRtbCBsaW5rIHdpdGggaWQgJ2hvbWUnLCBpZiBjbGlja2VkLCBoaWRlIGFsbCBkaXZzIHdpdGggY2xhc3MgJ3NlY3Rpb24nLCBzaG93IHRoZSBkaXYgd2l0aCBpZCAnc3RhcnQnCiovCiQoICJhW2lkPSdob21lJ10sIGFbaWQ9J3RvcG5hdi1ob21lJ10iICkuY2xpY2soZnVuY3Rpb24oKSB7CiAgICAkKCIuc2VjdGlvbiwgc2VjdGlvbiIpLmhpZGUoKTsKICAgICQoImRpdiNzdGFydCIpLnNob3coKTsKfSk7ICAgIAovKioKKiBGb3IgaHRtbCBsaW5rcyB3aXRoIGNsYXNzICdzZWN0aW9uX2xpbmsnLCBpZiBjbGlja2VkLCBoaWRlIHRoZSBkaXYgd2l0aCBpZCAnc3RhcnQnLCBzaG93IHRoZSBkaXYgd2UganVzdCBjbGlja2VkCiovCiQoICIuc2VjdGlvbl9saW5rIiApLmNsaWNrKGZ1bmN0aW9uKCkgewogICAgJCgiZGl2I3N0YXJ0IikuaGlkZSgpOwogICAgJCgiLnNlY3Rpb24sIHNlY3Rpb24iKS5oaWRlKCk7CiAgICAkKCJzZWN0aW9uIyIuY29uY2F0KHRoaXMuaWQpKS5zaG93KCk7Cn0pOyAKLyoqCiogRm9yIGh0bWwgbGlua3Mgd2l0aCBjbGFzcyAnZmxhc2gnLCBpZiBjbGlja2VkLCBmbGFzaCB0aGUgZG9tIG9iamVjdCBhcyBzcGVjaWZpZWQgYnkgdGhlICdkYXRhLXNlbGVjdG9yJyBodG1sIHRhZwoqLwokKCAiYS5mbGFzaCIgKS5jbGljayhmdW5jdGlvbigpIHsKICAgIHZhciBzZWxlY3RvciA9IHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXNlbGVjdG9yJykKICAgIHZhciBkdXJhdGlvbiA9IHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLWR1cmF0aW9uJykKICAgIGlmIChkdXJhdGlvbiA9PSBudWxsKXsKICAgICAgICBkdXJhdGlvbiA9IDEwMAogICAgfSAgIAogICAgaWYgKHNlbGVjdG9yICE9IG51bGwpewogICAgICAgIGZsYXNoKHNlbGVjdG9yLCBkdXJhdGlvbik7CiAgICB9Cn0pOwovKioKKiBGb3IgdGhlIGh0bWwgbGluayB3aXRoIGlkICdjb25zb2xlJywgaWYgY2xpY2tlZCwgc2hvdyB0aGUgaHRhIGNvbnNvbGUKKi8KJCgiYVtpZD0nY29uc29sZSddIikuY2xpY2soZnVuY3Rpb24oZSkgewogICAgaHRhQ29uc29sZS50b2dnbGUoKQp9KTsgCi8qKgoqIEZvciB0aGUgaHRtbCBsaW5rIHdpdGggaWQgJ3J1bmFzJywgaWYgY2xpY2tlZCwgcmVsYXVuY2ggdGhlIEhUQSBhcyBhZG1pbgoqLwokKCJhW2lkPSdlbGV2YXRlJ10iKS5jbGljayhmdW5jdGlvbihlKSB7CiAgICBydW5fYXNfYWRtaW4oKQp9KTsgCi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t"></script>
<script src="data:application/x-javascript;base64,KGZ1bmN0aW9uKCQpewogICAgICAgICQoJy5jaGlsZCcpLmNoYW5nZShmdW5jdGlvbigpewogICAgICAgIC8vIGNyZWF0ZSB2YXIgZm9yIHBhcmVudCAuY2hlY2thbGwgYW5kIGdyb3VwCiAgICAgICAgdmFyIGdyb3VwID0gJCh0aGlzKS5kYXRhKCdncm91cCcpLAogICAgICAgICAgICBjaGVja2FsbCA9ICQoJy5zZWxlY3RhbGxbZGF0YS1ncm91cD0iJytncm91cCsnIl0nKTsKICAgIAogICAgICAgIC8vIGRvIHdlIGhhdmUgc29tZSBjaGVja2VkPyBTb21lIHVuY2hlY2tlZD8gU3RvcmUgYXMgYm9vbGVhbiB2YXJpYWJsZXMKICAgICAgICB2YXIgc29tZUNoZWNrZWQgPSAkKCcuY2hpbGRbZGF0YS1ncm91cD0iJytncm91cCsnIl06Y2hlY2tib3g6Y2hlY2tlZCcpLmxlbmd0aCA+IDA7CiAgICAgICAgdmFyIHNvbWVVbmNoZWNrZWQgPSAkKCcuY2hpbGRbZGF0YS1ncm91cD0iJytncm91cCsnIl06Y2hlY2tib3g6bm90KDpjaGVja2VkKScpLmxlbmd0aCA+IDA7CiAgICAKICAgICAgICAvLyBpZiB3ZSBoYXZlIHNvbWUgY2hlY2tlZCBhbmQgdW5jaGVja2VkLCBzZXQgLmNoZWNrYWxsLCBvZiB0aGUgY29ycmVjdCBncm91cCwgdG8gaW5kZXRlcm1pbmF0ZS4gCiAgICAgICAgLy8gSWYgYWxsIGFyZSBjaGVja2VkLCBzZXQgLmNoZWNrYWxsIHRvIGNoZWNrZWQKICAgICAgICBjaGVja2FsbC5wcm9wKCJpbmRldGVybWluYXRlIiwgc29tZUNoZWNrZWQgJiYgc29tZVVuY2hlY2tlZCk7CiAgICAgICAgY2hlY2thbGwucHJvcCgiY2hlY2tlZCIsIHNvbWVDaGVja2VkIHx8ICFzb21lVW5jaGVja2VkKTsKICAgICAgICAgICAgICAgCiAgICAvLyBmaXJlIGNoYW5nZSgpIHdoZW4gdGhpcyBsb2FkcyB0byBlbnN1cmUgc3RhdGVzIGFyZSB1cGRhdGVkIG9uIHBhZ2UgbG9hZAogICAgfSkuY2hhbmdlKCk7CiAgICAKICAgIC8vIGNsaWNraW5nIC5jaGVja2FsbCB3aWxsIGNoZWNrIGFsbCBjaGlsZHJlbiBpbiB0aGUgc2FtZSBncm91cC4KICAgICQoJy5zZWxlY3RhbGwnKS5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICB2YXIgZ3JvdXAgPSAkKHRoaXMpLmRhdGEoJ2dyb3VwJyk7CiAgICAgICAgJCgnLmNoaWxkW2RhdGEtZ3JvdXA9IicrZ3JvdXArJyJdJykucHJvcCgnY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCkuY2hhbmdlKCk7IAogICAgfSk7Cn0od2luZG93LmpRdWVyeSkpOwoKZnVuY3Rpb24gaW5zdGFsbCAoKSB7CiAgICAvLyBDaGVjayBpZiBlbGV2YXRlZAogICAgdmFyIGV4ZWMgPSBXc2hTaGVsbC5FeGVjKCJjYWNscyAlU1lTVEVNUk9PVCVcXHN5c3RlbTMyXFxjb25maWciKTsKICAgIHZhciByZXN1bHQgPSBleGVjLlN0ZE91dC5SZWFkQWxsKCk7CiAgICB2YXIgaXNfYWRtaW4gPSAocmVzdWx0LmluZGV4T2YoImRlbmllZCIpIT0tMSk7CiAgICBpZiAoaXNfYWRtaW4pewogICAgICAgIGFsZXJ0KCJUaGlzIGZ1bmN0aW9uIHJlcXVpcmVzIGVsZXZhdGVkIHByaXZpbGVnZXMsIHJlbGF1bmNoaW5nIC4uLiIpOwogICAgICAgIHJ1bl9hc19hZG1pbigpCiAgICB9CiAgICAkKCJpbnB1dDpjaGVja2VkIikuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICB2YXIgY29tbWFuZF9zdHJpbmc9JCh0aGlzKS5kYXRhKCdjbWRDb21tYW5kJykKICAgICAgICB2YXIgY21kX2tlZXBfb3Blbj0kKHRoaXMpLmRhdGEoJ2NtZEtlZXBPcGVuJykKICAgICAgICB2YXIgY21kX25ld193aW5kb3c9JCh0aGlzKS5kYXRhKCdjbWROZXdXaW5kb3cnKQogICAgICAgIHZhciBwcm9ncmFtX3dpbmRvd19zdHlsZT0kKHRoaXMpLmRhdGEoJ3dpbmRvd1N0eWxlJykKICAgICAgICB2YXIgd2FpdF9mb3JfZXhpdD0kKHRoaXMpLmRhdGEoJ3dhaXQnKQogICAgICAgIGNtZF9rZWVwX29wZW4gPSAoY21kX2tlZXBfb3BlbiA9PSAxKSA/ICcvayc6Jy9jJwogICAgICAgIGNtZF9uZXdfd2luZG93ID0gKGNtZF9uZXdfd2luZG93ID09IDEpID8gJ3N0YXJ0IFwiXCInOicnCiAgICAgICAgLy8gU3BlY2lmeSBXU2NyaXB0LlNoZWxsIC5SdW4gcGFyYW1ldGVycwogICAgICAgIC8vIFJlYWQgbW9yZTogLlJ1biAtIFZCU2NyaXB0IC0gU1M2NC5jb20KICAgICAgICAvLyBodHRwczovL3NzNjQuY29tL3ZiL3J1bi5odG1sCiAgICAgICAgcHJvZ3JhbV93aW5kb3dfc3R5bGUgPSAocHJvZ3JhbV93aW5kb3dfc3R5bGUgIT0gbnVsbCkgPyBwcm9ncmFtX3dpbmRvd19zdHlsZToxCiAgICAgICAgd2FpdF9mb3JfZXhpdCA9ICh3YWl0X2Zvcl9leGl0ID09IDEpID8gdHJ1ZTpmYWxzZQogICAgICAgIHNoZWxsKCclY29tc3BlYyUnLCBjb21tYW5kX3N0cmluZywgY21kX2tlZXBfb3BlbiwgY21kX25ld193aW5kb3csIHByb2dyYW1fd2luZG93X3N0eWxlLCB3YWl0X2Zvcl9leGl0KQogICAgfQogICAgKTsKICAgIGFsZXJ0KCJJbnN0YWxsYXRpb24gdGFza3MgZmluaXNoZWQhIik7Cn0="></script>
<script src="data:application/x-javascript;base64,ZnVuY3Rpb24gZW51bWVyYXRlKG8scyl7CgogICAgLy9pZiBzIGlzbid0IGRlZmluZWQsIHNldCBpdCB0byBhbiBlbXB0eSBzdHJpbmcKICAgIHMgPSB0eXBlb2YgcyAhPT0gJ3VuZGVmaW5lZCcgPyBzIDogIiI7CgogICAgZm9yKHZhciBrZXkgaW4gbyl7CiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIHByb3BlcnR5IHJlYWxseSBleGlzdHMKICAgICAgICBpZihvLmhhc093blByb3BlcnR5KGtleSkpewogICAgICAgICAgICB2YXIgdmFsdWUgPSBvW2tleV07CiAgICAgICAgICAgIC8vaWYgdmFsdWUgaGFzIG5lc3RlZCBkZXB0aAogICAgICAgICAgICBpZih0eXBlb2YgdmFsdWUgPT0gIm9iamVjdCIpewogICAgICAgICAgICAgICAgLy93cml0ZSB0aGUga2V5IHRvIHRoZSBjb25zb2xlCiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhzK2tleSsiOiAiKTsKICAgICAgICAgICAgICAgIC8vcmVjdXJzaXZlbHkgY2FsbCBlbnVtZXJhdGUgb24gdGhlIG5lc3RlZCBwcm9wZXJ0aWVzCiAgICAgICAgICAgICAgICBlbnVtZXJhdGUodmFsdWUscysiICAiKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIC8vbG9nIHRoZSBrZXkgJiB2YWx1ZQogICAgICAgICAgICAgICAgY29uc29sZS5sb2cocytrZXkrIjogIitTdHJpbmcodmFsdWUpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQ=="></script>
</body>
</html>