@citolab/qti-components 6.9.1-beta.25 → 6.9.1-beta.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3165 +1,2 @@
1
- import{d as r,e as d,f as n}from"../chunk-E7TLXHQH.js";var s=`@layer qti-base, qti-components, qti-utilities, qti-variants, qti-extended;
2
-
3
- /*
4
- Base variables on PNP
5
- https://www.imsglobal.org/spec/qti/v3p0/impl#h.x51afjl5r8gl
6
- font-face
7
- https://www.imsglobal.org/spec/qti/v3p0/impl#h.r3hufj74r1do
8
- line-spacing
9
- https://www.imsglobal.org/spec/qti/v3p0/impl#h.e0onr51nghyl
10
- */
11
-
12
- :root,
13
- :host {
14
- /* Primary colors */
15
- --qti-primary-light: #ffeaea;
16
- --qti-primary: #f86d70;
17
- --qti-primary-dark: #a1616a;
18
-
19
- /* Secondary colors */
20
- --qti-secondary-light: #bed4ff;
21
- --qti-secondary: #6daef8;
22
- --qti-secondary-dark: #3a449d;
23
-
24
- /* Background colors */
25
- --qti-bg-gray-50: #f9fafb;
26
- --qti-bg-gray-100: #f3f4f6;
27
- --qti-bg-white: white;
28
- --qti-bg-primary: var(--qti-primary);
29
-
30
- /* Text colors */
31
- --qti-text-gray-500: #45484f;
32
- --qti-text-white: white;
33
-
34
- /* Border properties */
35
- --qti-border-thickness: 1.5px;
36
- --qti-border-style: solid;
37
- --qti-border-color-gray: #c6cad0; /* Corresponding to border-gray-400 */
38
- --qti-border-radius-md: 0.375rem;
39
- --qti-border-radius-lg: 0.5rem;
40
- --qti-border-radius-full: 9999px;
41
-
42
- /* Padding */
43
- --qti-padding-sm: 0.125rem; /* py-0.5 */
44
- --qti-padding-md: 0.5rem; /* py-2 */
45
- --qti-padding-lg: 0.75rem; /* p-3 */
46
- --qti-padding-xl: 1rem; /* pl-4 */
47
-
48
- /* Form & layout */
49
- --qti-form-size: 1rem;
50
- --qti-gap-size: 0.5rem;
51
-
52
- /* Typography */
53
- --qti-font-weight-semibold: 600;
54
- --qti-line-height: 2.5;
55
-
56
- /* Focus & active states */
57
- --qti-active: blue;
58
- --qti-focus-color: #bddcff7e;
59
- --qti-focus-border-width: 5px;
60
-
61
- /* Correct/Incorrect feedback */
62
- --qti-correct: rgb(74 222 128);
63
- --qti-correct-light: rgb(220 252 231);
64
- --qti-incorrect: rgb(248 113 113);
65
- --qti-incorrect-light: rgb(254 226 226);
66
-
67
- /* ---- */
68
- --box-shadow: 0 0.125rem 0.25rem rgb(0 0 0 / 7.5%);
69
- --box-shadow-lg: 0 0.5rem 1rem rgb(0 0 0 / 15%);
70
- --table-border-color: var(--qti-border-color-gray);
71
- --foreground: var(--qti-bg-gray-50);
72
- --well-bg: var(--qti-bg-gray-50);
73
- --well-border: var(--qti-border-color-gray);
74
- --well-box-shadow: var(--box-shadow);
75
- }
76
-
77
- .chevron {
78
- background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
79
- no-repeat center right 6px;
80
- }
81
-
82
- .handle {
83
- background-image: radial-gradient(
84
- circle at center,
85
- rgb(0 0 0 / 10%) 0,
86
- rgb(0 0 0 / 20%) 2px,
87
- rgb(255 255 255 / 0%) 2px,
88
- rgb(255 255 255 / 0%) 100%
89
- );
90
- background-repeat: repeat-y;
91
- background-position: left center;
92
- background-size: 14px 8px;
93
- }
94
-
95
- .check-mask {
96
- -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
97
- mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
98
- }
99
-
100
- .bordered {
101
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
102
- outline: none;
103
- }
104
-
105
- .borderinvisible {
106
- border-color: transparent;
107
- }
108
-
109
- .form {
110
-
111
- width: var(--qti-form-size);
112
- height: var(--qti-form-size);
113
- align-self: 1;
114
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
115
- outline: none;
116
- }
117
-
118
- .p-lg {
119
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl); /* Padding shorthand */
120
- }
121
-
122
- .button {
123
-
124
- border-radius: var(--qti-border-radius-md);
125
- padding: var(--qti-padding-md) var(--qti-padding-md);
126
- font-weight: var(--qti-font-weight-semibold);
127
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
128
- outline: none;
129
- }
130
-
131
- .select {
132
-
133
- border-radius: var(--qti-border-radius-md);
134
- position: relative;
135
- -webkit-appearance: none;
136
- -moz-appearance: none;
137
- appearance: none;
138
- padding: var(--qti-padding-md) 1.75rem var(--qti-padding-md) var(--qti-padding-lg); /* Padding shorthand */ border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray); outline: none; background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
139
- no-repeat center right 6px;
140
- }
141
-
142
- .text {
143
-
144
- border-radius: 0;
145
- cursor: text;
146
- padding: var(--qti-padding-lg); /* Equal padding on all sides */
147
- background: unset;
148
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
149
- outline: none;
150
- }
151
-
152
- .spot {
153
-
154
- width: 100%;
155
- height: 100%;
156
- background-color: transparent;
157
- padding: 0;
158
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
159
- outline: none;
160
- }
161
-
162
- /* qti-select-point-interaction */
163
-
164
- .point {
165
-
166
- border-radius: var(--qti-border-radius-full);
167
- width: 1.5rem; /* w-6 */
168
- height: 1.5rem;
169
- background-color: transparent;
170
- padding: 0;
171
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
172
- outline: none;
173
- }
174
-
175
- .drag {
176
-
177
- transition:
178
- transform 200ms ease-out,
179
- box-shadow 200ms ease-out,
180
- rotate 200ms ease-out;
181
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl); /* Padding shorthand */
182
- border-radius: var(--qti-border-radius-md);
183
- cursor: grab;
184
- background-color: white;
185
- font-weight: var(--qti-font-weight-semibold);
186
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
187
- outline: none;
188
- background-image: radial-gradient(
189
- circle at center,
190
- rgb(0 0 0 / 10%) 0,
191
- rgb(0 0 0 / 20%) 2px,
192
- rgb(255 255 255 / 0%) 2px,
193
- rgb(255 255 255 / 0%) 100%
194
- );
195
- background-repeat: repeat-y;
196
- background-position: left center;
197
- background-size: 14px 8px;
198
- }
199
-
200
- .dragging {
201
- pointer-events: none;
202
- rotate: -2deg;
203
- box-shadow:
204
- 0 8px 12px rgb(0 0 0 / 20%),
205
- 0 4px 8px rgb(0 0 0 / 10%);
206
- }
207
-
208
- .drop {
209
-
210
- background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
211
- center no-repeat;
212
- border-radius: var(--qti-border-radius-lg);
213
- position: relative;
214
- background-color: var(--qti-bg-white);
215
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
216
- outline: none;
217
- }
218
-
219
- .dropping {
220
- background-color: var(--qti-primary-light);
221
- }
222
-
223
- .order {
224
- background-color: var(--qti-bg-primary);
225
- border-radius: var(--qti-border-radius-full);
226
- width: 1.5rem; /* w-6 */
227
- height: 1.5rem;
228
- color: var(--qti-text-white);
229
- }
230
-
231
- .check-size {
232
- width: calc(var(--qti-form-size) - 4px);
233
- height: calc(var(--qti-form-size) - 4px);
234
- }
235
-
236
- .check {
237
- /* display: flex; */
238
-
239
- /* align-items: center; */
240
- gap: 0.5rem;
241
- padding: var(--qti-padding-md) var(--qti-padding-md); /* Padding shorthand */
242
- outline: none;
243
- border-radius: var(--qti-border-radius-md);
244
- cursor: pointer;
245
- }
246
-
247
- .check-radio {
248
-
249
- border-radius: var(--qti-border-radius-full);
250
-
251
- width: var(--qti-form-size);
252
-
253
- height: var(--qti-form-size);
254
-
255
- align-self: 1;
256
-
257
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
258
-
259
- outline: none;
260
- }
261
-
262
- .check-radio-checked {
263
- background-color: var(--qti-bg-primary);
264
- border-radius: var(--qti-border-radius-full);
265
- }
266
-
267
- .check-checkbox {
268
-
269
- border-radius: var(--qti-border-radius-md);
270
-
271
- width: var(--qti-form-size);
272
-
273
- height: var(--qti-form-size);
274
-
275
- align-self: 1;
276
-
277
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
278
-
279
- outline: none;
280
- }
281
-
282
- .check-checkbox-checked {
283
-
284
- background-color: var(--qti-bg-primary);
285
- -webkit-mask-image: var(--check-mask);
286
- mask-image: var(--check-mask); /* check-mask */ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E"); mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
287
- }
288
-
289
- .hov {
290
- /* background-color: var(--qti-bg-gray-50); */
291
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
292
- }
293
-
294
- .foc {
295
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
296
- }
297
-
298
- .act {
299
- border-color: var(--qti-bg-primary); /* border-primary */
300
- }
301
-
302
- .rdo {
303
- cursor: pointer;
304
- background-color: white;
305
- outline: 0;
306
- border: none;
307
- }
308
-
309
- .dis {
310
- cursor: not-allowed;
311
- background-color: var(--qti-bg-gray-100);
312
- color: var(--qti-text-gray-500);
313
- border-color: var(--qti-border-color-gray);
314
- outline: 4px solid var(--qti-bg-gray-100);
315
-
316
- /* outline-color: var(--qti-text-gray-50); */
317
- }
318
-
319
- /* base */
320
-
321
- /* ============================
322
- QTI 3 shared css
323
- 1. Display
324
- 2. Special Flex styles
325
- 3. Margin
326
- 4. Padding
327
- 5. Horizontal Alignment styles
328
- 6. Vertical Alignment styles
329
- 7. Height
330
- 8. Width
331
- 9. Text-Indent
332
- 10. List Style
333
- 11. Layout
334
- 12. Other QTI 3 presentation utilities
335
- ============================ */
336
-
337
- /* ==========
338
- Display css
339
- =========== */
340
-
341
- .qti-display-inline {
342
- display: inline;
343
- }
344
-
345
- .qti-display-inline-block {
346
- display: inline-block;
347
- }
348
-
349
- .qti-display-block {
350
- display: block;
351
- }
352
-
353
- .qti-display-flex {
354
- display: flexbox;
355
- display: flex;
356
- }
357
-
358
- .qti-display-inline-flex {
359
- display: inline-flex;
360
- }
361
-
362
- .qti-display-grid {
363
- display: grid;
364
- }
365
-
366
- .qti-display-inline-grid {
367
- display: inline-grid;
368
- }
369
-
370
- .qti-display-table {
371
- display: table;
372
- }
373
-
374
- .qti-display-table-cell {
375
- display: table-cell;
376
- }
377
-
378
- .qti-display-table-row {
379
- display: table-row;
380
- }
381
-
382
- .qti-display-list-item {
383
- display: list-item;
384
- }
385
-
386
- .qti-display-inherit {
387
- display: inherit;
388
- }
389
-
390
- /*
391
- * hidden to screen readers and sighted
392
- */
393
-
394
- .qti-hidden {
395
- display: none;
396
- }
397
-
398
- /*
399
- * visible to screen readers, hidden to sighted
400
- */
401
-
402
- .qti-visually-hidden {
403
- position: fixed !important;
404
- overflow: hidden;
405
- clip: rect(1px 1px 1px 1px);
406
- height: 1px;
407
- width: 1px;
408
- border: 0;
409
- margin: -1px;
410
- }
411
-
412
- /* =============================
413
- Special flex styles
414
- ============================= */
415
-
416
- .qti-flex-direction-column {
417
- flex-direction: column;
418
- }
419
-
420
- .qti-flex-direction-row {
421
- flex-direction: row;
422
- }
423
-
424
- .qti-flex-grow-1 {
425
- flex-grow: 1;
426
- }
427
-
428
- .qti-flex-grow-0 {
429
- flex-grow: 0;
430
- }
431
-
432
- /* =========
433
- Margin css
434
- ========== */
435
-
436
- /**
437
- * For margin Top and Bottom and Left and Right
438
- */
439
-
440
- .qti-margin-0 {
441
- margin: 0 !important;
442
- }
443
-
444
- .qti-margin-1 {
445
- margin: 0.25rem !important;
446
- }
447
-
448
- .qti-margin-2 {
449
- margin: 0.5rem !important;
450
- }
451
-
452
- .qti-margin-3 {
453
- margin: 1rem !important;
454
- }
455
-
456
- .qti-margin-4 {
457
- margin: 1.5rem !important;
458
- }
459
-
460
- .qti-margin-5 {
461
- margin: 3rem !important;
462
- }
463
-
464
- .qti-margin-auto {
465
- margin: auto !important;
466
- }
467
-
468
- /*
469
- For margin Left and Right
470
- */
471
-
472
- .qti-margin-x-0 {
473
- margin-right: 0 !important;
474
- margin-left: 0 !important;
475
- }
476
-
477
- .qti-margin-x-1 {
478
- margin-right: 0.25rem !important;
479
- margin-left: 0.25rem !important;
480
- }
481
-
482
- .qti-margin-x-2 {
483
- margin-right: 0.5rem !important;
484
- margin-left: 0.5rem !important;
485
- }
486
-
487
- .qti-margin-x-3 {
488
- margin-right: 1rem !important;
489
- margin-left: 1rem !important;
490
- }
491
-
492
- .qti-margin-x-4 {
493
- margin-right: 1.5rem !important;
494
- margin-left: 1.5rem !important;
495
- }
496
-
497
- .qti-margin-x-5 {
498
- margin-right: 3rem !important;
499
- margin-left: 3rem !important;
500
- }
501
-
502
- .qti-margin-x-auto {
503
- margin-right: auto !important;
504
- margin-left: auto !important;
505
- }
506
-
507
- /*
508
- For margin Top and Bottom
509
- */
510
-
511
- .qti-margin-y-0 {
512
- margin-top: 0 !important;
513
- margin-bottom: 0 !important;
514
- }
515
-
516
- .qti-margin-y-1 {
517
- margin-top: 0.25rem !important;
518
- margin-bottom: 0.25rem !important;
519
- }
520
-
521
- .qti-margin-y-2 {
522
- margin-top: 0.5rem !important;
523
- margin-bottom: 0.5rem !important;
524
- }
525
-
526
- .qti-margin-y-3 {
527
- margin-top: 1rem !important;
528
- margin-bottom: 1rem !important;
529
- }
530
-
531
- .qti-margin-y-4 {
532
- margin-top: 1.5rem !important;
533
- margin-bottom: 1.5rem !important;
534
- }
535
-
536
- .qti-margin-y-5 {
537
- margin-top: 3rem !important;
538
- margin-bottom: 3rem !important;
539
- }
540
-
541
- .qti-margin-y-auto {
542
- margin-top: auto !important;
543
- margin-bottom: auto !important;
544
- }
545
-
546
- /*
547
- For margin Top
548
- */
549
-
550
- .qti-margin-t-0 {
551
- margin-top: 0 !important;
552
- }
553
-
554
- .qti-margin-t-1 {
555
- margin-top: 0.25rem !important;
556
- }
557
-
558
- .qti-margin-t-2 {
559
- margin-top: 0.5rem !important;
560
- }
561
-
562
- .qti-margin-t-3 {
563
- margin-top: 1rem !important;
564
- }
565
-
566
- .qti-margin-t-4 {
567
- margin-top: 1.5rem !important;
568
- }
569
-
570
- .qti-margin-t-5 {
571
- margin-top: 3rem !important;
572
- }
573
-
574
- .qti-margin-t-auto {
575
- margin-top: auto !important;
576
- }
577
-
578
- /*
579
- For margin Bottom
580
- */
581
-
582
- .qti-margin-b-0 {
583
- margin-bottom: 0 !important;
584
- }
585
-
586
- .qti-margin-b-1 {
587
- margin-bottom: 0.25rem !important;
588
- }
589
-
590
- .qti-margin-b-2 {
591
- margin-bottom: 0.5rem !important;
592
- }
593
-
594
- .qti-margin-b-3 {
595
- margin-bottom: 1rem !important;
596
- }
597
-
598
- .qti-margin-b-4 {
599
- margin-bottom: 1.5rem !important;
600
- }
601
-
602
- .qti-margin-b-5 {
603
- margin-bottom: 3rem !important;
604
- }
605
-
606
- .qti-margin-b-auto {
607
- margin-bottom: auto !important;
608
- }
609
-
610
- /*
611
- For margin Start LTR
612
- */
613
-
614
- .qti-margin-s-0 {
615
- margin-left: 0 !important;
616
- }
617
-
618
- .qti-margin-s-1 {
619
- margin-left: 0.25rem !important;
620
- }
621
-
622
- .qti-margin-s-2 {
623
- margin-left: 0.5rem !important;
624
- }
625
-
626
- .qti-margin-s-3 {
627
- margin-left: 1rem !important;
628
- }
629
-
630
- .qti-margin-s-4 {
631
- margin-left: 1.5rem !important;
632
- }
633
-
634
- .qti-margin-s-5 {
635
- margin-left: 3rem !important;
636
- }
637
-
638
- .qti-margin-s-auto {
639
- margin-left: auto !important;
640
- }
641
-
642
- /*
643
- For margin End LTR
644
- */
645
-
646
- .qti-margin-e-0 {
647
- margin-right: 0 !important;
648
- }
649
-
650
- .qti-margin-e-1 {
651
- margin-right: 0.25rem !important;
652
- }
653
-
654
- .qti-margin-e-2 {
655
- margin-right: 0.5rem !important;
656
- }
657
-
658
- .qti-margin-e-3 {
659
- margin-right: 1rem !important;
660
- }
661
-
662
- .qti-margin-e-4 {
663
- margin-right: 1.5rem !important;
664
- }
665
-
666
- .qti-margin-e-5 {
667
- margin-right: 3rem !important;
668
- }
669
-
670
- .qti-margin-e-auto {
671
- margin-right: auto !important;
672
- }
673
-
674
- /* =========
675
- Padding css
676
- ========== */
677
-
678
- /*
679
- For padding Top and Bottom and Left and Right
680
- */
681
-
682
- .qti-padding-0 {
683
- padding: 0 !important;
684
- }
685
-
686
- .qti-padding-1 {
687
- padding: 0.25rem !important;
688
- }
689
-
690
- .qti-padding-2 {
691
- padding: 0.5rem !important;
692
- }
693
-
694
- .qti-padding-3 {
695
- padding: 1rem !important;
696
- }
697
-
698
- .qti-padding-4 {
699
- padding: 1.5rem !important;
700
- }
701
-
702
- .qti-padding-5 {
703
- padding: 3rem !important;
704
- }
705
-
706
- /*
707
- For padding Left and Right
708
- */
709
-
710
- .qti-padding-x-0 {
711
- padding-right: 0 !important;
712
- padding-left: 0 !important;
713
- }
714
-
715
- .qti-padding-x-1 {
716
- padding-right: 0.25rem !important;
717
- padding-left: 0.25rem !important;
718
- }
719
-
720
- .qti-padding-x-2 {
721
- padding-right: 0.5rem !important;
722
- padding-left: 0.5rem !important;
723
- }
724
-
725
- .qti-padding-x-3 {
726
- padding-right: 1rem !important;
727
- padding-left: 1rem !important;
728
- }
729
-
730
- .qti-padding-x-4 {
731
- padding-right: 1.5rem !important;
732
- padding-left: 1.5rem !important;
733
- }
734
-
735
- .qti-padding-x-5 {
736
- padding-right: 3rem !important;
737
- padding-left: 3rem !important;
738
- }
739
-
740
- /*
741
- For padding Top and Bottom
742
- */
743
-
744
- .qti-padding-y-0 {
745
- padding-top: 0 !important;
746
- padding-bottom: 0 !important;
747
- }
748
-
749
- .qti-padding-y-1 {
750
- padding-top: 0.25rem !important;
751
- padding-bottom: 0.25rem !important;
752
- }
753
-
754
- .qti-padding-y-2 {
755
- padding-top: 0.5rem !important;
756
- padding-bottom: 0.5rem !important;
757
- }
758
-
759
- .qti-padding-y-3 {
760
- padding-top: 1rem !important;
761
- padding-bottom: 1rem !important;
762
- }
763
-
764
- .qti-padding-y-4 {
765
- padding-top: 1.5rem !important;
766
- padding-bottom: 1.5rem !important;
767
- }
768
-
769
- .qti-padding-y-5 {
770
- padding-top: 3rem !important;
771
- padding-bottom: 3rem !important;
772
- }
773
-
774
- /*
775
- For padding Top
776
- */
777
-
778
- .qti-padding-t-0 {
779
- padding-top: 0 !important;
780
- }
781
-
782
- .qti-padding-t-1 {
783
- padding-top: 0.25rem !important;
784
- }
785
-
786
- .qti-padding-t-2 {
787
- padding-top: 0.5rem !important;
788
- }
789
-
790
- .qti-padding-t-3 {
791
- padding-top: 1rem !important;
792
- }
793
-
794
- .qti-padding-t-4 {
795
- padding-top: 1.5rem !important;
796
- }
797
-
798
- .qti-padding-t-5 {
799
- padding-top: 3rem !important;
800
- }
801
-
802
- /*
803
- For padding Bottom
804
- */
805
-
806
- .qti-padding-b-0 {
807
- padding-bottom: 0 !important;
808
- }
809
-
810
- .qti-padding-b-1 {
811
- padding-bottom: 0.25rem !important;
812
- }
813
-
814
- .qti-padding-b-2 {
815
- padding-bottom: 0.5rem !important;
816
- }
817
-
818
- .qti-padding-b-3 {
819
- padding-bottom: 1rem !important;
820
- }
821
-
822
- .qti-padding-b-4 {
823
- padding-bottom: 1.5rem !important;
824
- }
825
-
826
- .qti-padding-b-5 {
827
- padding-bottom: 3rem !important;
828
- }
829
-
830
- /*
831
- For padding Start LTR
832
- */
833
-
834
- .qti-padding-s-0 {
835
- padding-left: 0 !important;
836
- }
837
-
838
- .qti-padding-s-1 {
839
- padding-left: 0.25rem !important;
840
- }
841
-
842
- .qti-padding-s-2 {
843
- padding-left: 0.5rem !important;
844
- }
845
-
846
- .qti-padding-s-3 {
847
- padding-left: 1rem !important;
848
- }
849
-
850
- .qti-padding-s-4 {
851
- padding-left: 1.5rem !important;
852
- }
853
-
854
- .qti-padding-s-5 {
855
- padding-left: 3rem !important;
856
- }
857
-
858
- /*
859
- For padding End LTR
860
- */
861
-
862
- .qti-padding-e-0 {
863
- padding-right: 0 !important;
864
- }
865
-
866
- .qti-padding-e-1 {
867
- padding-right: 0.25rem !important;
868
- }
869
-
870
- .qti-padding-e-2 {
871
- padding-right: 0.5rem !important;
872
- }
873
-
874
- .qti-padding-e-3 {
875
- padding-right: 1rem !important;
876
- }
877
-
878
- .qti-padding-e-4 {
879
- padding-right: 1.5rem !important;
880
- }
881
-
882
- .qti-padding-e-5 {
883
- padding-right: 3rem !important;
884
- }
885
-
886
- /* ====================
887
- Horizontal alignment
888
- ==================== */
889
-
890
- .qti-align-left {
891
- text-align: left;
892
- }
893
-
894
- .qti-align-center {
895
- text-align: center;
896
- }
897
-
898
- .qti-align-right {
899
- text-align: right;
900
- }
901
-
902
- /* ==================
903
- Vertical alignment
904
- ================== */
905
-
906
- .qti-valign-top {
907
- vertical-align: top;
908
- }
909
-
910
- .qti-valign-middle {
911
- vertical-align: middle;
912
- }
913
-
914
- .qti-valign-baseline {
915
- vertical-align: baseline;
916
- }
917
-
918
- .qti-valign-bottom {
919
- vertical-align: bottom;
920
- }
921
-
922
- /* =============
923
- Height styles
924
- ============= */
925
-
926
- .qti-height-0 {
927
- height: 0;
928
- }
929
-
930
- .qti-height-px {
931
- height: 1px;
932
- }
933
-
934
- .qti-height-0p5 {
935
- height: 0.125rem;
936
- }
937
-
938
- .qti-height-1 {
939
- height: 0.25rem;
940
- }
941
-
942
- .qti-height-1p5 {
943
- height: 0.375rem;
944
- }
945
-
946
- .qti-height-2 {
947
- height: 0.5rem;
948
- }
949
-
950
- .qti-height-2p5 {
951
- height: 0.625rem;
952
- }
953
-
954
- .qti-height-3 {
955
- height: 0.75rem;
956
- }
957
-
958
- .qti-height-3p5 {
959
- height: 0.875rem;
960
- }
961
-
962
- .qti-height-4 {
963
- height: 1rem;
964
- }
965
-
966
- .qti-height-5 {
967
- height: 1.25rem;
968
- }
969
-
970
- .qti-height-6 {
971
- height: 1.5rem;
972
- }
973
-
974
- .qti-height-7 {
975
- height: 1.75rem;
976
- }
977
-
978
- .qti-height-8 {
979
- height: 2rem;
980
- }
981
-
982
- .qti-height-9 {
983
- height: 2.25rem;
984
- }
985
-
986
- .qti-height-10 {
987
- height: 2.5rem;
988
- }
989
-
990
- .qti-height-11 {
991
- height: 2.75rem;
992
- }
993
-
994
- .qti-height-12 {
995
- height: 3rem;
996
- }
997
-
998
- .qti-height-14 {
999
- height: 3.5rem;
1000
- }
1001
-
1002
- .qti-height-16 {
1003
- height: 4rem;
1004
- }
1005
-
1006
- .qti-height-20 {
1007
- height: 5rem;
1008
- }
1009
-
1010
- .qti-height-24 {
1011
- height: 6rem;
1012
- }
1013
-
1014
- .qti-height-28 {
1015
- height: 7rem;
1016
- }
1017
-
1018
- .qti-height-32 {
1019
- height: 8rem;
1020
- }
1021
-
1022
- .qti-height-36 {
1023
- height: 9rem;
1024
- }
1025
-
1026
- .qti-height-40 {
1027
- height: 10rem;
1028
- }
1029
-
1030
- .qti-height-44 {
1031
- height: 11rem;
1032
- }
1033
-
1034
- .qti-height-48 {
1035
- height: 12rem;
1036
- }
1037
-
1038
- .qti-height-52 {
1039
- height: 13rem;
1040
- }
1041
-
1042
- .qti-height-56 {
1043
- height: 14rem;
1044
- }
1045
-
1046
- .qti-height-60 {
1047
- height: 15rem;
1048
- }
1049
-
1050
- .qti-height-64 {
1051
- height: 16rem;
1052
- }
1053
-
1054
- .qti-height-72 {
1055
- height: 18rem;
1056
- }
1057
-
1058
- .qti-height-80 {
1059
- height: 20rem;
1060
- }
1061
-
1062
- .qti-height-96 {
1063
- height: 24rem;
1064
- }
1065
-
1066
- .qti-height-1-2 {
1067
- height: 50%;
1068
- }
1069
-
1070
- .qti-height-1-3 {
1071
- height: 33.333333%;
1072
- }
1073
-
1074
- .qti-height-2-3 {
1075
- height: 66.666667%;
1076
- }
1077
-
1078
- .qti-height-1-4 {
1079
- height: 25%;
1080
- }
1081
-
1082
- .qti-height-2-4 {
1083
- height: 50%;
1084
- }
1085
-
1086
- .qti-height-3-4 {
1087
- height: 75%;
1088
- }
1089
-
1090
- .qti-height-1-5 {
1091
- height: 20%;
1092
- }
1093
-
1094
- .qti-height-2-5 {
1095
- height: 40%;
1096
- }
1097
-
1098
- .qti-height-3-5 {
1099
- height: 60%;
1100
- }
1101
-
1102
- .qti-height-4-5 {
1103
- height: 80%;
1104
- }
1105
-
1106
- .qti-height-1-6 {
1107
- height: 16.666667%;
1108
- }
1109
-
1110
- .qti-height-2-6 {
1111
- height: 33.333333%;
1112
- }
1113
-
1114
- .qti-height-3-6 {
1115
- height: 50%;
1116
- }
1117
-
1118
- .qti-height-4-6 {
1119
- height: 66.666667%;
1120
- }
1121
-
1122
- .qti-height-5-6 {
1123
- height: 83.333333%;
1124
- }
1125
-
1126
- .qti-height-auto {
1127
- height: auto;
1128
- }
1129
-
1130
- .qti-height-full {
1131
- height: 100%;
1132
- }
1133
-
1134
- /* ============
1135
- Width styles
1136
- ============ */
1137
-
1138
- .qti-width-0 {
1139
- width: 0;
1140
- }
1141
-
1142
- .qti-width-px {
1143
- width: 1px;
1144
- }
1145
-
1146
- .qti-width-0p5 {
1147
- width: 0.125rem;
1148
- }
1149
-
1150
- .qti-width-1 {
1151
- width: 0.25rem;
1152
- }
1153
-
1154
- .qti-width-1p5 {
1155
- width: 0.375rem;
1156
- }
1157
-
1158
- .qti-width-2 {
1159
- width: 0.5rem;
1160
- }
1161
-
1162
- .qti-width-2p5 {
1163
- width: 0.625rem;
1164
- }
1165
-
1166
- .qti-width-3 {
1167
- width: 0.75rem;
1168
- }
1169
-
1170
- .qti-width-3p5 {
1171
- width: 0.875rem;
1172
- }
1173
-
1174
- .qti-width-4 {
1175
- width: 1rem;
1176
- }
1177
-
1178
- .qti-width-5 {
1179
- width: 1.25rem;
1180
- }
1181
-
1182
- .qti-width-6 {
1183
- width: 1.5rem;
1184
- }
1185
-
1186
- .qti-width-7 {
1187
- width: 1.75rem;
1188
- }
1189
-
1190
- .qti-width-8 {
1191
- width: 2rem;
1192
- }
1193
-
1194
- .qti-width-9 {
1195
- width: 2.25rem;
1196
- }
1197
-
1198
- .qti-width-10 {
1199
- width: 2.5rem;
1200
- }
1201
-
1202
- .qti-width-11 {
1203
- width: 2.75rem;
1204
- }
1205
-
1206
- .qti-width-12 {
1207
- width: 3rem;
1208
- }
1209
-
1210
- .qti-width-14 {
1211
- width: 3.5rem;
1212
- }
1213
-
1214
- .qti-width-16 {
1215
- width: 4rem;
1216
- }
1217
-
1218
- .qti-width-20 {
1219
- width: 5rem;
1220
- }
1221
-
1222
- .qti-width-24 {
1223
- width: 6rem;
1224
- }
1225
-
1226
- .qti-width-28 {
1227
- width: 7rem;
1228
- }
1229
-
1230
- .qti-width-32 {
1231
- width: 8rem;
1232
- }
1233
-
1234
- .qti-width-36 {
1235
- width: 9rem;
1236
- }
1237
-
1238
- .qti-width-40 {
1239
- width: 10rem;
1240
- }
1241
-
1242
- .qti-width-44 {
1243
- width: 11rem;
1244
- }
1245
-
1246
- .qti-width-48 {
1247
- width: 12rem;
1248
- }
1249
-
1250
- .qti-width-52 {
1251
- width: 13rem;
1252
- }
1253
-
1254
- .qti-width-56 {
1255
- width: 14rem;
1256
- }
1257
-
1258
- .qti-width-60 {
1259
- width: 15rem;
1260
- }
1261
-
1262
- .qti-width-64 {
1263
- width: 16rem;
1264
- }
1265
-
1266
- .qti-width-72 {
1267
- width: 18rem;
1268
- }
1269
-
1270
- .qti-width-80 {
1271
- width: 20rem;
1272
- }
1273
-
1274
- .qti-width-96 {
1275
- width: 24rem;
1276
- }
1277
-
1278
- .qti-width-auto {
1279
- width: auto;
1280
- }
1281
-
1282
- .qti-width-1-2 {
1283
- width: 50%;
1284
- }
1285
-
1286
- .qti-width-1-3 {
1287
- width: 33.333333%;
1288
- }
1289
-
1290
- .qti-width-2-3 {
1291
- width: 66.666667%;
1292
- }
1293
-
1294
- .qti-width-1-4 {
1295
- width: 25%;
1296
- }
1297
-
1298
- .qti-width-2-4 {
1299
- width: 50%;
1300
- }
1301
-
1302
- .qti-width-3-4 {
1303
- width: 75%;
1304
- }
1305
-
1306
- .qti-width-1-5 {
1307
- width: 20%;
1308
- }
1309
-
1310
- .qti-width-2-5 {
1311
- width: 40%;
1312
- }
1313
-
1314
- .qti-width-3-5 {
1315
- width: 60%;
1316
- }
1317
-
1318
- .qti-width-4-5 {
1319
- width: 80%;
1320
- }
1321
-
1322
- .qti-width-1-6 {
1323
- width: 16.666667%;
1324
- }
1325
-
1326
- .qti-width-2-6 {
1327
- width: 33.333333%;
1328
- }
1329
-
1330
- .qti-width-3-6 {
1331
- width: 50%;
1332
- }
1333
-
1334
- .qti-width-4-6 {
1335
- width: 66.666667%;
1336
- }
1337
-
1338
- .qti-width-5-6 {
1339
- width: 83.333333%;
1340
- }
1341
-
1342
- .qti-width-1-12 {
1343
- width: 8.333333%;
1344
- }
1345
-
1346
- .qti-width-2-12 {
1347
- width: 16.666667%;
1348
- }
1349
-
1350
- .qti-width-3-12 {
1351
- width: 25%;
1352
- }
1353
-
1354
- .qti-width-4-12 {
1355
- width: 33.333333%;
1356
- }
1357
-
1358
- .qti-width-5-12 {
1359
- width: 41.666667%;
1360
- }
1361
-
1362
- .qti-width-6-12 {
1363
- width: 50%;
1364
- }
1365
-
1366
- .qti-width-7-12 {
1367
- width: 58.333333%;
1368
- }
1369
-
1370
- .qti-width-8-12 {
1371
- width: 66.666667%;
1372
- }
1373
-
1374
- .qti-width-9-12 {
1375
- width: 75%;
1376
- }
1377
-
1378
- .qti-width-10-12 {
1379
- width: 83.333333%;
1380
- }
1381
-
1382
- .qti-width-11-12 {
1383
- width: 91.666667%;
1384
- }
1385
-
1386
- .qti-width-full,
1387
- .qti-fullwidth {
1388
- width: 100%;
1389
- }
1390
-
1391
- /* ==================
1392
- Text Indent styles
1393
- ================== */
1394
-
1395
- .qti-text-indent-0 {
1396
- text-indent: 0;
1397
- }
1398
-
1399
- .qti-text-indent-px {
1400
- text-indent: 1px;
1401
- }
1402
-
1403
- .qti-text-indent-0p5 {
1404
- text-indent: 0.125rem;
1405
- }
1406
-
1407
- .qti-text-indent-1 {
1408
- text-indent: 0.25rem;
1409
- }
1410
-
1411
- .qti-text-indent-1p5 {
1412
- text-indent: 0.375rem;
1413
- }
1414
-
1415
- .qti-text-indent-2 {
1416
- text-indent: 0.5rem;
1417
- }
1418
-
1419
- .qti-text-indent-2p5 {
1420
- text-indent: 0.625rem;
1421
- }
1422
-
1423
- .qti-text-indent-3 {
1424
- text-indent: 0.75rem;
1425
- }
1426
-
1427
- .qti-text-indent-3p5 {
1428
- text-indent: 0.875rem;
1429
- }
1430
-
1431
- .qti-text-indent-4 {
1432
- text-indent: 1rem;
1433
- }
1434
-
1435
- .qti-text-indent-5 {
1436
- text-indent: 1.25rem;
1437
- }
1438
-
1439
- .qti-text-indent-6 {
1440
- text-indent: 1.5rem;
1441
- }
1442
-
1443
- .qti-text-indent-7 {
1444
- text-indent: 1.75rem;
1445
- }
1446
-
1447
- .qti-text-indent-8 {
1448
- text-indent: 2rem;
1449
- }
1450
-
1451
- .qti-text-indent-12 {
1452
- text-indent: 3rem;
1453
- }
1454
-
1455
- .qti-text-indent-16 {
1456
- text-indent: 4rem;
1457
- }
1458
-
1459
- .qti-text-indent-20 {
1460
- text-indent: 5rem;
1461
- }
1462
-
1463
- .qti-text-indent-24 {
1464
- text-indent: 6rem;
1465
- }
1466
-
1467
- .qti-text-indent-28 {
1468
- text-indent: 7rem;
1469
- }
1470
-
1471
- .qti-text-indent-32 {
1472
- text-indent: 8rem;
1473
- }
1474
-
1475
- /* =================
1476
- List Style styles
1477
- ================= */
1478
-
1479
- .qti-list-style-type-none {
1480
- list-style-type: none;
1481
- }
1482
-
1483
- .qti-list-style-type-disc {
1484
- list-style-type: disc;
1485
- }
1486
-
1487
- .qti-list-style-type-circle {
1488
- list-style-type: circle;
1489
- }
1490
-
1491
- .qti-list-style-type-square {
1492
- list-style-type: square;
1493
- }
1494
-
1495
- .qti-list-style-type-decimal {
1496
- list-style-type: decimal;
1497
- }
1498
-
1499
- .qti-list-style-type-decimal-leading-zero {
1500
- list-style-type: decimal-leading-zero;
1501
- }
1502
-
1503
- .qti-list-style-type-lower-alpha {
1504
- list-style-type: lower-alpha;
1505
- }
1506
-
1507
- .qti-list-style-type-upper-alpha {
1508
- list-style-type: upper-alpha;
1509
- }
1510
-
1511
- .qti-list-style-type-lower-roman {
1512
- list-style-type: lower-roman;
1513
- }
1514
-
1515
- .qti-list-style-type-upper-roman {
1516
- list-style-type: upper-roman;
1517
- }
1518
-
1519
- .qti-list-style-type-lower-latin {
1520
- list-style-type: lower-latin;
1521
- }
1522
-
1523
- .qti-list-style-type-upper-latin {
1524
- list-style-type: upper-latin;
1525
- }
1526
-
1527
- .qti-list-style-type-lower-greek {
1528
- list-style-type: lower-greek;
1529
- }
1530
-
1531
- .qti-list-style-type-arabic-indic {
1532
- list-style-type: arabic-indic;
1533
- }
1534
-
1535
- .qti-list-style-type-armenian {
1536
- list-style-type: armenian;
1537
- }
1538
-
1539
- .qti-list-style-type-lower-armenian {
1540
- list-style-type: lower-armenian;
1541
- }
1542
-
1543
- .qti-list-style-type-upper-armenian {
1544
- list-style-type: upper-armenian;
1545
- }
1546
-
1547
- .qti-list-style-type-bengali {
1548
- list-style-type: bengali;
1549
- }
1550
-
1551
- .qti-list-style-type-cambodian {
1552
- list-style-type: cambodian;
1553
- }
1554
-
1555
- .qti-list-style-type-simp-chinese-formal {
1556
- list-style-type: simp-chinese-formal;
1557
- }
1558
-
1559
- .qti-list-style-type-simp-chinese-informal {
1560
- list-style-type: simp-chinese-informal;
1561
- }
1562
-
1563
- .qti-list-style-type-trad-chinese-formal {
1564
- list-style-type: trad-chinese-formal;
1565
- }
1566
-
1567
- .qti-list-style-type-trad-chinese-informal {
1568
- list-style-type: trad-chinese-informal;
1569
- }
1570
-
1571
- .qti-list-style-type-cjk-ideographic {
1572
- list-style-type: cjk-ideographic;
1573
- }
1574
-
1575
- .qti-list-style-type-cjk-heavenly-stem {
1576
- list-style-type: cjk-heavenly-stem;
1577
- }
1578
-
1579
- .qti-list-style-type-cjk-earthly-branch {
1580
- list-style-type: cjk-earthly-branch;
1581
- }
1582
-
1583
- .qti-list-style-type-devanagari {
1584
- list-style-type: devanagari;
1585
- }
1586
-
1587
- .qti-list-style-type-ethiopic-halehame-ti-er {
1588
- list-style-type: ethiopic-halehame-ti-er;
1589
- }
1590
-
1591
- .qti-list-style-type-ethiopic-halehame-ti-et {
1592
- list-style-type: ethiopic-halehame-ti-et;
1593
- }
1594
-
1595
- .qti-list-style-type-ethiopic-halehame-am {
1596
- list-style-type: ethiopic-halehame-am;
1597
- }
1598
-
1599
- .qti-list-style-type-ethiopic-halehame {
1600
- list-style-type: ethiopic-halehame;
1601
- }
1602
-
1603
- .qti-list-style-type-georgian {
1604
- list-style-type: georgian;
1605
- }
1606
-
1607
- .qti-list-style-type-gujarati {
1608
- list-style-type: gujarati;
1609
- }
1610
-
1611
- .qti-list-style-type-gurmukhi {
1612
- list-style-type: gurmukhi;
1613
- }
1614
-
1615
- .qti-list-style-type-hangul {
1616
- list-style-type: hangul;
1617
- }
1618
-
1619
- .qti-list-style-type-hangul-consonant {
1620
- list-style-type: hangul-consonant;
1621
- }
1622
-
1623
- .qti-list-style-type-hebrew {
1624
- list-style-type: hebrew;
1625
- }
1626
-
1627
- .qti-list-style-type-hiragana {
1628
- list-style-type: hiragana;
1629
- }
1630
-
1631
- .qti-list-style-type-hiragana-iroha {
1632
- list-style-type: hiragana-iroha;
1633
- }
1634
-
1635
- .qti-list-style-type-khmer {
1636
- list-style-type: khmer;
1637
- }
1638
-
1639
- .qti-list-style-type-korean-hangul-formal {
1640
- list-style-type: korean-hangul-formal;
1641
- }
1642
-
1643
- .qti-list-style-type-korean-hanja-formal {
1644
- list-style-type: korean-hanja-formal;
1645
- }
1646
-
1647
- .qti-list-style-type-korean-hanja-informal {
1648
- list-style-type: korean-hanja-informal;
1649
- }
1650
-
1651
- .qti-list-style-type-lao {
1652
- list-style-type: lao;
1653
- }
1654
-
1655
- .qti-list-style-type-malayalam {
1656
- list-style-type: malayalam;
1657
- }
1658
-
1659
- .qti-list-style-type-mongolian {
1660
- list-style-type: mongolian;
1661
- }
1662
-
1663
- .qti-list-style-type-myanmar {
1664
- list-style-type: myanmar;
1665
- }
1666
-
1667
- .qti-list-style-type-oriya {
1668
- list-style-type: oriya;
1669
- }
1670
-
1671
- .qti-list-style-type-persian {
1672
- list-style-type: persian;
1673
- }
1674
-
1675
- .qti-list-style-type-thai {
1676
- list-style-type: thai;
1677
- }
1678
-
1679
- .qti-list-style-type-tibetan {
1680
- list-style-type: tibetan;
1681
- }
1682
-
1683
- .qti-list-style-type-telugu {
1684
- list-style-type: telugu;
1685
- }
1686
-
1687
- .qti-list-style-type-urdu {
1688
- list-style-type: urdu;
1689
- }
1690
-
1691
- /* =========================
1692
- Other QTI 3 Presentation Utilities
1693
- ========================= */
1694
-
1695
- .qti-bordered {
1696
- border: 1px solid var(--table-border-color);
1697
- }
1698
-
1699
- .qti-underline {
1700
- text-decoration: underline;
1701
- text-decoration-color: var(--foreground);
1702
- }
1703
-
1704
- .qti-italic {
1705
- font-style: italic;
1706
- }
1707
-
1708
- .qti-well {
1709
- min-height: 20px;
1710
- padding: 19px;
1711
- margin-bottom: 20px;
1712
- background-color: var(--well-bg);
1713
- border: var(--well-border);
1714
- border-radius: 4px;
1715
- box-shadow: var(--well-box-shadow);
1716
- }
1717
-
1718
- /* Set writing-mode to vertical-rl
1719
- Typical for CJK vertical text */
1720
-
1721
- .qti-writing-mode-vertical-rl {
1722
- writing-mode: vertical-rl;
1723
- }
1724
-
1725
- /* Set writing-mode to vertical-lr
1726
- Typical for Mongolian vertical text */
1727
-
1728
- .qti-writing-mode-vertical-lr {
1729
- writing-mode: vertical-lr;
1730
- }
1731
-
1732
- /* Set writing-mode to horizontal-tb
1733
- Browser default */
1734
-
1735
- .qti-writing-mode-horizontal-tb {
1736
- writing-mode: horizontal-tb;
1737
- }
1738
-
1739
- /* Float an element left */
1740
-
1741
- .qti-float-left {
1742
- float: left;
1743
- }
1744
-
1745
- /* Float an element right */
1746
-
1747
- .qti-float-right {
1748
- float: right;
1749
- }
1750
-
1751
- /* Remove a float */
1752
-
1753
- .qti-float-none {
1754
- float: none;
1755
- }
1756
-
1757
- /* Clearfix Hack to apply to a container of
1758
- floated content that overflows the container. */
1759
-
1760
- .qti-float-clearfix::after {
1761
- content: '';
1762
- clear: both;
1763
- display: table;
1764
- }
1765
-
1766
- .qti-float-clear-left
1767
- .qti-float-clear-right
1768
- .qti-float-clear-both
1769
-
1770
- /* Set text-orientation to upright */
1771
- .qti-text-orientation-upright {
1772
- text-orientation: upright;
1773
- }
1774
-
1775
- @layer qti-base {
1776
- .qti-layout-row {
1777
- display: flex;
1778
- flex-wrap: wrap;
1779
- width: 100%;
1780
- gap: 2.1276595745%;
1781
- }
1782
-
1783
- .qti-layout-row [class*='qti-layout-col'] {
1784
- box-sizing: border-box;
1785
- }
1786
-
1787
- .qti-layout-col1 {
1788
- width: 6.3829787234%;
1789
- }
1790
-
1791
- .qti-layout-col2 {
1792
- width: 14.8936170213%;
1793
- }
1794
-
1795
- .qti-layout-col3 {
1796
- width: 23.4042553191%;
1797
- }
1798
-
1799
- .qti-layout-col4 {
1800
- width: 31.914893617%;
1801
- }
1802
-
1803
- .qti-layout-col5 {
1804
- width: 40.4255319149%;
1805
- }
1806
-
1807
- .qti-layout-col6 {
1808
- width: 48.9361702128%;
1809
- }
1810
-
1811
- .qti-layout-col7 {
1812
- width: 57.4468085106%;
1813
- }
1814
-
1815
- .qti-layout-col8 {
1816
- width: 65.9574468085%;
1817
- }
1818
-
1819
- .qti-layout-col9 {
1820
- width: 74.4680851064%;
1821
- }
1822
-
1823
- .qti-layout-col10 {
1824
- width: 82.9787234043%;
1825
- }
1826
-
1827
- .qti-layout-col11 {
1828
- width: 91.4893617021%;
1829
- }
1830
-
1831
- .qti-layout-col12 {
1832
- width: 100%;
1833
- }
1834
-
1835
- .qti-layout-offset1 {
1836
- margin-left: 8.5106382979%;
1837
- }
1838
-
1839
- .qti-layout-offset2 {
1840
- margin-left: 17.0212765957%;
1841
- }
1842
-
1843
- .qti-layout-offset3 {
1844
- margin-left: 25.5319148936%;
1845
- }
1846
-
1847
- .qti-layout-offset4 {
1848
- margin-left: 34.0425531915%;
1849
- }
1850
-
1851
- .qti-layout-offset5 {
1852
- margin-left: 42.5531914894%;
1853
- }
1854
-
1855
- .qti-layout-offset6 {
1856
- margin-left: 51.0638297872%;
1857
- }
1858
-
1859
- .qti-layout-offset7 {
1860
- margin-left: 59.5744680851%;
1861
- }
1862
-
1863
- .qti-layout-offset8 {
1864
- margin-left: 68.085106383%;
1865
- }
1866
-
1867
- .qti-layout-offset9 {
1868
- margin-left: 76.5957446809%;
1869
- }
1870
-
1871
- .qti-layout-offset10 {
1872
- margin-left: 85.1063829787%;
1873
- }
1874
-
1875
- .qti-layout-offset11 {
1876
- margin-left: 93.6170212766%;
1877
- }
1878
-
1879
- .qti-layout-offset12 {
1880
- margin-left: 102.1276595745%;
1881
- }
1882
-
1883
- @media (width <= 767px) {
1884
- [class*='qti-layout-col'] {
1885
- width: 100%;
1886
- }
1887
- }
1888
- }
1889
-
1890
- [view],
1891
- qti-outcome-declaration,
1892
- qti-response-declaration {
1893
- display: none;
1894
- }
1895
-
1896
- [view].show {
1897
- display: block;
1898
- }
1899
-
1900
- :host {
1901
- box-sizing: border-box;
1902
- }
1903
-
1904
- *,
1905
- *::before,
1906
- *::after {
1907
- box-sizing: inherit;
1908
- }
1909
-
1910
- [popover] {
1911
- position: fixed;
1912
- inset: 0;
1913
- margin: auto;
1914
- border: solid;
1915
- padding: 0.25em;
1916
- overflow: auto;
1917
- color: CanvasText;
1918
- background-color: Canvas;
1919
- }
1920
-
1921
- [popovertarget] {
1922
- all: unset;
1923
- cursor: pointer;
1924
- }
1925
-
1926
- /* components */
1927
-
1928
- @layer qti-components {
1929
- qti-choice-interaction {
1930
- &.qti-input-control-hidden {
1931
- & qti-simple-choice {
1932
-
1933
- &:hover {
1934
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
1935
- }
1936
-
1937
- &:focus {
1938
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
1939
- }
1940
-
1941
- &::part(ch) {
1942
- display: none;
1943
- }
1944
-
1945
- &[aria-checked='true'] {
1946
- border-color: var(--qti-bg-primary);
1947
- }
1948
-
1949
- &[aria-readonly='true'] {
1950
- cursor: pointer;
1951
- background-color: white;
1952
- outline: 0;
1953
- border: none;
1954
- }
1955
-
1956
- &[aria-disabled='true'] {
1957
- cursor: not-allowed;
1958
- background-color: var(--qti-bg-gray-100);
1959
- color: var(--qti-text-gray-500);
1960
- border-color: var(--qti-border-color-gray);
1961
- outline: 4px solid var(--qti-bg-gray-100);
1962
- }
1963
-
1964
- border-radius: var(--qti-border-radius-md);
1965
-
1966
- padding: var(--qti-padding-md) var(--qti-padding-md);
1967
-
1968
- font-weight: var(--qti-font-weight-semibold);
1969
-
1970
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
1971
-
1972
- outline: none
1973
- }
1974
- }
1975
-
1976
- &:not(.qti-input-control-hidden) {
1977
- & qti-simple-choice {
1978
-
1979
- &:not([aria-disabled='true'], [aria-readonly='true']):hover {
1980
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
1981
- }
1982
-
1983
- &:focus {
1984
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
1985
- }
1986
-
1987
- &[aria-checked='true'] {
1988
- border-color: var(--qti-bg-primary);
1989
- }
1990
-
1991
- &[aria-readonly='true'] {
1992
- cursor: pointer;
1993
- background-color: white;
1994
- outline: 0;
1995
- border: none;
1996
- }
1997
-
1998
- &[aria-disabled='true'] {
1999
- cursor: not-allowed;
2000
- background-color: var(--qti-bg-gray-100);
2001
- color: var(--qti-text-gray-500);
2002
- border-color: var(--qti-border-color-gray);
2003
- outline: 4px solid var(--qti-bg-gray-100);
2004
- }
2005
-
2006
- &::part(cha) {
2007
- width: calc(var(--qti-form-size) - 4px);
2008
- height: calc(var(--qti-form-size) - 4px);
2009
- }
2010
-
2011
- &[role='radio']::part(ch) {
2012
- border-radius: var(--qti-border-radius-full);
2013
- width: var(--qti-form-size);
2014
- height: var(--qti-form-size);
2015
- align-self: 1;
2016
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2017
- outline: none;
2018
- }
2019
-
2020
- &[role='radio'][aria-checked='true']::part(cha) {
2021
- background-color: var(--qti-bg-primary);
2022
- border-radius: var(--qti-border-radius-full);
2023
- }
2024
-
2025
- &[role='checkbox']::part(ch) {
2026
- border-radius: var(--qti-border-radius-md);
2027
- width: var(--qti-form-size);
2028
- height: var(--qti-form-size);
2029
- align-self: 1;
2030
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2031
- outline: none;
2032
- }
2033
-
2034
- &[role='checkbox'][aria-checked='true']::part(cha) {
2035
- background-color: var(--qti-bg-primary);
2036
- -webkit-mask-image: var(--check-mask);
2037
- mask-image: var(--check-mask);
2038
- -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2039
- mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2040
- }
2041
-
2042
- gap: 0.5rem;
2043
-
2044
- padding: var(--qti-padding-md) var(--qti-padding-md);
2045
-
2046
- outline: none;
2047
-
2048
- border-radius: var(--qti-border-radius-md);
2049
-
2050
- cursor: pointer
2051
- }
2052
- }
2053
-
2054
- & qti-simple-choice {
2055
- &[data-correct-response='true'] {
2056
- &::after {
2057
- content: '\\02714';
2058
- color: #16a34a; /* text-green-600 */
2059
- }
2060
- }
2061
- }
2062
-
2063
- & qti-simple-choice > p {
2064
- margin: 0;
2065
- padding: 0;
2066
- }
2067
- }
2068
-
2069
- qti-text-entry-interaction {
2070
- &:hover {
2071
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2072
- }
2073
-
2074
- &:focus-within {
2075
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2076
- }
2077
-
2078
- &::part(input) {
2079
- border-radius: 0;
2080
- cursor: text;
2081
- padding: var(--qti-padding-lg);
2082
- background: unset;
2083
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2084
- outline: none;
2085
- }
2086
- }
2087
-
2088
- qti-extended-text-interaction {
2089
- &::part(textarea) {
2090
- border-radius: 0;
2091
- cursor: text;
2092
- padding: var(--qti-padding-lg);
2093
- background: unset;
2094
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2095
- outline: none;
2096
- }
2097
-
2098
- &:hover {
2099
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2100
- }
2101
-
2102
- &:focus-within {
2103
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2104
- }
2105
- }
2106
-
2107
- qti-gap-match-interaction {
2108
- & qti-gap-text {
2109
-
2110
- &:hover {
2111
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2112
- }
2113
-
2114
- &:focus {
2115
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2116
- }
2117
-
2118
- transition: transform 200ms ease-out,
2119
- box-shadow 200ms ease-out,
2120
- rotate 200ms ease-out;
2121
-
2122
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl);
2123
-
2124
- border-radius: var(--qti-border-radius-md);
2125
-
2126
- cursor: grab;
2127
-
2128
- background-color: white;
2129
-
2130
- font-weight: var(--qti-font-weight-semibold);
2131
-
2132
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2133
-
2134
- outline: none;
2135
-
2136
- background-image: radial-gradient(
2137
- circle at center,
2138
- rgb(0 0 0 / 10%) 0,
2139
- rgb(0 0 0 / 20%) 2px,
2140
- rgb(255 255 255 / 0%) 2px,
2141
- rgb(255 255 255 / 0%) 100%
2142
- );
2143
-
2144
- background-repeat: repeat-y;
2145
-
2146
- background-position: left center;
2147
-
2148
- background-size: 14px 8px
2149
- }
2150
-
2151
- & qti-gap {
2152
-
2153
- display: inline-flex;
2154
- width: 8rem; /* w-32 */
2155
- &:empty::after {
2156
- padding: var(--qti-padding-md) var(--qti-padding-lg); /* Padding shorthand */
2157
- content: '\\0000a0'; /* when empty, put a space in it */
2158
- }
2159
-
2160
- &:not(:empty) {
2161
- display: inline-flex;
2162
- padding: 0;
2163
- width: auto;
2164
- }
2165
-
2166
- &:not(:empty) > * {
2167
- flex: 1;
2168
- transform: rotate(0); /* rotate-0 */
2169
- box-shadow: 0 0 0 1px #e5e7eb; /* ring-gray-200 */
2170
- }
2171
-
2172
- background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
2173
- center no-repeat;
2174
-
2175
- border-radius: var(--qti-border-radius-lg);
2176
-
2177
- position: relative;
2178
-
2179
- background-color: var(--qti-bg-white);
2180
-
2181
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2182
-
2183
- outline: none
2184
- }
2185
- }
2186
-
2187
- qti-hotspot-interaction {
2188
- & qti-hotspot-choice {
2189
- &[shape='circle'] {
2190
-
2191
- &:hover {
2192
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2193
- }
2194
-
2195
- &:focus {
2196
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2197
- }
2198
-
2199
- &[aria-checked='true'] {
2200
- border-color: var(--qti-bg-primary);
2201
- }
2202
-
2203
- &[aria-readonly='true'] {
2204
- cursor: pointer;
2205
- background-color: white;
2206
- outline: 0;
2207
- border: none;
2208
- }
2209
-
2210
- &[aria-disabled='true'] {
2211
- cursor: not-allowed;
2212
- background-color: var(--qti-bg-gray-100);
2213
- color: var(--qti-text-gray-500);
2214
- border-color: var(--qti-border-color-gray);
2215
- outline: 4px solid var(--qti-bg-gray-100);
2216
- }
2217
-
2218
- width: 100%;
2219
-
2220
- height: 100%;
2221
-
2222
- background-color: transparent;
2223
-
2224
- padding: 0;
2225
-
2226
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2227
-
2228
- outline: none
2229
- }
2230
-
2231
- &[shape='rect'] {
2232
-
2233
- &:hover {
2234
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2235
- }
2236
-
2237
- &:focus {
2238
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2239
- }
2240
-
2241
- &[aria-checked='true'] {
2242
- border-color: var(--qti-bg-primary);
2243
- }
2244
-
2245
- &[aria-readonly='true'] {
2246
- cursor: pointer;
2247
- background-color: white;
2248
- outline: 0;
2249
- border: none;
2250
- }
2251
-
2252
- &[aria-disabled='true'] {
2253
- cursor: not-allowed;
2254
- background-color: var(--qti-bg-gray-100);
2255
- color: var(--qti-text-gray-500);
2256
- border-color: var(--qti-border-color-gray);
2257
- outline: 4px solid var(--qti-bg-gray-100);
2258
- }
2259
-
2260
- width: 100%;
2261
-
2262
- height: 100%;
2263
-
2264
- background-color: transparent;
2265
-
2266
- padding: 0;
2267
-
2268
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2269
-
2270
- outline: none
2271
- }
2272
-
2273
- &[shape='poly'] {
2274
- &:hover::after {
2275
-
2276
- content: '';
2277
- width: 100%;
2278
- height: 100%;
2279
- background: repeating-linear-gradient(
2280
- 45deg,
2281
- var(--qti-primary),
2282
- var(--qti-primary) 5px,
2283
- transparent 5px,
2284
- transparent 10px
2285
- );
2286
- display: block;
2287
- border-color: var(--qti-bg-primary);
2288
- }
2289
-
2290
- &[aria-checked='true']::after {
2291
-
2292
- content: '';
2293
- width: 100%;
2294
- height: 100%;
2295
- background: repeating-linear-gradient(
2296
- 45deg,
2297
- transparent,
2298
- transparent 5px,
2299
- var(--qti-primary) 5px,
2300
- var(--qti-primary) 10px
2301
- );
2302
- display: block;
2303
- border-color: var(--qti-bg-primary);
2304
- }
2305
-
2306
- &[aria-checked='true'] {
2307
- border-color: var(--qti-bg-primary);
2308
- }
2309
-
2310
- &[aria-readonly='true'] {
2311
- cursor: pointer;
2312
- background-color: white;
2313
- outline: 0;
2314
- border: none;
2315
- }
2316
-
2317
- &[aria-disabled='true'] {
2318
- cursor: not-allowed;
2319
- background-color: var(--qti-bg-gray-100);
2320
- color: var(--qti-text-gray-500);
2321
- border-color: var(--qti-border-color-gray);
2322
- outline: 4px solid var(--qti-bg-gray-100);
2323
- }
2324
- }
2325
- }
2326
- }
2327
-
2328
- qti-hottext-interaction {
2329
- /* &:not(.qti-input-control-hidden),
2330
- &:not(.qti-unselected-hidden) { */
2331
- qti-hottext {
2332
- display: inline-flex;
2333
- align-items: center;
2334
-
2335
- &:hover {
2336
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2337
- }
2338
-
2339
- &:focus {
2340
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2341
- }
2342
-
2343
- &::part(cha) {
2344
- width: calc(var(--qti-form-size) - 4px);
2345
- height: calc(var(--qti-form-size) - 4px);
2346
- }
2347
-
2348
- &[role='radio']::part(ch) {
2349
- border-radius: var(--qti-border-radius-full);
2350
- width: var(--qti-form-size);
2351
- height: var(--qti-form-size);
2352
- align-self: 1;
2353
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2354
- outline: none;
2355
- }
2356
-
2357
- &[role='radio'][aria-checked='true']::part(cha) {
2358
- background-color: var(--qti-bg-primary);
2359
- border-radius: var(--qti-border-radius-full);
2360
- }
2361
-
2362
- &[role='checkbox']::part(ch) {
2363
- border-radius: var(--qti-border-radius-md);
2364
- width: var(--qti-form-size);
2365
- height: var(--qti-form-size);
2366
- align-self: 1;
2367
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2368
- outline: none;
2369
- }
2370
-
2371
- &[role='checkbox'][aria-checked='true']::part(cha) {
2372
- background-color: var(--qti-bg-primary);
2373
- -webkit-mask-image: var(--check-mask);
2374
- mask-image: var(--check-mask);
2375
- -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2376
- mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' width='100%' height='100%' viewBox='0 0 24 24'%3E%3Cpath d='M20.285 2l-11.285 11.567-5.286-5.011-3.714 3.716 9 8.728 15-15.285z'/%3E%3C/svg%3E");
2377
- }
2378
-
2379
- gap: 0.5rem;
2380
-
2381
- padding: var(--qti-padding-md) var(--qti-padding-md);
2382
-
2383
- outline: none;
2384
-
2385
- border-radius: var(--qti-border-radius-md);
2386
-
2387
- cursor: pointer
2388
- }
2389
-
2390
- /* } */
2391
-
2392
- &.qti-input-control-hidden {
2393
- qti-hottext {
2394
- /* --qti-padding-md: 0.1rem;
2395
- --qti-padding-lg: 0.2rem;
2396
- --qti-border-radius-md: 0.3rem;
2397
- --qti-border-thickness: 1px;
2398
- --qti-font-weight-semibold: 400; */
2399
-
2400
- &:hover {
2401
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2402
- }
2403
-
2404
- &:focus {
2405
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2406
- }
2407
-
2408
- /* @layer qti-variants { */
2409
- &::part(ch) {
2410
- display: none;
2411
- }
2412
-
2413
- &[aria-checked='true'] {
2414
- border-color: var(--qti-bg-primary);
2415
- }
2416
-
2417
- &[aria-readonly='true'] {
2418
- cursor: pointer;
2419
- background-color: white;
2420
- outline: 0;
2421
- border: none;
2422
- }
2423
-
2424
- &[aria-disabled='true'] {
2425
- cursor: not-allowed;
2426
- background-color: var(--qti-bg-gray-100);
2427
- color: var(--qti-text-gray-500);
2428
- border-color: var(--qti-border-color-gray);
2429
- outline: 4px solid var(--qti-bg-gray-100);
2430
- }
2431
-
2432
- border-radius: var(--qti-border-radius-md);
2433
-
2434
- padding: var(--qti-padding-md) var(--qti-padding-md);
2435
-
2436
- font-weight: var(--qti-font-weight-semibold);
2437
-
2438
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2439
-
2440
- outline: none
2441
- }
2442
-
2443
- /* } */
2444
- }
2445
-
2446
- &.qti-unselected-hidden {
2447
- qti-hottext {
2448
- &:hover {
2449
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2450
- }
2451
-
2452
- &:focus {
2453
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2454
- }
2455
-
2456
- cursor: pointer;
2457
-
2458
- &::part(ch) {
2459
- display: none;
2460
- }
2461
-
2462
- &[aria-checked='true'] {
2463
- background-color: var(--qti-primary-light); /* bg-blue-200 */
2464
- }
2465
-
2466
- &[aria-readonly='true'] {
2467
- cursor: pointer;
2468
- background-color: white;
2469
- outline: 0;
2470
- border: none;
2471
- }
2472
-
2473
- &[aria-disabled='true'] {
2474
- cursor: not-allowed;
2475
- background-color: var(--qti-bg-gray-100);
2476
- color: var(--qti-text-gray-500);
2477
- border-color: var(--qti-border-color-gray);
2478
- outline: 4px solid var(--qti-bg-gray-100);
2479
- }
2480
- }
2481
- }
2482
- }
2483
-
2484
- qti-inline-choice-interaction {
2485
- &::part(select) {
2486
-
2487
- &:hover {
2488
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2489
- }
2490
-
2491
- &:focus {
2492
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2493
- }
2494
-
2495
- border-radius: var(--qti-border-radius-md);
2496
-
2497
- position: relative;
2498
-
2499
- -webkit-appearance: none;
2500
-
2501
- -moz-appearance: none;
2502
-
2503
- appearance: none;
2504
-
2505
- padding: var(--qti-padding-md) 1.75rem var(--qti-padding-md) var(--qti-padding-lg);
2506
-
2507
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2508
-
2509
- outline: none;
2510
-
2511
- background: url("data:image/svg+xml,%3Csvg fill='currentColor' width='22' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' aria-hidden='true'%3E%3Cpath clip-rule='evenodd' fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'%3E%3C/path%3E%3C/svg%3E")
2512
- no-repeat center right 6px
2513
- }
2514
- }
2515
-
2516
- qti-match-interaction:not(.qti-match-tabular) {
2517
- /* The draggables */
2518
- & qti-simple-match-set:first-of-type {
2519
- display: flex;
2520
- flex-wrap: wrap;
2521
- align-items: flex-start; /* Prevents children from stretching */
2522
- gap: var(--qti-gap-size);
2523
-
2524
- & qti-simple-associable-choice {
2525
-
2526
- &[dragging] {
2527
- pointer-events: none;
2528
- rotate: -2deg;
2529
- box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
2530
- 0 4px 8px rgb(0 0 0 / 10%);
2531
- }
2532
-
2533
- &:hover {
2534
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2535
- }
2536
-
2537
- &:focus {
2538
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2539
- }
2540
-
2541
- transition: transform 200ms ease-out,
2542
- box-shadow 200ms ease-out,
2543
- rotate 200ms ease-out;
2544
-
2545
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl);
2546
-
2547
- border-radius: var(--qti-border-radius-md);
2548
-
2549
- cursor: grab;
2550
-
2551
- background-color: white;
2552
-
2553
- font-weight: var(--qti-font-weight-semibold);
2554
-
2555
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2556
-
2557
- outline: none;
2558
-
2559
- background-image: radial-gradient(
2560
- circle at center,
2561
- rgb(0 0 0 / 10%) 0,
2562
- rgb(0 0 0 / 20%) 2px,
2563
- rgb(255 255 255 / 0%) 2px,
2564
- rgb(255 255 255 / 0%) 100%
2565
- );
2566
-
2567
- background-repeat: repeat-y;
2568
-
2569
- background-position: left center;
2570
-
2571
- background-size: 14px 8px
2572
- }
2573
- }
2574
-
2575
- /* The droppables */
2576
- & qti-simple-match-set:last-of-type {
2577
- display: grid;
2578
- grid-auto-columns: 1fr; /* auto-cols-fr */
2579
- grid-auto-flow: column; /* grid-flow-col */
2580
- gap: var(--qti-gap-size); /* gap-2 */
2581
- width: 100%; /* w-full */
2582
-
2583
- & qti-simple-associable-choice {
2584
- display: flex;
2585
- flex-direction: column;
2586
- }
2587
-
2588
- & > qti-simple-associable-choice {
2589
- /* a droppable qti-simple-associable-choice */
2590
- box-sizing: border-box;
2591
- display: grid;
2592
- grid-row: 2 / 4;
2593
- grid-template-rows: subgrid;
2594
-
2595
- & img {
2596
- max-width: 100%;
2597
- height: auto;
2598
- }
2599
-
2600
- &[enabled] {
2601
- &::part(dropslot) {
2602
- background-color: var(--qti-primary-light);
2603
- }
2604
- }
2605
-
2606
- &[disabled] {
2607
- &::part(dropslot) {
2608
- cursor: not-allowed;
2609
- background-color: var(--qti-bg-gray-100);
2610
- color: var(--qti-text-gray-500);
2611
- border-color: var(--qti-border-color-gray);
2612
- outline: 4px solid var(--qti-bg-gray-100);
2613
- }
2614
- }
2615
-
2616
- &[active] {
2617
- &::part(dropslot) {
2618
- border-color: var(--qti-bg-primary);
2619
- }
2620
- }
2621
-
2622
- &::part(dropslot) {
2623
-
2624
- &[dragging] {
2625
- pointer-events: none;
2626
- rotate: -2deg;
2627
- box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
2628
- 0 4px 8px rgb(0 0 0 / 10%);
2629
- }
2630
-
2631
- &:focus {
2632
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2633
- }
2634
-
2635
- min-height: 6rem;
2636
- gap: var(--qti-gap-size);
2637
- box-sizing: border-box;
2638
- display: flex;
2639
- justify-content: center;
2640
- align-items: center;
2641
- background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
2642
- center no-repeat;
2643
- border-radius: var(--qti-border-radius-lg);
2644
- position: relative;
2645
- background-color: var(--qti-bg-white);
2646
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2647
- outline: none;
2648
- }
2649
-
2650
- & > *:not(qti-simple-associable-choice) {
2651
- pointer-events: none;
2652
- }
2653
-
2654
- & > qti-simple-associable-choice {
2655
-
2656
- &::part(dropslot) {
2657
- display: none;
2658
- }
2659
-
2660
- &:hover {
2661
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2662
- }
2663
-
2664
- &:focus {
2665
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2666
- }
2667
-
2668
- flex-basis: fit-content;
2669
-
2670
- transition: transform 200ms ease-out,
2671
- box-shadow 200ms ease-out,
2672
- rotate 200ms ease-out;
2673
-
2674
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl);
2675
-
2676
- border-radius: var(--qti-border-radius-md);
2677
-
2678
- cursor: grab;
2679
-
2680
- background-color: white;
2681
-
2682
- font-weight: var(--qti-font-weight-semibold);
2683
-
2684
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2685
-
2686
- outline: none;
2687
-
2688
- background-image: radial-gradient(
2689
- circle at center,
2690
- rgb(0 0 0 / 10%) 0,
2691
- rgb(0 0 0 / 20%) 2px,
2692
- rgb(255 255 255 / 0%) 2px,
2693
- rgb(255 255 255 / 0%) 100%
2694
- );
2695
-
2696
- background-repeat: repeat-y;
2697
-
2698
- background-position: left center;
2699
-
2700
- background-size: 14px 8px;
2701
- }
2702
- }
2703
- }
2704
- }
2705
-
2706
- qti-order-interaction {
2707
- &::part(qti-simple-choice),
2708
- & qti-simple-choice {
2709
-
2710
- &:hover {
2711
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2712
- }
2713
-
2714
- &:focus {
2715
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2716
- }
2717
-
2718
- transition: transform 200ms ease-out,
2719
- box-shadow 200ms ease-out,
2720
- rotate 200ms ease-out;
2721
-
2722
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl);
2723
-
2724
- border-radius: var(--qti-border-radius-md);
2725
-
2726
- cursor: grab;
2727
-
2728
- background-color: white;
2729
-
2730
- font-weight: var(--qti-font-weight-semibold);
2731
-
2732
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2733
-
2734
- outline: none;
2735
-
2736
- background-image: radial-gradient(
2737
- circle at center,
2738
- rgb(0 0 0 / 10%) 0,
2739
- rgb(0 0 0 / 20%) 2px,
2740
- rgb(255 255 255 / 0%) 2px,
2741
- rgb(255 255 255 / 0%) 100%
2742
- );
2743
-
2744
- background-repeat: repeat-y;
2745
-
2746
- background-position: left center;
2747
-
2748
- background-size: 14px 8px
2749
- }
2750
-
2751
- &::part(qti-simple-choice) {
2752
- display: flex;
2753
- overflow: hidden;
2754
- align-items: center;
2755
- width: 100%;
2756
- text-overflow: ellipsis;
2757
- }
2758
-
2759
- &::part(drops) {
2760
- gap: 0.5rem; /* gap-2 */
2761
- }
2762
-
2763
- &::part(drags) {
2764
- gap: 0.5rem; /* gap-2 */
2765
- }
2766
-
2767
- &::part(drop-list) {
2768
-
2769
- &:hover {
2770
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2771
- }
2772
-
2773
- &:focus {
2774
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2775
- }
2776
-
2777
- display: flex;
2778
- min-height: 4rem;
2779
- background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
2780
- center no-repeat;
2781
- border-radius: var(--qti-border-radius-lg);
2782
- position: relative;
2783
- background-color: var(--qti-bg-white);
2784
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2785
- outline: none;
2786
- }
2787
-
2788
- &::part(active) {
2789
- border-color: var(--qti-bg-primary);
2790
- }
2791
- }
2792
-
2793
- qti-associate-interaction {
2794
- & qti-simple-associable-choice, /* drags when in lightdom */
2795
- &::part(qti-simple-associable-choice) /* drags when in shadowdom */ {
2796
-
2797
- &:hover {
2798
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2799
- }
2800
-
2801
- &:focus {
2802
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2803
- }
2804
-
2805
- &[dragging] {
2806
- pointer-events: none;
2807
- rotate: -2deg;
2808
- box-shadow: 0 8px 12px rgb(0 0 0 / 20%),
2809
- 0 4px 8px rgb(0 0 0 / 10%);
2810
- }
2811
-
2812
- transition: transform 200ms ease-out,
2813
- box-shadow 200ms ease-out,
2814
- rotate 200ms ease-out;
2815
-
2816
- padding: var(--qti-padding-md) var(--qti-padding-lg) var(--qti-padding-md) var(--qti-padding-xl);
2817
-
2818
- border-radius: var(--qti-border-radius-md);
2819
-
2820
- cursor: grab;
2821
-
2822
- background-color: white;
2823
-
2824
- font-weight: var(--qti-font-weight-semibold);
2825
-
2826
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2827
-
2828
- outline: none;
2829
-
2830
- background-image: radial-gradient(
2831
- circle at center,
2832
- rgb(0 0 0 / 10%) 0,
2833
- rgb(0 0 0 / 20%) 2px,
2834
- rgb(255 255 255 / 0%) 2px,
2835
- rgb(255 255 255 / 0%) 100%
2836
- );
2837
-
2838
- background-repeat: repeat-y;
2839
-
2840
- background-position: left center;
2841
-
2842
- background-size: 14px 8px
2843
- }
2844
-
2845
- /* display: flex;
2846
- overflow: hidden;
2847
- align-items: center; */
2848
-
2849
- /* &::part(drop-container) {
2850
- display: flex;
2851
- flex-direction: column;
2852
- gap: var(--qti-gap-size);
2853
- } */
2854
-
2855
- &::part(drop-list) {
2856
-
2857
- display: grid;
2858
- height: 3rem;
2859
- min-width: 10rem;
2860
- background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"><circle cx="10" cy="10" r="7" stroke="%23CCCCCC" stroke-width="1" fill="transparent" /></svg>')
2861
- center no-repeat;
2862
- border-radius: var(--qti-border-radius-lg);
2863
- position: relative;
2864
- background-color: var(--qti-bg-white);
2865
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2866
- outline: none;
2867
- }
2868
-
2869
- &::part(drop-list):focus {
2870
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2871
- }
2872
-
2873
- &::part(drop-list)[dragging] {
2874
- border-color: var(--qti-bg-primary);
2875
- }
2876
-
2877
- /* &::part(drop-list) {
2878
- @apply act;
2879
- } */
2880
- }
2881
-
2882
- qti-graphic-order-interaction {
2883
- & qti-hotspot-choice {
2884
-
2885
- &:hover {
2886
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2887
- }
2888
-
2889
- &:focus {
2890
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2891
- }
2892
-
2893
- &[aria-checked='true'] {
2894
- border-color: var(--qti-bg-primary);
2895
- }
2896
-
2897
- &[aria-readonly='true'] {
2898
- cursor: pointer;
2899
- background-color: white;
2900
- outline: 0;
2901
- border: none;
2902
- }
2903
-
2904
- &[aria-disabled='true'] {
2905
- cursor: not-allowed;
2906
- background-color: var(--qti-bg-gray-100);
2907
- color: var(--qti-text-gray-500);
2908
- border-color: var(--qti-border-color-gray);
2909
- outline: 4px solid var(--qti-bg-gray-100);
2910
- }
2911
-
2912
- &[aria-ordervalue] {
2913
-
2914
- display: flex;
2915
- justify-content: center;
2916
- align-items: center;
2917
- background-color: var(--qti-bg-primary);
2918
- border-radius: var(--qti-border-radius-full);
2919
- width: 1.5rem;
2920
- height: 1.5rem;
2921
- color: var(--qti-text-white);
2922
- }
2923
-
2924
- &[aria-ordervalue]::after {
2925
- content: attr(aria-ordervalue) !important;
2926
- }
2927
-
2928
- width: 100%;
2929
-
2930
- height: 100%;
2931
-
2932
- background-color: transparent;
2933
-
2934
- padding: 0;
2935
-
2936
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2937
-
2938
- outline: none
2939
- }
2940
- }
2941
-
2942
- qti-graphic-associate-interaction {
2943
- position: relative;
2944
- display: block;
2945
-
2946
- & qti-associable-hotspot {
2947
- &[shape='circle'] {
2948
-
2949
- &:hover {
2950
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2951
- }
2952
-
2953
- &:focus {
2954
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2955
- }
2956
-
2957
- &[aria-checked='true'] {
2958
- border-color: var(--qti-bg-primary);
2959
- }
2960
-
2961
- &[aria-readonly='true'] {
2962
- cursor: pointer;
2963
- background-color: white;
2964
- outline: 0;
2965
- border: none;
2966
- }
2967
-
2968
- &[aria-disabled='true'] {
2969
- cursor: not-allowed;
2970
- background-color: var(--qti-bg-gray-100);
2971
- color: var(--qti-text-gray-500);
2972
- border-color: var(--qti-border-color-gray);
2973
- outline: 4px solid var(--qti-bg-gray-100);
2974
- }
2975
-
2976
- width: 100%;
2977
-
2978
- height: 100%;
2979
-
2980
- background-color: transparent;
2981
-
2982
- padding: 0;
2983
-
2984
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
2985
-
2986
- outline: none
2987
- }
2988
-
2989
- &[shape='square'] {
2990
-
2991
- &:hover {
2992
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
2993
- }
2994
-
2995
- &:focus {
2996
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
2997
- }
2998
-
2999
- &[aria-checked='true'] {
3000
- border-color: var(--qti-bg-primary);
3001
- }
3002
-
3003
- &[aria-readonly='true'] {
3004
- cursor: pointer;
3005
- background-color: white;
3006
- outline: 0;
3007
- border: none;
3008
- }
3009
-
3010
- &[aria-disabled='true'] {
3011
- cursor: not-allowed;
3012
- background-color: var(--qti-bg-gray-100);
3013
- color: var(--qti-text-gray-500);
3014
- border-color: var(--qti-border-color-gray);
3015
- outline: 4px solid var(--qti-bg-gray-100);
3016
- }
3017
-
3018
- width: 100%;
3019
-
3020
- height: 100%;
3021
-
3022
- background-color: transparent;
3023
-
3024
- padding: 0;
3025
-
3026
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
3027
-
3028
- outline: none
3029
- }
3030
- }
3031
- }
3032
-
3033
- qti-graphic-gap-match-interaction {
3034
- position: relative;
3035
-
3036
- & img {
3037
- margin: 0;
3038
- padding: 0;
3039
- }
3040
- }
3041
-
3042
- qti-slider-interaction {
3043
- display: block;
3044
-
3045
- --qti-tick-color: rgb(229 231 235 / 100%);
3046
- --qti-tick-width: 1px;
3047
-
3048
- &::part(slider) {
3049
- margin-left: 2rem; /* mx-8 */
3050
- margin-right: 2rem;
3051
- padding-bottom: 1rem; /* pb-4 */
3052
- padding-top: 1.25rem; /* pt-5 */
3053
- }
3054
-
3055
- --show-bounds: true;
3056
-
3057
- &::part(bounds) {
3058
- display: flex;
3059
- width: 100%;
3060
- justify-content: space-between;
3061
- margin-bottom: 0.5rem; /* mb-2 */
3062
- }
3063
-
3064
- --show-ticks: true;
3065
-
3066
- &::part(ticks) {
3067
- margin-left: 0.125rem; /* mx-0.5 */
3068
- margin-right: 0.125rem;
3069
- margin-bottom: 0.25rem; /* mb-1 */
3070
- height: 0.5rem; /* h-2 */
3071
- background-position: 0 center;
3072
- background: linear-gradient(to right, var(--qti-tick-color) var(--qti-tick-width), transparent 1px) repeat-x;
3073
- background-size: calc(calc(100% - var(--qti-tick-width)) / ((var(--max) - var(--min)) / var(--step))) 100%;
3074
- }
3075
-
3076
- &::part(rail) {
3077
- display: flex;
3078
- align-items: center;
3079
- box-sizing: border-box;
3080
- height: 0.375rem; /* h-1.5 */
3081
- width: 100%;
3082
- cursor: pointer;
3083
- border-radius: 9999px; /* rounded-full */
3084
- border: 1px solid #d1d5db; /* border-gray-300 */
3085
- background-color: #e5e7eb; /* bg-gray-200 */
3086
- }
3087
-
3088
- &::part(knob) {
3089
- background-color: var(--qti-primary);
3090
- position: relative;
3091
- height: 1rem; /* h-4 */
3092
- width: 1rem; /* w-4 */
3093
- transform-origin: center;
3094
- transform: translateX(-50%);
3095
- cursor: pointer;
3096
- border-radius: 9999px; /* rounded-full */
3097
- left: var(--value-percentage);
3098
- }
3099
-
3100
- --show-value: true;
3101
-
3102
- &::part(value) {
3103
- position: absolute;
3104
- bottom: 2rem; /* bottom-8 */
3105
- left: 0.5rem; /* left-2 */
3106
- transform: translateX(-50%);
3107
- cursor: pointer;
3108
- border-radius: 0.25rem; /* rounded */
3109
- background-color: #f3f4f6; /* bg-gray-100 */
3110
- padding: 0.25rem 0.5rem; /* px-2 py-1 */
3111
- text-align: center;
3112
- color: #6b7280; /* text-gray-500 */
3113
- }
3114
- }
3115
-
3116
- qti-select-point-interaction {
3117
- &::part(point) {
3118
- &:hover {
3119
- box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
3120
- }
3121
-
3122
- &:focus {
3123
- outline: var(--qti-focus-border-width) solid var(--qti-focus-color);
3124
- }
3125
-
3126
- border-radius: var(--qti-border-radius-full);
3127
-
3128
- width: 1.5rem;
3129
-
3130
- height: 1.5rem;
3131
-
3132
- background-color: transparent;
3133
-
3134
- padding: 0;
3135
-
3136
- border: var(--qti-border-thickness) var(--qti-border-style) var(--qti-border-color-gray);
3137
-
3138
- outline: none;
3139
- }
3140
- }
3141
-
3142
- qti-position-object-stage {
3143
- & qti-position-object-interaction {
3144
- /* no styles necessary, only layout styles, defined in the component */
3145
- }
3146
- }
3147
-
3148
- qti-prompt {
3149
- margin: 0.5rem 0; /* my-2 */
3150
- display: block;
3151
- width: 100%;
3152
- }
3153
- }
3154
-
3155
- /* utilities */
3156
-
3157
- /* @import './styles/qti-utilities/qti-styles'; */
3158
-
3159
- /* variants */
3160
-
3161
- /* @import './styles/qti-variants/qti-input-width'; */
3162
-
3163
- /* @import './styles/qti-variants/qti-interactions'; */
3164
- `;var i,e,l=class extends HTMLElement{constructor(){super(...arguments);d(this,i,null);d(this,e,null)}set xmlDoc(t){if(!r(this,i)){n(this,i,this.attachShadow({mode:"open"}));let a=new CSSStyleSheet;a.replaceSync(s),r(this,i).adoptedStyleSheets=[a],r(this,i).innerHTML="",r(this,i).addEventListener("qti-assessment-item-connected",({target:o})=>n(this,e,o))}r(this,i).innerHTML="",r(this,i).appendChild(t.cloneNode(!0))}processResponse(){var t;(t=r(this,e))!=null&&t.processResponse()||console.warn("No qti-assessment-item found")}get variables(){var t;return((t=r(this,e))==null?void 0:t.variables)||console.warn("No qti-assessment-item found")}set variables(t){r(this,e).variables=t}attributeChangedCallback(t,a,o){switch(t){case"view":break;default:a!==o&&(this[t]=o);break}}};i=new WeakMap,e=new WeakMap;customElements.define("qti-item",l);export{l as QtiItem};
3165
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiaW5saW5lOi4uLy4uL2l0ZW0uY3NzP2lubGluZSIsICIuLi8uLi9zcmMvbGliL3F0aS1pdGVtL3F0aS1pdGVtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJAbGF5ZXIgcXRpLWJhc2UsIHF0aS1jb21wb25lbnRzLCBxdGktdXRpbGl0aWVzLCBxdGktdmFyaWFudHMsIHF0aS1leHRlbmRlZDtcblxuLyogXG5CYXNlIHZhcmlhYmxlcyBvbiBQTlAgXG5odHRwczovL3d3dy5pbXNnbG9iYWwub3JnL3NwZWMvcXRpL3YzcDAvaW1wbCNoLng1MWFmamw1cjhnbFxuZm9udC1mYWNlXG5odHRwczovL3d3dy5pbXNnbG9iYWwub3JnL3NwZWMvcXRpL3YzcDAvaW1wbCNoLnIzaHVmajc0cjFkb1xubGluZS1zcGFjaW5nXG5odHRwczovL3d3dy5pbXNnbG9iYWwub3JnL3NwZWMvcXRpL3YzcDAvaW1wbCNoLmUwb25yNTFuZ2h5bFxuKi9cblxuOnJvb3QsXG46aG9zdCB7XG4gIC8qIFByaW1hcnkgY29sb3JzICovXG4gIC0tcXRpLXByaW1hcnktbGlnaHQ6ICNmZmVhZWE7XG4gIC0tcXRpLXByaW1hcnk6ICNmODZkNzA7XG4gIC0tcXRpLXByaW1hcnktZGFyazogI2ExNjE2YTtcblxuICAvKiBTZWNvbmRhcnkgY29sb3JzICovXG4gIC0tcXRpLXNlY29uZGFyeS1saWdodDogI2JlZDRmZjtcbiAgLS1xdGktc2Vjb25kYXJ5OiAjNmRhZWY4O1xuICAtLXF0aS1zZWNvbmRhcnktZGFyazogIzNhNDQ5ZDtcblxuICAvKiBCYWNrZ3JvdW5kIGNvbG9ycyAqL1xuICAtLXF0aS1iZy1ncmF5LTUwOiAjZjlmYWZiO1xuICAtLXF0aS1iZy1ncmF5LTEwMDogI2YzZjRmNjtcbiAgLS1xdGktYmctd2hpdGU6IHdoaXRlO1xuICAtLXF0aS1iZy1wcmltYXJ5OiB2YXIoLS1xdGktcHJpbWFyeSk7XG5cbiAgLyogVGV4dCBjb2xvcnMgKi9cbiAgLS1xdGktdGV4dC1ncmF5LTUwMDogIzQ1NDg0ZjtcbiAgLS1xdGktdGV4dC13aGl0ZTogd2hpdGU7XG5cbiAgLyogQm9yZGVyIHByb3BlcnRpZXMgKi9cbiAgLS1xdGktYm9yZGVyLXRoaWNrbmVzczogMS41cHg7XG4gIC0tcXRpLWJvcmRlci1zdHlsZTogc29saWQ7XG4gIC0tcXRpLWJvcmRlci1jb2xvci1ncmF5OiAjYzZjYWQwOyAvKiBDb3JyZXNwb25kaW5nIHRvIGJvcmRlci1ncmF5LTQwMCAqL1xuICAtLXF0aS1ib3JkZXItcmFkaXVzLW1kOiAwLjM3NXJlbTtcbiAgLS1xdGktYm9yZGVyLXJhZGl1cy1sZzogMC41cmVtO1xuICAtLXF0aS1ib3JkZXItcmFkaXVzLWZ1bGw6IDk5OTlweDtcblxuICAvKiBQYWRkaW5nICovXG4gIC0tcXRpLXBhZGRpbmctc206IDAuMTI1cmVtOyAvKiBweS0wLjUgKi9cbiAgLS1xdGktcGFkZGluZy1tZDogMC41cmVtOyAvKiBweS0yICovXG4gIC0tcXRpLXBhZGRpbmctbGc6IDAuNzVyZW07IC8qIHAtMyAqL1xuICAtLXF0aS1wYWRkaW5nLXhsOiAxcmVtOyAvKiBwbC00ICovXG5cbiAgLyogRm9ybSAmIGxheW91dCAqL1xuICAtLXF0aS1mb3JtLXNpemU6IDFyZW07XG4gIC0tcXRpLWdhcC1zaXplOiAwLjVyZW07XG5cbiAgLyogVHlwb2dyYXBoeSAqL1xuICAtLXF0aS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuICAtLXF0aS1saW5lLWhlaWdodDogMi41O1xuXG4gIC8qIEZvY3VzICYgYWN0aXZlIHN0YXRlcyAqL1xuICAtLXF0aS1hY3RpdmU6IGJsdWU7XG4gIC0tcXRpLWZvY3VzLWNvbG9yOiAjYmRkY2ZmN2U7XG4gIC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aDogNXB4O1xuXG4gIC8qIENvcnJlY3QvSW5jb3JyZWN0IGZlZWRiYWNrICovXG4gIC0tcXRpLWNvcnJlY3Q6IHJnYig3NCAyMjIgMTI4KTtcbiAgLS1xdGktY29ycmVjdC1saWdodDogcmdiKDIyMCAyNTIgMjMxKTtcbiAgLS1xdGktaW5jb3JyZWN0OiByZ2IoMjQ4IDExMyAxMTMpO1xuICAtLXF0aS1pbmNvcnJlY3QtbGlnaHQ6IHJnYigyNTQgMjI2IDIyNik7XG5cbiAgLyogLS0tLSAqL1xuICAtLWJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2IoMCAwIDAgLyA3LjUlKTtcbiAgLS1ib3gtc2hhZG93LWxnOiAwIDAuNXJlbSAxcmVtIHJnYigwIDAgMCAvIDE1JSk7XG4gIC0tdGFibGUtYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAtLWZvcmVncm91bmQ6IHZhcigtLXF0aS1iZy1ncmF5LTUwKTtcbiAgLS13ZWxsLWJnOiB2YXIoLS1xdGktYmctZ3JheS01MCk7XG4gIC0td2VsbC1ib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gIC0td2VsbC1ib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93KTtcbn1cblxuLmNoZXZyb24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIGZpbGw9J2N1cnJlbnRDb2xvcicgd2lkdGg9JzIyJyB2aWV3Qm94PScwIDAgMjAgMjAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgYXJpYS1oaWRkZW49J3RydWUnJTNFJTNDcGF0aCBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTUuMjMgNy4yMWEuNzUuNzUgMCAwMTEuMDYuMDJMMTAgMTEuMTY4bDMuNzEtMy45MzhhLjc1Ljc1IDAgMTExLjA4IDEuMDRsLTQuMjUgNC41YS43NS43NSAwIDAxLTEuMDggMGwtNC4yNS00LjVhLjc1Ljc1IDAgMDEuMDItMS4wNnonJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpXG4gICAgbm8tcmVwZWF0IGNlbnRlciByaWdodCA2cHg7XG59XG5cbi5oYW5kbGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgY2lyY2xlIGF0IGNlbnRlcixcbiAgICByZ2IoMCAwIDAgLyAxMCUpIDAsXG4gICAgcmdiKDAgMCAwIC8gMjAlKSAycHgsXG4gICAgcmdiKDI1NSAyNTUgMjU1IC8gMCUpIDJweCxcbiAgICByZ2IoMjU1IDI1NSAyNTUgLyAwJSkgMTAwJVxuICApO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggOHB4O1xufVxuXG4uY2hlY2stbWFzayB7XG4gIC13ZWJraXQtbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9J2N1cnJlbnRDb2xvcicgd2lkdGg9JzEwMCUnIGhlaWdodD0nMTAwJScgdmlld0JveD0nMCAwIDI0IDI0JyUzRSUzQ3BhdGggZD0nTTIwLjI4NSAybC0xMS4yODUgMTEuNTY3LTUuMjg2LTUuMDExLTMuNzE0IDMuNzE2IDkgOC43MjggMTUtMTUuMjg1eicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgICBtYXNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nY3VycmVudENvbG9yJyB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFJTNDcGF0aCBkPSdNMjAuMjg1IDJsLTExLjI4NSAxMS41NjctNS4yODYtNS4wMTEtMy43MTQgMy43MTYgOSA4LjcyOCAxNS0xNS4yODV6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG4uYm9yZGVyZWQge1xuICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uYm9yZGVyaW52aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmZvcm0ge1xuXG4gIHdpZHRoOiB2YXIoLS1xdGktZm9ybS1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS1xdGktZm9ybS1zaXplKTtcbiAgYWxpZ24tc2VsZjogMTtcbiAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnAtbGcge1xuICBwYWRkaW5nOiB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmctbGcpIHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy14bCk7IC8qIFBhZGRpbmcgc2hvcnRoYW5kICovXG59XG5cbi5idXR0b24ge1xuXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLW1kKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXF0aS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zZWxlY3Qge1xuXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICBwYWRkaW5nOiB2YXIoLS1xdGktcGFkZGluZy1tZCkgMS43NXJlbSB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmctbGcpOyAvKiBQYWRkaW5nIHNob3J0aGFuZCAqLyBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpOyBvdXRsaW5lOiBub25lOyBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIGZpbGw9J2N1cnJlbnRDb2xvcicgd2lkdGg9JzIyJyB2aWV3Qm94PScwIDAgMjAgMjAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgYXJpYS1oaWRkZW49J3RydWUnJTNFJTNDcGF0aCBjbGlwLXJ1bGU9J2V2ZW5vZGQnIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTUuMjMgNy4yMWEuNzUuNzUgMCAwMTEuMDYuMDJMMTAgMTEuMTY4bDMuNzEtMy45MzhhLjc1Ljc1IDAgMTExLjA4IDEuMDRsLTQuMjUgNC41YS43NS43NSAwIDAxLTEuMDggMGwtNC4yNS00LjVhLjc1Ljc1IDAgMDEuMDItMS4wNnonJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFXCIpXG4gICAgbm8tcmVwZWF0IGNlbnRlciByaWdodCA2cHg7XG59XG5cbi50ZXh0IHtcblxuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHRleHQ7XG4gIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLWxnKTsgLyogRXF1YWwgcGFkZGluZyBvbiBhbGwgc2lkZXMgKi9cbiAgYmFja2dyb3VuZDogdW5zZXQ7XG4gIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zcG90IHtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyogcXRpLXNlbGVjdC1wb2ludC1pbnRlcmFjdGlvbiAqL1xuXG4ucG9pbnQge1xuXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xuICB3aWR0aDogMS41cmVtOyAvKiB3LTYgKi9cbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZHJhZyB7XG5cbiAgdHJhbnNpdGlvbjpcbiAgICB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1vdXQsXG4gICAgYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCxcbiAgICByb3RhdGUgMjAwbXMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy1sZykgdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLXhsKTsgLyogUGFkZGluZyBzaG9ydGhhbmQgKi9cbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcXRpLWJvcmRlci1yYWRpdXMtbWQpO1xuICBjdXJzb3I6IGdyYWI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogdmFyKC0tcXRpLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KFxuICAgIGNpcmNsZSBhdCBjZW50ZXIsXG4gICAgcmdiKDAgMCAwIC8gMTAlKSAwLFxuICAgIHJnYigwIDAgMCAvIDIwJSkgMnB4LFxuICAgIHJnYigyNTUgMjU1IDI1NSAvIDAlKSAycHgsXG4gICAgcmdiKDI1NSAyNTUgMjU1IC8gMCUpIDEwMCVcbiAgKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNHB4IDhweDtcbn1cblxuLmRyYWdnaW5nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHJvdGF0ZTogLTJkZWc7XG4gIGJveC1zaGFkb3c6XG4gICAgMCA4cHggMTJweCByZ2IoMCAwIDAgLyAyMCUpLFxuICAgIDAgNHB4IDhweCByZ2IoMCAwIDAgLyAxMCUpO1xufVxuXG4uZHJvcCB7XG5cbiAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+PGNpcmNsZSBjeD1cIjEwXCIgY3k9XCIxMFwiIHI9XCI3XCIgc3Ryb2tlPVwiJTIzQ0NDQ0NDXCIgc3Ryb2tlLXdpZHRoPVwiMVwiIGZpbGw9XCJ0cmFuc3BhcmVudFwiIC8+PC9zdmc+JylcbiAgICBjZW50ZXIgbm8tcmVwZWF0O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1sZyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXdoaXRlKTtcbiAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmRyb3BwaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLXByaW1hcnktbGlnaHQpO1xufVxuXG4ub3JkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xuICB3aWR0aDogMS41cmVtOyAvKiB3LTYgKi9cbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGNvbG9yOiB2YXIoLS1xdGktdGV4dC13aGl0ZSk7XG59XG5cbi5jaGVjay1zaXplIHtcbiAgd2lkdGg6IGNhbGModmFyKC0tcXRpLWZvcm0tc2l6ZSkgLSA0cHgpO1xuICBoZWlnaHQ6IGNhbGModmFyKC0tcXRpLWZvcm0tc2l6ZSkgLSA0cHgpO1xufVxuXG4uY2hlY2sge1xuICAvKiBkaXNwbGF5OiBmbGV4OyAqL1xuXG4gIC8qIGFsaWduLWl0ZW1zOiBjZW50ZXI7ICovXG4gIGdhcDogMC41cmVtO1xuICBwYWRkaW5nOiB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmctbWQpOyAvKiBQYWRkaW5nIHNob3J0aGFuZCAqL1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoZWNrLXJhZGlvIHtcblxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1mdWxsKTtcblxuICB3aWR0aDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG5cbiAgaGVpZ2h0OiB2YXIoLS1xdGktZm9ybS1zaXplKTtcblxuICBhbGlnbi1zZWxmOiAxO1xuXG4gIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmNoZWNrLXJhZGlvLWNoZWNrZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xufVxuXG4uY2hlY2stY2hlY2tib3gge1xuXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICB3aWR0aDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG5cbiAgaGVpZ2h0OiB2YXIoLS1xdGktZm9ybS1zaXplKTtcblxuICBhbGlnbi1zZWxmOiAxO1xuXG4gIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmNoZWNrLWNoZWNrYm94LWNoZWNrZWQge1xuXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1wcmltYXJ5KTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiB2YXIoLS1jaGVjay1tYXNrKTtcbiAgICAgICAgICBtYXNrLWltYWdlOiB2YXIoLS1jaGVjay1tYXNrKTsgLyogY2hlY2stbWFzayAqLyAtd2Via2l0LW1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdjdXJyZW50Q29sb3InIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J00yMC4yODUgMmwtMTEuMjg1IDExLjU2Ny01LjI4Ni01LjAxMS0zLjcxNCAzLjcxNiA5IDguNzI4IDE1LTE1LjI4NXonLyUzRSUzQy9zdmclM0VcIik7IG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdjdXJyZW50Q29sb3InIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J00yMC4yODUgMmwtMTEuMjg1IDExLjU2Ny01LjI4Ni01LjAxMS0zLjcxNCAzLjcxNiA5IDguNzI4IDE1LTE1LjI4NXonLyUzRSUzQy9zdmclM0VcIik7XG59XG5cbi5ob3Yge1xuICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctZ3JheS01MCk7ICovXG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xufVxuXG4uZm9jIHtcbiAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbn1cblxuLmFjdCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpOyAvKiBib3JkZXItcHJpbWFyeSAqL1xufVxuXG4ucmRvIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uZGlzIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcblxuICAvKiBvdXRsaW5lLWNvbG9yOiB2YXIoLS1xdGktdGV4dC1ncmF5LTUwKTsgKi9cbn1cblxuLyogYmFzZSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBRVEkgMyBzaGFyZWQgY3NzXG4gICAxLiAgRGlzcGxheVxuICAgMi4gIFNwZWNpYWwgRmxleCBzdHlsZXNcbiAgIDMuICBNYXJnaW5cbiAgIDQuICBQYWRkaW5nXG4gICA1LiAgSG9yaXpvbnRhbCBBbGlnbm1lbnQgc3R5bGVzXG4gICA2LiAgVmVydGljYWwgQWxpZ25tZW50IHN0eWxlc1xuICAgNy4gIEhlaWdodFxuICAgOC4gIFdpZHRoXG4gICA5LiAgVGV4dC1JbmRlbnRcbiAgIDEwLiBMaXN0IFN0eWxlXG4gICAxMS4gTGF5b3V0XG4gICAxMi4gT3RoZXIgUVRJIDMgcHJlc2VudGF0aW9uIHV0aWxpdGllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09XG4gIERpc3BsYXkgY3NzXG4gID09PT09PT09PT09ICovXG5cbi5xdGktZGlzcGxheS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5xdGktZGlzcGxheS1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5xdGktZGlzcGxheS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucXRpLWRpc3BsYXktZmxleCB7XG4gIGRpc3BsYXk6IGZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5xdGktZGlzcGxheS1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4ucXRpLWRpc3BsYXktZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG59XG5cbi5xdGktZGlzcGxheS1pbmxpbmUtZ3JpZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xufVxuXG4ucXRpLWRpc3BsYXktdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnF0aS1kaXNwbGF5LXRhYmxlLWNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG4ucXRpLWRpc3BsYXktdGFibGUtcm93IHtcbiAgZGlzcGxheTogdGFibGUtcm93O1xufVxuXG4ucXRpLWRpc3BsYXktbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4ucXRpLWRpc3BsYXktaW5oZXJpdCB7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG59XG5cbi8qIFxuICAgKiBoaWRkZW4gdG8gc2NyZWVuIHJlYWRlcnMgYW5kIHNpZ2h0ZWRcbiAgICovXG5cbi5xdGktaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAgKiB2aXNpYmxlIHRvIHNjcmVlbiByZWFkZXJzLCBoaWRkZW4gdG8gc2lnaHRlZFxuICAgKi9cblxuLnF0aS12aXN1YWxseS1oaWRkZW4ge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IC0xcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgIFNwZWNpYWwgZmxleCBzdHlsZXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnF0aS1mbGV4LWRpcmVjdGlvbi1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucXRpLWZsZXgtZGlyZWN0aW9uLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5xdGktZmxleC1ncm93LTEge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5xdGktZmxleC1ncm93LTAge1xuICBmbGV4LWdyb3c6IDA7XG59XG5cbi8qID09PT09PT09PVxuICAgIE1hcmdpbiBjc3NcbiAgICA9PT09PT09PT09ICovXG5cbi8qKlxuICAgKiBGb3IgbWFyZ2luIFRvcCBhbmQgQm90dG9tIGFuZCBMZWZ0IGFuZCBSaWdodFxuICAgKi9cblxuLnF0aS1tYXJnaW4tMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi0xIHtcbiAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLTIge1xuICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi0zIHtcbiAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLTQge1xuICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi01IHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLypcbiAgIEZvciBtYXJnaW4gTGVmdCBhbmQgUmlnaHRcbiAgICovXG5cbi5xdGktbWFyZ2luLXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi14LTEge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi14LTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi14LTUge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teC1hdXRvIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gICBGb3IgbWFyZ2luIFRvcCBhbmQgQm90dG9tXG4gICAqL1xuXG4ucXRpLW1hcmdpbi15LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teS0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLXktMiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teS0zIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLXktNCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4teS01IHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLXktYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKlxuICAgRm9yIG1hcmdpbiBUb3BcbiAgICovXG5cbi5xdGktbWFyZ2luLXQtMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tdC0xIHtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi10LTIge1xuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tdC0zIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi10LTQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tdC01IHtcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi10LWF1dG8ge1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIFxuICBGb3IgbWFyZ2luIEJvdHRvbVxuICAgKi9cblxuLnF0aS1tYXJnaW4tYi0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1iLTEge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWItMiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1iLTMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWItNCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1iLTUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWItYXV0byB7XG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLypcbiAgIEZvciBtYXJnaW4gU3RhcnQgTFRSXG4gICAqL1xuXG4ucXRpLW1hcmdpbi1zLTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1zLTEge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1zLTIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLXMtMyB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLXMtNCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tcy01IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tcy1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLyogXG4gIEZvciBtYXJnaW4gRW5kIExUUlxuICAgKi9cblxuLnF0aS1tYXJnaW4tZS0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWUtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1lLTIge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLW1hcmdpbi1lLTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tZS00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1tYXJnaW4tZS01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktbWFyZ2luLWUtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT1cbiAgICBQYWRkaW5nIGNzc1xuICAgID09PT09PT09PT0gKi9cblxuLypcbiAgRm9yIHBhZGRpbmcgVG9wIGFuZCBCb3R0b20gYW5kIExlZnQgYW5kIFJpZ2h0XG4gICAqL1xuXG4ucXRpLXBhZGRpbmctMCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLTEge1xuICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy0yIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy0zIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctNCB7XG4gIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctNSB7XG4gIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLypcbiAgIEZvciBwYWRkaW5nIExlZnQgYW5kIFJpZ2h0XG4gICAqL1xuXG4ucXRpLXBhZGRpbmcteC0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXgtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy14LTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXgtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy14LTQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXgtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gICAgRm9yIHBhZGRpbmcgVG9wIGFuZCBCb3R0b21cbiAgICovXG5cbi5xdGktcGFkZGluZy15LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmcteS0xIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXktMiB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmcteS0zIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXktNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmcteS01IHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLypcbiAgIEZvciBwYWRkaW5nIFRvcFxuICAgKi9cblxuLnF0aS1wYWRkaW5nLXQtMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy10LTEge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctdC0yIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctdC0zIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXQtNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLXQtNSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gICBGb3IgcGFkZGluZyBCb3R0b21cbiAgICovXG5cbi5xdGktcGFkZGluZy1iLTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctYi0xIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLWItMiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLWItMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1iLTQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1iLTUge1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xufVxuXG4vKlxuICAgIEZvciBwYWRkaW5nIFN0YXJ0IExUUlxuICAgKi9cblxuLnF0aS1wYWRkaW5nLXMtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctcy0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1zLTIge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctcy0zIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1zLTQge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctcy01IHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gICBGb3IgcGFkZGluZyBFbmQgTFRSXG4gICAqL1xuXG4ucXRpLXBhZGRpbmctZS0wIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctZS0xIHtcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4ucXRpLXBhZGRpbmctZS0yIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1lLTMge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5xdGktcGFkZGluZy1lLTQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnF0aS1wYWRkaW5nLWUtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT1cbiAgICAgSG9yaXpvbnRhbCBhbGlnbm1lbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnF0aS1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnF0aS1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5xdGktYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09XG4gICAgIFZlcnRpY2FsIGFsaWdubWVudFxuICAgICA9PT09PT09PT09PT09PT09PT0gKi9cblxuLnF0aS12YWxpZ24tdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnF0aS12YWxpZ24tbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnF0aS12YWxpZ24tYmFzZWxpbmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5xdGktdmFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qID09PT09PT09PT09PT1cbiAgICAgSGVpZ2h0IHN0eWxlc1xuICAgICA9PT09PT09PT09PT09ICovXG5cbi5xdGktaGVpZ2h0LTAge1xuICBoZWlnaHQ6IDA7XG59XG5cbi5xdGktaGVpZ2h0LXB4IHtcbiAgaGVpZ2h0OiAxcHg7XG59XG5cbi5xdGktaGVpZ2h0LTBwNSB7XG4gIGhlaWdodDogMC4xMjVyZW07XG59XG5cbi5xdGktaGVpZ2h0LTEge1xuICBoZWlnaHQ6IDAuMjVyZW07XG59XG5cbi5xdGktaGVpZ2h0LTFwNSB7XG4gIGhlaWdodDogMC4zNzVyZW07XG59XG5cbi5xdGktaGVpZ2h0LTIge1xuICBoZWlnaHQ6IDAuNXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMnA1IHtcbiAgaGVpZ2h0OiAwLjYyNXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMyB7XG4gIGhlaWdodDogMC43NXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtM3A1IHtcbiAgaGVpZ2h0OiAwLjg3NXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtNCB7XG4gIGhlaWdodDogMXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtNSB7XG4gIGhlaWdodDogMS4yNXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtNiB7XG4gIGhlaWdodDogMS41cmVtO1xufVxuXG4ucXRpLWhlaWdodC03IHtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xufVxuXG4ucXRpLWhlaWdodC04IHtcbiAgaGVpZ2h0OiAycmVtO1xufVxuXG4ucXRpLWhlaWdodC05IHtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xufVxuXG4ucXRpLWhlaWdodC0xMCB7XG4gIGhlaWdodDogMi41cmVtO1xufVxuXG4ucXRpLWhlaWdodC0xMSB7XG4gIGhlaWdodDogMi43NXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMTIge1xuICBoZWlnaHQ6IDNyZW07XG59XG5cbi5xdGktaGVpZ2h0LTE0IHtcbiAgaGVpZ2h0OiAzLjVyZW07XG59XG5cbi5xdGktaGVpZ2h0LTE2IHtcbiAgaGVpZ2h0OiA0cmVtO1xufVxuXG4ucXRpLWhlaWdodC0yMCB7XG4gIGhlaWdodDogNXJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMjQge1xuICBoZWlnaHQ6IDZyZW07XG59XG5cbi5xdGktaGVpZ2h0LTI4IHtcbiAgaGVpZ2h0OiA3cmVtO1xufVxuXG4ucXRpLWhlaWdodC0zMiB7XG4gIGhlaWdodDogOHJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMzYge1xuICBoZWlnaHQ6IDlyZW07XG59XG5cbi5xdGktaGVpZ2h0LTQwIHtcbiAgaGVpZ2h0OiAxMHJlbTtcbn1cblxuLnF0aS1oZWlnaHQtNDQge1xuICBoZWlnaHQ6IDExcmVtO1xufVxuXG4ucXRpLWhlaWdodC00OCB7XG4gIGhlaWdodDogMTJyZW07XG59XG5cbi5xdGktaGVpZ2h0LTUyIHtcbiAgaGVpZ2h0OiAxM3JlbTtcbn1cblxuLnF0aS1oZWlnaHQtNTYge1xuICBoZWlnaHQ6IDE0cmVtO1xufVxuXG4ucXRpLWhlaWdodC02MCB7XG4gIGhlaWdodDogMTVyZW07XG59XG5cbi5xdGktaGVpZ2h0LTY0IHtcbiAgaGVpZ2h0OiAxNnJlbTtcbn1cblxuLnF0aS1oZWlnaHQtNzIge1xuICBoZWlnaHQ6IDE4cmVtO1xufVxuXG4ucXRpLWhlaWdodC04MCB7XG4gIGhlaWdodDogMjByZW07XG59XG5cbi5xdGktaGVpZ2h0LTk2IHtcbiAgaGVpZ2h0OiAyNHJlbTtcbn1cblxuLnF0aS1oZWlnaHQtMS0yIHtcbiAgaGVpZ2h0OiA1MCU7XG59XG5cbi5xdGktaGVpZ2h0LTEtMyB7XG4gIGhlaWdodDogMzMuMzMzMzMzJTtcbn1cblxuLnF0aS1oZWlnaHQtMi0zIHtcbiAgaGVpZ2h0OiA2Ni42NjY2NjclO1xufVxuXG4ucXRpLWhlaWdodC0xLTQge1xuICBoZWlnaHQ6IDI1JTtcbn1cblxuLnF0aS1oZWlnaHQtMi00IHtcbiAgaGVpZ2h0OiA1MCU7XG59XG5cbi5xdGktaGVpZ2h0LTMtNCB7XG4gIGhlaWdodDogNzUlO1xufVxuXG4ucXRpLWhlaWdodC0xLTUge1xuICBoZWlnaHQ6IDIwJTtcbn1cblxuLnF0aS1oZWlnaHQtMi01IHtcbiAgaGVpZ2h0OiA0MCU7XG59XG5cbi5xdGktaGVpZ2h0LTMtNSB7XG4gIGhlaWdodDogNjAlO1xufVxuXG4ucXRpLWhlaWdodC00LTUge1xuICBoZWlnaHQ6IDgwJTtcbn1cblxuLnF0aS1oZWlnaHQtMS02IHtcbiAgaGVpZ2h0OiAxNi42NjY2NjclO1xufVxuXG4ucXRpLWhlaWdodC0yLTYge1xuICBoZWlnaHQ6IDMzLjMzMzMzMyU7XG59XG5cbi5xdGktaGVpZ2h0LTMtNiB7XG4gIGhlaWdodDogNTAlO1xufVxuXG4ucXRpLWhlaWdodC00LTYge1xuICBoZWlnaHQ6IDY2LjY2NjY2NyU7XG59XG5cbi5xdGktaGVpZ2h0LTUtNiB7XG4gIGhlaWdodDogODMuMzMzMzMzJTtcbn1cblxuLnF0aS1oZWlnaHQtYXV0byB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnF0aS1oZWlnaHQtZnVsbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLyogPT09PT09PT09PT09XG4gICAgIFdpZHRoIHN0eWxlc1xuICAgICA9PT09PT09PT09PT0gKi9cblxuLnF0aS13aWR0aC0wIHtcbiAgd2lkdGg6IDA7XG59XG5cbi5xdGktd2lkdGgtcHgge1xuICB3aWR0aDogMXB4O1xufVxuXG4ucXRpLXdpZHRoLTBwNSB7XG4gIHdpZHRoOiAwLjEyNXJlbTtcbn1cblxuLnF0aS13aWR0aC0xIHtcbiAgd2lkdGg6IDAuMjVyZW07XG59XG5cbi5xdGktd2lkdGgtMXA1IHtcbiAgd2lkdGg6IDAuMzc1cmVtO1xufVxuXG4ucXRpLXdpZHRoLTIge1xuICB3aWR0aDogMC41cmVtO1xufVxuXG4ucXRpLXdpZHRoLTJwNSB7XG4gIHdpZHRoOiAwLjYyNXJlbTtcbn1cblxuLnF0aS13aWR0aC0zIHtcbiAgd2lkdGg6IDAuNzVyZW07XG59XG5cbi5xdGktd2lkdGgtM3A1IHtcbiAgd2lkdGg6IDAuODc1cmVtO1xufVxuXG4ucXRpLXdpZHRoLTQge1xuICB3aWR0aDogMXJlbTtcbn1cblxuLnF0aS13aWR0aC01IHtcbiAgd2lkdGg6IDEuMjVyZW07XG59XG5cbi5xdGktd2lkdGgtNiB7XG4gIHdpZHRoOiAxLjVyZW07XG59XG5cbi5xdGktd2lkdGgtNyB7XG4gIHdpZHRoOiAxLjc1cmVtO1xufVxuXG4ucXRpLXdpZHRoLTgge1xuICB3aWR0aDogMnJlbTtcbn1cblxuLnF0aS13aWR0aC05IHtcbiAgd2lkdGg6IDIuMjVyZW07XG59XG5cbi5xdGktd2lkdGgtMTAge1xuICB3aWR0aDogMi41cmVtO1xufVxuXG4ucXRpLXdpZHRoLTExIHtcbiAgd2lkdGg6IDIuNzVyZW07XG59XG5cbi5xdGktd2lkdGgtMTIge1xuICB3aWR0aDogM3JlbTtcbn1cblxuLnF0aS13aWR0aC0xNCB7XG4gIHdpZHRoOiAzLjVyZW07XG59XG5cbi5xdGktd2lkdGgtMTYge1xuICB3aWR0aDogNHJlbTtcbn1cblxuLnF0aS13aWR0aC0yMCB7XG4gIHdpZHRoOiA1cmVtO1xufVxuXG4ucXRpLXdpZHRoLTI0IHtcbiAgd2lkdGg6IDZyZW07XG59XG5cbi5xdGktd2lkdGgtMjgge1xuICB3aWR0aDogN3JlbTtcbn1cblxuLnF0aS13aWR0aC0zMiB7XG4gIHdpZHRoOiA4cmVtO1xufVxuXG4ucXRpLXdpZHRoLTM2IHtcbiAgd2lkdGg6IDlyZW07XG59XG5cbi5xdGktd2lkdGgtNDAge1xuICB3aWR0aDogMTByZW07XG59XG5cbi5xdGktd2lkdGgtNDQge1xuICB3aWR0aDogMTFyZW07XG59XG5cbi5xdGktd2lkdGgtNDgge1xuICB3aWR0aDogMTJyZW07XG59XG5cbi5xdGktd2lkdGgtNTIge1xuICB3aWR0aDogMTNyZW07XG59XG5cbi5xdGktd2lkdGgtNTYge1xuICB3aWR0aDogMTRyZW07XG59XG5cbi5xdGktd2lkdGgtNjAge1xuICB3aWR0aDogMTVyZW07XG59XG5cbi5xdGktd2lkdGgtNjQge1xuICB3aWR0aDogMTZyZW07XG59XG5cbi5xdGktd2lkdGgtNzIge1xuICB3aWR0aDogMThyZW07XG59XG5cbi5xdGktd2lkdGgtODAge1xuICB3aWR0aDogMjByZW07XG59XG5cbi5xdGktd2lkdGgtOTYge1xuICB3aWR0aDogMjRyZW07XG59XG5cbi5xdGktd2lkdGgtYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ucXRpLXdpZHRoLTEtMiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5xdGktd2lkdGgtMS0zIHtcbiAgd2lkdGg6IDMzLjMzMzMzMyU7XG59XG5cbi5xdGktd2lkdGgtMi0zIHtcbiAgd2lkdGg6IDY2LjY2NjY2NyU7XG59XG5cbi5xdGktd2lkdGgtMS00IHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnF0aS13aWR0aC0yLTQge1xuICB3aWR0aDogNTAlO1xufVxuXG4ucXRpLXdpZHRoLTMtNCB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5xdGktd2lkdGgtMS01IHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnF0aS13aWR0aC0yLTUge1xuICB3aWR0aDogNDAlO1xufVxuXG4ucXRpLXdpZHRoLTMtNSB7XG4gIHdpZHRoOiA2MCU7XG59XG5cbi5xdGktd2lkdGgtNC01IHtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLnF0aS13aWR0aC0xLTYge1xuICB3aWR0aDogMTYuNjY2NjY3JTtcbn1cblxuLnF0aS13aWR0aC0yLTYge1xuICB3aWR0aDogMzMuMzMzMzMzJTtcbn1cblxuLnF0aS13aWR0aC0zLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4ucXRpLXdpZHRoLTQtNiB7XG4gIHdpZHRoOiA2Ni42NjY2NjclO1xufVxuXG4ucXRpLXdpZHRoLTUtNiB7XG4gIHdpZHRoOiA4My4zMzMzMzMlO1xufVxuXG4ucXRpLXdpZHRoLTEtMTIge1xuICB3aWR0aDogOC4zMzMzMzMlO1xufVxuXG4ucXRpLXdpZHRoLTItMTIge1xuICB3aWR0aDogMTYuNjY2NjY3JTtcbn1cblxuLnF0aS13aWR0aC0zLTEyIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnF0aS13aWR0aC00LTEyIHtcbiAgd2lkdGg6IDMzLjMzMzMzMyU7XG59XG5cbi5xdGktd2lkdGgtNS0xMiB7XG4gIHdpZHRoOiA0MS42NjY2NjclO1xufVxuXG4ucXRpLXdpZHRoLTYtMTIge1xuICB3aWR0aDogNTAlO1xufVxuXG4ucXRpLXdpZHRoLTctMTIge1xuICB3aWR0aDogNTguMzMzMzMzJTtcbn1cblxuLnF0aS13aWR0aC04LTEyIHtcbiAgd2lkdGg6IDY2LjY2NjY2NyU7XG59XG5cbi5xdGktd2lkdGgtOS0xMiB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5xdGktd2lkdGgtMTAtMTIge1xuICB3aWR0aDogODMuMzMzMzMzJTtcbn1cblxuLnF0aS13aWR0aC0xMS0xMiB7XG4gIHdpZHRoOiA5MS42NjY2NjclO1xufVxuXG4ucXRpLXdpZHRoLWZ1bGwsXG4ucXRpLWZ1bGx3aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT1cbiAgICAgVGV4dCBJbmRlbnQgc3R5bGVzXG4gICAgID09PT09PT09PT09PT09PT09PSAqL1xuXG4ucXRpLXRleHQtaW5kZW50LTAge1xuICB0ZXh0LWluZGVudDogMDtcbn1cblxuLnF0aS10ZXh0LWluZGVudC1weCB7XG4gIHRleHQtaW5kZW50OiAxcHg7XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtMHA1IHtcbiAgdGV4dC1pbmRlbnQ6IDAuMTI1cmVtO1xufVxuXG4ucXRpLXRleHQtaW5kZW50LTEge1xuICB0ZXh0LWluZGVudDogMC4yNXJlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC0xcDUge1xuICB0ZXh0LWluZGVudDogMC4zNzVyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtMiB7XG4gIHRleHQtaW5kZW50OiAwLjVyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtMnA1IHtcbiAgdGV4dC1pbmRlbnQ6IDAuNjI1cmVtO1xufVxuXG4ucXRpLXRleHQtaW5kZW50LTMge1xuICB0ZXh0LWluZGVudDogMC43NXJlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC0zcDUge1xuICB0ZXh0LWluZGVudDogMC44NzVyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtNCB7XG4gIHRleHQtaW5kZW50OiAxcmVtO1xufVxuXG4ucXRpLXRleHQtaW5kZW50LTUge1xuICB0ZXh0LWluZGVudDogMS4yNXJlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC02IHtcbiAgdGV4dC1pbmRlbnQ6IDEuNXJlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC03IHtcbiAgdGV4dC1pbmRlbnQ6IDEuNzVyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtOCB7XG4gIHRleHQtaW5kZW50OiAycmVtO1xufVxuXG4ucXRpLXRleHQtaW5kZW50LTEyIHtcbiAgdGV4dC1pbmRlbnQ6IDNyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtMTYge1xuICB0ZXh0LWluZGVudDogNHJlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC0yMCB7XG4gIHRleHQtaW5kZW50OiA1cmVtO1xufVxuXG4ucXRpLXRleHQtaW5kZW50LTI0IHtcbiAgdGV4dC1pbmRlbnQ6IDZyZW07XG59XG5cbi5xdGktdGV4dC1pbmRlbnQtMjgge1xuICB0ZXh0LWluZGVudDogN3JlbTtcbn1cblxuLnF0aS10ZXh0LWluZGVudC0zMiB7XG4gIHRleHQtaW5kZW50OiA4cmVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PVxuICAgICBMaXN0IFN0eWxlIHN0eWxlc1xuICAgICA9PT09PT09PT09PT09PT09PSAqL1xuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1ub25lIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1kaXNjIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1jaXJjbGUge1xuICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtc3F1YXJlIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWRlY2ltYWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWRlY2ltYWwtbGVhZGluZy16ZXJvIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsLWxlYWRpbmctemVybztcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtbG93ZXItYWxwaGEge1xuICBsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWFscGhhO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS11cHBlci1hbHBoYSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWxvd2VyLXJvbWFuIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBsb3dlci1yb21hbjtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtdXBwZXItcm9tYW4ge1xuICBsaXN0LXN0eWxlLXR5cGU6IHVwcGVyLXJvbWFuO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1sb3dlci1sYXRpbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbG93ZXItbGF0aW47XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXVwcGVyLWxhdGluIHtcbiAgbGlzdC1zdHlsZS10eXBlOiB1cHBlci1sYXRpbjtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtbG93ZXItZ3JlZWsge1xuICBsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWdyZWVrO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1hcmFiaWMtaW5kaWMge1xuICBsaXN0LXN0eWxlLXR5cGU6IGFyYWJpYy1pbmRpYztcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtYXJtZW5pYW4ge1xuICBsaXN0LXN0eWxlLXR5cGU6IGFybWVuaWFuO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1sb3dlci1hcm1lbmlhbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbG93ZXItYXJtZW5pYW47XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXVwcGVyLWFybWVuaWFuIHtcbiAgbGlzdC1zdHlsZS10eXBlOiB1cHBlci1hcm1lbmlhbjtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtYmVuZ2FsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogYmVuZ2FsaTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtY2FtYm9kaWFuIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjYW1ib2RpYW47XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXNpbXAtY2hpbmVzZS1mb3JtYWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IHNpbXAtY2hpbmVzZS1mb3JtYWw7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXNpbXAtY2hpbmVzZS1pbmZvcm1hbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogc2ltcC1jaGluZXNlLWluZm9ybWFsO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS10cmFkLWNoaW5lc2UtZm9ybWFsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiB0cmFkLWNoaW5lc2UtZm9ybWFsO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS10cmFkLWNoaW5lc2UtaW5mb3JtYWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IHRyYWQtY2hpbmVzZS1pbmZvcm1hbDtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtY2prLWlkZW9ncmFwaGljIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjamstaWRlb2dyYXBoaWM7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWNqay1oZWF2ZW5seS1zdGVtIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjamstaGVhdmVubHktc3RlbTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtY2prLWVhcnRobHktYnJhbmNoIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjamstZWFydGhseS1icmFuY2g7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWRldmFuYWdhcmkge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRldmFuYWdhcmk7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWV0aGlvcGljLWhhbGVoYW1lLXRpLWVyIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBldGhpb3BpYy1oYWxlaGFtZS10aS1lcjtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtZXRoaW9waWMtaGFsZWhhbWUtdGktZXQge1xuICBsaXN0LXN0eWxlLXR5cGU6IGV0aGlvcGljLWhhbGVoYW1lLXRpLWV0O1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1ldGhpb3BpYy1oYWxlaGFtZS1hbSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZXRoaW9waWMtaGFsZWhhbWUtYW07XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWV0aGlvcGljLWhhbGVoYW1lIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBldGhpb3BpYy1oYWxlaGFtZTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtZ2VvcmdpYW4ge1xuICBsaXN0LXN0eWxlLXR5cGU6IGdlb3JnaWFuO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1ndWphcmF0aSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZ3VqYXJhdGk7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWd1cm11a2hpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBndXJtdWtoaTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtaGFuZ3VsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBoYW5ndWw7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWhhbmd1bC1jb25zb25hbnQge1xuICBsaXN0LXN0eWxlLXR5cGU6IGhhbmd1bC1jb25zb25hbnQ7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWhlYnJldyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogaGVicmV3O1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1oaXJhZ2FuYSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogaGlyYWdhbmE7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWhpcmFnYW5hLWlyb2hhIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBoaXJhZ2FuYS1pcm9oYTtcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUta2htZXIge1xuICBsaXN0LXN0eWxlLXR5cGU6IGtobWVyO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1rb3JlYW4taGFuZ3VsLWZvcm1hbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZToga29yZWFuLWhhbmd1bC1mb3JtYWw7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWtvcmVhbi1oYW5qYS1mb3JtYWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGtvcmVhbi1oYW5qYS1mb3JtYWw7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLWtvcmVhbi1oYW5qYS1pbmZvcm1hbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZToga29yZWFuLWhhbmphLWluZm9ybWFsO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1sYW8ge1xuICBsaXN0LXN0eWxlLXR5cGU6IGxhbztcbn1cblxuLnF0aS1saXN0LXN0eWxlLXR5cGUtbWFsYXlhbGFtIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBtYWxheWFsYW07XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLW1vbmdvbGlhbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbW9uZ29saWFuO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1teWFubWFyIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBteWFubWFyO1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS1vcml5YSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogb3JpeWE7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXBlcnNpYW4ge1xuICBsaXN0LXN0eWxlLXR5cGU6IHBlcnNpYW47XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXRoYWkge1xuICBsaXN0LXN0eWxlLXR5cGU6IHRoYWk7XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXRpYmV0YW4ge1xuICBsaXN0LXN0eWxlLXR5cGU6IHRpYmV0YW47XG59XG5cbi5xdGktbGlzdC1zdHlsZS10eXBlLXRlbHVndSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogdGVsdWd1O1xufVxuXG4ucXRpLWxpc3Qtc3R5bGUtdHlwZS11cmR1IHtcbiAgbGlzdC1zdHlsZS10eXBlOiB1cmR1O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgIE90aGVyIFFUSSAzIFByZXNlbnRhdGlvbiBVdGlsaXRpZXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4ucXRpLWJvcmRlcmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGFibGUtYm9yZGVyLWNvbG9yKTtcbn1cblxuLnF0aS11bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1mb3JlZ3JvdW5kKTtcbn1cblxuLnF0aS1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5xdGktd2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdlbGwtYmcpO1xuICBib3JkZXI6IHZhcigtLXdlbGwtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiB2YXIoLS13ZWxsLWJveC1zaGFkb3cpO1xufVxuXG4vKiBTZXQgd3JpdGluZy1tb2RlIHRvIHZlcnRpY2FsLXJsIFxuICAgICBUeXBpY2FsIGZvciBDSksgdmVydGljYWwgdGV4dCAqL1xuXG4ucXRpLXdyaXRpbmctbW9kZS12ZXJ0aWNhbC1ybCB7XG4gIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG59XG5cbi8qIFNldCB3cml0aW5nLW1vZGUgdG8gdmVydGljYWwtbHJcbiAgICAgVHlwaWNhbCBmb3IgTW9uZ29saWFuIHZlcnRpY2FsIHRleHQgICovXG5cbi5xdGktd3JpdGluZy1tb2RlLXZlcnRpY2FsLWxyIHtcbiAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjtcbn1cblxuLyogU2V0IHdyaXRpbmctbW9kZSB0byBob3Jpem9udGFsLXRiIFxuICAgICBCcm93c2VyIGRlZmF1bHQgKi9cblxuLnF0aS13cml0aW5nLW1vZGUtaG9yaXpvbnRhbC10YiB7XG4gIHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10Yjtcbn1cblxuLyogRmxvYXQgYW4gZWxlbWVudCBsZWZ0ICovXG5cbi5xdGktZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vKiBGbG9hdCBhbiBlbGVtZW50IHJpZ2h0ICovXG5cbi5xdGktZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIFJlbW92ZSBhIGZsb2F0ICovXG5cbi5xdGktZmxvYXQtbm9uZSB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiBDbGVhcmZpeCBIYWNrIHRvIGFwcGx5IHRvIGEgY29udGFpbmVyIG9mIFxuICAgZmxvYXRlZCBjb250ZW50IHRoYXQgb3ZlcmZsb3dzIHRoZSBjb250YWluZXIuICovXG5cbi5xdGktZmxvYXQtY2xlYXJmaXg6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnF0aS1mbG9hdC1jbGVhci1sZWZ0XG4gIC5xdGktZmxvYXQtY2xlYXItcmlnaHRcbiAgLnF0aS1mbG9hdC1jbGVhci1ib3RoXG4gIFxuICAvKiBTZXQgdGV4dC1vcmllbnRhdGlvbiB0byB1cHJpZ2h0ICovXG4gIC5xdGktdGV4dC1vcmllbnRhdGlvbi11cHJpZ2h0IHtcbiAgdGV4dC1vcmllbnRhdGlvbjogdXByaWdodDtcbn1cblxuQGxheWVyIHF0aS1iYXNlIHtcbiAgLnF0aS1sYXlvdXQtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBnYXA6IDIuMTI3NjU5NTc0NSU7XG4gIH1cblxuICAucXRpLWxheW91dC1yb3cgW2NsYXNzKj0ncXRpLWxheW91dC1jb2wnXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5xdGktbGF5b3V0LWNvbDEge1xuICAgIHdpZHRoOiA2LjM4Mjk3ODcyMzQlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtY29sMiB7XG4gICAgd2lkdGg6IDE0Ljg5MzYxNzAyMTMlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtY29sMyB7XG4gICAgd2lkdGg6IDIzLjQwNDI1NTMxOTElO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtY29sNCB7XG4gICAgd2lkdGg6IDMxLjkxNDg5MzYxNyU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2w1IHtcbiAgICB3aWR0aDogNDAuNDI1NTMxOTE0OSU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2w2IHtcbiAgICB3aWR0aDogNDguOTM2MTcwMjEyOCU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2w3IHtcbiAgICB3aWR0aDogNTcuNDQ2ODA4NTEwNiU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2w4IHtcbiAgICB3aWR0aDogNjUuOTU3NDQ2ODA4NSU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2w5IHtcbiAgICB3aWR0aDogNzQuNDY4MDg1MTA2NCU7XG4gIH1cblxuICAucXRpLWxheW91dC1jb2wxMCB7XG4gICAgd2lkdGg6IDgyLjk3ODcyMzQwNDMlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtY29sMTEge1xuICAgIHdpZHRoOiA5MS40ODkzNjE3MDIxJTtcbiAgfVxuXG4gIC5xdGktbGF5b3V0LWNvbDEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5xdGktbGF5b3V0LW9mZnNldDEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjUxMDYzODI5NzklO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0MiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE3LjAyMTI3NjU5NTclO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0MyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1LjUzMTkxNDg5MzYlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0NCB7XG4gICAgbWFyZ2luLWxlZnQ6IDM0LjA0MjU1MzE5MTUlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0NSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQyLjU1MzE5MTQ4OTQlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0NiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUxLjA2MzgyOTc4NzIlO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0NyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU5LjU3NDQ2ODA4NTElO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0OCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY4LjA4NTEwNjM4MyU7XG4gIH1cblxuICAucXRpLWxheW91dC1vZmZzZXQ5IHtcbiAgICBtYXJnaW4tbGVmdDogNzYuNTk1NzQ0NjgwOSU7XG4gIH1cblxuICAucXRpLWxheW91dC1vZmZzZXQxMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDg1LjEwNjM4Mjk3ODclO1xuICB9XG5cbiAgLnF0aS1sYXlvdXQtb2Zmc2V0MTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5My42MTcwMjEyNzY2JTtcbiAgfVxuXG4gIC5xdGktbGF5b3V0LW9mZnNldDEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAyLjEyNzY1OTU3NDUlO1xuICB9XG5cbiAgQG1lZGlhICh3aWR0aCA8PSA3NjdweCkge1xuICAgIFtjbGFzcyo9J3F0aS1sYXlvdXQtY29sJ10ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cblt2aWV3XSxcbnF0aS1vdXRjb21lLWRlY2xhcmF0aW9uLFxucXRpLXJlc3BvbnNlLWRlY2xhcmF0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW3ZpZXddLnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuOmhvc3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5bcG9wb3Zlcl0ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIGJvcmRlcjogc29saWQ7XG4gIHBhZGRpbmc6IDAuMjVlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGNvbG9yOiBDYW52YXNUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBDYW52YXM7XG59XG5cbltwb3BvdmVydGFyZ2V0XSB7XG4gIGFsbDogdW5zZXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogY29tcG9uZW50cyAqL1xuXG5AbGF5ZXIgcXRpLWNvbXBvbmVudHMge1xuICBxdGktY2hvaWNlLWludGVyYWN0aW9uIHtcbiAgICAmLnF0aS1pbnB1dC1jb250cm9sLWhpZGRlbiB7XG4gICAgICAmIHF0aS1zaW1wbGUtY2hvaWNlIHtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiKDAgMCAwIC8gMjAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpwYXJ0KGNoKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1jaGVja2VkPSd0cnVlJ10ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLXJlYWRvbmx5PSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgb3V0bGluZTogNHB4IHNvbGlkIHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLW1kKTtcblxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcXRpLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblxuICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAgIG91dGxpbmU6IG5vbmVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCgucXRpLWlucHV0LWNvbnRyb2wtaGlkZGVuKSB7XG4gICAgICAmIHF0aS1zaW1wbGUtY2hvaWNlIHtcblxuICAgICAgICAmOm5vdChbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddLCBbYXJpYS1yZWFkb25seT0ndHJ1ZSddKTpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9J3RydWUnXSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtcmVhZG9ubHk9J3RydWUnXSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWRpc2FibGVkPSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcXRpLXRleHQtZ3JheS01MDApO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OnBhcnQoY2hhKSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0tcXRpLWZvcm0tc2l6ZSkgLSA0cHgpO1xuICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1xdGktZm9ybS1zaXplKSAtIDRweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmW3JvbGU9J3JhZGlvJ106OnBhcnQoY2gpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgICAgICB3aWR0aDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1xdGktZm9ybS1zaXplKTtcbiAgICAgICAgICBhbGlnbi1zZWxmOiAxO1xuICAgICAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbcm9sZT0ncmFkaW8nXVthcmlhLWNoZWNrZWQ9J3RydWUnXTo6cGFydChjaGEpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcXRpLWJvcmRlci1yYWRpdXMtZnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICAmW3JvbGU9J2NoZWNrYm94J106OnBhcnQoY2gpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG4gICAgICAgICAgd2lkdGg6IHZhcigtLXF0aS1mb3JtLXNpemUpO1xuICAgICAgICAgIGhlaWdodDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG4gICAgICAgICAgYWxpZ24tc2VsZjogMTtcbiAgICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmW3JvbGU9J2NoZWNrYm94J11bYXJpYS1jaGVja2VkPSd0cnVlJ106OnBhcnQoY2hhKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogdmFyKC0tY2hlY2stbWFzayk7XG4gICAgICAgICAgICAgICAgICBtYXNrLWltYWdlOiB2YXIoLS1jaGVjay1tYXNrKTtcbiAgICAgICAgICAtd2Via2l0LW1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdjdXJyZW50Q29sb3InIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J00yMC4yODUgMmwtMTEuMjg1IDExLjU2Ny01LjI4Ni01LjAxMS0zLjcxNCAzLjcxNiA5IDguNzI4IDE1LTE1LjI4NXonLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICAgICAgICAgICAgICBtYXNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nY3VycmVudENvbG9yJyB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFJTNDcGF0aCBkPSdNMjAuMjg1IDJsLTExLjI4NSAxMS41NjctNS4yODYtNS4wMTEtMy43MTQgMy43MTYgOSA4LjcyOCAxNS0xNS4yODV6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZ2FwOiAwLjVyZW07XG5cbiAgICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLW1kKTtcblxuICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXJcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIHF0aS1zaW1wbGUtY2hvaWNlIHtcbiAgICAgICZbZGF0YS1jb3JyZWN0LXJlc3BvbnNlPSd0cnVlJ10ge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJ1xcMDI3MTQnO1xuICAgICAgICAgIGNvbG9yOiAjMTZhMzRhOyAvKiB0ZXh0LWdyZWVuLTYwMCAqL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiBxdGktc2ltcGxlLWNob2ljZSA+IHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBxdGktdGV4dC1lbnRyeS1pbnRlcmFjdGlvbiB7XG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiKDAgMCAwIC8gMjAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgIH1cblxuICAgICY6OnBhcnQoaW5wdXQpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBjdXJzb3I6IHRleHQ7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1xdGktcGFkZGluZy1sZyk7XG4gICAgICBiYWNrZ3JvdW5kOiB1bnNldDtcbiAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHF0aS1leHRlbmRlZC10ZXh0LWludGVyYWN0aW9uIHtcbiAgICAmOjpwYXJ0KHRleHRhcmVhKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbGcpO1xuICAgICAgYmFja2dyb3VuZDogdW5zZXQ7XG4gICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgcXRpLWdhcC1tYXRjaC1pbnRlcmFjdGlvbiB7XG4gICAgJiBxdGktZ2FwLXRleHQge1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1vdXQsXG4gICAgYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCxcbiAgICByb3RhdGUgMjAwbXMgZWFzZS1vdXQ7XG5cbiAgICAgIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy1sZykgdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLXhsKTtcblxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcXRpLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICBjdXJzb3I6IGdyYWI7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tcXRpLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblxuICAgICAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcblxuICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KFxuICAgIGNpcmNsZSBhdCBjZW50ZXIsXG4gICAgcmdiKDAgMCAwIC8gMTAlKSAwLFxuICAgIHJnYigwIDAgMCAvIDIwJSkgMnB4LFxuICAgIHJnYigyNTUgMjU1IDI1NSAvIDAlKSAycHgsXG4gICAgcmdiKDI1NSAyNTUgMjU1IC8gMCUpIDEwMCVcbiAgKTtcblxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcblxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNHB4IDhweFxuICAgIH1cblxuICAgICYgcXRpLWdhcCB7XG5cbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgd2lkdGg6IDhyZW07IC8qIHctMzIgKi9cbiAgICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLWxnKTsgLyogUGFkZGluZyBzaG9ydGhhbmQgKi9cbiAgICAgICAgY29udGVudDogJ1xcMDAwMGEwJzsgLyogd2hlbiBlbXB0eSwgcHV0IGEgc3BhY2UgaW4gaXQgKi9cbiAgICAgIH1cblxuICAgICAgJjpub3QoOmVtcHR5KSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmVtcHR5KSA+ICoge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgLyogcm90YXRlLTAgKi9cbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNlNWU3ZWI7IC8qIHJpbmctZ3JheS0yMDAgKi9cbiAgICAgIH1cblxuICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+PGNpcmNsZSBjeD1cIjEwXCIgY3k9XCIxMFwiIHI9XCI3XCIgc3Ryb2tlPVwiJTIzQ0NDQ0NDXCIgc3Ryb2tlLXdpZHRoPVwiMVwiIGZpbGw9XCJ0cmFuc3BhcmVudFwiIC8+PC9zdmc+JylcbiAgICBjZW50ZXIgbm8tcmVwZWF0O1xuXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1sZyk7XG5cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXdoaXRlKTtcblxuICAgICAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcblxuICAgICAgb3V0bGluZTogbm9uZVxuICAgIH1cbiAgfVxuXG4gIHF0aS1ob3RzcG90LWludGVyYWN0aW9uIHtcbiAgICAmIHF0aS1ob3RzcG90LWNob2ljZSB7XG4gICAgICAmW3NoYXBlPSdjaXJjbGUnXSB7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9J3RydWUnXSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtcmVhZG9ubHk9J3RydWUnXSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWRpc2FibGVkPSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcXRpLXRleHQtZ3JheS01MDApO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgICAgb3V0bGluZTogbm9uZVxuICAgICAgfVxuXG4gICAgICAmW3NoYXBlPSdyZWN0J10ge1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1jaGVja2VkPSd0cnVlJ10ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLXJlYWRvbmx5PSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgb3V0bGluZTogNHB4IHNvbGlkIHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAgIG91dGxpbmU6IG5vbmVcbiAgICAgIH1cblxuICAgICAgJltzaGFwZT0ncG9seSddIHtcbiAgICAgICAgJjpob3Zlcjo6YWZ0ZXIge1xuXG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgICA0NWRlZyxcbiAgICAgICAgICAgIHZhcigtLXF0aS1wcmltYXJ5KSxcbiAgICAgICAgICAgIHZhcigtLXF0aS1wcmltYXJ5KSA1cHgsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCA1cHgsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAxMHB4XG4gICAgICAgICAgKTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1iZy1wcmltYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1jaGVja2VkPSd0cnVlJ106OmFmdGVyIHtcblxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgNDVkZWcsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCxcbiAgICAgICAgICAgIHRyYW5zcGFyZW50IDVweCxcbiAgICAgICAgICAgIHZhcigtLXF0aS1wcmltYXJ5KSA1cHgsXG4gICAgICAgICAgICB2YXIoLS1xdGktcHJpbWFyeSkgMTBweFxuICAgICAgICAgICk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtY2hlY2tlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1iZy1wcmltYXJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1yZWFkb25seT0ndHJ1ZSddIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtZGlzYWJsZWQ9J3RydWUnXSB7XG4gICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctZ3JheS0xMDApO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1xdGktdGV4dC1ncmF5LTUwMCk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICAgIG91dGxpbmU6IDRweCBzb2xpZCB2YXIoLS1xdGktYmctZ3JheS0xMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcXRpLWhvdHRleHQtaW50ZXJhY3Rpb24ge1xuICAgIC8qICY6bm90KC5xdGktaW5wdXQtY29udHJvbC1oaWRkZW4pLFxuICAgICY6bm90KC5xdGktdW5zZWxlY3RlZC1oaWRkZW4pIHsgKi9cbiAgICBxdGktaG90dGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiKDAgMCAwIC8gMjAlKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICY6OnBhcnQoY2hhKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKHZhcigtLXF0aS1mb3JtLXNpemUpIC0gNHB4KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXF0aS1mb3JtLXNpemUpIC0gNHB4KTtcbiAgICAgIH1cblxuICAgICAgJltyb2xlPSdyYWRpbyddOjpwYXJ0KGNoKSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWZ1bGwpO1xuICAgICAgICB3aWR0aDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tcXRpLWZvcm0tc2l6ZSk7XG4gICAgICAgIGFsaWduLXNlbGY6IDE7XG4gICAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICZbcm9sZT0ncmFkaW8nXVthcmlhLWNoZWNrZWQ9J3RydWUnXTo6cGFydChjaGEpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgIH1cblxuICAgICAgJltyb2xlPSdjaGVja2JveCddOjpwYXJ0KGNoKSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcbiAgICAgICAgd2lkdGg6IHZhcigtLXF0aS1mb3JtLXNpemUpO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXF0aS1mb3JtLXNpemUpO1xuICAgICAgICBhbGlnbi1zZWxmOiAxO1xuICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmW3JvbGU9J2NoZWNrYm94J11bYXJpYS1jaGVja2VkPSd0cnVlJ106OnBhcnQoY2hhKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1wcmltYXJ5KTtcbiAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiB2YXIoLS1jaGVjay1tYXNrKTtcbiAgICAgICAgICAgICAgICBtYXNrLWltYWdlOiB2YXIoLS1jaGVjay1tYXNrKTtcbiAgICAgICAgLXdlYmtpdC1tYXNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nY3VycmVudENvbG9yJyB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFJTNDcGF0aCBkPSdNMjAuMjg1IDJsLTExLjI4NSAxMS41NjctNS4yODYtNS4wMTEtMy43MTQgMy43MTYgOSA4LjcyOCAxNS0xNS4yODV6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICAgICAgICAgICAgICAgIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdjdXJyZW50Q29sb3InIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnIHZpZXdCb3g9JzAgMCAyNCAyNCclM0UlM0NwYXRoIGQ9J00yMC4yODUgMmwtMTEuMjg1IDExLjU2Ny01LjI4Ni01LjAxMS0zLjcxNCAzLjcxNiA5IDguNzI4IDE1LTE1LjI4NXonLyUzRSUzQy9zdmclM0VcIik7XG4gICAgICB9XG5cbiAgICAgIGdhcDogMC41cmVtO1xuXG4gICAgICBwYWRkaW5nOiB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmctbWQpO1xuXG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgICAgIGN1cnNvcjogcG9pbnRlclxuICAgIH1cblxuICAgIC8qIH0gKi9cblxuICAgICYucXRpLWlucHV0LWNvbnRyb2wtaGlkZGVuIHtcbiAgICAgIHF0aS1ob3R0ZXh0IHtcbiAgICAgICAgLyogLS1xdGktcGFkZGluZy1tZDogMC4xcmVtO1xuICAgICAgICAtLXF0aS1wYWRkaW5nLWxnOiAwLjJyZW07XG4gICAgICAgIC0tcXRpLWJvcmRlci1yYWRpdXMtbWQ6IDAuM3JlbTtcbiAgICAgICAgLS1xdGktYm9yZGVyLXRoaWNrbmVzczogMXB4O1xuICAgICAgICAtLXF0aS1mb250LXdlaWdodC1zZW1pYm9sZDogNDAwOyAqL1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIEBsYXllciBxdGktdmFyaWFudHMgeyAqL1xuICAgICAgICAmOjpwYXJ0KGNoKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1jaGVja2VkPSd0cnVlJ10ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLXJlYWRvbmx5PSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgb3V0bGluZTogNHB4IHNvbGlkIHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLW1kKTtcblxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcXRpLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblxuICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAgIG91dGxpbmU6IG5vbmVcbiAgICAgIH1cblxuICAgICAgLyogfSAqL1xuICAgIH1cblxuICAgICYucXRpLXVuc2VsZWN0ZWQtaGlkZGVuIHtcbiAgICAgIHF0aS1ob3R0ZXh0IHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICY6OnBhcnQoY2gpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9J3RydWUnXSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLXByaW1hcnktbGlnaHQpOyAvKiBiZy1ibHVlLTIwMCAqL1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLXJlYWRvbmx5PSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgb3V0bGluZTogNHB4IHNvbGlkIHZhcigtLXF0aS1iZy1ncmF5LTEwMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBxdGktaW5saW5lLWNob2ljZS1pbnRlcmFjdGlvbiB7XG4gICAgJjo6cGFydChzZWxlY3QpIHtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcXRpLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAgIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLW1kKSAxLjc1cmVtIHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy1sZyk7XG5cbiAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgZmlsbD0nY3VycmVudENvbG9yJyB3aWR0aD0nMjInIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBhcmlhLWhpZGRlbj0ndHJ1ZSclM0UlM0NwYXRoIGNsaXAtcnVsZT0nZXZlbm9kZCcgZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNNS4yMyA3LjIxYS43NS43NSAwIDAxMS4wNi4wMkwxMCAxMS4xNjhsMy43MS0zLjkzOGEuNzUuNzUgMCAxMTEuMDggMS4wNGwtNC4yNSA0LjVhLjc1Ljc1IDAgMDEtMS4wOCAwbC00LjI1LTQuNWEuNzUuNzUgMCAwMS4wMi0xLjA2eiclM0UlM0MvcGF0aCUzRSUzQy9zdmclM0VcIilcbiAgICBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDZweFxuICAgIH1cbiAgfVxuXG4gIHF0aS1tYXRjaC1pbnRlcmFjdGlvbjpub3QoLnF0aS1tYXRjaC10YWJ1bGFyKSB7XG4gICAgLyogVGhlIGRyYWdnYWJsZXMgKi9cbiAgICAmIHF0aS1zaW1wbGUtbWF0Y2gtc2V0OmZpcnN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvKiBQcmV2ZW50cyBjaGlsZHJlbiBmcm9tIHN0cmV0Y2hpbmcgKi9cbiAgICAgIGdhcDogdmFyKC0tcXRpLWdhcC1zaXplKTtcblxuICAgICAgJiBxdGktc2ltcGxlLWFzc29jaWFibGUtY2hvaWNlIHtcblxuICAgICAgICAmW2RyYWdnaW5nXSB7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgcm90YXRlOiAtMmRlZztcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxMnB4IHJnYigwIDAgMCAvIDIwJSksXG4gICAgMCA0cHggOHB4IHJnYigwIDAgMCAvIDEwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiKDAgMCAwIC8gMjAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1vdXQsXG4gICAgYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCxcbiAgICByb3RhdGUgMjAwbXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLWxnKSB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmcteGwpO1xuXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICAgICAgICBjdXJzb3I6IGdyYWI7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXF0aS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cbiAgICAgICAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcblxuICAgICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChcbiAgICBjaXJjbGUgYXQgY2VudGVyLFxuICAgIHJnYigwIDAgMCAvIDEwJSkgMCxcbiAgICByZ2IoMCAwIDAgLyAyMCUpIDJweCxcbiAgICByZ2IoMjU1IDI1NSAyNTUgLyAwJSkgMnB4LFxuICAgIHJnYigyNTUgMjU1IDI1NSAvIDAlKSAxMDAlXG4gICk7XG5cbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCA4cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBUaGUgZHJvcHBhYmxlcyAqL1xuICAgICYgcXRpLXNpbXBsZS1tYXRjaC1zZXQ6bGFzdC1vZi10eXBlIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWF1dG8tY29sdW1uczogMWZyOyAvKiBhdXRvLWNvbHMtZnIgKi9cbiAgICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47IC8qIGdyaWQtZmxvdy1jb2wgKi9cbiAgICAgIGdhcDogdmFyKC0tcXRpLWdhcC1zaXplKTsgLyogZ2FwLTIgKi9cbiAgICAgIHdpZHRoOiAxMDAlOyAvKiB3LWZ1bGwgKi9cblxuICAgICAgJiBxdGktc2ltcGxlLWFzc29jaWFibGUtY2hvaWNlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cblxuICAgICAgJiA+IHF0aS1zaW1wbGUtYXNzb2NpYWJsZS1jaG9pY2Uge1xuICAgICAgICAvKiBhIGRyb3BwYWJsZSBxdGktc2ltcGxlLWFzc29jaWFibGUtY2hvaWNlICovXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtcm93OiAyIC8gNDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuXG4gICAgICAgICYgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJltlbmFibGVkXSB7XG4gICAgICAgICAgJjo6cGFydChkcm9wc2xvdCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLXByaW1hcnktbGlnaHQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAmOjpwYXJ0KGRyb3BzbG90KSB7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1xdGktdGV4dC1ncmF5LTUwMCk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmW2FjdGl2ZV0ge1xuICAgICAgICAgICY6OnBhcnQoZHJvcHNsb3QpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6OnBhcnQoZHJvcHNsb3QpIHtcblxuICAgICAgICAgICZbZHJhZ2dpbmddIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgcm90YXRlOiAtMmRlZztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDEycHggcmdiKDAgMCAwIC8gMjAlKSxcbiAgICAwIDRweCA4cHggcmdiKDAgMCAwIC8gMTAlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbWluLWhlaWdodDogNnJlbTtcbiAgICAgICAgICBnYXA6IHZhcigtLXF0aS1nYXAtc2l6ZSk7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+PGNpcmNsZSBjeD1cIjEwXCIgY3k9XCIxMFwiIHI9XCI3XCIgc3Ryb2tlPVwiJTIzQ0NDQ0NDXCIgc3Ryb2tlLXdpZHRoPVwiMVwiIGZpbGw9XCJ0cmFuc3BhcmVudFwiIC8+PC9zdmc+JylcbiAgICBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXdoaXRlKTtcbiAgICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gKjpub3QocXRpLXNpbXBsZS1hc3NvY2lhYmxlLWNob2ljZSkge1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJiA+IHF0aS1zaW1wbGUtYXNzb2NpYWJsZS1jaG9pY2Uge1xuXG4gICAgICAgICAgJjo6cGFydChkcm9wc2xvdCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmbGV4LWJhc2lzOiBmaXQtY29udGVudDtcblxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLW91dCxcbiAgICBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0LFxuICAgIHJvdGF0ZSAyMDBtcyBlYXNlLW91dDtcblxuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy1sZykgdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLXhsKTtcblxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLW1kKTtcblxuICAgICAgICAgIGN1cnNvcjogZ3JhYjtcblxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXF0aS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cbiAgICAgICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChcbiAgICBjaXJjbGUgYXQgY2VudGVyLFxuICAgIHJnYigwIDAgMCAvIDEwJSkgMCxcbiAgICByZ2IoMCAwIDAgLyAyMCUpIDJweCxcbiAgICByZ2IoMjU1IDI1NSAyNTUgLyAwJSkgMnB4LFxuICAgIHJnYigyNTUgMjU1IDI1NSAvIDAlKSAxMDAlXG4gICk7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcblxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCA4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBxdGktb3JkZXItaW50ZXJhY3Rpb24ge1xuICAgICY6OnBhcnQocXRpLXNpbXBsZS1jaG9pY2UpLFxuICAgICYgcXRpLXNpbXBsZS1jaG9pY2Uge1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1vdXQsXG4gICAgYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCxcbiAgICByb3RhdGUgMjAwbXMgZWFzZS1vdXQ7XG5cbiAgICAgIHBhZGRpbmc6IHZhcigtLXF0aS1wYWRkaW5nLW1kKSB2YXIoLS1xdGktcGFkZGluZy1sZykgdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLXhsKTtcblxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcXRpLWJvcmRlci1yYWRpdXMtbWQpO1xuXG4gICAgICBjdXJzb3I6IGdyYWI7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICBmb250LXdlaWdodDogdmFyKC0tcXRpLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblxuICAgICAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcblxuICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KFxuICAgIGNpcmNsZSBhdCBjZW50ZXIsXG4gICAgcmdiKDAgMCAwIC8gMTAlKSAwLFxuICAgIHJnYigwIDAgMCAvIDIwJSkgMnB4LFxuICAgIHJnYigyNTUgMjU1IDI1NSAvIDAlKSAycHgsXG4gICAgcmdiKDI1NSAyNTUgMjU1IC8gMCUpIDEwMCVcbiAgKTtcblxuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcblxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNHB4IDhweFxuICAgIH1cblxuICAgICY6OnBhcnQocXRpLXNpbXBsZS1jaG9pY2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgJjo6cGFydChkcm9wcykge1xuICAgICAgZ2FwOiAwLjVyZW07IC8qIGdhcC0yICovXG4gICAgfVxuXG4gICAgJjo6cGFydChkcmFncykge1xuICAgICAgZ2FwOiAwLjVyZW07IC8qIGdhcC0yICovXG4gICAgfVxuXG4gICAgJjo6cGFydChkcm9wLWxpc3QpIHtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAyMCUpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1pbi1oZWlnaHQ6IDRyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIj48Y2lyY2xlIGN4PVwiMTBcIiBjeT1cIjEwXCIgcj1cIjdcIiBzdHJva2U9XCIlMjNDQ0NDQ0NcIiBzdHJva2Utd2lkdGg9XCIxXCIgZmlsbD1cInRyYW5zcGFyZW50XCIgLz48L3N2Zz4nKVxuICAgIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktYmctd2hpdGUpO1xuICAgICAgYm9yZGVyOiB2YXIoLS1xdGktYm9yZGVyLXRoaWNrbmVzcykgdmFyKC0tcXRpLWJvcmRlci1zdHlsZSkgdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6cGFydChhY3RpdmUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgIH1cbiAgfVxuXG4gIHF0aS1hc3NvY2lhdGUtaW50ZXJhY3Rpb24ge1xuICAgICYgcXRpLXNpbXBsZS1hc3NvY2lhYmxlLWNob2ljZSwgLyogZHJhZ3Mgd2hlbiBpbiBsaWdodGRvbSAqL1xuICAgICY6OnBhcnQocXRpLXNpbXBsZS1hc3NvY2lhYmxlLWNob2ljZSkgLyogZHJhZ3Mgd2hlbiBpbiBzaGFkb3dkb20gKi8ge1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmW2RyYWdnaW5nXSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICByb3RhdGU6IC0yZGVnO1xuICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxMnB4IHJnYigwIDAgMCAvIDIwJSksXG4gICAgMCA0cHggOHB4IHJnYigwIDAgMCAvIDEwJSk7XG4gICAgICB9XG5cbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLW91dCxcbiAgICBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0LFxuICAgIHJvdGF0ZSAyMDBtcyBlYXNlLW91dDtcblxuICAgICAgcGFkZGluZzogdmFyKC0tcXRpLXBhZGRpbmctbWQpIHZhcigtLXF0aS1wYWRkaW5nLWxnKSB2YXIoLS1xdGktcGFkZGluZy1tZCkgdmFyKC0tcXRpLXBhZGRpbmcteGwpO1xuXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1tZCk7XG5cbiAgICAgIGN1cnNvcjogZ3JhYjtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1xdGktZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuXG4gICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoXG4gICAgY2lyY2xlIGF0IGNlbnRlcixcbiAgICByZ2IoMCAwIDAgLyAxMCUpIDAsXG4gICAgcmdiKDAgMCAwIC8gMjAlKSAycHgsXG4gICAgcmdiKDI1NSAyNTUgMjU1IC8gMCUpIDJweCxcbiAgICByZ2IoMjU1IDI1NSAyNTUgLyAwJSkgMTAwJVxuICApO1xuXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG5cbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggOHB4XG4gICAgfVxuXG4gICAgLyogZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7ICovXG5cbiAgICAvKiAmOjpwYXJ0KGRyb3AtY29udGFpbmVyKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogdmFyKC0tcXRpLWdhcC1zaXplKTtcbiAgICB9ICovXG5cbiAgICAmOjpwYXJ0KGRyb3AtbGlzdCkge1xuXG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiPjxjaXJjbGUgY3g9XCIxMFwiIGN5PVwiMTBcIiByPVwiN1wiIHN0cm9rZT1cIiUyM0NDQ0NDQ1wiIHN0cm9rZS13aWR0aD1cIjFcIiBmaWxsPVwidHJhbnNwYXJlbnRcIiAvPjwvc3ZnPicpXG4gICAgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXF0aS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXF0aS1iZy13aGl0ZSk7XG4gICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpwYXJ0KGRyb3AtbGlzdCk6Zm9jdXMge1xuICAgICAgb3V0bGluZTogdmFyKC0tcXRpLWZvY3VzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tcXRpLWZvY3VzLWNvbG9yKTtcbiAgICB9XG5cbiAgICAmOjpwYXJ0KGRyb3AtbGlzdClbZHJhZ2dpbmddIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgIH1cblxuICAgIC8qICY6OnBhcnQoZHJvcC1saXN0KSB7XG4gICAgICBAYXBwbHkgYWN0O1xuICAgIH0gKi9cbiAgfVxuXG4gIHF0aS1ncmFwaGljLW9yZGVyLWludGVyYWN0aW9uIHtcbiAgICAmIHF0aS1ob3RzcG90LWNob2ljZSB7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiKDAgMCAwIC8gMjAlKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IHZhcigtLXF0aS1mb2N1cy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLXF0aS1mb2N1cy1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICZbYXJpYS1jaGVja2VkPSd0cnVlJ10ge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXF0aS1iZy1wcmltYXJ5KTtcbiAgICAgIH1cblxuICAgICAgJlthcmlhLXJlYWRvbmx5PSd0cnVlJ10ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICZbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXF0aS10ZXh0LWdyYXktNTAwKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgIH1cblxuICAgICAgJlthcmlhLW9yZGVydmFsdWVdIHtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLXByaW1hcnkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1mdWxsKTtcbiAgICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1xdGktdGV4dC13aGl0ZSk7XG4gICAgICB9XG5cbiAgICAgICZbYXJpYS1vcmRlcnZhbHVlXTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBhdHRyKGFyaWEtb3JkZXJ2YWx1ZSkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgIG91dGxpbmU6IG5vbmVcbiAgICB9XG4gIH1cblxuICBxdGktZ3JhcGhpYy1hc3NvY2lhdGUtaW50ZXJhY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYgcXRpLWFzc29jaWFibGUtaG90c3BvdCB7XG4gICAgICAmW3NoYXBlPSdjaXJjbGUnXSB7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9J3RydWUnXSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtcmVhZG9ubHk9J3RydWUnXSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWRpc2FibGVkPSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcXRpLXRleHQtZ3JheS01MDApO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgICAgb3V0bGluZTogbm9uZVxuICAgICAgfVxuXG4gICAgICAmW3NoYXBlPSdzcXVhcmUnXSB7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9J3RydWUnXSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xdGktYmctcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtcmVhZG9ubHk9J3RydWUnXSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJlthcmlhLWRpc2FibGVkPSd0cnVlJ10ge1xuICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tcXRpLXRleHQtZ3JheS01MDApO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcXRpLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICBvdXRsaW5lOiA0cHggc29saWQgdmFyKC0tcXRpLWJnLWdyYXktMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGJvcmRlcjogdmFyKC0tcXRpLWJvcmRlci10aGlja25lc3MpIHZhcigtLXF0aS1ib3JkZXItc3R5bGUpIHZhcigtLXF0aS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgICAgb3V0bGluZTogbm9uZVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHF0aS1ncmFwaGljLWdhcC1tYXRjaC1pbnRlcmFjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJiBpbWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBxdGktc2xpZGVyLWludGVyYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC0tcXRpLXRpY2stY29sb3I6IHJnYigyMjkgMjMxIDIzNSAvIDEwMCUpO1xuICAgIC0tcXRpLXRpY2std2lkdGg6IDFweDtcblxuICAgICY6OnBhcnQoc2xpZGVyKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTsgLyogbXgtOCAqL1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IC8qIHBiLTQgKi9cbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtOyAvKiBwdC01ICovXG4gICAgfVxuXG4gICAgLS1zaG93LWJvdW5kczogdHJ1ZTtcblxuICAgICY6OnBhcnQoYm91bmRzKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IC8qIG1iLTIgKi9cbiAgICB9XG5cbiAgICAtLXNob3ctdGlja3M6IHRydWU7XG5cbiAgICAmOjpwYXJ0KHRpY2tzKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4xMjVyZW07IC8qIG14LTAuNSAqL1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IC8qIG1iLTEgKi9cbiAgICAgIGhlaWdodDogMC41cmVtOyAvKiBoLTIgKi9cbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1xdGktdGljay1jb2xvcikgdmFyKC0tcXRpLXRpY2std2lkdGgpLCB0cmFuc3BhcmVudCAxcHgpIHJlcGVhdC14O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjYWxjKGNhbGMoMTAwJSAtIHZhcigtLXF0aS10aWNrLXdpZHRoKSkgLyAoKHZhcigtLW1heCkgLSB2YXIoLS1taW4pKSAvIHZhcigtLXN0ZXApKSkgMTAwJTtcbiAgICB9XG5cbiAgICAmOjpwYXJ0KHJhaWwpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGhlaWdodDogMC4zNzVyZW07IC8qIGgtMS41ICovXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDsgLyogcm91bmRlZC1mdWxsICovXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZDFkNWRiOyAvKiBib3JkZXItZ3JheS0zMDAgKi9cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU3ZWI7IC8qIGJnLWdyYXktMjAwICovXG4gICAgfVxuXG4gICAgJjo6cGFydChrbm9iKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1xdGktcHJpbWFyeSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDFyZW07IC8qIGgtNCAqL1xuICAgICAgd2lkdGg6IDFyZW07IC8qIHctNCAqL1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogOTk5OXB4OyAvKiByb3VuZGVkLWZ1bGwgKi9cbiAgICAgIGxlZnQ6IHZhcigtLXZhbHVlLXBlcmNlbnRhZ2UpO1xuICAgIH1cblxuICAgIC0tc2hvdy12YWx1ZTogdHJ1ZTtcblxuICAgICY6OnBhcnQodmFsdWUpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMnJlbTsgLyogYm90dG9tLTggKi9cbiAgICAgIGxlZnQ6IDAuNXJlbTsgLyogbGVmdC0yICovXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOyAvKiByb3VuZGVkICovXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmNGY2OyAvKiBiZy1ncmF5LTEwMCAqL1xuICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07IC8qIHB4LTIgcHktMSAqL1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICM2YjcyODA7IC8qIHRleHQtZ3JheS01MDAgKi9cbiAgICB9XG4gIH1cblxuICBxdGktc2VsZWN0LXBvaW50LWludGVyYWN0aW9uIHtcbiAgICAmOjpwYXJ0KHBvaW50KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYigwIDAgMCAvIDIwJSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiB2YXIoLS1xdGktZm9jdXMtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1xdGktZm9jdXMtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xdGktYm9yZGVyLXJhZGl1cy1mdWxsKTtcblxuICAgICAgd2lkdGg6IDEuNXJlbTtcblxuICAgICAgaGVpZ2h0OiAxLjVyZW07XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBib3JkZXI6IHZhcigtLXF0aS1ib3JkZXItdGhpY2tuZXNzKSB2YXIoLS1xdGktYm9yZGVyLXN0eWxlKSB2YXIoLS1xdGktYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHF0aS1wb3NpdGlvbi1vYmplY3Qtc3RhZ2Uge1xuICAgICYgcXRpLXBvc2l0aW9uLW9iamVjdC1pbnRlcmFjdGlvbiB7XG4gICAgICAvKiBubyBzdHlsZXMgbmVjZXNzYXJ5LCBvbmx5IGxheW91dCBzdHlsZXMsIGRlZmluZWQgaW4gdGhlIGNvbXBvbmVudCAqL1xuICAgIH1cbiAgfVxuXG4gIHF0aS1wcm9tcHQge1xuICAgIG1hcmdpbjogMC41cmVtIDA7IC8qIG15LTIgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKiB1dGlsaXRpZXMgKi9cblxuLyogQGltcG9ydCAnLi9zdHlsZXMvcXRpLXV0aWxpdGllcy9xdGktc3R5bGVzJzsgKi9cblxuLyogdmFyaWFudHMgKi9cblxuLyogQGltcG9ydCAnLi9zdHlsZXMvcXRpLXZhcmlhbnRzL3F0aS1pbnB1dC13aWR0aCc7ICovXG5cbi8qIEBpbXBvcnQgJy4vc3R5bGVzL3F0aS12YXJpYW50cy9xdGktaW50ZXJhY3Rpb25zJzsgKi9cbiIsICJpbXBvcnQgc3R5bGVzIGZyb20gJy4uLy4uL2l0ZW0uY3NzP2lubGluZSc7XG5pbXBvcnQgeyBWYXJpYWJsZVZhbHVlIH0gZnJvbSAnLi4vcXRpLWNvbXBvbmVudHMnO1xuXG5leHBvcnQgY2xhc3MgUXRpSXRlbSBleHRlbmRzIEhUTUxFbGVtZW50IHtcbiAgdmlldz86IHN0cmluZztcblxuICAjcmVuZGVyUm9vdCA9IG51bGw7XG4gICNhc3Nlc3NtZW50SXRlbSA9IG51bGw7XG5cbiAgc2V0IHhtbERvYyh4bWw6IERvY3VtZW50RnJhZ21lbnQpIHtcbiAgICBpZiAoIXRoaXMuI3JlbmRlclJvb3QpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB3Yy9hdHRhY2gtc2hhZG93LWNvbnN0cnVjdG9yLCB3Yy9uby1jbG9zZWQtc2hhZG93LXJvb3RcbiAgICAgIHRoaXMuI3JlbmRlclJvb3QgPSB0aGlzLmF0dGFjaFNoYWRvdyh7IG1vZGU6ICdvcGVuJyB9KTsgLy8gY2FuIG5vdCBiZSBjbG9zZWQsIGVsc2UgZHJhZyBhbmQgZHJvcHMgd2lsbCBub3Qgd29ya1xuICAgICAgY29uc3Qgc3R5bGUgPSBuZXcgQ1NTU3R5bGVTaGVldCgpO1xuICAgICAgc3R5bGUucmVwbGFjZVN5bmMoc3R5bGVzKTtcbiAgICAgIHRoaXMuI3JlbmRlclJvb3QuYWRvcHRlZFN0eWxlU2hlZXRzID0gW3N0eWxlXTtcbiAgICAgIHRoaXMuI3JlbmRlclJvb3QuaW5uZXJIVE1MID0gJyc7IC8vIENsZWFyIGFueSBleGlzdGluZyBjb250ZW50XG4gICAgICAvLyB0aGlzLiNyZW5kZXJSb290LmFkZEV2ZW50TGlzdGVuZXIoJ3F0aS1pbnRlcmFjdGlvbi1jaGFuZ2VkJywgdGhpcy4jdmFyaWFibGVzQ2hhbmdlZCk7XG4gICAgICAvLyB0aGlzLiNyZW5kZXJSb290LmFkZEV2ZW50TGlzdGVuZXIoJ3F0aS1vdXRjb21lLWNoYW5nZWQnLCB0aGlzLiN2YXJpYWJsZXNDaGFuZ2VkKTtcbiAgICAgIHRoaXMuI3JlbmRlclJvb3QuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgJ3F0aS1hc3Nlc3NtZW50LWl0ZW0tY29ubmVjdGVkJyxcbiAgICAgICAgKHsgdGFyZ2V0IH0pID0+ICh0aGlzLiNhc3Nlc3NtZW50SXRlbSA9IHRhcmdldClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyUm9vdC5pbm5lckhUTUwgPSBgYDtcbiAgICB0aGlzLiNyZW5kZXJSb290LmFwcGVuZENoaWxkKHhtbC5jbG9uZU5vZGUodHJ1ZSkpO1xuICB9XG5cbiAgcHJvY2Vzc1Jlc3BvbnNlKCkge1xuICAgIHRoaXMuI2Fzc2Vzc21lbnRJdGVtPy5wcm9jZXNzUmVzcG9uc2UoKSB8fCBjb25zb2xlLndhcm4oJ05vIHF0aS1hc3Nlc3NtZW50LWl0ZW0gZm91bmQnKTtcbiAgfVxuXG4gIGdldCB2YXJpYWJsZXMoKTogVmFyaWFibGVWYWx1ZTxzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGw+W10ge1xuICAgIHJldHVybiB0aGlzLiNhc3Nlc3NtZW50SXRlbT8udmFyaWFibGVzIHx8IGNvbnNvbGUud2FybignTm8gcXRpLWFzc2Vzc21lbnQtaXRlbSBmb3VuZCcpO1xuICB9XG5cbiAgc2V0IHZhcmlhYmxlcyh2YXJpYWJsZXM6IFZhcmlhYmxlVmFsdWU8c3RyaW5nIHwgc3RyaW5nW10gfCBudWxsPltdKSB7XG4gICAgdGhpcy4jYXNzZXNzbWVudEl0ZW0udmFyaWFibGVzID0gdmFyaWFibGVzO1xuICB9XG5cbiAgYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrKG5hbWU6IHN0cmluZywgb2xkVmFsdWU6IHN0cmluZywgbmV3VmFsdWU6IHN0cmluZykge1xuICAgIHN3aXRjaCAobmFtZSkge1xuICAgICAgY2FzZSAndmlldyc6XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBpZiAob2xkVmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICAgICAgdGhpc1tuYW1lIGFzICd2aWV3J10gPSBuZXdWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKiBQcml2YXRlIG1ldGhvZHMgKi9cbiAgLy8gZ2V0ICNhc3Nlc3NtZW50SXRlbSgpIHtcbiAgLy8gICByZXR1cm4gdGhpcy5xdWVyeVNlbGVjdG9yKCdxdGktYXNzZXNzbWVudC1pdGVtJykgfHwgY29uc29sZS53YXJuKCdObyBxdGktYXNzZXNzbWVudC1pdGVtIGZvdW5kJyk7XG4gIC8vIH1cblxuICAvLyAjdmFyaWFibGVzQ2hhbmdlZCA9IChlOiBDdXN0b21FdmVudDxhbnk+KSA9PiB7XG4gIC8vICAgZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgLy8gICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAvLyAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgLy8gICAgIG5ldyBDdXN0b21FdmVudCgncXRpLWl0ZW0tdmFyaWFibGVzLWNoYW5nZWQnLCB7XG4gIC8vICAgICAgIGJ1YmJsZXM6IGZhbHNlLFxuICAvLyAgICAgICBkZXRhaWw6IHtcbiAgLy8gICAgICAgICB2YXJpYWJsZXM6IHRoaXMuI2Fzc2Vzc21lbnRJdGVtLnZhcmlhYmxlc1xuICAvLyAgICAgICB9XG4gIC8vICAgICB9KVxuICAvLyAgICk7XG4gIC8vIH07XG59XG5cbmN1c3RvbUVsZW1lbnRzLmRlZmluZSgncXRpLWl0ZW0nLCBRdGlJdGVtKTtcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAncXRpLWl0ZW0nOiBRdGlJdGVtO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAidURBQUEsSUFBQUEsRUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQ0FBLElBQUFDLEVBQUFDLEVBR2FDLEVBQU4sY0FBc0IsV0FBWSxDQUFsQyxrQ0FHTEMsRUFBQSxLQUFBSCxFQUFjLE1BQ2RHLEVBQUEsS0FBQUYsRUFBa0IsTUFFbEIsSUFBSSxPQUFPRyxFQUF1QixDQUNoQyxHQUFJLENBQUNDLEVBQUEsS0FBS0wsR0FBYSxDQUVyQk0sRUFBQSxLQUFLTixFQUFjLEtBQUssYUFBYSxDQUFFLEtBQU0sTUFBTyxDQUFDLEdBQ3JELElBQU1PLEVBQVEsSUFBSSxjQUNsQkEsRUFBTSxZQUFZQyxDQUFNLEVBQ3hCSCxFQUFBLEtBQUtMLEdBQVksbUJBQXFCLENBQUNPLENBQUssRUFDNUNGLEVBQUEsS0FBS0wsR0FBWSxVQUFZLEdBRzdCSyxFQUFBLEtBQUtMLEdBQVksaUJBQ2YsZ0NBQ0EsQ0FBQyxDQUFFLE9BQUFTLENBQU8sSUFBT0gsRUFBQSxLQUFLTCxFQUFrQlEsRUFDMUMsQ0FDRixDQUVBSixFQUFBLEtBQUtMLEdBQVksVUFBWSxHQUM3QkssRUFBQSxLQUFLTCxHQUFZLFlBQVlJLEVBQUksVUFBVSxFQUFJLENBQUMsQ0FDbEQsQ0FFQSxpQkFBa0IsQ0E3QnBCLElBQUFNLEdBOEJJQSxFQUFBTCxFQUFBLEtBQUtKLEtBQUwsTUFBQVMsRUFBc0IsbUJBQXFCLFFBQVEsS0FBSyw4QkFBOEIsQ0FDeEYsQ0FFQSxJQUFJLFdBQXVELENBakM3RCxJQUFBQSxFQWtDSSxRQUFPQSxFQUFBTCxFQUFBLEtBQUtKLEtBQUwsWUFBQVMsRUFBc0IsWUFBYSxRQUFRLEtBQUssOEJBQThCLENBQ3ZGLENBRUEsSUFBSSxVQUFVQyxFQUFzRCxDQUNsRU4sRUFBQSxLQUFLSixHQUFnQixVQUFZVSxDQUNuQyxDQUVBLHlCQUF5QkMsRUFBY0MsRUFBa0JDLEVBQWtCLENBQ3pFLE9BQVFGLEVBQU0sQ0FDWixJQUFLLE9BQ0gsTUFFRixRQUNNQyxJQUFhQyxJQUNmLEtBQUtGLENBQWMsRUFBSUUsR0FFekIsS0FDSixDQUNGLENBbUJGLEVBakVFZCxFQUFBLFlBQ0FDLEVBQUEsWUFrRUYsZUFBZSxPQUFPLFdBQVlDLENBQU8iLAogICJuYW1lcyI6IFsiaXRlbV9kZWZhdWx0IiwgIl9yZW5kZXJSb290IiwgIl9hc3Nlc3NtZW50SXRlbSIsICJRdGlJdGVtIiwgIl9fcHJpdmF0ZUFkZCIsICJ4bWwiLCAiX19wcml2YXRlR2V0IiwgIl9fcHJpdmF0ZVNldCIsICJzdHlsZSIsICJpdGVtX2RlZmF1bHQiLCAidGFyZ2V0IiwgIl9hIiwgInZhcmlhYmxlcyIsICJuYW1lIiwgIm9sZFZhbHVlIiwgIm5ld1ZhbHVlIl0KfQo=
1
+ import{c as t}from"../chunk-NYAUPIAG.js";import{LitElement as i,html as s}from"lit";import{customElement as o,property as r}from"lit/decorators.js";var e=class extends i{createRenderRoot(){return this}get assessmentItem(){var n;return(n=this.renderRoot)==null?void 0:n.querySelector("qti-assessment-item")}async connectedCallback(){super.connectedCallback(),await this.updateComplete,this.dispatchEvent(new CustomEvent("qti-item-connected",{bubbles:!0,composed:!0,detail:{identifier:this.identifier,href:this.href}}))}render(){return s`${this.xmlDoc}`}};t([r({type:String,reflect:!0})],e.prototype,"identifier",2),t([r({type:String})],e.prototype,"href",2),t([r({type:Object,attribute:!1})],e.prototype,"xmlDoc",2),e=t([o("qti-item")],e);export{e as QtiItem};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2xpYi9xdGktaXRlbS9xdGktaXRlbS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBRdGlBc3Nlc3NtZW50SXRlbSB9IGZyb20gJ0BjaXRvbGFiL3F0aS1jb21wb25lbnRzL3F0aS1jb21wb25lbnRzJztcbmltcG9ydCB7IExpdEVsZW1lbnQsIGh0bWwgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbkBjdXN0b21FbGVtZW50KCdxdGktaXRlbScpXG5leHBvcnQgY2xhc3MgUXRpSXRlbSBleHRlbmRzIExpdEVsZW1lbnQge1xuICBAcHJvcGVydHkoeyB0eXBlOiBTdHJpbmcsIHJlZmxlY3Q6IHRydWUgfSkgaWRlbnRpZmllcj86IHN0cmluZztcbiAgQHByb3BlcnR5KHsgdHlwZTogU3RyaW5nIH0pIGhyZWY/OiBzdHJpbmc7XG5cbiAgQHByb3BlcnR5KHsgdHlwZTogT2JqZWN0LCBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHhtbERvYzogRG9jdW1lbnRGcmFnbWVudDsgLy8gdGhlIFhNTERvY3VtZW50XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZVJlbmRlclJvb3QoKTogSFRNTEVsZW1lbnQgfCBEb2N1bWVudEZyYWdtZW50IHtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdldCBhc3Nlc3NtZW50SXRlbSgpOiBRdGlBc3Nlc3NtZW50SXRlbSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnJlbmRlclJvb3Q/LnF1ZXJ5U2VsZWN0b3IoJ3F0aS1hc3Nlc3NtZW50LWl0ZW0nKTtcbiAgfVxuXG4gIGFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtcbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQoXG4gICAgICBuZXcgQ3VzdG9tRXZlbnQoJ3F0aS1pdGVtLWNvbm5lY3RlZCcsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY29tcG9zZWQ6IHRydWUsXG4gICAgICAgIGRldGFpbDogeyBpZGVudGlmaWVyOiB0aGlzLmlkZW50aWZpZXIsIGhyZWY6IHRoaXMuaHJlZiB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIGh0bWxgJHt0aGlzLnhtbERvY31gO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgJ3F0aS1pdGVtJzogUXRpSXRlbTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogInlDQUNBLE9BQVMsY0FBQUEsRUFBWSxRQUFBQyxNQUFZLE1BQ2pDLE9BQVMsaUJBQUFDLEVBQWUsWUFBQUMsTUFBZ0Isb0JBR2pDLElBQU1DLEVBQU4sY0FBc0JDLENBQVcsQ0FPNUIsa0JBQW1ELENBQzNELE9BQU8sSUFDVCxDQUVBLElBQUksZ0JBQTJDLENBaEJqRCxJQUFBQyxFQWlCSSxPQUFPQSxFQUFBLEtBQUssYUFBTCxZQUFBQSxFQUFpQixjQUFjLHNCQUN4QyxDQUVBLE1BQU0sbUJBQW1DLENBQ3ZDLE1BQU0sa0JBQWtCLEVBQ3hCLE1BQU0sS0FBSyxlQUNYLEtBQUssY0FDSCxJQUFJLFlBQVkscUJBQXNCLENBQ3BDLFFBQVMsR0FDVCxTQUFVLEdBQ1YsT0FBUSxDQUFFLFdBQVksS0FBSyxXQUFZLEtBQU0sS0FBSyxJQUFLLENBQ3pELENBQUMsQ0FDSCxDQUNGLENBRUEsUUFBUyxDQUNQLE9BQU9DLElBQU8sS0FBSyxNQUFNLEVBQzNCLENBQ0YsRUE3QjZDQyxFQUFBLENBQTFDQyxFQUFTLENBQUUsS0FBTSxPQUFRLFFBQVMsRUFBSyxDQUFDLEdBRDlCTCxFQUNnQywwQkFDZkksRUFBQSxDQUEzQkMsRUFBUyxDQUFFLEtBQU0sTUFBTyxDQUFDLEdBRmZMLEVBRWlCLG9CQUc1QkksRUFBQSxDQURDQyxFQUFTLENBQUUsS0FBTSxPQUFRLFVBQVcsRUFBTSxDQUFDLEdBSmpDTCxFQUtYLHNCQUxXQSxFQUFOSSxFQUFBLENBRE5FLEVBQWMsVUFBVSxHQUNaTiIsCiAgIm5hbWVzIjogWyJMaXRFbGVtZW50IiwgImh0bWwiLCAiY3VzdG9tRWxlbWVudCIsICJwcm9wZXJ0eSIsICJRdGlJdGVtIiwgIkxpdEVsZW1lbnQiLCAiX2EiLCAiaHRtbCIsICJfX2RlY29yYXRlQ2xhc3MiLCAicHJvcGVydHkiLCAiY3VzdG9tRWxlbWVudCJdCn0K